:root{--bg:#f4f6fb;--surface:#fff;--fg:#1d2330;--muted:#5d6677;--line:#e1e5ee;--accent:#3b5bdb;--accent-fg:#fff;--accent-soft:#e8edff;--ok:#1b7a3a;--warn:#a15c00;--danger:#c92a2a;--radius:10px;--shadow:0 1px 2px #141e3c0f, 0 4px 14px #141e3c0f}@media (prefers-color-scheme:dark){:root{--bg:#0f1218;--surface:#181c26;--fg:#e8ebf2;--muted:#9aa3b5;--line:#2a3141;--accent:#7c9cff;--accent-fg:#0f1218;--accent-soft:#232b45;--ok:#5cc27d;--warn:#e0a24a;--danger:#ff8787;--shadow:0 1px 2px #0006, 0 4px 14px #0000004d}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);max-width:980px;margin:0 auto;padding:0 16px 64px;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}h1{letter-spacing:-.01em;margin:0;font-size:1.25rem}h1 a{color:inherit;text-decoration:none}h2{margin:28px 0 10px;font-size:1.2rem}h3{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:22px 0 8px;font-size:.78rem}header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:8px;padding:14px 0;display:flex}h1:before{content:"";background:var(--accent);border-radius:3px;width:12px;height:12px;margin-right:10px;display:inline-block}nav{align-items:center;gap:10px;display:flex}button,.btn{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;border-radius:8px;padding:7px 14px;font-size:.92rem;transition:border-color .12s,background .12s,box-shadow .12s;display:inline-block}button:hover,.btn:hover{border-color:var(--accent)}button:focus-visible,.btn:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}form>button:last-child,.row>button:last-child:not([id^=pick-]){background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}form>button:last-child:hover{box-shadow:var(--shadow)}button.danger{color:var(--danger)}button.danger:hover{border-color:var(--danger)}button:disabled{opacity:.55;cursor:progress}input,select{font:inherit;border:1px solid var(--line);background:var(--surface);color:inherit;border-radius:8px;width:100%;padding:8px 10px}label{color:var(--muted);flex-direction:column;gap:3px;font-size:.82rem;display:flex}.grid{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;padding:16px;display:grid}.row{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.row input{flex:160px;width:auto}body>header+p.note,header~p.note{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;display:flex}header~p.note select{width:auto}header~ol.note{background:var(--accent-soft);border-radius:var(--radius);padding:12px 12px 12px 34px}details{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:12px 0;padding:10px 14px}details>summary{cursor:pointer;font-weight:600}details.menu{background:0 0;border:0;margin:0;padding:0;position:relative}details.menu>summary{font-weight:400;list-style:none}details.menu>summary::-webkit-details-marker{display:none}details.menu>summary:after{content:" ▾"}.menu-panel{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:190px;box-shadow:var(--shadow);flex-direction:column;gap:6px;padding:10px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.menu-panel>*{text-align:left;width:100%}.queue{gap:10px;margin:0;padding:0;list-style:none;display:grid}.q,.queue>li{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:12px 16px;display:flex}.actions{flex-wrap:wrap;align-items:start;gap:6px;display:flex}table{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);display:block;overflow-x:auto}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 12px}th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.75rem}tbody tr:last-child td{border-bottom:0}.num{text-align:right;white-space:nowrap}.note,small{color:var(--muted)}.ok{color:var(--ok);font-weight:600}.warn{color:var(--warn)}.badge{background:var(--accent-soft);border-radius:999px;padding:2px 10px;font-size:.8rem}p.warn{background:var(--surface);border-left:4px solid var(--warn);border-radius:6px;padding:8px 12px}.busy{z-index:50;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow), 0 8px 24px #141e3c26;border-radius:999px;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:9px 18px;font-size:.92rem;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.busy[hidden]{display:none}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}body[aria-busy=true] #app{cursor:progress}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}@media (width<=560px){header{flex-direction:column;align-items:stretch}nav{justify-content:space-between}.menu-panel{left:0;right:auto}}
