:root{
  font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif;
  font-size:16px;line-height:1.45;font-kerning:normal;font-synthesis:none;
  color:#17211d;background:#eef2f0;
  --ink:#17211d;--muted:#64716c;--forest:#123d32;--forest-2:#0d3027;
  --accent:#23745f;--accent-soft:#e6f1ed;--line:#d8dfdc;--line-strong:#c3ceca;
  --surface:#fff;--surface-2:#f6f8f7;--danger:#a53a35;--warning:#9a6408;
  --shadow:0 1px 2px rgba(20,42,34,.05),0 8px 24px rgba(20,42,34,.05);
  --sidebar:244px;--header:72px
}
*{box-sizing:border-box}
html{min-height:100%;background:#eef2f0}
body{margin:0;min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);grid-template-rows:var(--header) 1fr;grid-template-areas:"header header" "nav main";background:linear-gradient(135deg,#f4f7f5 0,#edf2ef 100%);color:var(--ink);font-weight:400;letter-spacing:-.004em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:inherit;font-weight:700;letter-spacing:-.025em}
button,input,select,textarea{font:inherit}
button{border:0;border-radius:7px;padding:10px 15px;background:var(--forest);color:#fff;font-size:.84rem;font-weight:650;letter-spacing:.01em;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
button:hover{background:#195344;box-shadow:0 3px 10px rgba(18,61,50,.16)}
button:active{transform:translateY(1px)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(35,116,95,.22);outline-offset:1px}
button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.secondary{background:#fff;color:#31443d;border:1px solid var(--line-strong)}
.secondary:hover{background:#f3f6f4;border-color:#9eafa8}
.ops-header{grid-area:header;position:sticky;top:0;z-index:30;height:var(--header);background:var(--forest-2);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 3px 14px rgba(6,28,22,.18)}
.identity,.header-actions{display:flex;align-items:center}
.identity{gap:12px;min-width:0}
.brand-mark{width:100px;height:42px;display:grid;place-items:center;border-radius:10px;background:#fff;padding:4px 7px;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.identity img{display:block;width:100%;height:100%;object-fit:contain}
.identity small{display:block;color:#9fc3b7;font-size:.65rem;font-weight:700;letter-spacing:.13em}
.identity h1{font-size:1.05rem;line-height:1.2;margin:3px 0 0;font-weight:700;letter-spacing:-.015em}
.header-actions{gap:11px}
.plant-control{display:grid;grid-template-columns:auto minmax(155px,210px);align-items:center;gap:9px;color:#c9ded6;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}
.plant-control select{margin:0;width:auto;color:#17211d;background:#fff;border:0;border-radius:7px;padding:9px 32px 9px 11px;font-size:.82rem;font-weight:650;text-transform:none;letter-spacing:0}
.user-chip{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d9e8e2;font-size:.78rem;padding:8px 10px;border-left:1px solid rgba(255,255,255,.18)}
.header-button{background:transparent;border:1px solid rgba(255,255,255,.28);padding:8px 11px}
.header-button:hover{background:rgba(255,255,255,.09)}
.nav-toggle,.nav-backdrop{display:none}
.nav-toggle{place-items:center;width:38px;height:38px;padding:0;background:transparent;border:1px solid rgba(255,255,255,.28)}
.nav-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
nav{grid-area:nav;position:sticky;top:var(--header);height:calc(100vh - var(--header));overflow-y:auto;padding:18px 12px 28px;background:#f9fbfa;border-right:1px solid var(--line);box-shadow:1px 0 0 rgba(255,255,255,.8)}
nav::-webkit-scrollbar{width:5px}nav::-webkit-scrollbar-thumb{background:#cbd5d1;border-radius:8px}
nav .nav-label{display:block;margin:18px 10px 7px;color:#8a9691;font-size:.62rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}
nav .nav-label:first-child{margin-top:3px}
nav button{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:38px;margin:2px 0;padding:8px 10px;border-radius:6px;background:transparent;color:#46534e;text-align:left;font-size:.79rem;font-weight:560;box-shadow:none}
.ui-icon{display:inline-block;flex:0 0 auto;width:17px;height:17px;color:#7b8a84;transition:color .16s ease,transform .16s ease}
nav button:hover{background:#edf3f0;color:#173e33;box-shadow:none}
nav button.active{background:var(--accent-soft);color:#104536;font-weight:720}
nav button:hover .ui-icon{color:#327762}
nav button.active .ui-icon{color:var(--accent);stroke-width:2.15}
.nav-home{margin:0 6px 14px;padding:10px 9px 13px;border-bottom:1px solid var(--line)}
.nav-home small{display:block;margin-bottom:4px;color:#8a9691;font-size:.59rem;font-weight:800;letter-spacing:.14em}
.nav-home strong{color:var(--forest);font-size:.86rem}
.nav-workspace{margin:4px 0;border-radius:7px}
.nav-workspace>summary{display:flex;align-items:center;justify-content:space-between;min-height:35px;padding:7px 10px;color:#384842;font-size:.72rem;font-weight:780;letter-spacing:.025em;cursor:pointer;list-style:none}
.nav-workspace>summary::-webkit-details-marker{display:none}
.nav-workspace>summary:after{content:"›";color:#82908b;font-size:1.05rem;transform:rotate(0);transition:transform .16s ease}
.nav-workspace[open]>summary:after{transform:rotate(90deg)}
.nav-workspace[open]>summary{color:var(--forest);background:#f0f5f2}
.nav-workspace button{padding-left:15px}
.workflow-journey{margin:0 0 16px;padding:17px 18px}
.workflow-journey header{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:13px}
.workflow-journey h3{margin:2px 0 0;font-size:1rem}.workflow-journey header p{margin:0;color:var(--muted);font-size:.76rem}
.workflow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.workflow-step{display:flex;align-items:center;gap:9px;min-height:50px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:#fbfcfb;color:#34443e;text-align:left;box-shadow:none}
.workflow-step:hover{border-color:#9ebcb1;background:#f4f9f6;box-shadow:none}
.workflow-step.complete{border-color:#b7d9cb;background:#f0f8f4}.workflow-step.missing{border-color:#e6cfa1;background:#fffaf0}
.workflow-step b{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:#e7eeeb;color:#52615c;font-size:.68rem}
.workflow-step.complete b{background:#217257;color:#fff}.workflow-step.missing b{background:#b27713;color:#fff}
.workflow-step span{display:flex;flex-direction:column;gap:2px;font-size:.73rem;font-weight:700}.workflow-step small{color:#7c8984;font-size:.62rem;font-weight:560}
.workbook-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-flow:row;gap:14px;min-width:0}
.workbook-shell>.workbook-header,.workbook-shell>.workbook-tabs,.workbook-shell>.workbook-actions,.workbook-shell>.breakdown-view-tabs,.workbook-shell>.generation-report-summary{grid-column:1;min-width:0}
.workbook-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px 22px 19px;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#f2f7f4 100%);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.workbook-header:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#258268,#d28c25)}
.workbook-context{min-width:0}.workbook-header small{display:block;color:#23745f;font-size:.6rem;font-weight:800;letter-spacing:.15em}.workbook-header h3{margin:5px 0 3px;color:#18352c;font-size:1.24rem;line-height:1.2}.workbook-header p{margin:0;color:#66766f;font-size:.75rem}
.workbook-header label{flex:0 0 178px;color:#64756e;font-size:.64rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.workbook-header label span{display:block}.workbook-header input{display:block;margin-top:6px;padding:9px 11px;background:#fff;color:#23332d;font-size:.8rem;font-weight:680;text-transform:none;letter-spacing:0;box-shadow:0 1px 2px rgba(20,42,34,.05)}
.workbook-tabs{grid-area:auto;position:static;display:grid;grid-template-columns:repeat(7,minmax(112px,1fr));gap:4px;height:auto;overflow-x:auto;padding:5px;background:#e9efec;border:1px solid #d3ddd8;border-radius:10px;box-shadow:inset 0 1px 2px rgba(20,42,34,.04)}
.workbook-tabs button{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:7px;width:100%;min-height:52px;margin:0;padding:8px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:#53645d;text-align:left;font-size:.67rem;font-weight:650;white-space:normal;box-shadow:none}
.workbook-tabs button:hover{background:rgba(255,255,255,.65);color:#1b4b3c;box-shadow:none}.workbook-tabs button.active{background:#fff;color:#123f32;border-color:#bccdc6;box-shadow:0 2px 8px rgba(20,42,34,.09)}
.workbook-tabs button.active:after{content:"";position:absolute;left:9px;right:9px;bottom:3px;height:2px;border-radius:2px;background:var(--accent)}
.workbook-tab-number{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#dce6e2;color:#60716a;font-size:.58rem;font-weight:800;letter-spacing:.04em}.workbook-tabs button.active .workbook-tab-number{background:#23745f;color:#fff}.workbook-tab-label{line-height:1.18}
.workbook-actions{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:15px 17px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 10px rgba(20,42,34,.04)}
.report-heading-block{min-width:0}.report-kicker{display:block;margin-bottom:3px;color:#2b7c66;font-size:.58rem;font-weight:800;letter-spacing:.13em}.workbook-actions strong,.workbook-actions span{display:block}.workbook-actions strong{color:#1a332b;font-size:1rem;line-height:1.25}.workbook-actions span{margin-top:4px;color:var(--muted);font-size:.7rem}.workbook-actions>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.workbook-actions button{padding:8px 11px;font-size:.69rem}
.worksheet-shell{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}
.worksheet-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:13px 15px 0;background:#f7faf8;border-bottom:1px solid var(--line)}
.worksheet-heading small,.worksheet-heading strong,.worksheet-heading span{display:block}.worksheet-heading small{color:#7b8983;font-size:.58rem;font-weight:780;letter-spacing:.13em}.worksheet-heading strong{margin:3px 0 2px;color:#183e33;font-size:.93rem}.worksheet-heading span{padding-bottom:11px;color:var(--muted);font-size:.67rem}
.worksheet-tabs{position:static;display:flex;align-items:end;gap:3px;width:auto;height:auto;padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}
.worksheet-tabs button{display:block;width:auto;min-width:108px;min-height:37px;margin:0;padding:9px 17px;border:1px solid #cbd8d2;border-bottom:0;border-radius:6px 6px 0 0;background:#e8efec;color:#45564f;text-align:center;font-size:.73rem;font-weight:700;box-shadow:none}
.worksheet-tabs button:hover{background:#f2f7f5;color:#173f33;box-shadow:none}.worksheet-tabs button.active{position:relative;margin-bottom:-1px;padding-bottom:10px;background:#fff;color:#123f32;border-color:#a8beb5}
.worksheet-tabs button.active:after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;background:var(--accent)}
.report-granularity{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px;background:#fff;border-bottom:1px solid var(--line)}
.report-granularity small,.report-granularity span{display:block}.report-granularity small{color:#65746e;font-size:.58rem;font-weight:780;letter-spacing:.12em}.report-granularity span{margin-top:2px;color:#89948f;font-size:.64rem}
.report-granularity>div:last-child{display:flex;gap:5px}.report-granularity button{display:flex;align-items:center;gap:8px;padding:7px 10px;background:#fff;color:#40524b;border:1px solid var(--line);font-size:.68rem;box-shadow:none}
.report-granularity button:hover{background:#f4f8f6;border-color:#aac0b7;box-shadow:none}.report-granularity button.active{background:#e7f2ed;color:#154b3b;border-color:#94b8aa}
.report-granularity button b{display:grid;place-items:center;min-width:20px;height:18px;padding:0 5px;border-radius:9px;background:#eef2f0;color:#66756f;font-size:.58rem}.report-granularity button.active b{background:#23745f;color:#fff}
.workbook-grid{padding:0;border:0;border-radius:0;box-shadow:none;overflow:hidden}.workbook-grid table{min-width:1420px}.workbook-grid-unit1 table,.workbook-grid-unit2 table,.workbook-grid-unit3 table{min-width:3300px}.workbook-grid-common table{min-width:1850px}.workbook-grid thead tr:first-child th{background:#dce9e3;color:#173e33;text-align:center;border-bottom:1px solid #aec5bb}
.workbook-grid th,.workbook-grid td{padding:7px 8px;font-size:.68rem;border-right:1px solid #e2e9e6}.workbook-grid tbody th{position:sticky;left:0;background:#f5f8f6;z-index:2}
.workbook-grid .calculated-cell{background:#edf5fa;color:#225273}.workbook-grid .empty-cell{color:#a8b2ae}
.workbook-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.workbook-summary article{padding:13px 15px;background:#fff;border:1px solid var(--line);border-radius:7px}
.workbook-summary small,.workbook-summary span{display:block;color:var(--muted);font-size:.66rem}.workbook-summary strong{display:block;margin:4px 0;font-size:1.12rem}
.generation-report-actions{border-bottom:1px solid var(--line)}
.breakdown-view-tabs{grid-area:auto;grid-column:1;position:static;display:flex;gap:4px;height:auto;padding:8px 12px;background:#eef3f1;border:1px solid var(--line);border-top:0;box-shadow:none;overflow-x:auto}
.breakdown-view-tabs button{display:flex;align-items:center;gap:8px;width:auto;min-height:34px;margin:0;padding:8px 13px;border:1px solid transparent;border-radius:6px;background:transparent;color:#53645d;font-size:.72rem;font-weight:720}
.breakdown-view-tabs button:hover{background:#fff;border-color:#c9d7d1;box-shadow:none}.breakdown-view-tabs button.active{background:#fff;color:#154b3b;border-color:#9db9ae}
.breakdown-view-tabs b{display:grid;place-items:center;min-width:20px;height:18px;padding:0 5px;border-radius:10px;background:#dce7e2;color:#53665e;font-size:.59rem}.breakdown-view-tabs .active b{background:#23745f;color:#fff}
.generation-report-summary{display:grid;gap:12px}.generation-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px}
.derived-report-shell{gap:14px}.derived-report-actions{border-bottom:1px solid var(--line)}
.derived-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.derived-kpis article{position:relative;min-height:108px;padding:16px 17px;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 3px 14px rgba(29,58,47,.045)}.derived-kpis article:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:#4f8d78}.derived-kpis small,.derived-kpis span{display:block}.derived-kpis small{color:#697b73;font-size:.61rem;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.derived-kpis strong{display:block;margin:10px 0 6px;color:#143f33;font-size:1.43rem;line-height:1;letter-spacing:-.035em}.derived-kpis strong em{font-size:.65rem;font-style:normal;font-weight:700;color:#718078;letter-spacing:0}.derived-kpis span{color:#7e8d87;font-size:.65rem;line-height:1.35}.derived-kpis .attention-kpi{background:#fff9ed;border-color:#e9d4a7}.derived-kpis .attention-kpi:before{background:#c78a28}.derived-kpis .attention-kpi strong{color:#8a5b08}
.derived-report-table{padding:0;overflow:hidden;border-radius:11px}.derived-report-table>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;border-bottom:1px solid var(--line);background:#fbfcfb}.derived-report-table header small,.rainfall-card header small{display:block;color:#2a7a64;font-size:.58rem;font-weight:800;letter-spacing:.13em}.derived-report-table header h4,.rainfall-card header h4{margin:4px 0 0;color:#183c31;font-size:.94rem}.derived-report-table header span{color:#73837c;font-size:.66rem}.derived-report-table table{min-width:100%}.derived-report-table th,.derived-report-table td{padding:9px 10px;font-size:.68rem}.derived-report-table tbody th{background:#f6f8f7;white-space:nowrap}.derived-report-table .calculated-cell{background:#edf5fa;color:#1e5671}.derived-report-table tfoot th,.derived-report-table tfoot td{background:#e4eee9;color:#173f33;font-weight:800}.hydrology-report-table{min-width:1550px!important}.meter-report-table{min-width:1350px!important}.generation-format-table{min-width:980px!important}.cell-note{display:block;margin-top:2px;color:#89958f;font-size:.58rem}
.derived-report-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:10px}.rainfall-card{padding:15px;background:#fff;border:1px solid var(--line);border-radius:7px}.rainfall-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.rainfall-card dl div{padding:11px 12px;background:#f4f7f5;border-radius:5px}.rainfall-card dt{color:#75847e;font-size:.62rem}.rainfall-card dd{margin:5px 0 0;color:#173f33;font-size:.9rem;font-weight:800}.rainfall-card button{width:100%}.selected-report-day th,.selected-report-day td{background:#e6f2ed!important;color:#174d3d;font-weight:760}.dispatch-sheet header{background:#153f33;color:#fff}.dispatch-sheet header small,.dispatch-sheet header h4,.dispatch-sheet header span{color:#fff}.availability-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.availability-periods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.availability-period{padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.availability-period>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 2px 12px;padding:0 0 11px;border-bottom:1px solid #e5ebe8}.availability-period>header small{display:block;color:#2a7a64;font-size:.57rem;font-weight:800;letter-spacing:.14em}.availability-period>header h4{margin:3px 0 0;color:#183b30;font-size:.92rem}.availability-period>header span{padding:4px 7px;border-radius:999px;background:#edf4f1;color:#63746d;font-size:.61rem;font-weight:680}.availability-period .derived-kpis{gap:8px}.availability-period .derived-kpis article{min-height:103px;padding:14px 15px;background:#f8faf9;border-color:#e0e7e4;box-shadow:none}.availability-period:nth-child(2) .derived-kpis article{background:#f7f9fb}.availability-period:nth-child(2) .derived-kpis article:before{background:#5b7e93}.availability-period .derived-kpis strong{font-size:1.32rem}
.generation-kpis article{position:relative;min-height:112px;padding:15px 16px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.generation-kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#4b8b74}
.generation-kpis small,.generation-kpis span{display:block}.generation-kpis small{color:#65746e;font-size:.64rem;font-weight:760;letter-spacing:.045em;text-transform:uppercase}
.generation-kpis strong{display:block;margin:10px 0 6px;color:#163f34;font-size:1.45rem;line-height:1;font-weight:720;letter-spacing:-.035em}.generation-kpis strong em{font-size:.68rem;font-style:normal;letter-spacing:0}
.generation-kpis span{color:#7b8883;font-size:.64rem;line-height:1.35}
.breakdown-matrix,.generation-detail{padding:0;overflow:hidden}.breakdown-matrix>header,.generation-detail>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid var(--line);background:#fbfcfc}
.breakdown-matrix header small,.generation-detail header small{color:#23745f;font-size:.59rem;font-weight:780;letter-spacing:.12em}.breakdown-matrix h4,.generation-detail h4{margin:3px 0 0;font-size:.94rem}
.breakdown-matrix header>span,.generation-detail header>span{color:#77847f;font-size:.68rem}.breakdown-matrix .table-scroll,.generation-detail .table-scroll{border:0;border-radius:0}
.breakdown-code{display:inline-grid;place-items:center;min-width:34px;height:25px;padding:0 7px;border-radius:5px;background:#e7eeeb;color:#375148;font-size:.68rem;font-weight:800;letter-spacing:.04em}
.code-fp,.code-sp{background:#fbe5e3;color:#8f342f}.code-ir{background:#fff0c9;color:#805c08}.code-fg,.code-sg{background:#e5edf8;color:#315d91}.code-fm{background:#eee9f7;color:#654b8d}
.formula-note{display:flex;gap:16px;padding:13px 16px;border:1px solid #cfe0d9;border-left:4px solid #23745f;border-radius:7px;background:#f2f8f5;color:#53655e;font-size:.7rem;line-height:1.45}.formula-note strong{flex:0 0 165px;color:#24493d}
.generation-detail table{min-width:920px}.generation-detail tbody th{background:#f5f8f6}.generation-detail .calculated-cell{background:#edf5fa;color:#225273}
main{grid-area:main;width:100%;max-width:1680px;margin:0 auto;padding:31px clamp(22px,3vw,52px) 52px;min-width:0}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 22px;padding:0 0 19px;border-bottom:1px solid var(--line)}
.page-head .eyebrow{margin:0 0 8px;color:#7a8782;font-size:.64rem;font-weight:760;letter-spacing:.13em}
.page-head .eyebrow span{color:var(--accent)}
.page-head h2{margin:0;color:#15231e;font-size:clamp(1.7rem,2.4vw,2.25rem);line-height:1.12;font-weight:700;letter-spacing:-.035em}
.page-head p:not(.eyebrow){margin:7px 0 0;color:var(--muted);font-size:.9rem}
#newRecord{padding:11px 17px;box-shadow:0 3px 10px rgba(18,61,50,.12)}
#newRecord span{font-size:1rem;margin-right:4px}
.task-bar{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-7px 0 18px;padding:12px 13px;border:1px solid #cbdad4;border-radius:10px;background:rgba(255,255,255,.94);box-shadow:0 4px 16px rgba(20,42,34,.055)}
.task-bar[hidden]{display:none}
.task-context{display:flex;align-items:center;gap:11px;min-width:0}
.task-context-mark{flex:0 0 4px;width:4px;height:38px;border-radius:3px;background:linear-gradient(180deg,var(--accent),#d28c25)}
.task-context small,.task-context strong,.task-context span{display:block}
.task-context small{color:#75837d;font-size:.56rem;font-weight:800;letter-spacing:.13em}
.task-context strong{margin:1px 0;color:#193b30;font-size:.83rem}
.task-context span{display:flex;align-items:center;gap:8px;color:#6f7d77;font-size:.68rem}
.task-context b{padding:2px 7px;border-radius:999px;background:#e9f2ee;color:#27624f;font-size:.62rem;font-weight:750}
.task-bar-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.task-bar-actions>button,.quick-entry-menu>summary{min-height:34px;padding:7px 10px;font-size:.68rem;white-space:nowrap}
#nextTask{background:#216e5a}
.quick-entry-menu{position:relative}
.quick-entry-menu>summary{display:flex;align-items:center;gap:6px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:#31443d;font-weight:680;cursor:pointer;list-style:none}
.quick-entry-menu>summary::-webkit-details-marker{display:none}
.quick-entry-menu>summary:after{content:"⌄";color:#718079}
.quick-entry-menu[open]>summary{border-color:#8eafa3;background:#f3f8f5}
.quick-entry-menu>div{position:absolute;top:calc(100% + 7px);right:0;z-index:80;display:grid;gap:3px;width:220px;padding:7px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 14px 32px rgba(13,48,39,.16)}
.quick-entry-menu>div button{width:100%;padding:9px 10px;background:transparent;color:#354840;text-align:left;font-size:.72rem;box-shadow:none}
.quick-entry-menu>div button:hover{background:#edf4f1;color:#143f33}
#notice:not(:empty){margin:0 0 16px;padding:11px 14px;border:1px solid #ead8a8;border-left:4px solid #bf861a;border-radius:7px;background:#fff9e9;color:#6f5214;font-size:.84rem;box-shadow:0 2px 8px rgba(76,55,12,.05)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px;overflow:auto;box-shadow:var(--shadow)}
.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin:0 0 14px}
.metric{position:relative;min-height:96px;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:16px 17px;box-shadow:0 1px 2px rgba(20,42,34,.04)}
.metric small{display:block;margin-bottom:8px;color:#6a7772;font-size:.7rem;font-weight:680;letter-spacing:.02em}
.metric strong{display:block;color:#153e33;font-size:1.55rem;line-height:1.15;font-weight:700;letter-spacing:-.035em}
.metric::after{content:"";position:absolute;left:16px;bottom:0;width:28px;height:2px;background:#bad2c8}
.action-card{cursor:pointer;text-align:left;color:inherit}
.action-card:hover{background:#fbfdfc;border-color:#9cb8ae;box-shadow:0 6px 18px rgba(19,61,50,.08);transform:translateY(-1px)}
.alert-card{background:#fffafa;border-color:#e6c4c1}
.alert-card::after{background:#ba4c46}
.automation-dashboard{display:grid;gap:2px;margin-bottom:17px}
.reliability-metrics{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
.automation-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:2px}
.automation-panel h3{margin:0 0 5px;font-size:1rem}.automation-panel p{margin:0;color:var(--muted);font-size:.82rem}
.pareto-panel{margin-bottom:14px;padding:18px 20px 15px;overflow:hidden}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:7px}.panel-heading small{color:#23745f;font-size:.6rem;font-weight:760;letter-spacing:.12em}.panel-heading h3{margin:3px 0 2px;font-size:1rem}.panel-heading p{margin:0;color:#74817c;font-size:.7rem}
.pareto-legend{display:flex;gap:14px;color:#66746e;font-size:.68rem}.pareto-legend span{display:flex;align-items:center;gap:5px}.pareto-legend i{width:12px;height:8px;border-radius:2px;background:#2f8069}.pareto-legend span:last-child i{height:2px;border-radius:0;background:#c37a1d}
.pareto-chart-scroll{overflow-x:auto}.pareto-chart{display:block;width:100%;min-width:610px;height:auto}.pareto-axis{stroke:#bdc9c4;stroke-width:1}.pareto-axis-label,.pareto-label,.pareto-count{fill:#68766f;font-family:inherit;font-size:10px}.pareto-count{fill:#26483d;font-weight:700}.pareto-label{font-size:9px}.pareto-bar{fill:#3f8a73}.pareto-line{fill:none;stroke:#c37a1d;stroke-width:2.4}.pareto-dot{fill:#fff;stroke:#c37a1d;stroke-width:2}
.pareto-data{display:none}.pareto-empty{display:grid;place-items:center;min-height:180px;padding:20px;color:#73817b;text-align:center;border:1px dashed #ced9d4;border-radius:8px;background:#fafcfb}.pareto-empty .ui-icon{width:30px;height:30px;margin-bottom:7px;color:#8ea49b}.pareto-empty strong{color:#42554d;font-size:.84rem}.pareto-empty span{margin-top:4px;font-size:.72rem}
.list-toolbar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:-2px 0 15px;padding-bottom:14px;border-bottom:1px solid #e8edeb}
.list-toolbar label{min-width:200px}.list-toolbar span{margin-left:auto;color:#78847f;font-size:.78rem}
.table-scroll{overflow:auto;max-width:100%;border:1px solid #e0e6e3;border-radius:8px}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:.79rem}
th,td{text-align:left;padding:11px 12px;border-bottom:1px solid #e8edeb;vertical-align:top}
th{position:sticky;top:0;z-index:2;background:#f3f6f4;color:#53615b;font-size:.66rem;font-weight:750;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fafcfb}
td{color:#34433d}td button{padding:5px 8px;margin:1px 2px 1px 0;border-radius:5px;font-size:.69rem;font-weight:620;box-shadow:none}
.row-actions-cell{width:1%;min-width:112px;white-space:nowrap}
.row-action-menu{position:relative;min-width:98px}
.row-action-menu>summary{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:7px 9px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:#34483f;font-size:.72rem;font-weight:690;cursor:pointer;list-style:none;transition:border-color .15s,background .15s}
.row-action-menu>summary::-webkit-details-marker{display:none}.row-action-menu>summary:hover{border-color:#89aa9d;background:#f5f9f7}.row-action-menu[open]>summary{border-color:#6c9d8a;background:#edf5f2;color:#154b3c}
.row-action-menu>summary span{color:#71827b;font-size:.68rem;letter-spacing:.08em}
.row-action-list{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:8px;margin-top:8px;padding:9px;border:1px solid var(--line);border-radius:7px;background:#f8faf9;box-shadow:0 5px 18px rgba(20,42,34,.08)}
.row-action-group{display:flex;align-content:flex-start;flex-wrap:wrap;gap:5px}.row-action-group small{flex:0 0 100%;margin-bottom:2px;color:#84918c;font-size:.59rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.row-action-list button{display:inline-flex;align-items:center;gap:6px;margin:0;padding:7px 9px;border:1px solid #d7e1dd;background:#fff;color:#354941;font-size:.7rem;font-weight:640}
.row-action-list button:hover{border-color:#8aab9f;background:#edf5f2;color:#174b3c;box-shadow:none}
.row-action-list button .ui-icon{width:14px;height:14px;color:#648278}
.row-action-list .row-action-primary{border-color:#a8c6bb;color:#175140}.row-action-list .row-action-danger{border-color:#e0c3c0;color:#913a35}.row-action-list .row-action-danger:hover{background:#fff4f3;border-color:#ce918c;color:#7c2e2a}
.row-action-menu[open]{min-width:320px}.row-action-menu[open] .row-action-list{white-space:normal}
.status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid #d0ddd7;border-radius:999px;background:#eef4f1;color:#315b4d;font-size:.69rem;font-weight:670;white-space:nowrap}
.status::before{content:"";width:5px;height:5px;border-radius:50%;background:#4b8b74}
.missing{color:var(--danger)}
label{color:#43504b;font-size:.74rem;font-weight:680}
input,select,textarea{display:block;width:100%;margin-top:6px;padding:10px 11px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:#1e2b26;font-size:.84rem;transition:border-color .15s,box-shadow .15s}
input:hover,select:hover,textarea:hover{border-color:#a9b8b2}
input:focus,select:focus,textarea:focus{border-color:#4d8c77;box-shadow:0 0 0 3px rgba(35,116,95,.1);outline:0}
textarea{min-height:88px;resize:vertical;line-height:1.45}
dialog{width:min(1050px,94vw);max-height:92vh;border:0;border-radius:12px;padding:0;background:#fff;box-shadow:0 28px 80px rgba(5,24,18,.32)}
dialog::backdrop{background:rgba(5,25,19,.65);backdrop-filter:blur(3px)}
dialog form header,dialog form footer{position:sticky;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:17px 22px;background:#fff;border-bottom:1px solid var(--line)}
dialog form header{top:0}dialog form footer{bottom:0;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);border-bottom:0}
dialog form header small{color:#72817b;font-size:.62rem;font-weight:750;letter-spacing:.12em}
dialog form header h2{margin:4px 0 0;font-size:1.25rem;letter-spacing:-.02em}
dialog form header button[data-close]{width:34px;height:34px;padding:0;border-radius:50%;background:#f1f4f2;color:#405049;font-size:1.1rem}
.form-grid{padding:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;background:#fafcfb}
.wide{grid-column:1/-1}
.form-assist{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-4px 0 2px;padding:12px 14px;border:1px solid #d9e5e0;border-radius:7px;background:#f1f7f4}
.form-assist strong{display:block;color:#24463b;font-size:.8rem}.form-assist span{display:block;margin-top:3px;color:#6c7b75;font-size:.72rem;font-weight:500}
.form-assist button{flex:0 0 auto;padding:7px 10px;font-size:.72rem}
.form-more{margin-top:3px;border:1px solid #dce4e1;border-radius:8px;background:#fff;overflow:hidden}
.form-more>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;color:#385048;font-size:.78rem;font-weight:700;cursor:pointer;list-style:none}
.form-more>summary::-webkit-details-marker{display:none}.form-more>summary::before{content:"＋";margin-right:8px;color:#23745f}.form-more[open]>summary::before{content:"−"}
.form-more>summary span{margin-left:auto;color:#7b8883;font-size:.68rem;font-weight:550}
.form-more[open]>summary{border-bottom:1px solid #e3e9e6;background:#f8faf9}
.form-grid-nested{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;padding:18px}
.report-toolbar{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap;margin:0 0 14px;padding:13px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}
.report-toolbar label{min-width:190px}
.daily-report{padding:28px}.report-title{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:15px;border-bottom:2px solid var(--forest)}
.daily-report-metrics .metric span{display:block;margin-top:5px;color:var(--muted);font-size:.66rem}.report-attention,.report-ready{display:flex;align-items:center;gap:18px;margin:17px 0 5px;padding:12px 14px;border:1px solid #ead8a8;border-left:4px solid #bf861a;border-radius:7px;background:#fff9e9;color:#69531c;font-size:.76rem}.report-attention strong{flex:0 0 auto}.report-attention span{color:#856a29}.report-ready{border-color:#bcd8cd;border-left-color:#23745f;background:#eff8f4;color:#28594a}
.report-empty-state{display:grid;justify-items:center;max-width:840px;margin:28px auto;padding:58px 32px;text-align:center;background:linear-gradient(180deg,#fff,#f8fbfa)}.report-empty-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:16px;border-radius:50%;background:#e5f0eb;color:#23745f}.report-empty-icon .ui-icon{width:25px;height:25px}.report-empty-state small{color:#718078;font-size:.62rem;font-weight:780;letter-spacing:.13em}.report-empty-state h3{margin:8px 0 6px;font-size:1.25rem}.report-empty-state p{max-width:610px;margin:0 0 19px;color:#68766f;font-size:.82rem;line-height:1.55}
.demo-data-banner{display:flex;align-items:center;gap:.85rem;padding:.8rem 1rem;margin:.8rem 0;background:#fff7d6;border:1px solid #e9b949;border-left:5px solid #b7791f;border-radius:8px;color:#6b4600}.demo-data-banner strong{font-size:.68rem;letter-spacing:.12em;white-space:nowrap}.demo-data-banner span{font-size:.78rem}
.daily-pack-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;background:#eef5f1;border:1px solid #c7d9d1;border-left:4px solid #2f7964;border-radius:7px}.daily-pack-bar small,.daily-pack-bar strong,.daily-pack-bar span{display:block}.daily-pack-bar small{color:#64766f;font-size:.58rem;font-weight:800;letter-spacing:.11em}.daily-pack-bar strong{margin:2px 0;color:#153f33;font-size:.91rem}.daily-pack-bar span{color:#65756f;font-size:.67rem}.daily-pack-bar button{font-size:.7rem}
.grid-entry-tools{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:9px 12px;background:#f5f8f6;border-bottom:1px solid var(--line)}.grid-entry-tools>div{display:flex;align-items:end;flex-wrap:wrap;gap:6px}.grid-entry-tools label{color:#607069;font-size:.62rem}.grid-entry-tools input{display:block;min-width:190px;margin-top:3px;padding:7px 9px}.grid-entry-tools button{padding:7px 10px;font-size:.67rem}.grid-entry-tools>span{padding-bottom:8px;color:#587268;font-size:.67rem;font-weight:700;white-space:nowrap}
.grid-readonly-note{padding:9px 13px;background:#f4f6f5;border-bottom:1px solid var(--line);color:#68766f;font-size:.69rem}.sheet-input{width:100%;min-width:92px;padding:5px 6px;border:1px solid transparent;border-radius:3px;background:#fffdf4;color:#1e2f29;font:inherit;text-align:right}.sheet-input[type="text"],.sheet-input[type="time"]{text-align:left}.sheet-input:hover{border-color:#bdcdc6}.sheet-input:focus{position:relative;z-index:2;border-color:#2d7a63;outline:2px solid rgba(45,122,99,.13);background:#fff}.workbook-grid td:has(.sheet-input){padding:2px 3px;background:#fffdf4}.workbook-grid .grid-row-tools{position:sticky;right:0;min-width:108px;background:#f5f8f6;box-shadow:-4px 0 8px rgba(30,55,46,.05)}.compact{padding:5px 7px!important;font-size:.62rem!important;white-space:nowrap}
@media(max-width:760px){.daily-pack-bar,.grid-entry-tools,.workbook-header,.workbook-actions,.worksheet-heading,.derived-report-table>header{align-items:stretch;flex-direction:column}.workbook-header label{flex-basis:auto;width:100%}.availability-periods{grid-template-columns:1fr}.grid-entry-tools>span{padding:0}.grid-entry-tools input{min-width:150px}.workbook-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.derived-kpis,.availability-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.derived-report-split{grid-template-columns:1fr}.derived-report-actions>div:last-child{display:grid;grid-template-columns:1fr 1fr}.derived-report-actions button{width:100%}}
.report-title h2{margin:4px 0;font-size:1.35rem}.report-section{margin-top:23px}.report-section h3{margin-bottom:10px;padding-bottom:7px;border-bottom:1px solid var(--line);font-size:.93rem}
.report-signatures{display:flex;justify-content:space-between;margin-top:25px;padding-top:13px;border-top:2px solid var(--forest);font-size:.78rem}
.startup-state,.error-state,.module-empty{padding:44px 24px;text-align:center}.startup-state h3,.error-state h3,.module-empty h3{margin:0;font-size:1.05rem}
.startup-state p,.error-state p,.module-empty p{max-width:42rem;margin:7px auto 15px;color:#65746e;font-size:.84rem}
.error-state{border-left:4px solid var(--danger);background:#fffafa}.module-empty{margin:2px 0;background:#fafcfb;border:1px dashed #b6c5bf;box-shadow:none}
.empty{padding:25px;color:#718079;text-align:center}
.role-card{margin:9px 0;padding:13px;border:1px solid var(--line);border-radius:8px}.role-card summary{cursor:pointer}.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:14px 0}
.permission-grid input,fieldset input{display:inline;width:auto;margin-right:5px}fieldset{padding:13px;border:1px solid var(--line);border-radius:7px}
.attachment-list{margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}.attachment-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border-bottom:1px solid var(--line)}.attachment-list small{display:block;color:var(--muted)}
.config-row{display:grid;grid-template-columns:minmax(180px,1fr) repeat(2,minmax(130px,220px)) auto;gap:10px;align-items:end;padding:12px 0;border-bottom:1px solid var(--line)}
.unit-specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;margin:13px 0 24px}.unit-specs article{padding:11px 12px;border:1px solid var(--line);border-radius:7px;background:#f6f9f7}.unit-specs strong,.unit-specs span{display:block}.unit-specs strong{font-size:.78rem;color:#24463b}.unit-specs span{margin-top:4px;color:#6c7974;font-size:.72rem}
.location-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.location-list span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:#eef4f1;font-size:.75rem}
@media(max-width:980px){
  :root{--sidebar:210px}
  .user-chip{display:none}
  main{padding:27px 24px 45px}
}
@media(max-width:760px){
  body{display:block;padding-top:70px}
  body.nav-open{overflow:hidden}
  .ops-header{position:fixed;inset:0 0 auto;z-index:60;height:70px;min-height:70px;padding:10px 12px;gap:9px}
  .nav-toggle{display:grid;flex:0 0 38px}
  .identity{gap:8px}.identity h1{font-size:.93rem}.identity small{font-size:.54rem}.brand-mark{width:84px;height:36px;border-radius:8px}
  .header-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;gap:7px}.plant-control{display:block}.plant-control>span{display:none}.plant-control select{min-width:0;max-width:170px}
  .header-button{font-size:0;width:36px;height:36px;padding:0}.header-button::after{content:"↪";font-size:1rem}
  .nav-backdrop{position:fixed;inset:70px 0 0;z-index:50;width:100%;height:auto;padding:0;border:0;border-radius:0;background:rgba(6,28,22,.36);opacity:0;pointer-events:none;transition:opacity .2s ease}
  body.nav-open .nav-backdrop{display:block;opacity:1;pointer-events:auto}
  nav{position:fixed;inset:70px auto 0 0;top:70px;z-index:55;width:min(86vw,330px);height:calc(100vh - 70px);display:block;overflow-x:hidden;overflow-y:auto;padding:16px 12px 28px;background:#f9fbfa;border-right:1px solid var(--line);border-bottom:0;box-shadow:12px 0 28px rgba(10,36,28,.18);transform:translateX(-105%);transition:transform .22s ease}
  body.nav-open nav{transform:translateX(0)}
  nav .nav-label{display:block}
  nav button{display:flex;flex:initial;width:100%;min-height:38px;margin:2px 0;padding:8px 10px;border:0;border-radius:6px;white-space:normal;font-size:.78rem}
  nav button .ui-icon{width:17px;height:17px}
  nav button.active{border:0}
  .nav-home{display:block}
  #tabs .nav-workspace{display:block}
  .workflow-steps{grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto}.workflow-journey header{align-items:flex-start;flex-direction:column}
  main{padding:23px 13px 38px}.page-head{align-items:flex-start;margin-bottom:16px;padding-bottom:15px}.page-head h2{font-size:1.55rem}.page-head p:not(.eyebrow){font-size:.82rem}
  #newRecord{flex:0 0 auto;padding:9px 11px;font-size:.76rem}#newRecord span{display:none}
  .task-bar{align-items:stretch;flex-direction:column;gap:10px;margin:-3px 0 14px;padding:11px}
  .task-context{width:100%}.task-context span{flex-wrap:wrap}.task-context b{margin-left:auto}
  .task-bar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .task-bar-actions>button,.quick-entry-menu>summary{justify-content:center;width:100%}
  #nextTask{grid-column:1/-1;grid-row:1}
  .quick-entry-menu{position:static;grid-column:1/-1}.quick-entry-menu>div{position:static;width:100%;margin-top:5px;box-shadow:none}
  .metrics,.reliability-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric{min-height:88px;padding:13px}.metric strong{font-size:1.3rem}
  .panel{padding:14px;border-radius:8px}.automation-panel{align-items:stretch;flex-direction:column}.automation-panel button{width:100%}
  .pareto-panel{padding:15px 13px}.panel-heading{flex-direction:column;gap:8px}.pareto-chart{min-width:580px}.pareto-legend{align-self:flex-start}
  .form-grid,.form-grid-nested{grid-template-columns:1fr;padding:16px;gap:14px}.wide{grid-column:auto}.form-assist{align-items:flex-start;flex-direction:column}.form-assist button{width:100%}.form-more{grid-column:auto}
  .list-toolbar label{min-width:calc(50% - 5px);flex:1}.list-toolbar span{width:100%;margin-left:0}
  .row-action-menu[open]{min-width:98px}.row-action-list{width:180px;margin-left:-70px;grid-template-columns:1fr;padding:7px}.row-action-group{display:grid;grid-template-columns:1fr}.row-action-group small{grid-column:1}.row-action-list button{width:100%;justify-content:flex-start}
  .config-row{grid-template-columns:1fr}.daily-report{padding:16px}.report-title,.report-signatures{gap:12px;flex-direction:column}
  .generation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.formula-note{display:block}.formula-note strong{display:block;margin-bottom:5px}
}
@media(max-width:430px){
  .identity small{display:none}.identity h1{margin:9px 0 0;font-size:.88rem}.header-actions{gap:5px}.plant-control select{max-width:145px;font-size:.74rem}
  .metrics,.reliability-metrics{grid-template-columns:1fr 1fr}.metric small{font-size:.64rem}.metric strong{font-size:1.18rem}
  .page-head{gap:10px}.page-head h2{font-size:1.38rem}
  .generation-kpis{grid-template-columns:1fr}
  .workbook-summary{grid-template-columns:1fr}
}
@media print{
  body{display:block;background:#fff}.ops-header{position:static;background:#fff;color:#111;border-bottom:2px solid #111;box-shadow:none}
  nav,.nav-toggle,.nav-backdrop,.header-actions,#newRecord,#taskBar,#notice,.report-toolbar{display:none!important}main{max-width:none;padding:20px}.panel{border:0;padding:0;box-shadow:none}.report-section{break-inside:avoid}
}
.weekly-report{display:grid;gap:1.4rem}
.weekly-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.weekly-kpis article{display:grid;gap:.35rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:10px;background:#f7f9f8}
.weekly-kpis small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.weekly-kpis strong{font-size:1.65rem;color:var(--green)}.weekly-kpis span{font-size:.82rem;color:var(--muted)}
.weekly-split{display:grid;grid-template-columns:1.35fr 1fr;gap:1.5rem}
.weekly-status-summary{display:flex;gap:.65rem;flex-wrap:wrap;margin:.8rem 0 1rem}
.weekly-status-summary span{display:grid;min-width:108px;padding:.65rem .8rem;border:1px solid var(--line);border-radius:8px;background:#f7f9f8;color:var(--muted)}
.weekly-status-summary b{font-size:1.25rem;color:var(--ink)}.weekly-below-target{background:#fee2e2!important;color:#991b1b!important}
@media(max-width:1000px){.weekly-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-split{grid-template-columns:1fr}}
@media(max-width:640px){.weekly-kpis{grid-template-columns:1fr}}
