@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_2fe1ab3d-module__-T-KAq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_2fe1ab3d-module__-T-KAq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(../media/65c558afe41e89d6-s.113htgw8u-emy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(../media/14e23f9b59180572-s.08.c8psu~gif9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b49b0d9b851e4899-s.0yfy_qj1.2qn0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2a65768255d6b625-s.p.14by5b4al-y~f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/65c558afe41e89d6-s.113htgw8u-emy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/14e23f9b59180572-s.08.c8psu~gif9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b49b0d9b851e4899-s.0yfy_qj1.2qn0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2a65768255d6b625-s.p.14by5b4al-y~f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Fallback;src:local(Times New Roman);ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.0%;size-adjust:111.26%}.playfair_display_a1277770-module__7tsztG__className{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.playfair_display_a1277770-module__7tsztG__variable{--font-playfair:"Playfair Display", "Playfair Display Fallback"}
:root{--green-900:#0e5b4e;--green-800:#0c4f44;--green-700:#147365;--teal-600:#1fa48c;--teal-soft:#e2f3ee;--sage-500:#7db792;--sage-soft:#e7f2e9;--orange-500:#f09a4b;--orange-400:#ffb26b;--orange-soft:#fceedd;--lavender-500:#8b7adb;--lavender-400:#ab9cf2;--lavender-soft:#efecfb;--sand-100:#f6f1e7;--charcoal:#2b2e33;--ink-600:#5e6662;--ink-400:#8b928d;--page:#faf7f0;--surface:#fff;--line:#e9e2d2;--line-soft:#f0ebde;--row-hover:#faf8f2;--danger:#b5442f;--danger-soft:#fbede8;--r-card:14px;--r-ctl:9px;--ds-shadow-card:0 1px 2px #0e5b4e0a, 0 10px 28px #0e5b4e0d;--font-ui:var(--font-inter), "Inter", ui-sans-serif, system-ui, sans-serif;--font-display:var(--font-playfair), "Playfair Display", Georgia, serif}
.num{font-variant-numeric:tabular-nums}.ds-shell{background:var(--page);color:var(--charcoal);font-family:var(--font-ui);grid-template-columns:228px minmax(0,1fr);min-height:100vh;font-size:14px;line-height:1.5;display:grid}.ds-shell *,.ds-shell :before,.ds-shell :after{box-sizing:border-box}:where(.ds-shell a){color:inherit;text-decoration:none}.ds-main{align-content:start;min-width:0;display:grid}.ds-page{align-content:start;gap:18px;width:100%;max-width:1140px;margin:0 auto;padding:26px 36px 40px;display:grid}.ds-topbar,.ds-mnav-shell{display:none}.sb{background:linear-gradient(178deg, var(--green-900), var(--green-800));color:#fff;grid-template-rows:auto 1fr auto;gap:20px;height:100vh;min-height:0;padding:22px 14px 16px;display:grid;position:sticky;top:0}.sb-brand{align-items:center;gap:11px;padding:0 8px;display:flex}.sb-brand img{width:34px;height:auto;display:block}.sb-brand-name{font-family:var(--font-display);letter-spacing:.01em;color:#fdfbf6;font-size:19px;font-weight:600;line-height:1}.sb-brand-sub{color:#f6f1e78c;letter-spacing:.02em;margin-top:4px;font-size:10px;display:block}.sb-nav{align-content:start;gap:2px;min-height:0;display:grid}.sb-label{color:#f6f1e76b;letter-spacing:.1em;text-transform:uppercase;padding:14px 10px 6px;font-size:10.5px;font-weight:600}.sb-item{color:#f6f1e7bd;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:500;display:flex}.sb-item svg{opacity:.85;flex:none;width:17px;height:17px}.sb-item:hover{color:#fff;background:#f6f1e712}.sb-item.on{color:#fff;background:#f6f1e721;font-weight:600}.sb-item.on svg{opacity:1;color:var(--orange-400)}.sb-foot{border-top:1px solid #f6f1e724;gap:10px;padding:14px 8px 0;display:grid}.sb-house{align-items:center;gap:9px;display:flex}.sb-house-av{background:var(--sage-500);width:28px;height:28px;color:var(--green-900);border-radius:999px;flex:none;place-items:center;font-size:11.5px;font-weight:700;display:grid}.sb-house-name{color:#fdfbf6;font-size:12.5px;font-weight:600;line-height:1.2}.sb-house-meta{color:#f6f1e780;font-size:11px}.sb-house svg{color:#f6f1e780;width:15px;height:15px;margin-left:auto}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:2px;display:flex}.ds-page-title{font-family:var(--font-display);color:var(--green-900);margin:0;font-size:27px;font-weight:600;line-height:1.15}.page-sub{color:var(--ink-600);margin:4px 0 0;font-size:13.5px}.page-actions{flex:none;gap:8px;display:flex}.btn,.btn-2,.btn-ghost{border-radius:var(--r-ctl);cursor:pointer;font:600 13.5px var(--font-ui);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:8px 15px;display:inline-flex}.btn svg,.btn-2 svg,.btn-ghost svg{width:15px;height:15px}.btn{background:var(--green-900);color:#fff}.btn:hover{background:var(--green-700)}.btn-2{background:var(--surface);border:1px solid var(--line);color:var(--green-900)}.btn-2:hover{border-color:var(--sage-500)}.btn-ghost{color:var(--green-700);background:0 0;padding:8px 10px}.btn-sm{min-height:30px;padding:4px 11px;font-size:12.5px}.btn-danger{background:var(--danger-soft);color:var(--danger)}.ds-input,.ds-select{border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface);min-height:38px;color:var(--charcoal);font:400 13.5px var(--font-ui);outline:none;width:100%;padding:8px 12px}.ds-input::placeholder{color:var(--ink-400)}.ds-input:focus,.ds-select:focus{border-color:var(--teal-600);box-shadow:0 0 0 3px #1fa48c24}.ds-select{appearance:none;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;display:flex}.ds-select svg{width:14px;height:14px;color:var(--ink-400);flex:none}.seg{background:var(--sand-100);border:1px solid var(--line);border-radius:var(--r-ctl);gap:2px;padding:3px;display:inline-flex}.seg button{cursor:pointer;font:600 12.5px var(--font-ui);color:var(--ink-600);background:0 0;border:0;border-radius:6px;min-height:28px;padding:5px 12px}.seg button.on{background:var(--surface);color:var(--green-900);box-shadow:0 1px 3px #0e5b4e1f}.ds-month-selector{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ds-month-step{border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--surface);width:34px;height:34px;color:var(--ink-600);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.ds-month-step:hover:not(:disabled){background:var(--sand-100)}.ds-month-step:disabled{opacity:.45;cursor:default}.ds-month-input{font:600 13.5px var(--font-ui);color:var(--green-900);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-ctl);padding:7px 10px}.ds-area-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.ds-area-tabs button{white-space:nowrap}.ds-reviewed-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ds-mr-help{color:var(--ink-600);font-size:13px}.ds-mr-checklist{display:grid}.ds-mr-check{border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;padding:11px 0;display:flex}.ds-mr-check:last-child{border-bottom:0}.ds-mr-check-ic{flex:none;display:inline-flex}.ds-mr-check-tx{flex:1;min-width:0;font-size:13.5px}.ds-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--ds-shadow-card);min-width:0}.card-head{justify-content:space-between;align-items:center;gap:12px;padding:15px 18px 13px;display:flex}.card-head.lined{border-bottom:1px solid var(--line-soft)}.card-title{color:var(--charcoal);align-items:center;gap:8px;margin:0;font-size:14.5px;font-weight:600;display:flex}.card-title svg{width:16px;height:16px;color:var(--teal-600)}.card-cap{color:var(--ink-600);margin:2px 0 0;font-size:12px}.card-link{color:var(--green-700);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;font-size:12.5px;font-weight:600;display:inline-flex}.card-link svg{width:13px;height:13px}.ds-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-body{padding:4px 18px 18px}.card-pad{padding:18px}.stat{align-content:start;gap:5px;padding:16px 18px;display:grid}.stat-label{color:var(--ink-600);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.stat-label svg{width:14px;height:14px;color:var(--sage-500)}.stat-value{color:var(--charcoal);font-variant-numeric:tabular-nums;font-size:23px;font-weight:650;line-height:1.15}.stat-sub{color:var(--ink-600);align-items:center;gap:5px;font-size:12px;display:flex}.stat-sub svg{width:13px;height:13px}.trend-up{color:var(--teal-600);font-weight:600}.trend-down{color:var(--orange-500);font-weight:600}.hero{background:linear-gradient(135deg, var(--green-900), #10695a);border:1px solid var(--green-800);color:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:18px 20px;display:grid}.hero-main{align-content:end;gap:5px;min-width:0;display:grid}.hero .stat-label{color:#f6f1e7c7}.hero .stat-label svg{color:var(--orange-400)}.hero .stat-value{color:#fff;font-size:30px}.hero .stat-sub{color:#f6f1e7a8}.hero-spark{justify-items:end;gap:4px;display:grid}.hero-spark svg{display:block}.hero-badge{color:#fdf6ea;background:#f6f1e724;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.g{gap:14px;min-width:0;display:grid}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-hero{grid-template-columns:1.45fr 1fr 1fr 1fr}.ledger{min-width:0;display:grid}.ledger-head,.ledger-row{grid-template-columns:var(--cols);align-items:center;gap:14px;min-width:0;padding:0 18px;display:grid}.ledger-head{border-bottom:1px solid var(--line-soft);color:var(--ink-400);letter-spacing:.09em;text-transform:uppercase;min-height:34px;padding-top:2px;font-size:10.5px;font-weight:600}.ledger-row{border-bottom:1px solid var(--line-soft);min-height:56px;padding-top:8px;padding-bottom:8px}.ledger-row:last-child{border-bottom:0}.ledger-row.hov,.ledger-row:hover{background:var(--row-hover)}button.ledger-row{border:0;border-bottom:1px solid var(--line-soft);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;width:100%}button.ledger-row:last-child{border-bottom:0}a.ledger-row{color:inherit;text-decoration:none}.cell-r{text-align:right;justify-self:end}.cell-c{justify-self:center}.ledger-head .h-ent{padding-left:45px}.ds-mnav-body .ledger-head .h-ent{padding-left:44px}.money{font-variant-numeric:tabular-nums;color:var(--charcoal);white-space:nowrap;font-size:13.5px;font-weight:600}.money.in{color:var(--green-700)}.money.lg{font-size:14.5px}.cell-sub{color:var(--ink-400);font-size:11.5px;font-weight:400;line-height:1.3;display:block}.txt{color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.txt-strong{color:var(--charcoal);font-size:13px;font-weight:600}.ent{align-items:center;gap:11px;min-width:0;display:flex}.ent-ic{background:var(--sage-soft);width:34px;height:34px;color:var(--green-700);border-radius:10px;flex:none;place-items:center;display:grid}.ent-ic svg{width:16px;height:16px}.ent-ic.teal{background:var(--teal-soft);color:var(--teal-600)}.ent-ic.orange{background:var(--orange-soft);color:var(--orange-500)}.ent-ic.lav{background:var(--lavender-soft);color:var(--lavender-500)}.ent-ic.sand{background:var(--sand-100);color:var(--ink-600)}.ent-tx{min-width:0}.ent-name{color:var(--charcoal);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.ent-meta{color:var(--ink-600);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.pill svg{width:11px;height:11px}.pill-green{background:var(--teal-soft);color:var(--green-700)}.pill-sand{background:var(--sand-100);color:var(--ink-600)}.pill-orange{background:var(--orange-soft);color:#9a5511}.pill-lav{background:var(--lavender-soft);color:#5f4db8}.pill-danger{background:var(--danger-soft);color:var(--danger)}.bar{background:var(--sand-100);border-radius:999px;height:6px;overflow:hidden}.bar i{background:var(--sage-500);border-radius:999px;height:100%;display:block}.bar i.teal{background:var(--teal-600)}.bar i.orange{background:var(--orange-400)}.bar i.lav{background:var(--lavender-400)}.filters{flex-wrap:wrap;align-items:center;gap:8px;padding:0 18px 13px;display:flex}.filters .ds-input,.filters .ds-select{width:auto;min-height:34px;font-size:12.5px}.search{align-items:center;display:flex;position:relative}.search svg{width:14px;height:14px;color:var(--ink-400);pointer-events:none;position:absolute;left:10px}.search .ds-input{width:210px;padding-left:31px}.ds-empty{border:1.5px dashed var(--line);color:var(--ink-600);text-align:center;border-radius:12px;justify-items:center;gap:8px;padding:26px 20px;font-size:13px;display:grid}.ds-empty svg{width:22px;height:22px;color:var(--sage-500)}.steps{align-items:center;gap:10px;display:flex}.step{color:var(--ink-400);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.step-n{background:var(--sand-100);width:22px;height:22px;color:var(--ink-600);border-radius:999px;place-items:center;font-size:11px;font-weight:700;display:grid}.step.on{color:var(--green-900)}.step.on .step-n{background:var(--green-900);color:#fff}.step.done .step-n{background:var(--teal-soft);color:var(--teal-600)}.step-line{background:var(--line);width:26px;height:1.5px}.note{background:var(--sage-soft);color:var(--green-800);border:1px solid #d5e8da;border-radius:11px;align-items:flex-start;gap:10px;padding:11px 14px;font-size:12.5px;display:flex}.note svg{width:15px;height:15px;color:var(--green-700);flex:none;margin-top:1px}.note strong{font-weight:650}.note .note-link{color:var(--green-700);text-underline-offset:3px;cursor:pointer;white-space:nowrap;font-weight:650;text-decoration:underline}.note.warn{background:var(--orange-soft);color:#8a4e12;border-color:#f3ddc2}.note.warn svg{color:var(--orange-500)}.note.warn .note-link{color:#9a5511}.period{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-ctl);align-items:center;gap:2px;min-height:38px;padding:3px;display:inline-flex}.period button{cursor:pointer;color:var(--green-800);background:0 0;border:0;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.period button:hover{background:var(--sand-100)}.period button svg{width:16px;height:16px}.ds-period-label{font:600 13px var(--font-ui);color:var(--charcoal);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.ds-period-label svg{width:15px;height:15px;color:var(--ink-400)}.drop{border:1.5px dashed var(--sage-500);background:var(--sage-soft);text-align:center;color:var(--green-800);border-radius:12px;justify-items:center;gap:8px;padding:30px 20px;display:grid}.drop svg{width:24px;height:24px;color:var(--green-700)}.drop strong{font-size:13.5px}.drop span{color:var(--ink-600);font-size:12px}.ds-import-steps{padding:2px 2px 6px}.ds-import-upload-grid{grid-template-columns:.9fr 1.6fr;align-items:start}.ds-import-upload-form{gap:14px;display:grid}.ds-import-drop{cursor:pointer}.ds-import-file-input{cursor:pointer;max-width:360px;margin-top:4px}.ds-import-history{gap:10px;display:grid}.ds-import-history-card{color:inherit;border:1px solid var(--line);border-radius:var(--r-ctl);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 12px;padding:12px 13px;text-decoration:none;transition:border-color .15s,box-shadow .15s,background .15s;display:grid}.ds-import-history-card:hover{border-color:var(--sage-500);box-shadow:0 2px 10px #0e5b4e14}.ds-import-history-card-active{background:var(--sage-soft);border-color:var(--teal-600)}.ds-import-history-main,.ds-import-history-side{gap:4px;min-width:0;display:grid}.ds-import-history-title{color:var(--charcoal);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:650;overflow:hidden}.ds-import-history-meta,.ds-import-history-date,.ds-import-history-foot{color:var(--ink-600);font-size:12px}.ds-import-history-side{justify-items:end}.ds-import-history-foot{grid-column:1/-1}.ds-import-candidate-title{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ds-import-candidate-title>span:last-child{color:var(--ink-600);font-size:12px}.ds-import-candidate-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.ds-import-candidate-resolved{opacity:.72}.ds-import-row-warning{background:var(--orange-soft)}.ds-import-row-error{background:var(--danger-soft)}.ds-import-row-details,.ds-import-row-messages{grid-column:1/-1}.ds-import-row-details{border-top:1px solid var(--line-soft);grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px 18px;padding-top:8px;display:grid}.ds-import-row-field{gap:2px;min-width:0;display:grid}.ds-import-row-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-400);font-size:10.5px;font-weight:650}.ds-import-row-value{color:var(--charcoal);overflow-wrap:anywhere;font-size:12.5px;font-weight:600}.ds-import-row-messages{gap:4px;padding-top:8px;display:grid}.ds-import-row-msg-error,.ds-import-row-msg-warning{font-size:12px;font-weight:600}.ds-import-row-msg-error{color:var(--danger)}.ds-import-row-msg-warning{color:#9a5511}.ds-import-ledger .ledger-row{min-height:auto;padding-top:8px;padding-bottom:8px}.ds-import-ledger .ds-import-row-details{gap:6px 16px;padding-top:6px}.ds-reconcile-rule{border-color:var(--orange-400)}.ds-reconcile-rule .stat-label svg,.ds-reconcile-rule .stat-value{color:var(--orange-500)}.ds-reconcile-row{align-items:start}.ds-reconcile-form{grid-template-columns:minmax(0,.9fr) minmax(0,1fr) auto;align-items:end;gap:8px;min-width:0;display:grid}.ds-settings-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.ds-settings-fact{gap:2px;min-width:0;display:grid}.ds-settings-fact-label{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-400);font-size:11.5px;font-weight:600}.ds-settings-fact-value{color:var(--charcoal);overflow-wrap:anywhere;font-size:14px;font-weight:600}.ds-settings-audit .ent-meta{white-space:normal}.tgl{background:var(--line);border-radius:999px;flex:none;width:36px;height:21px;position:relative}.tgl:after{content:"";background:#fff;border-radius:999px;width:16px;height:16px;position:absolute;top:2.5px;left:3px;box-shadow:0 1px 3px #0003}.tgl.on{background:var(--teal-600)}.tgl.on:after{left:17px}.ds-group-head{background:var(--sand-100);border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;min-height:44px;padding:10px 14px;display:flex}.ds-group-titles{min-width:0;display:grid}.ds-group-title{color:var(--green-900);font-size:13px;font-weight:700}.ds-group-meta{color:var(--ink-400);font-size:11.5px}.ds-group-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.ds-group-title-btn{font-family:var(--font-ui);color:var(--green-900);cursor:pointer;text-align:left;background:0 0;border:0;margin:0;padding:0;font-size:13px;font-weight:700}.ds-group-title-btn:hover{text-decoration:underline}.ds-row-actions{align-items:center;gap:4px;display:inline-flex}.ds-draggable{cursor:grab}.ds-draggable:active{cursor:grabbing}.ds-grip{color:var(--ink-400);cursor:grab;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex}.ds-grip:active{cursor:grabbing}.ds-grip:hover{color:var(--green-700)}.ledger-row.dragging,.ds-group-head.dragging{opacity:.5;-webkit-user-select:none;user-select:none}.ledger-row.drag-over,.ds-group-head.drag-over{background:var(--teal-soft);box-shadow:inset 0 0 0 1px var(--teal-600)}.ds-field{gap:6px;display:grid}.ds-label{color:var(--ink-600);font-size:12.5px;font-weight:600}.ds-field-hint{color:var(--ink-400);font-size:12px}.ds-field-error{color:var(--danger);font-size:12px;font-weight:600}.ds-textarea{resize:vertical;min-height:84px;padding:9px 12px;line-height:1.5}.ds-modal-backdrop{z-index:60;background:#14231f6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.ds-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);flex-direction:column;width:100%;max-width:440px;max-height:calc(100vh - 40px);display:flex;overflow:hidden;box-shadow:0 24px 70px #0e5b4e38}.ds-modal-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.ds-modal-title{color:var(--green-900);align-items:center;gap:8px;margin:0;font-size:15.5px;font-weight:600;display:flex}.ds-modal-title svg{width:17px;height:17px;color:var(--teal-600)}.ds-modal-sub{color:var(--ink-600);margin:4px 0 0;font-size:12.5px}.ds-modal-body{gap:14px;padding:16px 18px;display:grid;overflow-y:auto}.ds-modal-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;gap:8px;padding:12px 18px 16px;display:flex}.ds-modal-danger{border-top:1px solid var(--line-soft);background:var(--danger-soft);padding:12px 18px}.ds-topbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 16px 10px}.ds-topbar img{width:26px;height:auto}.ds-topbar .ds-topbar-name{font-family:var(--font-display);color:var(--green-900);font-size:18px;font-weight:600}.ds-topbar-act{gap:8px;margin-left:auto;display:flex}.m-iconbtn{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--green-800);cursor:pointer;border-radius:999px;place-items:center;display:grid}.m-iconbtn svg{width:16px;height:16px}.m-iconbtn:disabled{opacity:.4;cursor:not-allowed}.m-nav{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--line);padding:7px 8px calc(10px + env(safe-area-inset-bottom,8px));background:#fffffff5;grid-template-columns:repeat(5,1fr);align-items:end;display:grid}.m-nav-it{color:var(--ink-400);justify-items:center;gap:3px;padding:4px 0;font-size:10px;font-weight:600;display:grid;position:relative}.m-nav-it svg{width:19px;height:19px}.m-nav-it.on{color:var(--green-900)}.m-fab{background:var(--green-900);color:#fff;cursor:pointer;border-radius:999px;place-items:center;width:48px;height:48px;margin:-22px auto 0;display:grid;box-shadow:0 6px 16px #0e5b4e59}.m-fab svg{width:21px;height:21px}.m-nav-badge{background:var(--danger);color:#fff;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;display:grid;position:absolute;top:0;right:50%;transform:translate(16px)}@media (max-width:860px){.ds-shell{grid-template-columns:minmax(0,1fr)}.sb{display:none}.ds-topbar{display:flex}.ds-mnav-shell{z-index:40;display:block;position:sticky;bottom:0}.ds-page{gap:12px;padding:16px 16px 28px}.g2,.g3,.g4,.ds-import-upload-grid,.g-hero{grid-template-columns:minmax(0,1fr)}.ds-page-title{font-size:22px}.ds-reconcile-card .ledger-head{display:none}.ds-reconcile-card .ledger-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.ds-reconcile-card .cell-r{text-align:left;justify-self:start}.ds-reconcile-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}}@media (max-width:640px){.card-head{flex-direction:column;align-items:stretch}.card-link{white-space:normal;justify-content:flex-start;width:100%}.ds-card-actions{width:100%}.ds-card-actions .btn,.ds-card-actions .btn-2{flex:150px}.ds-import-history-card{grid-template-columns:minmax(0,1fr)}.ds-import-history-side{justify-items:start}.ds-import-candidate-actions{justify-content:stretch}.ds-import-candidate-actions form,.ds-import-candidate-actions .btn,.ds-import-candidate-actions .btn-2{width:100%}.ds-import-row-details,.ds-reconcile-form{grid-template-columns:minmax(0,1fr)}.ds-reconcile-form .btn{width:100%}.ds-report-rank{--cols:minmax(0, 1fr) 72px 104px!important}.ds-settings-facts{grid-template-columns:minmax(0,1fr)}.ds-stack-ledger .ledger-head{display:none}.ds-stack-ledger .ledger-row{grid-template-columns:minmax(0,1fr);align-items:start;gap:4px}.ds-stack-ledger .cell-r,.ds-stack-ledger .cell-c{text-align:left;justify-self:start}.ds-stack-ledger .ledger-row [data-label]:before{content:attr(data-label);letter-spacing:.04em;text-transform:uppercase;min-width:116px;color:var(--ink-400);margin-right:8px;font-size:11px;font-weight:650;display:inline-block}}.ds-skeleton{background:linear-gradient(90deg, var(--sand-100) 0%, #fffdf8 50%, var(--sand-100) 100%);background-size:200% 100%;border-radius:6px;animation:1.4s ease-in-out infinite ds-skeleton-pulse;display:block}.ds-skeleton-line{height:.9rem}.ds-skeleton-line-sm{height:.72rem}.ds-skeleton-line-lg{height:1.65rem}.ds-skeleton-circle{border-radius:999px;width:46px;height:46px}.ds-skeleton-stack{gap:8px;display:grid}@keyframes ds-skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.ds-skeleton{animation:none}}.auth{background:var(--surface);min-height:100vh;color:var(--charcoal);font-family:var(--font-ui);grid-template-columns:1.05fr 1fr;display:grid}.auth,.auth *{box-sizing:border-box}.auth-brand{color:#fdfbf6;background:linear-gradient(160deg, var(--green-900) 0%, #0c5247 55%, #0a463c 100%);grid-template-rows:auto 1fr auto;gap:28px;padding:52px 56px;display:grid;position:relative;overflow:hidden}.auth-brand:after{content:"";pointer-events:none;background:radial-gradient(circle,#7db79247,#0000 62%);border-radius:999px;width:460px;height:460px;position:absolute;bottom:-140px;right:-120px}.auth-brand:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffb26b29,#0000 65%);border-radius:999px;width:320px;height:320px;position:absolute;top:-110px;left:-90px}.auth-logo{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.auth-logo img{width:40px;height:auto}.auth-logo .nm{font-family:var(--font-display);color:#fdfbf6;font-size:22px;font-weight:600}.auth-pitch{z-index:1;align-self:center;gap:18px;max-width:400px;display:grid;position:relative}.auth-pitch h2{font-family:var(--font-display);color:#fff;margin:0;font-size:33px;font-weight:600;line-height:1.22}.auth-pitch p{color:#f6f1e7c7;margin:0;font-size:14.5px;line-height:1.6}.auth-points{gap:13px;margin-top:4px;display:grid}.auth-point{color:#f6f1e7e6;align-items:center;gap:11px;font-size:13.5px;display:flex}.auth-point .tk{width:26px;height:26px;color:var(--orange-400);background:#f6f1e721;border-radius:999px;flex:none;place-items:center;display:grid}.auth-point .tk svg{width:14px;height:14px}.auth-foot{z-index:1;color:#f6f1e78c;flex-wrap:wrap;gap:16px;font-size:12px;display:flex;position:relative}.auth-foot span{align-items:center;gap:6px;display:inline-flex}.auth-foot svg{width:13px;height:13px}.auth-form-wrap{place-items:center;padding:40px;display:grid;overflow:auto}.auth-form{gap:16px;width:100%;max-width:380px;display:grid}.auth-form .ds-input{min-height:44px}.auth-head{gap:4px;display:grid}.auth-h{font-family:var(--font-display);color:var(--green-900);margin:0;font-size:27px;font-weight:600}.auth-sub{color:var(--ink-600);margin:0;font-size:13.5px}.auth-fields{gap:14px;display:grid}.auth-msg{color:var(--green-800);background:var(--sage-soft);border-radius:var(--r-ctl);border:1px solid #d5e8da;margin:0;padding:9px 12px;font-size:12.5px;font-weight:600}.auth-msg.is-error{color:var(--danger);background:var(--danger-soft);border-color:#f3d3cb}.auth-check{color:var(--ink-600);cursor:pointer;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.auth-check input{width:16px;height:16px;accent-color:var(--teal-600)}.btn-full{width:100%;min-height:46px;font-size:14.5px}.auth-or{color:var(--ink-400);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:12px;margin:2px 0;font-size:11.5px;font-weight:600;display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--line);flex:1;height:1px}.sso{gap:10px;display:grid}.btn-sso{background:var(--surface);border:1px solid var(--line);width:100%;min-height:44px;color:var(--charcoal);border-radius:var(--r-ctl);font:600 13.5px var(--font-ui);cursor:pointer;justify-content:center;align-items:center;gap:10px;display:inline-flex}.btn-sso:hover{border-color:var(--sage-500);background:#fdfcf9}.btn-sso svg{width:18px;height:18px}.btn-sso:disabled,.btn-sso-disabled{opacity:.55;filter:grayscale(.55);cursor:not-allowed;pointer-events:none}.sso-note{text-align:center;color:var(--ink-400);margin:0;font-size:11.5px}.auth-switch{text-align:center;color:var(--ink-600);margin:4px 0 0;font-size:13px}.auth-switch a{color:var(--green-700);font-weight:650}.auth-switch a:hover{text-underline-offset:2px;text-decoration:underline}.auth-legal{text-align:center;color:var(--ink-400);margin:6px 0 0;font-size:11px;line-height:1.5;display:none}.auth-legal a,.auth-legal u{text-underline-offset:2px;text-decoration:underline}@media (max-width:860px){.auth{grid-template-columns:minmax(0,1fr)}.auth-brand{border-radius:0 0 26px 26px;grid-template-rows:auto auto;gap:16px;padding:36px 24px 28px}.auth-pitch{gap:10px;max-width:none}.auth-pitch h2{font-size:24px}.auth-points,.auth-foot{display:none}.auth-form-wrap{place-items:start stretch;padding:26px 22px 40px}.auth-form{max-width:420px;margin:0 auto}.auth-legal{display:block}}.ds-toast-viewport{z-index:80;pointer-events:none;gap:10px;width:min(360px,100vw - 32px);display:grid;position:fixed;bottom:20px;right:20px}.ds-toast{pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--teal-600);border-radius:var(--r-ctl);box-shadow:var(--ds-shadow-card);color:var(--charcoal);align-items:center;gap:10px;padding:11px 14px;font-size:13px;animation:.18s ease-out ds-toast-in;display:flex}.ds-toast-icon{background:var(--teal-soft);width:22px;height:22px;color:var(--green-700);border-radius:999px;flex:none;place-items:center;display:grid}.ds-toast-icon svg{width:14px;height:14px}.ds-toast-msg{min-width:0}.ds-toast-error{border-left-color:var(--danger)}.ds-toast-error .ds-toast-icon{background:var(--danger-soft);color:var(--danger)}@keyframes ds-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ds-toast{animation:none}}@media (max-width:860px){.ds-toast-viewport{left:16px;right:16px;bottom:calc(84px + env(safe-area-inset-bottom,0px));width:auto}}.ds-iconpick{gap:10px;display:grid}.ds-iconpick-bar{align-items:center;gap:8px;display:flex}.ds-iconpick-preview{background:var(--sage-soft);width:34px;height:34px;color:var(--green-700);border-radius:10px;flex:none;place-items:center;display:grid}.ds-iconpick-grid{grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:6px;display:grid}.ds-iconpick-btn{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink-600);cursor:pointer;border-radius:9px;place-items:center;display:grid}.ds-iconpick-btn:hover{border-color:var(--sage-500)}.ds-iconpick-btn.on{border-color:var(--teal-600);background:var(--teal-soft);color:var(--green-700)}.ds-pager{border-top:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.ds-pager-summary{color:var(--ink-600);font-size:12.5px}.ds-pager-controls{gap:8px;display:flex}.ds-pager-off{opacity:.45;pointer-events:none}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-deep-green:#0e5b4e;--brand-teal:#1fa48c;--brand-sage:#7db792;--brand-sunrise:#ffb26b;--brand-lavender:#ab9cf2;--brand-sand:#f6f1e7;--brand-charcoal:#2b2e33;--color-green-900:var(--brand-deep-green);--color-green-700:#147365;--color-teal-600:var(--brand-teal);--color-sage-200:#dceee4;--color-sand-100:var(--brand-sand);--color-sunrise-500:var(--brand-sunrise);--color-lavender-500:var(--brand-lavender);--color-ink-900:var(--brand-charcoal);--color-ink-600:#5d6a66;--color-line:#dce6df;--color-page:#fbfaf5;--color-surface:#fff;--color-surface-soft:#f7faf6;--color-surface-warm:#f6f1e7;--color-input:#fff;--color-label:#264d43;--color-on-primary:#fff;--color-chrome:#fffffff0;--color-sidebar:#fff;--color-row-hover:#f7fbf7;--color-success-bg:#e8f7ed;--color-success-text:#17643b;--color-warning-bg:#fff2df;--color-warning-text:#9a5511;--color-danger-bg:#fff5f2;--color-danger-border:#ffc9bd;--color-danger-text:#9c2f1f;--color-muted-bg:#eef3ef;--color-icon-bg:#e5f3ec;--color-icon-fg:var(--brand-deep-green);--shadow-card:0 12px 30px #0e5b4e14;--radius:8px}*{box-sizing:border-box}html,body{min-height:100%}body{background:linear-gradient(180deg, var(--color-page), var(--color-surface-warm));color:var(--color-ink-900);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.card{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-card)}.eyebrow{color:var(--color-teal-600);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.muted{color:var(--color-ink-600)}input[type=file]{background:var(--color-input);border:1px solid var(--color-line);color:var(--color-ink-900);border-radius:7px;width:100%;padding:6px 6px 6px 8px}input[type=file]::file-selector-button{background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-green-900);cursor:pointer;border-radius:5px;margin-right:10px;padding:5px 12px;font-weight:800}input[type=file]::file-selector-button:hover{background:var(--color-surface-soft)}.button,.icon-button{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 14px;font-weight:800;display:inline-flex}.button{background:var(--color-green-700);color:var(--color-on-primary)}.button:hover{background:var(--color-green-900)}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.app-main-shell{min-width:0}.topbar{background:var(--color-chrome);border-bottom:1px solid var(--color-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;justify-content:space-between;align-items:center;gap:20px;padding:14px clamp(16px,4vw,40px);display:none;position:sticky;top:0}.brand-lockup{align-items:center;gap:12px;display:flex}.brand-logo{width:132px;height:auto;display:block}.brand-lockup span{color:var(--color-ink-600);font-size:.78rem;line-height:1.35;display:block}.sidebar{background:var(--color-sidebar);border-right:1px solid var(--color-line);grid-template-rows:auto 1fr auto;align-content:start;gap:18px;min-height:100vh;padding:22px 16px;display:grid;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid var(--color-line);padding-bottom:18px}.sidebar .brand-lockup{flex-direction:column;align-items:flex-start;gap:10px}.sidebar .brand-logo{width:152px}.nav{flex-wrap:wrap;gap:6px;display:flex}.nav a{color:var(--color-label);border-radius:7px;align-items:center;gap:8px;min-height:36px;padding:8px 10px;display:inline-flex}.nav a:hover,.nav a[aria-current=page]{background:var(--color-surface-warm);color:var(--color-green-900)}.nav-icon{background:var(--color-icon-bg);color:var(--color-icon-fg);border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.nav a[aria-current=page] .nav-icon{background:var(--color-green-900);color:var(--color-surface)}.sidebar-nav{align-content:start;gap:8px;display:grid}.sidebar-nav a{color:var(--color-label);border-radius:7px;align-items:center;gap:10px;min-height:42px;padding:10px 12px;display:flex}.sidebar-nav a:hover,.sidebar-nav a[aria-current=page]{background:var(--color-surface-warm);color:var(--color-green-900)}.sidebar-footer{border-top:1px solid var(--color-line);padding-top:14px}.sidebar-footer .secondary-button{width:100%}.logout-icon-button{background:var(--color-icon-bg);color:var(--color-green-900);min-height:38px;padding:9px}.bottom-nav-shell{display:none}.page{max-width:1180px;margin:0 auto;padding:28px clamp(16px,4vw,40px) 56px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-title{color:var(--color-green-900);margin:4px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.65rem,3vw,2.3rem);line-height:1.1}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{padding:18px}.card h2{color:var(--color-green-900);align-items:center;gap:8px;display:flex}.card h2 svg{color:var(--color-teal-600)}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.section-heading h2,.section-heading p{margin-top:0;margin-bottom:0}.section-heading h2+p{margin-top:4px}.metric{gap:6px;display:grid}.metric span{color:var(--color-ink-600);font-size:.86rem;font-weight:700}.metric strong{color:var(--color-green-900);font-size:1.65rem;line-height:1.1}.table-wrap{overflow-x:auto}.import-candidate-panel{border:1px solid var(--color-line);border-radius:var(--radius);gap:10px;padding:14px;display:grid}.import-candidate-panel h3{color:var(--color-green-900);margin:0}.candidate-card{border:1px solid var(--color-line);border-radius:var(--radius);gap:8px;padding:12px 14px;display:grid}.candidate-card-resolved{opacity:.7}.candidate-card-header{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.candidate-reason{color:var(--color-ink-600);font-size:.82rem}.candidate-amount{font-size:.88rem;font-weight:600}.candidate-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.candidate-button{background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-ink-900);cursor:pointer;white-space:nowrap;border-radius:5px;padding:5px 11px;font-size:.78rem;font-weight:700}.candidate-button:hover{background:var(--color-surface-soft);border-color:var(--color-teal-600)}.candidate-button-active{background:var(--color-green-900);border-color:var(--color-green-900);color:#fff}.candidate-button-active:hover{background:var(--color-green-700);border-color:var(--color-green-700)}.status-undecided{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-decided{background:var(--color-sage-200);color:var(--color-green-700)}.status-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.status-transfer{background:var(--color-sage-200);color:var(--color-green-700)}.import-history-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.import-history-card{border:1px solid var(--color-line);border-radius:var(--radius);color:inherit;gap:5px;padding:14px 16px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:grid}.import-history-card:hover{border-color:var(--color-teal-600);box-shadow:var(--shadow-card)}.import-history-card-active{background:var(--color-surface-soft);border-color:var(--color-teal-600)}.import-history-card-title{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.import-row-list{gap:8px;display:grid}.import-row-card{border:1px solid var(--color-line);border-radius:var(--radius);gap:8px;padding:12px 14px;display:grid}.import-row-card-error{background:var(--color-danger-bg);border-color:var(--color-danger-border)}.import-row-card-warning{background:var(--color-warning-bg)}.import-row-header{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.import-row-num{color:var(--color-ink-600);min-width:2.4rem;font-size:.78rem;font-weight:600}.import-row-fields{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px 20px;display:grid}.import-row-field label{color:var(--color-ink-600);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;display:block}.import-row-field span{font-size:.88rem;font-weight:500}.import-row-messages{gap:2px;display:grid}.import-row-msg-error{color:var(--color-danger-text);font-size:.82rem}.import-row-msg-warning{color:var(--color-warning-text);font-size:.82rem}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--color-line);text-align:left;vertical-align:top;padding:11px 10px}.table th{color:var(--color-label);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.data-table{min-width:980px}.data-table tbody tr:hover{background:var(--color-row-hover)}.data-table small{margin-top:5px;font-size:.76rem;display:block}.transaction-table{min-width:1320px}.nowrap{white-space:nowrap}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.create-panel-grid{align-items:start}.create-form{gap:14px;display:grid}.create-form-accounts{grid-template-columns:1.4fr 1fr 1fr .7fr auto auto;align-items:end}.inline-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:12px;display:grid}.checkbox-field,.table-checkbox{color:var(--color-label);align-items:center;gap:8px;font-size:.88rem;font-weight:700;display:inline-flex}.checkbox-field{min-height:42px}.table-checkbox{min-height:36px}.table-control{min-width:120px;min-height:36px;padding:7px 9px}.short-control,.type-control,.status-control{min-width:96px}.date-control{min-width:132px}.account-control,.category-control,.merchant-control{min-width:150px}.money-control{text-align:right;min-width:136px}.note-control{min-width:180px}.table-actions{flex-wrap:nowrap;align-items:center;gap:7px;display:flex}.compact-button{white-space:nowrap;min-height:34px;padding:7px 10px}.status-pill{border-radius:999px;padding:4px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.status-active{background:var(--color-success-bg);color:var(--color-success-text)}.status-muted{background:var(--color-muted-bg);color:var(--color-ink-600)}.record-list{display:grid}.record-row{background:var(--color-surface);border:0;border-bottom:1px solid var(--color-line);color:inherit;cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:14px 4px;display:grid}.record-row:hover{background:var(--color-row-hover)}.record-row-static{cursor:default}.record-icon{color:var(--color-icon-fg);border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.record-icon-account,.record-icon-income{background:var(--color-icon-bg)}.record-icon-expense{background:var(--color-warning-bg);color:var(--color-warning-text)}.record-icon-transfer{background:var(--color-surface-soft);color:var(--color-ink-600)}.record-main,.record-side{gap:4px;min-width:0;display:grid}.record-main strong,.record-side strong{font-size:1rem}.record-main .muted,.record-note{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.record-note{color:var(--color-ink-600);font-size:.82rem}.record-side{text-align:right;justify-items:end}.settings-page-stack,.settings-list{gap:18px;display:grid}.settings-type-section{gap:12px;display:grid}.settings-type-heading{display:flex}.settings-group{border:1px solid var(--color-line);border-radius:var(--radius);overflow:hidden}.settings-group-heading{background:var(--color-surface-soft);border-bottom:1px solid var(--color-line);grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:10px;padding:12px 14px;display:grid}.settings-group-heading h3{overflow-wrap:anywhere;margin:0 0 3px}.draggable-heading,.draggable-row{cursor:grab}.draggable-heading:active,.draggable-row:active{cursor:grabbing}.drag-handle{color:var(--color-ink-600);justify-content:center;align-items:center;display:inline-flex}.drag-handle-cell{width:40px;min-height:40px}.collapse-button{background:var(--color-icon-bg);color:var(--color-green-900);width:40px;min-height:40px;padding:9px}.category-record-row{grid-template-columns:40px auto minmax(0,1fr) auto}.compact-empty{border:0;border-radius:0;padding:14px}.readonly-field{border:1px solid var(--color-line);border-radius:7px;min-height:42px;padding:10px 12px;font-weight:800;display:inline-flex}.readonly-income{background:var(--color-success-bg);color:var(--color-success-text)}.readonly-expense{background:var(--color-warning-bg);color:var(--color-warning-text)}.account-balance-summary{gap:6px}.account-record-row{grid-template-columns:auto minmax(0,1fr) minmax(168px,auto);padding:14px 4px}.account-card-title-line{flex-wrap:wrap;align-items:center;min-width:0;display:flex}.account-type-badge{background:var(--color-icon-bg);color:var(--color-green-900);flex:none}.account-card-meta{color:var(--color-ink-600);flex-wrap:wrap;align-items:center;gap:6px;font-size:.86rem;display:flex}.account-opening-balance{color:var(--color-ink-600);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.account-current-balance strong{color:var(--color-green-900);font-size:1.08rem;line-height:1.15}.dashboard-record-list .record-row:first-child{padding-top:8px}.dashboard-record-list .record-row:last-child{border-bottom:0;padding-bottom:8px}.amount-income{color:var(--color-success-text)}.amount-expense{color:var(--color-danger-text)}.badge{border-radius:999px;padding:4px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.badge-income{background:var(--color-success-bg);color:var(--color-success-text)}.badge-expense{background:var(--color-warning-bg);color:var(--color-warning-text)}.audit-entity-id{margin-top:3px;font-size:.82rem;display:block}.audit-action{background:var(--color-icon-bg);color:var(--color-green-900);text-transform:capitalize;border-radius:999px;padding:4px 9px;font-size:.76rem;font-weight:800;display:inline-flex}.audit-meta{gap:7px;min-width:280px;display:grid}.audit-field-list{flex-wrap:wrap;gap:6px;display:flex}.audit-field{background:var(--color-surface-warm);border:1px solid var(--color-line);color:var(--color-label);border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.empty{border:1px dashed var(--color-line);border-radius:var(--radius);color:var(--color-ink-600);text-align:center;padding:20px}.period-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.period-label{color:var(--color-ink-600);align-items:center;gap:5px;margin-right:2px;font-size:.78rem;font-weight:700;display:inline-flex}.period-sep{background:var(--color-line);width:1px;height:18px;margin:0 4px}.period-active-badge{background:var(--color-success-bg);border:1px solid var(--brand-teal);color:var(--color-success-text);border-radius:14px;align-items:center;gap:4px;margin-left:auto;padding:3px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.report-bars{gap:12px;display:grid}.report-bar-row{color:inherit;gap:7px;text-decoration:none;display:grid}.report-bar-row:hover strong{color:var(--brand-teal)}.report-bar-main{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.report-bar-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.report-bar-track{background:var(--color-muted-bg);border-radius:999px;height:8px;display:block;overflow:hidden}.report-bar-fill{background:linear-gradient(90deg, var(--brand-teal), var(--brand-gold));border-radius:inherit;min-width:4px;height:100%;display:block}.period-pill{background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-ink-600);cursor:pointer;white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:5px 14px;font-size:.8rem;font-weight:700;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.period-pill:hover{background:var(--color-surface-soft);color:var(--color-green-900)}.period-pill-active{background:var(--color-green-900);border-color:var(--color-green-900);color:var(--color-on-primary)}.period-pill-active:hover{background:var(--color-green-700)}.dashboard-header-desktop{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.dashboard-header-mobile{display:none}.dashboard-header-stack{gap:12px;display:grid}.hh-sub{color:var(--color-ink-600);margin:2px 0 0;font-size:.82rem}.icon-button-circle{background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-ink-600);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-button-circle:hover{background:var(--color-surface-soft)}.page-title-sm{color:var(--color-green-900);margin:0;font-size:1.25rem;font-weight:800}.header-actions{gap:8px;display:inline-flex}.dashboard-active-period-row{display:none}.metric-label-row{color:var(--color-ink-600);align-items:center;gap:5px;margin-bottom:4px;font-size:.78rem;font-weight:700;display:inline-flex}.metric-meta{color:var(--color-ink-600);align-items:center;gap:4px;margin-top:4px;font-size:.78rem;display:inline-flex}.link-warning{color:var(--color-warning-text);cursor:pointer;font-weight:700}.link-warning:hover{text-decoration:underline}.metric-value-warning{color:var(--color-warning-text)}.metric-value-income{color:var(--brand-teal)}.metric-value-expense{color:var(--color-danger-text)}.metric-delta{border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.metric-delta-up{background:var(--color-success-bg);color:var(--color-success-text)}.metric-delta-down{background:var(--color-danger-bg);color:var(--color-danger-text)}.metric-delta-neutral{background:var(--color-muted-bg);color:var(--color-ink-600)}.metric-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.metric-warning strong{color:var(--color-warning-text)}.confidence-row{align-items:center;gap:12px;display:flex}.confidence-label{color:var(--color-label);white-space:nowrap;align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:inline-flex}.confidence-bar-track{background:var(--color-line);border-radius:3px;flex:1;height:6px;margin:0;overflow:hidden}.confidence-bar-fill{background:var(--brand-teal);border-radius:3px;height:100%;transition:width .3s}.confidence-bar-fill-low{background:var(--color-warning-text)}.confidence-pct{color:var(--brand-teal);white-space:nowrap;font-size:.85rem;font-weight:800}.confidence-chips{flex-wrap:wrap;gap:14px;margin-top:10px;display:flex}.chip{color:var(--color-ink-600);align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.chip-success{color:var(--color-success-text)}.chip-warning{color:var(--color-warning-text)}.confidence-stats{color:var(--color-ink-600);margin:0;font-size:.82rem}.sidebar-tagline{color:var(--color-ink-600);margin:2px 0 0;font-size:.75rem}.sidebar-section-label{color:var(--color-ink-600);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;padding:0 12px;font-size:.68rem;font-weight:800}.nav-badge{background:var(--color-warning-bg);color:var(--color-warning-text);border-radius:999px;justify-content:center;min-width:18px;margin-left:auto;padding:1px 5px;font-size:.72rem;font-weight:800;display:inline-flex}.sidebar-profile{align-items:center;gap:10px;display:flex}.sidebar-profile-info{flex:1;gap:1px;min-width:0;display:grid;overflow:hidden}.sidebar-profile-name{color:var(--color-green-900);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:700;overflow:hidden}.sidebar-profile-label{color:var(--color-ink-600);font-size:.72rem}.card-header-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.view-all-link{color:var(--color-teal-600);white-space:nowrap;font-size:.82rem;font-weight:700}.view-all-link:hover{text-decoration:underline}.dashboard-record-list .record-row{padding:10px 4px}.acc-bar-wrap{background:var(--color-line);border-radius:2px;width:60px;height:3px;margin-top:4px;margin-left:auto;overflow:hidden}.acc-bar{background:var(--brand-teal);border-radius:2px;height:100%;transition:width .3s}.panel-total-row{border-top:1px solid var(--color-line);justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;display:flex}.panel-total-row strong{color:var(--brand-teal)}.cat-icon{border-radius:8px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.cat-icon-food{color:#9a5511;background:#fdebd0}.cat-icon-transport{color:#1f4f8f;background:#e3eefc}.cat-icon-grocery{color:#147365;background:#d9f0e2}.cat-icon-health{color:#aa2a5a;background:#fbdfe6}.cat-icon-income{background:var(--color-success-bg);color:var(--color-success-text)}.cat-icon-default{background:var(--color-icon-bg);color:var(--color-icon-fg)}.tx-badge{letter-spacing:.02em;text-transform:lowercase;white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:.66rem;font-weight:700}.tx-badge-reviewed{background:var(--color-success-bg);color:var(--color-success-text)}.tx-badge-pending{background:var(--color-warning-bg);color:var(--color-warning-text)}.tx-meta-line{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.sidebar-avatar{background:var(--color-icon-bg);color:var(--color-icon-fg);border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:800;display:inline-flex}.bottom-nav-v2{grid-template-columns:1fr 1fr 64px 1fr 1fr;align-items:end;gap:0;display:grid}.bottom-nav-v2 a,.bottom-nav-v2 button.bottom-more{color:var(--color-ink-600);cursor:pointer;text-align:center;background:0 0;border:0;place-items:center;gap:2px;min-height:54px;padding:6px 3px;font-size:.66rem;font-weight:800;text-decoration:none;display:grid}.bottom-nav-v2 a[aria-current=page]{color:var(--brand-deep-green)}.bottom-nav-v2 a[aria-current=page]:after{background:var(--brand-teal);content:"";border-radius:50%;width:4px;height:4px;margin-top:1px}.bottom-nav-v2 svg{width:20px;height:20px}.bottom-fab{background:var(--brand-teal);color:var(--color-on-primary);border-radius:50%;justify-content:center;justify-self:center;align-items:center;width:48px;height:48px;margin-top:-16px;padding:0;text-decoration:none;display:inline-flex;box-shadow:0 6px 18px #1fa48c59}.bottom-fab:hover{background:var(--color-green-700)}.bottom-fab svg{width:24px!important;height:24px!important}.bottom-nav-v2 .nav-badge{margin-left:2px}.more-drawer-overlay{opacity:0;pointer-events:none;z-index:95;background:#00000073;transition:opacity .2s;position:fixed;inset:0}.more-drawer-overlay.open{opacity:1;pointer-events:all}.more-drawer-sheet{background:var(--color-surface);z-index:100;border-radius:18px 18px 0 0;max-height:86vh;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -8px 24px #00000026}.more-drawer-sheet.open{transform:translateY(0)}.ms-handle-row{justify-content:center;padding:10px 0 4px;display:flex}.ms-handle{background:var(--color-line);border-radius:2px;width:36px;height:4px}.ms-title{color:var(--color-green-900);align-items:center;gap:8px;padding:4px 20px 12px;font-size:.95rem;font-weight:700;display:flex}.ms-section-label{color:var(--color-ink-600);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:8px 20px 6px;font-size:.7rem;font-weight:800}.ms-grid{grid-template-columns:1fr 1fr;gap:8px;padding:0 16px 4px;display:grid}.ms-item{background:var(--color-surface-soft);border:1px solid var(--color-line);color:var(--color-ink-900);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:11px 14px;text-decoration:none;transition:background .15s;display:flex}.ms-item:hover{background:var(--color-surface-warm)}.ms-item-disabled{cursor:not-allowed;opacity:.55}.ms-item-disabled:hover{background:var(--color-surface-soft)}.ms-item-icon{color:var(--brand-teal);flex:none;justify-content:center;align-items:center;display:inline-flex}.ms-item-text{flex:1;gap:1px;min-width:0;display:grid}.ms-item-label{color:var(--color-green-900);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:700;overflow:hidden}.ms-item-sub{color:var(--color-ink-600);font-size:.72rem}.ms-item .nav-badge{margin-left:auto}.ms-divider{background:var(--color-line);height:1px;margin:10px 16px}.ms-bottom-row{padding:8px 20px calc(16px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:12px;display:flex}.ms-user{align-items:center;gap:10px;min-width:0;display:flex}.ms-user-info{gap:1px;min-width:0;display:grid}.ms-user-name{color:var(--color-green-900);font-size:.88rem;font-weight:700}.ms-user-sub{color:var(--color-ink-600);font-size:.72rem}@media (max-width:860px){.app-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom));display:block}.sidebar,.dashboard-header-desktop{display:none}.dashboard-header-mobile{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.period-bar{scrollbar-width:none;flex-wrap:nowrap;gap:6px;padding-bottom:4px;overflow-x:auto}.period-bar::-webkit-scrollbar{display:none}.period-bar>.period-label,.period-bar>.period-sep,.period-bar>.period-active-badge{display:none}.dashboard-active-period-row{color:var(--color-ink-600);justify-content:space-between;align-items:center;margin-top:8px;padding:0;font-size:.78rem;display:flex}.dashboard-active-period-row .ap-label{color:var(--color-ink-600);align-items:center;gap:5px;display:inline-flex}.dashboard-active-period-row .ap-val{color:var(--brand-teal);font-weight:800}.confidence-chips .chip-import-batches{display:none}.grid-4.stat-row{grid-template-columns:1fr 1fr;gap:8px}.grid-4.stat-row>article:nth-child(4){order:1}.grid-4.stat-row>article:nth-child(2){order:2}.grid-4.stat-row>article:nth-child(3){order:3}.stat-row .metric{min-width:0;padding:12px}.stat-row .metric strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.15rem;overflow:hidden}.stat-row .metric-label-row{font-size:.72rem}.stat-row .metric-meta{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.topbar{display:flex}.page-with-mobile-header~.topbar{display:none}body:has(.dashboard-header-mobile) .topbar{display:none}.topbar,.page-header,.section-heading{flex-direction:column;align-items:stretch}.topbar{flex-direction:row;align-items:center}.topbar .brand-logo{width:120px}.topbar .brand-lockup span{display:none}.page{padding-bottom:28px}.bottom-nav-shell{background:var(--color-chrome);border-top:1px solid var(--color-line);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:7px 8px calc(7px + env(safe-area-inset-bottom));z-index:90;display:block;position:fixed;bottom:0;left:0;right:0}.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;display:grid}.bottom-nav a{color:var(--color-label);text-align:center;border-radius:7px;place-items:center;gap:3px;min-height:54px;padding:6px 3px;font-size:.68rem;font-weight:800;display:grid}.bottom-nav a:hover,.bottom-nav a[aria-current=page]{background:var(--color-surface-warm);color:var(--color-green-900)}.bottom-nav .nav-icon{width:28px;height:28px}.bottom-nav svg{width:19px;height:19px}.grid-2,.grid-3,.grid-4,.create-form-accounts,.inline-form{grid-template-columns:1fr}.record-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.record-side{text-align:left;grid-column:2;justify-items:start}.dashboard-record-list .record-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:8px 0}.dashboard-record-list .record-side{text-align:right;grid-column:auto;place-items:flex-end end}.dashboard-record-list .record-icon,.dashboard-record-list .cat-icon{width:32px;height:32px}.dashboard-record-list .record-icon svg,.dashboard-record-list .cat-icon svg{width:16px;height:16px}.dashboard-record-list .record-main strong{font-size:.82rem}.dashboard-record-list .record-main .muted,.dashboard-record-list .record-note,.dashboard-record-list .tx-meta-line{font-size:.72rem}.dashboard-record-list .record-side strong{font-size:.82rem}.dashboard-record-list .record-side .muted,.dashboard-record-list .record-side time{font-size:.7rem}.dashboard-record-list .acc-bar-wrap{width:44px}.page>section>.card,.page>.card,section.card{padding:14px}.card h2{font-size:.95rem;font-weight:700}.card h2 svg{width:16px;height:16px}.view-all-link{font-size:.75rem}.panel-total-row{margin-top:10px;padding-top:8px;font-size:.82rem}.panel-total-row strong{font-size:.92rem}.tx-badge{padding:1px 5px;font-size:.6rem}.confidence-label{font-size:.78rem}.confidence-pct{font-size:.82rem}.confidence-chips{gap:10px;margin-top:8px}.confidence-chips .chip{font-size:.72rem}.account-record-row{grid-template-columns:auto minmax(0,1fr)}.account-record-row .account-balance-summary{text-align:left;grid-column:2;justify-items:start}.account-card-meta{gap:5px}.settings-group-heading{grid-template-columns:36px minmax(0,1fr) 40px;padding:10px 12px}.category-record-row{grid-template-columns:36px 42px minmax(0,1fr);align-items:center;gap:10px;padding:12px 8px}.category-record-row .record-side{grid-column:3;justify-items:start}.category-record-row .status-pill{margin-top:2px}.drag-handle-cell{width:36px;min-height:40px}}
