:root{--bg:#eef1f6;--bg-elevated:#fff;--glass:#ffffffa8;--glass-strong:#ffffffd6;--glass-hover:#fffffff2;--glass-active:#091e4214;--border:#091e421a;--border-strong:#091e422e;--hairline:#091e4214;--text:#091e42eb;--text-dim:#091e429e;--text-faint:#091e4275;--text-ghost:#091e424d;--ambient-1:#0a84ff2e;--ambient-2:#bf5af224;--ambient-3:#30d1581a;--accent:#0071e3;--accent-hover:#0062c4;--accent-soft:#0071e31a;--accent-line:#0071e34d;--accent-text:#0059b3;--success:#248a3d;--success-soft:#248a3d1f;--success-line:#248a3d4d;--success-text:#1b6b2e;--warning:#a86a00;--warning-soft:#a86a0021;--warning-line:#a86a004d;--warning-text:#855400;--danger:#d70015;--danger-soft:#d700151a;--danger-line:#d7001547;--danger-text:#b00011;--danger-hover-soft:#d700152e;--danger-text-hover:#8c000e;--info:#0a7ea4;--info-soft:#0a7ea41f;--info-line:#0a7ea44d;--info-text:#08657f;--purple:#8944ab;--purple-soft:#8944ab1f;--purple-line:#8944ab4d;--purple-text:#6f3589;--tile-1:#0071e3;--tile-2:#7c3aed;--tile-3:#0f766e;--tile-4:#c2410c;--tile-5:#15803d;--tile-on:#fff;--on-accent:#fff;--select-panel:#fff;--picker-filter:none;--scrim:#091e4261;--switch-thumb:#fff;--switch-thumb-shadow:0 1px 3px #091e4247;--tint-accent:#0071e324;--tint-success:#248a3d21;--tint-warning:#a86a0021;--tint-danger:#d700151c;--tint-purple:#8944ab21;--shadow-sm:0 1px 3px #091e4214;--shadow-md:0 10px 30px #091e421f;--shadow-lg:0 24px 60px #091e422e;--glow:inset 0 1px 0 #ffffffd9;--accent-glow:0 6px 20px #0071e347;--accent-inset:inset 0 1px 0 #ffffff4d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--radius-xs:10px;--radius-sm:16px;--radius-md:20px;--radius-lg:26px;--radius-xl:32px;--radius-2xl:36px;--radius-pill:999px;--blur:28px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--ease:cubic-bezier(.32, .72, 0, 1);--duration:.26s;--nav-width:268px;--content-max:1240px}:root[data-theme=dark]{--bg:#000;--bg-elevated:#0a0a0c;--glass:#ffffff0b;--glass-strong:#ffffff13;--glass-hover:#ffffff1a;--glass-active:#ffffff24;--border:#ffffff1a;--border-strong:#ffffff2e;--hairline:#ffffff0f;--text:#fffffff5;--text-dim:#ffffff9e;--text-faint:#fff6;--text-ghost:#ffffff3d;--ambient-1:#0a84ff29;--ambient-2:#bf5af21f;--ambient-3:#30d15814;--accent:#0a84ff;--accent-hover:#3b9dff;--accent-soft:#0a84ff29;--accent-line:#0a84ff6b;--accent-text:#8cc4ff;--success:#30d158;--success-soft:#30d15829;--success-line:#30d15857;--success-text:#7ce68f;--warning:#ffd60a;--warning-soft:#ffd60a29;--warning-line:#ffd60a57;--warning-text:#ffe066;--danger:#ff453a;--danger-soft:#ff453a29;--danger-line:#ff453a5c;--danger-text:#ff9c94;--danger-hover-soft:#ff453a42;--danger-text-hover:#ffb0a8;--info:#64d2ff;--info-soft:#64d2ff29;--info-line:#64d2ff57;--info-text:#9ce2ff;--purple:#bf5af2;--purple-soft:#bf5af229;--purple-line:#bf5af257;--purple-text:#d79bf7;--tile-1:#0a84ff;--tile-2:#a855f7;--tile-3:#0d9488;--tile-4:#ea580c;--tile-5:#16a34a;--tile-on:#fff;--on-accent:#fff;--select-panel:#14141a;--picker-filter:invert(1);--scrim:#000000a8;--switch-thumb:#fff;--switch-thumb-shadow:0 2px 6px #0000006b;--tint-accent:#0a84ff38;--tint-success:#30d15833;--tint-warning:#ffd60a2e;--tint-danger:#ff453a33;--tint-purple:#bf5af233;--shadow-sm:0 2px 12px #00000080;--shadow-md:0 12px 40px #0000009e;--shadow-lg:0 24px 70px #000000b8;--glow:inset 0 1px 0 #ffffff24;--accent-glow:0 6px 22px #0a84ff5c;--accent-inset:inset 0 1px 0 #ffffff42;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);min-height:100dvh;color:var(--text);transition:background var(--duration) var(--ease),color var(--duration) var(--ease);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Inter,Roboto,Helvetica Neue,sans-serif;font-size:15px;line-height:1.55;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(60rem 40rem at 12% -8%,var(--ambient-1),transparent 62%),radial-gradient(50rem 36rem at 92% 4%,var(--ambient-2),transparent 60%),radial-gradient(46rem 40rem at 50% 108%,var(--ambient-3),transparent 62%);position:fixed;inset:0}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4{letter-spacing:-.028em;font-weight:650;line-height:1.2}h1{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.2rem)}h2{font-size:1.35rem}h3{font-size:1.08rem}.glass{background:var(--glass);-webkit-backdrop-filter:blur(var(--blur)) saturate(180%);backdrop-filter:blur(var(--blur)) saturate(180%);border:1px solid var(--border);box-shadow:var(--shadow-sm),var(--glow)}.glass-strong{background:var(--glass-strong);-webkit-backdrop-filter:blur(var(--blur)) saturate(200%);backdrop-filter:blur(var(--blur)) saturate(200%);border:1px solid var(--border-strong);box-shadow:var(--shadow-md),var(--glow)}.page{z-index:1;gap:var(--space-5);flex-direction:column;display:flex;position:relative}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-head p{color:var(--text-dim);margin-top:var(--space-1);font-size:.92rem}.grid{gap:var(--space-4);display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.row{align-items:center;gap:var(--space-3);display:flex}.row-wrap{flex-wrap:wrap}.stack{gap:var(--space-3);flex-direction:column;display:flex}.spacer{flex:1}.text-dim{color:var(--text-dim)}.text-faint{color:var(--text-faint)}.text-sm{font-size:.86rem}.text-xs{font-size:.78rem}.mono{letter-spacing:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8rem}.form-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.form-error{border-radius:var(--radius-xs);background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger-text);padding:10px 13px;font-size:.82rem}.filters{gap:var(--space-3);grid-template-columns:1fr 220px;display:grid}@media (width<=640px){.filters{grid-template-columns:1fr}.page{gap:var(--space-4)}.page-head{align-items:flex-start}.page-head__actions{width:100%}.grid{gap:var(--space-3)}.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:minmax(0,1fr)}h1{font-size:1.5rem}h2{font-size:1.18rem}}@media (width<=360px){.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--accent-soft);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-ghost)}.page-enter-active,.page-leave-active{transition:opacity var(--duration) var(--ease),transform var(--duration) var(--ease)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-6px)}.fade-enter-active,.fade-leave-active{transition:opacity .2s var(--ease)}.fade-enter-from,.fade-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}.safe-top{padding-top:var(--safe-top)}.safe-bottom{padding-bottom:var(--safe-bottom)}@media print{body,html{color:#000!important;background:#fff!important}.dash__nav,.dash__scrim,.dash__topbar,.overlay,.toasts,body:after,body:before{display:none!important}.dash,.dash__body,.dash__content{min-height:0!important;margin:0!important;padding:0!important;display:block!important}.glass,.glass-strong{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background:#fff!important}@page{size:A4;margin:14mm}}.confirm__message[data-v-d84c1388]{color:var(--text-dim);white-space:pre-line;font-size:.92rem}.confirm__detail[data-v-d84c1388]{margin-top:var(--space-3);border-radius:var(--radius-xs);background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger-text);align-items:flex-start;gap:7px;padding:10px 13px;font-size:.82rem;display:flex}.confirm__detail svg[data-v-d84c1388]{flex-shrink:0;margin-top:2px}.install[data-v-6bf8df9f]{z-index:130;left:var(--space-4);right:var(--space-4);bottom:var(--space-4);gap:var(--space-3) var(--space-4);max-width:520px;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);grid-template-columns:auto 1fr;margin-inline:auto;display:grid;position:fixed}.install__icon[data-v-6bf8df9f]{border-radius:var(--radius-sm);width:44px;height:44px;box-shadow:var(--accent-glow);flex-shrink:0;place-items:center;display:grid}.install__title[data-v-6bf8df9f]{letter-spacing:-.015em;padding-right:var(--space-5);font-size:.95rem;font-weight:620}.install__desc[data-v-6bf8df9f]{color:var(--text-dim);margin-top:2px;font-size:.8rem}.install__actions[data-v-6bf8df9f]{gap:var(--space-2);flex-wrap:wrap;grid-column:2;display:flex}.install__close[data-v-6bf8df9f]{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:10px;right:10px}.install__close[data-v-6bf8df9f]:hover{background:var(--glass);color:var(--text)}.install-enter-active[data-v-6bf8df9f],.install-leave-active[data-v-6bf8df9f]{transition:opacity var(--duration) var(--ease),transform var(--duration) var(--ease)}.install-enter-from[data-v-6bf8df9f],.install-leave-to[data-v-6bf8df9f]{opacity:0;transform:translateY(14px)}@media (width<=640px){.install[data-v-6bf8df9f]{gap:var(--space-3);grid-template-columns:1fr}.install__icon[data-v-6bf8df9f]{display:none}.install__actions[data-v-6bf8df9f]{grid-column:1}}.update[data-v-c8985f61]{z-index:140;left:var(--space-4);right:var(--space-4);bottom:var(--space-4);align-items:center;gap:var(--space-3);max-width:420px;padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-lg);margin-inline:auto;display:flex;position:fixed}.update[data-v-c8985f61],.update__icon[data-v-c8985f61]{border-radius:var(--radius-pill)}.update__icon[data-v-c8985f61]{background:var(--accent-soft);border:1px solid var(--accent-line);width:32px;height:32px;color:var(--accent-text);flex-shrink:0;place-items:center;display:grid}.update__text[data-v-c8985f61]{flex:1;min-width:0;font-size:.85rem;font-weight:540}.update__close[data-v-c8985f61]{border-radius:var(--radius-pill);width:26px;height:26px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;display:grid}.pwa-update-enter-active[data-v-c8985f61],.pwa-update-leave-active[data-v-c8985f61]{transition:opacity var(--duration) var(--ease),transform var(--duration) var(--ease)}.pwa-update-enter-from[data-v-c8985f61],.pwa-update-leave-to[data-v-c8985f61]{opacity:0;transform:translateY(14px)}.err[data-v-f741c94c]{z-index:1;min-height:100dvh;padding:var(--space-5);place-items:center;display:grid;position:relative}.err__card[data-v-f741c94c]{width:100%;max-width:460px;padding:var(--space-6);border-radius:var(--radius-2xl);text-align:center}.err__icon[data-v-f741c94c]{width:60px;height:60px;margin:0 auto var(--space-4);border-radius:var(--radius-md);background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger-text);place-items:center;display:grid}.err__code[data-v-f741c94c]{letter-spacing:.1em;color:var(--text-ghost);font-size:.78rem;font-weight:640}.err__title[data-v-f741c94c]{margin:var(--space-2) 0;font-size:1.5rem}.err__message[data-v-f741c94c]{color:var(--text-dim);font-size:.92rem}.err__actions[data-v-f741c94c]{justify-content:center;gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}
