/* Portal responsivo e menu retratil */
:root{--sidebar-open:252px;--sidebar-closed:82px}
.sidebar{transition:width .28s ease,transform .28s ease,padding .28s ease;overflow:hidden}
.main{transition:margin-left .28s ease}
.sidebar-toggle{width:42px;height:42px;border:1px solid var(--line);background:#101410;color:var(--gold);display:inline-grid;place-items:center;border-radius:12px;font-size:18px;line-height:1;transition:.2s}
.sidebar-toggle:hover{border-color:rgba(202,164,90,.45);background:#151a15}
.sidebar.collapsed{width:var(--sidebar-closed);padding-left:12px;padding-right:12px}
.sidebar.collapsed .side-logo .logo>div,.sidebar.collapsed .navbtn{font-size:0}.sidebar.collapsed .side-logo small,.sidebar.collapsed .profile>div,.sidebar.collapsed .logout{display:none}
.sidebar.collapsed .side-logo{padding-left:2px;padding-right:2px}.sidebar.collapsed .logo{justify-content:center}.sidebar.collapsed .logo-mark{flex:0 0 42px}
.sidebar.collapsed .navbtn{justify-content:center;padding:13px 8px;border-left:0}.sidebar.collapsed .nav-icon{width:auto;font-size:19px;margin:0}
.sidebar.collapsed .profile{justify-content:center;padding:10px 0}.sidebar.collapsed .avatar{flex:0 0 38px}
.main.sidebar-collapsed{margin-left:var(--sidebar-closed)}
.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(2px);z-index:28;opacity:0;pointer-events:none;transition:.25s}
.sidebar-overlay.show{opacity:1;pointer-events:auto}
.mobile-menu-toggle{width:42px;height:42px;border:1px solid var(--line);background:#111511;color:var(--gold);display:grid;place-items:center;border-radius:12px;font-size:20px}

/* ajustes gerais para telas menores */
.content{width:100%}.card,.hello,.next-card,.kpi,.premium-panel,.analytics-card{min-width:0}
img,svg,canvas{max-width:100%}
input,select,textarea,button{max-width:100%}
.premium-day-strip{overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}
.premium-day{min-width:96px}
.analytics-grid,.analytics-metrics,.premium-agenda-kpis,.premium-insights{min-width:0}

@media (max-width:1180px){
  .content{padding:28px 22px 60px}
  .welcome,.dashgrid,.premium-agenda-layout{grid-template-columns:1fr!important}
  .analytics-grid{grid-template-columns:1fr 1fr!important}
  .analytics-metrics{grid-template-columns:repeat(2,1fr)!important}
  .premium-insights{grid-template-columns:1fr 1fr!important}
}

@media (max-width:900px){
  .sidebar{display:flex!important;width:min(82vw,300px)!important;transform:translateX(-105%);z-index:40;box-shadow:24px 0 60px rgba(0,0,0,.5);padding:20px 16px}
  .sidebar.mobile-open{transform:translateX(0)}
  .sidebar.collapsed{width:min(82vw,300px)!important}
  .sidebar.collapsed .side-logo .logo>div,.sidebar.collapsed .navbtn{font-size:inherit}
  .sidebar.collapsed .side-logo small{display:block}.sidebar.collapsed .profile>div{display:block}.sidebar.collapsed .logout{display:block}
  .sidebar.collapsed .navbtn{justify-content:flex-start;padding:13px 14px}.sidebar.collapsed .nav-icon{width:24px;font-size:inherit}
  .sidebar.collapsed .profile{justify-content:flex-start;padding:10px}
  .main,.main.sidebar-collapsed{margin-left:0!important}
  .topbar{display:none!important}
  .mobiletop{display:flex!important}
  .content{padding:18px 14px 64px}
  .kpis{grid-template-columns:1fr 1fr!important}
  .premium-agenda-head{flex-direction:column;align-items:stretch!important;gap:18px}
  .premium-controls{display:grid!important;grid-template-columns:auto 1fr auto;gap:8px!important}
  .premium-controls .btn{grid-column:span 3}
  .premium-agenda-kpis{grid-template-columns:1fr 1fr!important}
  .analytics-grid{grid-template-columns:1fr!important}
  .premium-insights{grid-template-columns:1fr!important}
  .event{grid-template-columns:58px 18px 1fr!important}.event .status{grid-column:3;width:100%}
  .listitem{grid-template-columns:72px 1fr!important}.listitem .tinybtn,.listitem .status{grid-column:2}
  .blocks,.form-grid{grid-template-columns:1fr!important}
  .day{grid-template-columns:1fr 1fr!important}.day>b{grid-column:1/-1}
}

@media (max-width:620px){
  .content{padding:14px 10px 56px}
  .hello{padding:22px 18px;border-radius:18px}.hello h1{font-size:36px!important;line-height:1.02}.hello p{font-size:14px}
  .next-card{padding:20px}.next-time{font-size:36px}
  .kpis{grid-template-columns:1fr!important}.kpi{padding:18px}.kpi b{font-size:31px}
  .quickgrid{grid-template-columns:1fr!important}
  .section-title h1,.premium-agenda-head h1{font-size:30px!important}
  .premium-agenda-kpis,.analytics-metrics{grid-template-columns:1fr!important}
  .premium-appt{grid-template-columns:64px 1fr!important;gap:10px}.premium-appt .status{grid-column:2;width:100%}
  .event{grid-template-columns:52px 14px 1fr!important;gap:8px}.event-time{font-size:14px}.event-main span{display:block;line-height:1.5}
  .modal{padding:8px}.modal-card{max-height:96vh;border-radius:18px}.modal-body{padding:16px}.modal-actions{padding:0 16px 16px;flex-wrap:wrap}.modal-actions .btn{flex:1 1 140px}
  .day{grid-template-columns:1fr!important}.day>b,.day .activebox,.day .timefield,.day .interval{grid-column:1/-1!important}
  .premium-controls{grid-template-columns:42px 1fr 42px!important}.premium-controls .btn{grid-column:1/-1!important}
  .search{flex-direction:column}
}

@media (max-width:380px){
  .hello h1{font-size:32px!important}.mobiletop{padding:0 10px}.logo-mark{width:38px;height:38px}.content{padding-left:8px;padding-right:8px}
}
