/* assets/css/responsivo.css
   Telas estreitas e ajustes de impressão. */

@media(max-width:1200px){
  .cards-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  #sidebar{width:var(--sidebar-w-collapsed)}
  .sb-logo-text,.sb-user-info,.nav-group,.nav-item span:not(.nav-icon),.sb-actions .btn-sm span,.btn-logout{display:none}
  .sb-logo{padding:14px 10px;justify-content:center}
  .sb-logo-mark{margin:0 auto}
  .sb-user{justify-content:center;padding:10px}
  .nav-item{justify-content:center;padding:10px;margin:1px 4px}
  .sb-bottom{padding:8px}
  .charts-2,.charts-3{grid-template-columns:1fr}
  .form-4{grid-template-columns:1fr 1fr}
  .sidebar-toggle{display:none}
}
@media(max-width:600px){
  .cards-3,.cards-2{grid-template-columns:1fr}
  .cards-4{grid-template-columns:1fr}
  .page{padding:14px}
  .form-2,.form-3{grid-template-columns:1fr}
}
/* Liquid glass inspired surfaces with opaque fallbacks and readable data. */
:root{--text-secondary:#adb8ca;--text-muted:#93a0b4;--r-lg:24px;--r-xl:30px}
body{background:radial-gradient(ellipse at 85% 0,rgba(201,162,39,.09),transparent 45%),radial-gradient(ellipse at 0 70%,rgba(37,99,235,.1),transparent 55%),#090d16;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
body.light{--text-secondary:#455468;--text-muted:#566276;background:radial-gradient(ellipse at top right,#e3eaf6,transparent 50%),#f2f5fa}
.card,.table-wrap{border:1px solid var(--border-strong);border-radius:24px;background:linear-gradient(140deg,rgba(255,255,255,.07),transparent 65%),var(--surface-1);box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 30px rgba(0,0,0,.09)}
body.light .card,body.light .table-wrap{background:rgba(255,255,255,.86);box-shadow:inset 0 1px 0 white,0 8px 32px #2637550c}
@supports(backdrop-filter:blur(20px)){.card{backdrop-filter:blur(20px) saturate(1.2)}}
.card-label{font-size:14px;letter-spacing:.03em}.card-sub,.page-sub{font-size:14px;line-height:1.65}.card-value{font-variant-numeric:tabular-nums;letter-spacing:-.035em}
.page-title{font-size:30px;letter-spacing:-.035em}.nav-item{min-height:44px;font-size:14px;border-radius:14px}.btn{min-height:40px;border-radius:12px;font-size:14px}.btn-sm{min-height:34px}
.finance-workspace{max-width:1600px;margin:auto}.finance-workspace h1{font-size:32px;letter-spacing:-.04em}.finance-workspace h2{font-size:21px;margin:16px 0}.finance-workspace h3{font-size:17px;margin:10px 0}.finance-workspace p{line-height:1.65;font-size:14px;color:var(--text-secondary)}
.finance-workspace .cards{margin:22px 0}.finance-workspace .card-value{font-size:29px}.finance-workspace .card{padding:24px}.finance-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0}.finance-balance{display:flex;justify-content:space-between;gap:30px;align-items:center;margin:20px 0}.finance-balance p{max-width:520px}.eyebrow{font-size:12px;letter-spacing:.15em;color:var(--gold);font-weight:700;margin-bottom:10px}
.finance-workspace input,.finance-workspace select,.finance-dialog input,.finance-dialog select,.finance-dialog textarea{font:inherit;font-size:14px;min-height:44px;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:12px;padding:10px 12px;max-width:100%;color-scheme:dark}body.light input,body.light select{color-scheme:light}
.finance-workspace td,.finance-workspace th{font-size:14px;padding:14px;text-align:left;white-space:nowrap;font-variant-numeric:tabular-nums}.finance-workspace td small{display:block;color:var(--text-secondary);font-size:12px;margin-top:5px}.finance-workspace .f-description{white-space:normal;min-width:190px}.f-status{display:inline-block;background:var(--surface-2);border:1px solid var(--border);border-radius:30px;padding:6px 12px;font-size:13px}.f-status.overdue{color:var(--red);background:var(--red-bg)}.empty-state{text-align:center!important;padding:50px!important;color:var(--text-secondary)}
.finance-dialog{margin:auto;padding:28px;width:min(760px,94vw);max-height:90vh;overflow:auto;background:var(--surface-1);color:var(--text);border:1px solid var(--border-strong);border-radius:26px;box-shadow:0 30px 100px #0008}.finance-dialog::backdrop{background:#050914aa;backdrop-filter:blur(6px)}.f-form{display:grid;gap:18px}.f-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.f-field{display:flex;flex-direction:column;gap:8px;font-size:14px}.f-field textarea{min-height:70px}.forecast-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.forecast-grid strong,.forecast-grid small{display:block;margin-top:9px}.forecast-grid strong{font-size:24px}.forecast-grid small{color:var(--text-secondary);font-size:13px}.audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.audit-grid p{margin-bottom:12px}#financeError{color:var(--red);font-size:14px}.finance-workspace ol{padding-left:25px;line-height:2;font-size:15px}.finance-workspace .table-wrap{margin:20px 0}
*:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:800px){.f-form-grid,.audit-grid,.forecast-grid{grid-template-columns:1fr}.finance-balance{display:block}.finance-workspace .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-workspace .card-value{font-size:23px}.finance-dialog{padding:20px}.finance-workspace .section-hdr{flex-wrap:wrap;gap:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
#saveStatus{font-size:13px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}#saveStatus[data-state=saved]{color:var(--green)}#saveStatus[data-state=error]{color:var(--red);white-space:normal}#saveStatus[data-state=saving],#saveStatus[data-state=draft]{color:var(--yellow)}.header-actions{flex-wrap:wrap;justify-content:flex-end}@media(max-width:700px){#saveStatus{max-width:160px;font-size:12px}#appHeader{height:auto;min-height:65px;padding:10px}}

/* Sprint: compact executive workspace, isolated internal scrolling. */
html,body{width:100%;height:100%;overflow:hidden}#app{height:100dvh;overflow:hidden}#sidebar{height:100dvh;overflow:hidden}#sidebar nav{overflow-y:auto;min-height:0;scrollbar-width:thin}#main{height:100dvh;min-width:0;overflow:hidden!important}#appHeader{height:58px;min-height:58px;padding:8px 16px;gap:12px}#pageContainer{height:calc(100dvh - 58px);min-height:0;overflow:hidden;padding:14px 18px!important}#pageContainer>.page{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:0 2px 14px;scrollbar-width:thin}.page-title,.finance-workspace h1{font-size:clamp(24px,2vw,29px);line-height:1.1}.finance-workspace h2{font-size:18px;margin:10px 0}.page-sub,.finance-workspace p{line-height:1.45}.finance-workspace .cards{margin:12px 0;gap:12px}.finance-workspace .card{padding:16px;border-radius:18px}.finance-workspace .card-value{font-size:25px}.finance-toolbar{margin:12px 0;gap:8px}.finance-workspace .table-wrap{margin:12px 0;max-height:calc(100dvh - 285px);overflow:auto;border-radius:18px}.finance-workspace td,.finance-workspace th{padding:10px 11px;font-size:13px}.finance-balance{margin:12px 0;padding:14px!important}.section-hdr{margin-bottom:10px!important}.eyebrow{margin-bottom:6px}.header-context{display:flex;align-items:center;gap:12px;min-width:0;margin-right:auto}.header-dashboard,.notification-bell{height:38px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);border-radius:12px;padding:0 12px;font-weight:700;cursor:pointer}.header-dashboard:hover,.notification-bell:hover{border-color:var(--gold-border);color:var(--gold)}.header-breadcrumb{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-bell{position:relative;width:40px;padding:0;font-size:18px}.notification-bell b{position:absolute;right:-7px;top:-7px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:var(--red);color:#fff;font-size:11px;display:grid;place-items:center}.quick-actions{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.quick-actions button{border:1px solid var(--border-strong);background:var(--surface-1);color:var(--text);border-radius:12px;padding:9px 13px;font-weight:700;cursor:pointer}.closing-alert{display:flex;align-items:center;gap:12px;margin-bottom:12px}.closing-alert span{margin-right:auto}.alert-list tr.unread{background:var(--gold-dim)}.read-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--text-muted);margin-right:7px}.unread .read-dot{background:var(--gold);box-shadow:0 0 0 4px var(--gold-dim)}.row-actions{display:flex;gap:5px;flex-wrap:wrap}.user-list{max-height:calc(100dvh - 230px)!important}.profile-page .card{max-width:780px}.profile-avatar{width:68px;height:68px;border-radius:22px;background:linear-gradient(145deg,var(--gold),#7e6415);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:800;margin-bottom:18px}.access-denied{height:100%;display:grid;place-content:center;text-align:center;gap:12px}.access-denied>b{font-size:42px}.access-denied p{color:var(--text-secondary)}body[data-role="analista_financeiro"] [onclick*="openOpening"],body[data-role="analista_financeiro"] [onclick*="openTransfer"]{display:none!important}
@media(max-width:1279px){#pageContainer{padding:12px!important}.finance-workspace .card{padding:14px}.finance-workspace td,.finance-workspace th{padding:8px 9px}.nav-item{min-height:39px}}
@media(max-width:767px){html,body,#app,#main{overflow:auto!important;height:auto;min-height:100dvh}#sidebar{height:100dvh}#appHeader{position:sticky;top:0;z-index:50;height:auto;min-height:58px;flex-wrap:wrap}.header-context{order:1}.header-actions{order:2;margin-left:auto}.header-breadcrumb,#saveStatus,.screen-export{display:none!important}#pageContainer{height:auto;overflow:visible;padding:10px!important}#pageContainer>.page{height:auto;overflow:visible}.finance-workspace .table-wrap{max-height:62vh}.closing-alert{align-items:flex-start;flex-direction:column}.f-form-grid{grid-template-columns:1fr}.row-actions{min-width:180px}}
.executive-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}.executive-strip>div{padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-glass)}.executive-strip small,.executive-strip b{display:block}.executive-strip small{color:var(--text-secondary);font-size:12px;margin-bottom:3px}.executive-strip b{font-size:16px;font-variant-numeric:tabular-nums}@media(max-width:767px){.executive-strip{grid-template-columns:repeat(2,1fr)}}
.topbar-product-mark,.generic-product-icon,.generic-product-mark{display:grid;place-items:center;background:linear-gradient(145deg,var(--gold),#7e6415);color:#111;font-weight:900;letter-spacing:-.06em}.topbar-product-mark{width:36px;height:36px;border-radius:11px;flex:0 0 auto;font-size:13px}.generic-product-icon{width:28px;height:28px;border-radius:9px;font-size:11px}.generic-product-mark{width:62px;height:62px;border-radius:18px;font-size:22px}.company-tabs{display:flex;gap:8px;margin:12px 0}.company-tabs button{flex:1;min-height:42px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface-1);color:var(--text);font-weight:700;cursor:pointer}.company-tabs button.active{color:var(--gold);border-color:var(--gold-border);background:var(--gold-dim)}.metas-table{overflow:hidden!important}.metas-table table{table-layout:fixed;width:100%}.metas-table th:first-child,.metas-table td:first-child{width:28%;white-space:normal}.metas-table th:not(:first-child),.metas-table td:not(:first-child){width:12%;text-align:right}.dividend-goal{font-size:13px;font-weight:800;margin-top:7px}.dividend-goal.above{color:#4CAF50}.dividend-goal.below{color:#F44336}.dividend-goal.equal{color:#C9A84C}.user-summary{font-size:28px;font-weight:800;margin:12px 0}@media(max-width:767px){.company-tabs{display:grid}.metas-table th,.metas-table td{font-size:11px!important;padding:7px 4px!important}.topbar-product-mark{width:30px;height:30px}}
.config-actions{display:flex;gap:8px;flex-wrap:wrap}.config-edit-button{border-color:var(--gold-border)!important;color:var(--gold)!important}.page input:disabled{opacity:.72;cursor:not-allowed}
.company-config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.company-config-row{padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}.company-switch{display:flex!important;align-items:center;gap:8px;margin-bottom:12px!important}.company-switch input{width:auto!important}.permission-matrix td:first-child{font-weight:750;text-align:left}.permission-matrix td:not(:first-child),.permission-matrix th:not(:first-child){text-align:center}.plan-usage{font-weight:800;color:var(--gold)}@media(max-width:768px){.company-config-grid{grid-template-columns:1fr}}
