.searchbar{flex:1;max-width:460px}.searchbar-results{top:calc(100% + var(--sp-1));z-index:120;max-height:60vh;position:absolute;left:0;right:0;overflow-y:auto}.menu .searchbar-result{gap:var(--sp-3)}.searchbar-type{width:64px;font-size:var(--text-xs);color:var(--fg-secondary);flex-shrink:0;font-weight:500}.searchbar-main{flex-direction:column;min-width:0;display:flex}.searchbar-label{color:var(--fg-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.searchbar-sub{font-size:var(--text-xs);color:var(--fg-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.searchbar-empty{padding:7px var(--sp-2);color:var(--fg-secondary)}.layout{height:100vh;display:flex;overflow:hidden}.layout>.app-sidebar{width:var(--sidebar-w);border-radius:0;flex-shrink:0;height:100vh;position:sticky;top:0;overflow:hidden auto}.layout>.app-sidebar.collapsed{width:56px;padding-inline:var(--sp-2)}.sidebar-logo{flex-shrink:0;display:flex}.sidebar-brand-text{min-width:0}.sidebar-toggle{width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--radius-sm);color:inherit;opacity:.6;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:0;display:flex}.sidebar-toggle:hover{opacity:1;background:color-mix(in srgb, currentColor 6%, transparent)}.sidebar-toggle svg{width:16px;height:16px}.app-sidebar nav{flex:1}.app-sidebar nav a>.nav-text{font-size:inherit;color:inherit;padding:0}.nav-empty{padding:0 var(--sp-2);font-size:var(--text-xs);line-height:var(--leading-snug);opacity:.7;margin:0}.sidebar-footer{gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid color-mix(in srgb, currentColor 12%, transparent);flex-direction:column;display:flex}.sidebar-user-name{padding:0 var(--sp-2);font-size:var(--text-xs);opacity:.75;white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sidebar-signout{align-items:center;gap:var(--sp-2);width:100%;height:var(--control-h-sm);padding:0 var(--sp-2);color:inherit;border:1px solid color-mix(in srgb, currentColor 16%, transparent);border-radius:var(--radius-sm);font:500 var(--text-xs)/1 var(--font-sans);opacity:.8;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;display:flex}.sidebar-signout:hover{opacity:1;background:color-mix(in srgb, currentColor 6%, transparent)}.sidebar-signout svg{flex:none;width:16px;height:16px}.app-sidebar.collapsed .sidebar-logo,.app-sidebar.collapsed .sidebar-brand-text,.app-sidebar.collapsed .nav-label,.app-sidebar.collapsed .nav-text,.app-sidebar.collapsed .nav-empty,.app-sidebar.collapsed .sidebar-user-name{display:none}.app-sidebar.collapsed .sidebar-brand{justify-content:center;padding-inline:0}.app-sidebar.collapsed .sidebar-toggle{margin-left:0}.app-sidebar.collapsed nav a,.app-sidebar.collapsed .sidebar-signout{justify-content:center;padding-inline:0}.content-area{flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:hidden}.topbar{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-8);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;display:flex}.mobile-menu-btn{display:none}.sidebar-overlay{background:var(--overlay);z-index:150;display:none;position:fixed;inset:0}.main-content{min-width:0;padding:var(--sp-6) var(--sp-8);background:var(--bg-canvas);flex:1;overflow-y:auto}.main-measure{max-width:var(--content-max)}.app-footer{padding:var(--sp-3) var(--sp-8);background:var(--bg-canvas);border-top:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--fg-secondary);flex-shrink:0}.banner.impersonation-bar{padding-inline:var(--sp-8);border-width:0 0 1px;border-radius:0;justify-content:space-between;align-items:center}@media (width<=768px){.layout>.app-sidebar,.layout>.app-sidebar.collapsed{z-index:200;width:var(--sidebar-w);padding-inline:var(--sp-3);transition:transform var(--dur-slow) var(--ease-out);position:fixed;top:0;left:0;transform:translate(-100%)}.layout>.app-sidebar.mobile-open{box-shadow:var(--shadow-3);transform:translate(0)}.app-sidebar.collapsed .sidebar-logo,.app-sidebar.collapsed .sidebar-brand-text,.app-sidebar.collapsed .nav-label,.app-sidebar.collapsed .nav-text,.app-sidebar.collapsed .nav-empty,.app-sidebar.collapsed .sidebar-user-name{display:revert}.app-sidebar.collapsed nav a,.app-sidebar.collapsed .sidebar-signout{padding-inline:var(--sp-2);justify-content:flex-start}.sidebar-toggle{display:none}.mobile-menu-btn{display:inline-flex}.sidebar-overlay{display:block}.topbar,.main-content,.app-footer,.banner.impersonation-bar{padding-inline:var(--sp-4)}}.no-organization .empty h2{font-size:var(--text-md);margin-bottom:var(--sp-1)}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-ext-400-normal-Q_nF8v4l.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-400-normal-r32jotim.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-400-normal-DRC__1Mx.woff2)format("woff2"),url(/assets/instrument-sans-latin-400-normal-D1W7dsQl.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-ext-500-normal-CTEe1bJa.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-500-normal-CAxz3nsc.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-500-normal-Dk9ku72i.woff2)format("woff2"),url(/assets/instrument-sans-latin-500-normal-Z6ESRlEs.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-ext-600-normal-BsaQcF38.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-600-normal-DMks36a2.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-600-normal-B7fBEWYG.woff2)format("woff2"),url(/assets/instrument-sans-latin-600-normal-B9e8oLYv.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/instrument-sans-latin-ext-700-normal-ClYbKGw-.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-700-normal-BQc-7cTM.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/instrument-sans-latin-700-normal-CYfAanHo.woff2)format("woff2"),url(/assets/instrument-sans-latin-700-normal-DfAjL1vF.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-ext-400-italic-BuclrmZR.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-400-italic-6UexrgPI.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-sans-latin-400-italic-DCPiXYsF.woff2)format("woff2"),url(/assets/instrument-sans-latin-400-italic-CX4K8MRt.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-ext-500-italic-CYmgUtJz.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-500-italic-BJlniOy5.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/instrument-sans-latin-500-italic-dJ09OWzu.woff2)format("woff2"),url(/assets/instrument-sans-latin-500-italic-AA1cAicB.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-ext-600-italic-BC-QA_To.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-600-italic-jxnyb53X.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/instrument-sans-latin-600-italic-BhZ_8V5m.woff2)format("woff2"),url(/assets/instrument-sans-latin-600-italic-C3Xdev4Q.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/instrument-sans-latin-ext-700-italic-BVKbqq1g.woff2)format("woff2"),url(/assets/instrument-sans-latin-ext-700-italic-DfqV-2a6.woff)format("woff");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:Instrument Sans;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/instrument-sans-latin-700-italic-YQU9YmSo.woff2)format("woff2"),url(/assets/instrument-sans-latin-700-italic-P_WmZI-N.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");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}:root{--k-slate:#16202b;--k-teal:#0f6e56;--k-paper:#f6f4ef;--k-stone:#5f5e5a;--slate-50:#f3f5f7;--slate-100:#e2e6ea;--slate-200:#c5ccd3;--slate-300:#9aa5b0;--slate-400:#6e7b89;--slate-500:#4a5866;--slate-600:#33414f;--slate-700:#232f3b;--slate-800:#16202b;--slate-900:#0e151d;--teal-50:#eaf4f0;--teal-100:#cfe6dd;--teal-200:#a3cfbf;--teal-300:#6fb39c;--teal-400:#3e927a;--teal-500:#0f6e56;--teal-600:#0c5b47;--teal-700:#0a4a3a;--teal-800:#07382c;--teal-900:#04261e;--paper-0:#fff;--paper-1:#f6f4ef;--paper-2:#efece5;--paper-3:#e6e2d9;--paper-4:#d9d4c9;--stone-700:#454440;--stone-600:#5f5e5a;--stone-500:#7a7974;--stone-400:#8a8984;--stone-300:#b5b3ad;--stone-200:#d2d0ca;--amber-500:#b7791f;--amber-100:#f6e8cc;--amber-50:#fbf4e4;--red-500:#b3261e;--red-100:#f5d5d2;--red-50:#fbeae8;--blue-500:#2f5d9b;--blue-100:#d6e1f1;--blue-50:#eaf0f8;--bg-canvas:var(--paper-1);--bg-surface:var(--paper-0);--bg-sunken:var(--paper-2);--bg-raised:var(--paper-0);--bg-inverse:var(--slate-800);--bg-selected:var(--teal-50);--bg-hover:#16202b0a;--fg-primary:var(--slate-800);--fg-secondary:var(--stone-600);--fg-tertiary:var(--stone-400);--fg-disabled:var(--stone-300);--fg-inverse:var(--paper-1);--fg-accent:var(--teal-500);--fg-link:var(--teal-600);--border-subtle:var(--paper-3);--border-default:var(--paper-4);--border-strong:var(--slate-300);--border-focus:var(--teal-500);--action-primary:var(--teal-500);--action-primary-hover:var(--teal-600);--action-primary-active:var(--teal-700);--action-danger:var(--red-500);--status-success-fg:var(--teal-600);--status-success-bg:var(--teal-50);--status-warning-fg:var(--amber-500);--status-warning-bg:var(--amber-50);--status-danger-fg:var(--red-500);--status-danger-bg:var(--red-50);--status-info-fg:var(--blue-500);--status-info-bg:var(--blue-50);--status-neutral-fg:var(--stone-600);--status-neutral-bg:var(--paper-2);--font-sans:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--leading-tight:1.2;--leading-snug:1.35;--leading-base:1.5;--leading-loose:1.65;--tracking-tight:-.01em;--tracking-base:0;--sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:999px;--shadow-1:0 1px 2px #16202b0f, 0 0 0 1px #16202b0a;--shadow-2:0 4px 12px #16202b1a, 0 0 0 1px #16202b0d;--shadow-3:0 16px 40px #16202b2e, 0 0 0 1px #16202b0f;--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s;--ease-out:cubic-bezier(.2, 0, 0, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--sidebar-w:240px;--content-max:1280px;--control-h-sm:28px;--control-h-md:36px;--control-h-lg:44px;--focus-ring:0 0 0 2px var(--bg-surface), 0 0 0 4px var(--border-focus)}[data-theme=dark]{--bg-canvas:var(--slate-900);--bg-surface:var(--slate-800);--bg-sunken:#0b1118;--bg-raised:var(--slate-700);--bg-inverse:var(--paper-1);--bg-selected:#0f6e562e;--bg-hover:#f6f4ef0d;--fg-primary:var(--paper-1);--fg-secondary:var(--slate-200);--fg-tertiary:var(--slate-300);--fg-disabled:var(--slate-500);--fg-inverse:var(--slate-800);--fg-accent:var(--teal-300);--fg-link:var(--teal-300);--border-subtle:var(--slate-700);--border-default:var(--slate-600);--border-strong:var(--slate-400);--border-focus:var(--teal-300);--action-primary:var(--teal-400);--action-primary-hover:var(--teal-300);--action-primary-active:var(--teal-500);--status-success-fg:var(--teal-300);--status-success-bg:#0f6e562e;--status-warning-fg:#e0a63c;--status-warning-bg:#b7791f2e;--status-danger-fg:#e4756d;--status-danger-bg:#b3261e33;--status-info-fg:#7fa6de;--status-info-bg:#2f5d9b38;--status-neutral-fg:var(--slate-200);--status-neutral-bg:var(--slate-700);--shadow-1:0 1px 2px #0006, 0 0 0 1px #ffffff0a;--shadow-2:0 4px 12px #00000073, 0 0 0 1px #ffffff0d;--shadow-3:0 16px 40px #0009, 0 0 0 1px #ffffff0f}:root{--color-slate:var(--k-slate);--color-teal:var(--k-teal);--color-paper:var(--k-paper);--color-stone:var(--k-stone);--surface-page:var(--bg-canvas);--surface-card:var(--bg-surface);--surface-sunken:var(--bg-sunken);--text-primary:var(--fg-primary);--text-secondary:var(--fg-secondary);--text-muted:var(--fg-secondary);--text-inverse:var(--paper-0);--text-on-slate:var(--slate-300);--border:var(--border-default);--action:var(--action-primary);--action-hover:var(--action-primary-hover);--action-subtle-bg:var(--bg-selected);--success:var(--status-success-fg);--success-bg:var(--status-success-bg);--warning:var(--status-warning-fg);--warning-bg:var(--status-warning-bg);--error:var(--status-danger-fg);--error-bg:var(--status-danger-bg);--status-paid:var(--status-success-fg);--status-paid-bg:var(--status-success-bg);--status-due:var(--status-warning-fg);--status-due-bg:var(--status-warning-bg);--status-overdue:var(--status-danger-fg);--status-overdue-bg:var(--status-danger-bg);--overlay:#16202b73;--shadow-floating:var(--shadow-2);--text-display:var(--text-3xl);--text-page-title:var(--text-2xl);--text-section:var(--text-lg);--text-body:var(--text-base);--text-small:var(--text-sm);--text-micro:var(--text-xs);--weight-normal:400;--weight-medium:500;--space-1:var(--sp-1);--space-2:var(--sp-2);--space-3:var(--sp-3);--space-4:var(--sp-4);--space-6:var(--sp-6);--space-8:var(--sp-8);--space-12:var(--sp-12);--space-16:var(--sp-16);--space-24:96px;--radius-control:var(--radius-sm);--radius-card:var(--radius-md);--transition:var(--dur-fast) var(--ease-out)}.numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.badge-paid,.badge-active{background:var(--status-success-bg);color:var(--status-success-fg)}.badge-due{background:var(--status-warning-bg);color:var(--status-warning-fg)}.badge-overdue{background:var(--status-danger-bg);color:var(--status-danger-fg)}.badge-inactive{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.btn-danger-confirm{background:var(--action-danger);color:var(--paper-0);border-color:var(--action-danger)}.table:not(.table-wrap .table){background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md)}.table:not(.table-wrap .table) thead th:first-child{border-top-left-radius:var(--radius-md)}.table:not(.table-wrap .table) thead th:last-child{border-top-right-radius:var(--radius-md)}.table td.numeric-col{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.table th.numeric-col{text-align:right}.card:not(:has(>.card-head,>.card-body)){padding:var(--sp-6)}.btn{justify-content:center;align-items:center;gap:var(--sp-2);height:var(--control-h-md);padding:0 var(--sp-4);font:500 var(--text-sm)/1 var(--font-sans);letter-spacing:0;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);white-space:nowrap;border:1px solid #0000;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn-primary{background:var(--action-primary);color:#fff}.btn-primary:hover{background:var(--action-primary-hover)}.btn-primary:active{background:var(--action-primary-active)}.btn-secondary{background:var(--bg-surface);color:var(--fg-primary);border-color:var(--border-default)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-ghost{color:var(--fg-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-hover);color:var(--fg-primary)}.btn-danger{background:var(--bg-surface);color:var(--action-danger);border-color:var(--border-default)}.btn-danger:hover{background:var(--status-danger-bg);border-color:var(--action-danger)}.btn-danger.solid{background:var(--action-danger);color:#fff}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn-sm{height:var(--control-h-sm);padding:0 var(--sp-3);font-size:var(--text-xs)}.btn-lg{height:var(--control-h-lg);padding:0 var(--sp-5);font-size:var(--text-base)}.btn-icon{width:var(--control-h-md);padding:0}.btn-icon.btn-sm{width:var(--control-h-sm)}.btn svg{flex:none;width:16px;height:16px}.btn.is-loading{pointer-events:none;position:relative;color:#0000!important}.btn.is-loading:after{content:"";border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;position:absolute}.btn-secondary.is-loading:after,.btn-ghost.is-loading:after{border-color:var(--border-default);border-top-color:var(--fg-primary)}@keyframes spin{to{transform:rotate(360deg)}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label{font-size:var(--text-sm);color:var(--fg-primary);font-weight:500}.field>label .opt{color:var(--fg-tertiary);font-weight:400}.field .hint{font-size:var(--text-xs);color:var(--fg-tertiary)}.field .error{font-size:var(--text-xs);color:var(--status-danger-fg)}.input,.select,.textarea{width:100%;height:var(--control-h-md);padding:0 var(--sp-3);font:400 var(--text-base)/1.5 var(--font-sans);color:var(--fg-primary);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}.input::placeholder{color:var(--fg-tertiary)}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-strong)}.input:focus,.select:focus,.textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--teal-100);outline:none}[data-theme=dark] .input:focus,[data-theme=dark] .select:focus,[data-theme=dark] .textarea:focus{box-shadow:0 0 0 3px #0f6e5659}.input.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.input:disabled,.select:disabled,.textarea:disabled{background:var(--bg-sunken);color:var(--fg-disabled);cursor:not-allowed}.field.is-invalid .input,.field.is-invalid .select,.field.is-invalid .textarea{border-color:var(--status-danger-fg)}.field.is-invalid .input:focus{box-shadow:0 0 0 3px var(--red-100)}.textarea{height:auto;min-height:96px;padding:var(--sp-2) var(--sp-3);resize:vertical}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235F5E5A' stroke-width='1.5'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.input-group{align-items:stretch;display:flex}.input-group .affix{padding:0 var(--sp-3);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg-secondary);background:var(--bg-sunken);border:1px solid var(--border-default);border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:0;align-items:center;display:flex}.input-group .input{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.input-sm{height:var(--control-h-sm);font-size:var(--text-sm)}.search{position:relative}.search .input{padding-left:34px}.search svg{width:16px;height:16px;color:var(--fg-tertiary);position:absolute;top:50%;left:10px;transform:translateY(-50%)}.check,.radio{align-items:center;gap:var(--sp-2);font-size:var(--text-base);cursor:pointer;display:inline-flex}.check input,.radio input{appearance:none;border:1.5px solid var(--border-strong);background:var(--bg-surface);cursor:pointer;width:16px;height:16px;transition:all var(--dur-fast) var(--ease-out);flex:none;margin:0}.check input{border-radius:var(--radius-xs)}.radio input{border-radius:50%}.check input:checked,.radio input:checked{background:var(--action-primary);border-color:var(--action-primary)}.check input:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-6.5'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:14px}.check input:indeterminate{background:var(--action-primary);border-color:var(--action-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='white' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:14px}.radio input:checked{box-shadow:inset 0 0 0 3px var(--bg-surface)}.check input:focus-visible,.radio input:focus-visible,.toggle input:focus-visible+span{box-shadow:var(--focus-ring);outline:none}.toggle{align-items:center;gap:var(--sp-2);cursor:pointer;font-size:var(--text-base);display:inline-flex}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle span.track{border-radius:var(--radius-full);background:var(--stone-300);width:32px;height:18px;transition:background var(--dur-fast) var(--ease-out);flex:none;position:relative}.toggle span.track:after{content:"";width:14px;height:14px;transition:transform var(--dur-fast) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.toggle input:checked+.track{background:var(--action-primary)}.toggle input:checked+.track:after{transform:translate(14px)}.seg{background:var(--bg-sunken);border-radius:var(--radius-sm);gap:2px;padding:2px;display:inline-flex}.seg button{height:28px;padding:0 var(--sp-3);font:500 var(--text-sm)/1 var(--font-sans);color:var(--fg-secondary);cursor:pointer;background:0 0;border:0;border-radius:3px}.seg button[aria-pressed=true]{background:var(--bg-surface);color:var(--fg-primary);box-shadow:var(--shadow-1)}.badge{height:22px;padding:0 var(--sp-2);border-radius:var(--radius-xs);font:500 var(--text-xs)/1 var(--font-sans);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.neutral{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.badge.success{background:var(--status-success-bg);color:var(--status-success-fg)}.badge.warning{background:var(--status-warning-bg);color:var(--status-warning-fg)}.badge.danger{background:var(--status-danger-bg);color:var(--status-danger-fg)}.badge.info{background:var(--status-info-bg);color:var(--status-info-fg)}.badge.accent{background:var(--bg-selected);color:var(--fg-accent)}.badge.no-dot:before{display:none}.chip{height:24px;padding:0 var(--sp-2);border:1px solid var(--border-default);border-radius:var(--radius-xs);font-size:var(--text-xs);color:var(--fg-secondary);background:var(--bg-surface);align-items:center;gap:6px;display:inline-flex}.chip button{color:var(--fg-tertiary);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;line-height:1}.avatar{border-radius:var(--radius-full);background:var(--slate-600);color:#fff;width:28px;height:28px;font:500 11px/1 var(--font-sans);flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar.lg{width:40px;height:40px;font-size:14px}.avatar.teal{background:var(--teal-500)}.kbd{font-family:var(--font-mono);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--fg-secondary);border-bottom-width:2px;border-radius:3px;padding:1px 5px;font-size:11px}.progress{background:var(--bg-sunken);border-radius:var(--radius-full);height:6px;overflow:hidden}.progress>i{background:var(--action-primary);border-radius:var(--radius-full);height:100%;transition:width var(--dur-slow) var(--ease-out);display:block}.progress.warning>i{background:var(--amber-500)}.progress.danger>i{background:var(--red-500)}.table-wrap{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:auto}.table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-base)}.table th{background:var(--bg-sunken);text-align:left;font-size:var(--text-sm);color:var(--fg-secondary);padding:0 var(--sp-3);border-bottom:1px solid var(--border-default);white-space:nowrap;height:36px;font-weight:500;position:sticky;top:0}.table td{padding:0 var(--sp-3);border-bottom:1px solid var(--border-subtle);vertical-align:middle;height:40px}.table tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--bg-hover)}.table tbody tr.is-selected td{background:var(--bg-selected)}.table th.num,.table td.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.table th.num{font-family:var(--font-sans)}.table td.primary{font-weight:500}.table td.muted{color:var(--fg-secondary)}.table td.check,.table th.check{width:40px;padding-right:0}.table .sortable{cursor:pointer}.table .sortable.asc:after{content:" ↑";color:var(--fg-accent)}.table .sortable.desc:after{content:" ↓";color:var(--fg-accent)}.table tfoot td{background:var(--bg-sunken);border-top:1px solid var(--border-default);font-weight:500}.table-toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-bottom:1px solid var(--border-subtle);display:flex}.table-toolbar .spacer{flex:1}.table-footer{padding:var(--sp-2) var(--sp-3);font-size:var(--text-xs);color:var(--fg-tertiary);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.table-footer .pages{gap:2px;display:flex}.card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md)}.card-head{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border-subtle);display:flex}.card-head h4{font-size:var(--text-base);flex:1;font-weight:600}.card-body{padding:var(--sp-5)}.card-body.flush{padding:0}.card.compact .card-head,.card.compact .card-body{padding:var(--sp-3) var(--sp-4)}.stat{flex-direction:column;gap:2px;display:flex}.stat .l{font-size:var(--text-sm);color:var(--fg-secondary)}.stat .v{font-family:var(--font-mono);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:500;line-height:1.1}.stat .d{font-size:var(--text-xs);color:var(--fg-tertiary);font-family:var(--font-mono)}.stat .d.up{color:var(--status-success-fg)}.stat .d.down{color:var(--status-danger-fg)}.stat-grid{gap:var(--sp-4);grid-template-columns:repeat(4,1fr);display:grid}.dl{gap:var(--sp-2) var(--sp-4);font-size:var(--text-base);grid-template-columns:140px 1fr;display:grid}.dl dt{color:var(--fg-secondary)}.dl dd{margin:0}.tabs{gap:var(--sp-1);border-bottom:1px solid var(--border-default);display:flex}.tabs button{height:40px;padding:0 var(--sp-3);font:500 var(--text-sm)/1 var(--font-sans);color:var(--fg-secondary);cursor:pointer;background:0 0;border:0;position:relative}.tabs button .count{font-family:var(--font-mono);color:var(--fg-tertiary);margin-left:6px;font-size:11px}.tabs button:hover,.tabs button[aria-selected=true]{color:var(--fg-primary)}.tabs button[aria-selected=true]:after{content:"";left:var(--sp-3);right:var(--sp-3);background:var(--action-primary);height:2px;position:absolute;bottom:-1px}.sidebar{width:var(--sidebar-w);background:var(--k-slate);color:var(--paper-1);padding:var(--sp-4) var(--sp-3);gap:var(--sp-5);border-radius:var(--radius-md);flex-direction:column;display:flex}.sidebar .ws{align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);display:flex}.sidebar .ws b{font-weight:600;font-size:var(--text-sm)}.sidebar .ws small{color:var(--slate-300);font-size:11px;font-weight:400;display:block}.sidebar nav{flex-direction:column;gap:1px;display:flex}.sidebar nav span{font-size:var(--text-xs);color:var(--slate-300);padding:var(--sp-2) var(--sp-2) var(--sp-1)}.sidebar nav a{padding:7px var(--sp-2);border-radius:var(--radius-sm);color:var(--slate-100);font-size:var(--text-sm);align-items:center;gap:10px;font-weight:500;display:flex}.sidebar nav a svg{width:16px;height:16px;color:var(--slate-300);flex:none}.sidebar nav a:hover{background:#f6f4ef0f;text-decoration:none}.sidebar nav a.is-active{color:#fff;box-shadow:inset 2px 0 0 var(--teal-400);background:#f6f4ef14}.sidebar nav a.is-active svg{color:var(--teal-300)}.sidebar nav a .cnt{font-family:var(--font-mono);color:var(--slate-300);margin-left:auto;font-size:11px}.crumbs{align-items:center;gap:var(--sp-2);font-size:var(--text-sm);color:var(--fg-tertiary);display:flex}.crumbs a{color:var(--fg-secondary)}.crumbs b{color:var(--fg-primary);font-weight:500}.menu{background:var(--bg-raised);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:var(--sp-1);min-width:200px}.menu a,.menu button{align-items:center;gap:var(--sp-2);width:100%;padding:7px var(--sp-2);border-radius:var(--radius-sm);font:400 var(--text-base)/1.4 var(--font-sans);color:var(--fg-primary);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.menu a:hover,.menu button:hover{background:var(--bg-hover);text-decoration:none}.menu .sep{background:var(--border-subtle);height:1px;margin:var(--sp-1) 0}.menu .danger{color:var(--action-danger)}.menu .kbd{margin-left:auto}.modal{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);width:100%;max-width:480px}.modal-head{padding:var(--sp-5) var(--sp-6) 0}.modal-head h3{font-size:var(--text-lg)}.modal-head p{color:var(--fg-secondary);margin-top:var(--sp-1)}.modal-body{padding:var(--sp-5) var(--sp-6)}.modal-foot{justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-4) var(--sp-6);border-top:1px solid var(--border-subtle);display:flex}.modal-foot .left{margin-right:auto}.toast{align-items:flex-start;gap:var(--sp-3);background:var(--k-slate);color:var(--paper-1);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);box-shadow:var(--shadow-2);max-width:400px;font-size:var(--text-sm);display:flex}.toast i{background:var(--teal-300);border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.toast.danger i{background:#e4756d}.toast .t{font-weight:500}.toast .d{color:var(--slate-200);margin-top:2px}.toast a{color:var(--teal-300);font-weight:500}.toast .x{color:var(--slate-300);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:16px;line-height:1}.banner{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-sm);font-size:var(--text-sm);border:1px solid #0000;display:flex}.banner.info{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--blue-100)}.banner.warning{background:var(--status-warning-bg);color:var(--status-warning-fg);border-color:var(--amber-100)}.banner.danger{background:var(--status-danger-bg);color:var(--status-danger-fg);border-color:var(--red-100)}.banner b{font-weight:500}.banner .body{color:var(--fg-primary)}.banner .body b{color:inherit}.empty{text-align:center;padding:var(--sp-12) var(--sp-6);max-width:420px;margin:0 auto}.empty svg{width:40px;height:40px;color:var(--fg-tertiary);margin-bottom:var(--sp-4)}.empty h4{font-size:var(--text-md);margin-bottom:var(--sp-1)}.empty p{color:var(--fg-secondary);margin-bottom:var(--sp-5)}.skeleton{background:linear-gradient(90deg, var(--bg-sunken) 25%, var(--paper-3) 50%, var(--bg-sunken) 75%);border-radius:var(--radius-xs);background-size:200% 100%;height:12px;animation:1.4s infinite shimmer}[data-theme=dark] .skeleton{background:linear-gradient(90deg, var(--slate-700) 25%, var(--slate-600) 50%, var(--slate-700) 75%);background-size:200% 100%}@keyframes shimmer{to{background-position:-200% 0}}.shell-demo{grid-template-columns:var(--sidebar-w) 1fr;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-canvas);min-height:520px;display:grid;overflow:hidden}.shell-demo .sidebar{border-radius:0}.shell-main{padding:var(--sp-6) var(--sp-8);gap:var(--sp-5);flex-direction:column;min-width:0;display:flex}.page-head{align-items:flex-start;gap:var(--sp-4);display:flex}.page-head .title{flex:1}.page-head h2{font-size:var(--text-2xl)}.page-head .actions{gap:var(--sp-2);display:flex}.form-grid{gap:var(--sp-4) var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.form-grid .full{grid-column:1/-1}.form-section{gap:var(--sp-4);flex-direction:column;display:flex}.form-section>h4{padding-bottom:var(--sp-2);border-bottom:1px solid var(--border-subtle)}@media (width<=900px){.shell-demo{grid-template-columns:1fr}.shell-demo .sidebar{width:auto}.stat-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-base);color:var(--fg-primary);background:var(--bg-canvas);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;margin:0}#root{min-height:100vh}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:600;line-height:var(--leading-tight);color:var(--fg-primary);margin:0}h1{font-size:var(--text-2xl);letter-spacing:var(--tracking-tight)}h2,h3{font-size:var(--text-lg);line-height:var(--leading-snug)}h4{font-size:var(--text-md)}p{margin:0}a{color:var(--fg-link);transition:color var(--dur-fast) var(--ease-out);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}code,.mono{font-family:var(--font-mono);font-size:.92em}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.input),select:not(.select),textarea:not(.textarea){width:100%;height:var(--control-h-md);padding:0 var(--sp-3);font:400 var(--text-base)/1.5 var(--font-sans);color:var(--fg-primary);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}input::placeholder,textarea::placeholder{color:var(--fg-tertiary)}input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.input):hover,select:not(.select):hover,textarea:not(.textarea):hover{border-color:var(--border-strong)}input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.input):focus,select:not(.select):focus,textarea:not(.textarea):focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--teal-100);outline:none}[data-theme=dark] input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.input):focus,[data-theme=dark] select:not(.select):focus,[data-theme=dark] textarea:not(.textarea):focus{box-shadow:0 0 0 3px #0f6e5659}input:not(.input):disabled,select:not(.select):disabled,textarea:not(.textarea):disabled{background:var(--bg-sunken);color:var(--fg-disabled);cursor:not-allowed}textarea:not(.textarea){height:auto;min-height:96px;padding:var(--sp-2) var(--sp-3);resize:vertical}input[type=checkbox],input[type=radio]{accent-color:var(--action-primary)}label{font-size:var(--text-sm);color:var(--fg-primary);margin-bottom:6px;font-weight:500;display:block}.field-help{font-size:var(--text-xs);color:var(--fg-secondary)}.field-error{font-size:var(--text-xs);color:var(--status-danger-fg)}.field-hint{margin-top:var(--sp-1);font-size:var(--text-xs);color:var(--fg-secondary);display:block}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);margin-bottom:var(--sp-6);display:flex}.page-overline{font-size:var(--text-xs);color:var(--fg-secondary);margin-bottom:var(--sp-1);font-weight:500}.page-header h1{font-size:var(--text-2xl)}.section-header{margin-top:var(--sp-10);margin-bottom:var(--sp-4);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-end;display:flex}.section-header-left .section-overline{font-size:var(--text-xs);color:var(--fg-secondary);margin-bottom:var(--sp-1);font-weight:500}.section-header h2{font-size:var(--text-lg)}.filter-bar{margin-bottom:var(--sp-6)}.table-row-clickable{cursor:pointer}.client-name{color:var(--fg-primary);font-weight:500}.text-dim{color:var(--fg-secondary);font-size:var(--text-sm)}.row-actions{text-align:right}td .btn+.btn{margin-left:var(--sp-2)}.page-actions{align-items:center;gap:var(--sp-2);display:flex}.row-action-placeholder{visibility:hidden}.row-action-toggle{min-width:5.25rem}.date-overdue{color:var(--status-danger-fg);white-space:nowrap;font-weight:500}.loading{color:var(--fg-secondary);padding:var(--sp-12) 0}.empty-state{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--sp-12) var(--sp-6);text-align:center;color:var(--fg-secondary)}@media (width<=768px){.table:not(.table-wrap .table){-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.table th,.table td{white-space:nowrap}.page-header{gap:var(--sp-3);flex-wrap:wrap}}.visually-hidden,.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
