:root{color:#2a231c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--surface:#fffdf8;--surface-strong:#fff;--text:#2a231c;--muted:#7a6e5f;--border:#eee4d5;--accent:#e8693c;--accent-dark:#c5471e;--accent-soft:#fce9e1;--positive:#3f9e6e;--positive-soft:#e7f4ec;--info-soft:#e6f0f6;background:#fffbf4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#fffbf4;min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.login-shell{background:#fffbf4;place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{border:1px solid var(--border);background:#fff;border-radius:8px;gap:18px;width:min(640px,100%);padding:24px;display:grid;box-shadow:0 22px 50px -42px #2a231c73}.demo-access{gap:12px;display:grid}.demo-access h2{margin:4px 0 0;font-size:20px}.demo-role-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.demo-role-button{border:1px solid var(--border);min-width:0;min-height:76px;color:var(--text);cursor:pointer;text-align:center;background:#fffaf2;border-radius:8px;justify-items:center;gap:5px;padding:10px 8px;display:grid}.demo-role-button:hover,.demo-role-button:focus-visible{border-color:var(--accent);background:var(--accent-soft);outline:none}.demo-role-button strong,.demo-role-button span{overflow-wrap:anywhere;min-width:0}.demo-role-button strong{font-size:13px}.demo-role-button span{color:var(--muted);font-size:11px;line-height:1.25}.app-shell{background:var(--surface);grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:#fffbf4;padding:24px 18px}.brand-mark{background:var(--brand-accent,var(--accent));color:#fff;border-radius:8px;place-items:center;width:48px;height:48px;margin-bottom:28px;font-size:28px;font-weight:800;display:grid;box-shadow:0 16px 24px -18px #c5471ebf}.menu-toggle{border:1px solid var(--border);width:40px;height:40px;color:var(--text);cursor:pointer;background:#fffaf0;border-radius:8px;place-items:center;display:none}.menu-toggle-lines{gap:4px;width:18px;display:grid}.menu-toggle-lines span{background:currentColor;border-radius:999px;height:2px;display:block}.nav-stack{gap:16px;display:grid}.nav-group{gap:8px;display:grid}.nav-caption{color:#a99a86;letter-spacing:0;text-transform:uppercase;margin:14px 10px 4px;font-size:11px;font-weight:800}.nav-item{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;padding:11px 12px;font-size:14px;font-weight:650}.nav-item.active,.nav-item:hover{background:var(--accent-soft);color:var(--accent-dark)}.workspace{padding:30px}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:12px;min-width:0;display:flex}.company-switcher{color:var(--muted);gap:6px;font-size:12px;font-weight:800;display:grid}.company-switcher select{border:1px solid var(--border);min-width:220px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:10px 12px;font-size:14px}.eyeline{color:var(--muted);margin:0 0 6px;font-size:13px;font-weight:650}h1,h2,h3,p{margin-top:0}h1{color:var(--text);letter-spacing:0;margin-bottom:0;font-size:clamp(30px,4vw,44px);line-height:1}.primary-action{background:var(--brand-accent,var(--accent));color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;min-width:max-content;padding:12px 18px;font-size:14px;font-weight:750;box-shadow:0 16px 24px -18px #c5471ebf}.secondary-action{border:1px solid var(--border);color:var(--accent-dark);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;min-width:max-content;padding:11px 14px;font-size:14px;font-weight:800}.session-actions{align-items:center}.session-badge{border:1px solid var(--border);background:#fff;border-radius:8px;gap:2px;max-width:280px;padding:9px 12px;display:grid}.session-badge strong,.session-badge span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.session-badge strong{color:var(--text);font-size:13px}.session-badge span{color:var(--muted);font-size:12px;font-weight:700}.foundation-panel{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) 180px;align-items:stretch;gap:24px;padding:24px;display:grid;box-shadow:0 22px 50px -42px #2a231c73}.status-pill{background:var(--positive-soft);color:var(--positive);border-radius:8px;margin-bottom:12px;padding:5px 10px;font-size:12px;font-weight:800;display:inline-flex}.status-pill.warning{color:#9a5b00;background:#fff1d8}.foundation-panel h2{color:var(--text);letter-spacing:0;margin-bottom:10px;font-size:clamp(24px,3vw,34px);line-height:1.08}.foundation-copy{color:var(--muted);max-width:760px;margin-bottom:0;font-size:15px;line-height:1.6}.health-card{background:#fff6f2;border:1px solid #f1e9db;border-radius:8px;align-content:center;justify-items:start;padding:20px;display:grid}.health-value{color:var(--accent-dark);font-size:52px;font-weight:850;line-height:1}.health-label{color:var(--muted);font-size:13px;font-weight:700}.gate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.gate-card{border:1px solid var(--border);min-height:150px;color:var(--text);background:#fff;border-radius:8px;padding:16px}.widget-card{cursor:pointer;font:inherit;text-align:left;width:100%}.widget-card:hover,.widget-card:focus-visible{border-color:var(--brand-accent,var(--accent));outline:0;box-shadow:0 18px 34px -30px #2a231c8c}.gate-dot{background:var(--positive);border-radius:50%;width:10px;height:10px;margin-bottom:20px;display:block}.gate-dot.muted{background:#d6c8b5}.gate-card h3{color:var(--text);margin-bottom:8px;font-size:15px;line-height:1.25}.gate-card p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.5}.setup-dashboard{gap:18px;margin-top:18px;display:grid}.command-center{border:1px solid var(--border);background:#fff;border-radius:8px;gap:14px;padding:18px;display:grid}.command-center h2{color:var(--text);margin-bottom:8px;font-size:22px;line-height:1.15}.command-widget-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.widget-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.widget-value{color:var(--accent-dark);margin-bottom:8px;font-size:28px;line-height:1;display:block}.quick-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.source-panel{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);align-items:start;gap:14px;padding:16px;display:grid}.source-panel h3{color:var(--text);margin-bottom:0;font-size:18px}.source-list{gap:8px;display:grid}.source-row{border-top:1px solid #f3eadc;grid-template-columns:minmax(130px,.35fr) minmax(0,1fr);gap:10px;padding-top:8px;display:grid}.source-row strong,.source-row span{color:var(--text);overflow-wrap:anywhere;min-width:0;font-size:13px}.quick-action{border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:#fff;border-radius:8px;gap:6px;padding:14px;display:grid}.quick-action span{font-size:15px;font-weight:800}.quick-action small,.role-row small,.empty-copy,.save-state{color:var(--muted);font-size:13px;line-height:1.45}.field-hint{color:var(--muted);margin-top:2px;font-size:12px;font-weight:600;display:block}.language-grid,.checklist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.language-card,.check-row{border:1px solid var(--border);background:#fff;border-radius:8px;padding:14px}.language-card h3,.check-row h3{color:var(--text);margin-bottom:6px;font-size:15px}.language-card p,.check-row p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.45}.check-row{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;display:grid}.check-row .gate-dot{margin:4px 0 0}.setup-form{border:1px solid var(--border);background:#fff;border-radius:8px;gap:18px;padding:18px;display:grid}.setup-form h2,.role-panel h2{color:var(--text);margin-bottom:0;font-size:22px;line-height:1.15}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.form-grid label{color:var(--muted);gap:6px;font-size:12px;font-weight:750;display:grid}.form-grid input,.form-grid select{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#fffdf8;border-radius:8px;min-height:42px;padding:9px 10px}.setup-form label{color:var(--muted);gap:6px;font-size:12px;font-weight:750;display:grid}.setup-form input,.setup-form select{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#fffdf8;border-radius:8px;min-height:42px;padding:9px 10px}.wide-field{grid-column:span 2}.form-actions{align-items:center;gap:12px;display:flex}.role-activity-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:18px;display:grid}.role-panel{border:1px solid var(--border);background:#fff;border-radius:8px;gap:10px;padding:16px;display:grid}.role-row{border-top:1px solid #f3eadc;grid-template-columns:minmax(130px,.75fr) minmax(120px,.7fr) minmax(0,1fr);align-items:center;gap:10px;padding-top:10px;display:grid}.role-row strong{color:var(--text);overflow-wrap:break-word;min-width:0;font-size:14px;line-height:1.25}.role-row span{color:var(--text);overflow-wrap:break-word;min-width:0;font-size:14px}.role-row small{overflow-wrap:break-word;min-width:0}.accounting-core,.receivables-workspace{gap:18px;margin-top:18px;display:grid}.portal-shell{grid-template-columns:minmax(0,1fr)}.portal-shell .workspace,.portal-shell .accounting-grid,.portal-shell .role-panel,.portal-shell .invoice-row,.portal-shell .statement-row{min-width:0}.portal-shell .invoice-row,.portal-shell .statement-row,.portal-shell .receipt-row{grid-template-columns:repeat(auto-fit,minmax(124px,1fr))}.receivables-forms{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}.receivables-forms .setup-form{height:100%}.accounting-widget-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-actions{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:stretch;gap:12px;display:grid}.accounting-actions label{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:8px;gap:6px;padding:12px;font-size:12px;font-weight:750;display:grid}.accounting-actions input,.accounting-actions select,.accounting-form-grid input,.accounting-form-grid select{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#fffdf8;border-radius:8px;min-height:38px;padding:8px 10px}.compact-form{gap:12px}.report-range-form{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:repeat(2,minmax(160px,1fr)) auto;align-items:end;gap:12px;padding:14px;display:grid}.report-range-form label,.reconciliation-line-row label{color:var(--muted);gap:6px;font-size:12px;font-weight:750;display:grid}.report-range-form input,.reconciliation-line-row select{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#fffdf8;border-radius:8px;min-height:38px;padding:8px 10px}.accounting-form-grid{grid-template-columns:repeat(5,minmax(150px,1fr)) auto;align-items:end}.accounting-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.chart-account-form{gap:14px;display:grid}.compact-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-row,.ledger-row,.invoice-row,.statement-row{color:var(--text);border-top:1px solid #f3eadc;align-items:center;gap:10px;padding-top:10px;font-size:13px;display:grid}.accounting-row{grid-template-columns:minmax(150px,1fr) minmax(76px,.45fr) minmax(100px,.55fr) minmax(150px,.8fr)}.ledger-row{grid-template-columns:minmax(80px,.5fr) minmax(105px,.55fr) minmax(64px,.4fr) minmax(130px,1fr) minmax(90px,.5fr) minmax(90px,.5fr) minmax(100px,.55fr) minmax(160px,1fr)}.invoice-row{grid-template-columns:minmax(90px,.6fr) minmax(120px,1fr) minmax(80px,.55fr) minmax(100px,.65fr) minmax(90px,.55fr) minmax(90px,.55fr) minmax(130px,.8fr)}.statement-row{grid-template-columns:minmax(130px,1fr) minmax(100px,.7fr) minmax(90px,.6fr) minmax(90px,.6fr)}.statement-row strong,.statement-row span,.statement-row small{overflow-wrap:anywhere;min-width:0}.reconciliation-line-row{grid-template-columns:minmax(130px,1fr) minmax(95px,.55fr) minmax(90px,.5fr) minmax(110px,.6fr) minmax(220px,1.25fr) minmax(92px,.45fr)}.receipt-row{grid-template-columns:minmax(90px,.75fr) minmax(90px,.75fr) minmax(90px,.75fr) minmax(120px,1fr) minmax(90px,.65fr) minmax(130px,.8fr)}.statement-card{border-top:1px solid #f3eadc;gap:12px;padding-top:12px;display:grid}.statement-card>div:first-child{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.statement-card strong{color:var(--text)}.statement-card span{color:var(--muted);font-size:13px;font-weight:750}.statement-activity{gap:8px;display:grid}.accounting-row strong,.ledger-row strong,.invoice-row strong,.statement-row strong{font-size:13px}.accounting-row small,.ledger-row small,.invoice-row small,.statement-row small{color:var(--muted);font-size:12px}.table-action{border:1px solid var(--border);color:var(--accent-dark);cursor:pointer;text-align:center;background:#fffdf8;border-radius:8px;min-height:34px;padding:8px 10px;font-size:12px;font-weight:800}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.text-link{color:var(--accent-dark);overflow-wrap:anywhere;font-size:13px;font-weight:800}.readiness-panel{background:#fffaf0;border:1px solid #f3dcaf;border-radius:8px;grid-template-columns:minmax(0,.6fr) minmax(0,1fr);align-items:start;gap:18px;margin-bottom:18px;padding:18px;display:grid}.readiness-panel h2{color:var(--text);margin-bottom:0;font-size:22px;line-height:1.15}.readiness-panel p:last-child{color:var(--muted);margin:0;font-size:14px;line-height:1.55}@media (width<=900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:1fr;align-items:start;gap:12px;padding:14px;display:grid}.brand-mark{width:36px;height:36px;margin-bottom:0;font-size:21px}.nav-stack{flex-wrap:wrap;gap:6px;padding-bottom:2px;display:flex;overflow-x:visible}.nav-group{flex-wrap:wrap;flex:100%;gap:4px;min-width:0;display:flex}.nav-caption{display:none}.nav-item{white-space:nowrap;flex:none;width:auto;padding:8px;font-size:13px}.workspace{padding:16px}.foundation-panel,.gate-grid,.readiness-panel,.widget-grid,.command-widget-grid,.source-panel,.receivables-forms,.accounting-actions,.accounting-grid,.accounting-form-grid,.report-range-form,.quick-action-grid,.language-grid,.checklist-grid,.form-grid,.role-activity-grid{grid-template-columns:1fr;min-width:0}.gate-card,.widget-card,.source-panel,.role-panel,.health-card,.setup-form,.accounting-core{min-width:0}.widget-value{overflow-wrap:anywhere;font-size:24px}.wide-field{grid-column:auto}.role-row,.accounting-row,.ledger-row,.invoice-row,.statement-row,.receipt-row,.reconciliation-line-row,.source-row{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}.topbar-actions{flex-direction:column;align-items:stretch;width:100%}.company-switcher select{width:100%;min-width:0}}@media (width<=640px){body{min-width:0}.app-shell{width:100%;overflow-x:hidden}.sidebar{z-index:20;grid-template-columns:auto auto;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;position:sticky;top:0}.brand-mark{width:32px;height:32px;font-size:19px}.menu-toggle{justify-self:end;display:grid}.nav-stack{grid-column:1/-1;gap:8px;width:100%;padding:8px 0 4px;display:none;overflow-x:visible}.nav-stack.is-open{display:grid}.nav-group{grid-template-columns:1fr;gap:6px;margin-bottom:0;display:grid}.nav-caption{margin:4px 2px 0;font-size:10px;display:block}.nav-item{overflow-wrap:normal;text-align:left;white-space:nowrap;justify-content:flex-start;align-items:center;min-width:0;min-height:44px;padding:11px 12px;display:flex}.workspace{padding:12px}.topbar{gap:14px;margin-bottom:16px}.topbar-actions{gap:10px}.eyeline,h1{overflow-wrap:anywhere}h1{font-size:28px;line-height:1.05}.session-badge{width:100%;max-width:100%}.foundation-panel,.command-center,.setup-form,.readiness-panel,.role-panel,.source-panel,.health-card,.gate-card,.language-card,.check-row,.quick-action{padding:14px}.health-value{font-size:40px}.gate-card{min-height:auto}.widget-grid,.quick-action-grid,.form-grid,.accounting-actions,.accounting-form-grid,.receivables-forms,.report-range-form{gap:10px}.primary-action,.secondary-action,.table-action{justify-content:center;align-items:center;width:100%;min-width:0;display:inline-flex}.row-actions,.form-actions{flex-direction:column;align-items:stretch}.accounting-row,.ledger-row,.invoice-row,.statement-row,.receipt-row,.reconciliation-line-row{gap:6px}}
