:root{font-family:Inter,system-ui,sans-serif;color:#e5eefb;background:radial-gradient(circle at top,rgba(59,130,246,.22),transparent 28%),linear-gradient(180deg,#081120,#0b1220 48%,#111827);line-height:1.5;font-weight:400}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,select{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:320px minmax(0,1fr);background:transparent}.sidebar{position:sticky;top:0;min-height:100vh;padding:28px 20px;display:grid;gap:20px;background:#060c18f0;border-right:1px solid rgba(148,163,184,.12);z-index:40}.sidebar-header h1{margin:12px 0 6px;font-size:28px;line-height:1.1}.sidebar-copy,.mobile-hero p{margin:0;color:#9fb3d1;font-size:14px}.sidebar-footer,.nav-list,.page-stack,.panel-stack,.metric,.card,.card article,.file-input-wrap,.timeline-item{display:grid;gap:12px}.nav-item{width:100%;text-align:left;border-radius:18px;border:1px solid rgba(148,163,184,.14);background:#0f172a94;color:#dbe7f7;padding:14px 16px;box-shadow:none}.nav-item strong{display:flex;align-items:center;gap:10px}.nav-icon{display:inline-flex;width:22px;justify-content:center}.nav-item span{display:block;color:#8ea4c4;font-size:13px;margin-top:4px}.nav-item-active{background:linear-gradient(135deg,#2563eb38,#1d4ed86b);border-color:#60a5fa73}.main-panel{padding:24px;display:grid;gap:18px}.topbar{display:flex;justify-content:space-between;align-items:center}.topbar-title{display:flex;align-items:center;gap:14px}.topbar-title h2{margin:4px 0 0;font-size:20px;color:#f8fbff}.menu-toggle{display:none;width:44px;height:44px;padding:0;border-radius:14px;background:#0f172ad9;border:1px solid rgba(148,163,184,.18);box-shadow:none}.mobile-hero{display:none;padding:18px;border-radius:22px;background:#0f172acc;border:1px solid rgba(148,163,184,.12)}.page-section{display:none}.page-section.active{display:block}.eyebrow{display:inline-flex;padding:6px 12px;border-radius:999px;background:#3b82f629;border:1px solid rgba(96,165,250,.3);color:#93c5fd;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.card,.stat-card{background:#0f172ad1;border:1px solid rgba(148,163,184,.16);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 60px #02061759}.card{border-radius:24px;padding:20px}.card article,.file-input-wrap{background:#0f172a8a;border:1px solid rgba(148,163,184,.12);border-radius:18px;padding:16px}.card>h2,.card article>h3{margin:0}.card>h2{font-size:22px}.stat-card{border-radius:18px;padding:16px 18px}.stat-label,.metric-label{color:#8fa6c7;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.section-subtitle{margin:0;color:#93a9c8;font-size:13px}label{display:grid;gap:8px;font-size:13px;color:#aebfda}input,select{width:100%;padding:12px 14px;border-radius:14px;border:1px solid rgba(148,163,184,.18);background:#02061773;color:#f8fbff;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}input:focus,select:focus{border-color:#60a5fad9;box-shadow:0 0 0 4px #3b82f626;background:#0f172af2}button{border:0;border-radius:14px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:11px 16px;font-weight:600;cursor:pointer;box-shadow:0 14px 24px #2563eb38;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}button:hover{transform:translateY(-1px);box-shadow:0 18px 30px #2563eb47}button:disabled{opacity:.5;cursor:default;transform:none;box-shadow:none}.row,.badge-row,.timeline-payload{display:flex;gap:10px;flex-wrap:wrap}.grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.content-grid,.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.metric{padding:14px;border-radius:16px;background:#02061752;border:1px solid rgba(148,163,184,.1)}.metric-value{font-size:18px;font-weight:700;color:#f8fbff}.list-card{margin:0;padding-left:18px;color:#c8d6eb}.list-button{width:100%;text-align:left;display:grid;gap:4px;background:#0f172a94;border:1px solid rgba(148,163,184,.16);box-shadow:none}.list-button-active{border-color:#60a5fad9;background:#1e40af2e}.list-button-highlight{animation:ledgerPulse 1.1s ease-in-out 2;border-color:#34d399e0;background:#05966929}.list-button small,.timeline-item small{color:#9cb0cc}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#2563eb29;border:1px solid rgba(96,165,250,.26);color:#bfdbfe;font-size:11px;letter-spacing:.04em}.badge-strong{background:#10b98133;border-color:#34d39952;color:#bbf7d0}.timeline-item{padding:12px 14px;border-radius:14px;background:#02061752;border:1px solid rgba(148,163,184,.08)}.error-banner{border:1px solid rgba(248,113,113,.35);background:#7f1d1d47;color:#fecaca;padding:12px 14px;border-radius:14px}.empty-state{display:grid;gap:6px;padding:18px;border-radius:16px;border:1px dashed rgba(148,163,184,.2);background:#0f172a57;color:#c8d6eb}.empty-state span{color:#8ea4c4;font-size:13px}.warning-text{color:#fdba74}.success-text{color:#6ee7b7;font-size:14px;margin:0}.low-confidence input{border-color:#f973168c;background:#7c2d122e}.hint{font-size:12px;color:#8ea4c4;margin:0}.checkbox-row{display:flex;align-items:center;gap:10px;color:#dbe7f7}.checkbox-row input{width:18px;height:18px;padding:0;border-radius:6px}.demo-receipt-preview{width:min(100%,280px);border-radius:16px;border:1px solid rgba(148,163,184,.14);background:#fff}.backdrop{display:none}@keyframes ledgerPulse{0%{transform:scale(1);box-shadow:0 0 #10b98100}50%{transform:scale(1.01);box-shadow:0 0 0 6px #10b9811f}to{transform:scale(1);box-shadow:0 0 #10b98100}}@media(max-width:1080px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,86vw);transform:translate(-100%);transition:transform .22s ease}.sidebar-open{transform:translate(0)}.menu-toggle,.mobile-hero,.backdrop{display:block}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0206178c;border:0;z-index:30;padding:0;border-radius:0;box-shadow:none}}@media(max-width:720px){.main-panel{padding:16px}.grid-two,.content-grid,.metric-grid{grid-template-columns:1fr}.card{padding:16px;border-radius:20px}.topbar-title h2{font-size:17px}}
