:root{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;color:#e5e7eb;background:#08090b;font-size:14px}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;padding:25px 36px;background:#101214;color:white}.brand{font-size:28px;letter-spacing:2px}.brand span{font-size:13px;margin-left:15px;opacity:.7;letter-spacing:0}header small{display:block;margin-top:7px;opacity:.7}main{max-width:1500px;margin:auto;padding:24px}nav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid #292d32;padding-bottom:15px}button,input,select,textarea{font:inherit;border-radius:6px}button{border:0;padding:10px 15px;background:#087044;color:#fff;cursor:pointer}button.secondary,nav button{background:#1b1e22;color:#cdd1d7}nav button.active{background:#087044;color:white}button.danger{background:#171a1e;color:#ff8e95;border:1px solid #663038}button:disabled{opacity:.4;cursor:not-allowed}input,select,textarea{border:1px solid #353a42;background:#171a1e;padding:9px;color:#e5e7eb}textarea{width:100%;max-width:900px}h1{font-size:23px;margin:0 20px 12px 0}h2{font-size:19px}p{line-height:1.7}.muted,small,footer{color:#a0a6b0}.toolbar{display:flex;align-items:center;gap:10px;margin:16px 0;flex-wrap:wrap}.card{padding:24px;border:1px solid #32363d;background:#14171b;border-radius:10px;margin-bottom:18px}.narrow{max-width:450px;margin:60px auto}.narrow input{width:100%;margin:12px 0}.table-wrap{overflow:auto;border:1px solid #32363d;border-radius:8px;background:#14171b}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;background:#1d2025;font-size:12px;color:#bdc3cc}td,th{padding:11px 13px;border-bottom:1px solid #272b31}td:first-child{max-width:320px;overflow:hidden;text-overflow:ellipsis}tr:hover td{background:#20262a}form label{display:block;margin:14px 0}form label input:not([type=checkbox]),form select{display:block;width:min(600px,100%);margin-top:5px}fieldset label{display:inline-block;margin-right:20px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:#121519;padding:16px;border-radius:6px;max-height:400px;overflow:auto}dialog{width:min(1150px,95vw);max-height:90vh;border:0;border-radius:12px;padding:25px;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#000000b0}canvas{width:100%;height:240px;background:#14171b;margin-top:18px}#toast{position:fixed;bottom:24px;right:24px;max-width:520px;background:#123729;color:white;padding:16px 24px;border-radius:8px;z-index:100}footer{margin-top:35px;font-size:12px}a{color:#44e69c}[hidden]{display:none!important}@media(max-width:700px){header{padding:20px}main{padding:12px}.brand{font-size:23px}.toolbar{align-items:stretch}#status{font-size:11px;max-width:160px}td,th{padding:9px}}

#products{table-layout:fixed}#products td,#products th{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px 8px}#products th{position:relative;padding-right:13px}#products select{width:100%;padding:6px 2px;font-size:12px}.column-resizer{position:absolute;right:0;top:0;width:8px;height:100%;cursor:col-resize;touch-action:none;border-right:2px solid #414750}.column-resizer:hover,.column-resizer:focus{background:#32d58d;outline:none}.resizing-columns{user-select:none;cursor:col-resize}#board .table-wrap{max-width:100%}main{max-width:none}#products td:first-child{overflow:visible}

/* Reference palette: obsidian, smoked glass, silver and emerald. */
:root{color-scheme:dark;accent-color:#35dc91}body{min-height:100vh;background:radial-gradient(ellipse at 80% 0%,#1a1e2280,transparent 55%),#08090b}header{background:linear-gradient(120deg,#171a1e,#101214 65%,#151b18);border-bottom:1px solid #343a40;box-shadow:0 8px 32px #0005}header small{color:#b7bdc6}.brand{color:#f4f5f7}.brand span{color:#bac1cb}.card,.table-wrap,dialog{background:linear-gradient(135deg,#20242a80,transparent 45%),#121519;border:1px solid #343940;box-shadow:inset 0 1px 0 #ffffff12,0 10px 30px #0004}dialog{color:#e5e7eb}.card{border-radius:14px}button{background:linear-gradient(135deg,#0d8053,#095c3e);border:1px solid #27c98066;box-shadow:inset 0 1px 0 #ffffff16;color:#e5fff0}button.secondary,nav button{background:linear-gradient(135deg,#292d33,#191c20);border:1px solid #3a4048;color:#d9dde3}nav button.active{background:linear-gradient(135deg,#194532,#122c22);border-color:#2bbd7b;color:#6ef0b0;box-shadow:inset 0 0 18px #25cd8010,0 0 12px #25cd8010}button:hover:not(:disabled){filter:brightness(1.18)}button.danger{background:#25191d;color:#ff9299;border-color:#62333b}input,select,textarea{background:#101317;border-color:#3b414a;color:#e1e5eb}input::placeholder,textarea::placeholder{color:#8e96a1}option{background:#15181c;color:#e5e7eb}fieldset{border:1px solid #343a42;border-radius:8px}legend{color:#bac2cd}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #3ad68f;outline-offset:2px}#toast{border:1px solid #2f9e6b;box-shadow:0 8px 28px #0008;color:#dcffeb}canvas{border:1px solid #2b3037;border-radius:8px}::selection{background:#1e7755;color:#fff}*{scrollbar-color:#454d57 #101317}.column-resizer:hover,.column-resizer:focus{background:#35dc91}th{background:linear-gradient(#24282e,#1b1f24)}
#products td:last-child,#products th:last-child{position:sticky;right:0;background:#171d20;box-shadow:-5px 0 12px #0003;z-index:1}#products th:last-child{z-index:2}#products td:last-child a{font-size:12px}
