:root,:root[data-theme=dark]{--bg: #17181c;--panel: #1f2127;--panel-2: #20232a;--panel-3: #262932;--card: #232630;--hover: #2a2e38;--text: #d5d8de;--muted: #8b93a1;--muted-2: #9aa0ab;--faint: #5c6270;--accent: oklch(.72 .16 160);--accent-text: #0d1410;--danger: #e08585;--danger-bg: #3a2226;--grid-dot: rgba(255, 255, 255, .07);--line-a: rgba(255, 255, 255, .06);--line-b: rgba(255, 255, 255, .07);--line-c: rgba(255, 255, 255, .08);--line-d: rgba(255, 255, 255, .1);--line-e: rgba(255, 255, 255, .12);--line-g: rgba(255, 255, 255, .22);--scrollbar: #2c303a;--shadow: 0 20px 60px rgba(0, 0, 0, .35);--green: oklch(.75 .15 160);--green-soft: oklch(.75 .15 160 / .14);--red: oklch(.7 .17 25);--red-soft: oklch(.7 .17 25 / .14);--gold: oklch(.8 .13 85);--gold-soft: oklch(.8 .13 85 / .16);--teal: oklch(.78 .11 200);--blue: oklch(.72 .14 250);--hatch: rgba(255, 255, 255, .55)}:root[data-theme=light]{--bg: #f2f3f6;--panel: #ffffff;--panel-2: #fbfbfd;--panel-3: #e9ebef;--card: #ffffff;--hover: #e5e8ed;--text: #23262d;--muted: #667085;--muted-2: #5f6672;--faint: #98a0ac;--accent: oklch(.62 .15 160);--accent-text: #ffffff;--danger: #c04747;--danger-bg: #fbe4e4;--grid-dot: rgba(0, 0, 0, .08);--line-a: rgba(0, 0, 0, .08);--line-b: rgba(0, 0, 0, .08);--line-c: rgba(0, 0, 0, .1);--line-d: rgba(0, 0, 0, .12);--line-e: rgba(0, 0, 0, .15);--line-g: rgba(0, 0, 0, .28);--scrollbar: #c8cdd6;--shadow: 0 20px 60px rgba(15, 24, 40, .18);--green: oklch(.6 .15 160);--green-soft: oklch(.6 .15 160 / .12);--red: oklch(.58 .18 25);--red-soft: oklch(.58 .18 25 / .12);--gold: oklch(.68 .14 80);--gold-soft: oklch(.68 .14 80 / .16);--teal: oklch(.6 .11 200);--blue: oklch(.55 .16 255);--hatch: rgba(255, 255, 255, .6)}html,body{margin:0;min-height:100%;background:var(--bg)}*{box-sizing:border-box}body{font-family:IBM Plex Sans,system-ui,sans-serif;color:var(--text);font-size:13.5px;line-height:1.45;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:4px}.mono,.num{font-family:IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.hoverable{transition:background .12s ease,filter .12s ease,color .12s ease}.hoverable:hover{filter:brightness(1.08)}.card{background:var(--panel);border:1px solid var(--line-c);border-radius:14px;padding:18px 20px}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:8px;border:1px solid var(--line-d);background:var(--panel-3);color:var(--text);font-size:12.5px;font-weight:500;line-height:1.2;transition:background .12s ease,border-color .12s ease}.btn:hover{background:var(--hover)}.btn.primary{background:var(--accent);border-color:transparent;color:var(--accent-text);font-weight:600}.btn.primary:hover{filter:brightness(1.06)}.btn.sm{padding:4px 8px;font-size:12px;border-radius:7px}.btn.icon{padding:5px;border-radius:7px}.btn:disabled{opacity:.55;cursor:default}.input{width:100%;background:var(--panel-2);border:1px solid var(--line-c);border-radius:8px;color:var(--text);font-size:13px;padding:8px 10px;outline:none}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--faint)}.kl{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}.hint{color:var(--muted);font-size:12px}.faint{color:var(--faint)}.spacer{flex:1}.tag{font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;font-weight:700;border-radius:20px;padding:1px 7px;margin-left:6px;color:var(--teal);background:color-mix(in srgb,var(--teal) 16%,transparent)}.tag.extra{color:var(--gold);background:var(--gold-soft)}.pop{position:absolute;z-index:40;min-width:160px;background:var(--panel);border:1px solid var(--line-e);border-radius:10px;padding:4px;box-shadow:var(--shadow);animation:ff-fade .14s ease}.pop .mi{padding:7px 10px;border-radius:7px;font-size:12.5px;cursor:pointer;display:flex;align-items:center;gap:8px;white-space:nowrap;color:var(--text)}.pop .mi:hover{background:var(--hover)}.pop .mi.active{color:var(--accent);font-weight:600}.pop .mi.danger{color:var(--danger)}.pop .sep{height:1px;background:var(--line-c);margin:4px 2px}@keyframes ff-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes ff-pop{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.bar{position:relative;overflow:hidden;border-radius:6px 6px 2px 2px;transition:height .7s cubic-bezier(.22,1,.36,1),filter .15s}.bar:hover{filter:brightness(1.12)}.bar .xseg{position:absolute;left:0;right:0;top:0;background:repeating-linear-gradient(135deg,var(--hatch) 0 3px,transparent 3px 6px)}.xsw{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:-1px;margin-right:5px;background:var(--red) repeating-linear-gradient(135deg,var(--hatch) 0 3px,transparent 3px 6px)}.modal-ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:80;padding:16px}.modal-card{width:min(920px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--panel);border:1px solid var(--line-d);border-radius:16px;box-shadow:var(--shadow);animation:ff-fade .16s ease}.selectable,.selectable *{-webkit-user-select:text;user-select:text}@media (max-width: 720px){.card{padding:14px;border-radius:12px}}
