:root{color-scheme:dark;--bg:#101415;--panel:#171d1f;--line:#2a3437;--text:#edf1ef;--muted:#95a29f;--accent:#a28cff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at 75% -30%,#273333 0,transparent 55%),var(--bg);color:var(--text);min-height:100vh}
.app-shell{max-width:1420px;margin:auto;padding:0 42px}
.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-size:19px;font-weight:750;text-decoration:none;letter-spacing:-.4px}
.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#a28cff;color:#141318;font-size:23px}
.top-actions{display:flex;align-items:center;gap:8px}
.local-status{font-size:10px;letter-spacing:1.5px;color:#a5e6c8;display:flex;align-items:center;gap:8px;margin-right:12px}
.local-status i{width:7px;height:7px;background:#56d39b;border-radius:50%;box-shadow:0 0 10px #56d39b}
.button{height:42px;border-radius:10px;border:1px solid var(--line);padding:0 16px;color:var(--text);background:#1c2426;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}
.button:hover{filter:brightness(1.16)}.button-quiet{background:#242c2e}.button-stop{color:#ff9ba0;border-color:#59373a;background:#2a2022}.button-primary{background:var(--accent);color:#171322;border:0}.button-danger{color:#ff9ba0;background:#2b2022}
.intro{display:flex;align-items:end;justify-content:space-between;padding:53px 0 39px}.eyebrow{color:#a99aff;font-size:10px;letter-spacing:1.8px;font-weight:700;margin:0 0 11px}.intro h1{font-size:clamp(34px,4vw,52px);letter-spacing:-2px;margin:0;line-height:1.08}.intro h1 em{font-style:normal;color:#aa98ff}.subhead{margin:12px 0 0;color:var(--muted);font-size:14px}
.master-card{width:270px;padding:15px 17px 13px;border:1px solid var(--line);background:#171d1fbd;border-radius:13px}.master-card label,.range-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:#aab4b1;font-weight:700}.master-card label strong,.range-label strong{color:var(--text);font-size:12px;letter-spacing:0}.master-card input,.edit-dialog input[type=range]{width:100%;accent-color:var(--accent);margin:13px 0 6px}.focus-hint{font-size:10px;color:#75817e}kbd{border:1px solid #455052;background:#222a2b;border-radius:4px;padding:1px 4px;color:#dce3e1}
.board-bar{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:14px}.board-tabs{display:flex;gap:7px;overflow:auto}.board-tab{height:36px;padding:0 14px;border-radius:9px;background:transparent;border:1px solid transparent;color:#9da9a6;font-family:inherit;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}.board-tab.active{background:#242a2c;color:#fff;border-color:#374143}.new-board{height:34px;padding:0 11px;border:1px dashed #3b4648;background:transparent;border-radius:9px;color:#b9c3c0;cursor:pointer;white-space:nowrap}.board-count{margin-left:auto;color:#74817e;font-size:10px;white-space:nowrap}
.cue-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;padding:22px 0 27px}.cue-pad{position:relative;min-height:134px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#1b2224,#171d1f);color:var(--text);overflow:hidden;transition:transform .12s,border-color .15s,background .15s;user-select:none}.cue-pad:hover{transform:translateY(-2px);border-color:#566164;background:#222a2c}.cue-pad.playing{border-color:#b5a6ff;box-shadow:0 0 0 1px #9884ff55,0 0 22px #806cff28}.cue-pad.empty{border-style:dashed;background:#151a1c;color:#71807c}.cue-pad.empty:hover{border-color:#7667a5;color:#bbb0ef}.cue-activate{position:absolute;inset:0;width:100%;height:100%;padding:15px;border:0;background:transparent;color:inherit;text-align:left;font-family:inherit;cursor:pointer}.cue-activate:focus-visible,.edit-pad:focus-visible{outline:2px solid #a28cff;outline-offset:-2px}.cue-pad .pad-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:15px;margin-bottom:14px}.cue-pad[data-color=violet] .pad-icon{background:#8c76ff29;color:#b9aaff}.cue-pad[data-color=cyan] .pad-icon{background:#5bcdd126;color:#71d8d1}.cue-pad[data-color=amber] .pad-icon{background:#f3b65424;color:#ffc879}.cue-pad[data-color=rose] .pad-icon{background:#fa728424;color:#ff9aa7}.cue-pad[data-color=lime] .pad-icon{background:#92d87924;color:#b2ed9d}.pad-name{display:block;font-size:12px;font-weight:650;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pad-meta{display:block;color:#7e8b88;font-size:9px;margin-top:5px}.pad-key{position:absolute;right:12px;top:12px;font-size:9px;color:#77827f;border:1px solid #344042;border-radius:5px;padding:3px 5px}.edit-pad{position:absolute;z-index:2;right:10px;bottom:9px;border:0;background:transparent;color:#7e8b88;font-size:11px;cursor:pointer;opacity:0}.cue-pad:hover .edit-pad,.edit-pad:focus{opacity:1}.cue-pad.empty .pad-icon{background:#242b2d;color:#8f9b98}
.footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:16px 0 28px;color:#81908c;font-size:11px}.footer b{color:#d5ddda}.text-button{border:0;background:none;color:#a99aff;font:inherit;cursor:pointer}
.edit-dialog{width:min(440px,calc(100vw - 30px));padding:25px;border:1px solid #3a4547;border-radius:17px;background:#171d1f;color:var(--text);box-shadow:0 25px 100px #0009}.edit-dialog::backdrop{background:#050808b9;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.dialog-head h2{font-size:22px;margin:0}.close-button{background:transparent;border:0;color:#9aa6a3;font-size:27px;cursor:pointer}.field-label{display:block;color:#a8b3b0;font-size:11px;margin:15px 0 7px}.text-input{width:100%;height:42px;border-radius:9px;border:1px solid #354143;background:#111718;color:var(--text);padding:0 11px;font-family:inherit;font-size:13px;outline:none}.text-input:focus{border-color:#9581ff}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.range-label{margin-top:20px}.check-row{display:flex;align-items:center;gap:9px;margin:18px 0;color:#c4cdca;font-size:12px}.check-row input{accent-color:var(--accent)}.dialog-actions{display:flex;justify-content:space-between;gap:10px;margin-top:25px}
.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,15px);opacity:0;pointer-events:none;padding:11px 16px;border:1px solid #465254;background:#242c2e;color:#edf1ef;border-radius:10px;font-size:12px;transition:.2s}.toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:1000px){.cue-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.app-shell{padding:0 25px}}
@media(max-width:850px){.topbar{height:auto;min-height:70px;gap:12px;flex-wrap:wrap;padding:12px 0}.top-actions{flex-wrap:wrap;justify-content:flex-end}.top-actions .button{min-height:36px}}
@media(max-width:650px){.app-shell{padding:0 15px}.topbar{height:auto;min-height:62px}.top-actions{gap:6px}.top-actions .button{padding:0 9px;font-size:10px}.local-status{display:none}.intro{display:block;padding:34px 0 25px}.master-card{margin-top:22px;width:100%}.cue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:15px}.cue-pad{min-height:112px;padding:11px}.cue-pad .pad-icon{width:30px;height:30px;margin-bottom:10px}.board-count{display:none}.footer{font-size:10px}.footer span:last-child{max-width:58%;text-align:right}.edit-pad{opacity:1}}
@media(max-width:390px){.cue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand{font-size:16px}.button-stop span{display:none}}
