@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:100 900;src:url(/fonts/inter-latin-wght.woff2)format(woff2)}@font-face{font-display:swap;font-family:Space Grotesk;font-style:normal;font-weight:300 700;src:url(/fonts/space-grotesk-latin-wght.woff2)format(woff2)}:root{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--canvas:#f6f3ee;--chrome:#fbf9f6;--surface:#fff;--surface-subtle:#faf8f4;--surface-hover:#ebe6de;--surface-selected:#ebe6de;--overlay:#1f1d1a66;--text:#1f1d1a;--text-secondary:#4a463f;--text-muted:#6b655c;--text-disabled:#a8a196;--border:#e6e1d8;--border-subtle:#f0ece5;--border-strong:#bfb8ab;--border-control:#8c8578;--accent:#6b2479;--accent-hover:#561d62;--accent-soft:#f3e8f7;--accent-border:#d9bfe2;--accent-contrast:#fff;--focus-ring:var(--accent);--selection-bg:var(--accent-soft);--input-bg:var(--surface);--input-placeholder:var(--text-muted);--success:#166534;--success-soft:#e7f5ec;--success-border:#b7dfc4;--warning:#6b4e00;--warning-soft:#fff4c2;--warning-border:#ecd98a;--danger:#b42318;--danger-soft:#fef3f2;--danger-border:#fda29b;--status-live:#4ade80;--dot-amber:#b45309;--dot-purple:#7b2a8e;--dot-coral:#d97757;--dot-green:#166534;--dot-rust:#b4532a;--dot-rust-soft:#fde3cf;--dot-ink:#1f1d1a;--dot-blue:#5b7fb5;--banner-success-bg:var(--success-soft);--banner-success-border:var(--success-border);--banner-success-icon:var(--success);--banner-info-bg:var(--accent-soft);--banner-info-border:var(--accent-border);--banner-info-icon:var(--accent);--banner-warning-bg:var(--warning-soft);--banner-warning-border:var(--warning-border);--banner-warning-icon:var(--dot-amber);--banner-danger-bg:#fef3f2;--banner-danger-border:#f3c4c0;--banner-danger-icon:#b91c1c;--button-primary-bg:#1f1d1a;--button-primary-fg:#fff;--button-primary-bg-hover:#3a3631;--button-danger-bg:#d92d20;--button-danger-bg-hover:#b42318;--select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%236b655c' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");--font-sans:"Inter",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-display:"Space Grotesk","Inter",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-main:var(--font-sans);--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:12px;--radius:14px;--radius-lg:16px;--shadow-sm:0 1px 2px #0000000f,0 4px 12px #00000014;--shadow-lg:0 2px 4px #0000000f,0 12px 32px #00000029;--shadow:var(--shadow-lg);--sidebar-width:256px;--content-max:1120px;--bar-height:56px;--control-border-width:1px;--control-height:32px;--control-padding-x:10px;--control-padding-y:5px;--control-line-height:1.4;--control-radius:9px;--color-bg:var(--canvas);--color-surface:var(--surface);--color-surface-hover:var(--surface-hover);--color-border:var(--border);--color-border-strong:var(--border-control);--color-text:var(--text);--color-text-secondary:var(--text-secondary);--color-text-tertiary:var(--text-muted);--color-text-quaternary:var(--text-muted);--color-primary:var(--accent);--color-primary-hover:var(--accent-hover);--color-success:var(--success);--color-danger:var(--danger);--color-warning:var(--warning)}html{background:var(--canvas);box-sizing:border-box;color:var(--text);scrollbar-gutter:stable;-webkit-text-size-adjust:100%;font-size:16px}*,*:before,*:after{box-sizing:inherit}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}a:not([class]):focus-visible{margin-inline-start:-.3em;margin-inline-end:-.3em;padding-inline-start:.3em;padding-inline-end:.3em}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}body{font-family:var(--font-sans);min-height:100vh;background:var(--canvas);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100dvh;margin:0;font-size:14px;line-height:1.5}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-2);letter-spacing:-.01em;font-weight:600;line-height:1.3}h1,h2{font-family:var(--font-display)}h1{font-size:28px;line-height:1.2}h2{font-size:17px}h3{font-size:14px}p{margin:0 0 var(--space-4)}a{color:var(--accent);text-decoration:none;transition:color .12s}a:hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}a:focus{color:var(--accent-hover);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}code{font-family:var(--font-mono);background:var(--surface-subtle);border:1px solid var(--border);color:var(--text-secondary);overflow-wrap:anywhere;border-radius:4px;padding:.05em .35em;font-size:.92em}pre code{display:block;padding:var(--space-3);overflow-x:auto}img{display:block;max-width:100%}hr{border:0;border-top:1px solid var(--border);margin:var(--space-6)0}button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid{appearance:none;background:var(--surface);border:var(--control-border-width)solid var(--border);border-radius:var(--control-radius);color:var(--text);cursor:pointer;display:inline-flex;align-items: center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-3);text-decoration:none;justify-content:center;transition:background-color .12s,border-color .12s,color .12s;font-family:inherit;font-size:13px;font-weight:500;line-height:1}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid):where(:not(:-webkit-any(:disabled,[aria-disabled=true]))):-webkit-any(:hover,:focus){background:var(--surface-hover);border-color:var(--border-strong);color:var(--text);text-decoration:none}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid):where(:not(:-moz-any(:disabled,[aria-disabled=true]))):-moz-any(:hover,:focus){background:var(--surface-hover);border-color:var(--border-strong);color:var(--text);text-decoration:none}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid):where(:not(:is(:disabled,[aria-disabled=true]))):is(:hover,:focus){background:var(--surface-hover);border-color:var(--border-strong);color:var(--text);text-decoration:none}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid):where(:not(:-webkit-any(:disabled,[aria-disabled=true]))):active{background:var(--surface-selected)}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid):where(:not(:-moz-any(:disabled,[aria-disabled=true]))):active{background:var(--surface-selected)}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid):where(:not(:is(:disabled,[aria-disabled=true]))):active{background:var(--surface-selected)}:-webkit-any(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid)[hidden]{display:none}:-moz-any(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid)[hidden]{display:none}:is(button,.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-danger-solid)[hidden]{display:none}.btn-primary{background:var(--button-primary-bg);border-color:var(--button-primary-bg);color:var(--button-primary-fg)}.btn-primary:where(:not(:-webkit-any(:disabled,[aria-disabled=true]))):-webkit-any(:hover,:focus){background:var(--button-primary-bg-hover);border-color:var(--button-primary-bg-hover);color:var(--button-primary-fg)}.btn-primary:where(:not(:-moz-any(:disabled,[aria-disabled=true]))):-moz-any(:hover,:focus){background:var(--button-primary-bg-hover);border-color:var(--button-primary-bg-hover);color:var(--button-primary-fg)}.btn-primary:where(:not(:is(:disabled,[aria-disabled=true]))):is(:hover,:focus){background:var(--button-primary-bg-hover);border-color:var(--button-primary-bg-hover);color:var(--button-primary-fg)}.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:where(:not(:-webkit-any(:disabled,[aria-disabled=true]))):-webkit-any(:hover,:focus){background:var(--surface-hover);color:var(--text);border-color:#0000}.btn-ghost:where(:not(:-moz-any(:disabled,[aria-disabled=true]))):-moz-any(:hover,:focus){background:var(--surface-hover);color:var(--text);border-color:#0000}.btn-ghost:where(:not(:is(:disabled,[aria-disabled=true]))):is(:hover,:focus){background:var(--surface-hover);color:var(--text);border-color:#0000}.btn-danger{background:var(--surface);border-color:var(--danger-border);color:var(--danger)}.btn-danger:where(:not(:-webkit-any(:disabled,[aria-disabled=true]))):-webkit-any(:hover,:focus){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn-danger:where(:not(:-moz-any(:disabled,[aria-disabled=true]))):-moz-any(:hover,:focus){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn-danger:where(:not(:is(:disabled,[aria-disabled=true]))):is(:hover,:focus){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn-danger-solid{background:var(--button-danger-bg);border-color:var(--button-danger-bg);color:#fff}.btn-danger-solid:where(:not(:-webkit-any(:disabled,[aria-disabled=true]))):-webkit-any(:hover,:focus){background:var(--button-danger-bg-hover);border-color:var(--button-danger-bg-hover);color:#fff}.btn-danger-solid:where(:not(:-moz-any(:disabled,[aria-disabled=true]))):-moz-any(:hover,:focus){background:var(--button-danger-bg-hover);border-color:var(--button-danger-bg-hover);color:#fff}.btn-danger-solid:where(:not(:is(:disabled,[aria-disabled=true]))):is(:hover,:focus){background:var(--button-danger-bg-hover);border-color:var(--button-danger-bg-hover);color:#fff}.btn-sm{padding:0 var(--space-2);height:28px;font-size:12.5px}.btn-lg{padding:0 var(--space-4);height:40px;font-size:14px}.btn-icon{height:var(--control-height);width:var(--control-height);padding:0}.btn-group{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}:is(a.btn,a.btn-primary,a.btn-secondary,a.btn-ghost,a.btn-danger,a.btn-danger-solid):hover{text-decoration:none}:is(a.btn,a.btn-primary,a.btn-secondary,a.btn-ghost,a.btn-danger,a.btn-danger-solid):focus{text-decoration:none}input,textarea,select{background-color:var(--input-bg);border:var(--control-border-width)solid var(--border-control);border-radius:var(--control-radius);color:var(--text);font-family:inherit;font-size:16px;line-height:var(--control-line-height);min-height:var(--control-height);padding:var(--control-padding-y)var(--control-padding-x);transition:border-color .12s,background-color .12s,box-shadow .12s}:is(input,textarea,select)::placeholder{color:var(--input-placeholder);opacity:1}:is(input,textarea,select):where(:not(:disabled)):hover{border-color:var(--text-muted)}:is(input,textarea,select):focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}:is(input,textarea,select)[aria-invalid=true]{border-color:var(--danger)}@media (min-width:641px){input,textarea,select{font-size:13.5px}}textarea{resize:vertical;min-height:72px}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:16px;height:16px;min-height:0;padding:0}input[type=file]::-webkit-file-upload-button{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit;margin-right:var(--space-2);border-radius:4px;padding:3px 8px;font-size:12.5px}input[type=file]::file-selector-button{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit;margin-right:var(--space-2);border-radius:4px;padding:3px 8px;font-size:12.5px}:-webkit-any(input,select,textarea,button):disabled{cursor:not-allowed;opacity:.5}:-moz-any(input,select,textarea,button):disabled{cursor:not-allowed;opacity:.5}:is(input,select,textarea,button):disabled{cursor:not-allowed;opacity:.5}:-webkit-any(input,select,textarea,button)[aria-disabled=true]{cursor:not-allowed;opacity:.5}:-moz-any(input,select,textarea,button)[aria-disabled=true]{cursor:not-allowed;opacity:.5}:is(input,select,textarea,button)[aria-disabled=true]{cursor:not-allowed;opacity:.5}select{--select-chevron-inset:var(--control-padding-x);--select-chevron-size:12px;appearance:none;background-image:var(--select-chevron);background-position:right var(--select-chevron-inset)center;background-repeat:no-repeat;background-size:var(--select-chevron-size);cursor:pointer;height:var(--control-height);flex:0 auto;min-width:0;max-width:100%;padding-inline-end:calc(var(--select-chevron-inset) + var(--select-chevron-size) + var(--control-padding-x)/2)}select[dir=rtl]{background-position:left var(--select-chevron-inset)center}[dir=rtl] :is(select){background-position:left var(--select-chevron-inset)center}select[dir=ltr]{background-position:right var(--select-chevron-inset)center}[dir=rtl] [dir=ltr] :is(select){background-position:right var(--select-chevron-inset)center}select[multiple]{background-image:none;height:auto;padding-inline-end:var(--control-padding-x)}select[multiple]:enabled{cursor:default}select[size]:not(:-webkit-any([size="0"],[size="1"],[size=""])){background-image:none;height:auto;padding-inline-end:var(--control-padding-x)}select[size]:not(:-webkit-any([size="0"],[size="1"],[size=""])):enabled{cursor:default}select[size]:not(:-moz-any([size="0"],[size="1"],[size=""])){background-image:none;height:auto;padding-inline-end:var(--control-padding-x)}select[size]:not(:-moz-any([size="0"],[size="1"],[size=""])):enabled{cursor:default}select[size]:not(:is([size="0"],[size="1"],[size=""])){background-image:none;height:auto;padding-inline-end:var(--control-padding-x)}select[size]:not(:is([size="0"],[size="1"],[size=""])):enabled{cursor:default}@media (forced-colors:active){select{appearance:auto;background-image:none;padding-inline-end:calc(var(--control-padding-x)*2)}}.field{display:flex;flex-direction:column;gap:6px}fieldset.field{border:0;margin:0;padding:0}.field>label,.field-label{color:var(--text);font-size:13px;font-weight:500}.field-hint,.field-help{color:var(--text-muted);font-size:12px;line-height:1.5}.field-error{color:var(--danger);font-size:12px}label:has(>input[type=radio]){display:flex;align-items: center;gap:var(--space-2)}label:has(>input[type=checkbox]){display:flex;align-items: center;gap:var(--space-2)}label>input[type=radio],label>input[type=checkbox]{margin:0}.choice-group{display:flex;gap:var(--space-2);flex-direction:column}.card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}:is(.card,.panel)>:last-child{margin-bottom:0}.card{margin-bottom:var(--space-6);width:100%}.panel-header{display:flex;align-items: center;gap:var(--space-3);margin-bottom:var(--space-4);justify-content:space-between}.panel-header h2{margin:0}.panel-header h3{margin:0}.text-secondary{color:var(--text-secondary)}.text-tertiary,.text-quaternary{color:var(--text-muted)}.lead{color:var(--text-secondary);font-size:15px;font-weight:400;line-height:1.65}[data-component=layout]>header{background:var(--chrome);border-bottom:1px solid var(--border);display:flex;min-height:var(--bar-height);padding:0 var(--space-6);position:relative;justify-content:space-between;align-items: center}@media (max-width:640px){[data-component=layout]>header{padding:0 var(--space-4)}}[data-component=layout]>header .logo{display:flex;align-items: center;gap:var(--space-2);text-decoration:none}[data-component=layout]>header .logo svg{width:20px;height:20px}[data-component=layout]>header .logo span{color:var(--text);font-family:var(--font-display);letter-spacing:-.01em;font-size:15px;font-weight:600}[data-component=layout]>header .logo:hover{text-decoration:none}[data-component=layout]>header .logo:focus{text-decoration:none}[data-component=layout]>main{max-width:var(--content-max);padding:var(--space-8)var(--space-10)var(--space-16);width:100%;margin:0 auto}@media (max-width:900px){[data-component=layout]>main{padding:var(--space-6)var(--space-5)var(--space-12)}}@media (max-width:640px){[data-component=layout]>main{padding:var(--space-5)var(--space-4)var(--space-10)}}[data-component=layout]>footer{border-top:1px solid var(--border);color:var(--text-muted);display:flex;gap:var(--space-2)var(--space-6);padding:var(--space-5)var(--space-6);flex-wrap:wrap;justify-content:center;font-size:12.5px}[data-component=layout]>footer a{color:var(--text-muted)}[data-component=layout]>footer a:hover{color:var(--text)}[data-component=layout]>footer a:focus{color:var(--text)}[data-component=nav]{--nav-row-height:var(--control-height);display:flex;align-items: center;gap:var(--space-4);margin-left:var(--space-8);flex:1;min-width:0}@media (max-width:640px){[data-component=nav]{margin-left:var(--space-3);gap:var(--space-2)}[data-component=nav]:not([data-nav-enhanced]){gap:var(--space-1);flex-wrap:wrap}[data-component=nav]:not([data-nav-enhanced]) ul{flex:auto}}[data-component=nav] .nav-toggle{display:none}[data-component=nav] .nav-panel{display:contents}[data-component=nav] ul{display:flex;align-items: center;gap:var(--space-1);list-style:none;flex-wrap:wrap;flex:1;justify-content:center;margin:0;padding:0}[data-component=nav] ul a{border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;height:var(--nav-row-height);padding-inline:var(--space-3);text-decoration:none;align-items: center;transition:background-color .12s,color .12s;font-size:13.5px;font-weight:500}[data-component=nav] ul a:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}[data-component=nav] ul a:focus{background:var(--surface-hover);color:var(--text);text-decoration:none}[data-component=nav] ul a.active{background:var(--surface-selected);color:var(--text)}[data-component=nav] ul a[aria-current=page]{background:var(--surface-selected);color:var(--text)}[data-component=nav] .nav-auth{display:flex;align-items: center;gap:var(--space-1);flex-wrap:wrap;justify-content:flex-end;margin-left:auto}[data-component=nav] .nav-auth .btn-ghost{height:var(--nav-row-height);border-color:#0000;font-size:13px}@media (max-width:640px){[data-component=nav] .nav-auth{justify-content:flex-end}[data-component=nav]:not([data-nav-enhanced]) :is([data-component=nav] .nav-auth) .btn-ghost{padding:0 var(--space-2)}}@media (max-width:640px){[data-component=nav][data-nav-enhanced]{justify-content:flex-end}[data-component=nav][data-nav-enhanced] .nav-toggle{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;background:0 0;border:none;justify-content:center;align-items: center;min-width:44px;min-height:44px;padding:0;transition:color .12s}[data-component=nav][data-nav-enhanced] .nav-toggle:hover{color:var(--text);background:0 0}[data-component=nav][data-nav-enhanced] .nav-toggle svg{width:20px;height:20px}[data-component=nav][data-nav-enhanced] .nav-panel{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);display:none;max-height:calc(100dvh - var(--bar-height));overflow-y:auto;padding:var(--space-2)var(--space-4)var(--space-4);position:absolute;z-index:9;flex-direction:column;top:100%;left:0;right:0}[data-component=nav][data-nav-enhanced][data-open] .nav-panel{display:flex}[data-component=nav][data-nav-enhanced] ul{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;margin-left:0}[data-component=nav][data-nav-enhanced] .nav-auth{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;margin-left:0}[data-component=nav][data-nav-enhanced] .nav-auth{border-top:1px solid var(--border);margin-top:var(--space-2);padding-top:var(--space-2)}[data-component=nav][data-nav-enhanced] li a{--nav-row-height:44px;border-radius:var(--radius-sm);padding-inline:var(--space-2);text-align:left;justify-content:flex-start;width:100%;font-size:14px}[data-component=nav][data-nav-enhanced] .nav-auth .btn-ghost{--nav-row-height:44px;border-radius:var(--radius-sm);padding-inline:var(--space-2);text-align:left;justify-content:flex-start;width:100%;font-size:14px}}.page-header{display:flex;align-items: flex-end;gap:var(--space-3)var(--space-6);margin-bottom:var(--space-8);flex-wrap:wrap;justify-content:space-between}.page-header-text{min-width:0;max-width:70ch}.page-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 var(--space-1);overflow-wrap:anywhere;font-size:28px;line-height:1.2}.page-header-actions{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.page-header.has-breadcrumb .page-header-actions{padding-top:22px}.page-intro{color:var(--text-secondary);max-width:68ch;margin:0;font-size:14px;line-height:1.5}.breadcrumb{color:var(--text-muted);display:flex;margin:0 0 var(--space-2);flex-wrap:wrap;align-items: center;gap:6px;min-width:0;font-size:12px;line-height:1.4}.breadcrumb a{color:var(--text-secondary);text-decoration:none}.breadcrumb a:hover{color:var(--text);text-decoration:none}.breadcrumb a:focus{color:var(--text);text-decoration:none}.breadcrumb>span:last-child{color:var(--text-secondary);overflow-wrap:anywhere}.badge{background:var(--surface-hover);color:var(--text-secondary);display:inline-flex;white-space:nowrap;border-radius:999px;flex:none;align-items: center;gap:5px;padding:3px 8px;font-size:11.5px;font-weight:500;line-height:1.3}.badge[data-tone=success]{background:var(--success-soft);color:var(--success)}.badge[data-tone=warning]{background:var(--warning-soft);color:var(--warning)}.badge[data-tone=danger]{background:var(--danger-soft);color:var(--danger)}.badge[data-tone=accent]{background:var(--accent-soft);color:var(--accent)}.badge[data-tone=neutral]{background:var(--surface-hover);color:var(--text-secondary)}.empty-state{background:var(--surface-subtle);border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-secondary);display:flex;align-items: flex-start;gap:var(--space-1);padding:var(--space-4);flex-direction:column;margin:0;font-size:13px;line-height:1.55}.empty-state-title{color:var(--text);font-weight:500}.meta-row{color:var(--text-muted);display:flex;align-items:baseline;gap:var(--space-1)var(--space-3);flex-wrap:wrap;margin:0;font-size:12px;line-height:1.5}@media (max-width:640px){.page-header{gap:var(--space-3)}.page-header.has-breadcrumb .page-header-actions{padding-top:0}}.flash{--flash-bg:var(--banner-info-bg);--flash-border:var(--banner-info-border);--flash-icon:var(--banner-info-icon);background:var(--flash-bg);border:1px solid var(--flash-border);border-radius:var(--radius);color:var(--text-secondary);display:flex;align-items: flex-start;gap:var(--space-3);margin:0 0 var(--space-4);padding:12px 4px 12px 14px;font-size:14px;line-height:20px}.flash[data-tone=success]{--flash-bg:var(--banner-success-bg);--flash-border:var(--banner-success-border);--flash-icon:var(--banner-success-icon)}.flash[data-tone=warning]{--flash-bg:var(--banner-warning-bg);--flash-border:var(--banner-warning-border);--flash-icon:var(--banner-warning-icon)}.flash[data-tone=danger]{--flash-bg:var(--banner-danger-bg);--flash-border:var(--banner-danger-border);--flash-icon:var(--banner-danger-icon)}.flash:has(>.flash-body>:not(.flash-title)){padding-bottom:14px}.flash-icon{color:var(--flash-icon);flex:none;width:20px;height:20px}.flash-body{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.flash-body>*{margin:0}.flash-title{color:var(--text);font-weight:600}.flash-detail{color:var(--text-secondary);font-weight:400}.flash-actions{display:flex;gap:var(--space-4);margin:var(--space-2)0 0;flex-wrap:wrap}.flash-actions a{color:var(--text);text-decoration:underline;text-underline-offset:3px;font-weight:500}.flash-fields{margin:var(--space-2)0 0;padding-left:18px}.flash-fields li+li{margin-top:var(--space-1)}.flash-fields a{color:var(--text);text-decoration:underline;text-underline-offset:3px;font-weight:500}.flash-dismiss{color:var(--text-secondary);cursor:pointer;display:flex;background:0 0;border:0;flex:none;justify-content:center;align-items: center;width:44px;height:44px;margin:-12px 0;padding:0}.flash-dismiss:hover{color:var(--text);background:0 0}.flash-dismiss:focus{color:var(--text);background:0 0}.flash-dismiss svg{display:block;width:16px;height:16px}.form-field,.field{display:flex;flex-direction:column;gap:6px}:is(.form-field,.field)>label{color:var(--text);letter-spacing:0;font-size:13px;font-weight:500}:is(.form-field,.field) input{width:100%}:is(.form-field,.field) textarea{width:100%}.data-table{border-collapse:collapse;width:100%;font-size:13.5px}.data-table caption{color:var(--text-muted);padding-bottom:var(--space-2);text-align:left;font-size:12px}.data-table th{border-bottom:1px solid var(--border);color:var(--text-muted);letter-spacing:0;padding:11px var(--space-4);text-align:left;white-space:nowrap;font-size:12px;font-weight:500}.data-table td{border-bottom:1px solid var(--border-subtle);color:var(--text);font-variant-numeric:tabular-nums;padding:13px var(--space-4);vertical-align:top;line-height:1.4}.data-table tbody tr:last-child td{border-bottom:0}.data-table td:first-child{font-weight:500}.data-table tbody tr.data-table-group td{background:var(--surface-subtle);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;padding-block-start:10px;padding-block-end:10px;font-size:12px;font-weight:600}.verify-banner{background:var(--warning-soft);border-bottom:1px solid var(--warning-border);color:var(--text-secondary);display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-4);position:sticky;text-align:center;z-index:10;flex-wrap:wrap;justify-content:center;font-size:13px;top:0}.verify-banner a{color:var(--accent);font-weight:500}@media (max-width:480px){.verify-banner{gap:var(--space-1)var(--space-3);line-height:1.4}}html:has(.verify-banner){scroll-padding-top:3.5rem}@media (max-width:480px){html:has(.verify-banner){scroll-padding-top:6.75rem}}.portal{display:flex;min-height:100vh;min-height:100dvh}.portal-sidebar{background:var(--chrome);border-right:1px solid var(--border);display:flex;flex:0 0 var(--sidebar-width);align-self: flex-start;gap:var(--space-5);max-height:100vh;min-height:100vh;max-height:100dvh;overflow-y:auto;position:sticky;flex-direction:column;min-height:100dvh;padding:22px 14px;top:0}.portal-brand{display:flex;align-items: center;gap:10px;padding:0 6px}.portal-mark{background:var(--dot-purple);color:var(--accent-contrast);display:flex;font-family:var(--font-display);border-radius:9px;flex:none;justify-content:center;align-items: center;width:32px;height:32px;font-size:13px;font-weight:600}.portal-brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}.portal-name{font-size:14px;font-weight:600}.portal-subtitle{color:var(--text-muted);font-size:12px}.dot{display:inline-block;border-radius:3px;flex:none;width:9px;height:9px}.dot[data-dot=amber]{background:var(--dot-amber)}.dot[data-dot=purple]{background:var(--dot-purple)}.dot[data-dot=coral]{background:var(--dot-coral)}.dot[data-dot=green]{background:var(--dot-green)}.dot[data-dot=rust]{background:var(--dot-rust)}.dot[data-dot=ink]{background:var(--dot-ink)}.dot[data-dot=blue]{background:var(--dot-blue)}.portal-nav ul{display:flex;list-style:none;flex-direction:column;gap:1px;margin:0;padding:0}.portal-nav a{border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;text-decoration:none;align-items: center;gap:10px;height:34px;padding:0 10px;transition:background-color .12s,color .12s;font-size:13.5px}.portal-nav a:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}.portal-nav a:focus{background:var(--surface-hover);color:var(--text);text-decoration:none}.portal-nav a .dot{margin:0 3px}.portal-contact{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:6px;margin-top:auto;padding:14px;font-size:13px}.portal-contact a{font-weight:500}.portal-contact-label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.portal-account{color:var(--text-muted);display:flex;gap:var(--space-1);flex-direction:column;padding:0 6px;font-size:12px}.portal-email{overflow-wrap:anywhere}.portal-account-actions{display:flex;align-items: center;gap:var(--space-1)var(--space-3);flex-wrap:wrap}.portal-account-actions form{display:contents}.portal-account-actions a{color:var(--text-secondary);font-size:12px;font-weight:500}.portal-account-actions button{color:var(--text-secondary);font-size:12px;font-weight:500}.portal-account-actions button{background:0 0;border:0;height:auto;padding:0}.portal-account-actions button:hover{color:var(--text);text-decoration:underline;text-underline-offset:2px;background:0 0}.portal-account-actions button:focus{color:var(--text);text-decoration:underline;text-underline-offset:2px;background:0 0}.portal-main{box-sizing:border-box;display:flex;flex-direction:column;flex:1 1 0;gap:34px;min-width:0;padding:26px 36px 56px}.portal-main>.page-header{margin-bottom:0}@media (max-width:820px){.portal{flex-direction:column}.portal-sidebar{border-bottom:1px solid var(--border);align-self:stretch;gap:var(--space-3)var(--space-4);overflow:visible;padding:var(--space-4);position:static;border-right:0;flex-flow:wrap;flex:none;min-height:0;max-height:none}.portal-brand{flex:100%;padding:0}.portal-nav{flex:100%}.portal-nav ul{gap:var(--space-1);flex-flow:wrap}.portal-nav a{background:var(--surface);border:1px solid var(--border);height:32px}.portal-contact{flex:220px;margin-top:0}.portal-account{flex:200px;align-self: center}.portal-main{gap:var(--space-8);padding:var(--space-6)var(--space-5)var(--space-12)}}@media (max-width:640px){.portal-main{padding:var(--space-5)var(--space-4)var(--space-10)}}.auth-backdrop{display:block;opacity:0;pointer-events:none;position:fixed;z-index:0;width:100%;height:100%;transition:opacity .9s;inset:0}.auth-backdrop[data-ready]{opacity:1}.auth-backdrop-pause{bottom:var(--space-4);color:var(--text-secondary);position:fixed;right:var(--space-4);z-index:1}.login-page{display:flex;min-height:100vh;padding:var(--space-8)var(--space-4);flex-direction:column;justify-content:center;align-items: center;min-height:100dvh}.login-wrapper{position:relative;z-index:1;width:100%;max-width:400px}.login-header{margin-bottom:var(--space-6);text-align:center}.login-header a{color:var(--text);display:inline-flex}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6)}.login-title{color:var(--text);letter-spacing:-.01em;margin-bottom:var(--space-1);text-align:center;font-size:18px;font-weight:600}.login-subtitle{color:var(--text-muted);margin-bottom:var(--space-5);text-align:center;font-size:13px}.login-card .flash{text-align:left}.login-card .form-field{margin-bottom:var(--space-5)}.login-submit{width:100%}.login-aside{margin:var(--space-4)0 0;text-align:center;font-size:13px}.login-footer{color:var(--text-muted);margin-top:var(--space-6);text-align:center;font-size:13px}.login-footer a{background:var(--chrome);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-block;padding:var(--space-1)var(--space-3);font-size:13px}.account-section{display:block}.account-section+.account-section{border-top:1px solid var(--border);margin-top:var(--space-8);padding-top:var(--space-6)}.account-section h2{margin-bottom:var(--space-2)}.account-section>p{color:var(--text-secondary);max-width:68ch;font-size:13.5px}.account-section form{margin-top:var(--space-4)}.account-section .form-field{margin-bottom:var(--space-4);max-width:22rem}.account-email{font-family:var(--font-mono);margin-bottom:var(--space-1);font-size:13px}.account-details{display:grid;gap:var(--space-1)var(--space-6);grid-template-columns:max-content 1fr;margin:0}.account-details dt{color:var(--text-muted);font-size:12px}.account-details dd{margin:0;font-size:13px}@media (max-width:480px){.account-details{grid-template-columns:minmax(0,1fr);gap:0}.account-details dd{margin-bottom:var(--space-2)}}[data-page=admin] .admin-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;overflow-x:auto}[data-page=admin] .admin-email{color:var(--text);overflow-wrap:anywhere}[data-page=admin] .admin-date{color:var(--text-muted);white-space:nowrap}[data-page=admin] .admin-empty{color:var(--text-muted);text-align:center}.team-role-form{display:flex;align-items: center;gap:var(--space-2)}.team-role-form button{padding-inline:var(--space-2);white-space:nowrap}.team-invite,.team-create{display:flex;gap:var(--space-3);flex-direction:column;max-width:420px}.team-create-intro{margin-bottom:var(--space-5);max-width:60ch}.invite-form{text-align:center}.invite-form .form-field{text-align:left}.team-confirm{border-color:var(--danger-border);background:var(--danger-soft)}.team-confirm-actions{display:flex;align-items: center;gap:var(--space-3);flex-wrap:wrap}@media (max-width:640px){.team-table{display:block}.team-table thead{position:absolute;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;margin:-1px}.team-table tbody{display:block}.team-table tr{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items: center;gap:var(--space-2)var(--space-3);padding:var(--space-3)0;border-top:1px solid var(--border)}.team-table td{border-top:none;padding:0}.team-table td:nth-child(-n+2){grid-column:1/-1}.team-table td:first-child{overflow-wrap:anywhere}.team-table td[data-label]{color:var(--text-muted)}.team-table td[data-label]:before{content:attr(data-label)" "}}[data-page=error]>main{display:grid;grid-template-columns:minmax(0,1fr);place-items: center}[data-page=error] .error-page{padding-block:var(--space-12);text-align:center;max-width:34rem;margin:0 auto}[data-page=error] .error-status{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.06em;margin:0 0 var(--space-4);font-size:12px;font-weight:500;line-height:1}[data-page=error] .error-page h1{margin-top:0}[data-page=error] .error-page p{color:var(--text-secondary);max-width:48ch;margin-inline-start:auto;margin-inline-end:auto}[data-page=error] .error-actions{display:flex;gap:var(--space-2);margin-top:var(--space-8);justify-content:center}.project-section{display:flex;gap:var(--space-3);scroll-margin-top:var(--space-4);flex-direction:column}.section-head{display:flex;align-items:baseline;gap:6px var(--space-3);flex-wrap:wrap;justify-content:space-between}.section-head h2{display:flex;align-items: center;gap:var(--space-2);margin:0}.section-aside{color:var(--text-muted);font-size:12.5px}.box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto;position:relative;margin:0;padding:0}.project-table{min-width:640px}.project-table.people{min-width:560px}.project-table .col-ring{width:36px}.project-table col.col-asked{width:230px}.project-table col.col-due{width:150px}.project-table col.col-status{width:180px}.project-table col.col-part{width:220px}.project-table .col-asked{color:var(--text-secondary)}.project-table .cell-secondary{color:var(--text-secondary)}.project-table .cell-settled{color:var(--success)}.project-table th[scope=row]{border-bottom:1px solid var(--border-subtle);color:var(--text);padding:13px var(--space-4);vertical-align:top;white-space:normal;font-size:13.5px;font-weight:500}.project-table tbody tr:last-child th[scope=row]{border-bottom:0}.project-table th.person-lead{font-weight:600}.project-table .col-contact{width:200px}.project-table thead.sr-head th{border:0;height:0;padding:0}.project-table tbody:not(:last-of-type) tr:last-child td{border-bottom:1px solid var(--border-subtle)}.item-title{font-weight:500}.item-detail{color:var(--text-secondary);display:block;margin-top:3px;font-size:12.5px}.ring{border:2px solid var(--border-strong);display:inline-flex;vertical-align:top;border-radius:50%;flex:none;justify-content:center;align-items: center;width:20px;height:20px}.ring[data-state=coming]{border-style:dashed}.ring[data-state=current]{border-color:var(--dot-purple)}.ring[data-state=done]{background:var(--success);color:var(--accent-contrast);border:0}.collapsible{border-top:1px solid var(--border)}.collapsible summary{background:var(--surface-subtle);color:var(--text-muted);cursor:pointer;display:flex;align-items: center;gap:var(--space-3);letter-spacing:.04em;list-style:none;padding:10px var(--space-4);text-transform:uppercase;justify-content:space-between;font-size:12px;font-weight:600}.collapsible summary::-webkit-details-marker{display:none}.collapsible summary:hover{color:var(--text)}.collapsible .project-table{border-top:1px solid var(--border)}.collapsible-label{display:inline-flex;align-items: center;gap:var(--space-2)}.collapsible-hint{letter-spacing:0;text-transform:none;font-weight:500}.chevron{transition:transform .12s}.collapsible[open] .chevron{transform:rotate(90deg)}.collapsible[open] .collapsible-hint{font-size:0}.collapsible[open] .collapsible-hint:after{content:"Hide";font-size:12px}.deliverables{display:flex;align-items:stretch;gap:var(--space-3);flex-wrap:wrap}.deliverables>.box{flex:999 560px;min-width:0}.aside-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;padding:var(--space-4);flex-direction:column;flex:280px;gap:10px;max-width:340px}.aside-card h3{font-family:var(--font-display);margin:0;font-size:15px}.aside-card p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}@media (max-width:820px){.aside-card{max-width:none}}.decisions{list-style:none;overflow:hidden}.decision{border-bottom:1px solid var(--border-subtle);display:flex;padding:14px var(--space-4);flex-direction:column;gap:6px}.decision:last-child{border-bottom:0}.decision .badge{margin-right:6px}.decision-body{color:var(--text-secondary);font-size:13px;line-height:1.45}.decision-who{color:var(--text-muted);font-size:12px}.tile-grid{display:grid;gap:var(--space-3);grid-auto-rows:minmax(132px,auto);grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1100px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.tile-grid{grid-template-columns:minmax(0,1fr)}}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);display:flex;gap:var(--space-3);overflow:hidden;padding:var(--space-4);flex-direction:column;justify-content:space-between;min-width:0;transition:border-color .12s}a.tile:hover{border-color:var(--border-strong);color:var(--text);text-decoration:none}a.tile:focus{border-color:var(--border-strong);color:var(--text);text-decoration:none}.tile-icon{display:flex;border-radius:10px;flex:none;justify-content:center;align-items: center;width:34px;height:34px}.tile-icon[data-tone=green]{background:var(--success-soft);color:var(--success)}.tile-icon[data-tone=rust]{background:var(--dot-rust-soft);color:var(--dot-rust)}.tile-text{display:flex;flex-direction:column;min-width:0}.tile-meta{color:var(--text-muted);font-size:12px}.tile-name{font-family:var(--font-display);overflow-wrap:anywhere;margin-top:3px;font-size:16px;font-weight:600;line-height:1.25}.tile-sub{color:var(--text-secondary);margin-top:var(--space-1);font-size:12.5px}.live-dot{background:var(--status-live);border-radius:50%;flex:none;width:7px;height:7px}.prototype-list{list-style:none}.prototype-row{border-bottom:1px solid var(--border-subtle);display:flex;align-items: center;gap:var(--space-2)var(--space-4);padding:var(--space-3)var(--space-4);flex-wrap:wrap;justify-content:space-between}.prototype-row:last-child{border-bottom:0}.prototype-what{min-width:0}.prototype-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.prototype-empty{color:var(--text-secondary);padding:var(--space-4);font-size:13px}.prototype-create{display:flex;align-items: end;gap:var(--space-2);flex-wrap:wrap}.prototype-create .form-field{flex:240px;max-width:360px;margin:0}.dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--text);max-width:min(520px,calc(100vw - 2*var(--space-4)));padding:var(--space-6);width:100%}.dialog::backdrop{background:var(--overlay)}.dialog h2{margin:0}.dialog form{display:flex;gap:var(--space-3);flex-direction:column}.dialog p{margin:0}.dialog-small{max-width:min(420px,calc(100vw - 2*var(--space-4)))}.dialog-hint{color:var(--text-muted);font-size:12.5px}.dialog-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2);justify-content:flex-end}.dropzone{background:var(--surface-subtle);border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);display:flex;align-items: center;gap:var(--space-1);padding:var(--space-4);position:relative;text-align:center;flex-direction:column;justify-content:center;min-height:140px}.dropzone:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.dropzone[data-dragover]{background:var(--accent-soft);border-color:var(--accent)}.dropzone-label{font-weight:500}.dropzone-alt{color:var(--text-secondary);font-size:12.5px}.dropzone-folder{color:var(--accent);cursor:pointer;position:relative;text-decoration:underline;z-index:1}.dropzone-summary{color:var(--text-secondary);font-size:12.5px}.dropzone-summary:empty{display:none}.dropzone-input{box-sizing:border-box;cursor:pointer;opacity:0;position:absolute;width:100%;height:100%;inset:0}.dialog-files{max-width:min(640px,calc(100vw - 2*var(--space-4)))}.file-list{border:1px solid var(--border);border-radius:var(--radius-md);list-style:none;overflow-y:auto;max-height:min(420px,60vh);margin:0;padding:0}.file-list li{border-bottom:1px solid var(--border-subtle);display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2)var(--space-3);justify-content:space-between}.file-list li:last-child{border-bottom:0}.file-list a{overflow-wrap:anywhere;min-width:0;font-size:13px}.file-size{color:var(--text-muted);flex-shrink:0;font-size:12px}
