:root,:root[data-theme=light]{--color-primary: #1C1B1B;--color-primary-dark: #000000;--color-primary-light: #3A3838;--color-on-primary: #FFFFFF;--color-primary-fixed-dim: #6B6760;--color-accent: #F9B91B;--color-accent-dark: #D49C12;--color-accent-soft: #FEF9EF;--accent-ink: #8A5E1A;--color-bg: #FCF9F8;--color-surface: #FFFFFF;--color-surface-low: #F3F0EE;--color-surface-mid: #E8E4DE;--color-zebra: #F7F4F1;--color-text: #1C1B1B;--color-text-variant: #4C616C;--color-text-inverse: #FCF9F8;--color-text-muted: #6B6760;--color-border: #E5E2E1;--color-border-strong: #D4D0CB;--color-status-pending: #6B6760;--color-status-progress: #2C5282;--color-status-signed: #2D6A4F;--color-status-lost: #BA1A1A;--color-status-paused: #B45309;--color-alert-critical: #E63946;--color-error: #BA1A1A;--color-error-container: #FEF2F2;--color-on-status: #FFFFFF;--font-tc: "Taipei Sans TC Beta", "Noto Sans TC", -apple-system, "PingFang TC", "Microsoft JhengHei", sans-serif;--font-mono: "DM Mono", "JetBrains Mono", "Consolas", "Roboto Mono", monospace;--font-display-en: "Archivo Black", var(--font-tc);--fs-headline-lg: 28px;--fs-headline-md: 20px;--fs-body-lg: 16px;--fs-body-md: 14px;--fs-label-sm: 12px;--fs-data-lg: 18px;--fs-data-md: 14px;--lh-headline-lg: 40px;--lh-headline-md: 32px;--lh-body-lg: 24px;--lh-body-md: 22px;--lh-label-sm: 16px;--lh-data-lg: 24px;--lh-data-md: 20px;--row-standard: 48px;--row-dense: 40px;--gutter: 16px;--page-margin: 24px;--stack: 8px;--radius-sm: 2px;--radius: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--shadow-bar: 0 -1px 4px rgba(28,27,27,.06);--shadow-soft: 0 1px 3px rgba(28,27,27,.06), 0 4px 12px rgba(28,27,27,.04);--shadow-card: 0 1px 3px rgba(28,27,27,.07), 0 6px 18px rgba(28,27,27,.05);--brand-yellow: #F9B91B;--brand-yellow-strong: #D49C12;--brand-black: #1C1B1B;--brand-bone: #FCF9F8;--brand-fog: #D4C4AC;--warning-stripe: repeating-linear-gradient(45deg, #F9B91B 0 12px, #1C1B1B 12px 24px)}:root[data-theme=dark]{--color-primary: #FCF9F8;--color-primary-dark: #FFFFFF;--color-primary-light: #D4C4AC;--color-on-primary: #1C1B1B;--color-primary-fixed-dim: #6B6760;--color-accent: #F9B91B;--color-accent-dark: #FFCA3F;--color-accent-soft: rgba(249,185,27,.12);--accent-ink: #F9B91B;--color-bg: #1C1B1B;--color-surface: #2D2B2B;--color-surface-low: #3A3838;--color-surface-mid: #454241;--color-zebra: #353333;--color-text: #FCF9F8;--color-text-variant: #D4C4AC;--color-text-inverse: #1C1B1B;--color-text-muted: #ABA59C;--color-border: #3A3838;--color-border-strong: #4C4847;--color-status-pending: #8A857E;--color-status-progress: #5B9BD5;--color-status-signed: #6EE7B7;--color-status-lost: #FF6B6B;--color-status-paused: #FFCA3F;--color-alert-critical: #FF6B6B;--color-error: #FF6B6B;--color-error-container: rgba(255,107,107,.12);--color-on-status: #1C1B1B;--shadow-bar: 0 -1px 4px rgba(0,0,0,.4);--shadow-soft: 0 1px 3px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.3);--shadow-card: 0 1px 3px rgba(0,0,0,.5), 0 8px 24px rgba(0,0,0,.4)}@font-face{font-family:Taipei Sans TC Beta;src:url(/fonts/TaipeiSansTCBeta-Light.woff2) format("woff2");font-weight:300;font-display:swap}@font-face{font-family:Taipei Sans TC Beta;src:url(/fonts/TaipeiSansTCBeta-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Taipei Sans TC Beta;src:url(/fonts/TaipeiSansTCBeta-Bold.woff2) format("woff2");font-weight:700;font-display:swap}:root{--topbar-h: 58px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%;font-family:var(--font-tc);font-size:var(--fs-body-md);line-height:var(--lh-body-md);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:6px 8px;min-height:36px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--color-text-muted)}.display{font-family:var(--font-display-en);letter-spacing:.02em}.logo-mark{width:32px;height:32px;border-radius:6px;background:var(--brand-yellow);color:var(--brand-black);display:grid;place-items:center;font-weight:700;font-size:18px;flex:none}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:10px var(--page-margin);background:var(--brand-black);color:var(--brand-bone);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.topbar .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px}.topbar .brand small{display:block;font-weight:400;font-size:11px;color:var(--brand-fog);letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-mono)}.topbar .spacer{flex:1}.topbar .select,.topbar .datebox{min-height:35px;border:1px solid #444;background:#1b1b1b;color:#fff;border-radius:8px;padding:0 10px}.topbar .datebox{color-scheme:dark}.topbar .userchip{font-size:12px;color:var(--brand-fog)}.store-rail{position:fixed;left:0;top:var(--topbar-h);bottom:0;width:132px;background:var(--brand-black);display:flex;flex-direction:column;gap:8px;padding:16px 10px;z-index:25;overflow-y:auto}.store-tab{min-height:46px;border:1px solid #3f3f3f;background:#1b1b1b;color:#fff;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer;padding:0 6px}.store-tab:hover{border-color:var(--brand-yellow);color:var(--brand-yellow)}.store-tab.active{background:var(--brand-yellow);border-color:var(--brand-yellow);color:var(--brand-black)}.page-with-rail{--pw: 1580px;margin-left:calc(132px + max(0px,(100% - 132px - var(--pw)) / 2))!important;margin-right:0!important}.hq-page.page-with-rail,.capa-page.page-with-rail{--pw: 1700px}@media(max-width:900px){.store-rail{position:static;width:auto;flex-direction:row;overflow-x:auto;padding:10px 12px;gap:6px}.store-tab{min-height:40px;white-space:nowrap;padding:0 12px}.page-with-rail{margin-left:0!important}}@media print{.store-rail{display:none!important}.page-with-rail{margin-left:auto!important}}.topbar .linklike{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid #444;color:var(--brand-bone);border-radius:8px;min-height:35px;padding:0 12px}.theme-toggle{width:36px;height:36px;border-radius:var(--radius-md);border:1px solid #444;background:#1b1b1b;color:var(--brand-bone);display:grid;place-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 14px;border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-weight:700}.btn:hover{background:var(--color-surface-low)}.btn.primary{background:var(--brand-yellow);border-color:var(--brand-yellow);color:var(--brand-black)}.btn.primary:hover{background:var(--color-accent-dark)}.btn.sm{min-height:32px;padding:0 10px;font-size:12px}.btn.danger{color:var(--color-error);border-color:var(--color-error);background:transparent}.btn.big{min-height:56px;font-size:18px;padding:0 24px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.light-dark{background:#1e1e1e;border-color:#555;color:#fff}.alert{padding:10px 14px;border-radius:var(--radius-md);font-size:13px;margin-top:10px;border:1px solid transparent}.alert.ok{background:#2d6a4f1a;color:var(--color-status-signed);border-color:#2d6a4f4d}.alert.warn{background:#b453091a;color:var(--color-status-paused);border-color:#b453094d}.alert.danger{background:var(--color-error-container);color:var(--color-error);border-color:#ba1a1a4d}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--color-bg)}.login .box{width:min(420px,100%);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:32px 28px;text-align:center;display:flex;flex-direction:column}.store-tab{position:relative}.store-tab.editable:after{content:"";position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--brand-yellow)}.store-tab.active.editable:after{background:var(--brand-black)}.report{--brand: var(--brand-yellow);--ink: var(--color-text);--line: var(--color-border);--green: #16a34a;--ryellow: #d6a400;--red: #dc2626;background:var(--color-bg);color:var(--ink);font-size:14px}.report .page{max-width:1580px;margin:0 auto;padding:20px 24px 42px}.report .title-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px}.report .title-row h1{font-size:26px;margin:3px 0}.report .subtitle{color:var(--color-text-muted)}.report .title-actions{display:flex;gap:8px;align-items:center}.report .panel{background:var(--color-surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.report .kpi-wrap{padding:14px}.report .kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}.report .dept-card{border:1.5px solid var(--color-border-strong);border-radius:14px;overflow:hidden;background:var(--color-surface);min-width:0;height:330px;display:flex;flex-direction:column}.report .dept-head{height:58px;background:var(--brand-black);color:#fff;padding:0 18px;display:flex;align-items:center;justify-content:space-between}.report .dept-head h3{font-size:21px;margin:0}.report .dept-badge{background:var(--brand-yellow);color:var(--brand-black);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:800}.report .compact-body{position:relative;display:block;height:272px;padding:0}.report .total-area{position:absolute;left:0;top:0;width:34%;height:100%;display:block}.report .total-area .num{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;text-align:center;font-family:var(--font-mono);font-size:96px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.report .total-area .unit{position:absolute;left:calc(50% + 58px);top:calc(50% + 32px);transform:translateY(-50%);margin:0;text-align:left;font-size:14px;font-weight:700;line-height:1}.report .category-area{position:absolute;left:34%;right:0;top:0;bottom:0;border-left:1px solid var(--line);padding:8px 0 8px 20px;display:flex;align-items:center;overflow:hidden}.report .dynamic-tags{display:flex;gap:10px;flex-wrap:wrap;align-content:center;align-items:center;max-height:230px;overflow:auto;padding-right:4px}.report .dynamic-tag{min-width:96px;max-width:150px;min-height:72px;border-radius:18px;padding:10px 14px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-size:14px;color:#3d4654;border:1px solid transparent;flex:0 1 auto}.report .dynamic-tag .tag-label{line-height:1.25;white-space:normal;word-break:keep-all}.report .dynamic-tag b{color:#1c1b1b;margin-top:8px;font-size:24px;line-height:1;font-weight:800;display:block;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.report .dynamic-tag.tag-1{background:#e9e1f7;border-color:#d9caef}.report .dynamic-tag.tag-2{background:#dfeaf8;border-color:#cbdcf1}.report .dynamic-tag.tag-3{background:#dff1e7;border-color:#cae6d6}.report .dynamic-tag.tag-4{background:#f8efd8;border-color:#eedfb9}.report .dynamic-tag.tag-5{background:#e3edf0;border-color:#cedde2}.report .dynamic-empty{color:var(--color-text-muted)}.report .finance-body{display:grid;grid-template-columns:1fr 1fr;height:272px;flex:1}.report .finance-side{position:relative;min-width:0;height:272px;padding:0;overflow:hidden}.report .finance-side+.finance-side{border-left:2px solid var(--line)}.report .finance-left{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.report .finance-left h4{position:absolute;top:18px;left:18px;font-size:18px;margin:0}.report .finance-count{position:absolute;left:0;top:57%;transform:translateY(-50%);width:34%;display:flex;align-items:baseline;justify-content:center;gap:8px}.report .finance-count strong{font-family:var(--font-mono);font-size:96px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.report .finance-count span{font-size:14px;font-weight:700;line-height:1}.report .finance-metrics{position:absolute;left:33%;top:57%;transform:translateY(-50%);width:61%;display:grid;gap:14px;align-content:center;padding:0}.report .money-row{display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;align-items:end;min-width:0}.report .money-label{font-size:14px;color:var(--color-text-muted);white-space:nowrap}.report .line-input{height:28px;width:100%;min-width:0;max-width:100%;border:0;border-bottom:1px solid var(--color-border-strong);border-radius:0;outline:none;text-align:center;font-size:16px;font-weight:800;background:transparent;overflow:hidden;font-family:var(--font-mono);font-variant-numeric:tabular-nums;padding:0 4px;min-height:0;color:var(--ink)}.report .line-input:focus{border-color:var(--brand-yellow-strong);background:var(--color-accent-soft)}.report .line-output{height:28px;width:100%;min-width:0;max-width:100%;border-bottom:1px solid var(--color-border-strong);display:flex;justify-content:center;align-items:center;font-size:16px;font-weight:800;overflow:hidden;white-space:nowrap;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.report .cashflow-body{height:272px;flex:1;padding:18px 20px 16px;display:flex;flex-direction:column}.report .cashflow-head-balance{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:390px;max-width:48%;color:#fff;font-size:15px;font-weight:800}.report .cashflow-head-balance .label{white-space:nowrap}.report .cashflow-bank-input{width:230px;max-width:100%;height:32px;border:0;border-bottom:1px solid #8a8f97;border-radius:0;background:transparent;outline:none;padding:0 4px;text-align:center;font-size:18px;font-weight:800;color:#fff;font-family:var(--font-mono);font-variant-numeric:tabular-nums;min-height:0}.report .cashflow-bank-input::placeholder{color:#b8bec7}.report .cashflow-bank-input:focus{border-bottom-color:var(--brand-yellow);background:#ffffff14}.report .cashflow-table-wrap{flex:1;min-height:0;overflow:hidden}.report .cashflow-table{width:100%!important;min-width:0!important;height:100%;border-collapse:collapse!important;border-spacing:0!important;table-layout:fixed;font-size:15px;color:var(--ink)}.report .cashflow-table th,.report .cashflow-table td{padding:0 8px;text-align:center;vertical-align:middle;color:var(--ink);background:var(--color-surface);border-bottom:1px solid var(--color-border-strong);border-right:1px solid var(--color-border-strong)}.report .cashflow-table th:last-child,.report .cashflow-table td:last-child{border-right:0}.report .cashflow-table thead tr.group-header th{height:38px;font-size:16px;font-weight:800;border-top:0}.report .cashflow-table thead tr.column-header th{height:42px;font-size:15px;font-weight:800}.report .cashflow-table tbody tr{height:50px}.report .cashflow-table tbody tr:last-child td{border-bottom:0}.report .cashflow-cell-input{width:100%;height:36px;border:0;border-radius:0;background:transparent;outline:none;text-align:center;font-family:var(--font-mono);font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ink);padding:0 6px;min-height:0}.report .cashflow-cell-input:focus{background:var(--color-accent-soft)}.report .cashflow-cell-input::placeholder{color:var(--color-text-muted);font-weight:500;font-size:8px}.report .cashflow-readout,.report .cashflow-auto-cell{font-family:var(--font-mono);font-size:16px;font-variant-numeric:tabular-nums;font-weight:800;line-height:1.2}.report .negative{color:var(--color-error)!important}.report .tables-stack{display:grid;gap:16px;margin-top:16px}.report .dept-table-panel{background:var(--color-surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.report .dept-table-head{height:52px;background:var(--brand-black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 18px}.report .dept-table-head h3{margin:0;font-size:18px}.report .dept-table-actions{display:flex;gap:8px}.report .dept-table-actions .btn{min-height:32px}.report .toolbar{padding:10px 12px;background:var(--color-surface-low);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.report .toolbar-left{display:flex;gap:8px;align-items:center}.report .input,.report .filter{height:34px;min-height:34px;border:1px solid var(--color-border-strong);border-radius:7px;background:var(--color-surface);padding:0 9px;text-align:center}.report .filter{text-align-last:center}.report .input{min-width:260px}.report .table-wrap{overflow:auto}.report .table-wrap table:not(.cashflow-table){border-collapse:separate;border-spacing:0;table-layout:fixed}.report .table-wrap table:not(.finance-table):not(.cashflow-table){width:1530px;min-width:1530px;max-width:1530px}.report .table-wrap table.finance-table{width:1760px;min-width:1760px;max-width:1760px;table-layout:fixed}.report thead th{background:var(--brand-black);color:#fff;padding:10px 8px;text-align:center;border-right:1px solid #343434;white-space:nowrap;font-weight:700}.report tbody td{padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--color-surface);vertical-align:middle;overflow:hidden}.report tbody tr:hover td{background:var(--color-accent-soft)}.report .col-no{width:58px}.report .col-case{width:120px}.report .col-owner{width:105px}.report .col-abn{width:170px}.report .col-risk{width:100px}.report .col-period{width:110px}.report .col-amount{width:150px}.report .col-over{width:100px}.report .col-summary{width:300px}.report .col-date{width:140px}.report .col-note{width:220px}.report .cell-edit,.report .manual-box{width:100%;max-width:100%;min-width:0;min-height:34px;border:1px solid var(--color-border-strong);border-radius:6px;padding:6px 7px;outline:none;background:var(--color-surface);text-align:center;overflow:hidden}.report .cell-edit{border-color:transparent;background:transparent}.report .cell-edit:focus,.report .manual-box:focus{border-color:var(--brand-yellow-strong);background:var(--color-accent-soft)}.report .money-edit{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.report textarea.cell-edit{resize:none;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;text-align:left;display:block;line-height:1.5}.report td:has(textarea.cell-edit){text-align:left;vertical-align:top}.report .abnormal-select,.report .date-input{height:32px;min-height:32px;width:100%;max-width:100%;min-width:0;border:1px solid var(--color-border-strong);border-radius:6px;background:var(--color-surface);padding:0 6px;text-align:center;text-align-last:center}.report .readonly-cell{color:var(--ink);text-align:center;font-weight:700}.report .overdue-cell{font-variant-numeric:tabular-nums;font-family:var(--font-mono);text-align:center}.report .risk-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:64px;padding:5px 8px;border-radius:999px;font-weight:800;font-size:12px}.report .risk-chip.normal{background:#ecfdf3;color:#087a35}.report .risk-chip.yellow{background:#fff8d8;color:#956f00}.report .risk-chip.red{background:#feecec;color:#b42318}.report .risk-chip.none{background:#f3f4f6;color:#7a8390}.report .risk-light{width:8px;height:8px;border-radius:50%;background:currentColor}.report .helper{font-size:12px;color:var(--color-text-muted);padding:9px 12px;background:var(--color-surface-low);border-top:1px solid var(--line)}.report .drawer{position:fixed;right:-460px;top:0;width:440px;height:100vh;background:var(--color-surface);z-index:50;box-shadow:-8px 0 30px #0000002e;transition:right .2s;display:flex;flex-direction:column}.report .drawer.open{right:0}.report .drawer-head{height:62px;background:var(--brand-black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-weight:800}.report .drawer-close{border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer}.report .drawer-body{padding:16px 18px;overflow:auto}.report .def-group{margin-bottom:18px}.report .def-group h3{margin:0 0 6px;font-size:15px}.report .def-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.report .def-row span{color:var(--color-text-muted)}.report .overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000047;z-index:40}.report .overlay.show{display:block}.report .overall-panel{background:var(--color-surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:14px}.report .overall-head{height:52px;background:var(--brand-black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.report .overall-head h2{margin:0;font-size:20px;font-weight:800}.report .overall-head .overall-note{font-size:12px;color:#c8ccd2}.report .overall-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:126px}.report .overall-kpi{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;position:relative;padding:16px 12px}.report .overall-kpi+.overall-kpi{border-left:1px solid var(--line)}.report .overall-label{font-size:15px;font-weight:700;color:var(--color-text-variant)}.report .overall-value{font-family:var(--font-mono);font-size:38px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink);text-align:center}.report .overall-input{width:150px;height:42px;min-height:0;border:0;border-bottom:1px solid var(--color-border-strong);border-radius:0;background:transparent;outline:none;text-align:center;font-family:var(--font-mono);font-size:38px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink)}.report .overall-input::placeholder{font-size:13px;font-weight:500;color:var(--color-text-muted)}.report .overall-input:focus{border-bottom-color:var(--brand-yellow-strong);background:var(--color-accent-soft)}.report .history-block{border-top:1px solid var(--line);padding:16px 18px 18px}.report .combo-block{display:block;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--color-surface);margin-bottom:14px}.report .combo-chart-wrap{padding:16px 18px 18px}.report .combo-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.report .combo-chart-title h3{margin:0;font-size:16px;color:var(--color-text-variant)}.report .combo-legend{display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:flex-end}.report .combo-legend span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-variant);font-weight:700}.report .combo-legend i{display:inline-block}.report .lg-bar-total{width:12px;height:12px;border-radius:3px;background:var(--brand-yellow)}.report .lg-bar-abnormal{width:12px;height:12px;border-radius:3px;background:var(--color-surface-mid)}.report .lg-line-collection,.report .lg-line-payment{width:18px;height:0;border-top-width:3px;border-top-style:solid;position:relative}.report .lg-line-collection{border-top-color:var(--brand-yellow-strong);color:var(--brand-yellow-strong)}.report .lg-line-payment{border-top-color:var(--color-primary);color:var(--color-primary)}.report .lg-line-collection:after,.report .lg-line-payment:after{content:"";position:absolute;right:-1px;top:-4px;width:7px;height:7px;border-radius:50%;background:currentColor}.report .combo-chart-canvas{width:100%;height:380px;border:1px solid var(--line);border-radius:14px;background:var(--color-surface);overflow:hidden}.report .combo-chart-canvas svg{display:block;width:100%;height:100%}.report .stats-grid{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--color-surface)}.report .stats-grid-head{display:flex;align-items:center;justify-content:flex-start;padding:14px 16px 12px;border-bottom:1px solid var(--line)}.report .stats-grid-head h3{margin:0;font-size:15px;color:var(--color-text-variant)}.report .stats-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.report .stats-table th,.report .stats-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 8px;text-align:center;vertical-align:middle;background:var(--color-surface)}.report .stats-table thead th{background:var(--color-surface-low);font-size:13px;font-weight:800;color:var(--color-text-variant)}.report .stats-table th.metric-name{width:150px;background:var(--color-surface-low);color:var(--ink);font-weight:800}.report .stats-table td:last-child,.report .stats-table th:last-child{border-right:0}.report .stats-table tr:last-child td,.report .stats-table tr:last-child th{border-bottom:0}.report .stats-note-good{color:var(--color-status-signed);font-weight:800}.report .stats-note-mid{color:var(--color-status-paused);font-weight:800}.report .stats-note-bad{color:var(--color-error);font-weight:800}.report .stats-note-neutral{color:var(--color-text-muted);font-weight:700}.report .stats-table tbody tr:nth-child(2n) td,.report .stats-table tbody tr:nth-child(2n) th{background:var(--color-zebra)}.report .save-status{font-size:12px;color:var(--color-text-muted);min-width:64px;text-align:right}.report .save-status.saving{color:var(--color-status-paused)}.report .save-status.error{color:var(--color-error)}.report .readonly-banner{margin:0 0 12px}@media(max-width:1180px){.report .overall-grid{grid-template-columns:repeat(2,1fr)}.report .overall-kpi:nth-child(3){border-left:0;border-top:1px solid var(--line)}.report .overall-kpi:nth-child(4){border-top:1px solid var(--line)}}@media(max-width:760px){.report .page{padding:14px}.report .kpi-grid,.report .finance-body{grid-template-columns:1fr}.report .finance-side+.finance-side{border-left:0;border-top:2px solid var(--line)}.report .title-row{align-items:flex-start;gap:12px;flex-direction:column}.report .overall-grid{grid-template-columns:1fr}.report .overall-kpi+.overall-kpi{border-left:0;border-top:1px solid var(--line)}.report .combo-chart-head,.report .stats-grid-head{flex-direction:column;align-items:flex-start}.report .combo-chart-canvas{height:360px}.report .cashflow-body{height:auto;min-height:272px;padding:16px}.report .cashflow-head-balance{min-width:0;max-width:58%;gap:6px}.report .cashflow-bank-input{width:120px}}@media print{@page{size:A3 landscape;margin:6mm}html,body{background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body{zoom:.74!important}.topbar,.title-actions,.report .drawer,.report .overlay,.report .dept-table-actions,.report .toolbar,.report .readonly-banner{display:none!important}.report .page{width:1580px!important;max-width:1580px!important;margin:0 auto!important;padding:10px 20px 24px!important}.report .title-row{margin:0 0 8px!important;min-height:34px!important}.report .title-row h1{font-size:24px!important;margin:0!important;line-height:1.2!important}.report .overall-panel{margin-bottom:10px!important;break-inside:avoid!important;page-break-inside:avoid!important}.report .overall-head{height:42px!important;padding:0 14px!important}.report .overall-head h2{font-size:18px!important}.report .overall-grid{min-height:86px!important;grid-template-columns:repeat(4,1fr)!important}.report .overall-kpi{padding:8px 10px!important;gap:5px!important}.report .overall-label{font-size:13px!important}.report .overall-value,.report .overall-input{font-size:31px!important;height:36px!important}.report .history-block{display:block!important;padding:8px 10px 10px!important}.report .combo-block{display:block!important;break-inside:avoid!important;margin-bottom:8px!important}.report .combo-chart-wrap{padding:8px 10px 10px!important}.report .combo-chart-head{margin-bottom:4px!important}.report .combo-chart-title h3{font-size:14px!important}.report .combo-legend{gap:4px 9px!important}.report .combo-legend span{font-size:10px!important}.report .combo-chart-canvas{height:190px!important;border-radius:10px!important}.report .stats-grid{break-inside:avoid!important}.report .stats-grid-head{padding:8px 12px!important}.report .stats-grid-head h3{font-size:13px!important}.report .stats-table{font-size:11px!important}.report .stats-table th,.report .stats-table td{padding:4px 6px!important;height:24px!important}.report .stats-table thead th{font-size:11px!important}.report .panel,.report .dept-table-panel{break-inside:avoid!important;page-break-inside:avoid!important;box-shadow:none!important}.report .kpi-wrap{padding:8px!important}.report .kpi-grid{grid-template-columns:1fr 1fr!important;gap:6px!important}.report .dept-card{height:240px!important}.report .dept-head{height:48px!important;padding:0 14px!important}.report .dept-head h3{font-size:18px!important}.report .dept-badge{padding:6px 12px!important;font-size:12px!important}.report .finance-body,.report .compact-body,.report .cashflow-body{height:192px!important}.report .cashflow-body{padding:8px 12px 10px!important}.report .cashflow-table{font-size:12px!important}.report .cashflow-table thead tr.group-header th{height:30px!important;font-size:13px!important}.report .cashflow-table thead tr.column-header th{height:30px!important;font-size:12px!important}.report .cashflow-table tbody tr{height:36px!important}.report .cashflow-cell-input{height:28px!important;font-size:12px!important}.report .tables-stack{break-before:page!important;page-break-before:always!important;margin-top:0!important;gap:12px!important}.report .dept-table-panel{break-inside:avoid!important;page-break-inside:avoid!important;box-shadow:none!important}.report .table-wrap{overflow:visible!important}.report .table-wrap table:not(.finance-table):not(.cashflow-table){width:1530px!important;min-width:1530px!important;max-width:1530px!important;font-size:14px!important}.report .table-wrap table.finance-table{width:1760px!important;min-width:1760px!important;max-width:1760px!important;font-size:14px!important}.report thead th{padding:10px 8px!important}.report tbody td{padding:8px!important}.report .abnormal-select,.report .date-input{border:1px solid #d8dadd!important;background:#fff!important;-moz-appearance:auto!important;appearance:auto!important;-webkit-appearance:auto!important;font-size:14px!important}.report .manual-box,.report .cell-edit{border:1px solid #d8dadd!important;padding:7px 8px!important;min-height:34px!important}.report .risk-chip{padding:5px 8px!important;font-size:12px!important;min-width:64px!important}}.report .overdue-banner{margin:0 0 14px;border-radius:12px;background:var(--brand-black);color:#fff;padding:12px 16px;border-left:6px solid var(--brand-yellow)}.report .overdue-banner.has-red{border-left-color:#dc2626}.report .overdue-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px;font-size:15px}.report .overdue-head b{font-family:var(--font-mono);font-size:20px;color:var(--brand-yellow)}.report .overdue-banner.has-red .overdue-head b:first-child{color:#ff6b6b}.report .muted-on-dark{font-size:12px;color:#b8bec7}.report .overdue-list{display:flex;flex-wrap:wrap;gap:8px}.report .overdue-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:999px;border:0;font-weight:700;font-size:13px;cursor:pointer}.report .overdue-chip.red{background:#feecec;color:#b42318}.report .overdue-chip.yellow{background:#fff8d8;color:#956f00}.report .overdue-chip:hover{filter:brightness(.95)}.report tr.flash td{animation:rowflash 1.6s ease-out}@keyframes rowflash{0%,40%{background:#fff1b8}to{background:var(--color-surface)}}@media print{.report .overdue-banner{display:none!important}}.report .acl-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-variant);cursor:pointer}.report .acl-check input{min-height:0;width:16px;height:16px}.report .acl-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.report .acl-chip{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-weight:700;font-size:13px}.report .acl-chip b{font-family:var(--font-mono);font-weight:500;color:var(--color-text-muted);margin-left:2px}.report .acl-chip.on{background:var(--brand-yellow);border-color:var(--brand-yellow);color:var(--brand-black)}.report .acl-chip.on b{color:var(--brand-black)}.report .acl-list{display:flex;flex-direction:column}.report .acl-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.report .acl-row:hover{background:var(--color-surface-low)}.report .acl-row.assigned{box-shadow:inset 4px 0 0 var(--brand-yellow)}.report .acl-who{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.report .acl-code{font-family:var(--font-mono);font-size:12px;color:var(--color-text-muted);min-width:52px}.report .acl-name{font-weight:700;font-size:15px}.report .acl-meta{font-size:12px;color:var(--color-text-muted)}.report .acl-roles{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.report .acl-role{min-height:34px;min-width:76px;padding:0 12px;border-radius:8px;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-variant);font-weight:700;font-size:13px}.report .acl-role:hover{border-color:var(--brand-yellow-strong);color:var(--color-text)}.report .acl-role.on{background:var(--brand-black);border-color:var(--brand-black);color:var(--brand-yellow)}:root[data-theme=dark] .report .acl-role.on{background:var(--brand-yellow);border-color:var(--brand-yellow);color:var(--brand-black)}.report .acl-role:disabled{opacity:.5;cursor:wait}.report .acl-store{height:34px;min-height:34px}.report .acl-auto{font-size:13px;color:var(--accent-ink);font-weight:700}.report .acl-empty{padding:24px;text-align:center}.report .acl-group{display:inline-flex;align-items:center;gap:4px;min-height:34px;padding:2px 4px 2px 10px;border-radius:8px;border:1px solid var(--color-border-strong);background:var(--color-surface)}.report .acl-group.on{border-color:var(--brand-black);box-shadow:inset 3px 0 0 var(--brand-yellow)}.report .acl-group-label{font-weight:700;font-size:13px;color:var(--color-text-variant);margin-right:2px}.report .acl-group.on .acl-group-label{color:var(--color-text)}.report .acl-store-chip{display:inline-flex;align-items:center;gap:2px;height:26px;padding:0 4px 0 10px;border-radius:999px;background:var(--brand-black);color:var(--brand-yellow);font-weight:700;font-size:12px}:root[data-theme=dark] .report .acl-store-chip{background:var(--brand-yellow);color:var(--brand-black)}.report .acl-store-chip button{border:0;background:transparent;color:inherit;font-size:15px;line-height:1;width:20px;height:20px;border-radius:50%;padding:0}.report .acl-store-chip button:hover{background:#ffffff2e}.report .acl-add{height:26px;padding:0 10px;border-radius:999px;border:1px dashed var(--color-border-strong);background:transparent;color:var(--color-text-variant);font-weight:700;font-size:12px}.report .acl-add:hover{border-color:var(--brand-yellow-strong);color:var(--color-text)}.report .acl-add-select{height:26px;min-height:26px;padding:0 6px;border-radius:999px;border:1px dashed var(--color-border-strong);background:transparent;color:var(--color-text-muted);font-size:12px;font-weight:700;cursor:pointer}.report textarea.cell-edit{overflow:hidden;min-height:34px}.report .pv,.report .print-empty{display:none}@media print{@page{size:A3 landscape;margin:8mm}body{zoom:.85!important}.report .page,.report .page-with-rail{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}.report .dept-card{height:286px!important}.report .finance-body,.report .compact-body,.report .cashflow-body,.report .finance-side{height:236px!important}.report input::placeholder{color:transparent!important}.report .table-wrap table:not(.cashflow-table),.report .table-wrap table:not(.finance-table):not(.cashflow-table),.report .table-wrap table.finance-table{width:100%!important;min-width:0!important;max-width:none!important;table-layout:fixed!important;font-size:13px!important}.report .col-no{width:4%!important}.report .col-case{width:9%!important}.report .col-owner{width:7%!important}.report .col-abn{width:11%!important}.report .col-risk{width:7%!important}.report .col-over{width:6%!important}.report .col-summary{width:22%!important}.report .col-date{width:8%!important}.report .col-note{width:18%!important}.report .finance-table .col-no{width:3%!important}.report .finance-table .col-case{width:8%!important}.report .finance-table .col-owner{width:6%!important}.report .finance-table .col-abn{width:10%!important}.report .finance-table .col-risk,.report .finance-table .col-period{width:6%!important}.report .finance-table .col-amount{width:8%!important}.report .finance-table .col-over{width:5%!important}.report .finance-table .col-summary{width:18%!important}.report .finance-table .col-date{width:7%!important}.report .finance-table .col-note{width:16%!important}.report thead th{white-space:normal!important;padding:8px 4px!important;font-size:12px!important}.report tbody td{padding:6px!important;vertical-align:top!important;overflow:visible!important}.report tbody tr{break-inside:avoid;page-break-inside:avoid}.report tbody .cell-edit,.report tbody .manual-box,.report tbody .abnormal-select,.report tbody .date-input{display:none!important}.report .pv{display:block!important;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;line-height:1.45;font-size:12.5px;text-align:center}.report .pv-text{text-align:left}.report .pv-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.report .readonly-cell{vertical-align:top!important}.report tr.blank-row{display:none!important}.report tr.print-empty{display:table-row!important}.report tr.print-empty td{display:table-cell!important;text-align:center;color:#6b6760;padding:10px!important}.report .helper{display:none!important}.report .dept-table-panel{break-inside:auto!important;page-break-inside:auto!important}.report thead{display:table-header-group}}.report .table-wrap table:not(.cashflow-table),.report .table-wrap table:not(.finance-table):not(.cashflow-table),.report .table-wrap table.finance-table{width:100%;min-width:1180px;max-width:none;table-layout:fixed;font-size:13px}.report .table-wrap{overflow-x:auto}.report thead th{padding:8px 4px;font-size:12px;white-space:normal;line-height:1.25}.report tbody td{padding:5px 4px}.report .col-no{width:3.5%}.report .col-case{width:8.5%}.report .col-owner{width:6.5%}.report .col-abn{width:11%}.report .col-risk{width:6.5%}.report .col-over{width:5.5%}.report .col-summary{width:21%}.report .col-date{width:8.5%}.report .col-note{width:14%}.report .col-capa{width:6.5%}.report .finance-table .col-no{width:3%}.report .finance-table .col-case{width:7.5%}.report .finance-table .col-owner{width:6%}.report .finance-table .col-abn{width:10%}.report .finance-table .col-risk{width:6%}.report .finance-table .col-period{width:5.5%}.report .finance-table .col-amount{width:7%}.report .finance-table .col-over{width:5%}.report .finance-table .col-summary{width:16%}.report .finance-table .col-date{width:7.5%}.report .finance-table .col-note{width:13%}.report .finance-table .col-capa{width:6%}.report .cell-edit,.report .manual-box{min-height:30px;padding:4px 5px;font-size:13px}.report textarea.cell-edit{min-height:30px;padding:4px 6px;line-height:1.4}.report .abnormal-select,.report .date-input{height:30px;min-height:30px;padding:0 2px;font-size:12px}.report .date-input{font-family:var(--font-mono);letter-spacing:-.02em}.report .risk-chip{min-width:54px;padding:4px 6px;font-size:11px;gap:4px}.report .readonly-cell{font-size:13px}.report .capa-inline-btn{min-width:0;padding:4px 6px;font-size:11px;min-height:28px}.report .toolbar{padding:8px 10px}.report .input{min-width:220px;height:32px;min-height:32px}.report .filter{height:32px;min-height:32px}.report td.rowops{position:relative}.report .rowops-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:18px;height:22px;border:0;background:transparent;color:var(--color-text-muted);font-size:14px;line-height:1;cursor:pointer;opacity:0;border-radius:4px;padding:0}.report tr:hover .rowops-btn,.report .rowops-btn.open{opacity:1}.report .rowops-btn:hover{background:var(--color-surface-low);color:var(--color-text)}.report .rowops-menu{position:absolute;left:100%;top:4px;z-index:20;min-width:118px;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:8px;box-shadow:var(--shadow-card);padding:4px;display:flex;flex-direction:column;gap:2px}.report .rowops-menu button{text-align:left;border:0;background:transparent;color:var(--color-text);font-size:12px;padding:6px 8px;border-radius:6px;cursor:pointer;white-space:nowrap;min-height:0}.report .rowops-menu button:hover{background:var(--color-surface-low)}.report .rowops-menu button.danger{color:var(--color-error)}.report .snapshot-banner,.report .carry-banner{margin:0 0 12px}@media print{.report .rowops-btn,.report .rowops-menu,.report .snapshot-banner,.report .carry-banner{display:none!important}}.store-rail .rail-hq{border-color:var(--brand-yellow-strong);color:var(--brand-yellow);text-align:left;padding:0 10px;line-height:1.3}.store-rail .rail-hq.active{background:var(--brand-yellow);border-color:var(--brand-yellow);color:var(--brand-black)}.store-rail .rail-divider{height:1px;background:#353535;margin:8px 2px 10px;flex:none}.store-rail .rail-label{font-size:11px;color:#909090;letter-spacing:1px;padding:0 6px 6px;flex:none}@media(max-width:900px){.store-rail .rail-divider,.store-rail .rail-label{display:none}}.hq-page{min-width:0;width:auto;max-width:1700px;margin:0;padding:22px 24px 50px}.hq-titlebar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}.hq-titlebar h1{font-size:27px;line-height:1.25;margin:0 0 4px}.hq-titlebar h1 .sep{font-weight:400;color:var(--color-text-muted)}.hq-desc{font-size:13px;color:var(--color-text-muted)}.hq-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.hq-section{margin-bottom:16px;background:var(--color-surface);border-radius:12px;border:1px solid var(--color-border);overflow:hidden;min-width:0}.hq-section-head{background:var(--brand-black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;gap:8px;flex-wrap:wrap}.hq-section-head h2{font-size:17px;margin:0;font-weight:800}.hq-section-head span{font-size:12px;color:#babdc2}.hq-section-inner{padding:17px 19px}.hq-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--color-border)}.hq-kpi{padding:23px 12px 18px;text-align:center;border-right:1px solid var(--color-border);min-width:0}.hq-kpi:last-child{border-right:0}.hq-kpi .k-label{font-size:13px;color:var(--color-text-variant);font-weight:800}.hq-kpi .k-number{font-size:38px;font-weight:900;color:var(--color-text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:8px 0 4px;line-height:1.15}.hq-kpi .k-number.negative{color:var(--color-error)!important}.hq-kpi .k-sub{font-size:12px;color:var(--color-text-muted);line-height:1.6}.hq-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.hq-metric-tile{background:var(--color-surface-low);border:1px solid var(--color-border);border-radius:10px;padding:13px 15px;min-width:0}.hq-metric-tile .t-label{color:var(--color-text-variant);font-size:12px;font-weight:700}.hq-metric-tile .t-num{font-size:24px;line-height:1.5;font-weight:850;font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.hq-metric-tile .t-num.negative{color:var(--color-error)}.hq-metric-tile .t-hint{font-size:11px;color:var(--color-text-muted)}.hq-chart-legend{display:flex;justify-content:flex-end;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--color-text-variant);margin:0 0 4px}.hq-legend-mark{width:12px;height:9px;display:inline-block;border-radius:2px;margin-right:4px}.hq-legend-line{width:17px;height:3px;display:inline-block;vertical-align:middle;margin-right:4px}.hq-table-wrap{overflow:auto}.hq-table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}.hq-table th{background:var(--color-surface-low);color:var(--color-text-variant);font-weight:800;text-align:left;padding:12px 11px;border-bottom:1px solid var(--color-border)}.hq-table td{padding:12px 11px;border-bottom:1px solid var(--color-border)}.hq-table tbody tr:last-child td{border-bottom:0}.hq-table tbody tr:hover{background:var(--color-accent-soft)}.hq-table .num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.hq-table .emph{font-weight:850}.hq-table .total-row{background:var(--color-accent-soft);font-weight:900}.hq-table .total-row td{border-top:2px solid var(--brand-yellow-strong)}.hq-status{font-size:11px;font-weight:800;border-radius:999px;padding:5px 9px;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}.hq-status.ok{background:#e9f6ed;color:#14763e}.hq-status.wait{background:#f4f5f7;color:#75808d}.hq-status.red{background:#fde8e8;color:#b42318}.hq-status.yellow{background:#fff6d7;color:#8a6700}.hq-status.normal{background:#eef2f5;color:#4a5969}.hq-status.none{background:#f4f5f7;color:#75808d}.hq-link{color:var(--accent-ink);text-decoration:underline;text-decoration-color:var(--brand-yellow-strong);text-underline-offset:3px;font-weight:800;border:0;background:transparent;cursor:pointer;font:inherit}.hq-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hq-strip-card{border:1px solid var(--color-border);border-radius:9px;padding:12px;background:var(--color-surface-low);min-height:70px}.hq-strip-card .label{color:var(--color-text-variant);font-size:12px}.hq-strip-card .value{font-size:23px;font-weight:900;padding-top:5px;font-family:var(--font-mono)}.hq-dept-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.hq-dept-card{border:1px solid var(--color-border);border-radius:10px;min-width:0;overflow:hidden}.hq-dept-top{background:var(--brand-black);color:#fff;padding:11px 13px;font-size:14px;font-weight:800;display:flex;justify-content:space-between}.hq-dept-top span{background:var(--brand-yellow);color:var(--brand-black);padding:3px 8px;border-radius:9px;font-weight:800}.hq-chip-grid{display:flex;flex-wrap:wrap;align-content:flex-start;gap:7px;padding:13px;min-height:106px}.hq-chip{display:inline-flex;gap:7px;align-items:center;background:var(--color-surface-low);border:1px solid var(--color-border);border-radius:7px;padding:7px 9px;font-size:12px;color:var(--color-text-variant)}.hq-chip b{font-weight:900;color:var(--color-text)}.hq-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--color-surface-low);padding:13px 14px;border-bottom:1px solid var(--color-border)}.hq-filters input,.hq-filters select{height:34px;min-height:34px;border-radius:7px;padding:0 10px;font-size:13px}.hq-filters input{flex:1;min-width:170px}.hq-filters select{min-width:120px}.hq-muted{font-size:12px;color:var(--color-text-muted)}.hq-empty{padding:27px;text-align:center;color:var(--color-text-muted);font-size:13px}.hq-spot{color:var(--color-error);font-weight:800}.hq-wrap{max-width:290px;white-space:normal!important}@media(max-width:1300px){.hq-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hq-dept-grid{grid-template-columns:1fr 1fr}.hq-kpi .k-number{font-size:32px}}@media(max-width:950px){.hq-page{padding:16px}.hq-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.hq-kpi:nth-child(2){border-right:0}.hq-kpi:nth-child(-n+2){border-bottom:1px solid var(--color-border)}.hq-dept-grid,.hq-summary-strip{grid-template-columns:1fr}}@media(max-width:650px){.hq-titlebar h1{font-size:23px}.hq-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hq-kpi .k-number{font-size:27px}.hq-metric-tile .t-num{font-size:19px}}.capa-page{min-width:0;width:auto;max-width:1700px;margin:0;padding:22px 24px 60px}.capa-titlebar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px;flex-wrap:wrap}.capa-titlebar h1{font-size:27px;line-height:1.35;margin:0;font-weight:900}.capa-titlebar h1 .sep{color:var(--color-text-muted);font-weight:400}.capa-section{margin:0 0 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;min-width:0}.capa-section h2{margin:0;font-size:17px;color:#fff;font-weight:850}.capa-section-head{background:var(--brand-black);color:#fff;min-height:50px;display:flex;align-items:center;justify-content:space-between;padding:10px 17px;gap:10px;flex-wrap:wrap}.capa-head-action{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.capa-body{padding:18px}.capa-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.capa-card{border:1px solid var(--color-border);border-radius:10px;padding:15px 13px;background:var(--color-surface-low);min-width:0}.capa-card .cap-k-label{font-size:12px;font-weight:800;color:var(--color-text-variant);min-height:32px}.capa-card .cap-k-value{font-size:29px;font-weight:900;color:var(--color-text);line-height:1.4;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.capa-card.capa-attn .cap-k-value{color:var(--color-error)}.capa-card.capa-watch .cap-k-value{color:var(--color-status-paused)}.capa-card.capa-ok .cap-k-value{color:var(--color-status-signed)}.capa-two{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.capa-table-wrap{width:100%;overflow-x:auto}.capa-table{width:100%;min-width:1040px;border-collapse:collapse;font-size:13px}.capa-table thead th{background:var(--color-surface-low);color:var(--color-text-variant);text-align:left;border-bottom:1px solid var(--color-border);border-right:0;padding:12px 13px;font-size:12px;font-weight:800;white-space:nowrap}.capa-table td{padding:12px 13px;white-space:nowrap;border-bottom:1px solid var(--color-border);border-right:0;max-width:300px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;background:transparent}.capa-table tbody tr:hover td{background:var(--color-accent-soft)}.capa-table tbody tr:last-child td{border-bottom:0}.capa-table td.capa-wrap{white-space:normal;min-width:165px}.capa-table tr.archived td{opacity:.55}.capa-empty{padding:30px;text-align:center;color:var(--color-text-muted);font-size:13px}.capa-action{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:7px;padding:7px 10px;font-family:inherit;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap;min-height:32px}.capa-action:hover{background:var(--color-surface-low)}.capa-action-yellow{border-color:var(--brand-yellow);background:var(--brand-yellow);color:var(--brand-black)}.capa-action-yellow:hover{background:var(--color-accent-dark)}.capa-action-dark{border-color:var(--brand-black);background:var(--brand-black);color:#fff}.capa-action-danger{border-color:var(--color-error);color:var(--color-error);background:transparent}.capa-action[disabled]{opacity:.55;cursor:not-allowed}.capa-pill{display:inline-block;white-space:nowrap;font-size:11px;font-weight:850;border-radius:999px;padding:5px 10px;color:#606e7c;background:#edf1f4}.capa-pill.low{background:#e8f5ec;color:#167345}.capa-pill.medium{background:#fff7df;color:#946500}.capa-pill.high{background:#fff0df;color:#a34b13}.capa-pill.critical{background:#fce6e7;color:#b42318}.capa-pill.pending{background:#edf1f5;color:#697481}.capa-pill.closed{background:#e8f5ec;color:#166b42}.capa-pill.archived{background:#e5e5e5;color:#555}.capa-filterbar{display:flex;gap:9px;flex-wrap:wrap;padding:13px 16px;background:var(--color-surface-low);border-bottom:1px solid var(--color-border);align-items:center}.capa-filterbar select,.capa-filterbar input{height:35px;min-height:35px;min-width:135px;border-radius:7px;padding:0 10px;font-size:13px}.capa-filterbar input[type=text]{flex:1;min-width:170px}.capa-filterbar label{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-variant)}.capa-filterbar label input{min-width:0;width:16px;height:16px;min-height:0}.capa-risk-wrap{display:flex;align-items:stretch;gap:13px;min-width:0}.capa-axis-y{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;justify-content:center;align-items:center;color:var(--color-text-variant);font-weight:800;font-size:12px;flex:0 0 22px}.capa-risk-main{flex:1;min-width:0}.capa-risk-grid{display:grid;grid-template-columns:35px repeat(5,minmax(0,1fr));grid-template-rows:repeat(5,52px) 25px;gap:4px;align-items:stretch}.capa-risk-grid .capa-axis-tick{display:flex;justify-content:center;align-items:center;font-size:12px;color:var(--color-text-muted);font-weight:750}.capa-risk-cell{border:1px solid transparent;border-radius:7px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-family:inherit;min-height:0;padding:0}.capa-risk-cell b{font-size:17px;color:#232323;line-height:1;font-family:var(--font-mono)}.capa-risk-cell small{font-size:9px;opacity:.6;color:#232323}.capa-risk-cell.low{background:#e7f3ec;border-color:#cfdfd5}.capa-risk-cell.medium{background:#fbf1d6;border-color:#ebdeb5}.capa-risk-cell.high{background:#f8e5d4;border-color:#eed4b6}.capa-risk-cell.critical{background:#f5d9d9;border-color:#eac6c6}.capa-risk-cell:hover,.capa-risk-cell.selected{outline:3px solid var(--color-primary);outline-offset:-2px}.capa-axis-x{text-align:center;color:var(--color-text-variant);font-size:12px;font-weight:800;padding-top:5px}.capa-risk-legend{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:11px;font-size:11px;color:var(--color-text-muted)}.capa-risk-legend em{height:11px;width:11px;display:inline-block;border-radius:2px;margin-right:4px;vertical-align:-1px}.capa-stage-row{display:grid;grid-template-columns:75px minmax(0,1fr) 25px;gap:10px;align-items:center;margin:0 0 13px;font-size:13px;color:var(--color-text-variant);font-weight:750}.capa-stage-row:last-child{margin-bottom:0}.capa-stage-row b{font-family:var(--font-mono);color:var(--color-text)}.capa-progress{height:11px;background:var(--color-surface-mid);border-radius:10px;overflow:hidden}.capa-progress-fill{height:100%;background:var(--brand-yellow);border-radius:10px;min-width:0;transition:width .25s ease-out}.capa-stacked-stat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 0}.capa-stacked-stat .ss{border:1px solid var(--color-border);border-radius:8px;padding:12px;min-width:0;background:var(--color-surface-low)}.capa-stacked-stat .ss .small{font-size:11px;color:var(--color-text-muted)}.capa-stacked-stat .ss strong{display:block;font-size:22px;margin-top:3px;font-family:var(--font-mono)}.capa-branch-panel{margin-top:18px}.capa-branch-panel .capa-table{min-width:850px}.capa-inline-btn{white-space:nowrap;min-width:80px;border:1px solid #e4cc78;background:#fff8dc;color:#74571a;font-size:12px;padding:6px 8px;border-radius:7px;font-weight:800;cursor:pointer;min-height:30px}.capa-inline-btn:hover{background:#f9eac0}.capa-inline-btn.linked{border-color:#b7dcc5;background:#e8f5ec;color:#167345}.col-capa{width:128px}.capa-dash-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.capa-small-card{background:var(--color-surface-low);border:1px solid var(--color-border);border-radius:9px;padding:13px}.capa-small-card label{font-size:12px;color:var(--color-text-variant);font-weight:800;display:block}.capa-small-card strong{display:block;font-size:23px;margin-top:5px;font-family:var(--font-mono)}.capa-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:100;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:24px 15px}.capa-modal{background:var(--color-surface);color:var(--color-text);border-radius:13px;width:min(960px,100%);min-height:170px;box-shadow:0 18px 60px #0000004d;overflow:hidden}.capa-modal-head{background:var(--brand-black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 19px;gap:10px;flex-wrap:wrap}.capa-modal-head h2{font-size:20px;font-weight:850;color:#fff;margin:0}.capa-modal-head .close{font-size:24px;color:#fff;background:transparent;border:0;cursor:pointer;line-height:1}.capa-modal-body{padding:18px 21px 22px}.capa-formgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 15px}.capa-field{min-width:0}.capa-field.span2{grid-column:span 2}.capa-field.span3{grid-column:1 / -1}.capa-field label{display:block;font-size:12px;color:var(--color-text-variant);font-weight:850;margin:0 0 5px}.capa-field input,.capa-field select,.capa-field textarea{width:100%;border-radius:7px;min-height:36px;padding:8px 10px;font-size:13px}.capa-field textarea{min-height:72px;resize:vertical}.capa-form-title{grid-column:1 / -1;font-size:15px;font-weight:900;color:var(--color-text);border-bottom:1px solid var(--color-border);padding:13px 0 6px;margin-top:6px}.capa-form-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:17px 0 0;margin-top:16px;border-top:1px solid var(--color-border)}.capa-form-foot .actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}.capa-form-error{font-size:12px;color:var(--color-error);font-weight:800;min-height:18px}.capa-form-risk{font-size:13px;font-weight:850;color:var(--color-text);min-height:36px;display:flex;align-items:center}.capa-combo{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.capa-hq-branch-link{background:transparent;color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;border:0;font-weight:850;font-family:inherit;cursor:pointer;padding:0}.capa-meta{font-size:12px;color:var(--color-text-muted);line-height:1.7}.capa-archived-note{background:#f1f1f1;color:#555;border-radius:8px;padding:10px 12px;font-size:12px;margin-bottom:12px}:root[data-theme=dark] .capa-archived-note{background:#3a3838;color:#d4c4ac}.capa-attach-list{display:flex;flex-direction:column;gap:6px}.capa-attach-row{display:flex;align-items:center;gap:10px;font-size:13px;padding:7px 10px;border:1px solid var(--color-border);border-radius:7px;background:var(--color-surface-low)}.capa-attach-row .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.capa-attach-row .meta{font-size:11px;color:var(--color-text-muted);white-space:nowrap}.capa-log{font-size:12px;max-height:220px;overflow:auto;border:1px solid var(--color-border);border-radius:7px}.capa-log-row{display:grid;grid-template-columns:136px 70px 90px 1fr;gap:8px;padding:7px 10px;border-bottom:1px solid var(--color-border)}.capa-log-row:last-child{border-bottom:0}.capa-log-row .t{font-family:var(--font-mono);color:var(--color-text-muted)}.capa-log-row .c{color:var(--color-text-variant);overflow-wrap:anywhere}@media(max-width:1420px){.capa-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.capa-two{grid-template-columns:1fr}}@media(max-width:980px){.capa-page{padding:15px}.capa-cards,.capa-formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.capa-risk-grid{grid-template-rows:repeat(5,46px) 25px}.capa-dash-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.capa-titlebar h1{font-size:21px}.capa-page{padding:13px}.capa-formgrid{grid-template-columns:1fr}.capa-field.span2,.capa-field.span3{grid-column:1 / -1}.capa-modal-overlay{padding:10px}.capa-stacked-stat{grid-template-columns:1fr 1fr}.capa-risk-grid{grid-template-rows:repeat(5,37px) 22px;gap:3px}.capa-risk-cell b{font-size:13px}.capa-log-row{grid-template-columns:1fr;gap:2px}}@media print{.store-rail,.hq-actions,.hq-filters,.capa-head-action,.capa-filterbar,.capa-action,.capa-inline-btn,.capa-modal-overlay,.col-capa,td.capa-cell{display:none!important}.hq-page,.capa-page{width:1550px!important;max-width:none!important;padding:12px!important;margin:0!important}.hq-section,.capa-section{break-inside:avoid!important}.hq-section-head,.capa-section-head{background:#1b1b1b!important;color:#fff!important}.hq-kpis,.hq-metrics-grid{grid-template-columns:repeat(4,1fr)!important}.hq-dept-grid{grid-template-columns:repeat(3,1fr)!important}.capa-cards{grid-template-columns:repeat(6,minmax(0,1fr))!important}.capa-two{grid-template-columns:1fr 1fr!important}.hq-table,.capa-table{font-size:11px;min-width:0!important}.hq-table th,.hq-table td,.capa-table th,.capa-table td{padding:8px!important;white-space:normal!important}.capa-branch-panel{break-before:auto!important}}
