@font-face{font-family:Titillium Web;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a62ab0e1e181adab-s.1eht-hs02q8n5.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:Titillium Web;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fd3f2d7cff5f3729-s.p.1aei8wprmdo8m.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:Titillium Web;font-style:normal;font-weight:600;font-display:swap;src:url(../media/07952daa7535c4b2-s.0svlh-vtn338w.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:Titillium Web;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d88fc5ebcdbec3b6-s.p.0yp6d5_uanbiy.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:Titillium Web;font-style:normal;font-weight:700;font-display:swap;src:url(../media/54f0b10c7fed6080-s.0f7wjoqv5bd5e.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:Titillium Web;font-style:normal;font-weight:700;font-display:swap;src:url(../media/202f69fb654d2e8e-s.p.28trr838xmjmn.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:Titillium Web Fallback;src:local(Arial);ascent-override:119.97%;descent-override:41.09%;line-gap-override:0.0%;size-adjust:94.44%}.titillium_web_17c7e2e3-module__AF4c0W__className{font-family:Titillium Web,Titillium Web Fallback;font-style:normal}.titillium_web_17c7e2e3-module__AF4c0W__variable{--font-chrome:"Titillium Web", "Titillium Web Fallback"}
@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b529365fa126a3f2-s.1yo2pz3g4u6be.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:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8e451580e5e95631-s.p.0ic9f6t6i9npx.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:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d74bdd14d6019bc6-s.3wo4ln4ldr9c9.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:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(../media/345c85a432359eed-s.p.24jxsbewvqxgy.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:Lato Fallback;src:local(Arial);ascent-override:101.03%;descent-override:21.8%;line-gap-override:0.0%;size-adjust:97.69%}.lato_372b8bc0-module__nGC3wG__className{font-family:Lato,Lato Fallback;font-style:normal}.lato_372b8bc0-module__nGC3wG__variable{--font-body:"Lato", "Lato Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.31-2bzhq1gx_9.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.2taws-qdxmzlf.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0htwiiqufp3l9.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.28xcb7557rbh2.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_30c7ab4c-module__VCrZzq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_30c7ab4c-module__VCrZzq__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--sky-hi:#8cd2f5;--sky:#2e8fd4;--sky-mid:#1f6fae;--sky-deep:#14568f;--leaf-hi:#a8e36b;--leaf:#5fae33;--amber-hi:#ffd86b;--amber:#d99205;--coral-hi:#f2837a;--coral:#c6332b;--coral-deep:#9d251f;--paper:#eaf2f9;--panel:#fff;--panel-glass:#ffffffc7;--panel-glass-strong:#ffffffe0;--line:#bfd4e4;--line-soft:#dce8f1;--ink:#12212d;--ink-soft:#4e6577;--ink-faint:#5c7383;--ink-on-sky:#fff;--link:#14568f;--chip-ink:#14568f;--value-in-text:#3d7a1e;--value-out-text:#c6332b;--chip-bg:#2e8fd424;--chip-line:#2e8fd452;--wall-a:#a9dcf4;--wall-b:#d6ecda;--wall-c:#eef7fb;--wall-bloom:#ffffffbf;--gloss-1:#ffffff80;--gloss-2:#ffffff0f;--gloss-3:#ffffff29;--rim:#ffffffd9;--rim-strong:#fff;--sheen-text:0 1px 1px #06264280;--shadow-panel:0 2px 6px #10345412;--shadow-float:0 6px 16px #10345429;--shadow-window:0 10px 28px #10345429;--shadow-press:inset 0 2px 4px #06264273;--focus-ring:0 0 0 2px var(--paper), 0 0 0 4px var(--sky);--r-sm:5px;--r-md:7px;--r-lg:9px;--r-xl:12px;--r-pill:999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:22px;--s-6:30px;--s-7:44px;--pane-w:212px;--titlebar-h:62px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--sky-hi:#7ec8f0;--sky:#4aa9e8;--sky-mid:#1a5c8f;--sky-deep:#0c3d66;--leaf-hi:#a5e884;--leaf:#7ed257;--amber-hi:#ffdd85;--amber:#e9b742;--coral-hi:#ff9a92;--coral:#f0736a;--coral-deep:#a02f28;--paper:#08131c;--panel:#10222f;--panel-glass:#183042b8;--panel-glass-strong:#142a3ae6;--line:#22465f;--line-soft:#193544;--ink:#ddecf6;--ink-soft:#9bb6c8;--ink-faint:#8fa9bb;--ink-on-sky:#fff;--link:#8ed3f7;--chip-ink:#9ad9f9;--value-in-text:#7ed257;--value-out-text:#f0736a;--chip-bg:#4aa9e829;--chip-line:#4aa9e85c;--wall-a:#123c58;--wall-b:#0d2634;--wall-c:#08131c;--wall-bloom:#6ebef038;--gloss-1:#fff3;--gloss-2:#ffffff0a;--gloss-3:#ffffff12;--rim:#ffffff38;--rim-strong:#ffffff52;--sheen-text:0 1px 1px #0000008c;--shadow-panel:0 2px 6px #0000004d;--shadow-float:0 8px 20px #0000006b;--shadow-window:0 12px 32px #00000073;--shadow-press:inset 0 2px 4px #0000008c}}:root[data-theme=dark]{--sky-hi:#7ec8f0;--sky:#4aa9e8;--sky-mid:#1a5c8f;--sky-deep:#0c3d66;--leaf-hi:#a5e884;--leaf:#7ed257;--amber-hi:#ffdd85;--amber:#e9b742;--coral-hi:#ff9a92;--coral:#f0736a;--coral-deep:#a02f28;--paper:#08131c;--panel:#10222f;--panel-glass:#183042b8;--panel-glass-strong:#142a3ae6;--line:#22465f;--line-soft:#193544;--ink:#ddecf6;--ink-soft:#9bb6c8;--ink-faint:#8fa9bb;--ink-on-sky:#fff;--link:#8ed3f7;--chip-ink:#9ad9f9;--value-in-text:#7ed257;--value-out-text:#f0736a;--chip-bg:#4aa9e829;--chip-line:#4aa9e85c;--wall-a:#123c58;--wall-b:#0d2634;--wall-c:#08131c;--wall-bloom:#6ebef038;--gloss-1:#fff3;--gloss-2:#ffffff0a;--gloss-3:#ffffff12;--rim:#ffffff38;--rim-strong:#ffffff52;--sheen-text:0 1px 1px #0000008c;--shadow-panel:0 2px 6px #0000004d;--shadow-float:0 8px 20px #0000006b;--shadow-window:0 12px 32px #00000073;--shadow-press:inset 0 2px 4px #0000008c}
*,:before,:after{box-sizing:border-box}html,body{height:100%}body{color:var(--ink);background:var(--paper);font-family:var(--font-body), "Segoe UI", Tahoma, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.6}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--font-chrome), "Segoe UI", Tahoma, sans-serif;text-wrap:balance;font-weight:600;line-height:1.25}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--link)}:focus-visible{outline:2px solid var(--sky);outline-offset:2px;border-radius:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(120% 68% at 50% -12%, var(--wall-bloom), transparent 62%), linear-gradient(175deg, var(--wall-a) 0%, var(--wall-b) 54%, var(--wall-c) 100%);position:fixed;inset:0}.gloss{--gloss-base-hi:var(--sky);--gloss-base-mid:var(--sky-mid);--gloss-base-lo:var(--sky-deep);background:linear-gradient(180deg, var(--gloss-1) 0%, var(--gloss-2) 47%, transparent 48%, var(--gloss-3) 100%), linear-gradient(180deg, var(--gloss-base-hi) 0%, var(--gloss-base-mid) 55%, var(--gloss-base-lo) 100%);border:1px solid var(--gloss-base-lo);box-shadow:inset 0 1px 0 var(--rim), 0 2px 3px #0a284652;color:var(--ink-on-sky);text-shadow:var(--sheen-text)}.glass{background:var(--panel-glass);border:1px solid var(--rim);-webkit-backdrop-filter:blur(12px)saturate(140%);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-float)}.tabular{font-variant-numeric:tabular-nums}.scroll-x{overscroll-behavior-x:contain;overflow-x:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
.shell{min-height:100dvh;padding:var(--s-4);flex-direction:column;gap:0;display:flex}@media (max-width:720px){.shell{padding:0}}.window{border-radius:var(--r-xl);width:100%;max-width:1240px;box-shadow:var(--shadow-window);flex-direction:column;flex:1;margin:0 auto;display:flex}@media (max-width:720px){.window{border-radius:0}}.titlebar{align-items:center;gap:var(--s-4);padding:0 var(--s-5);min-height:var(--titlebar-h);border-radius:var(--r-xl) var(--r-xl) 0 0;border-bottom:none;flex-wrap:wrap;display:flex}@media (max-width:720px){.titlebar{padding:var(--s-3) var(--s-4);border-top:none;border-left:none;border-right:none;border-radius:0}}.wordmark{align-items:baseline;gap:var(--s-2);margin-right:auto;display:flex}.wordmark strong{font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:-.015em;font-size:22px;font-weight:700}.wordmark span{font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:.14em;text-transform:uppercase;opacity:.72;font-size:11px;font-weight:600}.month{border-radius:var(--r-md);background:#04203847;border:1px solid #ffffff57;align-items:center;gap:1px;display:flex;overflow:hidden;box-shadow:inset 0 1px 2px #041a2e59}.month button{appearance:none;color:inherit;cursor:pointer;text-shadow:var(--sheen-text);background:0 0;border:none;padding:7px 11px;font-size:14px;line-height:1}.month button:hover:not(:disabled){background:#04203857}.month button:disabled{opacity:.4;cursor:default}.month button:focus-visible{outline-offset:-2px;outline:2px solid #fff}.month .month-label{min-width:10.5ch;color:var(--ink-on-sky);text-align:center;font-family:var(--font-chrome), "Segoe UI", sans-serif;text-shadow:var(--sheen-text);font-variant-numeric:tabular-nums;padding:6px 4px;font-size:14px;font-weight:600}.theme-toggle{appearance:none;cursor:pointer;border-radius:var(--r-md);color:inherit;font-family:var(--font-chrome), "Segoe UI", sans-serif;text-shadow:var(--sheen-text);background:#04203847;border:1px solid #ffffff57;align-items:center;gap:7px;padding:7px 12px;font-size:12.5px;font-weight:600;display:inline-flex;box-shadow:inset 0 1px 2px #041a2e59}.theme-toggle:hover{background:#04203866}.theme-toggle:focus-visible{outline-offset:2px;outline:2px solid #fff}.frame{grid-template-columns:var(--pane-w) 1fr;border:1px solid var(--line);border-radius:0 0 var(--r-xl) var(--r-xl);background:var(--panel-glass);-webkit-backdrop-filter:blur(16px)saturate(135%);border-top:none;flex:1;min-height:0;display:grid}@media (max-width:720px){.frame{border-left:none;border-right:none;border-radius:0;grid-template-columns:1fr}}.pane{padding:var(--s-5) var(--s-3);border-right:1px solid var(--line-soft);gap:var(--s-2);flex-direction:column;display:flex}@media (max-width:720px){.pane{gap:var(--s-1);padding:var(--s-2);border-right:none;border-bottom:1px solid var(--line-soft);flex-direction:row;overflow-x:auto}}.pane-heading{font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);padding:0 var(--s-2);margin-bottom:var(--s-1);font-size:10.5px;font-weight:600}@media (max-width:720px){.pane-heading{display:none}}.pane-link{align-items:center;gap:var(--s-2);border-radius:var(--r-sm);color:var(--ink-soft);white-space:nowrap;border:1px solid #0000;padding:8px 10px;font-size:14.5px;text-decoration:none;display:flex}.pane-link:hover{color:var(--ink);background:#2e8fd421}.pane-link[aria-current=page]{color:var(--ink);background:var(--panel-glass-strong);border-color:var(--line-soft);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-panel);font-weight:700}.pane-link .dot{border-radius:var(--r-pill);background:linear-gradient(180deg, var(--sky-hi), var(--sky));opacity:.45;flex:none;width:8px;height:8px;box-shadow:inset 0 1px #ffffffb3}.pane-link[aria-current=page] .dot{opacity:1}.pane-footer{padding:var(--s-3) var(--s-2) 0;border-top:1px solid var(--line-soft);color:var(--ink-faint);margin-top:auto;font-size:11.5px;line-height:1.5}@media (max-width:720px){.pane-footer{display:none}}.content{padding:var(--s-6) var(--s-6) var(--s-7);min-width:0}@media (max-width:720px){.content{padding:var(--s-5) var(--s-4) var(--s-6)}}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-5);flex-wrap:wrap;display:flex}.page-head h1{letter-spacing:-.012em;font-size:26px;font-weight:700}.page-head p{color:var(--ink-soft);max-width:62ch;margin-top:5px;font-size:14.5px}.stub{align-items:flex-start;gap:var(--s-3);padding:var(--s-6);border-radius:var(--r-lg);border:1px dashed var(--line);background:var(--panel-glass-strong);box-shadow:inset 0 1px 0 var(--rim);flex-direction:column;display:flex}.stub h2{font-size:16px;font-weight:600}.stub p{color:var(--ink-soft);max-width:58ch;font-size:14.5px}.stub ul{color:var(--ink-soft);margin:0;padding-left:20px;font-size:14.5px}.stub li{margin:4px 0}.phase-tag{font-family:var(--font-mono), monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--chip-ink);background:var(--chip-bg);border:1px solid var(--chip-line);border-radius:var(--r-pill);padding:3px 8px;font-size:11px}
.btn{appearance:none;cursor:pointer;border-radius:var(--r-md);font-family:var(--font-chrome), "Segoe UI", sans-serif;white-space:nowrap;border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), var(--paper));color:var(--ink);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-panel);justify-content:center;align-items:center;gap:7px;padding:8px 15px;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.03);border-color:var(--sky)}.btn:active:not(:disabled){box-shadow:var(--shadow-press)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{--gloss-base-hi:var(--sky);--gloss-base-mid:var(--sky-mid);--gloss-base-lo:var(--sky-deep);background:linear-gradient(180deg, var(--gloss-1) 0%, var(--gloss-2) 47%, transparent 48%, var(--gloss-3) 100%), linear-gradient(180deg, var(--gloss-base-hi) 0%, var(--gloss-base-mid) 55%, var(--gloss-base-lo) 100%);border-color:var(--gloss-base-lo);color:var(--ink-on-sky);text-shadow:var(--sheen-text);box-shadow:inset 0 1px 0 var(--rim), 0 2px 3px #0a284652}.btn-danger{--gloss-base-hi:var(--coral);--gloss-base-mid:var(--coral-deep);--gloss-base-lo:var(--coral-deep)}.btn-sm{padding:5px 10px;font-size:12.5px}.btn-ghost{box-shadow:none;color:var(--ink-soft);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--chip-bg);border-color:var(--chip-line);color:var(--ink)}.input,.select{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);padding:7px 9px;font-size:14px;box-shadow:inset 0 2px 3px #1034541c}.select{cursor:pointer;padding-right:6px}.input:focus,.select:focus{border-color:var(--sky);box-shadow:inset 0 2px 3px #10345417, 0 0 0 3px var(--chip-bg)}.input:focus-visible,.select:focus-visible{outline:2px solid var(--sky);outline-offset:1px;border-color:var(--sky)}.input::placeholder{color:var(--ink-faint)}.input-invalid,.input-invalid:focus{border-color:var(--coral);box-shadow:inset 0 2px 3px #10345417,0 0 0 3px #c6332b2e}.input-amount{text-align:right;font-variant-numeric:tabular-nums}.label{font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:5px;font-size:10.5px;font-weight:600;display:block}.field-error{color:var(--coral);margin-top:4px;font-size:12.5px;display:block}.card{background:var(--panel-glass-strong);border:1px solid var(--line-soft);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-panel)}.card-title{font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:var(--s-3);font-size:12px;font-weight:600}.toolbar{gap:var(--s-2);margin-bottom:var(--s-4);flex-wrap:wrap;align-items:center;display:flex}.toolbar .grow{flex:180px;min-width:140px}.spacer{flex:1}.tiles{gap:var(--s-3);margin-bottom:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(168px,1fr));display:grid}.tile{padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);background:var(--panel-glass);border:1px solid var(--rim);-webkit-backdrop-filter:blur(10px)saturate(140%);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-float)}.tile-key{font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-size:10.5px;font-weight:600}.tile-value{font-family:var(--font-chrome), "Segoe UI", sans-serif;color:var(--ink);font-variant-numeric:tabular-nums;margin-top:5px;font-size:25px;font-weight:700;line-height:1.15}.tile-note{color:var(--ink-faint);margin-top:3px;font-size:12.5px}.chip{border-radius:var(--r-pill);white-space:nowrap;background:var(--panel);border:1px solid var(--line-soft);color:var(--ink-soft);box-shadow:inset 0 1px 0 var(--rim);align-items:center;gap:6px;padding:3px 9px 3px 7px;font-size:12.5px;line-height:1.4;display:inline-flex}.chip-dot{border-radius:var(--r-pill);flex:none;width:8px;height:8px;box-shadow:inset 0 1px #ffffff8c}.chip-muted{color:var(--ink-faint);font-style:italic}.grid-wrap{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-panel);overflow:hidden}.grid-scroll{overscroll-behavior-x:contain;overflow-x:auto}table.grid{border-collapse:collapse;width:100%;min-width:720px;font-size:14px}table.grid th{z-index:1;text-align:left;font-family:var(--font-chrome), "Segoe UI", sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--panel), var(--paper));box-shadow:inset 0 1px 0 var(--rim-strong);padding:9px 12px;font-size:10.5px;font-weight:600;position:sticky;top:0}table.grid th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.grid th.sortable:hover{color:var(--ink);background:linear-gradient(180deg, var(--panel), var(--chip-bg))}table.grid th .sort-arrow{opacity:.85;margin-left:5px;font-size:9px}table.grid td{border-bottom:1px solid var(--line-soft);color:var(--ink);vertical-align:middle;padding:8px 12px}table.grid tbody tr:last-child td{border-bottom:none}table.grid tbody tr:nth-child(2n) td,table.grid tbody tr:hover td{background:var(--chip-bg)}table.grid tr.row-selected td{background:var(--chip-bg);box-shadow:inset 2px 0 0 var(--sky)}.cell-amount{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono), monospace;white-space:nowrap;font-size:13px}.cell-date{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink-soft)}.cell-actions{text-align:right;white-space:nowrap}.cell-check{text-align:center;width:34px}.row-quickadd td{padding:7px 8px;background:var(--paper)!important;border-bottom:2px solid var(--line)!important}.meter-row{padding:var(--s-3) 0;border-bottom:1px solid var(--line-soft);gap:5px;display:grid}.meter-row:last-child{border-bottom:none}.meter-head{justify-content:space-between;align-items:baseline;gap:var(--s-3);font-size:13.5px;display:flex}.meter-name{color:var(--ink);align-items:center;gap:7px;font-weight:700;display:flex}.meter-figures{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.track{border-radius:var(--r-pill);background:var(--paper);border:1px solid var(--line);height:15px;overflow:hidden;box-shadow:inset 0 2px 4px #10345433}.fill{border-radius:var(--r-pill) 3px 3px var(--r-pill);background:linear-gradient(180deg, #ffffff9e 0%, #ffffff1f 48%, transparent 49%, #fff3 100%), linear-gradient(180deg, var(--fill-hi), var(--fill-lo));min-width:3px;height:100%;box-shadow:inset 0 1px #ffffff9e}.fill-under{--fill-hi:var(--leaf-hi);--fill-lo:var(--leaf)}.fill-near{--fill-hi:var(--amber-hi);--fill-lo:var(--amber)}.fill-over{--fill-hi:var(--coral-hi);--fill-lo:var(--coral)}.empty{gap:var(--s-2);text-align:center;padding:var(--s-7) var(--s-4);color:var(--ink-soft);justify-items:center;display:grid}.empty h3{color:var(--ink);font-size:16px;font-weight:600}.empty p{max-width:46ch;font-size:14px}.toast{z-index:50;align-items:center;gap:var(--s-3);border-radius:var(--r-lg);background:var(--panel-glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px)saturate(140%);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-window);color:var(--ink);padding:10px 12px 10px 16px;font-size:14px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.dialog-scrim{z-index:60;padding:var(--s-4);-webkit-backdrop-filter:blur(3px);background:#081a2a73;place-items:center;display:grid;position:fixed;inset:0}.dialog{border-radius:var(--r-xl);border:1px solid var(--line);background:var(--panel);width:min(560px,100%);max-height:88dvh;box-shadow:var(--shadow-window);overflow-y:auto}.dialog-head{padding:var(--s-3) var(--s-5);border-radius:var(--r-xl) var(--r-xl) 0 0;font-family:var(--font-chrome), "Segoe UI", sans-serif;font-size:15px;font-weight:700}.dialog-body{padding:var(--s-5);gap:var(--s-4);display:grid}.dialog-body p{color:var(--ink-soft);max-width:58ch;font-size:14px}.dialog-foot{justify-content:flex-end;gap:var(--s-2);padding:var(--s-3) var(--s-5);border-top:1px solid var(--line-soft);background:var(--paper);border-radius:0 0 var(--r-xl) var(--r-xl);display:flex}.store-failure{max-width:52ch;padding:var(--s-5);border-radius:var(--r-lg);background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--coral);box-shadow:var(--shadow-window);gap:var(--s-3);margin:12vh auto;display:grid}.store-failure h2{font-size:18px}.store-failure p{color:var(--ink-soft);font-size:14px}.store-failure .detail{font-family:var(--font-mono), monospace;color:var(--ink-faint);font-size:12px}.hint{color:var(--ink-faint);font-size:13px}.row-actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.stack{gap:var(--s-4);display:grid}.segmented{border-radius:var(--r-md);border:1px solid var(--line);background:var(--panel);box-shadow:inset 0 1px 0 var(--rim-strong), var(--shadow-panel);display:inline-flex;overflow:hidden}.segmented button{appearance:none;cursor:pointer;color:var(--ink-soft);font-family:var(--font-chrome), "Segoe UI", sans-serif;white-space:nowrap;background:0 0;border:none;padding:8px 13px;font-size:13px;font-weight:600}.segmented button+button{border-left:1px solid var(--line-soft)}.segmented button:hover:not(.is-active){background:var(--chip-bg);color:var(--ink)}.segmented button.is-active{--gloss-base-hi:var(--sky);--gloss-base-mid:var(--sky-mid);--gloss-base-lo:var(--sky-deep);background:linear-gradient(180deg, var(--gloss-1) 0%, var(--gloss-2) 47%, transparent 48%, var(--gloss-3) 100%), linear-gradient(180deg, var(--gloss-base-hi) 0%, var(--gloss-base-mid) 55%, var(--gloss-base-lo) 100%);color:var(--ink-on-sky);text-shadow:var(--sheen-text)}.quickadd-marker{border-radius:var(--r-pill);width:19px;height:19px;font-family:var(--font-chrome), sans-serif;color:var(--ink-on-sky);background:linear-gradient(180deg, var(--sky-mid), var(--sky-deep));place-items:center;font-size:14px;font-weight:700;line-height:1;display:inline-grid;box-shadow:inset 0 1px #ffffff6b}.row-quickadd .input,.row-quickadd .select,.row-editing .input,.row-editing .select{min-width:96px}.quickadd-errors{color:var(--coral);font-size:12.5px;display:table-cell;background:var(--paper)!important;padding:0 12px 8px!important}.row-editing td{box-shadow:inset 2px 0 0 var(--sky);background:var(--chip-bg)!important}.cell-note{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;max-width:22ch;font-size:13px;overflow:hidden}table.grid tfoot td{border-top:1px solid var(--line);background:linear-gradient(180deg, var(--paper), var(--panel));color:var(--ink);padding:9px 12px;font-weight:700}.cell-total-label{text-align:right;font-family:var(--font-chrome), sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:600}input[type=checkbox]{width:15px;height:15px;accent-color:var(--sky);cursor:pointer}table.grid td.value-in,.tile-value.value-in,.recent-amount.value-in,.legend-value.value-in,.value-in{color:var(--value-in-text)}table.grid td.value-out,.tile-value.value-out,.recent-amount.value-out,.legend-value.value-out,.value-out{color:var(--value-out-text)}.toolbar>.select{flex:0 220px;width:auto;min-width:150px}.toolbar>.grow{flex:220px}.meter-controls{gap:var(--s-3);grid-template-columns:1fr 116px;align-items:center;display:grid}.limit-input{padding:5px 8px;font-size:13px}.manager-head{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.category-row{gap:var(--s-2);grid-template-columns:34px 1fr 96px auto;align-items:center;display:grid}@media (max-width:620px){.category-row{grid-template-columns:34px 1fr auto}.category-row .chip{display:none}.meter-controls{grid-template-columns:1fr 92px}}.category-row-new{padding-top:var(--s-3);border-top:1px solid var(--line-soft)}.color-input{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel);cursor:pointer;width:34px;height:30px;box-shadow:inset 0 1px 0 var(--rim-strong);padding:2px}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:3px}.dash-split{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(330px,1fr));align-items:start;display:grid}.donut{gap:var(--s-4);grid-template-columns:200px 1fr;align-items:center;display:grid}@media (max-width:520px){.donut{grid-template-columns:1fr;justify-items:center}}.donut-figure svg{width:100%;max-width:200px;height:auto;display:block}.donut-value{font-family:var(--font-chrome), sans-serif;fill:var(--ink);font-size:21px;font-weight:700}.donut-caption{font-family:var(--font-chrome), sans-serif;letter-spacing:.1em;text-transform:uppercase;fill:var(--ink-faint);font-size:10.5px;font-weight:600}.donut-legend{gap:1px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.donut-legend li{align-items:center;gap:var(--s-2);border-radius:var(--r-sm);color:var(--ink-soft);grid-template-columns:10px 1fr auto auto;padding:4px 6px;font-size:13px;display:grid}.donut-legend li.is-active{background:var(--chip-bg);color:var(--ink)}.legend-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.legend-share{color:var(--ink-faint);font-size:12px}.legend-value{font-family:var(--font-mono), monospace;color:var(--ink);font-size:12px}.trend svg{width:100%;height:auto;display:block;overflow:visible}.trend-grid{stroke:var(--line-soft);stroke-width:1px}.trend-baseline{stroke:var(--line);stroke-width:1px}.trend-axis{font-family:var(--font-mono), monospace;fill:var(--ink-faint);font-size:10px}.trend-axis.is-current{fill:var(--ink);font-weight:500}.trend-key{gap:var(--s-2);margin-top:var(--s-3);display:flex}.recent{margin:0;padding:0;list-style:none;display:grid}.recent li{align-items:center;gap:var(--s-2);border-bottom:1px solid var(--line-soft);grid-template-columns:44px 1fr auto auto;padding:7px 0;font-size:13.5px;display:grid}.recent li:last-child{border-bottom:none}.recent-date{color:var(--ink-faint);font-size:12px}.recent-payee{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);overflow:hidden}.recent-amount{font-family:var(--font-mono), monospace;color:var(--ink);font-size:12.5px}@media (max-width:460px){.recent li{grid-template-columns:40px 1fr auto}.recent .chip{display:none}}.wizard{gap:var(--s-4);display:grid}.wizard-steps{gap:var(--s-2) var(--s-4);color:var(--ink-faint);flex-wrap:wrap;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.wizard-steps li{align-items:center;gap:7px;display:flex}.wizard-num{border-radius:var(--r-pill);width:20px;height:20px;font-family:var(--font-mono), monospace;border:1px solid var(--line);background:var(--panel);color:var(--ink-faint);place-items:center;font-size:11px;display:inline-grid}.wizard-steps li.is-current{color:var(--ink);font-weight:700}.wizard-steps li.is-current .wizard-num{color:var(--ink-on-sky);border-color:var(--sky-deep);background:linear-gradient(180deg, var(--sky-mid), var(--sky-deep));box-shadow:inset 0 1px #ffffff6b}.wizard-steps li.is-done{color:var(--ink-soft)}.wizard-steps li.is-done .wizard-num{color:var(--ink-on-sky);border-color:var(--leaf);background:linear-gradient(180deg, var(--leaf-hi), var(--leaf))}.dropzone{gap:var(--s-3);padding:var(--s-5);border-radius:var(--r-lg);border:1px dashed var(--line);background:var(--paper);justify-items:start;display:grid}.dropzone p{color:var(--ink-soft);max-width:56ch;font-size:14px}.map-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.map-field{gap:0;display:grid}.radio-card{border-radius:var(--r-md);border:1px solid var(--line);background:var(--panel);cursor:pointer;box-shadow:inset 0 1px 0 var(--rim-strong);align-items:center;gap:7px;padding:8px 13px;font-size:13.5px;display:inline-flex}.radio-card.is-active{border-color:var(--sky);background:var(--chip-bg);font-weight:700}.radio-card input{accent-color:var(--sky)}.sample-grid{border:1px solid var(--line-soft);border-radius:var(--r-lg);min-width:0;overflow:hidden}.rejected{color:var(--ink-soft);border:1px solid var(--line-soft);border-radius:var(--r-lg);padding:var(--s-3) var(--s-4);background:var(--paper);font-size:13.5px}.rejected summary{cursor:pointer;color:var(--ink);font-weight:700}.rejected ul{margin:var(--s-2) 0 0;padding-left:20px}.banner{padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);border:1px solid var(--line);border-left:4px solid var(--amber);background:var(--panel);color:var(--ink-soft);box-shadow:inset 0 1px 0 var(--rim);font-size:14px}.banner strong{color:var(--ink)}.danger-card{border-left:4px solid var(--coral)}input[type=file]{color:var(--ink-soft);max-width:100%;font-size:13.5px}input[type=file]::file-selector-button{border-radius:var(--r-md);border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), var(--paper));color:var(--ink);font-family:var(--font-chrome), sans-serif;cursor:pointer;box-shadow:inset 0 1px 0 var(--rim-strong);margin-right:10px;padding:7px 13px;font-size:13px;font-weight:600}.input[type=date]:focus{outline:2px solid var(--sky);outline-offset:1px}
