.icon[data-v-d1eaf635]{flex:none;display:block}.toast-host[data-v-00b19c1e]{z-index:3000;pointer-events:none;flex-direction:column;gap:8px;width:330px;max-width:calc(100vw - 28px);display:flex;position:fixed;top:14px;right:14px}.toast[data-v-00b19c1e]{border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-lg);border-left:3px solid var(--accent);pointer-events:auto;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.toast-error[data-v-00b19c1e]{border-left-color:var(--danger)}.toast-warning[data-v-00b19c1e]{border-left-color:var(--warning)}.toast-info[data-v-00b19c1e]{border-left-color:var(--info)}.toast-icon[data-v-00b19c1e]{border-radius:var(--r-pill);background:var(--accent-soft);width:21px;height:21px;color:var(--accent-strong);flex:none;justify-content:center;align-items:center;margin-top:1px;display:flex}.toast-error .toast-icon[data-v-00b19c1e]{background:var(--danger-soft);color:var(--danger)}.toast-warning .toast-icon[data-v-00b19c1e]{background:var(--warning-soft);color:var(--warning)}.toast-info .toast-icon[data-v-00b19c1e]{background:var(--info-soft);color:var(--info)}.toast-title[data-v-00b19c1e]{color:var(--ink-strong);font-size:12.5px;font-weight:600}.toast-msg[data-v-00b19c1e]{color:var(--ink-muted);overflow-wrap:anywhere;font-size:12px;line-height:1.45}.toast-close[data-v-00b19c1e]{color:var(--ink-faint);border-radius:var(--r-xs);transition:color var(--t-fast) var(--ease);flex:none;padding:2px}.toast-close[data-v-00b19c1e]:hover{color:var(--ink)}.toast-enter-active[data-v-00b19c1e]{transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out)}.toast-leave-active[data-v-00b19c1e]{transition:opacity var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);width:100%;position:absolute;right:0}.toast-enter-from[data-v-00b19c1e]{opacity:0;transform:translate(20px)scale(.97)}.toast-leave-to[data-v-00b19c1e]{opacity:0;transform:translate(20px)}.toast-move[data-v-00b19c1e]{transition:transform var(--t-base) var(--ease)}.boot[data-v-d5ac10ec]{flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;display:flex}.boot-mark[data-v-d5ac10ec]{align-items:flex-end;gap:4px;height:26px;display:flex}.boot-mark i[data-v-d5ac10ec]{background:var(--accent);width:7px;animation:bounce-d5ac10ec .9s var(--ease) infinite;border-radius:2px;display:block}.boot-mark i[data-v-d5ac10ec]:first-child{height:14px;animation-delay:0s}.boot-mark i[data-v-d5ac10ec]:nth-child(2){height:20px;animation-delay:.11s}.boot-mark i[data-v-d5ac10ec]:nth-child(3){height:26px;animation-delay:.22s}@keyframes bounce-d5ac10ec{0%,to{opacity:.5;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.boot-text[data-v-d5ac10ec]{color:var(--ink-faint);font-size:12px}.route-enter-active[data-v-d5ac10ec]{transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out)}.route-leave-active[data-v-d5ac10ec]{transition:opacity var(--t-fast) var(--ease)}.route-enter-from[data-v-d5ac10ec]{opacity:0;transform:translateY(6px)}.route-leave-to[data-v-d5ac10ec]{opacity:0}:root{--ground:#e4e9e8;--ground-deep:#d7dedc;--surface:#fff;--surface-raised:#fff;--surface-sunken:#f2f6f4;--surface-hover:#f7faf8;--ground-wash:radial-gradient(1250px 560px at 10% -10%, #fffffff2, transparent 60%), radial-gradient(1000px 640px at 98% 2%, #16a34a17, transparent 56%), radial-gradient(820px 560px at 74% 106%, #0d948812, transparent 58%), radial-gradient(900px 700px at 30% 60%, #ffffff8c, transparent 70%);--ink:#16211d;--ink-strong:#08100d;--ink-muted:#61726c;--ink-faint:#8d9c96;--accent:#16a34a;--accent-strong:#0d7c37;--accent-deep:#075e28;--accent-soft:#e3f4e9;--accent-softer:#f0faf3;--accent-line:#aadcbb;--tone-accent:#0d7c37;--tone-accent-tint:#e8f6ed;--tone-accent-ring:#bfe3cd;--tone-info:#1d4ed8;--tone-info-tint:#eaf0fe;--tone-info-ring:#c5d6fb;--tone-warning:#b45309;--tone-warning-tint:#fdf2e2;--tone-warning-ring:#f3d9ae;--tone-violet:#6537c9;--tone-violet-tint:#f1ecfd;--tone-violet-ring:#d9cbf7;--tone-teal:#0e7490;--tone-teal-tint:#e4f4f8;--tone-teal-ring:#b8e0ea;--tone-slate:#47566b;--tone-slate-tint:#eef1f6;--tone-slate-ring:#d3dbe6;--tone-danger:#c11f1f;--tone-danger-tint:#fdeaea;--tone-danger-ring:#f6c6c6;--danger:var(--tone-danger);--danger-soft:var(--tone-danger-tint);--warning:var(--tone-warning);--warning-soft:var(--tone-warning-tint);--info:var(--tone-info);--info-soft:var(--tone-info-tint);--line:#e3e9e7;--line-strong:#cfd8d5;--r-xs:7px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:26px;--r-pill:999px;--shadow-xs:0 1px 2px #0b1a150d;--shadow-sm:0 1px 2px #0b1a150d, 0 3px 10px #0b1a150d;--shadow-md:0 1px 3px #0b1a150d, 0 6px 14px #0b1a150d, 0 16px 36px #0b1a150f;--shadow-lg:0 2px 6px #0b1a1512, 0 12px 28px #0b1a1514, 0 30px 64px #0b1a151a;--shadow-pop:0 4px 12px #0b1a1517, 0 40px 90px #0b1a1533;--ring:inset 0 0 0 1px #0b1a150f;--ring-soft:inset 0 0 0 1px #0b1a150b;--sheen:inset 0 1px 0 #ffffffe6;--ease:cubic-bezier(.22, .61, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--t-fast:.12s;--t-base:.2s;--t-slow:.32s;--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mono:"SF Mono", ui-monospace, "Cascadia Mono", Menlo, monospace;--header-h:64px;--gutter:clamp(14px, 2.1vw, 40px);--stack:clamp(12px, 1.1vw, 18px);--theme-success:var(--accent);--theme-secondary:var(--tone-slate);--theme-primary:var(--tone-info);--theme-warning:var(--tone-warning);--theme-danger:var(--tone-danger);--theme-info:var(--tone-teal)}[data-tone]{--tone-ink:var(--tone-slate);--tone-tint:var(--tone-slate-tint);--tone-ring:var(--tone-slate-ring)}[data-tone=accent]{--tone-ink:var(--tone-accent);--tone-tint:var(--tone-accent-tint);--tone-ring:var(--tone-accent-ring)}[data-tone=info]{--tone-ink:var(--tone-info);--tone-tint:var(--tone-info-tint);--tone-ring:var(--tone-info-ring)}[data-tone=warning]{--tone-ink:var(--tone-warning);--tone-tint:var(--tone-warning-tint);--tone-ring:var(--tone-warning-ring)}[data-tone=violet]{--tone-ink:var(--tone-violet);--tone-tint:var(--tone-violet-tint);--tone-ring:var(--tone-violet-ring)}[data-tone=teal]{--tone-ink:var(--tone-teal);--tone-tint:var(--tone-teal-tint);--tone-ring:var(--tone-teal-ring)}[data-tone=slate]{--tone-ink:var(--tone-slate);--tone-tint:var(--tone-slate-tint);--tone-ring:var(--tone-slate-ring)}[data-tone=danger]{--tone-ink:var(--tone-danger);--tone-tint:var(--tone-danger-tint);--tone-ring:var(--tone-danger-ring)}*,:before,:after{box-sizing:border-box}html,body,#app{height:100%}body{font-family:var(--font);color:var(--ink);background:var(--ground);background-image:var(--ground-wash);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;margin:0;font-size:13px;line-height:1.5}h1,h2,h3,h4,h5,h6,p{margin:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-pill);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);background-clip:content-box}.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--ring), var(--sheen), var(--shadow-md);position:relative}.card-pad{padding:18px 20px}.shell{gap:var(--stack);width:100%;padding:var(--stack) var(--gutter) 48px;flex-direction:column;display:flex}.label{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);font-size:10.5px;font-weight:600}.value-xl{letter-spacing:-.033em;color:var(--ink-strong);font-variant-numeric:tabular-nums;font-size:32px;font-weight:680}.value-lg{letter-spacing:-.02em;color:var(--ink-strong);font-variant-numeric:tabular-nums;font-size:19px;font-weight:640}.muted{color:var(--ink-muted)}.faint{color:var(--ink-faint)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.nums{font-variant-numeric:tabular-nums}.chip{border-radius:var(--r-xs);width:30px;height:30px;color:var(--tone-ink,var(--accent-strong));background:var(--tone-tint,var(--accent-soft));box-shadow:inset 0 0 0 1px var(--tone-ring,var(--accent-line));transition:transform var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease);flex:none;justify-content:center;align-items:center;display:flex}.btn{border-radius:var(--r-sm);letter-spacing:-.005em;white-space:nowrap;height:34px;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), opacity var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:12.5px;font-weight:580;display:inline-flex;position:relative}.btn:active:not(:disabled){transform:translateY(1px)}.btn:focus-visible{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent-line);outline:none}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg, #1eb257 0%, var(--accent) 46%, var(--accent-strong) 100%);color:#fff;box-shadow:inset 0 1px #ffffff4d,inset 0 0 0 1px #064c212e,0 1px 2px #075e2840,0 6px 16px #075e2838}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg, #24bd5f 0%, #15a048 46%, var(--accent-deep) 100%);box-shadow:inset 0 1px #ffffff52,inset 0 0 0 1px #064c2138,0 2px 4px #075e2842,0 10px 24px #075e2847}.btn-soft{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-line)}.btn-soft:hover:not(:disabled){background:#d7eedf;box-shadow:inset 0 0 0 1px #8fd0a6,0 2px 8px #0d7c371f}.btn-ghost{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong), var(--shadow-xs)}.btn-ghost:hover:not(:disabled){color:var(--ink-strong);box-shadow:inset 0 0 0 1px var(--ink-faint), var(--shadow-sm)}.btn-quiet{color:var(--ink-muted);background:0 0}.btn-quiet:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}.btn-danger{background:var(--danger-soft);color:var(--danger);box-shadow:inset 0 0 0 1px var(--tone-danger-ring)}.btn-danger:hover:not(:disabled){background:var(--danger);color:#fff;box-shadow:inset 0 1px #ffffff38,0 6px 16px #c11f1f42}.btn-sm{height:29px;padding:0 11px;font-size:12px}.btn-lg{height:40px;padding:0 20px;font-size:13.5px}.icon-btn{border-radius:var(--r-pill);width:32px;height:32px;color:var(--ink-muted);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:0 0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--accent-softer);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-line)}.icon-btn:active:not(:disabled){transform:scale(.93)}.icon-btn.on-surface{background:var(--surface);box-shadow:inset 0 0 0 1px #0b1a150d, var(--shadow-xs)}.icon-btn.on-surface:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--accent-line), var(--shadow-sm)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.pill{border-radius:var(--r-pill);letter-spacing:.015em;white-space:nowrap;height:21px;color:var(--tone-ink,var(--ink-muted));background:var(--tone-tint,var(--surface-sunken));box-shadow:inset 0 0 0 1px var(--tone-ring,var(--line-strong));align-items:center;gap:5px;padding:0 9px;font-size:10.5px;font-weight:640;display:inline-flex}.pill-accent{color:var(--tone-accent);background:var(--tone-accent-tint);box-shadow:inset 0 0 0 1px var(--tone-accent-ring)}.pill-neutral{color:var(--tone-slate);background:var(--tone-slate-tint);box-shadow:inset 0 0 0 1px var(--tone-slate-ring)}.pill-danger{color:var(--tone-danger);background:var(--tone-danger-tint);box-shadow:inset 0 0 0 1px var(--tone-danger-ring)}.pill-warning{color:var(--tone-warning);background:var(--tone-warning-tint);box-shadow:inset 0 0 0 1px var(--tone-warning-ring)}.pill-info{color:var(--tone-info);background:var(--tone-info-tint);box-shadow:inset 0 0 0 1px var(--tone-info-ring)}.dot{border-radius:var(--r-pill);flex:none;width:6px;height:6px;box-shadow:0 0 0 3px #16a34a24}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field>.label{padding-left:1px}.input{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);width:100%;height:36px;color:var(--ink);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), background var(--t-fast) var(--ease);padding:0 11px;font-size:13px;box-shadow:inset 0 1px 2px #0b1a150a}.input::placeholder{color:var(--ink-faint)}.input:hover:not(:disabled):not(:read-only){border-color:var(--ink-faint)}.input:focus{border-color:var(--accent);box-shadow:inset 0 1px 2px #0b1a1508, 0 0 0 3px var(--accent-soft);outline:none}.input:disabled,.input:read-only{background:var(--surface-sunken);color:var(--ink-muted);box-shadow:none;cursor:not-allowed}.input.is-invalid{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}textarea.input{resize:vertical;height:auto;min-height:68px;padding:9px 11px;line-height:1.5}.field-error{color:var(--danger);align-items:center;gap:4px;font-size:11px;font-weight:500;display:flex}.upper{text-transform:uppercase}.tbl{border-collapse:separate;border-spacing:0;width:100%}.tbl th{text-align:left;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line-strong);white-space:nowrap;background:0 0;padding:4px 12px 9px;font-size:10px;font-weight:650}.tbl td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 12px}.tbl tbody tr:last-child td{border-bottom:0}.tbl tbody tr{transition:background var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease)}.tbl tbody tr:hover{background:linear-gradient(90deg, var(--accent-softer), var(--surface-hover) 45%);box-shadow:inset 2px 0 0 var(--accent)}.tbl-empty{text-align:center;color:var(--ink-faint);padding:40px 12px;font-size:12.5px}.row{align-items:center;display:flex}.row-gap{align-items:center;gap:8px;display:flex}.col{flex-direction:column;display:flex}.between{justify-content:space-between;align-items:center;display:flex}.grow{flex:1;min-width:0}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hidden{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position-x:-200%}}.enter{animation:fade-up var(--t-slow) var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms)}.spinner{border-radius:var(--r-pill);border:2px solid;border-right-color:#0000;flex:none;width:15px;height:15px;animation:.64s linear infinite spin}.skeleton{background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--ground-deep) 37%, var(--surface-sunken) 63%);border-radius:var(--r-xs);background-size:200% 100%;animation:1.3s linear infinite shimmer}.t-fade-enter-active,.t-fade-leave-active{transition:opacity var(--t-base) var(--ease)}.t-fade-enter-from,.t-fade-leave-to{opacity:0}.t-rise-enter-active{transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out)}.t-rise-leave-active{transition:opacity var(--t-fast) var(--ease), transform var(--t-fast) var(--ease)}.t-rise-enter-from,.t-rise-leave-to{opacity:0;transform:translateY(6px)}.t-rows-enter-active{transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out)}.t-rows-leave-active{transition:opacity var(--t-fast) var(--ease);width:100%;position:absolute}.t-rows-enter-from{opacity:0;transform:translateY(-4px)}.t-rows-leave-to{opacity:0}.t-rows-move{transition:transform var(--t-base) var(--ease)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
