    :root{--ink:#17201a;--muted:#68726b;--paper:#f4f2ec;--card:#fffefb;--line:#dddcd4;--green:#176b45;--green2:#2f9467;--lime:#d9f99d;--red:#b54747;--amber:#a56b16;--nav:#111713;--shadow:0 12px 40px rgba(24,32,26,.08)}
    *{box-sizing:border-box} body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px} button,input,select,textarea{font:inherit} button{cursor:pointer}
    .app{min-height:100vh;display:grid;grid-template-columns:236px minmax(0,1fr)}
    aside{position:sticky;top:0;height:100vh;padding:24px 16px;background:var(--nav);color:#eef4ef;display:flex;flex-direction:column}
    .brand{display:flex;align-items:center;gap:10px;padding:2px 10px 26px;font-weight:750;font-size:18px;letter-spacing:-.03em}.brand-mark{width:30px;height:30px;border-radius:9px;background:var(--lime);color:#163c26;display:grid;place-items:center;font-family:Georgia;font-size:20px}
    nav{display:grid;gap:5px}.nav-btn{border:0;background:transparent;color:#aeb9b0;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;text-align:left}.nav-btn:hover,.nav-btn.active{background:#243028;color:#fff}.nav-btn svg{width:18px;height:18px}.nav-badge{margin-left:auto;background:#39493e;border-radius:999px;padding:2px 7px;font-size:11px}.nav-btn.active .nav-badge{background:var(--lime);color:#173823}
    .side-foot{margin-top:auto;border-top:1px solid #2b352e;padding:18px 8px 0;color:#92a097;font-size:12px}.health{display:flex;align-items:center;gap:7px}.dot{width:7px;height:7px;border-radius:50%;background:#55d892;box-shadow:0 0 0 3px #55d89220}
    main{min-width:0}.topbar{height:72px;padding:0 34px;display:flex;align-items:center;border-bottom:1px solid var(--line);background:rgba(244,242,236,.92);backdrop-filter:blur(12px);position:sticky;top:0;z-index:5}.crumb{font-weight:650;font-size:15px}.top-actions{margin-left:auto;display:flex;gap:8px;align-items:center}
    .btn{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:9px;padding:9px 13px;font-weight:650;display:inline-flex;align-items:center;gap:7px}.btn:hover{border-color:#b7b9b1}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn.primary:hover{background:#125a3a}.btn.danger{color:var(--red)}.btn.small{padding:6px 10px;font-size:12px}.btn:disabled{opacity:.55;cursor:wait}
    .content{padding:30px 34px 60px;max-width:1500px;margin:auto}.view{display:none}.view.active{display:block}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--green);font-weight:800;font-size:11px;margin-bottom:6px}h1{font-family:Georgia,serif;font-weight:500;font-size:34px;letter-spacing:-.035em;margin:0}h2{font-family:Georgia,serif;font-weight:500;margin:0;font-size:22px}p.sub{color:var(--muted);margin:7px 0 0;line-height:1.5}
    .grid{display:grid;gap:16px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.metric{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:19px;box-shadow:0 1px 0 #fff}.metric-label{color:var(--muted);font-size:12px;font-weight:650}.metric-value{font-family:Georgia,serif;font-size:28px;letter-spacing:-.03em;margin-top:9px}.metric-foot{font-size:11px;color:var(--muted);margin-top:7px}.metric.warn{border-color:#e6c587;background:#fffaf0}.metric.warn .metric-value{color:var(--amber)}
    .panel{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 0 #fff}.panel-head{padding:18px 20px;border-bottom:1px solid #e8e7e0;display:flex;align-items:center;justify-content:space-between}.panel-body{padding:20px}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr)}
    .chart{height:240px;display:flex;align-items:flex-end;gap:10px;padding:22px 4px 0}.bar-group{flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px;position:relative;border-bottom:1px solid var(--line)}.bar{width:min(18px,40%);border-radius:4px 4px 0 0;min-height:2px}.bar.income{background:var(--green2)}.bar.expense{background:#d6b56f}.bar-label{position:absolute;bottom:-21px;font-size:10px;color:var(--muted)}.legend{display:flex;gap:16px;color:var(--muted);font-size:11px}.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px}
    .task-list{display:grid;gap:10px}.task{display:flex;gap:11px;padding:12px;border:1px solid #e7e6de;border-radius:11px;background:#fff}.task-icon{width:30px;height:30px;border-radius:9px;background:#f0f4ef;color:var(--green);display:grid;place-items:center;flex:0 0 auto}.task strong{font-size:13px}.task p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.35}
    .filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.control{border:1px solid var(--line);background:var(--card);border-radius:9px;padding:9px 11px;color:var(--ink)}input.control{min-width:220px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:13px 14px;border-bottom:1px solid #ecebe5;vertical-align:middle}.table tr:last-child td{border:0}.table tbody tr:hover{background:#faf9f5}.amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.amount.out{color:#4d5750}.amount.in{color:var(--green)}.merchant{font-weight:650}.secondary{font-size:11px;color:var(--muted);margin-top:3px}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:650;background:#eef1ec;color:#475249}.pill.pending,.pill.needs_review{background:#fff0cc;color:#81560d}.pill.approved,.pill.paid{background:#dff5e8;color:#17613e}.pill.quarantined{background:#f8dddd;color:#8b3434}.pill.excluded{background:#eee;color:#666}.category-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px}
    .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-card{padding:18px}.review-top{display:flex;justify-content:space-between;gap:12px}.review-merchant{font-weight:750;font-size:15px}.review-amount{font-family:Georgia;font-size:21px}.suggestion{margin:16px 0;padding:12px;border-radius:10px;background:#f1f5ef;border:1px solid #dfe8dd}.confidence{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.rationale{font-size:12px;color:#4e5a51;margin-top:5px}.review-actions{display:flex;gap:7px;align-items:center}.review-actions select{min-width:0;flex:1}
    .report-layout{grid-template-columns:minmax(0,1fr) 320px}.statement-section{padding:4px 0 18px}.statement-title{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:750;padding:12px 0 8px}.statement-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dotted #dcddd5}.statement-total{display:flex;justify-content:space-between;padding:14px 0;font-weight:800;border-top:2px solid var(--ink);margin-top:6px}.quality-score{width:112px;height:112px;border-radius:50%;margin:8px auto 18px;display:grid;place-items:center;background:conic-gradient(var(--green) var(--score),#e6e7df 0);position:relative}.quality-score:after{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--card)}.quality-score strong{z-index:1;font-family:Georgia;font-size:27px}.notice{padding:13px;border-radius:10px;background:#fff7e8;border:1px solid #ecd49f;color:#6c501a;font-size:12px;line-height:1.45}
    .empty{padding:54px 24px;text-align:center}.empty-mark{width:58px;height:58px;margin:auto;border-radius:17px;background:#edf3ec;color:var(--green);display:grid;place-items:center;font-size:25px}.empty h3{font-family:Georgia;font-size:22px;margin:16px 0 7px}.empty p{color:var(--muted);max-width:440px;margin:0 auto 18px;line-height:1.5}
    .mailbox-card{padding:22px 24px;background:linear-gradient(120deg,#15251b,#214b33);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}.mailbox-card strong{font-family:Georgia,serif;font-weight:500;font-size:28px;letter-spacing:-.02em}.mailbox-card p{color:#bfd0c3;margin:7px 0 0;max-width:720px;line-height:1.5}.mailbox-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--lime);font-weight:800;font-size:10px;margin-bottom:6px}.invoice-files{display:flex;gap:5px;flex-wrap:wrap}.file-chip{font-size:10px;border:1px solid var(--line);border-radius:6px;padding:3px 6px;background:#f8f7f2}.invoice-actions{display:flex;gap:5px;justify-content:flex-end}
    .settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field label{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:white;padding:10px}.field.full{grid-column:1/-1}.connect-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:12px}.connect-logo{width:42px;height:42px;border-radius:12px;background:#202a24;color:#fff;display:grid;place-items:center;font-weight:800}.connect-info{flex:1}.connect-info strong{display:block}.connect-info span{font-size:11px;color:var(--muted)}
    .copilot-toggle{position:fixed;right:24px;bottom:24px;z-index:11;width:52px;height:52px;border-radius:16px;border:0;background:var(--green);color:#fff;box-shadow:0 10px 30px #176b4544;font-size:21px}.copilot{position:fixed;right:20px;bottom:86px;width:min(390px,calc(100vw - 30px));max-height:650px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 80px #141b1660;z-index:10;display:none;overflow:hidden}.copilot.open{display:block}.copilot-head{padding:16px 18px;background:var(--nav);color:#fff}.copilot-head strong{display:block}.copilot-head span{font-size:11px;color:#adb9b0}.copilot-body{padding:16px;max-height:430px;overflow:auto}.copilot-welcome{color:var(--muted);line-height:1.5}.finding{padding:11px;margin:9px 0;border-radius:9px;background:#f5f4ef;font-size:12px}.finding strong{display:block;margin-bottom:4px}.copilot-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.copilot-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:9px;padding:10px}
    .toast{position:fixed;top:84px;right:24px;padding:12px 15px;background:#18241c;color:#fff;border-radius:10px;box-shadow:var(--shadow);z-index:30;transform:translateY(-15px);opacity:0;pointer-events:none;transition:.2s}.toast.show{transform:none;opacity:1}.toast.error{background:#8b3434}
    @media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.report-layout{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr}}
    @media(max-width:760px){.app{grid-template-columns:1fr}aside{position:fixed;z-index:20;left:0;right:0;bottom:0;top:auto;height:66px;padding:8px;background:var(--nav)}.brand,.side-foot{display:none}nav{grid-template-columns:repeat(7,1fr);gap:1px}.nav-btn{padding:7px 1px;justify-content:center;flex-direction:column;gap:2px;font-size:8px}.nav-btn svg{width:16px;height:16px}.nav-badge{display:none}.topbar{height:58px;padding:0 16px}.content{padding:20px 15px 90px}.metrics{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:14px}.metric-value{font-size:23px}.page-head{align-items:flex-start;flex-direction:column}.settings-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.top-actions .btn span{display:none}.copilot-toggle{bottom:80px}.copilot{bottom:140px}.mailbox-card{align-items:flex-start;flex-direction:column}.mailbox-card strong{font-size:21px;overflow-wrap:anywhere}}
