.toasts[data-v-bf57d473]{z-index:100;flex-direction:column;gap:8px;max-width:min(440px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast[data-v-bf57d473]{background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:4px solid var(--accent);white-space:pre-line;border-radius:8px;align-items:flex-start;gap:8px;padding:10px 10px 10px 12px;font-size:.9rem;display:flex;box-shadow:0 6px 24px #0000002e}.toast.ok[data-v-bf57d473]{border-left-color:var(--ok)}.toast.error[data-v-bf57d473]{border-left-color:var(--danger)}.toast.warn[data-v-bf57d473]{border-left-color:var(--warn)}.backdrop[data-v-6ce8c223]{z-index:90;background:#00000073;justify-content:center;align-items:flex-start;padding:6vh 16px 16px;display:flex;position:fixed;inset:0;overflow:auto}.modal[data-v-6ce8c223]{width:min(760px,100%)}.head h2[data-v-6ce8c223]{margin:0}.body[data-v-6ce8c223]{margin-top:12px}.topbar[data-v-673b6d0e]{background:var(--surface);border-bottom:1px solid var(--border);z-index:50;padding:8px 0;position:sticky;top:0}.brand[data-v-673b6d0e]{color:var(--text);align-items:center;gap:8px;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.status[data-v-673b6d0e]{justify-content:flex-end}.main[data-v-673b6d0e]{min-height:70vh;padding-top:20px;padding-bottom:32px}.foot[data-v-673b6d0e]{padding-bottom:24px}@media (width<=720px){.status[data-v-673b6d0e]{justify-content:flex-start;width:100%}}.create[data-v-e838f7e6]{grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:12px;display:grid}.create .submit[data-v-e838f7e6]{display:flex}@media (width<=760px){.create[data-v-e838f7e6]{grid-template-columns:1fr}}.proj[data-v-e838f7e6]{flex-direction:column;gap:8px;display:flex}.title[data-v-e838f7e6]{color:var(--text);font-size:1.08rem;font-weight:650;text-decoration:none}.title[data-v-e838f7e6]:hover{color:var(--accent)}.facts[data-v-e838f7e6]{color:var(--text-2);flex-wrap:wrap;gap:4px 14px;display:flex}.warnText[data-v-e838f7e6]{color:var(--warn);font-weight:600}.last[data-v-e838f7e6]{background:var(--surface-2);border-radius:8px;padding:8px 10px}.actions[data-v-e838f7e6]{margin-top:auto}.card+.card[data-v-e838f7e6]{margin-top:0}.phead h1[data-v-72e13676]{word-break:break-word;margin:2px 0 8px}.back[data-v-72e13676]{text-decoration:none}.tabs[data-v-72e13676]{border-bottom:1px solid var(--border);scrollbar-width:thin;-webkit-overflow-scrolling:touch;gap:2px;margin-bottom:16px;display:flex;overflow-x:auto}.tab[data-v-72e13676]{color:var(--text-2);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-weight:500;text-decoration:none}.tab[data-v-72e13676]:hover{color:var(--text)}.tab.router-link-active[data-v-72e13676]{color:var(--accent);border-bottom-color:var(--accent)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f5f3;--surface:#fcfcfb;--surface-2:#efeeea;--border:#dddcd6;--text:#0b0b0b;--text-2:#52514e;--muted:#7a7974;--accent:#2a78d6;--accent-ink:#fff;--accent-soft:#e3eefb;--ok:#0f7b3e;--ok-soft:#e1f3e7;--warn:#9a5b00;--warn-soft:#fbf0d9;--danger:#c4312f;--danger-soft:#fbe5e4;--neg:#7046b8;--neg-soft:#eee7f8;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--grid:#e6e5e0;--radius:10px;--shadow:0 1px 2px #0000000f, 0 4px 16px #0000000d;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121211;--surface:#1a1a19;--surface-2:#242422;--border:#34332f;--text:#f0efec;--text-2:#c3c2b7;--muted:#8f8e86;--accent:#3987e5;--accent-ink:#fff;--accent-soft:#1b2c42;--ok:#4cc27c;--ok-soft:#173223;--warn:#e2a43b;--warn-soft:#3a2c12;--danger:#ef6b69;--danger-soft:#3d1c1b;--neg:#a78bfa;--neg-soft:#2b2340;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--grid:#2c2c29;--shadow:0 1px 2px #0000004d}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent)}h1,h2,h3,h4{margin:0 0 .5em;line-height:1.25}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1.05rem}p{margin:0 0 .75em}code,.mono{font-family:var(--mono);font-size:.9em}small,.small{font-size:.85rem}.muted{color:var(--muted)}.text-2{color:var(--text-2)}.container{max-width:1180px;margin:0 auto;padding:0 16px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card+.card,.stack>*+*{margin-top:16px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.grow{flex:auto;min-width:0}.grid{gap:16px;display:grid}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}label{color:var(--text-2);font-size:.9rem;display:block}label>input,label>select,label>textarea{margin-top:4px}input[type=text],input[type=number],input[type=search],select,textarea{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 10px}textarea{font-family:var(--mono);resize:vertical;min-height:120px;font-size:.88rem}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.check{color:var(--text);cursor:pointer;align-items:center;gap:8px;display:flex}.check input{width:16px;height:16px;margin:0}.field-help{color:var(--muted);margin-top:3px;font-size:.82rem}button,.btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.92rem;line-height:1.3;text-decoration:none;display:inline-flex}button:hover:not(:disabled),.btn:hover{background:var(--surface-2)}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary,button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn-primary:hover,button.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}button.danger{color:var(--danger)}button.danger:hover:not(:disabled){background:var(--danger-soft)}button.small,.btn.small{padding:3px 8px;font-size:.82rem}button.ghost{background:0 0;border-color:#0000}button.icon{justify-content:center;min-width:32px;padding:4px 8px}.badge{background:var(--surface-2);color:var(--text-2);white-space:nowrap;border-radius:99px;align-items:center;gap:4px;padding:1px 8px;font-size:.78rem;display:inline-flex}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.badge.neg{background:var(--neg-soft);color:var(--neg)}.notice{background:var(--accent-soft);color:var(--text);border-left:3px solid var(--accent);border-radius:8px;padding:10px 12px;font-size:.9rem}.notice.warn{background:var(--warn-soft);border-color:var(--warn)}.notice.danger{background:var(--danger-soft);border-color:var(--danger)}.notice.ok{background:var(--ok-soft);border-color:var(--ok)}.notice+.notice{margin-top:8px}.empty{text-align:center;color:var(--text-2);border:1px dashed var(--border);border-radius:var(--radius);padding:32px 16px}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:7px 8px}th{color:var(--text-2);white-space:nowrap;font-size:.82rem;font-weight:600}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface-2)}tr.selected td{background:var(--accent-soft)}.stat{background:var(--surface-2);border-radius:8px;padding:12px}.stat .label{color:var(--text-2);font-size:.8rem}.stat .value{font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:650}.stat .sub{color:var(--muted);font-size:.8rem}.stat.highlight{background:var(--warn-soft);outline:2px solid var(--warn)}.spinner{opacity:.7;border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.kbd{font-family:var(--mono);border:1px solid var(--border);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:.78rem}@media (width<=640px){body{font-size:14px}.card{padding:12px}h1{font-size:1.3rem}}@media (width<=600px){.badge{white-space:normal}}
