:root{--button-height:46px;--cg-accounting-navy:#0F2747;--cg-accounting-slate:#64748B;--cg-accounting-off-white:#F8F9FB;--navy:var(--cg-accounting-navy);--navy2:#19385F;--ink:#1c2733;--muted:var(--cg-accounting-slate);--line:#dfe5eb;--soft:var(--cg-accounting-off-white);--white:#fff;--ok:#0f7b52;--danger:#a33434;--accent:#316da6;--shadow:0 12px 32px rgba(15,39,71,.10)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#eef2f6;color:var(--ink)}a{color:inherit}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,var(--navy),#091A31);color:#fff;padding:22px 16px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;padding:4px 8px 24px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#fff;overflow:hidden;padding:3px}.brand-logo{display:block;width:100%;height:100%;object-fit:contain;border-radius:9px}.brand strong,.brand small{display:block}.brand small{opacity:.65;margin-top:2px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:11px 12px;border-radius:10px;text-decoration:none;color:#dbe4ee}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}.nav-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.5;margin:18px 12px 6px}.sidebar-note{margin-top:auto;font-size:12px;opacity:.55;padding:12px}.main{min-width:0}.topbar{min-height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 28px;gap:20px}.context-title{font-weight:750}.context-sub{font-size:13px;color:var(--muted);margin-top:3px}.top-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.user-chip{font-size:13px;color:var(--muted);padding:0 5px}.content{padding:28px;max-width:1400px}.hero{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:22px;padding:30px;box-shadow:var(--shadow);margin-bottom:22px}.hero h1{margin:0 0 8px;font-size:30px}.hero p{margin:0;color:#d2dbea;max-width:760px;line-height:1.6}.hero-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.metric{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:16px;padding:16px}.metric strong{display:block;font-size:21px}.metric span{font-size:12px;color:#ccd6e4}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 7px 18px rgba(26,44,66,.04)}.card h2,.card h3{margin-top:0}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--button-height);border:0;border-radius:10px;padding:0 16px;text-decoration:none;font-weight:650;line-height:1.15;cursor:pointer;background:var(--accent);color:#fff}.button.subtle{background:var(--soft);color:var(--ink);border:1px solid var(--line)}.button.danger{background:var(--danger)}.stack{display:grid;gap:14px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #cfd8e2;border-radius:10px;background:#fff;font:inherit}.field input:focus,.field select:focus{outline:2px solid #bdd7ed;border-color:#7caed4}.notice{border-radius:12px;padding:12px 14px;margin-bottom:16px;background:#eef6ff;border:1px solid #c9dff4}.notice.error{background:#fff1f1;border-color:#efc2c2;color:#812d2d}.notice.ok{background:#eefaf4;border-color:#bfe4d2;color:#185f44}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:14px}.table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.pill{display:inline-block;padding:5px 9px;border-radius:999px;background:var(--soft);font-size:12px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#edf3f9,#e6edf5)}.login-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.login-card .brandline{display:flex;gap:12px;align-items:center;margin-bottom:22px}.login-card h1{margin:0 0 8px}.login-card p{margin:0 0 22px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.kv{display:grid;grid-template-columns:180px 1fr;gap:9px 18px}.kv div:nth-child(odd){color:var(--muted)}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--soft);padding:2px 6px;border-radius:6px}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-note{display:none}.topbar{padding:14px 18px}.content{padding:18px}.grid,.hero-grid{grid-template-columns:1fr}}@media(max-width:600px){.sidebar nav{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.kv{grid-template-columns:1fr}.hero{padding:22px}}

.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.page-head h1{margin:0 0 5px}.page-head p{margin:0}.small{font-size:12px}.check{display:flex;align-items:center;gap:8px;font-size:13px}.check input{width:auto}.ok-pill{background:#e9f8f0;color:#176347}.lock-pill{background:#f2f0eb;color:#685a36}.compact{min-height:36px;padding:0 12px;font-size:13px}.inline-form{display:inline}.period-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.journal-header-grid{display:grid;grid-template-columns:180px 1fr 2fr;gap:14px}.journal-lines select,.journal-lines input{width:100%;padding:9px 10px;border:1px solid #cfd8e2;border-radius:9px;background:#fff;font:inherit}.money-col{text-align:right!important;white-space:nowrap}.money-input{text-align:right;min-width:110px}.icon-button{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--soft);cursor:pointer;font-size:20px}.table-link{color:#265f96;font-weight:700;text-decoration:none}.table-link:hover{text-decoration:underline}.form-actions{display:flex;justify-content:flex-end}.authority-card{margin-top:18px;border-left:4px solid var(--accent)}.authority-card p{color:var(--muted)}.reversal-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.reversal-form .field{min-width:180px}@media(max-width:900px){.period-form,.journal-header-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.form-actions{justify-content:stretch}.form-actions .button{width:100%}}

.journals-head{margin-bottom:22px}.journals-head .button{min-height:var(--button-height)}
.contact-list-head{align-items:flex-end}.contact-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px;margin-bottom:24px}.contact-search .field{min-width:0}.contact-actions{display:flex;gap:10px;flex-wrap:wrap}.split-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.address-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.address-wide{grid-column:span 2}.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.role-card{border:1px solid var(--line);background:var(--soft);border-radius:14px;padding:14px}.role-card span,.role-card small{display:block;color:var(--muted)}.role-card strong{display:block;font-size:20px;margin:5px 0}.contact-role-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.detail-row{margin-top:18px}.contact-notes{white-space:normal;line-height:1.6;margin:0;color:var(--muted)}textarea{resize:vertical}@media(max-width:900px){.contact-search{grid-template-columns:1fr;align-items:stretch}.contact-search .button{width:100%}.split-two,.address-grid,.role-grid{grid-template-columns:1fr}.address-wide{grid-column:auto}}

/* 01E — quote workflow + contact role spacing */
.role-card{display:grid;grid-template-columns:minmax(110px,1fr) minmax(150px,auto) auto;gap:18px;align-items:center}
.role-card span,.role-card strong,.role-card small{display:block;margin:0}
.role-card strong{font-size:18px}
.quote-lines-head{align-items:center;margin-bottom:12px}
.quote-lines input,.quote-lines select{width:100%;padding:9px 10px;border:1px solid #cfd8e2;border-radius:9px;background:#fff;font:inherit}
.quote-lines tfoot th{border-top:2px solid var(--line)}
.quote-notes{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.quote-notes p{margin-bottom:0;color:var(--muted);line-height:1.6}
@media(max-width:700px){.role-card{grid-template-columns:1fr;gap:5px}.quote-lines-head{align-items:flex-start}}

/* 01E2 — secure customer quote links + role card cleanup */
.role-card{grid-template-columns:minmax(110px,1fr) auto}
.acceptance-link-box{margin:16px 0}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.copy-row input{width:100%;padding:11px 12px;border:1px solid #cfd8e2;border-radius:10px;background:#fff;font:inherit}
@media(max-width:700px){.copy-row{grid-template-columns:1fr}.copy-row .button{width:100%}}

/* 01F — native sales invoices */
.invoice-source-note{margin-top:10px}.invoice-posted{border-left-color:var(--ok)}

/* 01G — customer receipts + invoice allocations */
.allocation-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr) auto;gap:12px;align-items:end;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.soft-rule{border:0;border-top:1px solid var(--line);margin:20px 0}.payment-grid{align-items:start}
@media(max-width:900px){.allocation-form{grid-template-columns:1fr}.allocation-form .button{width:100%}}

/* 01J — banking, immutable statement evidence + assisted reconciliation */
.banking-grid{align-items:start}.banking-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.banking-summary .card{padding:16px}.banking-summary strong{display:block;font-size:22px;margin-top:4px}.banking-search{grid-template-columns:minmax(0,1fr) minmax(180px,240px) auto;margin-top:20px}.evidence-key{overflow-wrap:anywhere}.revoke-match-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.raw-evidence{white-space:pre-wrap;word-break:break-word;background:var(--soft);border-radius:12px;padding:14px;overflow:auto;font-size:12px}.card summary{cursor:pointer}.banking-summary+.detail-row{margin-top:18px}@media(max-width:900px){.banking-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.banking-search,.revoke-match-form{grid-template-columns:1fr}.banking-search .button,.revoke-match-form .button{width:100%}}@media(max-width:600px){.banking-summary{grid-template-columns:1fr}}

/* 01K — financial reports + ledger drill-through */
.report-filter-card{margin-bottom:22px}.report-filter-grid{display:grid;grid-template-columns:minmax(260px,2fr) minmax(170px,1fr) minmax(210px,auto) auto;gap:12px;align-items:end}.report-filter-range{grid-template-columns:minmax(260px,2fr) minmax(160px,1fr) minmax(160px,1fr) auto}.ledger-filter-grid{display:grid;grid-template-columns:minmax(250px,2fr) minmax(260px,2fr) minmax(150px,1fr) minmax(150px,1fr) auto;gap:12px;align-items:end}.report-check{min-height:var(--button-height);padding:0 4px}.report-status-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 2px 14px;flex-wrap:wrap}.report-table tfoot th{border-top:2px solid var(--line);font-weight:800}.report-grid{align-items:start}.report-total-card{padding:0}.report-total-card>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px}.report-total-card strong{font-size:26px}.negative-amount{color:var(--danger)}.danger-pill{background:#fff1f1;color:#812d2d}.ledger-summary{margin-top:0}.ledger-table .opening-row{background:var(--soft)}.ledger-table td:nth-child(3){min-width:240px}.ledger-table td:nth-child(5){white-space:nowrap}@media(max-width:1050px){.report-filter-grid,.report-filter-range,.ledger-filter-grid{grid-template-columns:1fr 1fr}.report-filter-grid .button,.report-filter-range .button,.ledger-filter-grid .button{width:100%}}@media(max-width:700px){.report-filter-grid,.report-filter-range,.ledger-filter-grid{grid-template-columns:1fr}.report-total-card>div{align-items:flex-start;flex-direction:column}.report-total-card strong{font-size:22px}}

/* 01R — VAT return review packs + supporting schedule exports */
.review-pack-actions{display:flex;gap:10px;flex-wrap:wrap}.review-export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.review-export-grid .button{width:100%}.review-pack-title{margin-bottom:18px}.print-only{display:none}.review-register .table td:nth-child(4){min-width:220px}.review-register .table td:nth-child(5){min-width:130px}.review-meta-grid{align-items:start}.review-summary-grid{align-items:start}
@media(max-width:900px){.review-export-grid{grid-template-columns:1fr}.review-pack-actions{width:100%}.review-pack-actions .button{flex:1}}
@media print{
    body{background:#fff!important}.sidebar,.topbar,.no-print{display:none!important}.shell{display:block!important}.main{display:block!important}.content{padding:0!important;max-width:none!important}.print-only{display:block!important}.review-pack-page .hero{background:#fff!important;color:#111!important;border:1px solid #bbb;box-shadow:none!important;padding:18px!important}.review-pack-page .hero p,.review-pack-page .metric span{color:#444!important}.review-pack-page .hero-grid{grid-template-columns:repeat(3,1fr)!important}.review-pack-page .metric{border:1px solid #bbb;background:#fff!important;color:#111!important}.review-pack-page .card{box-shadow:none!important;border-color:#bbb!important;break-inside:avoid}.review-pack-page .grid{grid-template-columns:repeat(2,1fr)!important}.review-pack-page .table-wrap{overflow:visible!important}.review-pack-page .table th,.review-pack-page .table td{font-size:10px!important;padding:6px 5px!important}.review-pack-page .notice{border:1px solid #bbb!important;background:#fff!important;color:#111!important}.review-pack-page a{color:#111!important;text-decoration:none!important}.review-pack-page .no-print-link{font-weight:700}.review-register{break-inside:auto!important}.review-register tr{break-inside:avoid}.review-pack-title h1{margin:0 0 4px;font-size:22px}
}

/* CG-ACCOUNTING-COMMERCIAL-02A — Dashboard + Daily Action Centre */
.dashboard-hero{padding:28px}.dashboard-hero-copy{max-width:850px}.dashboard-eyebrow{display:inline-block;margin-bottom:7px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a9bdd3}.dashboard-eyebrow.dark{color:#718093}.dashboard-action-centre{padding:0;overflow:hidden;margin-bottom:18px}.dashboard-action-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 22px 18px;border-bottom:1px solid var(--line)}.dashboard-action-head h2{margin:0 0 6px}.dashboard-action-head p{margin:0;max-width:800px;line-height:1.55}.dashboard-control-chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dashboard-chip{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 11px;border-radius:999px;background:var(--soft);border:1px solid var(--line);font-size:12px;color:#566575;white-space:nowrap}.dashboard-chip strong{color:var(--ink)}.dashboard-chip.danger{background:#fff1f1;border-color:#efc2c2;color:#812d2d}.dashboard-chip.danger strong{color:#812d2d}.dashboard-chip.warn{background:#fff8e8;border-color:#ecdcae;color:#735d22}.dashboard-chip.warn strong{color:#735d22}.dashboard-read-warning{margin:16px 22px 0}.dashboard-action-list{display:grid}.dashboard-action-row{display:grid;grid-template-columns:4px minmax(0,1fr) minmax(110px,auto) auto;gap:16px;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line)}.dashboard-action-row:last-child{border-bottom:0}.dashboard-action-row:hover{background:#fbfcfd}.dashboard-action-indicator{align-self:stretch;min-height:42px;border-radius:99px;background:#9aabba}.priority-high .dashboard-action-indicator{background:var(--danger)}.priority-medium .dashboard-action-indicator{background:#a97718}.priority-low .dashboard-action-indicator{background:var(--ok)}.dashboard-action-copy{min-width:0}.dashboard-action-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.dashboard-action-copy h3{margin:0;font-size:15px}.dashboard-action-copy p{margin:5px 0 0;font-size:13px;color:var(--muted);line-height:1.45}.dashboard-priority-pill{padding:4px 8px;font-size:10px;font-weight:750}.priority-high .dashboard-priority-pill{background:#fff1f1;color:#812d2d}.priority-medium .dashboard-priority-pill{background:#fff8e8;color:#735d22}.priority-low .dashboard-priority-pill{background:#eefaf4;color:#185f44}.dashboard-action-value{text-align:right;white-space:nowrap}.dashboard-action-value strong{display:block;font-size:16px}.dashboard-action-value span{display:block;margin-top:2px;font-size:11px;color:var(--muted)}.dashboard-action-link{white-space:nowrap}.dashboard-all-clear{display:flex;align-items:center;gap:13px;padding:22px}.dashboard-clear-mark{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e9f8f0;color:#176347;font-weight:900}.dashboard-all-clear strong,.dashboard-all-clear span{display:block}.dashboard-all-clear span{margin-top:3px;font-size:13px;color:var(--muted)}.dashboard-quick-access{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px}.dashboard-quick-copy{max-width:520px}.dashboard-quick-copy h2{margin:0 0 4px;font-size:17px}.dashboard-quick-copy p{margin:0;font-size:13px}.dashboard-quick-links{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.dashboard-quick-links .button{min-height:36px}
@media(max-width:1050px){.dashboard-action-head{flex-direction:column}.dashboard-control-chips{justify-content:flex-start}.dashboard-action-row{grid-template-columns:4px minmax(0,1fr) auto}.dashboard-action-value{grid-column:2}.dashboard-action-link{grid-column:3;grid-row:1 / span 2}.dashboard-quick-access{align-items:flex-start;flex-direction:column}.dashboard-quick-links{justify-content:flex-start}}
@media(max-width:700px){.dashboard-action-row{grid-template-columns:4px minmax(0,1fr);gap:12px}.dashboard-action-value{grid-column:2;text-align:left}.dashboard-action-link{grid-column:2;grid-row:auto;width:100%}.dashboard-action-head{padding:18px}.dashboard-read-warning{margin:14px 18px 0}.dashboard-control-chips{width:100%}.dashboard-chip{flex:1;justify-content:center}.dashboard-quick-links{display:grid;grid-template-columns:1fr 1fr;width:100%}.dashboard-quick-links .button{width:100%}}
@media(max-width:480px){.dashboard-quick-links{grid-template-columns:1fr}}
/* CG-ACCOUNTING-COMMERCIAL-02D1 — Locked search/action alignment pattern.
   Search inputs and their Search/Filter CTA stay on one row on normal screens;
   stacking is reserved for narrow/mobile layouts. */
.search-action-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.search-action-row .field{min-width:0}
.search-action-row .button{min-height:var(--button-height);height:var(--button-height);white-space:nowrap}
@media(max-width:700px){.search-action-row{grid-template-columns:1fr}.search-action-row .button{width:100%}}



/* CG-ACCOUNTING-COMMERCIAL-02E — Banking Assistance + Matching Improvements */
.warn-pill{background:#fff8e8;color:#735d22}
.eyebrow{display:inline-block;margin-bottom:7px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero .eyebrow{color:#a9bdd3}
.banking-assistant-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.banking-assistant-filter{display:grid;grid-template-columns:minmax(180px,240px) minmax(200px,280px) minmax(0,1fr);gap:12px;align-items:end;margin-bottom:18px}
.search-action-grow{min-width:0}
.banking-assistant-table td:nth-child(2){min-width:260px}
.banking-assistant-table td:nth-child(4){min-width:250px}
.banking-assistant-amount{margin-top:6px;font-weight:800;white-space:nowrap}
.assistance-detail{margin-top:6px;max-width:420px;line-height:1.4}
.banking-assistance-card{border-left-color:#6b86a5}
.bank-assistance-next{display:grid;gap:4px;margin-top:16px;padding:14px 16px;border-radius:12px;background:var(--soft);border:1px solid var(--line)}
.bank-assistance-next span{color:var(--muted);line-height:1.45}
.banking-search-02e{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:12px;align-items:end;margin-top:20px}
.banking-status-filter{min-width:0}
@media(max-width:1000px){.banking-assistant-filter{grid-template-columns:1fr 1fr}.banking-assistant-filter .search-action-grow{grid-column:1 / -1}}
@media(max-width:700px){.banking-assistant-filter,.banking-search-02e{grid-template-columns:1fr}.banking-assistant-filter .search-action-grow{grid-column:auto}.banking-assistant-metrics{grid-template-columns:1fr}}

/* CG-ACCOUNTING-COMMERCIAL-02E2 — Global single-line action button rule.
   Action areas should reflow before CTA labels wrap onto multiple lines. */
.button{white-space:nowrap}
.page-head>.button,.page-head>.contact-actions,.top-actions>.button{flex:0 0 auto}
.page-head .contact-actions .button{flex:0 0 auto}

/* CG-ACCOUNTING-COMMERCIAL-02F — Bank Rules + Controlled Classification Memory */
.banking-assistant-metrics.has-rules{grid-template-columns:repeat(4,minmax(0,1fr))}
.bank-rules-filter{grid-template-columns:minmax(180px,240px) minmax(0,1fr)}
.bank-rules-filter>.field{min-width:0}
@media(max-width:1000px){.banking-assistant-metrics.has-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.banking-assistant-metrics,.bank-rules-filter{grid-template-columns:1fr}}

/* CG-ACCOUNTING-COMMERCIAL-02G — Cash Position + Short-Term Cash Forecast */
.cash-forecast-hero-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.cash-forecast-hero-grid .metric strong{font-size:19px}
.cash-forecast-section{margin-top:18px}
.cash-forecast-summary-grid{margin-top:18px}
.cash-in-pill{background:#eefaf4;color:#185f44}
.cash-out-pill{background:#fff1f1;color:#812d2d}
.cash-forecast-table td,.cash-forecast-table th{white-space:nowrap}
@media(max-width:1200px){.cash-forecast-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.cash-forecast-hero-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cash-forecast-hero-grid{grid-template-columns:1fr}.cash-forecast-table td,.cash-forecast-table th{white-space:normal}}

/* CG-ACCOUNTING-COMMERCIAL-02H — Budgets + Budget vs Actual */
.budget-home-grid{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);align-items:start}
.budget-hero{margin-bottom:18px}
.budget-meta-card{margin-bottom:18px}
.budget-grid-card{margin-top:18px}
.budget-entry-table{min-width:1500px}
.budget-entry-table th,.budget-entry-table td{vertical-align:middle}
.budget-entry-table th:first-child,.budget-entry-table td:first-child{position:sticky;left:0;z-index:2;background:#fff;min-width:250px}
.budget-entry-table thead th:first-child{z-index:3;background:#fff}
.budget-amount-input{width:112px;min-width:112px;text-align:right;font-variant-numeric:tabular-nums}
.budget-save-bar{display:flex;justify-content:flex-end;margin:18px 0}
.budget-controls-card{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.budget-controls-card .actions{justify-content:flex-end}
.budget-report-filter{margin-bottom:18px}
.budget-report-filter form{max-width:520px}
.budget-variance-hero{margin-bottom:18px}
.budget-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.budget-monthly-card,.budget-account-variance{margin-top:18px}
.budget-monthly-card .table th,.budget-monthly-card .table td{white-space:nowrap}
@media(max-width:1000px){.budget-home-grid{grid-template-columns:1fr}.budget-controls-card{align-items:flex-start;flex-direction:column}.budget-controls-card .actions{justify-content:flex-start}}
@media(max-width:700px){.budget-summary-grid{grid-template-columns:1fr}.budget-report-filter form{max-width:none}.budget-controls-card .actions{width:100%}.budget-controls-card .button{width:100%}.budget-entry-table th:first-child,.budget-entry-table td:first-child{position:static}.budget-monthly-card .table th,.budget-monthly-card .table td{white-space:normal}}

/* CG-ACCOUNTING-COMMERCIAL-02H3 — Global related page-action grouping rule.
   Peer header/page CTAs stay together on one horizontal row where practical;
   action groups wrap only when the viewport genuinely requires it. */
.page-action-group{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto;flex-wrap:nowrap}
.page-action-group .button{flex:0 0 auto}
@media(max-width:900px){.page-head .page-action-group{width:100%;justify-content:flex-start;flex-wrap:wrap}}

/* CG-ACCOUNTING-COMMERCIAL-02J — Management Reporting Pack + Business Performance Dashboard */
.management-date-filter{margin-bottom:18px}.management-date-filter form{max-width:560px}
.management-hero-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.management-hero-grid .metric strong{font-size:19px}
.management-section{margin-top:18px}.management-summary-grid{align-items:start}.management-big-value{font-size:28px;font-weight:800;margin:8px 0 18px}.management-big-value span{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:4px}
.management-attention-card{padding:0;overflow:hidden}.management-attention-card>.split{padding:20px 22px 16px;border-bottom:1px solid var(--line);align-items:center}.management-attention-card h2{margin:0 0 5px}.management-attention-card p{margin:0}.management-attention-list{display:grid}.management-attention-row{display:grid;grid-template-columns:4px minmax(0,1fr) minmax(120px,auto) auto;gap:14px;align-items:center;padding:15px 22px;border-bottom:1px solid var(--line)}.management-attention-row:last-child{border-bottom:0}.management-attention-indicator{align-self:stretch;min-height:42px;border-radius:99px;background:#9aabba}.management-attention-row.priority-high .management-attention-indicator{background:var(--danger)}.management-attention-row.priority-medium .management-attention-indicator{background:#a97718}.management-attention-row.priority-low .management-attention-indicator{background:var(--ok)}.management-attention-row p{margin:4px 0 0;font-size:13px;color:var(--muted);line-height:1.45}.management-attention-amount{text-align:right;font-weight:800;white-space:nowrap}.management-clear{display:flex;align-items:center;gap:14px;padding:22px}.management-clear-mark{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e9f8f0;color:#176347;font-weight:900}.management-clear strong,.management-clear span{display:block}.management-clear span{margin-top:3px;font-size:13px;color:var(--muted)}.management-card-actions{margin-top:18px;justify-content:flex-start}.management-monthly-table th,.management-monthly-table td{white-space:nowrap}
.management-pack-cover{padding:34px}.management-pack-cover h1{margin:6px 0 4px;font-size:32px}.management-pack-cover>p{margin:0 0 24px;color:var(--muted)}.management-pack-cover-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.management-pack-cover-meta>div{background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:14px}.management-pack-cover-meta span,.management-pack-cover-meta strong{display:block}.management-pack-cover-meta span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:5px}.management-pack-section{margin-top:18px}.management-pack-section>h2{padding-bottom:10px;border-bottom:1px solid var(--line)}.management-pack-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.management-pack-kpis>div{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:14px}.management-pack-kpis span,.management-pack-kpis strong{display:block}.management-pack-kpis span{font-size:12px;color:var(--muted);margin-bottom:5px}.management-pack-kpis strong{font-size:19px}.management-pack-two{align-items:start}
@media(max-width:1200px){.management-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.management-pack-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.management-hero-grid{grid-template-columns:1fr 1fr}.management-attention-row{grid-template-columns:4px minmax(0,1fr) auto}.management-attention-amount{grid-column:2;text-align:left}.management-attention-row .button{grid-column:3;grid-row:1 / span 2}.management-pack-cover-meta,.management-pack-two{grid-template-columns:1fr}}
@media(max-width:600px){.management-hero-grid,.management-pack-kpis{grid-template-columns:1fr}.management-attention-row{grid-template-columns:4px minmax(0,1fr)}.management-attention-row .button{grid-column:2;grid-row:auto;width:100%}.management-monthly-table th,.management-monthly-table td{white-space:normal}.management-date-filter form{max-width:none}}
@media print{body.management-pack-print{background:#fff}body.management-pack-print .sidebar,body.management-pack-print .topbar,body.management-pack-print .management-pack-actions{display:none!important}body.management-pack-print .shell{display:block}body.management-pack-print .main{display:block}body.management-pack-print .content{padding:0;max-width:none}body.management-pack-print .card{box-shadow:none;border-color:#cfd8e2}body.management-pack-print .management-pack-section,body.management-pack-print .management-pack-cover{break-inside:avoid;page-break-inside:avoid}body.management-pack-print .management-pack-section{margin-top:12px}body.management-pack-print a{text-decoration:none;color:inherit}}

/* CG-ACCOUNTING-BRAND-01 — Concept 2 / CG Ledger Mark rollout */
.brand.brand-ledger{display:flex;align-items:center;padding:4px 6px 17px;min-height:58px}
.brand-logo-full{display:block;width:100%;max-width:194px;height:auto;max-height:52px;object-fit:contain;object-position:left center}
.brand-compact-identity{display:none;align-items:center;gap:10px;min-width:0}
.brand-logo-compact{display:block;width:38px;height:38px;object-fit:contain;flex:0 0 38px}
.brand-copy{display:block;min-width:0}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font-size:14px;line-height:1.2}.brand-copy small{font-size:11px;margin-top:2px;color:rgba(255,255,255,.66)}
.login-page{background:linear-gradient(135deg,#F8F9FB,#e9eef4)}
.login-brand{display:grid;gap:8px;margin-bottom:24px}.login-brand-logo{display:block;width:min(310px,100%);height:auto}.brand-tagline{font-size:14px;line-height:1.45;color:#64748B;font-weight:600}.setup-brand-context{font-size:12px;margin-top:1px}
.management-pack-brand{display:block;width:min(300px,72%);height:auto;margin-bottom:20px}
@media(max-width:900px){.brand.brand-ledger{padding:2px 6px 14px;min-height:52px}.brand-logo-full{display:none}.brand-compact-identity{display:flex}}
@media print{.management-pack-brand{width:230px;margin-bottom:14px}}

/* CG-ACCOUNTING-COMMERCIAL-02N — Accounting Health + Exception Centre */
.accounting-health-hero-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.accounting-health-section,.accounting-health-sources,.accounting-health-clear{margin-top:18px}
.accounting-health-integrity{margin-bottom:18px}
.accounting-health-integrity .split{align-items:center}
.accounting-health-integrity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.accounting-health-integrity-grid>div{background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:14px}
.accounting-health-integrity-grid span,.accounting-health-integrity-grid strong{display:block}
.accounting-health-integrity-grid span{font-size:12px;color:var(--muted);margin-bottom:6px}
.accounting-health-integrity-grid strong{font-size:19px}
.accounting-health-section{padding:0;overflow:hidden}
.accounting-health-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px 16px;border-bottom:1px solid var(--line)}
.accounting-health-section-head h2{margin:0 0 5px}.accounting-health-section-head p{margin:0}
.accounting-health-category-pills{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.health-danger-pill{background:#fff1f1;color:#812d2d}.health-warn-pill{background:#fff7e7;color:#7a5714}
.accounting-health-list{display:grid}
.accounting-health-row{display:grid;grid-template-columns:4px minmax(0,1fr) minmax(120px,auto) auto;gap:14px;align-items:center;padding:15px 22px;border-bottom:1px solid var(--line)}
.accounting-health-row:last-child{border-bottom:0}
.accounting-health-indicator{align-self:stretch;min-height:46px;border-radius:99px;background:#9aabba}
.accounting-health-row.priority-high .accounting-health-indicator{background:var(--danger)}
.accounting-health-row.priority-medium .accounting-health-indicator{background:#a97718}
.accounting-health-row.priority-low .accounting-health-indicator{background:var(--ok)}
.accounting-health-copy{min-width:0}.accounting-health-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.accounting-health-copy p{margin:5px 0 3px;color:var(--muted);font-size:13px;line-height:1.45}
.accounting-health-copy small{display:block;color:var(--muted);font-size:11px}
.accounting-health-value{text-align:right;white-space:nowrap}.accounting-health-value strong,.accounting-health-value span{display:block}.accounting-health-value strong{font-size:17px}.accounting-health-value span{font-size:11px;color:var(--muted);margin-top:3px}
.accounting-health-source-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.accounting-health-boundary{margin-top:18px}
@media(max-width:1100px){.accounting-health-hero-grid,.accounting-health-integrity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.accounting-health-section-head{align-items:flex-start;flex-direction:column}.accounting-health-category-pills{flex-wrap:wrap}.accounting-health-row{grid-template-columns:4px minmax(0,1fr) auto}.accounting-health-value{grid-column:2;text-align:left}.accounting-health-row .button{grid-column:3;grid-row:1 / span 2}}
@media(max-width:600px){.accounting-health-hero-grid,.accounting-health-integrity-grid{grid-template-columns:1fr}.accounting-health-row{grid-template-columns:4px minmax(0,1fr)}.accounting-health-row .button{grid-column:2;grid-row:auto;width:100%}.accounting-health-value{grid-column:2}.accounting-health-integrity .split{grid-template-columns:1fr}.accounting-health-integrity .page-action-group{justify-content:flex-start;flex-wrap:wrap}}


/* CG-ACCOUNTING-COMMERCIAL-02P1 — Login Brand Responsive Containment */
.login-card{overflow:hidden}
.login-brand{min-width:0;overflow:hidden}
.login-brand-logo{display:block!important;width:100%!important;max-width:280px!important;height:auto!important;max-height:92px!important;object-fit:contain!important;object-position:left center!important}
@media(max-width:520px){.login-card{padding:22px}.login-brand-logo{max-width:240px!important}}

/* CG-ACCOUNTING-COMMERCIAL-02P2 — Production Readiness metric-card layout polish */
.release-gate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.release-gate-grid-hero{margin-top:24px}
.release-gate-grid-spaced{margin-top:12px}
.release-gate-metric{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:16px;padding:16px;min-width:0}
.release-gate-metric strong,.release-gate-metric span{display:block}
.release-gate-metric strong{font-size:21px;color:#fff;line-height:1.2}
.release-gate-metric span{margin-top:5px;font-size:12px;color:#ccd6e4;line-height:1.35}
.release-evidence-metric{background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:14px;min-width:0}
.release-evidence-metric span,.release-evidence-metric strong,.release-evidence-metric small{display:block}
.release-evidence-metric span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:6px}
.release-evidence-metric strong{font-size:18px;line-height:1.3;overflow-wrap:anywhere}
.release-evidence-metric small{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.35}
@media(max-width:900px){.release-gate-grid{grid-template-columns:1fr}}


/* CG-ACCOUNTING-COMMERCIAL-02P6 — Entity Backup control-card layout polish */
.backup-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch;margin-bottom:18px}
.backup-control-card{display:flex;flex-direction:column;min-width:0;margin:0}
.backup-control-card h2{margin-bottom:8px}
.backup-card-copy{margin:0 0 18px;line-height:1.55}
.backup-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.backup-meta-item{background:var(--soft);border:1px solid var(--line);border-radius:13px;padding:13px 14px;min-width:0}
.backup-meta-item span,.backup-meta-item strong{display:block}
.backup-meta-item span{font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:6px}
.backup-meta-item strong{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.backup-meta-entity{grid-column:1 / -1}
.backup-card-actions{display:flex;justify-content:flex-end;margin-top:auto;padding-top:18px}
.backup-card-actions .button{min-width:150px;white-space:nowrap}
.backup-validation-form{margin-top:auto;padding-top:2px}
.backup-validation-form .button{justify-self:end;min-width:150px;white-space:nowrap}
@media(max-width:1050px){.backup-control-grid{grid-template-columns:1fr}}
@media(max-width:600px){.backup-meta-grid{grid-template-columns:1fr}.backup-meta-entity{grid-column:auto}.backup-card-actions{justify-content:stretch}.backup-card-actions .button,.backup-validation-form .button{width:100%;min-width:0}}


/* CG-ACCOUNTING-COMMERCIAL-02P9.1 — Shared branded confirmation modal CSS fix */
.cg-confirm[hidden]{display:none!important}
.cg-confirm{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px}
.cg-confirm__backdrop{position:absolute;inset:0;background:rgba(10,25,45,.58);backdrop-filter:blur(3px)}
.cg-confirm__dialog{position:relative;width:min(560px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(15,39,71,.24);padding:28px;outline:none}
.cg-confirm__eyebrow{font-size:11px;font-weight:800;letter-spacing:.09em;color:#316da6;margin-bottom:10px}
.cg-confirm__dialog h2{margin:0 0 10px;color:#10243d;font-size:26px}
.cg-confirm__dialog p{margin:0;color:var(--muted);font-size:16px;line-height:1.55}
.cg-confirm__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}
.cg-confirm__actions .button{min-width:112px}
.cg-modal-open{overflow:hidden}
@media(max-width:600px){.cg-confirm{padding:14px}.cg-confirm__dialog{padding:22px;border-radius:16px}.cg-confirm__actions{flex-direction:column-reverse}.cg-confirm__actions .button{width:100%}}

/* CG-ACCOUNTING-COMMERCIAL-02P13B1 — Entity document branding + payment authority */
.document-brand-card,.document-logo-review-card{min-width:0}
.document-logo-preview,.document-logo-review-preview{display:flex;align-items:center;justify-content:center;min-height:150px;margin:16px 0;padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.document-logo-preview img,.document-logo-review-preview img{display:block;max-width:100%;max-height:150px;width:auto;height:auto;object-fit:contain}
.document-logo-review-preview{min-height:190px;background:linear-gradient(135deg,#fff,#f6f8fb)}
.document-logo-review-preview img{max-height:180px}
.document-pending-panel{margin:16px 0;padding:16px;border:1px solid #cfdbe7;border-radius:14px;background:#f7fafc;line-height:1.5}
.document-pending-panel h3{margin-top:0}
.document-upload-form,.payment-details-form{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.payment-confirm-panel form{margin-top:16px}
.compact-kv{margin-top:14px}
.document-logo-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.compact-list{margin:8px 0 0;padding-left:20px}.compact-list li+li{margin-top:5px}
@media(max-width:980px){.document-logo-review-grid{grid-template-columns:1fr}}
@media(max-width:650px){.document-logo-preview,.document-logo-review-preview{min-height:120px;padding:16px}.document-logo-preview img,.document-logo-review-preview img{max-height:120px}.payment-confirm-panel .kv{grid-template-columns:1fr}.document-logo-review-card .actions{display:grid;grid-template-columns:1fr}.document-logo-review-card .actions .button{width:100%}}

/* CG-ACCOUNTING-COMMERCIAL-02Q1B — Working List Filters */
.working-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-10px 4px 22px}
.working-filter-label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:2px}
.working-filter{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border-radius:999px;border:1px solid var(--line);background:#fff;color:#4f6073;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}
.working-filter:hover{background:var(--soft);color:var(--ink)}
.working-filter.active{background:#eaf3fb;border-color:#a9c9e4;color:#245f94}
@media(max-width:700px){.working-filter-row{margin-top:-8px;margin-left:0;margin-right:0}.working-filter-label{width:100%;margin-bottom:2px}.working-filter{flex:1 1 auto}}


/* 02Q1C — Professional workspace + workflow polish */
.content{padding:22px 24px;max-width:1800px;width:100%}
.topbar{min-height:70px;padding:11px 24px}
.grid{gap:14px}
.card{padding:18px;border-radius:16px}
.stack{gap:12px}
.page-head{gap:14px;margin-bottom:14px}
.detail-row,.authority-card{margin-top:14px}
.table th,.table td{padding:10px 9px}
.contact-search{margin-bottom:18px}
.workflow-primary-form{display:inline-flex;margin:0}
.workspace-form{gap:14px}
.workspace-form>.card{width:100%}
.compact-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;align-items:start}
.compact-form-grid .span-2{grid-column:span 2}
.compact-form-grid .span-4{grid-column:1/-1}
.compact-form-grid textarea{min-height:88px}
.workspace-form .field input,.workspace-form .field select,.workspace-form .field textarea{padding:10px 11px}
.workspace-form .form-actions{margin-top:0}
@media(max-width:1150px){.compact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-form-grid .span-4{grid-column:1/-1}}
@media(max-width:700px){.content{padding:16px}.topbar{padding:12px 16px}.card{padding:16px}.compact-form-grid{grid-template-columns:1fr}.compact-form-grid .span-2,.compact-form-grid .span-4{grid-column:auto}.workflow-primary-form,.workflow-primary-form .button{width:100%}}


/* 02Q2C1 — Forms + tables usability polish */
.document-workspace-form>.card,.cash-workspace-form>.card{width:100%}
.document-workspace-form .compact-form-grid,.cash-workspace-form .compact-form-grid{align-items:start}
.document-workspace-form .field textarea,.cash-workspace-form .field textarea{min-height:82px}
.required-note{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.required-note .required-mark,.required-field>label::after{color:var(--danger);font-weight:800}
.required-field>label::after{content:" *"}
.section-head-compact{margin-bottom:12px;align-items:end}
.statement-filter-grid{grid-template-columns:minmax(260px,2fr) minmax(160px,1fr) minmax(160px,1fr)}
.statement-filter-actions{justify-content:flex-start;margin-top:12px}
.statement-filter-actions .button{min-width:150px}
.supplier-credit-notes textarea{min-height:90px}
@media(max-width:1050px){.statement-filter-grid{grid-template-columns:1fr 1fr}.statement-filter-grid .field:first-child{grid-column:1/-1}}
@media(max-width:700px){.statement-filter-grid{grid-template-columns:1fr}.statement-filter-grid .field:first-child{grid-column:auto}.statement-filter-actions .button{width:100%}}

/* 02Q2D1 — Daily dashboard density + one-click routine workflow polish. */
.dashboard-operational-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:-2px 0 16px}.dashboard-focus-metric{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}.dashboard-focus-metric span,.dashboard-focus-metric strong,.dashboard-focus-metric small{display:block}.dashboard-focus-metric span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.dashboard-focus-metric strong{margin-top:5px;font-size:20px;font-variant-numeric:tabular-nums}.dashboard-focus-metric small{margin-top:3px;color:var(--muted);line-height:1.35}
.dashboard-common-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;margin-bottom:16px}.dashboard-common-actions>div:first-child strong{display:block;font-size:15px}.dashboard-common-action-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dashboard-common-action-links .button{min-height:36px}
.dashboard-action-overflow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 22px;background:#f8fafc;border-top:1px solid var(--line);font-size:12px}.dashboard-action-overflow span{color:var(--muted);text-align:right}.dashboard-control-watch{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 22px;border-top:1px solid var(--line);background:#fbfcfd}.dashboard-control-watch>span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.dashboard-control-watch>div{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.dashboard-control-watch a{font-size:12px;font-weight:750;text-decoration:none;color:var(--navy)}.dashboard-control-watch a:hover{text-decoration:underline}
@media(max-width:900px){.dashboard-operational-context{grid-template-columns:1fr}.dashboard-common-actions{align-items:flex-start;flex-direction:column}.dashboard-common-action-links{justify-content:flex-start;width:100%}.dashboard-action-overflow,.dashboard-control-watch{align-items:flex-start;flex-direction:column}.dashboard-action-overflow span{text-align:left}.dashboard-control-watch>div{justify-content:flex-start}}
@media(max-width:600px){.dashboard-common-action-links{display:grid;grid-template-columns:1fr 1fr}.dashboard-common-action-links .button{width:100%}.dashboard-control-watch>div{display:grid;grid-template-columns:1fr 1fr;width:100%}}
@media(max-width:430px){.dashboard-common-action-links,.dashboard-control-watch>div{grid-template-columns:1fr}}

/* 02Q2D2 — Reports & controls dashboard card presentation polish. */
.dashboard-quick-access{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:24px;padding:18px 20px}
.dashboard-quick-copy{max-width:none;padding:3px 0}
.dashboard-quick-copy h2{margin:0 0 5px;font-size:17px}
.dashboard-quick-copy p{margin:0;max-width:440px;font-size:13px;line-height:1.45}
.dashboard-quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;justify-content:stretch}
.dashboard-quick-links:has(> :nth-child(7)){grid-template-columns:repeat(5,minmax(0,1fr))}
.dashboard-quick-links .button{width:100%;min-height:40px;height:auto;padding:9px 12px;justify-content:center;text-align:center;line-height:1.2;white-space:normal}
@media(max-width:1450px){.dashboard-quick-access{grid-template-columns:minmax(240px,.6fr) minmax(0,1.4fr)}.dashboard-quick-links:has(> :nth-child(7)){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1120px){.dashboard-quick-access{grid-template-columns:1fr}.dashboard-quick-copy p{max-width:720px}.dashboard-quick-links,.dashboard-quick-links:has(> :nth-child(7)){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.dashboard-quick-links,.dashboard-quick-links:has(> :nth-child(7)){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.dashboard-quick-links,.dashboard-quick-links:has(> :nth-child(7)){grid-template-columns:1fr}}

/* CG-ACCOUNTING-COMMERCIAL-02Q2K1 — Shared loading + submission safety */
.cg-submit-status{position:fixed;right:20px;bottom:20px;z-index:10020;max-width:min(420px,calc(100vw - 32px));padding:12px 16px;border:1px solid #c9dff4;border-radius:12px;background:#fff;color:var(--navy);box-shadow:var(--shadow);font-size:14px;font-weight:700}
.cg-is-loading,.cg-submit-locked{cursor:wait!important;pointer-events:none;opacity:.72}
form[aria-busy="true"]{cursor:progress}
@media(max-width:600px){.cg-submit-status{left:16px;right:16px;bottom:16px;max-width:none}}

/* 02Q2L1 — regression close-out: shared keyboard focus + skip-link visibility */
.skip-link{position:fixed;left:16px;top:12px;z-index:10000;transform:translateY(-160%);padding:10px 14px;border-radius:10px;background:#fff;color:var(--navy);border:2px solid var(--accent);font-weight:750;text-decoration:none;box-shadow:var(--shadow)}
.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #7caed4;outline-offset:3px}


/* CG-ACCOUNTING-COMMERCIAL-03B1C — compact commercial administration cards */
.commercial-compact-hero{padding:24px 30px;margin-bottom:20px}
.commercial-compact-hero h1{font-size:28px;margin-bottom:6px}
.commercial-compact-hero p{line-height:1.5;max-width:900px}
.commercial-compact-hero .commercial-compact-metrics{margin-top:18px;gap:12px}
.commercial-compact-hero .commercial-four-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.commercial-compact-hero .metric{padding:13px 16px;min-height:72px;display:flex;flex-direction:column;justify-content:center}
.commercial-compact-hero .metric strong{font-size:20px;line-height:1.15}
.commercial-compact-hero .metric span{margin-top:5px;line-height:1.25}

.package-version-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(460px,.95fr);gap:26px;align-items:center;padding:26px 30px}
.package-version-hero .package-version-copy p{max-width:760px}
.package-version-hero .package-version-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.package-version-hero .stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:15px 16px;min-height:94px;display:flex;flex-direction:column;justify-content:center}
.package-version-hero .stat strong{display:block;font-size:24px;line-height:1.1;color:#fff}
.package-version-hero .stat span{display:block;margin-top:7px;font-size:12px;line-height:1.3;color:#ccd6e4}
.package-version-catalogue{padding:18px 20px}
.package-version-catalogue .section-heading{margin-bottom:8px}
.package-version-catalogue .section-heading h2{margin-bottom:5px}
.package-version-catalogue .section-heading p{margin:0;line-height:1.45}
.package-version-catalogue .table th,.package-version-catalogue .table td{padding-top:10px;padding-bottom:10px}
.package-authority-card{padding:16px 20px;background:#eef6ff;border-color:#c9dff4}
.package-authority-card h2{font-size:20px;margin:0 0 7px}
.package-authority-card p{margin:0;line-height:1.5}

@media(max-width:1100px){
 .commercial-compact-hero .commercial-four-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .package-version-hero{grid-template-columns:1fr}
 .package-version-hero .package-version-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
 .commercial-compact-hero{padding:22px}
 .commercial-compact-hero .commercial-four-metrics,.package-version-hero .package-version-stats{grid-template-columns:1fr}
 .package-version-hero{padding:22px;gap:18px}
 .package-version-hero .stat{min-height:0}
}

/* 03C3A — Customer Billing + Subscription Centre */
.billing-hero-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.billing-section{margin-top:18px}
.billing-summary-grid{align-items:stretch}
.billing-usage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.usage-tile{border:1px solid var(--line);background:var(--soft);border-radius:13px;padding:14px}
.usage-tile strong,.usage-tile span{display:block}.usage-tile strong{font-size:20px;color:var(--navy)}.usage-tile span{font-size:12px;color:var(--muted);margin-top:4px}
.billing-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.billing-package-card{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;display:flex;flex-direction:column;gap:14px}
.billing-package-card.current{border:2px solid var(--accent);padding:17px;box-shadow:0 10px 28px rgba(49,109,166,.10)}
.billing-package-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.billing-package-head h3{margin:0 0 4px}.billing-package-head .muted{font-size:13px;line-height:1.5}
.billing-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}.billing-price-row strong{font-size:25px;color:var(--navy)}.billing-price-row strong small{font-size:12px}.billing-price-row span{font-size:12px;color:var(--muted)}
.billing-limits{display:flex;gap:8px;flex-wrap:wrap}.billing-limits span{font-size:12px;background:var(--soft);border-radius:999px;padding:6px 9px}
.billing-package-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.billing-package-actions form{display:inline-flex}.button.disabled{opacity:.58;cursor:default}
.billing-request-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid var(--line)}.billing-request-row:first-of-type{border-top:0}
.subscription-state{margin-bottom:18px}.billing-boundary{margin-top:18px}
@media(max-width:1000px){.billing-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-package-grid{grid-template-columns:1fr}.billing-usage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.billing-hero-grid,.billing-usage-grid{grid-template-columns:1fr}.billing-request-row{align-items:flex-start;flex-direction:column}.billing-package-actions,.billing-package-actions form,.billing-package-actions .button{width:100%}.billing-price-row{align-items:flex-start;flex-direction:column}}
