.report-root{background:#f6f6f4;color:#17181a;min-height:100%;font-size:15px}.report-hero{background:#0b0b0c;color:#fff;padding:30px 38px 26px;border-bottom:3px solid var(--brand)}.report-hero .topline{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.report-hero h1{font-size:1.5rem;font-weight:650;margin:0;letter-spacing:-.01em}.report-hero .sub{margin-top:7px;color:#c2c2b8;font-size:.93rem}.report-hero .brandmark{text-align:right;font-size:.78rem;color:#b0b0a6;line-height:1.5}.report-hero .brandmark .u{color:var(--brand);font-weight:800;letter-spacing:.08em}.report-wrap{max-width:1240px;margin:0 auto;padding:20px 26px 70px}.report-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.report-tabs button{border:1px solid #d8d8d2;background:#fff;padding:8px 18px;border-radius:999px;cursor:pointer;font-size:.9rem;font-weight:550;color:#333;transition:border-color .12s,background .12s}.report-tabs button:hover{border-color:#9a9a90}.report-tabs button.on{background:#0b0b0c;color:var(--brand);border-color:#0b0b0c}.kpi-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:14px;margin:16px 0 26px}.kpi{background:#fff;border:1px solid #e3e3dd;border-radius:12px;padding:16px 18px;text-align:center;box-shadow:0 1px 2px #0a0a0a0a}.kpi .lbl{font-size:.76rem;color:#71716a;font-weight:650;text-transform:uppercase;letter-spacing:.05em}.kpi .val{font-size:1.85rem;font-weight:720;margin:7px 0 4px;font-variant-numeric:tabular-nums}.kpi .cmp{font-size:.78rem;color:#71716a}.kpi.good{border-color:#bfdcc6;background:#f2faf3}.kpi.good .val{color:#15803d}.kpi.bad{border-color:#ecc8cc;background:#fdf3f4}.kpi.bad .val{color:#b91c1c}.report-wrap h2{font-size:1.1rem;color:#0b0b0c;margin:30px 0 12px;padding-bottom:7px;border-bottom:2px solid #0b0b0c;position:relative}.report-wrap h2:after{content:"";position:absolute;left:0;bottom:-2px;width:44px;height:2px;background:var(--brand)}.tblwrap{overflow-x:auto;border:1px solid #e3e3dd;border-radius:10px;background:#fff}.report-wrap table{width:100%;border-collapse:collapse;background:#fff;font-size:.88rem}.report-wrap th{background:#0b0b0c;color:#fff;padding:9px 12px;text-align:left;font-weight:600;white-space:nowrap}.report-wrap td{padding:8px 12px;border-bottom:1px solid #efefe9;white-space:nowrap;font-variant-numeric:tabular-nums}.report-wrap tr:last-child td{border-bottom:none}.report-wrap td.num,.report-wrap th.num{text-align:right}.report-wrap tr.subrow td{color:#4a5560;font-size:.82rem;background:#f7f8f6}.report-wrap tr.subrow td:first-child{padding-left:32px}.report-wrap tr.total td{font-weight:700;border-top:2px solid #0b0b0c;background:#f4f4ef}.otd-ok{color:#15803d;font-weight:650}.otd-warn{color:#b45309;font-weight:650}.otd-bad{color:#b91c1c;font-weight:650}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}@media(max-width:900px){.grid2{grid-template-columns:1fr}}.chartbox{background:#fff;border:1px solid #e3e3dd;border-radius:10px;padding:16px;height:340px}.ins{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:12px}.ic{border-radius:10px;padding:13px 15px;font-size:.87rem;line-height:1.5;border-left:4px solid;background:#fff;border-top:1px solid #e9e9e3;border-right:1px solid #e9e9e3;border-bottom:1px solid #e9e9e3}.ic b{display:block;margin-bottom:3px;font-size:.9rem}.ic.w{border-left-color:#15803d}.ic.w b{color:#15803d}.ic.i{border-left-color:#b91c1c}.ic.i b{color:#b91c1c}.ic.t{border-left-color:#1d4ed8}.ic.t b{color:#1d4ed8}.ic.o{border-left-color:#b45309}.ic.o b{color:#b45309}.ic.r{border-left-color:#b45309}.ic.r b{color:#b45309}.ic.f{border-left-color:#7c3aed}.ic.f b{color:#7c3aed}details.exc{margin-top:30px}details.exc summary{font-size:1.1rem;color:#0b0b0c;font-weight:700;border-bottom:2px solid #0b0b0c;padding-bottom:7px;cursor:pointer;list-style-position:inside}details.exc summary .hint{font-size:.78rem;font-weight:400;color:#61615a}.note{background:#fff;border:1px solid #e3e3dd;border-left:4px solid #71716a;border-radius:10px;padding:14px 16px;font-size:.85rem;line-height:1.55;margin:10px 0}.report-footer{margin-top:44px;font-size:.78rem;color:#6e6e64;text-align:center}.preview-bar{background:#322d00;border-bottom:1px solid #6b6200;color:#ffe600;padding:10px 26px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:.9rem;position:sticky;top:0;z-index:10}.preview-bar .actions{display:flex;gap:10px}.warn-panel{background:color-mix(in srgb,var(--warn) 10%,var(--bg-card));border:1px solid color-mix(in srgb,var(--warn) 45%,var(--border));border-radius:10px;padding:14px 16px;margin:16px 0;color:var(--ink);font-size:.86rem}.warn-panel b{display:block;margin-bottom:6px}.warn-panel ul{margin:0;padding-left:18px}.skeleton-report{max-width:1240px;margin:30px auto;padding:0 26px;display:grid;gap:14px}.report-navbar{display:flex;gap:10px;align-items:center;padding:10px 18px;background:#fff;border-bottom:1px solid #e3e3dd}@media print{.report-navbar,.preview-bar,.warn-panel,.late-jobs-panel,.insight-editor,.report-tabs,.no-print{display:none!important}.report-root{background:#fff}.report-hero{break-inside:avoid}h2{break-after:avoid}table{break-inside:auto}tr{break-inside:avoid;break-after:auto}.chartbox,.kpi,.exc{break-inside:avoid}.report-wrap{max-width:none;padding:0}a[href]:after{content:""}}.report-actions{display:flex;justify-content:flex-end;gap:8px;padding:10px 18px 0}.report-root .card{background:#fff;border:1px solid #e3e3dd;border-radius:10px;color:#17181a}.report-root .hint-text{color:#61615a}.report-root .label{color:#4a4a44}.report-root .error-text{color:#b91c1c}.report-root .input,.report-root select.input,.report-root textarea.input{background:#fff;color:#17181a;border:1px solid #cfcfc7}.report-root .input:focus{border-color:#0b0b0c}.report-root .btn{background:#fff;color:#17181a;border:1px solid #cfcfc7}.report-root .btn:hover{border-color:#0b0b0c}.report-root .btn-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.report-root .btn-danger{background:#fff;color:#b91c1c;border-color:#e0b4b4}.report-root .card table th{background:#f4f4ef;color:#17181a}.report-root .table-sticky thead th{background:#f4f4ef;box-shadow:inset 0 -1px #d8d8d2}.report-hero,.report-wrap th,.report-tabs button.on,.on-dark{color:#fff}.report-tabs button.on{color:var(--brand)}.report-hero h1{color:#fff}.preview-bar,.preview-bar b{color:#ffe600}.on-dark{background:#0b0b0c}.msec-p{font-size:.9rem;line-height:1.6;margin:8px 0;max-width:70em}.msec-list{font-size:.9rem;line-height:1.65;margin:8px 0;padding-left:22px;max-width:70em}.msec-note{color:#6e6e64;font-size:.84rem}.msec-badge{display:inline-block;padding:2px 10px;border-radius:99px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#ecece6;color:#4b4b45}.msec-good{background:#dcfce7;color:#166534}.msec-warn{background:#fef3c7;color:#92400e}.msec-bad{background:#fee2e2;color:#991b1b}.msec-neutral{background:#e8e8e2;color:#4b4b45}.msec-ncr{background:#fff;border:1px solid #e2e2da;border-radius:10px;padding:16px 20px;margin:12px 0}.msec-ncr-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.msec-ncr-head b{font-size:.98rem}.msec-meta{color:#6e6e64;font-size:.8rem;margin-top:4px;font-variant-numeric:tabular-nums}.msec-actions-t{font-size:.8rem;font-weight:700;margin-top:10px;color:#17181a}.msec-actions{list-style:none;margin:6px 0 0;padding:0;font-size:.86rem;line-height:1.55}.msec-actions li{padding:3px 0 3px 20px;position:relative}.msec-actions li:before{content:"●";position:absolute;left:2px;top:3px;font-size:.7rem}.msec-actions .act-done:before{color:#15803d}.msec-actions .act-done b{color:#15803d}.msec-actions .act-pending:before{color:#b45309}.msec-actions .act-pending b{color:#b45309}.msec-actions .act-scoping:before{color:#1d4ed8}.msec-actions .act-scoping b{color:#1d4ed8}.rate-sheet{background:#fff;color:#17171a;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:34px 38px 30px;max-width:1080px}.rate-sheet .sheet-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:2.5px solid #17171a;padding-bottom:10px;margin-bottom:6px}.rate-sheet h1{font-size:24px;font-style:italic;margin:8px 0 0;color:#17171a}.rate-sheet .effective{font-size:12.5px;color:#55555d;margin-top:3px}.rate-brand{background:#111;color:#fff;padding:8px 14px;border-radius:6px;text-align:center;line-height:1.1;flex:0 0 auto}.rate-brand .u{display:block;color:#ffe600;font-weight:800;font-style:italic;font-size:19px;letter-spacing:.04em}.rate-brand .c{display:block;font-weight:700;font-size:12.5px;letter-spacing:.34em;margin-top:1px}.rate-sheet h2{font-size:15px;margin:22px 0 2px;color:#17171a}.rate-sheet .section-note{font-size:12px;color:#55555d;margin:0 0 6px}.rate-sheet table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}.rate-sheet thead{display:table-header-group}.rate-sheet th{text-align:left;font-size:12.5px;border-top:2px solid #17171a;border-bottom:2px solid #17171a;padding:6px 8px;white-space:nowrap}.rate-sheet th.num,.rate-sheet td.num{text-align:right}.rate-sheet td{padding:5px 8px;border-bottom:1px solid #e4e2da}.rate-sheet tbody tr{break-inside:avoid}.rate-sheet td.na{color:#9a9a92}.rate-sheet .terms{margin-top:26px;border-top:2px solid #17171a;padding-top:12px;font-size:12px;line-height:1.55;color:#2c2c30}.rate-sheet .terms p{margin:0 0 8px}.rate-sheet .terms p:first-child{font-weight:700;font-style:italic}@media print{body *{visibility:hidden}.rate-sheet,.rate-sheet *{visibility:visible}.rate-sheet{position:absolute;inset:0 auto auto 0;width:100%;max-width:none;border:none;box-shadow:none;border-radius:0;padding:0}}:root{--brand: #ffe600;--brand-ink: #1a1a00;--bg: #f4f3ef;--bg-raised: #fbfbf9;--bg-card: #ffffff;--border: #e2e0d8;--border-strong: #cfccc1;--ink: #17171a;--ink-dim: #55555d;--ink-faint: #7a7a80;--good: #10633c;--bad: #a12d1c;--warn: #8a5a06;--brand-text: #7a6a00;--shadow-card: 0 1px 2px rgba(23, 23, 26, .05);--focus-ring: rgba(122, 106, 0, .35);--radius: 10px;--radius-sm: 6px;--font: "Segoe UI", system-ui, -apple-system, sans-serif;--mono: "Cascadia Code", "Consolas", monospace;--page-max: 1560px;--page-gutter: 28px;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0c0c0d;--bg-raised: #151517;--bg-card: #1a1a1d;--border: #2a2a2e;--border-strong: #3a3a40;--ink: #f2f2f0;--ink-dim: #b6b6bf;--ink-faint: #93939c;--good: #4ade80;--bad: #f87171;--warn: #fbbf24;--brand-text: #ffe600;--shadow-card: none;--focus-ring: rgba(255, 230, 0, .35);color-scheme:dark}}:root[data-theme=dark]{--bg: #0c0c0d;--bg-raised: #151517;--bg-card: #1a1a1d;--border: #2a2a2e;--border-strong: #3a3a40;--ink: #f2f2f0;--ink-dim: #b6b6bf;--ink-faint: #93939c;--good: #4ade80;--bad: #f87171;--warn: #fbbf24;--brand-text: #ffe600;--shadow-card: none;--focus-ring: rgba(255, 230, 0, .35);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-weight:600;letter-spacing:-.01em}a{color:inherit}button{font-family:inherit}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg-raised);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;transition:border-color .12s,background .12s,transform 60ms}a.btn,a.btn:hover{text-decoration:none}.btn:hover{border-color:var(--ink-faint)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn-primary:disabled,.btn-ink:disabled{background:var(--bg-raised);border-color:var(--border);color:var(--ink-faint);cursor:default}.btn:disabled:hover,.btn-primary:disabled:hover,.btn-ink:disabled:hover{background:var(--bg-raised);border-color:var(--border)}.btn-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn-primary:hover{background:#ffee52;border-color:#ffee52}.btn-ink{background:var(--ink);border-color:var(--ink);color:var(--bg-card)}.btn-ink:hover{background:var(--ink-dim);border-color:var(--ink-dim)}.btn-danger{border-color:color-mix(in srgb,var(--bad) 45%,var(--border-strong));color:var(--bad)}.btn:focus-visible,.input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.theme-switch{display:inline-flex;padding:2px;gap:2px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg)}.theme-switch button{display:grid;place-items:center;width:30px;height:24px;border:none;border-radius:4px;background:transparent;color:var(--ink-faint);cursor:pointer;transition:background .12s,color .12s}.theme-switch button:hover{color:var(--ink)}.theme-switch button[aria-pressed=true]{background:var(--bg-card);color:var(--ink);box-shadow:var(--shadow-card)}.input{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--ink);font-size:15px;outline:none;transition:border-color .12s}.input:focus{border-color:var(--brand)}.label{display:block;font-size:13px;font-weight:600;color:var(--ink-dim);margin:14px 0 6px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-card)}.page{width:100%;max-width:var(--page-max);margin:0 auto;padding:24px var(--page-gutter) 48px}.page-narrow{max-width:880px}.table-sticky thead th{position:sticky;top:0;z-index:1;background:var(--bg-card);box-shadow:inset 0 -1px 0 var(--border-strong)}.error-text{color:var(--bad);font-size:14px;margin-top:10px}.hint-text{color:var(--ink-faint);font-size:13px}.otd-good{color:var(--good);font-weight:650}.otd-warn{color:var(--warn);font-weight:650}.otd-bad{color:var(--bad);font-weight:650}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--border) 25%,var(--bg-raised) 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.auth-wrap{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 500px at 70% -10%,rgba(255,230,0,.1),transparent 60%),var(--bg)}.auth-card{width:400px;max-width:100%}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:22px}.auth-brand .mark{width:34px;height:34px;border-radius:8px;background:var(--brand);display:grid;place-items:center;color:var(--brand-ink);font-weight:800;font-size:18px}.auth-brand .name{font-size:15px;font-weight:700}.auth-brand .sub{font-size:12.5px;color:var(--ink-dim)}
