@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2)format("woff2-variations");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{--clay:#c17554;--clay-strong:#b26647;--clay-soft:#f3e2d7;--rust:#a85a3f;--rust-deep:#8f4a32;--bark:#3a2c26;--bark-deep:#2b211b;--charcoal:#2d2520;--moss:#617155;--moss-soft:#e9efe3;--cream:#fbf7f3;--canvas:#f6f1ea;--card:#fffdfa;--inset:#f2ebe1;--ink:#2d2520;--ink-soft:#6b5f55;--ink-muted:#93867a;--border:#e9e0d3;--border-strong:#d9cdbb;--danger:#b3402e;--danger-strong:#9c3627;--danger-soft:#f7e7e2;--warn:#9a7328;--warn-soft:#f6ecd9;--ok:#617155;--ok-soft:#e9efe3;--info:#4a6b7a;--info-soft:#e3edf0;--skeleton-mid:#ece3d6;--knob:#fff;--sidebar-active:#f0d3c2;--font-display:"Bricolage Grotesque Variable", "Instrument Sans Variable", system-ui, sans-serif;--font-sans:"Instrument Sans Variable", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius-sm:6px;--radius-md:8px;--shadow-sm:0 1px 2px #3a2c260d, 0 2px 6px #3a2c260a;--shadow-md:0 2px 4px #3a2c260f, 0 8px 24px #3a2c2612;--ring:0 0 0 3px #c1755440;--z-dropdown:100;--z-sticky:200;--z-overlay:900;--z-modal:1000;--z-popover:1100;--z-toast:9999}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14.5px;line-height:1.5}h1,h2,h3,h4,h5,h6{text-wrap:balance;font-weight:600;line-height:1.2}a{color:var(--clay-strong);text-decoration:none}a:hover{text-decoration:underline}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}:focus-visible{outline:2px solid var(--clay);outline-offset:2px;border-radius:var(--radius-sm)}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position-x:-200%}}.fade-up{animation:.2s ease-out both fade-up}.spin{animation:.75s linear infinite spin}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-size:12px;font-weight:600}.btn{font-family:var(--font-sans);white-space:nowrap;border-radius:var(--radius-sm);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-weight:600;line-height:1;transition:background-color .16s ease-out,border-color .16s ease-out,color .16s ease-out,box-shadow .16s ease-out;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.size-sm{height:32px;padding:0 12px;font-size:13px}.btn.size-md{height:40px;padding:0 18px;font-size:14.5px}.btn.block{width:100%}.btn.primary{background:var(--clay);color:var(--cream)}.btn.primary:hover:not(:disabled){background:var(--clay-strong)}.btn.primary:active:not(:disabled){background:var(--rust-deep)}.btn.secondary{background:var(--card);color:var(--ink);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.btn.secondary:hover:not(:disabled){background:var(--cream);border-color:var(--ink-muted)}.btn.ghost{color:var(--ink-soft);background:0 0}.btn.ghost:hover:not(:disabled){background:var(--inset);color:var(--ink)}.btn.danger{background:var(--danger);color:var(--cream)}.btn.danger:hover:not(:disabled){background:var(--danger-strong)}.linkish{color:var(--ink-soft);border-radius:var(--radius-sm);font-size:13.5px;font-weight:500;transition:color .15s ease-out}.linkish:hover{color:var(--clay-strong);text-decoration:underline}.field{flex-direction:column;gap:6px;display:flex}.field>label{color:var(--ink);font-size:13px;font-weight:600}.field input,.field textarea{width:100%;color:var(--ink);background:var(--card);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:10px 12px;font-size:16px;transition:border-color .15s ease-out,box-shadow .15s ease-out}.field input::placeholder,.field textarea::placeholder{color:var(--ink-muted)}.field input:focus,.field textarea:focus{border-color:var(--clay);box-shadow:var(--ring);outline:none}.field .field-error{color:var(--danger);font-size:12.5px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.empty-card{text-align:center;padding:40px 32px}.empty-card__title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:18px;font-weight:600}.empty-card__body{color:var(--ink-soft);margin-top:6px;text-wrap:balance;max-width:42ch;margin-inline:auto;font-size:14.5px}.pill{white-space:nowrap;border-radius:20px;align-items:center;gap:5px;font-weight:600;display:inline-flex}.pill.size-sm{padding:2px 8px;font-size:11.5px}.pill.size-md{padding:3px 10px;font-size:12.5px}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.danger{background:var(--danger-soft);color:var(--danger)}.pill.info{background:var(--info-soft);color:var(--info)}.pill.neutral{background:var(--inset);color:var(--ink-soft)}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--inset) 0%, var(--skeleton-mid) 20%, var(--inset) 40%);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.page-header{margin-bottom:28px}.page-header__eyebrow{margin-bottom:8px}.page-header__titlerow{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-header__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:clamp(30px,4vw,36px);font-weight:600}.page-header__actions{align-items:center;gap:8px;display:flex}.page-header__desc{color:var(--ink-soft);max-width:60ch;margin-top:8px;font-size:15px}.app-shell{--sidebar-width:264px;grid-template-columns:var(--sidebar-width) 1fr;min-height:100dvh;display:grid}.app-shell__aside{height:100dvh;position:sticky;top:0}.app-shell__main{background:var(--canvas);min-width:0}.app-shell__content{max-width:1160px;margin-inline:auto;padding:40px 40px 64px;animation:.2s ease-out both fade-up}.app-topbar,.app-shell__scrim,.app-shell__close{display:none}.sidebar{background:var(--bark-deep);height:100%;color:var(--cream);overscroll-behavior:contain;flex-direction:column;padding:22px 16px 18px;display:flex;overflow-y:auto}.sidebar__brand{align-items:center;gap:8px;padding:4px 8px 24px;display:flex}.sidebar__mark{color:var(--clay);display:inline-flex}.sidebar__wordmark{font-family:var(--font-display);letter-spacing:-.02em;color:var(--cream);font-size:22px;font-weight:600}.sidebar__nav{flex-direction:column;flex:1;gap:22px;display:flex}.sidebar__section{flex-direction:column;gap:6px;display:flex}.sidebar__eyebrow{color:#fbf7f36b;padding:0 10px;font-size:10.5px}.sidebar__list{flex-direction:column;gap:1px;padding:0;list-style:none;display:flex}.sidebar__link{border-radius:var(--radius-sm);color:#fbf7f3a6;align-items:center;gap:12px;padding:8px;font-size:14px;font-weight:500;transition:color .15s ease-out,background-color .15s ease-out;display:flex;position:relative}.sidebar__link:hover{color:var(--cream);background:#fbf7f30f;text-decoration:none}.sidebar__link .sidebar__icon{opacity:.85;flex-shrink:0}.sidebar__link.is-active{color:var(--sidebar-active);background:#c1755424}.sidebar__link.is-active:before{content:"";background:var(--clay);border-radius:2px;width:2px;height:18px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar__link.is-active .sidebar__icon{opacity:1;color:var(--clay)}.sidebar__footer{border-top:1px solid #fbf7f31a;flex-direction:column;gap:10px;margin-top:18px;padding-top:16px;display:flex}.sidebar__user{border-radius:var(--radius-sm);align-items:center;gap:10px;min-width:0;padding:6px;transition:background-color .15s ease-out;display:flex}.sidebar__user:hover{background:#fbf7f30f;text-decoration:none}.sidebar__user.is-active{background:#c1755424}.sidebar__avatar{background:var(--clay-soft);width:32px;height:32px;color:var(--rust-deep);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid}.sidebar__usermeta{flex-direction:column;min-width:0;display:flex}.sidebar__username{color:var(--cream);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.sidebar__org{color:#fbf7f380;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sidebar__signout{border-radius:var(--radius-sm);color:#fbf7f399;align-items:center;gap:10px;padding:8px;font-size:13.5px;font-weight:500;transition:color .15s ease-out,background-color .15s ease-out;display:flex}.sidebar__signout:hover:not(:disabled){color:var(--cream);background:#fbf7f30f}.sidebar__signout:disabled{opacity:.5;cursor:default}@media (width<=1024px){.app-shell{--sidebar-width:72px}.sidebar{align-items:stretch;padding:22px 12px 18px}.sidebar__wordmark,.sidebar__eyebrow,.sidebar__label,.sidebar__usermeta{display:none}.sidebar__brand{justify-content:center;padding:4px 0 22px}.sidebar__link,.sidebar__signout{justify-content:center;padding:10px 0}.sidebar__link.is-active:before{left:-4px}.sidebar__user{justify-content:center;padding:2px 0}.app-shell__content{padding:36px 28px 56px}}@media (width<=768px){.app-shell{--sidebar-width:264px;display:block}.app-topbar{background:var(--card);border-bottom:1px solid var(--border);height:56px;z-index:var(--z-sticky);align-items:center;gap:12px;padding:0 14px;display:flex;position:sticky;top:0}.app-topbar__toggle{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--ink);justify-content:center;align-items:center;margin-left:-8px;display:inline-flex}.app-topbar__toggle:hover{background:var(--inset)}.app-topbar__brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);align-items:center;gap:7px;font-size:19px;font-weight:600;display:inline-flex}.app-topbar__brand svg{color:var(--clay)}.app-shell__aside{z-index:var(--z-overlay);width:var(--sidebar-width);max-width:84vw;height:100dvh;transition:transform .22s ease-out;position:fixed;top:0;left:0;transform:translate(-100%)}.app-shell.is-mobile-open .app-shell__aside{transform:none}.sidebar{align-items:stretch;padding:22px 16px 18px}.sidebar__wordmark,.sidebar__eyebrow,.sidebar__label{display:revert}.sidebar__usermeta{display:flex}.sidebar__brand{justify-content:flex-start;padding:4px 10px 22px}.sidebar__link,.sidebar__signout{justify-content:flex-start;padding:8px}.sidebar__user{justify-content:flex-start;padding:2px 6px}.app-shell__close{z-index:1;border-radius:var(--radius-sm);color:#fbf7f3b3;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;position:absolute;top:14px;right:12px}.app-shell__close:hover{color:var(--cream);background:#fbf7f314}.app-shell__scrim{z-index:var(--z-modal);opacity:0;pointer-events:none;background:#2b211b80;transition:opacity .2s ease-out;display:block;position:fixed;inset:0}.app-shell.is-mobile-open .app-shell__scrim{opacity:1;pointer-events:auto}.app-shell.is-mobile-open .app-shell__aside{z-index:calc(var(--z-modal) + 1)}.app-shell__content{padding:24px 18px 48px}}.auth-page{background:var(--canvas);place-items:center;min-height:100dvh;padding:40px 20px;display:grid}.auth-column{flex-direction:column;width:100%;max-width:384px;display:flex}.auth-brand{justify-content:center;align-items:center;gap:12px;display:flex}.auth-brand__mark{color:var(--clay);display:inline-flex}.auth-brand__wordmark{font-family:var(--font-display);letter-spacing:-.03em;color:var(--bark);font-size:40px;font-weight:600;line-height:1}.auth-subline{text-align:center;color:var(--ink-soft);text-wrap:balance;margin-top:14px;font-size:14.5px}.auth-card{flex-direction:column;gap:18px;margin-top:28px;padding:32px;display:flex}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form .btn{margin-top:2px}.auth-step-head{flex-direction:column;gap:6px;display:flex}.auth-step-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:600}.auth-step-line{color:var(--ink-soft);text-wrap:balance;font-size:14px}.auth-code-input{text-align:center;letter-spacing:.4em;font-variant-numeric:tabular-nums;font-family:var(--font-mono)!important;font-size:20px!important}.auth-error{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius-sm);padding:10px 12px;font-size:13.5px;font-weight:500}.auth-links{flex-direction:column;align-items:center;gap:8px;margin-top:4px;display:flex}.auth-foot{text-align:center;margin-top:20px}.app-loading{background:var(--canvas);place-items:center;min-height:100dvh;display:grid}.panel-state{text-align:center;max-width:460px;margin-inline:auto;padding:48px 24px}.panel-state h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:22px}.panel-state p{color:var(--ink-soft);text-wrap:balance;margin-top:8px}.panel-state .btn{margin-top:18px}.error-boundary__detail{background:var(--inset);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--ink-soft);white-space:pre-wrap;text-align:left;margin-top:14px;padding:10px 12px;font-size:12.5px;overflow-x:auto}.error-boundary__stack{text-align:left;margin-top:10px}.error-boundary__stack summary{cursor:pointer;color:var(--ink-soft);font-size:12.5px}.error-boundary__stack pre{font-family:var(--font-mono);color:var(--ink-muted);margin-top:8px;font-size:11.5px;overflow-x:auto}.toggle{background:var(--border-strong);border-radius:20px;flex-shrink:0;width:40px;height:24px;transition:background-color .16s ease-out;position:relative}.toggle--on{background:var(--clay)}.toggle:disabled{opacity:.5;cursor:not-allowed}.toggle__knob{background:var(--knob);border-radius:50%;width:18px;height:18px;transition:transform .16s ease-out;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #3a2c2640}.toggle--on .toggle__knob{transform:translate(16px)}.modal-backdrop{z-index:var(--z-modal);background:#2b211b70;animation:.15s ease-out both fade-up;position:fixed;inset:0}.modal-shell{z-index:calc(var(--z-modal) + 1);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);max-height:min(88vh,720px);box-shadow:var(--shadow-md);flex-direction:column;animation:.18s ease-out both modal-in;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}@keyframes modal-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))}to{opacity:1;transform:translate(-50%,-50%)}}@media (width<=480px){.modal-shell{max-height:82vh;width:calc(100vw - 24px)!important}}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 14px;display:flex}.modal-titlerow h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:18px}.modal-subtitle{color:var(--ink-soft);margin-top:4px;font-size:13.5px}.modal-close{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--ink-muted);justify-content:center;align-items:center;margin:-4px -4px 0 0;transition:color .15s ease-out,background-color .15s ease-out;display:inline-flex}.modal-close:hover{color:var(--ink);background:var(--inset)}.modal-body{overscroll-behavior:contain;padding:20px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.ui-select{width:100%;display:inline-flex;position:relative}.ui-select__trigger{background:var(--card);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;height:40px;color:var(--ink);justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:14.5px;transition:border-color .15s ease-out,box-shadow .15s ease-out;display:flex}.ui-select__trigger:hover:not(:disabled){border-color:var(--ink-muted)}.ui-select__trigger:focus-visible,.ui-select.is-open .ui-select__trigger{border-color:var(--clay);box-shadow:var(--ring)}.ui-select__trigger:disabled{opacity:.6;cursor:not-allowed}.ui-select__value{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;min-width:0;display:inline-flex;overflow:hidden}.ui-select__placeholder{color:var(--ink-muted)}.ui-select__chevron{color:var(--ink-muted);flex-shrink:0;transition:transform .16s ease-out}.ui-select.is-open .ui-select__chevron{transform:rotate(180deg)}.ui-select__dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.ui-select__panel{z-index:var(--z-popover);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;animation:.14s ease-out both fade-up;display:flex;position:fixed;overflow:hidden}.ui-select__search{border-bottom:1px solid var(--border);color:var(--ink-muted);align-items:center;gap:8px;padding:8px 12px;display:flex}.ui-select__search input{background:0 0;border:none;outline:none;flex:1;font-size:16px}.ui-select__list{overscroll-behavior:contain;margin:0;padding:6px;list-style:none;overflow-y:auto}.ui-select__list:focus{outline:none}.ui-select__group{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);padding:8px 8px 4px;font-size:11px;font-weight:600}.ui-select__option{border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;align-items:center;gap:9px;padding:8px 9px;font-size:14px;display:flex}.ui-select__option.is-active{background:var(--inset)}.ui-select__option.is-selected{color:var(--rust-deep);font-weight:600}.ui-select__option.is-disabled{opacity:.5;cursor:not-allowed}.ui-select__option-text{flex-direction:column;flex:1;min-width:0;display:flex}.ui-select__option-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-select__option-desc{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}.ui-select__check{color:var(--clay);flex-shrink:0}.ui-select__empty{text-align:center;color:var(--ink-muted);padding:16px 12px;font-size:13.5px}.toast-viewport{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:10px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--ink-muted);border-radius:var(--radius-md);box-shadow:var(--shadow-md);pointer-events:auto;align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;animation:.2s ease-out both toast-in;display:flex}.toast--ok{border-left-color:var(--ok)}.toast--danger{border-left-color:var(--danger)}.toast--info{border-left-color:var(--info)}.toast__icon{flex-shrink:0;margin-top:1px}.toast--ok .toast__icon{color:var(--ok)}.toast--danger .toast__icon{color:var(--danger)}.toast--info .toast__icon{color:var(--info)}.toast__message{color:var(--ink);flex:1;font-size:14px;line-height:1.4}.toast__close{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--ink-muted);flex-shrink:0;justify-content:center;align-items:center;margin:-3px -3px 0 0;transition:color .15s ease-out,background-color .15s ease-out;display:inline-flex}.toast__close:hover{color:var(--ink);background:var(--inset)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (width<=768px){.toast-viewport{max-width:none;bottom:16px;left:16px;right:16px}}
