:root{--bg: #101014;--panel: #18181f;--panel-2: #20202a;--line: #2c2c38;--text: #e8e8ef;--dim: #9a9aa8;--accent: #7c6cff;--danger: #ff6b6b;--ok: #4ec9a5;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:7px 12px;cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.ghost{background:transparent}button.danger{color:var(--danger)}button.on{background:var(--accent);border-color:var(--accent);color:#fff}button.desk{width:28px;height:28px;padding:0;font-size:12px;font-weight:600;border-radius:6px;display:grid;place-items:center}input,textarea{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:9px 11px;width:100%}input:focus,textarea:focus{outline:none;border-color:var(--accent)}.app{max-width:880px;margin:0 auto;padding:16px 16px 64px}.row{display:flex;gap:8px;align-items:center}.row.wrap{flex-wrap:wrap}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.dim{color:var(--dim)}.small{font-size:13px}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px}.banner{background:var(--panel-2);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:10px 12px;margin-bottom:12px}.banner.warn{border-left-color:var(--danger)}.chip{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:13px;cursor:pointer}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.hookrow{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:11px 4px}.hookrow.used .title{text-decoration:line-through;color:var(--dim)}.title{font-weight:550}.spinner{color:var(--dim);padding:24px 0;text-align:center}
