:root{--font-heading:var(--font-jakarta), Arial, sans-serif;--font-body:var(--font-dm-sans), Arial, sans-serif;--font-data:var(--font-jetbrains), monospace;--text-12:.75rem;--text-14:.875rem;--text-16:1rem;--text-18:1.125rem;--text-20:1.25rem;--text-24:1.5rem;--text-28:1.75rem;--text-32:2rem;--text-36:2.25rem;--text-40:2.5rem;--text-48:3rem;--text-56:3.5rem;--text-64:4rem;--text-72:4.5rem;--pine:#335246;--pine-dark:#243b32;--pine-mid:#3f6356;--leaf:#70c17d;--leaf-soft:#d9f0de;--on-pine:#fff;--pine-hover:#243b32;--paper:#fff;--surface:#fff;--surface-raised:#fff;--sidebar-surface:var(--pine-dark);--wash:#f5f7f5;--line:#dce8e0;--line-strong:#bfd0c5;--muted:#7f9b8d;--text:#1a2e25;--text-dim:#60766a;--blue:#335f8d;--violet:#6f4a8f;--amber:#9a6b12;--coral:#9f503b;--sidebar:248px;--topbar:60px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--pine:#62bd79;--pine-dark:#0b100d;--pine-mid:#39754a;--leaf:#7cdb91;--leaf-soft:#203728;--on-pine:#0b100d;--pine-hover:#8ae39d;--sidebar-surface:#0b100d;--surface:#1a211d;--surface-raised:#232c27;--wash:#111613;--line:#344139;--line-strong:#4b5d52;--muted:#99a9a0;--text:#f1f5f2;--text-dim:#bac5be;--blue:#74a9dc;--violet:#b99ad4;--amber:#e0b45f;--coral:#df8e78;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--wash);color:var(--text);font-family:var(--font-body);font-size:var(--text-16);line-height:1.6}:root[data-theme=dark] .app-toast{background:#173021;border-color:#31553c;box-shadow:0 18px 45px #00000052}:root[data-theme=dark] .app-toast.error{background:#351d1b;border-color:#6a3832}:root[data-theme=dark] .app-toast.warning,:root[data-theme=dark] .app-toast.info{background:#302819;border-color:#65532b}:root[data-theme=dark] .toast-icon{color:#8fe3a0;background:#1f4530}:root[data-theme=dark] .app-toast.error .toast-icon{color:#f0a08f;background:#4a2621}:root[data-theme=dark] .app-toast.warning .toast-icon,:root[data-theme=dark] .app-toast.info .toast-icon{color:#f0c675;background:#4a3c1e}:root[data-theme=dark] .app-toast strong{color:#9ee6ae}:root[data-theme=dark] .app-toast p{color:#b9d0c1}:root[data-theme=dark] .app-toast.error strong{color:#f2a89a}:root[data-theme=dark] .app-toast.error p{color:#d9b3ab}:root[data-theme=dark] .app-toast.warning strong,:root[data-theme=dark] .app-toast.info strong{color:#f0c675}:root[data-theme=dark] .app-toast.warning p,:root[data-theme=dark] .app-toast.info p{color:#d9c9a0}:root[data-theme=dark] .app-toast>button{color:#8faa97}:root[data-theme=dark] .app-toast>button:hover{color:#eff8f1}button,select{font:inherit}button{cursor:pointer}.icon-button{border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.theme-toggle{background:var(--wash);color:var(--pine);position:relative}.theme-toggle:hover,.theme-toggle:focus-visible{border-color:var(--pine);outline:none}.theme-icon-light,:root[data-theme=dark] .theme-icon-dark{display:none}:root[data-theme=dark] .theme-icon-light{display:block}.toast-region{pointer-events:none;z-index:1000;flex-direction:column;gap:10px;width:100%;max-width:min(390px,100vw - 32px);display:flex;position:fixed;bottom:18px;right:18px}.app-toast{pointer-events:auto;background:#f3fbf5;border:1px solid #bfe2c8;border-left:5px solid #3f9a59;border-radius:12px;grid-template-columns:auto 1fr auto;gap:11px;padding:14px;animation:.22s ease-out both toast-enter;display:grid;overflow:hidden;box-shadow:0 18px 45px #1c392c2e}.app-toast.error{background:#fff5f3;border-color:#efc3bc #efc3bc #efc3bc #c95746}.app-toast.warning,.app-toast.info{background:#fffaf0;border-color:#ecd79f #ecd79f #ecd79f #d39b23}.toast-icon{color:#4c8d60;background:#e7f4ea;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.app-toast.error .toast-icon{color:#b65343;background:#fff0ed}.app-toast.warning .toast-icon,.app-toast.info .toast-icon{color:#a8750e;background:#fff0c9}.app-toast strong{color:#215f36;font-size:var(--text-12);margin-top:1px;line-height:1.35;display:block}.app-toast p{color:#607d68;font-size:var(--text-12);margin:3px 0 0;line-height:1.55}.app-toast.error strong{color:#8d3327}.app-toast.error p{color:#855d56}.app-toast.warning strong,.app-toast.info strong{color:#79570f}.app-toast.warning p,.app-toast.info p{color:#77694c}.app-toast>button{color:#8ca096;background:0 0;border:0;justify-content:center;align-self:start;align-items:center;padding:3px;display:flex}.app-toast>button:hover{color:#294d3c}@keyframes toast-enter{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:520px){.toast-region{width:auto;max-width:none;bottom:12px;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){.app-toast{animation:none}}a{color:inherit}h1,h2,h3,h4,h5,h6,.type-heading{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:600;line-height:1.3}h1{font-weight:700}input,select,textarea{font-family:var(--font-body);font-weight:400}td{font-family:var(--font-body);font-weight:400;line-height:1.5}code,pre,time,.mono,.type-data,input[type=tel],input[type=number],input[type=date],input[type=datetime-local],a[href^=tel\:]{font-family:var(--font-data);font-variant-numeric:tabular-nums;letter-spacing:0}
@font-face{font-family:jakarta;src:url(../media/PlusJakartaSans[wght]-s.p.31j7rs-u81c8p.ttf)format("truetype");font-display:swap;font-weight:600 700}@font-face{font-family:jakarta Fallback;src:local(Arial);ascent-override:98.16%;descent-override:20.99%;line-gap-override:0.0%;size-adjust:105.75%}.jakarta_e2404905-module__K4jbBW__className{font-family:jakarta,jakarta Fallback}.jakarta_e2404905-module__K4jbBW__variable{--font-jakarta:"jakarta", "jakarta Fallback"}
@font-face{font-family:dmSans;src:url(../media/DMSans[opsz,wght]-s.p.26ydf-cqcbk-4.ttf)format("truetype");font-display:swap;font-weight:400 700}@font-face{font-family:dmSans Fallback;src:local(Arial);ascent-override:93.39%;descent-override:29.18%;line-gap-override:0.0%;size-adjust:106.22%}.dmsans_364a56f2-module__ESeaZW__className{font-family:dmSans,dmSans Fallback}.dmsans_364a56f2-module__ESeaZW__variable{--font-dm-sans:"dmSans", "dmSans Fallback"}
@font-face{font-family:jetbrains;src:url(../media/JetBrainsMono[wght]-s.p.1v4j9e07zljy-.ttf)format("truetype");font-display:swap;font-weight:400 500}@font-face{font-family:jetbrains Fallback;src:local(Arial);ascent-override:77.57%;descent-override:22.82%;line-gap-override:0.0%;size-adjust:131.49%}.jetbrains_b32b9233-module__57WEzG__className{font-family:jetbrains,jetbrains Fallback}.jetbrains_b32b9233-module__57WEzG__variable{--font-jetbrains:"jetbrains", "jetbrains Fallback"}
@font-face{font-family:dmSerifDisplay;src:url(../media/DMSerifDisplay_Regular-s.p.2sut1tx77e7m0.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:dmSerifDisplay Fallback;src:local(Arial);ascent-override:102.23%;descent-override:33.06%;line-gap-override:0.0%;size-adjust:101.35%}.dmserifdisplay_ea3c7a25-module__bzw0GW__className{font-family:dmSerifDisplay,dmSerifDisplay Fallback;font-weight:400}.dmserifdisplay_ea3c7a25-module__bzw0GW__variable{--font-dm-serif-display:"dmSerifDisplay", "dmSerifDisplay Fallback"}
