:root{color:#162120;--ink:#182222;--muted:#66706e;--line:#ddd8cf;--paper:#fffdf8;--soft:#ebe7df;--brand:#1f3f45;--brand-2:#0f5967;--gold:#c9954a;--danger:#b9453f;--success:#2e7d5b;--warning:#b87b22;--review:#5d5a96;--shadow:0 18px 44px #1822221a;--shadow-soft:0 1px 2px #1822220f;--radius:8px;--radius-sm:7px;background:#f6f5f2;font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:radial-gradient(circle at 100% 0,#0f596714,#0000 30%),linear-gradient(#fbfcfe 0%,#f7f8fb 44%,#f3f5f8 100%);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,textarea:disabled,input:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;margin-bottom:0;font-size:clamp(1.45rem,2.1vw,2.05rem)}h2{font-size:1.05rem}.app-shell{grid-template-columns:264px minmax(0,1fr);min-height:100vh;display:grid}.login-screen{background:linear-gradient(160deg,#0a1a1cb8 0%,#0a1a1c8c 100%),url(/assets/fundo.avif) 50%/cover no-repeat;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#fff;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:14px;gap:16px;width:min(400px,100%);padding:32px;display:grid;box-shadow:0 16px 40px #0f1c1d1f,0 4px 10px #0f1c1d12}.login-card img{justify-self:center;width:100px;margin-bottom:4px}.login-card label{color:#ffffffb3;letter-spacing:.04em;text-transform:uppercase;gap:6px;font-size:.82rem;font-weight:600;display:grid}.login-card input{color:#fff;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:8px;min-height:42px;padding:0 14px}.login-card input::placeholder{color:#fff6}.login-card input:focus{outline-offset:1px;outline:2px solid #ffffff59}.login-error{color:#ffb3b3;margin:0;font-size:.82rem;font-weight:600}.login-card .muted{color:#ffffff8c;text-align:center;font-size:.88rem}.login-card .eyebrow{color:var(--gold);text-align:center;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:700}.login-card h1{text-align:center;margin-bottom:2px;font-size:1.5rem;font-weight:700}.login-card .primary{background:var(--gold);color:#fff;letter-spacing:.03em;border:none;border-radius:8px;width:100%;min-height:44px;margin-top:4px;font-size:.92rem;font-weight:700;transition:background .15s}.login-card .primary:hover{background:#a87234}.sidebar{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(160deg,#0a1a1cf5 0%,#182b2bf0 100%);border-right:1px solid #ffffff1f;flex-direction:column;gap:18px;height:100vh;padding:20px 16px;display:flex;position:sticky;top:0;box-shadow:0 16px 40px #0f1c1d1f,0 4px 10px #0f1c1d12}.brand{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:124px;padding:22px 8px 6px;display:flex}.brand img{object-fit:contain;width:92px;height:auto}.brand span{color:#ffffffb8;letter-spacing:.16em;text-transform:uppercase;font-size:.86rem;font-weight:800}.sidebar nav{gap:9px;display:grid}.sidebar nav button,.role-box{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff24;border-radius:10px}.sidebar nav button{text-align:left;color:#ffffffbd;letter-spacing:.01em;align-items:center;gap:10px;min-height:42px;padding:0 12px;font-size:.88rem;font-weight:700;display:flex}.collapse-button{color:#fff;background:#ffffff14;border:1px solid #ffffff29;border-radius:10px;place-items:center;width:42px;min-height:42px;padding:0;font-weight:900;display:grid;position:absolute;top:14px;left:14px}.collapse-button:hover{background:#ffffff29}.sidebar-collapsed .brand span,.sidebar-collapsed .logout-button{font-size:0}.sidebar-collapsed .sidebar nav button{font-size:0;line-height:0}.sidebar-collapsed .connected-user{display:none}.sidebar-collapsed .brand{padding-inline:0;min-height:76px;padding-top:18px}.sidebar-collapsed .brand img{width:44px}.sidebar-collapsed .sidebar nav button{justify-content:center;justify-self:center;place-items:center;gap:0;width:42px;min-height:42px;padding:0;display:grid;position:relative}.sidebar-collapsed .collapse-button{align-self:center;position:static}.sidebar-collapsed .sidebar nav button svg{place-self:center;margin:0;line-height:1;display:block;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.sidebar-collapsed .role-box{background:0 0;border:0;padding:0}.role-box{flex-direction:column;align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex}.connected-user{color:#ffffffc2;text-align:center;gap:3px;width:100%;display:grid}.connected-user strong{color:#fff;font-size:.9rem}.connected-user small{color:#ffffff9e;font-size:.76rem;font-weight:700}.role-box select{color:#fff;background:0 0;border:0;width:100%;font-weight:700}.role-box option{color:var(--ink)}.logout-button{color:#ffffffc7;text-align:center;background:#ffffff0f;border:1px solid #ffffff24;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:36px;padding:6px 10px;font-weight:800;display:inline-flex}.sidebar-collapsed .logout-button{background:0 0;border-color:#0000;place-items:center;width:42px;min-height:42px;padding:0;display:grid}.sidebar-collapsed .logout-button svg{place-self:center;display:block}.sidebar-collapsed .logout-button span{display:none}.main{min-width:0;padding:24px 28px}.topbar{border-bottom:1px solid #ded9d1b3;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;padding-bottom:14px;display:flex}.eyebrow{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;margin:0 0 5px;font-size:.74rem;font-weight:800}.muted{color:var(--muted)}.api-status{margin:7px 0 0;font-size:.82rem;font-weight:800}.api-status.online{color:var(--success)}.api-status.offline{color:var(--warning)}.header-actions,.table-head,.upload-row,.preview-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.header-actions{justify-content:flex-end}.primary,.secondary,.ghost,.danger-action{border-radius:var(--radius-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-weight:750;display:inline-flex}.primary{background:var(--brand);color:#fff;box-shadow:var(--shadow-soft)}.secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}.ghost{border-color:var(--line);color:var(--ink);background:0 0}.primary:hover:not(:disabled),.secondary:hover:not(:disabled),.ghost:hover:not(:disabled),.danger-action:hover:not(:disabled),.logout-button:hover{transform:translateY(-1px)}.notification-button{width:38px;padding:0;position:relative}.notification-button span{background:var(--model-emerald);color:#0000;width:7px;min-width:7px;height:7px;box-shadow:0 0 0 2px var(--model-shell);border-radius:999px;padding:0;font-size:0;display:block;position:absolute;top:8px;right:9px;overflow:hidden}select,input,textarea{border:1px solid var(--line);color:var(--ink);border-radius:var(--radius-sm);background:#fffffff0;min-height:38px;padding:8px 10px;transition:border-color .16s,background-color .16s,color .16s,box-shadow .16s,transform .16s;box-shadow:0 1px 1px #10182805}textarea{resize:vertical;width:100%;min-height:104px;line-height:1.45}select:hover,input:hover,textarea:hover,.search:hover{border-color:#cbd5e1}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;border-color:#0e7490cc;outline:3px solid #0e74902e}.page-grid,.workspace,.preview-layout,.dashboard{gap:16px;display:grid}.filters{grid-template-columns:150px minmax(180px,1fr) 210px minmax(160px,260px);align-items:end;gap:12px;display:grid}.filters label,.three-cols label,.layout-editor label,.combo-field{color:var(--muted);gap:7px;font-size:.8rem;font-weight:700;display:grid}.search{background:var(--paper);border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:0 10px;display:flex}.search input{width:100%;min-height:auto;box-shadow:none;background:0 0;border:0;padding:0}.status-grid{grid-template-columns:repeat(7,minmax(120px,1fr));gap:9px;display:grid}.metric,.kpi,.table-card,.panel,.summary-card,.chart-card,.preview-toolbar,.empty-state{border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fffffff0}.metric,.kpi{min-height:96px;padding:15px}.metric{text-align:left}.metric:hover,.kpi:hover,.prepare-card:hover,.executive-project-card:hover,.bar-row:hover,.loss-row:hover,.status-bars button:hover{transform:translateY(-1px)}.metric span,.kpi span{color:var(--muted);font-size:.78rem;font-weight:750;display:block}.metric strong,.kpi strong{margin-top:8px;font-size:1.45rem;display:block}.metric.success{border-color:#bcd8cb}.metric.warning{border-color:#efd7ad}.metric.danger{border-color:#e6b7b2}.metric.ready{border-color:#b8dde2}.metric.partial{border-color:#e4cda9}.metric.review{border-color:#cbc9ee}.metric.open{border-color:#cbd6da}.table-card{overflow:hidden}.table-head{border-bottom:1px solid var(--line);justify-content:space-between;padding:15px 18px}.table-head h2{margin:0}.table-tools{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.report-table,.event-table{display:grid}.tr{border:0;border-bottom:1px solid var(--line);color:inherit;text-align:left;background:0 0;grid-template-columns:minmax(220px,1.5fr) 110px 180px 120px 150px 200px;align-items:center;gap:12px;width:100%;padding:12px 18px;display:grid}.tr.th{color:var(--muted);text-transform:uppercase;background:#eee9e1;font-size:.78rem;font-weight:800}.tr:not(.th):hover,.tr.selected{background:#f8f5ee}.tr small,.event-row small{color:var(--muted);margin-top:3px;display:block}.actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.row-actions{gap:8px}.icon-action{width:44px;min-height:44px;padding:0}.icon-action svg{width:18px;height:18px}.event-row{border:0;border-bottom:1px solid var(--line);color:inherit;text-align:left;background:0 0;grid-template-columns:138px minmax(170px,1fr) 110px minmax(210px,1.2fr) minmax(190px,1fr);align-items:center;gap:12px;width:100%;padding:11px 18px;display:grid}.event-head{color:var(--muted);text-transform:uppercase;background:#ece7de;font-size:.78rem;font-weight:800}.event-row:not(.event-head):hover{background:#f8f5ee}.pill,.section-status{border-radius:999px;align-items:center;gap:6px;width:fit-content;min-height:26px;padding:4px 9px;font-size:.72rem;font-style:normal;font-weight:800;display:inline-flex}.success{color:var(--success);background:#e7f4ec}.ready{color:var(--brand-2);background:#e3f2f3}.warning{color:var(--warning);background:#fff2d8}.partial{color:#956629;background:#f6efe3}.danger{color:var(--danger);background:#fff0ee}.review{color:var(--review);background:#efeffb}.open{color:#334d56;background:#eaf0f2}.prepare-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.prepare-card{background:var(--paper);border:1px solid var(--line);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:13px;display:flex}.prepare-card.selected{outline:2px solid var(--gold)}.prepare-card small{color:var(--muted);margin-top:4px;display:block}.prep-filter-strip,.selected-context{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.editor-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:14px;display:grid}.editor-tabs{gap:7px;display:grid;position:sticky;top:18px}.editor-tabs button{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:var(--radius-sm);text-align:left;justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:8px 10px;display:flex}.editor-tabs button.active{border-color:var(--gold);background:#fbf6eb}.section-dot{background:currentColor;border-radius:999px;flex:none;width:10px;height:10px;display:inline-block}.section-stack{gap:14px;display:grid}.prep-progress-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.progress-ring{background:conic-gradient(var(--brand-2) var(--progress), #e8e3db 0), #fff;width:62px;height:62px;color:var(--brand);border-radius:50%;place-items:center;font-weight:900;display:grid}.source-line{border-left:3px solid var(--gold);color:var(--muted);background:#fbf6eb;margin-bottom:12px;padding:8px 10px;font-size:.86rem}.layout-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.layout-editor .wide{grid-column:1/-1}.panel{padding:16px 18px}.panel header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.panel header h2{margin-bottom:4px}.panel header p{color:var(--muted);margin-bottom:0;font-size:.88rem}.three-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.text-image-field{gap:8px;display:grid}.text-image-field>span:first-child{color:var(--ink);font-weight:800}.text-image-actions{justify-content:flex-start;display:flex}.text-image-upload{border:1px dashed var(--line);border-radius:var(--radius-sm);min-height:34px;color:var(--ink);cursor:pointer;background:#fbf8f2;align-items:center;gap:7px;padding:0 12px;font-size:.82rem;font-weight:850;display:inline-flex;position:relative}.text-image-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.text-image-upload:has(input:disabled){opacity:.55;cursor:not-allowed}.section-save-row,.prep-flow-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.upload-box{border:1px dashed var(--line);border-radius:var(--radius-sm);min-height:42px;color:var(--ink);cursor:pointer;background:#fbf8f2;align-items:center;gap:8px;padding:0 14px;font-weight:800;display:inline-flex;position:relative}.upload-box input{opacity:0;cursor:pointer;position:absolute;inset:0}.photo-strip{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-top:12px;display:grid}.photo-strip figure{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);margin:0;overflow:hidden}.photo-strip img{object-fit:cover;width:100%;height:124px;display:block}.photo-strip figcaption{justify-content:space-between;gap:6px;padding:8px;display:flex}.pending-list{color:var(--warning);margin:12px 0 0;padding-left:20px;font-weight:700}.summary-card{position:sticky;top:26px;overflow:hidden}.summary-card>img{object-fit:cover;width:100%;height:150px}.summary-card>div,.summary-card dl,.summary-actions,.audit-list{padding:14px 16px}.summary-card h2{margin-bottom:10px;font-size:1.25rem}dl{gap:10px;margin:0;display:grid}dl div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}dt{color:var(--muted);font-size:.8rem}dd{text-align:right;margin:0;font-weight:800}.summary-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;display:flex}.notice{border-radius:var(--radius-sm);color:var(--warning);background:#fff2d8;gap:4px;margin:12px 16px;padding:10px 12px;display:grid}.audit-list{background:#f6f2eb;gap:7px;max-height:260px;display:grid;overflow:auto}.audit-list h3{margin:0 0 2px;font-size:.86rem}.audit-list p{color:var(--muted);margin:0;font-size:.82rem}.audit-list strong{color:var(--ink);display:block}.selected-context{margin-bottom:16px}.selected-context h2{margin-bottom:2px}.selected-context span{color:var(--muted)}.selected-context-metrics,.selected-context-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.context-clear{width:38px;padding:0}.preview-layout{align-items:start}.preview-toolbar{z-index:3;justify-content:space-between;padding:14px 16px;position:sticky;top:0}.preview-tools,.preview-section-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.preview-section-nav{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:var(--radius);background:#fffffff0;padding:10px;position:sticky;top:80px}.preview-section-nav .ghost{color:#1f2937;background:#fff;border-color:#cfd7df}.preview-section-nav .ghost:hover:not(:disabled){color:#111827;background:#eef2f7}.report-preview{transform:scale(var(--preview-zoom,1));transform-origin:top;width:fit-content;margin:0 auto}.zoomable-preview{transition:transform .16s}.print-report{--page-width:794px;--page-height:1123px;width:var(--page-width);color:#243030;margin:0 auto 48px;font-family:Segoe UI,Inter,Arial,sans-serif}.print-cover,.print-page{width:var(--page-width);min-height:var(--page-height);break-after:page;page-break-after:always;background:#fff;position:relative;overflow:hidden;box-shadow:0 18px 44px #1822221f}.print-cover{color:#fff;background-position:50%;background-size:cover;align-content:end;padding:64px;display:grid}.cover-shade{background:linear-gradient(#0d18181a,#0d1818d1),linear-gradient(90deg,#1f3f45c7,#0000 62%);position:absolute;inset:0}.cover-logo{z-index:1;min-width:150px;min-height:86px;color:var(--report-primary,var(--brand));background:#ffffffeb;border-radius:8px;place-items:center;padding:16px 18px;display:grid;position:absolute;top:58px;left:58px;box-shadow:0 12px 28px #00000029}.cover-logo img{object-fit:contain;max-width:180px;max-height:78px}.cover-title{z-index:1;max-width:620px;position:relative}.cover-title span{letter-spacing:.12em;text-transform:uppercase;background:#ffffff29;border:1px solid #ffffff3d;border-radius:999px;align-items:center;min-height:34px;padding:7px 13px;font-size:.8rem;font-weight:900;display:inline-flex}.cover-title h1{color:#fff;letter-spacing:0;margin:18px 0 10px;font-size:2.65rem;line-height:1.05}.cover-title p{color:#ffffffd6;margin:0;font-size:1.05rem;font-weight:700}.print-page{padding:58px 62px 68px}.print-page+.print-page,.print-cover+.print-page{margin-top:26px}.print-page:after{content:"";background:var(--report-primary,var(--brand));height:18px;position:absolute;bottom:0;left:0;right:0}.print-page h2{color:var(--report-primary,var(--brand));letter-spacing:0;margin:0 0 18px;font-size:1.38rem;line-height:1.18}.print-page h2:not(:first-child){margin-top:28px}.print-page h3{color:var(--report-primary,var(--brand));margin:0 0 10px;font-size:.98rem}.print-page p{color:#3e4b4a;font-size:.98rem;line-height:1.66}.print-page .letter{color:var(--report-primary,var(--brand));font-size:1.08rem;font-weight:800}.activity-stack{grid-template-columns:1fr;gap:14px;margin-top:14px;display:grid}.activity-stack>div,.activity-columns>div{background:#f8fbfb;border:1px solid #d9e2e4;border-radius:8px;min-height:0;padding:16px}.activity-stack ul,.activity-columns ul{margin:0;padding-left:18px}.activity-stack li,.activity-columns li{color:#354343;margin:0 0 8px;font-size:.95rem;line-height:1.45}.rich-report-text p{margin:0 0 12px}.text-inline-image{object-fit:contain;border:1px solid #d9e2e4;border-radius:8px;max-width:100%;max-height:360px;margin:10px 0 12px;display:block}.activity-stack .text-inline-image,.activity-columns .text-inline-image{max-height:240px}.photo-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.photo-grid img{aspect-ratio:4/3;object-fit:cover;background:#eef2f3;border:1px solid #d9e2e4;border-radius:8px;width:100%}.schedule-file{object-fit:contain;background:#fff;border:1px solid #d9e2e4;border-radius:8px;width:100%;max-height:860px}.schedule-pdf{background:#fff;border:1px solid #d9e2e4;border-radius:8px;width:100%;height:790px}.file-note{color:#66706e;margin-top:10px;font-size:.84rem}.gantt{background:repeating-linear-gradient(90deg,#0000 0 11.7%,#1f3f4512 11.7% 12%),#f7fbfc;border:1px solid #d9e2e4;border-radius:8px;gap:10px;padding:18px;display:grid}.gantt-row{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:14px;min-height:34px;display:grid;position:relative}.gantt-row span{color:#344443;font-size:.82rem;font-weight:800}.gantt-row i{background:var(--report-primary,var(--brand));border-radius:999px;height:16px;position:absolute;left:180px;right:0}.print-page table{border-collapse:collapse;width:100%;margin:0 0 18px;font-size:.88rem}.print-page th{background:var(--report-table,#e2edf3);color:var(--report-primary,var(--brand));text-align:left;border:1px solid #cdd9dd;padding:10px 12px;font-weight:900}.print-page td{color:#374746;border:1px solid #d9e2e4;padding:9px 12px}.print-page td:last-child,.print-page th:last-child{text-align:right;white-space:nowrap}.print-page tr.total td{color:var(--report-primary,var(--brand));background:#f5f8f9;font-weight:900}.print-page .negative{color:var(--danger);font-weight:900}.closing{border-left:4px solid var(--report-primary,var(--brand));background:#f7fafb;margin-top:24px;padding:16px}.report-footer{color:#66706e;margin:0;font-size:.72rem;line-height:1.35;position:absolute;bottom:28px;left:62px;right:62px}@media print{body{background:#fff}body *{visibility:hidden}.print-report,.print-report *{visibility:visible}.print-report{width:210mm;margin:0}.print-cover,.print-page{width:210mm;min-height:297mm;box-shadow:none;page-break-after:always;margin:0}.print-page+.print-page,.print-cover+.print-page{margin-top:0}}.empty-state{text-align:center;min-height:220px;color:var(--muted);place-items:center;padding:28px;display:grid}.empty-state.compact{min-height:120px;padding:18px}.inline-empty{color:var(--muted);text-align:center;padding:18px}.table-empty{border-top:1px solid var(--line)}.dashboard{gap:18px}.dashboard-hero{border-radius:var(--radius);color:#fff;background:linear-gradient(135deg,#193a40,#0f5967);justify-content:space-between;gap:22px;padding:22px;display:flex}.dashboard-hero .eyebrow,.dashboard-hero p{color:#ffffffc2}.dashboard-hero h2{margin-bottom:6px;font-size:1.45rem}.dashboard-hero-meta{border-radius:var(--radius);background:#ffffff1f;gap:4px;min-width:170px;padding:14px;display:grid}.dashboard-hero-meta strong{font-size:2rem}.dashboard-filters,.kpi-row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.kpi-row{grid-template-columns:repeat(6,minmax(130px,1fr));display:grid}.kpi{gap:6px;display:grid}.kpi-icon{color:var(--brand-2)}.kpi-green .kpi-icon{color:var(--success)}.kpi-red .kpi-icon{color:var(--danger)}.kpi-amber .kpi-icon{color:var(--warning)}.dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:16px;display:grid}.secondary-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.6fr)}.chart-card{padding:16px}.chart-title{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.chart-title h2{margin-bottom:4px}.chart-title p{margin:0}.chart-legend{color:var(--muted);align-items:center;gap:8px;font-size:.82rem;display:flex}.legend{border-radius:999px;width:10px;height:10px;display:inline-block}.legend.revenue,.bar.revenue{background:#2e7d5b}.legend.expense,.bar.expense{background:#c9954a}.bar-row,.loss-row,.executive-project-card,.status-bars button{border:1px solid var(--line);background:var(--paper);color:inherit;border-radius:var(--radius);text-align:left}.bar-row{grid-template-columns:170px minmax(0,1fr);align-items:center;gap:12px;width:100%;margin-bottom:8px;padding:11px;display:grid}.bar-row>div{gap:7px;display:grid}.bar{border-radius:999px;min-width:12px;height:20px;display:block;position:relative}.bar em{color:#fff;font-size:.72rem;font-style:normal;font-weight:800;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.status-bars{gap:8px;display:grid}.status-bars button{justify-content:space-between;align-items:center;min-height:42px;padding:10px 12px;display:flex;position:relative;overflow:hidden}.status-bars button em{background:var(--brand-2);height:3px;position:absolute;inset:auto 0 0}.project-card-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.executive-project-card{gap:8px;padding:14px;display:grid}.executive-project-card strong,.loss-row strong,.bar-row strong{display:block}.executive-project-card small,.loss-row small,.bar-row small{color:var(--muted)}.executive-project-card dl{gap:6px}.executive-project-card dl div{padding-bottom:5px}.positive-value{color:var(--success)}.negative{color:var(--danger)}.loss-row{justify-content:space-between;align-items:center;gap:12px;width:100%;margin-bottom:8px;padding:11px 12px;display:flex}.filter-chip{border:1px solid var(--line);background:var(--paper);min-height:38px;color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-weight:800;display:inline-flex}.combo-field{position:relative}.combo-shell{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fffffff0;align-items:center;gap:8px;min-height:38px;padding:0 8px;display:flex}.combo-shell input{min-height:34px;box-shadow:none;background:0 0;border:0;width:100%;padding:0}.combo-clear,.combo-toggle{width:28px;height:28px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.combo-menu{z-index:20;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);max-height:260px;box-shadow:var(--shadow);padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.combo-menu button{width:100%;min-height:34px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:0 8px;display:flex}.combo-menu button:hover,.combo-menu button.active{background:#f6f2eb}.combo-menu button[aria-selected=true]{color:#eef2ff;background:#6366f138}.combo-empty{color:var(--muted);padding:10px;display:block}.pagination{color:var(--muted);justify-content:flex-end;align-items:center;gap:10px;padding:12px 18px;display:flex}.modal-backdrop{z-index:100;background:#0c121275;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line);width:min(620px,100%);max-height:min(820px,90vh);box-shadow:var(--shadow);background:#fffffff7;border-radius:14px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.modal header h2{margin:0}.modal-close{width:34px;padding:0}.modal-body{gap:14px;padding:18px 20px 20px;display:grid;overflow:auto}.modal-body label,.user-form label{color:var(--muted);gap:6px;font-size:.82rem;font-weight:800;display:grid}.modal-body .primary,.modal-body .danger-action{justify-self:end;width:fit-content}.notification-list,.user-list,.batch-list{gap:10px;display:grid}.notification-item,.user-list>div,.batch-list label{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);padding:10px 12px}.notification-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.notification-item.read{opacity:.62}.notification-item>button:first-child{text-align:left;color:inherit;background:0 0;border:0;gap:3px;display:grid}.notification-item span,.notification-item small,.user-list span{color:var(--muted)}.modal{background:var(--model-card);border-color:var(--model-border);color:var(--model-text)}.modal header{border-bottom-color:var(--model-border-soft)}.modal-body{background:var(--model-card)}.social-notification-list{gap:4px}.social-notification-item{background:0 0;border:0;border-radius:10px;grid-template-columns:minmax(0,1fr) 28px;align-items:center;padding:0;display:grid}.social-notification-item:hover{background:#ffffff0a}.social-notification-item.read{opacity:.56}.social-notification-item>button:first-child{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:10px 8px;display:grid}.notification-avatar{background:linear-gradient(135deg,#3b82f6,#4f46e5);border-radius:999px;place-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:grid;color:#fff!important}.notification-copy{gap:2px;min-width:0;display:grid}.notification-copy strong{color:#e5e7eb;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.notification-copy small{color:var(--model-muted);font-size:12px}.notification-copy em{color:var(--model-dim);font-size:12px;font-style:normal}.notification-read-dot{background:var(--model-indigo);border:0;border-radius:999px;justify-self:center;width:10px;min-height:10px;padding:0}.social-notification-item.read .notification-read-dot{background:0 0}.user-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.page-user-form{border-bottom:1px solid var(--line);padding:16px 18px}.page-user-list{padding:16px 18px}.user-form button,.user-form .combo-field{grid-column:1/-1}.message-text{color:var(--muted);margin:0}.pending-summary{border-radius:var(--radius);background:#fff8ec;border:1px solid #efd7ad;padding:12px}.toast-stack{z-index:120;gap:8px;display:grid;position:fixed;bottom:18px;right:18px}.toast{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:42px;color:var(--ink);box-shadow:var(--shadow);align-items:center;gap:10px;padding:0 12px;display:flex}.toast.success{border-color:#bcd8cb}.toast.warning,.toast.info{border-color:#efd7ad}.toast.danger{border-color:#e6b7b2}.skeleton-panel{gap:16px;padding:20px;display:grid}.skeleton-line,.skeleton-card{border-radius:var(--radius);background:linear-gradient(90deg,#eee9e1,#f8f5ee,#eee9e1) 0 0/220% 100%;animation:1.4s ease-in-out infinite pulse}.skeleton-line{width:320px;height:28px}.skeleton-line.wide{width:60%}.skeleton-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.skeleton-card{min-height:110px}@keyframes pulse{0%{background-position:0%}to{background-position:-220%}}@media (width<=1180px){.status-grid,.kpi-row{grid-template-columns:repeat(3,minmax(140px,1fr))}.workspace,.dashboard-grid,.secondary-grid{grid-template-columns:1fr}.summary-card,.editor-tabs,.preview-toolbar,.preview-section-nav{position:static}}@media (width<=820px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{height:auto;position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding:18px}.topbar,.prep-filter-strip,.selected-context,.dashboard-hero{flex-direction:column;align-items:stretch}.filters,.three-cols,.layout-editor,.editor-layout,.user-form,.status-grid,.kpi-row,.skeleton-grid,.tr,.tr.th,.event-row,.event-head{grid-template-columns:1fr}.tr.th,.event-head{display:none}}:root{--model-bg:#0a0b0d;--model-shell:#0f1113;--model-card:#12141a;--model-card-hover:#171a22;--model-border:#ffffff14;--model-border-soft:#ffffff0d;--model-text:#f3f4f6;--model-muted:#9ca3af;--model-dim:#6b7280;--model-indigo:#6366f1;--model-emerald:#10b981;--model-amber:#f59e0b;--model-red:#ef4444;--model-purple:#8b5cf6;--model-cyan:#06b6d4}body{background:var(--model-bg);color:var(--model-text)}.app-shell{background:var(--model-bg);min-height:100vh;color:var(--model-text);grid-template-columns:280px minmax(0,1fr);transition:grid-template-columns .28s}.app-shell.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sidebar{z-index:50;background:var(--model-shell);border-right:1px solid var(--model-border-soft);width:280px;height:100vh;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;gap:0;padding:0;transition:width .28s,transform .28s;position:sticky;top:0;overflow:hidden}.sidebar-collapsed .sidebar{border-right:0;width:0;transform:translate(-280px)}.brand{border-bottom:1px solid var(--model-border-soft);text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;height:64px;min-height:64px;padding:0 24px;display:flex}.brand-logo{object-fit:contain;flex:0 0 42px;width:42px;height:42px}.brand-copy{gap:1px;min-width:0;display:grid}.brand-copy strong{color:var(--model-text);white-space:normal;font-size:15px;font-weight:700;line-height:1.15}.brand-copy small{color:var(--model-dim);font-size:12px;font-weight:500}.brand>span,.collapse-button{display:none}.sidebar nav{gap:4px;padding:12px;display:grid}.sidebar nav button{min-height:42px;color:var(--model-muted);letter-spacing:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 12px;font-size:14px;font-weight:600;display:flex}.sidebar nav button:hover{color:#d1d5db;background:#ffffff0a}.sidebar nav button.active{color:var(--model-text);background:#ffffff14;border-color:#0000}.role-box{border:0;border-top:1px solid var(--model-border-soft);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;flex-direction:row;align-items:center;gap:10px;margin:0;padding:16px;display:flex;position:absolute;bottom:0;left:0;right:0}.connected-user{text-align:left;background:#ffffff05;border-radius:10px;flex:1;gap:2px;min-width:0;padding:10px 12px;display:grid}.connected-user span{display:none}.connected-user strong{color:#e5e7eb;font-size:14px;font-weight:700}.connected-user small{color:var(--model-dim);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.logout-button,.sidebar-collapsed .logout-button{width:36px;min-height:36px;color:var(--model-muted);background:0 0;border:0;border-radius:10px;flex:0 0 36px;place-items:center;padding:0;display:grid}.logout-button:hover{color:var(--model-text);background:#ffffff0a}.logout-button span{display:none}.main{background:var(--model-bg);min-width:0;min-height:100vh;padding:0}.topbar{z-index:40;background:var(--model-shell);border-bottom:1px solid var(--model-border-soft);justify-content:space-between;align-items:center;gap:16px;height:64px;margin:0;padding:0 24px;display:flex;position:sticky;top:0}.topbar-left,.header-actions{align-items:center;gap:12px;display:flex}.topbar-menu,.topbar-competence,.topbar-search,.topbar-avatar,.topbar-icon-button,.header-actions .ghost,.header-actions .primary{border:1px solid var(--model-border);color:#d1d5db;box-shadow:none;background:#ffffff0a;border-radius:10px}.topbar-menu,.topbar-avatar,.topbar-icon-button,.notification-button{place-items:center;width:38px;min-height:38px;padding:0;display:grid}.topbar-menu:hover,.topbar-icon-button:hover,.header-actions .ghost:hover:not(:disabled){color:var(--model-text);background:#ffffff14}.topbar-competence{color:#d1d5db;align-items:center;min-height:34px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.topbar-filter-chips{align-items:center;gap:8px;min-width:0;display:flex}.topbar-filter-chips span{color:#c7d2fe;text-overflow:ellipsis;white-space:nowrap;background:#6366f12e;border:1px solid #6366f152;border-radius:999px;align-items:center;max-width:230px;min-height:30px;padding:0 11px;font-size:12px;font-weight:750;display:inline-flex;overflow:hidden}.topbar-search{width:300px;min-height:38px;color:var(--model-dim);align-items:center;gap:9px;padding:0 12px;display:flex}.topbar-search input{color:#d1d5db;width:100%;min-height:0;box-shadow:none;background:0 0;border:0;padding:0}.topbar-search input::placeholder{color:var(--model-dim)}.topbar-avatar{color:#fff;background:linear-gradient(135deg,#3b82f6,#4f46e5);border:0;border-radius:999px}.header-actions .notification-button.ghost{color:var(--model-muted);background:0 0;border-color:#0000}.header-actions .notification-button.ghost:hover:not(:disabled){color:var(--model-text);background:#ffffff0a}.header-actions .primary{background:var(--model-indigo);border-color:var(--model-indigo);color:#fff}.page-grid,.workspace,.preview-layout,.dashboard,.reference-page{gap:24px;padding:24px}.reference-page{max-width:1280px;margin:0 auto;display:grid}.reference-page-head{gap:8px;display:grid}.reference-page-head h1{color:var(--model-text);font-size:1.9rem;font-weight:800}.reference-page-head p{color:var(--model-muted);margin:0}.dashboard-hero{display:none}.filters,.dashboard-filters,.prep-filter-strip,.selected-context,.preview-toolbar,.table-card,.panel,.summary-card,.chart-card,.prep-progress-card,.empty-state,.reference-card,.modal,.toast,.activity-card,.photo-card,.file-card,.layout-card,.info-card{background:var(--model-card);border:1px solid var(--model-border);color:#e5e7eb;box-shadow:none;border-radius:12px}.table-card,.reference-card{overflow:hidden}.filters,.dashboard-filters,.prep-filter-strip,.selected-context,.preview-toolbar,.reference-card,.panel,.summary-card,.chart-card{padding:24px}.status-grid,.kpi-row,.reference-stat-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px;display:grid}.reference-stat-grid.five{grid-template-columns:repeat(5,minmax(140px,1fr))}.metric,.kpi{border:1px solid var(--model-border);background:var(--model-card);min-height:150px;color:var(--model-text);box-shadow:none;border-radius:12px;align-content:start;gap:10px;padding:24px;display:grid}.metric:hover,.kpi:hover{background:var(--model-card-hover);border-color:#ffffff1f;transform:translateY(-4px)}.metric span,.kpi span,.kpi small,.muted,.table-head p,.panel header p,.summary-card small,.tr small,.event-row small,.help-text{color:var(--model-muted)}.metric strong,.kpi strong{color:var(--model-text);font-size:2.35rem;line-height:1}.kpi-icon{color:#fff;background:linear-gradient(135deg,#6366f1,#7c3aed);border-radius:10px;width:48px;height:48px}.kpi-green .kpi-icon,.metric.success,.metric.ready{border-top-color:var(--model-emerald)}.kpi-red .kpi-icon,.metric.danger{border-top-color:var(--model-red)}.kpi-amber .kpi-icon,.metric.warning,.metric.partial{border-top-color:var(--model-amber)}.metric.review{border-top-color:var(--model-purple)}.metric.open{border-top-color:var(--model-cyan)}.dashboard-grid,.secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.chart-card{min-height:320px}.chart-title h2,.table-head h2,.panel header h2,.summary-card h2,.reference-card h2,h1,h2,h3{color:var(--model-text)}.table-head,.panel header,.modal header{border-color:var(--model-border-soft)}.tr,.event-row{border-bottom-color:var(--model-border-soft);color:#d1d5db}.tr.th,.event-head{color:var(--model-muted);background:#ffffff08}.tr:not(.th):hover,.tr.selected,.event-row:not(.event-head):hover{background:#ffffff05}.pill,.status-pill,.filter-chip,.badge{color:#d1d5db;background:#ffffff0a;border-color:#ffffff1f}.pill.success{color:#34d399;background:#10b9811a;border-color:#10b98133}.pill.warning{color:#fbbf24;background:#f59e0b1a;border-color:#f59e0b33}.pill.danger{color:#f87171;background:#ef44441a;border-color:#ef444433}.pill.review{color:#a5b4fc;background:#6366f11f;border-color:#6366f13d}.app-shell select,.app-shell input,.app-shell textarea,.search,.combo-trigger,.combo-popover,.combo-option,.editor-tabs button{border-color:var(--model-border);color:#d1d5db;background:#ffffff0a}.app-shell input::placeholder,.app-shell textarea::placeholder{color:var(--model-dim)}.app-shell select:focus,.app-shell input:focus,.app-shell textarea:focus,.search:focus-within,.combo-trigger:focus{border-color:#6366f1cc;box-shadow:0 0 0 3px #6366f12e}.app-shell option{background:var(--model-card);color:var(--model-text)}.secondary,.ghost,.danger-action{border-color:var(--model-border);color:#d1d5db;background:#ffffff0a}.secondary:hover:not(:disabled),.ghost:hover:not(:disabled){color:var(--model-text);background:#ffffff14}.primary{border-color:var(--model-indigo);background:var(--model-indigo);color:#fff;box-shadow:none}.primary:hover:not(:disabled){background:#4f46e5}.danger-action{color:#f87171;background:#ef44441a;border-color:#ef444440}.editor-layout{grid-template-columns:260px minmax(0,1fr)}.editor-tabs{background:var(--model-card);border:1px solid var(--model-border);border-radius:12px;padding:16px}.editor-tabs button{color:#d1d5db;background:0 0;border:0;border-radius:10px;min-height:44px}.editor-tabs button.active{color:#a5b4fc;background:#6366f12e}.prepare-list{gap:12px;display:grid}.prepare-card,.executive-project-card,.loss-row,.bar-row,.batch-select-list label,.settings-user-list>div{border:1px solid var(--model-border);color:#e5e7eb;background:#ffffff08;border-radius:12px}.prepare-card:hover,.executive-project-card:hover,.loss-row:hover,.bar-row:hover,.batch-select-list label:hover,.settings-user-list>div:hover{background:#ffffff0f}.batch-select-list,.settings-user-list,.audit-log,.history-timeline{gap:12px;padding:24px;display:grid}.batch-select-list label{cursor:pointer;align-items:center;gap:16px;min-height:72px;padding:16px;display:flex}.batch-select-list label.selected{border-color:var(--model-indigo);background:#6366f129}.generation-action{justify-content:space-between;align-items:center;display:flex}.history-item{grid-template-columns:56px minmax(0,1fr);gap:18px;display:grid;position:relative}.history-marker{z-index:1;background:var(--model-emerald);color:#fff;border-radius:999px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.history-line{background:#ffffff1a;width:2px;position:absolute;top:52px;bottom:-14px;left:23px}.history-content{border:1px solid var(--model-border);background:#ffffff08;border-radius:12px;gap:12px;padding:20px;display:grid}.history-actions{gap:10px;display:flex}.audit-entry{border-radius:12px;gap:16px;padding:20px;transition:background .15s;display:flex}.audit-entry:hover{background:#ffffff0a}.audit-avatar,.profile-avatar{color:#fff;background:linear-gradient(135deg,#6366f1,#7c3aed);border-radius:999px;flex:0 0 48px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.audit-entry-head,.settings-user-list>div{justify-content:space-between;align-items:center;gap:16px;display:flex}.audit-entry p,.audit-entry small,.audit-entry em{color:var(--model-muted);margin:4px 0 0;font-style:normal;display:block}.settings-tabs{border-bottom:1px solid var(--model-border);gap:8px;display:flex}.settings-tabs button{color:var(--model-muted);text-transform:capitalize;background:0 0;border:0;border-radius:10px 10px 0 0;padding:14px 20px;font-weight:700}.settings-tabs button.active{background:var(--model-card);color:#a5b4fc;box-shadow:inset 0 -2px 0 var(--model-indigo)}.profile-card{align-items:center;gap:24px;padding:32px;display:flex}.profile-avatar{flex-basis:96px;width:96px;height:96px;font-size:2rem}.settings-user-list>div{padding:18px}.settings-user-list small{color:var(--model-muted);display:block}.settings-placeholder{padding:32px}.preview-layout .report-preview,.print-report{color:#243030}.print-cover,.print-page{background:#fff}.layout-tab-current .panel{background:var(--paper);border:1px solid var(--line);color:var(--ink);box-shadow:var(--shadow-soft)}.layout-tab-current .panel header,.layout-tab-current .section-save-row{border-color:var(--line)}.layout-tab-current h2,.layout-tab-current h3,.layout-tab-current label{color:var(--ink)}.layout-tab-current .source-line,.layout-tab-current .section-status{color:var(--muted)}.layout-tab-current input,.layout-tab-current textarea,.layout-tab-current .upload-box{border-color:var(--line);color:var(--ink);background:#fffffff0}.brand{text-align:center;flex-direction:column;justify-content:center;gap:6px;height:76px;min-height:76px;padding:8px 18px}.brand-logo{flex:0 0 16px;width:16px;height:16px}.brand-copy strong{text-align:center;font-size:12px;line-height:1.2}.sidebar .brand{text-align:center;align-content:center;place-items:center;gap:0;height:96px;min-height:96px;padding:18px 22px;display:grid}.sidebar .brand-logo{object-fit:contain;flex:0 0 52px;width:52px;max-width:52px;height:52px;max-height:52px}.modal-close{width:44px;min-height:44px}.modal-close svg{stroke-width:2.4px;width:24px;height:24px}.model-dashboard{gap:24px;max-width:1440px;margin:0 auto}.model-stats-grid{grid-template-columns:repeat(7,minmax(118px,1fr));gap:10px;display:grid}.model-stat-card{border:1px solid var(--model-border);background:var(--model-card);min-height:108px;color:var(--model-text);text-align:left;animation:.36s both model-card-in;animation-delay:var(--delay);border-radius:12px;align-content:start;gap:8px;padding:14px;display:grid;position:relative;overflow:hidden}.model-stat-card:hover{background:var(--model-card-hover);border-color:#ffffff1f;transform:translateY(-4px)scale(1.01)}.model-stat-card:after{content:"";opacity:0;transition:opacity .2s;position:absolute;inset:0}.model-stat-card:hover:after{opacity:.06}.model-stat-icon{color:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.model-stat-icon svg{width:20px;height:20px}.model-stat-card strong{color:#f3f4f6;font-size:1.75rem;line-height:1}.model-stat-card small{color:var(--model-muted);font-size:11px;font-weight:650}.model-stat-orange .model-stat-icon,.model-stat-orange:after{background:linear-gradient(135deg,#f97316,#d97706)}.model-stat-blue .model-stat-icon,.model-stat-blue:after{background:linear-gradient(135deg,#3b82f6,#4f46e5)}.model-stat-emerald .model-stat-icon,.model-stat-emerald:after{background:linear-gradient(135deg,#10b981,#0d9488)}.model-stat-amber .model-stat-icon,.model-stat-amber:after{background:linear-gradient(135deg,#f59e0b,#ca8a04)}.model-stat-red .model-stat-icon,.model-stat-red:after{background:linear-gradient(135deg,#ef4444,#e11d48)}.model-stat-purple .model-stat-icon,.model-stat-purple:after{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.model-stat-cyan .model-stat-icon,.model-stat-cyan:after{background:linear-gradient(135deg,#06b6d4,#0284c7)}.model-dashboard-filters{grid-template-columns:160px minmax(240px,1fr) 220px auto;padding:18px}.model-filter-panel .combo-shell,.model-dashboard-filters .combo-shell{border-color:var(--model-border);color:#d1d5db;background:#ffffff0a}.model-filter-panel .combo-shell input,.model-dashboard-filters .combo-shell input{color:#d1d5db}.model-filter-panel .combo-shell svg,.model-dashboard-filters .combo-shell svg{color:var(--model-dim)}.model-filter-panel .combo-selected .combo-shell,.model-dashboard-filters .combo-selected .combo-shell{background:#070a12eb;border-color:#6366f180;box-shadow:inset 0 0 0 1px #6366f11f}.model-filter-panel .combo-selected .combo-shell input,.model-dashboard-filters .combo-selected .combo-shell input{color:#f8fafc;font-weight:750}.model-filter-panel .combo-selected .combo-shell svg,.model-dashboard-filters .combo-selected .combo-shell svg{color:#a5b4fc}.model-filter-panel .combo-menu,.model-dashboard-filters .combo-menu{background:#0b0d12;border-color:#ffffff1f}.model-filter-panel .combo-menu button,.model-dashboard-filters .combo-menu button{color:#d1d5db}.model-filter-panel .combo-menu button:hover,.model-filter-panel .combo-menu button.active,.model-dashboard-filters .combo-menu button:hover,.model-dashboard-filters .combo-menu button.active{color:#f3f4f6;background:#ffffff14}.model-filter-panel .combo-menu button[aria-selected=true],.model-dashboard-filters .combo-menu button[aria-selected=true]{color:#fff;background:#6366f142}.model-filter-panel .search,.model-filter-panel .topbar-search,.model-filter-panel input{border-color:var(--model-border);color:#d1d5db;background:#ffffff0a}.model-filter-panel .search:focus-within,.model-filter-panel .topbar-search:focus-within,.model-filter-panel input:focus{border-color:#6366f1cc;box-shadow:0 0 0 3px #6366f12e}.model-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.model-chart-card,.model-table-card{border:1px solid var(--model-border);background:var(--model-card);color:var(--model-text);box-shadow:none;border-radius:12px}.model-chart-card{padding:24px}.model-chart-card h3{color:#f3f4f6;margin:0 0 22px;font-size:1.05rem;font-weight:750}.model-column-chart,.model-line-chart{background:linear-gradient(#ffffff0b 1px,#0000 1px) 0 0/100% 56px,linear-gradient(#ffffff05,#0000);border-radius:10px;height:280px}.model-svg-chart{width:100%;height:280px;display:block;overflow:visible}.model-svg-chart .grid-line{stroke:#ffffff0e;stroke-dasharray:3 3;stroke-width:1px}.model-svg-chart .grid-line.vertical{stroke:#ffffff09}.model-svg-chart .axis-line{stroke:#4b5563;stroke-width:1.15px}.model-svg-chart .axis-label{fill:#8090ac;text-anchor:middle;font-size:11px}.model-svg-chart .y-label{text-anchor:end}.model-svg-chart .area-line,.model-svg-chart .line-path{fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.model-svg-green .area-line{stroke:#10b981}.model-svg-red .area-line{stroke:#ef4444}.model-svg-blue .line-path{stroke:#3b82f6;stroke-width:2.4px}.model-svg-blue .line-dot{fill:#3b82f6;stroke:#12141a;stroke-width:2px}.model-svg-purple .bar-rect{fill:#8b5cf6}.model-column-chart{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));align-items:end;gap:14px;padding:20px 6px 34px;display:grid}.model-column{justify-content:center;align-items:flex-end;height:100%;display:flex;position:relative}.model-column span{border-radius:8px 8px 0 0;width:min(44px,80%);min-height:4px;display:block}.model-area-green .model-column span{background:linear-gradient(#10b981f2,#10b9812e);box-shadow:0 0 22px #10b98124}.model-area-red .model-column span{background:linear-gradient(#ef4444f2,#ef44442e);box-shadow:0 0 22px #ef444424}.model-area-purple .model-column span{background:linear-gradient(#8b5cf6f5,#8b5cf633);box-shadow:0 0 22px #8b5cf624}.model-column small,.model-line-point small{color:var(--model-dim);text-align:center;font-size:12px;position:absolute;bottom:-24px;left:0;right:0}.model-column em,.model-line-point em{border:1px solid var(--model-border);color:#fff;opacity:0;pointer-events:none;white-space:nowrap;background:#1f2937;border-radius:7px;max-width:120px;padding:5px 7px;font-size:11px;font-style:normal;font-weight:700;transition:opacity .15s;position:absolute;bottom:100%;left:50%;transform:translate(-50%,-8px)}.model-column:hover em,.model-line-point:hover em{opacity:1}.model-line-chart{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:12px;padding:20px 8px 34px;display:grid;position:relative}.model-line-point{position:relative}.model-line-point span{background:#3b82f6;border-radius:999px;width:12px;height:12px;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 0 0 5px #3b82f629}.model-line-point span.positive-value{background:#3b82f6}.model-line-point span.negative{background:#ef4444}.model-ranking-card{min-height:360px}.model-ranking-list{gap:12px;display:grid}.model-ranking-list button{color:#d1d5db;text-align:left;background:0 0;border:0;grid-template-columns:minmax(160px,220px) minmax(0,1fr) minmax(110px,auto);align-items:center;gap:14px;min-height:42px;padding:0;display:grid}.model-ranking-list button:hover{color:#f3f4f6}.model-ranking-list i{background:#ffffff0a;border-radius:0 8px 8px 0;height:18px;display:block;overflow:hidden}.model-ranking-list b{border-radius:inherit;background:linear-gradient(90deg,#06b6d4,#0284c7);min-width:8px;height:100%;display:block}.model-ranking-list strong{color:#f3f4f6;text-align:right;font-size:13px}.model-table-card{overflow:hidden}.model-data-table{display:grid}.model-data-row{border:0;border-bottom:1px solid var(--model-border-soft);color:#d1d5db;text-align:left;background:0 0;grid-template-columns:minmax(210px,1.45fr) 185px 100px 140px 140px 140px;align-items:center;gap:12px;width:100%;min-height:58px;padding:12px 18px;display:grid}.model-data-row:not(.model-data-head):hover{background:#ffffff08}.model-data-head{min-height:44px;color:var(--model-muted);text-transform:uppercase;background:#ffffff08;font-size:12px;font-weight:800}.model-data-row small{color:var(--model-dim);margin-top:3px;display:block}@keyframes model-card-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.app-shell .filters,.app-shell .prep-filter-strip,.app-shell .selected-context,.app-shell .preview-toolbar,.app-shell .table-card,.app-shell .panel,.app-shell .summary-card,.app-shell .chart-card,.app-shell .prep-progress-card,.app-shell .empty-state,.app-shell .reference-card,.app-shell .modal,.app-shell .toast,.app-shell .activity-card,.app-shell .photo-card,.app-shell .file-card,.app-shell .layout-card,.app-shell .info-card,.app-shell .prepare-card,.app-shell .executive-project-card,.app-shell .loss-row,.app-shell .bar-row,.app-shell .metric,.app-shell .kpi{border:1px solid var(--model-border);background:var(--model-card);color:var(--model-text);box-shadow:none;border-radius:12px}.app-shell .table-card,.app-shell .reference-card,.app-shell .panel,.app-shell .summary-card,.app-shell .chart-card{overflow:hidden}.app-shell .status-grid{grid-template-columns:repeat(7,minmax(118px,1fr));gap:10px}.app-shell .metric,.app-shell .kpi{align-content:start;gap:8px;min-height:108px;padding:14px}.app-shell .metric:hover,.app-shell .kpi:hover,.app-shell .prepare-card:hover,.app-shell .executive-project-card:hover,.app-shell .loss-row:hover,.app-shell .bar-row:hover{background:var(--model-card-hover);border-color:#ffffff1f;transform:translateY(-4px)scale(1.01)}.app-shell .metric span,.app-shell .kpi span,.app-shell .metric small,.app-shell .kpi small,.app-shell .table-head p,.app-shell .panel header p,.app-shell .summary-card small,.app-shell .tr small,.app-shell .event-row small,.app-shell .help-text,.app-shell .muted{color:var(--model-muted)}.app-shell .metric strong,.app-shell .kpi strong{color:var(--model-text);font-size:1.75rem;line-height:1}.app-shell .metric.success,.app-shell .metric.ready{border-top:3px solid var(--model-emerald)}.app-shell .metric.warning,.app-shell .metric.partial{border-top:3px solid var(--model-amber)}.app-shell .metric.danger{border-top:3px solid var(--model-red)}.app-shell .metric.review{border-top:3px solid var(--model-purple)}.app-shell .metric.open{border-top:3px solid var(--model-cyan)}.app-shell .primary,.app-shell .secondary,.app-shell .ghost,.app-shell .danger-action{border:1px solid var(--model-border);color:#d1d5db;min-height:38px;box-shadow:none;background:#ffffff0a;border-radius:10px;padding:0 14px;transition:background-color .16s,border-color .16s,color .16s,transform .16s}.app-shell .primary{border-color:var(--model-indigo);background:var(--model-indigo);color:#fff}.app-shell .danger-action{color:#f87171;background:#ef44441a;border-color:#ef444440}.app-shell .primary:hover:not(:disabled),.app-shell .secondary:hover:not(:disabled),.app-shell .ghost:hover:not(:disabled),.app-shell .danger-action:hover:not(:disabled){color:var(--model-text);background:#ffffff14;border-color:#ffffff1f;transform:translateY(-1px)}.app-shell .primary:hover:not(:disabled){color:#fff;background:#7c3aed;border-color:#7c3aed}.app-shell .danger-action:hover:not(:disabled){color:#fecaca;background:#ef444429;border-color:#ef444457}.app-shell .layout-tab-current .panel,.app-shell .layout-tab-current input,.app-shell .layout-tab-current textarea,.app-shell .layout-tab-current .upload-box{border-color:var(--model-border);background:var(--model-card);color:var(--model-text)}.app-shell .layout-tab-current label,.app-shell .layout-tab-current .source-line,.app-shell .layout-tab-current .section-status{color:var(--model-muted)}.app-shell .metric,.app-shell .kpi,.app-shell .table-card,.app-shell .panel,.app-shell .summary-card,.app-shell .chart-card,.app-shell .preview-toolbar,.app-shell .empty-state,.app-shell .reference-card,.app-shell .model-chart-card,.app-shell .model-table-card,.app-shell .prep-progress-card,.app-shell .selected-context,.app-shell .filters,.app-shell .prep-filter-strip{border:1px solid var(--model-border);background:var(--model-card);color:var(--model-text);box-shadow:none;border-radius:12px}.app-shell .table-card,.app-shell .reference-card,.app-shell .model-table-card{overflow:hidden}.app-shell .table-head,.app-shell .panel header,.app-shell .modal header{border-bottom-color:var(--model-border-soft)}.app-shell .metric:hover,.app-shell .kpi:hover,.app-shell .prepare-card:hover,.app-shell .reference-card:hover,.app-shell .model-chart-card:hover{background:var(--model-card-hover);border-color:#ffffff1f}.prepare-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.prepare-card-grid .prepare-card{border:1px solid var(--model-border);background:var(--model-card);color:#e5e7eb;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 12px;min-height:136px;padding:16px;display:grid}.prepare-card-grid .prepare-card.selected{background:#6366f129;border-color:#6366f1a3;outline:0}.prepare-card-main{gap:4px;min-width:0;display:grid}.prepare-card-main strong{color:#f3f4f6;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.prepare-card-main small,.prepare-card-meta small{color:var(--model-muted);font-size:12px}.prepare-card-meta{color:#d1d5db;justify-items:end;gap:4px;font-size:12px;font-weight:750;display:grid}.prepare-card-grid .prepare-card .pill{grid-column:1/-1}.prepare-card-grid .prepare-card b{color:#d1d5db;background:#ffffff0a;border-radius:999px;grid-column:1/-1;width:fit-content;padding:6px 9px;font-size:12px}.app-shell .preview-section-nav{background:#fff;border-color:#cfd7df}.app-shell .preview-section-nav .ghost,.app-shell .preview-section-nav button{color:#111827;background:#fff;border-color:#cfd7df}.app-shell .preview-section-nav .ghost svg,.app-shell .preview-section-nav button svg{color:#111827}.app-shell .preview-section-nav .ghost:hover:not(:disabled),.app-shell .preview-section-nav button:hover:not(:disabled){color:#0f172a;background:#eef2f7}.prep-filter-strip{grid-template-columns:minmax(190px,1fr) 150px minmax(180px,240px) 190px minmax(180px,240px) auto auto;align-items:end;display:grid}.prep-filter-search{width:auto;min-width:180px}.section-save-row,.prep-flow-actions{align-items:stretch}.section-save-row .section-save,.prep-flow-actions button{width:168px;min-width:168px;min-height:40px}.app-shell .progress-ring{color:#fff}.app-shell .progress-ring strong{color:#fff;text-shadow:0 1px 8px #00000059;font-size:1.05rem}.workspace{grid-template-columns:300px 260px minmax(0,1fr);align-items:stretch}.workspace>.editor-layout{display:contents}.workspace>.summary-card,.workspace .editor-tabs,.workspace .section-stack{align-self:stretch;height:auto;min-height:640px}.workspace>.summary-card{position:static}.workspace>.summary-card,.workspace .editor-tabs,.workspace .section-stack,.workspace .section-stack>.panel,.workspace .section-stack>.layout-tab-current,.workspace .section-stack>.layout-tab-current>.panel{box-sizing:border-box}.workspace .editor-tabs{position:static;overflow:visible}.workspace .section-stack{overflow:visible}.workspace .section-stack>.panel,.workspace .section-stack>.layout-tab-current,.workspace .section-stack>.layout-tab-current>.panel{min-height:514px}.workspace .section-stack>.panel,.workspace .section-stack>.layout-tab-current>.panel{flex-direction:column;display:flex}.workspace .section-save-row,.workspace .section-stack>.panel>.prep-flow-actions{margin-top:auto;padding-top:18px}.workspace .section-save-row .prep-flow-actions{margin-top:0}.workspace .prep-progress-card{min-height:112px}.workspace .upload-row{grid-template-columns:176px 220px minmax(0,1fr);align-items:center;gap:10px;display:grid}.workspace .upload-row .secondary{width:220px;min-width:220px;max-width:220px}.workspace .file-upload-status{min-width:0;color:var(--model-text);gap:3px;display:grid}.workspace .file-upload-status strong,.workspace .file-upload-status small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-shell .summary-actions button,.app-shell .section-save-row .section-save,.app-shell .prep-flow-actions button,.app-shell .upload-row .secondary,.app-shell .upload-box{box-sizing:border-box;white-space:nowrap;justify-content:center;width:176px;min-width:176px;max-width:176px;height:42px;min-height:42px;padding:0 12px}.workspace button svg,.workspace .upload-box svg{flex:0 0 16px;width:16px;height:16px}.app-shell .workspace .upload-row .secondary{width:220px;min-width:220px;max-width:220px}.app-shell .section-save-row,.app-shell .prep-flow-actions,.app-shell .summary-actions{gap:10px}.preparation-history-table{grid-column:1/-1}.preparation-history-table .model-data-row{grid-template-columns:170px 120px minmax(220px,1fr) minmax(160px,.8fr)}.preparation-history-row{cursor:default}.page-status-grid{grid-template-columns:repeat(4,minmax(170px,1fr))}.audit-status-grid{grid-template-columns:repeat(5,minmax(140px,1fr))}.batch-select-list label{grid-template-columns:22px minmax(220px,1fr) minmax(90px,120px) minmax(280px,auto);align-items:center;display:grid}.batch-project{gap:4px;min-width:0;display:grid}.batch-project strong,.batch-project small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.batch-period{color:#d1d5db;justify-self:center;font-weight:800}.batch-tags{flex-wrap:wrap;justify-content:flex-end;justify-self:end;align-items:center;gap:8px;display:flex}.batch-tags b{color:#d1d5db;background:#ffffff0a;border-radius:999px;align-items:center;width:fit-content;min-height:26px;padding:4px 9px;font-size:.72rem;display:inline-flex}.history-report-table .tr{grid-template-columns:minmax(220px,1.5fr) 120px 170px 90px 180px 170px}.history-report-table .actions{justify-content:flex-end}.history-report-table .actions .ghost{min-height:34px;padding-inline:10px}.audit-dashboard-table .model-data-row{grid-template-columns:170px 120px minmax(180px,.9fr) minmax(260px,1.3fr) minmax(220px,1fr)}.settings-user-list>div{grid-template-columns:48px minmax(220px,1fr) 130px 100px minmax(280px,auto);align-items:center;display:grid}.settings-user-main{gap:4px;min-width:0;display:grid}.settings-user-main strong,.settings-user-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-user-actions{justify-self:end;align-items:center;gap:8px;display:flex}.settings-user-actions button{min-height:34px;padding-inline:10px}.sharepoint-settings-card{padding:0}.sharepoint-settings-form{grid-template-columns:minmax(260px,1.4fr) minmax(180px,.8fr) minmax(220px,1fr) auto;align-items:end;gap:14px;padding:18px;display:grid}.sharepoint-settings-form label,.page-user-form label{color:var(--model-muted);gap:7px;font-size:.8rem;font-weight:700;display:grid}.page-user-form{grid-template-columns:minmax(180px,1fr) minmax(220px,1.2fr) minmax(160px,.8fr) minmax(180px,.9fr) auto;align-items:end;padding:18px}.batch-modal-content{gap:14px;display:grid}.batch-modal-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.batch-modal-content .primary{width:100%}.batch-modal-item{color:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:18px 38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 8px;display:grid}.batch-modal-item.selected{background:#6366f11f}.batch-modal-list .batch-modal-item{background:0 0;border:0}.batch-modal-list .batch-modal-item:hover{background:#ffffff0a}.batch-modal-list .batch-modal-item.selected{background:#6366f11f}@media (width<=1180px){.status-grid,.kpi-row,.reference-stat-grid,.reference-stat-grid.five,.model-stats-grid,.model-chart-grid,.dashboard-grid,.secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-search{width:220px}.prep-filter-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=820px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar,.sidebar-collapsed .sidebar{width:280px;position:fixed;transform:translate(-280px)}.app-shell:not(.sidebar-collapsed) .sidebar{transform:translate(0)}.topbar,.header-actions,.topbar-left{flex-wrap:wrap;align-items:stretch;height:auto}.topbar{padding-block:12px}.topbar-search,.prep-filter-search,.status-grid,.kpi-row,.reference-stat-grid,.reference-stat-grid.five,.model-stats-grid,.model-chart-grid,.model-dashboard-filters,.dashboard-grid,.secondary-grid,.editor-layout{grid-template-columns:1fr;width:100%}.model-data-row,.model-ranking-list button{grid-template-columns:1fr}.model-ranking-list strong{text-align:left}.generation-action,.profile-card,.settings-user-list>div{flex-direction:column;align-items:stretch}.workspace{grid-template-columns:1fr}.workspace>.editor-layout{grid-template-columns:1fr;display:grid}.workspace>.summary-card,.workspace .editor-tabs,.workspace .section-stack{height:auto;min-height:0}.workspace .upload-row{grid-template-columns:1fr}.app-shell .workspace .upload-row .secondary,.app-shell .workspace .upload-box{width:100%;min-width:0;max-width:none}}
