*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;overflow:hidden}body{font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:#fff;color:#000}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit}body[data-theme=brutalist]{--ink: #000000;--paper: #ffffff;--ink-soft: #1a1a1a;--ink-mid: #555555;--ink-grey: #8a8a8a;--ink-faint: #c4c4c4;--rule: #000000;--rule-faint: #d4d4d4;--accent: #ff4f00;--accent-press: #b83900;--warn: #ff4f00;--ok: #000000;--font-sans: "Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", "Courier New", ui-monospace, Menlo, monospace;--hairline: 1px;--bold-rule: 3px;--thick-rule: 8px}body[data-theme=brutalist] *{box-sizing:border-box}body[data-theme=brutalist]{margin:0;padding:0;height:100%;overflow:hidden;background:var(--paper);color:var(--ink)}body[data-theme=brutalist]{font-family:var(--font-sans);font-size:12px;line-height:1.25;font-weight:500;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 39px,var(--rule-faint) 39px,var(--rule-faint) 40px)}body[data-theme=brutalist] button{font:inherit;cursor:pointer;border-radius:0}body[data-theme=brutalist] input,body[data-theme=brutalist] select,body[data-theme=brutalist] textarea{font:inherit;border-radius:0}body[data-theme=brutalist] ::selection{background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .app{display:grid;grid-template-rows:auto 1fr auto;height:100vh;overflow:hidden;background:var(--paper);position:relative}body[data-theme=brutalist] .app:before{content:"DOC § PRG-001 / FOLIO 1 OF 1 / IMPRESSION №16 / MMXXVI.V.XXV / TYPESET BY MACHINE A";position:fixed;top:0;right:0;z-index:200;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.18em;padding:3px 10px 3px 14px;text-transform:uppercase;pointer-events:none}body[data-theme=brutalist] .app:after{content:"§ KITBOY · A SWISS-BRUTALIST DRUM-MACHINE COMPOSITION SYSTEM · IMPRIMATUR ANTHROPIC";position:fixed;left:0;bottom:26px;top:0;width:14px;z-index:199;background:var(--paper);color:var(--ink);font-family:var(--font-mono);font-size:8.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;pointer-events:none;writing-mode:vertical-rl;transform:rotate(180deg);padding:14px 1px;border-right:var(--hairline) solid var(--ink);display:flex;align-items:flex-start;justify-content:center}body[data-theme=brutalist] .header,body[data-theme=brutalist] .main,body[data-theme=brutalist] .footer{padding-left:22px}body[data-theme=brutalist] .header{padding-left:30px}body[data-theme=brutalist] .header{display:grid;grid-template-columns:auto 1fr auto auto;align-items:end;gap:24px;padding:22px 28px 14px;background:var(--paper);border-bottom:var(--thick-rule) solid var(--ink);position:relative}body[data-theme=brutalist] .header:after{content:"";position:absolute;left:0;right:0;bottom:-14px;height:1px;background:var(--ink)}body[data-theme=brutalist] .brand{display:flex;flex-direction:column;align-items:flex-start;gap:0;-webkit-user-select:none;user-select:none;line-height:.85}body[data-theme=brutalist] .brand-mark{font-family:var(--font-sans);font-weight:900;font-size:72px;line-height:.82;letter-spacing:-.055em;color:var(--ink);text-transform:uppercase;display:block}body[data-theme=brutalist] .brand-mark:before{content:"01 / ";font-family:var(--font-mono);font-weight:600;font-size:14px;letter-spacing:.04em;color:var(--accent);vertical-align:top;margin-right:4px}body[data-theme=brutalist] .brand-sub{font-family:var(--font-mono);font-weight:600;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--ink);margin-top:6px;padding-left:2px;display:block}body[data-theme=brutalist] .brand-sub:after{content:" — A DRUM-MACHINE COMPOSITION TOOL · MMXXVI";color:var(--ink-mid)}body[data-theme=brutalist] .brand-domain{margin-top:7px;color:var(--accent);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.18em;text-decoration:none;text-transform:uppercase}body[data-theme=brutalist] .brand-domain:hover,body[data-theme=brutalist] .brand-domain:focus-visible{color:var(--paper);background:var(--ink);outline:3px solid var(--accent);outline-offset:2px}body[data-theme=brutalist] .kit-name-wrap{display:flex;flex-direction:column;gap:0;align-self:end;background:var(--paper);border:var(--hairline) solid var(--ink);padding:0;min-width:240px;position:relative}body[data-theme=brutalist] .kit-name-wrap:before{content:"§ PRG-NAME / SRC.A.0.0";position:absolute;top:-16px;left:0;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}body[data-theme=brutalist] .kit-name-label{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.22em;color:var(--paper);background:var(--ink);padding:3px 8px;font-weight:600}body[data-theme=brutalist] .kit-name-label:before{content:"02. ";color:var(--accent)}body[data-theme=brutalist] .kit-name-input{background:var(--paper);border:none;color:var(--ink);font-family:var(--font-sans);font-weight:800;font-size:22px;letter-spacing:-.03em;line-height:1;padding:6px 8px 8px;width:100%;text-transform:uppercase}body[data-theme=brutalist] .kit-name-input:focus{outline:none;background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .controls{display:flex;align-items:stretch;gap:0;margin-left:auto;border:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .controls button{border-radius:0}body[data-theme=brutalist] .workspace-switcher{position:relative;display:inline-flex;align-self:end}body[data-theme=brutalist] .workspace-trigger{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;padding:4px 14px 5px;background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:none;max-width:240px;text-align:left;position:relative}body[data-theme=brutalist] .workspace-trigger:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .workspace-trigger.active{background:var(--accent);color:var(--paper);border-color:var(--ink)}body[data-theme=brutalist] .workspace-trigger-label{font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:inherit;opacity:.85;font-weight:600}body[data-theme=brutalist] .workspace-trigger-label:before{content:"03. "}body[data-theme=brutalist] .workspace-trigger-name{font-family:var(--font-sans);font-weight:800;font-size:14px;letter-spacing:-.02em;color:inherit;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}body[data-theme=brutalist] .workspace-trigger-chev{position:absolute;top:4px;right:6px;color:inherit;font-family:var(--font-mono);font-size:9px;line-height:1}body[data-theme=brutalist] .workspace-menu{position:absolute;top:calc(100% + 4px);left:0;margin-top:0;min-width:300px;background:var(--paper);border:var(--bold-rule) solid var(--ink);z-index:30;padding:0;display:flex;flex-direction:column;gap:0;max-height:420px;overflow-y:auto;box-shadow:none}body[data-theme=brutalist] .workspace-menu:before{content:"§ WORKSPACE-INDEX / SRC.W.0.0";display:block;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:9px;letter-spacing:.2em;font-weight:600;padding:4px 8px;text-transform:uppercase}body[data-theme=brutalist] .workspace-new{width:100%;text-align:left;padding:10px 12px;background:var(--accent);color:var(--paper);border:none;border-bottom:var(--hairline) solid var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;font-weight:700;text-transform:uppercase}body[data-theme=brutalist] .workspace-new:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .workspace-divider{height:0;background:transparent;margin:0;border-top:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .workspace-row{display:flex;align-items:stretch;gap:0;border-bottom:var(--hairline) solid var(--rule-faint)}body[data-theme=brutalist] .workspace-row:last-child{border-bottom:none}body[data-theme=brutalist] .workspace-row-pick{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:7px 12px 8px;background:var(--paper);border:none;text-align:left;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;min-width:0;color:var(--ink)}body[data-theme=brutalist] .workspace-row-pick:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .workspace-row-name{font-family:var(--font-sans);font-weight:800;font-size:13px;letter-spacing:-.02em;text-transform:uppercase;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}body[data-theme=brutalist] .workspace-row-time{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:inherit;opacity:.7;margin-top:2px}body[data-theme=brutalist] .workspace-row-delete{width:32px;padding:0;background:var(--paper);border:none;border-left:var(--hairline) solid var(--ink);color:var(--ink);font-family:var(--font-mono);font-size:14px;font-weight:700}body[data-theme=brutalist] .workspace-row-delete:hover{background:var(--accent);color:var(--paper)}body[data-theme=brutalist] button{font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--ink);padding:7px 14px;border-radius:0;transition:none}body[data-theme=brutalist] button:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] button:active{background:var(--accent);color:var(--paper)}body[data-theme=brutalist] button:disabled{opacity:1;cursor:not-allowed;color:var(--ink-faint);background:var(--paper);border-color:var(--ink-faint)}body[data-theme=brutalist] button.primary{background:var(--accent);color:var(--paper);border-color:var(--ink);font-weight:800;letter-spacing:.18em}body[data-theme=brutalist] button.primary:hover{background:var(--ink);color:var(--accent)}body[data-theme=brutalist] .controls button{border:none;border-right:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .controls button:last-child{border-right:none}body[data-theme=brutalist] .main{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);grid-template-rows:minmax(0,1fr) 200px;gap:0;padding:0;min-height:0;overflow:hidden;background:var(--paper);border-bottom:var(--bold-rule) solid var(--ink)}body[data-theme=brutalist] .work-area{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:0;min-height:0;min-width:0;border-right:var(--hairline) solid var(--ink);border-bottom:var(--hairline) solid var(--ink);position:relative}body[data-theme=brutalist] .work-area:before{content:"§ WORK-AREA / SRC.A.1.0";position:absolute;top:4px;left:8px;font-family:var(--font-mono);font-size:8.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);pointer-events:none;z-index:4}body[data-theme=brutalist] .side{grid-column:2;grid-row:1 / 3;display:flex;flex-direction:column;min-height:0;overflow:hidden;border-bottom:var(--hairline) solid var(--ink);background:var(--paper)}body[data-theme=brutalist] .dock{grid-column:1;grid-row:2;min-width:0;border-right:var(--hairline) solid var(--ink);background:var(--paper);position:relative}body[data-theme=brutalist] .dock:before{content:"§ INSPECTOR / SRC.A.2.0";position:absolute;top:4px;left:8px;font-family:var(--font-mono);font-size:8.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);pointer-events:none;z-index:4}@media (max-width: 1080px){body[data-theme=brutalist] .main{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto minmax(0,260px)}body[data-theme=brutalist] .side{grid-column:1;grid-row:3;border-top:var(--bold-rule) solid var(--ink)}body[data-theme=brutalist] .dock{grid-row:2}}body[data-theme=brutalist] .rack{display:flex;flex-direction:column;gap:0;background:var(--paper);border:none;border-bottom:var(--bold-rule) solid var(--ink);padding:22px 14px 8px;position:relative}body[data-theme=brutalist] .rack-row{display:flex;align-items:center;gap:6px;min-width:0}body[data-theme=brutalist] .rack-row-top{flex-wrap:wrap;row-gap:6px;padding-bottom:8px;border-bottom:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .rack-row-top>.paint-exit-pulse{margin-left:auto}body[data-theme=brutalist] .rack-row-paint{flex-wrap:nowrap;min-width:0;align-items:center;padding-top:8px;border-top:none}body[data-theme=brutalist] .paint-row{display:flex;align-items:center;gap:4px;min-width:0}body[data-theme=brutalist] .paint-row-color{flex:0 0 auto}body[data-theme=brutalist] .paint-row-group{flex:1 1 0;min-width:0;gap:6px}body[data-theme=brutalist] .paint-chips-scroll{display:flex;align-items:center;gap:4px;flex:1 1 0;min-width:0;overflow-x:auto;scrollbar-width:none;padding-right:6px;mask-image:none;-webkit-mask-image:none}body[data-theme=brutalist] .paint-chips-scroll::-webkit-scrollbar{height:0}body[data-theme=brutalist] .rack-divider{width:var(--bold-rule);align-self:stretch;background:var(--ink);margin:0 8px}body[data-theme=brutalist] .bank-selector{display:flex;gap:0;align-items:center;border:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .bank-btn{width:38px;height:32px;padding:0;font-family:var(--font-sans);font-weight:900;font-size:18px;letter-spacing:-.02em;background:var(--paper);color:var(--ink);border:none;border-right:var(--hairline) solid var(--ink);border-radius:0;position:relative;text-transform:uppercase}body[data-theme=brutalist] .bank-btn:last-child{border-right:none}body[data-theme=brutalist] .bank-btn:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .bank-btn.populated:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:6px;height:6px;background:var(--accent);border-radius:0}body[data-theme=brutalist] .bank-btn.active{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .bank-btn.active.populated:after{background:var(--accent)}body[data-theme=brutalist] .bank-action{position:relative;display:inline-flex;align-items:center}body[data-theme=brutalist] .bank-action-trigger{padding:6px 12px;height:32px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--ink);border-radius:0;white-space:nowrap}body[data-theme=brutalist] .bank-action-trigger:hover:not(:disabled){background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .bank-action-trigger.active{background:var(--accent);color:var(--paper);border-color:var(--ink)}body[data-theme=brutalist] .bank-action-randomize:not(:disabled):hover{background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .bank-action-randomize-group{gap:0;border:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .bank-action-randomize-group>.bank-action-trigger{border:none;border-right:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .bank-action-randomize-group>.bank-action-trigger:last-child{border-right:none}body[data-theme=brutalist] .bank-action-history{padding:6px 10px}body[data-theme=brutalist] .bank-action-trigger:disabled{opacity:1;color:var(--ink-faint);border-color:var(--ink-faint);cursor:not-allowed}body[data-theme=brutalist] .bank-action-menu{position:absolute;top:calc(100% + 4px);left:0;margin-top:0;padding:0;background:var(--paper);border:var(--bold-rule) solid var(--ink);z-index:20;white-space:nowrap;box-shadow:none}body[data-theme=brutalist] .bank-action-menu-label{display:block;font-family:var(--font-mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:4px 10px;font-weight:700}body[data-theme=brutalist] .bank-action-menu-row{display:flex;gap:0;padding:6px}body[data-theme=brutalist] .bank-action-target{width:34px;height:32px;padding:0;font-family:var(--font-sans);font-weight:900;font-size:18px;background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--ink);border-right:none;text-transform:uppercase;letter-spacing:-.02em;border-radius:0}body[data-theme=brutalist] .bank-action-menu-row .bank-action-target:last-child{border-right:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .bank-action-target:hover{background:var(--accent);color:var(--paper)}body[data-theme=brutalist].paint-armed,body[data-theme=brutalist].paint-armed *{cursor:crosshair!important}body[data-theme=brutalist] .paint-exit-pulse{margin-left:auto;padding:7px 14px;font-family:var(--font-mono);font-size:10px;font-weight:800;letter-spacing:.18em;background:var(--accent);color:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0;position:relative;text-transform:uppercase;animation:brut-blink 1s steps(2,start) infinite}body[data-theme=brutalist] .paint-exit-pulse:hover{background:var(--ink);color:var(--accent);animation:none}@keyframes brut-blink{0%,to{background:var(--accent);color:var(--paper)}50%{background:var(--ink);color:var(--accent)}}body[data-theme=brutalist] .paint-mini-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);font-weight:700;margin-right:6px;flex-shrink:0;padding:2px 6px;background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .paint-exit-pulse{flex-shrink:0}body[data-theme=brutalist] .paint-empty{font-family:var(--font-mono);font-size:11px;color:var(--ink-mid);font-style:normal;padding:0 4px;text-transform:uppercase;letter-spacing:.14em}body[data-theme=brutalist] .paint-exit{margin-left:auto;padding:6px 12px;font-size:10px;font-family:var(--font-mono)}body[data-theme=brutalist] .color-swatch{width:22px;height:22px;padding:0;border-radius:0;border:var(--hairline) solid var(--ink);cursor:pointer;font-family:var(--font-mono);font-size:10px;line-height:1;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;transition:none}body[data-theme=brutalist] .color-swatch:hover{outline:2px solid var(--accent);outline-offset:1px}body[data-theme=brutalist] .color-swatch.active{outline:var(--bold-rule) solid var(--accent);outline-offset:1px;box-shadow:none}body[data-theme=brutalist] .color-none{background:linear-gradient(135deg,transparent 45%,var(--ink) 45%,var(--ink) 55%,transparent 55%),var(--paper);color:var(--ink)}body[data-theme=brutalist] .color-custom{width:26px;height:22px;padding:0;border:var(--hairline) solid var(--ink);border-radius:0;background:transparent;cursor:pointer}body[data-theme=brutalist] .color-custom::-webkit-color-swatch-wrapper{padding:0}body[data-theme=brutalist] .color-custom::-webkit-color-swatch{border:none;border-radius:0}body[data-theme=brutalist] .color-custom::-moz-color-swatch{border:none;border-radius:0}body[data-theme=brutalist] .color-presets.compact{gap:3px}body[data-theme=brutalist] .group-chip{background:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0;padding:4px 10px 5px;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink);text-transform:uppercase;line-height:1.2;cursor:pointer}body[data-theme=brutalist] .group-chip:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .group-chip.active{background:var(--accent);color:var(--paper);border-color:var(--ink);outline:none}body[data-theme=brutalist] .group-chip-none{border-style:dashed;color:var(--ink-mid);min-width:32px;padding:4px 8px}body[data-theme=brutalist] .pad-stage{flex:1;display:grid;place-items:center;min-height:0;min-width:0;background:var(--paper);border:none;border-radius:0;padding:22px;box-shadow:none;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 23px,var(--rule-faint) 23px,var(--rule-faint) 24px),repeating-linear-gradient(90deg,transparent 0,transparent 23px,var(--rule-faint) 23px,var(--rule-faint) 24px);container-type:size;position:relative}body[data-theme=brutalist] .pad-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:0;width:min(100cqw,100cqh);height:min(100cqw,100cqh);aspect-ratio:1;border:var(--bold-rule) solid var(--ink);background:var(--paper)}body[data-theme=brutalist] .pad{background:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0;padding:10px 12px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;min-height:0;min-width:0;box-shadow:none;transition:none;margin:-1px 0 0 -1px}body[data-theme=brutalist] .pad:hover{background:var(--paper);outline:var(--bold-rule) solid var(--accent);outline-offset:-3px;z-index:2}body[data-theme=brutalist] .pad:focus-visible{outline:var(--bold-rule) solid var(--accent);outline-offset:-3px}body[data-theme=brutalist] .pad.loaded{background:var(--paper)}body[data-theme=brutalist] .pad.group-only{background:repeating-linear-gradient(45deg,var(--paper) 0,var(--paper) 6px,var(--rule-faint) 6px,var(--rule-faint) 7px);border-style:solid}body[data-theme=brutalist] .pad.drop{outline:var(--bold-rule) solid var(--accent);outline-offset:-3px;background:var(--accent);color:var(--paper);transform:none;z-index:3}body[data-theme=brutalist] .pad.playing{background:var(--ink);color:var(--paper);transform:none;z-index:3}body[data-theme=brutalist] .pad.playing .pad-num,body[data-theme=brutalist] .pad.playing .pad-name,body[data-theme=brutalist] .pad.playing .pad-group-label{color:var(--paper)}body[data-theme=brutalist] .pad.selected{outline:var(--bold-rule) solid var(--ink);outline-offset:-3px;background:var(--accent);color:var(--paper);z-index:2}body[data-theme=brutalist] .pad.selected .pad-num,body[data-theme=brutalist] .pad.selected .pad-name,body[data-theme=brutalist] .pad.selected .pad-group-label{color:var(--paper)}body[data-theme=brutalist] .pad.paint{cursor:crosshair}body[data-theme=brutalist] .pad.paint:hover{outline-color:var(--accent);background:var(--paper)}body[data-theme=brutalist] .pad>*{position:relative;z-index:1}body[data-theme=brutalist] .pad-color-bar{position:absolute;left:0;top:0;bottom:0;width:8px;background:var(--pad-color, transparent);border-radius:0;box-shadow:none;z-index:2;border-right:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .pad-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-right:22px}body[data-theme=brutalist] .pad-num{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--ink);font-weight:700}body[data-theme=brutalist] .pad-num:before{content:"№ ";color:var(--accent)}body[data-theme=brutalist] .pad.loaded[style*=--pad-color] .pad-num{color:var(--ink)}body[data-theme=brutalist] .pad.selected .pad-num{color:var(--paper)}body[data-theme=brutalist] .pad-dup{font-family:var(--font-mono);font-size:13px;font-weight:700;line-height:1;color:var(--accent);margin-left:4px;cursor:help;text-shadow:none}body[data-theme=brutalist] .pad-dup:hover{color:var(--ink)}body[data-theme=brutalist] .pad.selected .pad-dup{color:var(--paper)}body[data-theme=brutalist] .pad[style*=--pad-color] .pad-dup{color:var(--ink);text-shadow:none}body[data-theme=brutalist] .pad.selected[style*=--pad-color] .pad-dup{color:var(--paper)}body[data-theme=brutalist] .pad-group-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-weight:700;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:80%;padding:1px 4px;background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .pad-name{font-family:var(--font-sans);font-size:12px;font-weight:800;color:var(--ink);line-height:1.1;letter-spacing:-.03em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;width:100%}body[data-theme=brutalist] .pad.loaded[style*=--pad-color] .pad-name{color:var(--ink);text-shadow:none}body[data-theme=brutalist] .pad.selected .pad-name{color:var(--paper)}body[data-theme=brutalist] .pad-name.empty{font-family:var(--font-mono);color:var(--ink-faint);font-style:normal;letter-spacing:.18em;font-size:11px;text-transform:uppercase;font-weight:600}body[data-theme=brutalist] .pad-name-input{background:var(--paper);border:var(--hairline) solid var(--ink);color:var(--ink);font:inherit;font-family:var(--font-mono);font-size:11px;font-weight:600;padding:2px 4px;border-radius:0;width:100%}body[data-theme=brutalist] .pad-clear{position:absolute;top:0;right:0;width:22px;height:22px;border-radius:0;background:var(--paper);color:var(--ink);border:none;border-left:var(--hairline) solid var(--ink);border-bottom:var(--hairline) solid var(--ink);padding:0;font-family:var(--font-mono);font-size:14px;font-weight:700;line-height:1;cursor:pointer;display:none;align-items:center;justify-content:center;z-index:3;letter-spacing:0}body[data-theme=brutalist] .pad.loaded .pad-clear,body[data-theme=brutalist] .pad.group-only .pad-clear{display:flex}body[data-theme=brutalist] .pad-clear:hover{background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .pad-actions{display:flex;align-items:center;justify-content:flex-end;gap:0;margin-top:4px;min-height:24px;flex-shrink:0;opacity:0;transition:none}body[data-theme=brutalist] .pad:hover .pad-actions,body[data-theme=brutalist] .pad.selected .pad-actions{opacity:1}body[data-theme=brutalist] .pad-shuffle,body[data-theme=brutalist] .pad-history-btn,body[data-theme=brutalist] .pad-lock{width:24px;height:24px;border-radius:0;background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--ink);margin-left:-1px;padding:0;font-family:var(--font-mono);font-size:13px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:none;letter-spacing:0}body[data-theme=brutalist] .pad-lock{margin-left:0;margin-right:auto;font-size:11px;font-variant-emoji:text}body[data-theme=brutalist] .pad-lock:hover{background:var(--accent);color:var(--paper);border-color:var(--ink)}body[data-theme=brutalist] .pad-lock.is-locked{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .pad.locked .pad-actions{opacity:1}body[data-theme=brutalist] .pad-history-btn{width:22px;font-size:14px}body[data-theme=brutalist] .pad-shuffle:hover,body[data-theme=brutalist] .pad-history-btn:not(:disabled):hover{background:var(--accent);color:var(--paper);border-color:var(--ink)}body[data-theme=brutalist] .pad-shuffle:active,body[data-theme=brutalist] .pad-history-btn:active{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .pad-history-btn:disabled{opacity:1;color:var(--ink-faint);border-color:var(--ink-faint);cursor:not-allowed}body[data-theme=brutalist] .inspector,body[data-theme=brutalist] .inspector-empty{height:100%;background:var(--paper);border:none;border-top:var(--bold-rule) solid var(--ink);border-radius:0}body[data-theme=brutalist] .inspector{padding:22px 18px 12px;display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:10px 18px;align-items:center;position:relative}body[data-theme=brutalist] .inspector-empty{border-style:solid;padding:24px;display:flex;align-items:center;justify-content:flex-start;gap:20px}body[data-theme=brutalist] .inspector-empty-mark{font-family:var(--font-sans);font-size:72px;font-weight:900;color:var(--ink);line-height:.85;letter-spacing:-.06em}body[data-theme=brutalist] .inspector-empty-mark:before{content:"—";color:var(--accent);margin-right:8px}body[data-theme=brutalist] .inspector-empty-text{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--ink);text-transform:uppercase;max-width:480px}body[data-theme=brutalist] .inspector-id{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding-right:16px;border-right:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .inspector-pad-number{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:6px 12px 8px;background:var(--ink);color:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0;box-shadow:none;min-width:64px}body[data-theme=brutalist] .inspector-bank{font-family:var(--font-mono);font-weight:700;font-size:10px;color:var(--accent);line-height:1;letter-spacing:.2em;text-transform:uppercase}body[data-theme=brutalist] .inspector-bank:before{content:"BNK ";color:var(--paper);opacity:.5}body[data-theme=brutalist] .inspector-padnum{font-family:var(--font-sans);font-weight:900;font-size:30px;color:var(--paper);line-height:1;letter-spacing:-.05em;margin-top:2px}body[data-theme=brutalist] .inspector-id-body{display:flex;flex-direction:column;gap:6px;min-width:0}body[data-theme=brutalist] .inspector-sample{font-family:var(--font-sans);font-weight:800;font-size:18px;color:var(--ink);text-transform:uppercase;letter-spacing:-.025em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-theme=brutalist] .inspector-group{align-self:flex-start;font-family:var(--font-mono);font-size:10px;font-weight:700;padding:3px 8px;border:var(--hairline) solid;border-radius:0;text-transform:uppercase;letter-spacing:.14em}body[data-theme=brutalist] .inspector-group-count{color:inherit;opacity:.7;margin-left:4px;font-size:10px}body[data-theme=brutalist] .inspector-shuffle-group{display:inline-flex;align-items:stretch;border:var(--hairline) solid var(--ink);border-radius:0}body[data-theme=brutalist] .shuffle-btn{padding:8px 12px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.16em;display:inline-flex;align-items:center;gap:6px;text-transform:uppercase;background:var(--accent);color:var(--paper);border:none;border-left:var(--hairline) solid var(--ink);border-right:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .shuffle-btn:not(:disabled):hover{background:var(--ink);color:var(--accent)}body[data-theme=brutalist] .shuffle-btn:disabled{background:var(--paper);color:var(--ink-faint);border-color:var(--ink-faint)}body[data-theme=brutalist] .shuffle-step-btn{padding:0 10px;font-family:var(--font-mono);font-size:16px;font-weight:700;line-height:1;background:var(--paper);color:var(--ink);border:none;border-radius:0;letter-spacing:0}body[data-theme=brutalist] .shuffle-step-btn:not(:disabled):hover{background:var(--ink);color:var(--accent)}body[data-theme=brutalist] .shuffle-step-btn:disabled{color:var(--ink-faint);cursor:not-allowed}body[data-theme=brutalist] .shuffle-arrow{font-size:14px;line-height:1}body[data-theme=brutalist] .inspector-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:center}body[data-theme=brutalist] .inspector-color-row{display:flex;align-items:center;gap:14px;padding-top:10px;margin-top:8px;border-top:var(--hairline) solid var(--ink);grid-column:1 / -1}body[data-theme=brutalist] .inspector-color-row .control-label{flex-shrink:0;min-width:60px}body[data-theme=brutalist] .inspector-color-row .color-presets{flex:1;min-width:0}body[data-theme=brutalist] .control{display:flex;flex-direction:column;gap:4px;min-width:0}body[data-theme=brutalist] .control-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);font-weight:700}body[data-theme=brutalist] .control-body{display:flex;align-items:center;min-width:0}body[data-theme=brutalist] .seg{display:inline-flex;border:var(--hairline) solid var(--ink);border-radius:0;overflow:hidden;width:100%}body[data-theme=brutalist] .seg-btn{flex:1;background:var(--paper);border:none;border-right:var(--hairline) solid var(--ink);color:var(--ink);padding:6px 8px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-radius:0}body[data-theme=brutalist] .seg-btn:last-child{border-right:none}body[data-theme=brutalist] .seg-btn:hover,body[data-theme=brutalist] .seg-btn.active{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .tune-pair{display:flex;gap:4px}body[data-theme=brutalist] .num{display:inline-flex;align-items:center;gap:0;background:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0;padding:0;box-shadow:none}body[data-theme=brutalist] .num-btn{width:22px;height:26px;padding:0;font-size:14px;font-weight:700;line-height:1;border:none;border-right:var(--hairline) solid var(--ink);background:var(--paper);color:var(--ink);letter-spacing:0;border-radius:0}body[data-theme=brutalist] .num-btn:last-child{border-right:none;border-left:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .num-btn:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .num-input{width:40px;text-align:center;background:var(--paper);border:none;color:var(--ink);padding:2px 0;font-family:var(--font-mono);font-size:11px;font-weight:700;-moz-appearance:textfield}body[data-theme=brutalist] .num-input:focus{outline:none;background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .num-input::-webkit-outer-spin-button,body[data-theme=brutalist] .num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}body[data-theme=brutalist] .num-suffix{font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--ink);padding:0 6px;min-width:18px;letter-spacing:.1em;text-transform:uppercase}body[data-theme=brutalist] .slider{display:flex;align-items:center;gap:10px;width:100%;min-width:0}body[data-theme=brutalist] .slider input[type=range]{flex:1;min-width:0;height:4px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--ink);border-radius:0;outline:none;box-shadow:none}body[data-theme=brutalist] .slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:4px;height:18px;border-radius:0;background:var(--accent);cursor:pointer;border:var(--hairline) solid var(--ink);box-shadow:none}body[data-theme=brutalist] .slider input[type=range]::-moz-range-thumb{width:4px;height:18px;border-radius:0;background:var(--accent);cursor:pointer;border:var(--hairline) solid var(--ink);box-shadow:none}body[data-theme=brutalist] .slider-value{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--ink);min-width:42px;text-align:right;font-variant-numeric:tabular-nums;letter-spacing:.06em}body[data-theme=brutalist] .groups-panel{display:flex;flex-direction:column;background:var(--paper);border:none;border-left:var(--bold-rule) solid var(--ink);border-radius:0;height:100%;min-height:0;overflow:hidden;position:relative}body[data-theme=brutalist] .groups-header{display:flex;align-items:baseline;justify-content:space-between;padding:22px 14px 10px;border-bottom:var(--bold-rule) solid var(--ink);flex-shrink:0;position:relative;background:var(--paper);gap:10px}body[data-theme=brutalist] .groups-header:before{content:"§ GROUPS / SRC.B.0.0";position:absolute;top:4px;left:14px;font-family:var(--font-mono);font-size:8.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}body[data-theme=brutalist] .groups-header:after{display:none}body[data-theme=brutalist] .groups-title-wrap{display:inline-flex;align-items:baseline;gap:10px}body[data-theme=brutalist] .groups-title{font-family:var(--font-sans);font-weight:900;font-size:28px;letter-spacing:-.045em;text-transform:uppercase;color:var(--ink);line-height:.9}body[data-theme=brutalist] .groups-title:before{content:"04. ";color:var(--accent);font-family:var(--font-mono);font-weight:600;font-size:14px;letter-spacing:.04em}body[data-theme=brutalist] .groups-count{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--paper);background:var(--ink);font-variant-numeric:tabular-nums;padding:2px 8px;border:none;border-radius:0}body[data-theme=brutalist] .add-group-btn{padding:6px 12px;font-size:10px;font-family:var(--font-mono);letter-spacing:.18em;font-weight:700;text-transform:uppercase;color:var(--paper);background:var(--accent);border:var(--hairline) solid var(--ink);border-radius:0;cursor:pointer;transition:none}body[data-theme=brutalist] .add-group-btn:hover{background:var(--ink);color:var(--accent)}body[data-theme=brutalist] .groups-empty{margin:18px 12px;padding:22px 16px;color:var(--ink-mid);font-family:var(--font-mono);font-size:11px;text-align:left;line-height:1.5;border:var(--hairline) dashed var(--ink);border-radius:0;background:var(--paper)}body[data-theme=brutalist] .groups-empty p{margin:4px 0 8px;color:var(--ink);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:700}body[data-theme=brutalist] .groups-empty small{display:block;font-size:10.5px;font-style:normal;color:var(--ink-mid);letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-mono)}body[data-theme=brutalist] .groups-empty-mark{display:block;font-family:var(--font-sans);font-size:48px;font-weight:900;color:var(--ink);margin-bottom:6px;line-height:.9;letter-spacing:-.05em}body[data-theme=brutalist] .groups-empty-mark:before{content:"∅";color:var(--accent)}body[data-theme=brutalist] .groups-list{display:flex;flex-direction:column;gap:0;padding:0;overflow-y:auto;min-height:0;overscroll-behavior:contain}body[data-theme=brutalist] .groups-list,body[data-theme=brutalist] .group-usage-grid,body[data-theme=brutalist] .group-pool{scrollbar-width:thin;scrollbar-color:var(--ink) transparent}body[data-theme=brutalist] .groups-list::-webkit-scrollbar,body[data-theme=brutalist] .group-usage-grid::-webkit-scrollbar,body[data-theme=brutalist] .group-pool::-webkit-scrollbar{width:8px}body[data-theme=brutalist] .groups-list::-webkit-scrollbar-track,body[data-theme=brutalist] .group-usage-grid::-webkit-scrollbar-track,body[data-theme=brutalist] .group-pool::-webkit-scrollbar-track{background:var(--paper);border-left:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .groups-list::-webkit-scrollbar-thumb,body[data-theme=brutalist] .group-usage-grid::-webkit-scrollbar-thumb,body[data-theme=brutalist] .group-pool::-webkit-scrollbar-thumb{background:var(--ink);border-radius:0}body[data-theme=brutalist] .group-card{background:var(--paper);border:none;border-bottom:var(--hairline) solid var(--ink);border-radius:0;overflow:hidden;transition:none;display:flex;position:relative;flex-shrink:0}body[data-theme=brutalist] .group-card:last-child{border-bottom:var(--bold-rule) solid var(--ink)}body[data-theme=brutalist] .group-card:hover{background:var(--paper);box-shadow:none}body[data-theme=brutalist] .group-card.drop{outline:var(--bold-rule) solid var(--accent);outline-offset:-3px;box-shadow:none}body[data-theme=brutalist] .group-card.drop:after{content:"DROP // POOL";position:absolute;top:4px;right:6px;padding:4px 8px;background:var(--accent);color:var(--paper);font-family:var(--font-mono);font-weight:700;font-size:9px;letter-spacing:.2em;text-transform:uppercase;border-radius:0;pointer-events:none;z-index:5;box-shadow:none}body[data-theme=brutalist] .group-color-stripe{width:14px;flex-shrink:0;border:none;border-right:var(--hairline) solid var(--ink);padding:0;margin:0;cursor:pointer;align-self:stretch;transition:none;border-radius:0;text-transform:none;letter-spacing:0;position:relative;box-shadow:none}body[data-theme=brutalist] .group-color-stripe:after{display:none}body[data-theme=brutalist] .group-color-stripe:hover{width:22px;box-shadow:none}body[data-theme=brutalist] .group-color-stripe:focus-visible{outline:var(--bold-rule) solid var(--accent);outline-offset:-2px}body[data-theme=brutalist] .group-color-popover{position:fixed;display:grid;grid-template-columns:repeat(4,auto);gap:0;padding:6px;background:var(--paper);border:var(--bold-rule) solid var(--ink);border-radius:0;box-shadow:none;z-index:1000}body[data-theme=brutalist] .group-color-swatch{width:24px;height:24px;border-radius:0;border:var(--hairline) solid var(--ink);margin:-.5px;padding:0;cursor:pointer;text-transform:none;letter-spacing:0}body[data-theme=brutalist] .group-color-swatch:hover{outline:2px solid var(--accent);outline-offset:1px;transform:none}body[data-theme=brutalist] .group-color-swatch.active{outline:var(--bold-rule) solid var(--accent);outline-offset:1px;box-shadow:none}body[data-theme=brutalist] .group-card-body{flex:1;display:flex;flex-direction:column;min-width:0;padding:8px 12px 12px;gap:8px}body[data-theme=brutalist] .group-card-head{display:flex;align-items:baseline;gap:8px;min-width:0}body[data-theme=brutalist] .group-index{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--accent);font-variant-numeric:tabular-nums;flex-shrink:0}body[data-theme=brutalist] .group-name{font-family:var(--font-sans);font-weight:900;font-size:22px;letter-spacing:-.04em;text-transform:uppercase;cursor:text;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1;flex:1 1 auto;color:var(--ink)}body[data-theme=brutalist] .group-name-input{background:var(--paper);border:var(--hairline) solid var(--ink);color:var(--ink);padding:2px 6px;border-radius:0;font-family:var(--font-sans);font-weight:900;font-size:22px;letter-spacing:-.04em;text-transform:uppercase;width:100%;min-width:0;flex:1 1 auto;outline:none}body[data-theme=brutalist] .group-action-cluster{display:inline-flex;align-items:center;gap:0;flex-shrink:0;opacity:1;transition:none;border:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .group-card:hover .group-action-cluster,body[data-theme=brutalist] .group-card:focus-within .group-action-cluster{opacity:1}body[data-theme=brutalist] .group-icon-btn{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--paper);border:none;border-right:var(--hairline) solid var(--ink);color:var(--ink);font-family:var(--font-mono);font-size:13px;font-weight:700;line-height:1;letter-spacing:0;border-radius:0;cursor:pointer;transition:none}body[data-theme=brutalist] .group-action-cluster>.group-icon-btn:last-child{border-right:none}body[data-theme=brutalist] .group-icon-btn:hover:not(:disabled){background:var(--ink);color:var(--paper);border-color:var(--ink)}body[data-theme=brutalist] .group-icon-btn:disabled{opacity:1;color:var(--ink-faint);cursor:not-allowed}body[data-theme=brutalist] .group-icon-btn.group-icon-danger:hover:not(:disabled){background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .group-toggle-btn{line-height:.8;font-size:0;background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .group-toggle-btn:not(:disabled):hover{background:var(--ink);color:var(--accent)}body[data-theme=brutalist] .group-toggle-btn:before{content:"▾";display:inline-block;font-size:13px;transition:transform .05s}body[data-theme=brutalist] .group-toggle-btn.open{border-left:var(--hairline) dashed var(--ink);outline:var(--hairline) solid var(--ink);outline-offset:-3px}body[data-theme=brutalist] .group-toggle-btn.open:before{transform:rotate(180deg)}body[data-theme=brutalist] .group-meter{display:flex;align-items:stretch;gap:0;padding:0;border-top:var(--hairline) solid var(--ink);border-bottom:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .group-meter-block{display:inline-flex;flex-direction:column;align-items:flex-start;gap:0;padding:3px 10px 4px;border-right:var(--hairline) solid var(--ink);flex:1 1 0;min-width:0}body[data-theme=brutalist] .group-meter-block:last-child{border-right:none}body[data-theme=brutalist] .group-meter-block b{font-family:var(--font-sans);font-weight:900;font-size:16px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.025em}body[data-theme=brutalist] .group-meter-block i{font-style:normal;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mid);font-weight:600;margin-top:2px}body[data-theme=brutalist] .group-meter-sep{display:none}body[data-theme=brutalist] .group-usage-grid{display:flex;flex-wrap:wrap;gap:1px;padding:6px 0 0}body[data-theme=brutalist] .usage-cell{width:14px;height:14px;border-radius:0;background:var(--paper);border:var(--hairline) solid var(--ink);cursor:grab;flex-shrink:0;position:relative;transition:none}body[data-theme=brutalist] .usage-cell:hover{transform:none;outline:var(--bold-rule) solid var(--accent);outline-offset:1px;z-index:2}body[data-theme=brutalist] .usage-cell.used{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--paper),inset 0 0 0 2px currentColor}body[data-theme=brutalist] .usage-cell:active{cursor:grabbing}body[data-theme=brutalist] .group-pool{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:var(--hairline) solid var(--ink);background:var(--paper)}body[data-theme=brutalist] .pool-item{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:8px;padding:4px 10px;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--ink-mid);border-radius:0;letter-spacing:.04em;border-bottom:var(--hairline) solid var(--rule-faint);transition:none}body[data-theme=brutalist] .pool-item:last-child{border-bottom:none}body[data-theme=brutalist] .pool-item:hover{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .pool-item.used{color:var(--ink);font-weight:700}body[data-theme=brutalist] .pool-dot{width:8px;height:8px;border-radius:0;background:var(--paper);border:var(--hairline) solid var(--ink);margin-left:1px}body[data-theme=brutalist] .pool-item.used .pool-dot{background:var(--accent);border-color:var(--ink);box-shadow:none}body[data-theme=brutalist] .pool-item:hover .pool-dot{background:var(--paper);border-color:var(--paper)}body[data-theme=brutalist] .pool-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}body[data-theme=brutalist] .pool-remove{width:20px;height:20px;padding:0;font-size:13px;font-weight:700;border-radius:0;background:transparent;border:var(--hairline) solid transparent;color:inherit;cursor:pointer;line-height:1;letter-spacing:0;opacity:0;transition:none}body[data-theme=brutalist] .pool-item:hover .pool-remove{opacity:1;border-color:var(--paper)}body[data-theme=brutalist] .pool-remove:hover{background:var(--accent);color:var(--paper);border-color:var(--paper)}body[data-theme=brutalist] .group-pool-hint{padding:10px 12px;color:var(--ink-mid);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-align:left;border:var(--hairline) dashed var(--ink);border-radius:0;margin:8px 12px 12px}body[data-theme=brutalist] .footer{display:flex;align-items:center;gap:10px;padding:4px 18px 4px 14px;background:var(--ink);color:var(--paper);border-top:var(--bold-rule) solid var(--ink);min-height:26px;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.06em}body[data-theme=brutalist] .footer:before{content:"§ STATUS / SYS.LOG ›";font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-right:8px}body[data-theme=brutalist] .status-dot{width:8px;height:8px;border-radius:0;background:var(--paper);flex-shrink:0}body[data-theme=brutalist] .status-dot-info{background:var(--accent);box-shadow:none}body[data-theme=brutalist] .status-dot-success{background:var(--paper)}body[data-theme=brutalist] .status-dot-error{background:var(--accent);animation:brut-blink-dot .6s steps(2,start) infinite}body[data-theme=brutalist] .status-dot-idle{background:var(--ink-grey)}@keyframes brut-blink-dot{0%,to{background:var(--accent)}50%{background:var(--paper)}}body[data-theme=brutalist] .status{letter-spacing:.04em;text-transform:uppercase}body[data-theme=brutalist] .status-error{color:var(--accent);font-weight:700}body[data-theme=brutalist] .status-success,body[data-theme=brutalist] .status-info{color:var(--paper)}body[data-theme=brutalist] .dim{color:var(--ink-grey);font-style:normal;text-transform:uppercase;letter-spacing:.1em}body[data-theme=brutalist] .work-area,body[data-theme=brutalist] .dock,body[data-theme=brutalist] .side,body[data-theme=brutalist] .rack,body[data-theme=brutalist] .pad-stage,body[data-theme=brutalist] .groups-panel,body[data-theme=brutalist] .inspector,body[data-theme=brutalist] .pad-grid{background-image:var(--register-marks, none),repeating-linear-gradient(0deg,transparent 0,transparent 39px,var(--rule-faint) 39px,var(--rule-faint) 40px)}body[data-theme=brutalist] .work-area,body[data-theme=brutalist] .dock,body[data-theme=brutalist] .side,body[data-theme=brutalist] .rack,body[data-theme=brutalist] .groups-panel{--register-marks: linear-gradient(var(--ink), var(--ink)) top 6px left 6px / 8px 1px no-repeat, linear-gradient(var(--ink), var(--ink)) top 6px left 6px / 1px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) top 6px right 6px / 8px 1px no-repeat, linear-gradient(var(--ink), var(--ink)) top 6px right 6px / 1px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) bottom 6px left 6px / 8px 1px no-repeat, linear-gradient(var(--ink), var(--ink)) bottom 6px left 6px / 1px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) bottom 6px right 6px / 8px 1px no-repeat, linear-gradient(var(--ink), var(--ink)) bottom 6px right 6px / 1px 8px no-repeat;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat}body[data-theme=brutalist] .pad-stage,body[data-theme=brutalist] .inspector,body[data-theme=brutalist] .pad-grid{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),repeating-linear-gradient(0deg,transparent 0,transparent 23px,var(--rule-faint) 23px,var(--rule-faint) 24px),repeating-linear-gradient(90deg,transparent 0,transparent 23px,var(--rule-faint) 23px,var(--rule-faint) 24px);background-position:top 8px left 8px,top 8px left 8px,top 8px right 8px,top 8px right 8px,bottom 8px left 8px,bottom 8px left 8px,bottom 8px right 8px,bottom 8px right 8px,0 0,0 0;background-size:10px 1px,1px 10px,10px 1px,1px 10px,10px 1px,1px 10px,10px 1px,1px 10px,auto,auto;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat,repeat}body[data-theme=brutalist] .pad-grid{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--ink),var(--ink));background-position:top 4px left 4px,top 4px left 4px,top 4px right 4px,top 4px right 4px,bottom 4px left 4px,bottom 4px left 4px,bottom 4px right 4px,bottom 4px right 4px;background-size:10px 1px,1px 10px,10px 1px,1px 10px,10px 1px,1px 10px,10px 1px,1px 10px;background-repeat:no-repeat}body[data-theme=brutalist] .header:after{content:"";position:absolute;left:30px;right:30px;bottom:-14px;height:1px;background:var(--ink)}body[data-theme=brutalist] .brand-mark{position:relative}body[data-theme=brutalist] .rack:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#00b3e6 0%,#00b3e6 14%,#e6007e 14%,#e6007e 28%,#ffd400 28%,#ffd400 42%,var(--ink) 42%,var(--ink) 56%,var(--accent) 56%,var(--accent) 100%);border-bottom:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .rack:after{content:"§ TRANSPORT / SRC.A.1.1 — CYAN · MAGENTA · YELLOW · BLACK · SAFETY-ORANGE";position:absolute;top:8px;right:14px;font-family:var(--font-mono);font-size:8.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);pointer-events:none}body[data-theme=brutalist] .control-label:after{content:" · fn." counter(footnote,decimal-leading-zero);counter-increment:footnote;color:var(--accent);font-weight:500;letter-spacing:.1em}body[data-theme=brutalist] .inspector-controls,body[data-theme=brutalist] .inspector{counter-reset:footnote}body[data-theme=brutalist] .rack-row-top:before{content:"ROW 01 / TRANSPORT";font-family:var(--font-mono);font-size:8.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:2px 6px;margin-right:8px;flex-shrink:0;align-self:center}body[data-theme=brutalist] .rack-row-paint:before{content:"ROW 02 / PAINT";font-family:var(--font-mono);font-size:8.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:2px 6px;margin-right:8px;flex-shrink:0;align-self:center}body[data-theme=brutalist] .inspector:after{content:"fn. SEE § INSPECTOR.A.2.0 — VALUES PERSIST PER PAD · DBL-CLK SLIDER TO CENTER · ESC EXITS PAINT";position:absolute;bottom:4px;left:18px;right:18px;font-family:var(--font-mono);font-size:8.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mid);pointer-events:none;border-top:var(--hairline) solid var(--rule-faint);padding-top:3px}body[data-theme=brutalist] button:not(.bank-btn):not(.bank-action-target):not(.color-swatch):not(.pad-shuffle):not(.pad-history-btn):not(.pad-clear):not(.group-color-stripe):not(.group-color-swatch):not(.usage-cell):not(.workspace-row-pick):not(.workspace-row-delete):not(.export-menu-row):hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--ink)}body[data-theme=brutalist] button:not(.bank-btn):not(.bank-action-target):not(.color-swatch):not(.pad-shuffle):not(.pad-history-btn):not(.pad-clear):not(.group-color-stripe):not(.group-color-swatch):not(.usage-cell):not(.workspace-row-pick):not(.workspace-row-delete):not(.export-menu-row):active{transform:translate(0);box-shadow:none}body[data-theme=brutalist] .pad:hover{transform:translate(-1px,-1px)}body[data-theme=brutalist] .pad:active,body[data-theme=brutalist] .pad.playing{transform:translate(0)}body[data-theme=brutalist] .group-chip:hover,body[data-theme=brutalist] .workspace-trigger:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--ink)}body[data-theme=brutalist] .footer:after{content:" // END OF DOC // §";margin-left:auto;color:var(--ink-grey);letter-spacing:.22em;font-weight:700;text-transform:uppercase}body[data-theme=brutalist] .pad:before{content:"";position:absolute;top:2px;left:2px;width:4px;height:4px;background:linear-gradient(var(--ink),var(--ink)) center / 4px 1px no-repeat,linear-gradient(var(--ink),var(--ink)) center / 1px 4px no-repeat;pointer-events:none;z-index:4}body[data-theme=brutalist] .pad.selected:before,body[data-theme=brutalist] .pad.playing:before{background:linear-gradient(var(--paper),var(--paper)) center / 4px 1px no-repeat,linear-gradient(var(--paper),var(--paper)) center / 1px 4px no-repeat}body[data-theme=paper]{--paper-cream: #FFF8E7;--paper-cream-2: #FBEFD3;--paper-red: #E63946;--paper-yellow: #F4D35E;--paper-blue: #3D9EE7;--paper-green: #4A9C5C;--paper-orange: #F4A03F;--paper-pink: #F4A8C0;--paper-purple: #9B6DC4;--paper-mint: #A8E6CF;--ink: #2A2D34;--ink-soft: #4D525C;--ink-light: #7A7F88;--pencil: #595c66;--bg: var(--paper-cream);--bg-deep: #F2E5C4;--panel: #FFFDF5;--panel-raised: #FFFFFF;--panel-sunken: #FCF3D9;--pad: #FFFDF5;--pad-hover: #FFF3B8;--pad-loaded: #FFFDF5;--pad-drop: #FFD86B;--pad-playing: var(--paper-yellow);--border: #2A2D34;--border-soft: #5B5F69;--border-hard: #2A2D34;--text: var(--ink);--text-soft: var(--ink-soft);--text-dim: var(--ink-light);--text-dimmer: #a09c8e;--accent: var(--paper-red);--accent-warm: var(--paper-orange);--accent-glow: rgba(230, 57, 70, .35);--danger: var(--paper-red);--success: var(--paper-green);--font-display: "Caveat", "Patrick Hand", cursive;--font-mono: "Patrick Hand", "Caveat", cursive;--font-sans: "Patrick Hand", "Indie Flower", "Caveat", cursive;--font-marker: "Shadows Into Light", "Caveat", cursive;--paper-shadow: 3px 4px 0 rgba(42, 45, 52, .1), 6px 8px 14px rgba(42, 45, 52, .18);--paper-shadow-sm: 2px 3px 0 rgba(42, 45, 52, .1), 3px 4px 8px rgba(42, 45, 52, .14);--paper-shadow-lg: 5px 6px 0 rgba(42, 45, 52, .1), 10px 14px 24px rgba(42, 45, 52, .2);--washi-pink: repeating-linear-gradient( 45deg, #F4A8C0 0px, #F4A8C0 8px, #FFFFFF 8px, #FFFFFF 14px, #F4D35E 14px, #F4D35E 22px, #FFFFFF 22px, #FFFFFF 28px );--washi-blue: repeating-linear-gradient( -45deg, #3D9EE7 0px, #3D9EE7 7px, #FFFFFF 7px, #FFFFFF 12px, #4A9C5C 12px, #4A9C5C 19px, #FFFFFF 19px, #FFFFFF 24px );--washi-rainbow: repeating-linear-gradient( 90deg, #E63946 0px, #E63946 12px, #F4A03F 12px, #F4A03F 24px, #F4D35E 24px, #F4D35E 36px, #4A9C5C 36px, #4A9C5C 48px, #3D9EE7 48px, #3D9EE7 60px, #9B6DC4 60px, #9B6DC4 72px )}body[data-theme=paper] *{box-sizing:border-box}body[data-theme=paper]{margin:0;padding:0;height:100%;overflow:hidden}body[data-theme=paper]{background:var(--paper-cream);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.3;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-image:radial-gradient(circle at 12% 8%,rgba(244,168,56,.1) 0,transparent 38%),radial-gradient(circle at 88% 92%,rgba(61,158,231,.1) 0,transparent 40%),radial-gradient(circle at 50% 50%,rgba(244,211,94,.08) 0,transparent 60%),repeating-radial-gradient(circle at 20% 30%,rgba(42,45,52,.025) 0px,rgba(42,45,52,.025) 1px,transparent 1px,transparent 7px),repeating-radial-gradient(circle at 70% 60%,rgba(42,45,52,.022) 0px,rgba(42,45,52,.022) 1px,transparent 1px,transparent 9px)}body[data-theme=paper] button{font:inherit;cursor:pointer}body[data-theme=paper] input,body[data-theme=paper] select,body[data-theme=paper] textarea{font:inherit}body[data-theme=paper] .app{display:grid;grid-template-rows:auto 1fr auto;height:100vh;overflow:hidden}body[data-theme=paper] .header{display:flex;align-items:center;gap:18px;padding:14px 22px 16px;background:var(--paper-yellow);border:3px solid var(--ink);border-radius:18px 6px 22px 8px/8px 22px 6px 18px;box-shadow:var(--paper-shadow);margin:12px 14px 0;transform:rotate(-.6deg);position:relative;z-index:2}body[data-theme=paper] .header:before,body[data-theme=paper] .header:after{content:"";position:absolute;width:60px;height:18px;background:#fff8c88c;border:1px solid rgba(180,160,80,.3);box-shadow:0 1px 3px #0000001a;pointer-events:none}body[data-theme=paper] .header:before{top:-10px;left:30px;transform:rotate(-8deg)}body[data-theme=paper] .header:after{top:-8px;right:40px;transform:rotate(7deg)}body[data-theme=paper] .header .controls{margin-left:auto}body[data-theme=paper] .workspace-switcher{position:relative;display:inline-flex}body[data-theme=paper] .workspace-trigger{display:inline-flex;align-items:baseline;gap:10px;padding:8px 14px;background:var(--paper-pink);color:var(--ink);border:2.5px solid var(--ink);border-radius:14px 4px 12px 6px;font-family:var(--font-display);font-size:17px;letter-spacing:0;text-transform:none;max-width:240px;box-shadow:var(--paper-shadow-sm);transform:rotate(1deg);transition:transform .15s}body[data-theme=paper] .workspace-trigger:hover,body[data-theme=paper] .workspace-trigger.active{transform:rotate(-2deg) translateY(-2px);background:var(--paper-orange)}body[data-theme=paper] .workspace-trigger-label{font-family:var(--font-marker);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}body[data-theme=paper] .workspace-trigger-name{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:0;color:var(--ink);text-transform:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}body[data-theme=paper] .workspace-trigger.active .workspace-trigger-name,body[data-theme=paper] .workspace-trigger:hover .workspace-trigger-name{color:var(--ink)}body[data-theme=paper] .workspace-trigger-chev{color:var(--ink-soft);font-size:14px;line-height:1}body[data-theme=paper] .workspace-menu{position:absolute;top:100%;left:0;margin-top:10px;min-width:270px;background:var(--paper-cream);border:3px solid var(--ink);border-radius:12px 18px 8px 16px;box-shadow:var(--paper-shadow-lg);z-index:30;padding:8px;display:flex;flex-direction:column;gap:4px;max-height:380px;overflow-y:auto;transform:rotate(-1deg)}body[data-theme=paper] .workspace-new{width:100%;text-align:left;padding:8px 12px;background:var(--paper-green);color:#fff;border:2.5px solid var(--ink);border-radius:10px 4px 8px 6px;font-family:var(--font-display);font-size:18px;letter-spacing:0;text-transform:none;box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .workspace-new:hover{background:var(--paper-blue);transform:rotate(-1.5deg)}body[data-theme=paper] .workspace-divider{height:2px;background:var(--ink);margin:6px 4px;border-radius:1px;opacity:.4}body[data-theme=paper] .workspace-row{display:flex;align-items:stretch;gap:4px}body[data-theme=paper] .workspace-row-pick{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 10px;background:var(--paper-cream-2);border:2px solid var(--ink);border-radius:8px 3px 7px 4px;text-align:left;font-family:var(--font-display);font-size:16px;text-transform:none;letter-spacing:0;min-width:0;color:var(--ink)}body[data-theme=paper] .workspace-row-pick:hover{background:var(--paper-yellow);transform:rotate(1deg)}body[data-theme=paper] .workspace-row-name{font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}body[data-theme=paper] .workspace-row-time{font-family:var(--font-marker);font-size:11px;letter-spacing:.02em;color:var(--ink-light)}body[data-theme=paper] .workspace-row-delete{width:30px;padding:0;background:var(--paper-cream-2);border:2px solid var(--ink);color:var(--ink);font-size:18px;border-radius:6px 4px 7px 3px;flex-shrink:0;font-family:var(--font-marker)}body[data-theme=paper] .workspace-row-delete:hover{background:var(--paper-red);border-color:var(--ink);color:#fff;transform:rotate(-3deg)}body[data-theme=paper] .brand{display:flex;align-items:baseline;gap:12px;-webkit-user-select:none;user-select:none;transform:rotate(-2deg)}body[data-theme=paper] .brand-mark{font-family:var(--font-display);font-weight:700;font-size:48px;line-height:1;letter-spacing:0;color:var(--paper-red);text-shadow:3px 3px 0 var(--ink),-1px 1px 0 var(--paper-yellow);display:inline-block;transform:rotate(-3deg)}body[data-theme=paper] .brand-sub{font-family:var(--font-marker);font-weight:400;font-size:19px;letter-spacing:.04em;text-transform:none;color:var(--ink);transform:rotate(2deg);display:inline-block;background:var(--paper-cream);padding:0 8px;border:2px dashed var(--ink);border-radius:8px 3px 7px 4px}body[data-theme=paper] .brand-domain{align-self:center;color:var(--ink);font-family:var(--font-marker);font-size:14px;font-weight:700;text-decoration-color:var(--paper-red);text-decoration-thickness:3px;text-underline-offset:4px;transform:rotate(1deg)}body[data-theme=paper] .brand-domain:hover,body[data-theme=paper] .brand-domain:focus-visible{color:var(--paper-red);outline:3px dashed var(--ink);outline-offset:3px}body[data-theme=paper] .kit-name-wrap{display:flex;flex-direction:column;gap:0;max-width:320px;background:var(--paper-cream);border:2.5px solid var(--ink);border-radius:8px 14px 6px 12px;padding:4px 14px 6px;box-shadow:var(--paper-shadow-sm);transform:rotate(.8deg)}body[data-theme=paper] .kit-name-label{font-family:var(--font-marker);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft)}body[data-theme=paper] .kit-name-input{background:transparent;border:none;color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:28px;letter-spacing:0;line-height:1;padding:0;width:100%}body[data-theme=paper] .kit-name-input:focus{outline:none;color:var(--paper-red)}body[data-theme=paper] .controls{display:flex;align-items:center;gap:10px}body[data-theme=paper] button{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:0;text-transform:none;background:var(--paper-cream);color:var(--ink);border:2.5px solid var(--ink);padding:6px 14px;border-radius:10px 4px 9px 5px;box-shadow:var(--paper-shadow-sm);transition:transform .12s,background .12s,box-shadow .12s}body[data-theme=paper] button:hover{background:var(--paper-yellow);transform:rotate(-1.4deg) translateY(-1px);box-shadow:var(--paper-shadow)}body[data-theme=paper] button:active{transform:rotate(.6deg) translateY(2px);box-shadow:1px 2px #2a2d3433}body[data-theme=paper] button:disabled{opacity:.45;cursor:not-allowed;transform:none}body[data-theme=paper] button.primary{background:var(--paper-red);color:#fff;border-color:var(--ink);font-weight:700;font-size:19px;padding:8px 20px;text-shadow:1px 1px 0 var(--ink);border-radius:14px 6px 12px 5px;transform:rotate(1.6deg);position:relative}body[data-theme=paper] button.primary:hover{background:var(--paper-orange);transform:rotate(-2deg) translateY(-2px) scale(1.04)}body[data-theme=paper] .main{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);grid-template-rows:minmax(0,1fr) 200px;gap:18px;padding:18px 18px 14px;min-height:0;overflow:hidden}body[data-theme=paper] .work-area{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0}body[data-theme=paper] .side{grid-column:2;grid-row:1 / 3;display:flex;flex-direction:column;min-height:0;overflow:hidden}body[data-theme=paper] .dock{grid-column:1;grid-row:2;min-width:0}@media (max-width: 1080px){body[data-theme=paper] .main{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto minmax(0,260px)}body[data-theme=paper] .side{grid-column:1;grid-row:3;border-top:2px dashed var(--ink)}body[data-theme=paper] .dock{grid-row:2}}body[data-theme=paper] .rack{display:flex;flex-direction:column;gap:10px;background:var(--paper-blue);border:3px solid var(--ink);border-radius:16px 6px 14px 8px;padding:12px 14px 14px;box-shadow:var(--paper-shadow);transform:rotate(-.4deg);position:relative}body[data-theme=paper] .rack:before{content:"";position:absolute;top:-8px;left:24%;right:30%;height:22px;background:var(--washi-pink);border:1px solid rgba(0,0,0,.15);border-radius:1px;box-shadow:0 2px 4px #0000001f;transform:rotate(-1.5deg);z-index:4;pointer-events:none}body[data-theme=paper] .rack-row{display:flex;align-items:center;gap:12px;min-width:0}body[data-theme=paper] .rack-row-top{flex-wrap:wrap;row-gap:8px}body[data-theme=paper] .rack-row-top>.paint-exit-pulse{margin-left:auto}body[data-theme=paper] .rack-row-paint{flex-wrap:nowrap;min-width:0;align-items:center;padding-top:6px;border-top:2px dashed rgba(255,255,255,.55)}body[data-theme=paper] .paint-row{display:flex;align-items:center;gap:6px;min-width:0}body[data-theme=paper] .paint-row-color{flex:0 0 auto}body[data-theme=paper] .paint-row-group{flex:1 1 0;min-width:0;gap:6px}body[data-theme=paper] .paint-chips-scroll{display:flex;align-items:center;gap:6px;flex:1 1 0;min-width:0;overflow-x:auto;mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 24px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 24px),transparent 100%);scrollbar-width:none;padding:4px 6px 4px 2px}body[data-theme=paper] .paint-chips-scroll::-webkit-scrollbar{height:0}body[data-theme=paper] .rack-divider{width:3px;align-self:stretch;background:var(--ink);margin:2px 6px;border-radius:2px;opacity:.5}body[data-theme=paper] .bank-selector{display:flex;gap:6px;align-items:center}body[data-theme=paper] .bank-btn{width:38px;height:38px;padding:0;font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:0;background:var(--paper-cream);color:var(--ink);border:2.5px solid var(--ink);border-radius:9px 4px 8px 5px;position:relative;text-transform:none;box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .bank-btn:nth-child(1){transform:rotate(-3deg);background:var(--paper-pink)}body[data-theme=paper] .bank-btn:nth-child(2){transform:rotate(2deg);background:var(--paper-mint)}body[data-theme=paper] .bank-btn:nth-child(3){transform:rotate(-1.5deg);background:var(--paper-yellow)}body[data-theme=paper] .bank-btn:nth-child(4){transform:rotate(2.5deg);background:var(--paper-orange)}body[data-theme=paper] .bank-btn:hover{transform:rotate(0) translateY(-2px) scale(1.08);background:var(--paper-yellow)}body[data-theme=paper] .bank-btn.populated:after{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:8px;height:8px;border-radius:50%;background:var(--paper-red);border:1.5px solid var(--ink)}body[data-theme=paper] .bank-btn.active{background:var(--paper-red);color:#fff;border-color:var(--ink);text-shadow:1px 1px 0 var(--ink);box-shadow:var(--paper-shadow)}body[data-theme=paper] .bank-btn.active.populated:after{background:var(--paper-yellow)}body[data-theme=paper] .bank-action{position:relative;display:inline-flex;align-items:center}body[data-theme=paper] .bank-action-trigger{padding:5px 12px;height:34px;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:0;background:var(--paper-cream);color:var(--ink);border:2.5px solid var(--ink);border-radius:9px 4px 8px 5px;white-space:nowrap;box-shadow:var(--paper-shadow-sm);transform:rotate(-1.2deg)}body[data-theme=paper] .bank-action-trigger:hover:not(:disabled){background:var(--paper-yellow);transform:rotate(1.5deg) translateY(-1px)}body[data-theme=paper] .bank-action-trigger.active{background:var(--paper-orange);color:var(--ink);border-color:var(--ink)}body[data-theme=paper] .bank-action-randomize:not(:disabled):hover{background:var(--paper-pink)}body[data-theme=paper] .bank-action-randomize-group{gap:6px}body[data-theme=paper] .bank-action-history{padding:4px 10px;transform:rotate(2deg)}body[data-theme=paper] .bank-action-history:nth-child(odd){transform:rotate(-1.5deg)}body[data-theme=paper] .bank-action-trigger:disabled{opacity:.45;cursor:not-allowed}body[data-theme=paper] .bank-action-menu{position:absolute;top:100%;left:0;margin-top:10px;padding:10px 12px;background:var(--paper-cream);border:3px solid var(--ink);border-radius:10px 16px 8px 14px;z-index:20;box-shadow:var(--paper-shadow-lg);white-space:nowrap;transform:rotate(-1deg)}body[data-theme=paper] .bank-action-menu-label{display:block;font-family:var(--font-marker);font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}body[data-theme=paper] .bank-action-menu-row{display:flex;gap:6px}body[data-theme=paper] .bank-action-target{width:34px;height:34px;padding:0;font-family:var(--font-display);font-weight:700;font-size:22px;background:var(--paper-cream);color:var(--ink);border:2.5px solid var(--ink);border-radius:9px 4px 8px 5px;text-transform:none}body[data-theme=paper] .bank-action-target:nth-child(1){background:var(--paper-pink);transform:rotate(-2deg)}body[data-theme=paper] .bank-action-target:nth-child(2){background:var(--paper-mint);transform:rotate(1.5deg)}body[data-theme=paper] .bank-action-target:nth-child(3){background:var(--paper-yellow);transform:rotate(-1deg)}body[data-theme=paper] .bank-action-target:nth-child(4){background:var(--paper-orange);transform:rotate(2deg)}body[data-theme=paper] .bank-action-target:hover{background:var(--paper-red);color:#fff;transform:rotate(0) scale(1.1)}body[data-theme=paper].paint-armed,body[data-theme=paper].paint-armed *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'><path d='M5 22 L9 26 L24 11 L20 7 Z' fill='%23E63946' stroke='%232A2D34' stroke-width='1.5' stroke-linejoin='round'/><path d='M20 7 L24 11 L26 9 L22 5 Z' fill='%23F4D35E' stroke='%232A2D34' stroke-width='1.5' stroke-linejoin='round'/><path d='M5 22 L9 26 L7 28 L3 24 Z' fill='%232A2D34' stroke='%232A2D34' stroke-width='1' stroke-linejoin='round'/></svg>") 2 26,crosshair!important}body[data-theme=paper] .paint-exit-pulse{margin-left:auto;padding:6px 14px;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:0;background:var(--paper-red);color:#fff;border:2.5px solid var(--ink);border-radius:12px 4px 10px 6px;text-shadow:1px 1px 0 var(--ink);position:relative;animation:paint-wobble .7s ease-in-out infinite;box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .paint-exit-pulse:hover{background:var(--paper-orange);animation-play-state:paused}@keyframes paint-wobble{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}body[data-theme=paper] .paint-mini-label{font-family:var(--font-marker);font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:#fff;text-shadow:1px 1px 0 var(--ink);margin-right:4px;flex-shrink:0}body[data-theme=paper] .paint-empty{font-family:var(--font-display);font-size:16px;color:#fff;text-shadow:1px 1px 0 var(--ink);font-style:normal;padding:0 6px}body[data-theme=paper] .paint-exit{margin-left:auto;padding:4px 10px;font-size:14px;font-family:var(--font-display)}body[data-theme=paper] .color-swatch{width:26px;height:26px;padding:0;border-radius:50%;border:2.5px solid var(--ink);cursor:pointer;font-family:var(--font-marker);font-size:11px;line-height:1;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--paper-shadow-sm);transition:transform .12s,box-shadow .12s}body[data-theme=paper] .color-swatch:hover{transform:scale(1.18) rotate(8deg)}body[data-theme=paper] .color-swatch.active{outline:3px dashed var(--ink);outline-offset:3px;box-shadow:var(--paper-shadow);transform:scale(1.1)}body[data-theme=paper] .color-none{background:linear-gradient(135deg,transparent 44%,var(--ink) 44%,var(--ink) 56%,transparent 56%),var(--paper-cream)}body[data-theme=paper] .color-custom{width:28px;height:28px;padding:0;border:2.5px solid var(--ink);border-radius:50%;background:transparent;cursor:pointer;box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .color-custom::-webkit-color-swatch-wrapper{padding:0}body[data-theme=paper] .color-custom::-webkit-color-swatch{border:none;border-radius:50%}body[data-theme=paper] .color-custom::-moz-color-swatch{border:none;border-radius:50%}body[data-theme=paper] .color-presets.compact{gap:5px}body[data-theme=paper] .group-chip{background:var(--paper-cream);border:2.5px solid var(--ink);border-radius:14px 4px 12px 5px;padding:4px 12px 5px;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:0;color:var(--ink);text-transform:none;line-height:1.1;cursor:pointer;box-shadow:var(--paper-shadow-sm);transform:rotate(-1.4deg);transition:transform .15s,background .15s}body[data-theme=paper] .group-chip:nth-of-type(2n){transform:rotate(1.8deg)}body[data-theme=paper] .group-chip:nth-of-type(3n){transform:rotate(-.7deg)}body[data-theme=paper] .group-chip:hover{background:var(--paper-yellow);transform:rotate(0) translateY(-2px) scale(1.05)}body[data-theme=paper] .group-chip.active{background:var(--paper-red);color:#fff;text-shadow:1px 1px 0 var(--ink);outline:none;box-shadow:var(--paper-shadow)}body[data-theme=paper] .group-chip-none{border-style:dashed;color:var(--ink-soft);min-width:32px;padding:4px 10px;background:transparent}body[data-theme=paper] .pad-stage{flex:1;display:grid;place-items:center;min-height:0;min-width:0;background:var(--paper-cream);border:3px solid var(--ink);border-radius:18px 8px 16px 10px;padding:18px;box-shadow:var(--paper-shadow);background-image:repeating-linear-gradient(0deg,rgba(42,45,52,.05) 0px,rgba(42,45,52,.05) 1px,transparent 1px,transparent 24px),repeating-linear-gradient(90deg,rgba(42,45,52,.04) 0px,rgba(42,45,52,.04) 1px,transparent 1px,transparent 24px);container-type:size;position:relative;transform:rotate(.3deg)}body[data-theme=paper] .pad-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:12px;width:min(100cqw,100cqh);height:min(100cqw,100cqh);aspect-ratio:1}body[data-theme=paper] .pad{background:var(--paper-yellow);border:3px solid var(--ink);border-radius:11px 4px 10px 6px;padding:8px 10px 7px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;min-height:0;min-width:0;box-shadow:var(--paper-shadow-sm);transition:transform .12s,box-shadow .12s,background .12s}body[data-theme=paper] .pad-grid>.pad:nth-child(1){transform:rotate(-2.2deg);background:var(--paper-pink);border-radius:5px 12px 7px 11px}body[data-theme=paper] .pad-grid>.pad:nth-child(2){transform:rotate(1.5deg);background:var(--paper-yellow);border-radius:12px 5px 10px 6px}body[data-theme=paper] .pad-grid>.pad:nth-child(3){transform:rotate(-1deg);background:var(--paper-mint);border-radius:6px 10px 5px 11px}body[data-theme=paper] .pad-grid>.pad:nth-child(4){transform:rotate(2.5deg);background:var(--paper-orange);border-radius:10px 6px 12px 5px}body[data-theme=paper] .pad-grid>.pad:nth-child(5){transform:rotate(1.8deg);background:var(--paper-blue);border-radius:11px 5px 7px 12px}body[data-theme=paper] .pad-grid>.pad:nth-child(6){transform:rotate(-2deg);background:var(--paper-pink);border-radius:5px 11px 12px 6px}body[data-theme=paper] .pad-grid>.pad:nth-child(7){transform:rotate(2.2deg);background:var(--paper-yellow);border-radius:10px 4px 11px 7px}body[data-theme=paper] .pad-grid>.pad:nth-child(8){transform:rotate(-.8deg);background:var(--paper-green);border-radius:7px 12px 5px 11px}body[data-theme=paper] .pad-grid>.pad:nth-child(9){transform:rotate(-2.6deg);background:var(--paper-orange);border-radius:11px 6px 4px 12px}body[data-theme=paper] .pad-grid>.pad:nth-child(10){transform:rotate(1.4deg);background:var(--paper-mint);border-radius:6px 11px 12px 5px}body[data-theme=paper] .pad-grid>.pad:nth-child(11){transform:rotate(-1.6deg);background:var(--paper-purple);color:#fff;border-radius:12px 6px 5px 11px}body[data-theme=paper] .pad-grid>.pad:nth-child(12){transform:rotate(2.1deg);background:var(--paper-yellow);border-radius:4px 12px 6px 11px}body[data-theme=paper] .pad-grid>.pad:nth-child(13){transform:rotate(1.2deg);background:var(--paper-red);color:#fff;border-radius:11px 6px 12px 4px}body[data-theme=paper] .pad-grid>.pad:nth-child(14){transform:rotate(-2deg);background:var(--paper-blue);border-radius:5px 11px 7px 12px}body[data-theme=paper] .pad-grid>.pad:nth-child(15){transform:rotate(2.6deg);background:var(--paper-pink);border-radius:11px 4px 12px 6px}body[data-theme=paper] .pad-grid>.pad:nth-child(16){transform:rotate(-1.2deg);background:var(--paper-green);color:#fff;border-radius:6px 12px 5px 11px}body[data-theme=paper] .pad:hover{transform:rotate(0) translateY(-3px) scale(1.03)!important;box-shadow:var(--paper-shadow);z-index:3}body[data-theme=paper] .pad:focus-visible{outline:none;box-shadow:var(--paper-shadow),0 0 0 3px var(--paper-red)}body[data-theme=paper] .pad.group-only{border-style:dashed;opacity:.85}body[data-theme=paper] .pad.drop{transform:rotate(0) scale(1.08)!important;box-shadow:var(--paper-shadow-lg),0 0 0 4px var(--paper-red);background:var(--paper-yellow)!important}body[data-theme=paper] .pad.playing{transform:rotate(0) scale(.92)!important;box-shadow:1px 2px #2a2d344d;animation:pad-bounce .2s ease-out}@keyframes pad-bounce{0%{transform:rotate(0) scale(.85)}60%{transform:rotate(0) scale(1.06)}to{transform:rotate(0) scale(.92)}}body[data-theme=paper] .pad.selected{box-shadow:var(--paper-shadow-lg),0 0 0 3.5px var(--paper-red);z-index:4}body[data-theme=paper] .pad.paint{cursor:crosshair}body[data-theme=paper] .pad.paint:hover{outline:3px dashed var(--paper-red);outline-offset:-6px}body[data-theme=paper] .pad>*{position:relative;z-index:1}body[data-theme=paper] .pad-color-bar{position:absolute;left:0;top:8px;bottom:8px;width:8px;background:var(--pad-color, transparent);border-right:2px solid var(--ink);border-radius:0 4px 4px 0;z-index:2}body[data-theme=paper] .pad-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-right:22px}body[data-theme=paper] .pad-num{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:0;color:var(--ink);display:inline-block;background:#ffffff8c;padding:0 5px;border-radius:5px 2px 4px 3px;line-height:1}body[data-theme=paper] .pad-grid>.pad:nth-child(11) .pad-num,body[data-theme=paper] .pad-grid>.pad:nth-child(13) .pad-num,body[data-theme=paper] .pad-grid>.pad:nth-child(16) .pad-num{background:#ffffffb3}body[data-theme=paper] .pad.selected .pad-num{color:var(--paper-red)}body[data-theme=paper] .pad-dup{font-family:var(--font-marker);font-size:16px;line-height:1;color:var(--ink);margin-left:4px;cursor:help;display:inline-block;transform:rotate(-10deg)}body[data-theme=paper] .pad-dup:hover{transform:rotate(8deg) scale(1.2);color:var(--paper-red)}body[data-theme=paper] .pad-group-label{font-family:var(--font-marker);font-size:12px;letter-spacing:.02em;text-transform:lowercase;color:var(--group-color, var(--ink-soft));text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:80%;background:#ffffff8c;padding:0 5px;border-radius:3px;font-weight:700}body[data-theme=paper] .pad-name{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ink);line-height:1.05;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;width:100%}body[data-theme=paper] .pad-grid>.pad:nth-child(11) .pad-name,body[data-theme=paper] .pad-grid>.pad:nth-child(13) .pad-name,body[data-theme=paper] .pad-grid>.pad:nth-child(16) .pad-name{color:#fff;text-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .pad-name.empty{font-family:var(--font-marker);color:var(--ink-soft);font-style:normal;letter-spacing:0;font-size:16px;opacity:.6}body[data-theme=paper] .pad-name-input{background:var(--paper-cream);border:2.5px solid var(--ink);color:var(--ink);font:inherit;font-family:var(--font-display);font-size:17px;padding:2px 6px;border-radius:6px 2px 5px 3px;width:100%}body[data-theme=paper] .pad-clear{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:var(--paper-cream);color:var(--ink);border:2px solid var(--ink);padding:0;font-family:var(--font-marker);font-size:16px;line-height:1;cursor:pointer;display:none;align-items:center;justify-content:center;z-index:3;letter-spacing:0;box-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .pad.loaded .pad-clear,body[data-theme=paper] .pad.group-only .pad-clear{display:flex}body[data-theme=paper] .pad-clear:hover{background:var(--paper-red);color:#fff;transform:rotate(20deg)}body[data-theme=paper] .pad-actions{position:absolute;left:8px;right:8px;bottom:6px;display:inline-flex;align-items:stretch;justify-content:stretch;gap:0;padding:0;height:20px;margin:0;background:var(--paper-cream);border:1.5px solid var(--ink);border-radius:6px 4px 7px 3px;box-shadow:1px 2px #2a2d342e;opacity:0;transform:translateY(2px) rotate(-.6deg);transition:opacity .12s,transform .12s;overflow:hidden;z-index:4;min-height:0}body[data-theme=paper] .pad:hover .pad-actions,body[data-theme=paper] .pad.selected .pad-actions{opacity:1;transform:translateY(0) rotate(-.6deg)}body[data-theme=paper] .pad-shuffle,body[data-theme=paper] .pad-history-btn,body[data-theme=paper] .pad-lock{flex:1 1 0;min-width:0;width:auto;height:auto;padding:0 4px;background:transparent;color:var(--ink);border:none;border-right:1px dashed rgba(42,45,52,.55);border-radius:0;font-family:var(--font-marker);font-size:15px;line-height:1;letter-spacing:0;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:none;transition:background .08s,color .08s}body[data-theme=paper] .pad-lock{font-size:12px;font-variant-emoji:text}body[data-theme=paper] .pad-lock:hover{background:var(--paper-yellow);color:var(--ink)}body[data-theme=paper] .pad-lock.is-locked{background:var(--ink);color:var(--paper-cream)}body[data-theme=paper] .pad.locked .pad-actions{opacity:1;transform:translateY(0) rotate(-.6deg)}body[data-theme=paper] .pad.locked .pad-name{padding-bottom:22px}body[data-theme=paper] .pad-actions>*:last-child{border-right:none}body[data-theme=paper] .pad-history-btn{font-size:18px;font-weight:700}body[data-theme=paper] .pad-shuffle:hover,body[data-theme=paper] .pad-history-btn:not(:disabled):hover{background:var(--paper-yellow);color:var(--ink);transform:none}body[data-theme=paper] .pad-shuffle:active,body[data-theme=paper] .pad-history-btn:active{background:var(--paper-red);color:#fff;transform:none}body[data-theme=paper] .pad-history-btn:disabled{opacity:.3;cursor:not-allowed}body[data-theme=paper] .pad:hover .pad-name,body[data-theme=paper] .pad.selected .pad-name{padding-bottom:22px}body[data-theme=paper] .inspector,body[data-theme=paper] .inspector-empty{height:100%;background:var(--paper-cream);border:3px solid var(--ink);border-radius:14px 6px 16px 8px;box-shadow:var(--paper-shadow);transform:rotate(-.3deg);position:relative}body[data-theme=paper] .inspector:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(180deg,transparent 0px,transparent 26px,rgba(61,158,231,.18) 26px,rgba(61,158,231,.18) 27px);border-radius:inherit;pointer-events:none;opacity:.5}body[data-theme=paper] .inspector{padding:14px 18px;display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:12px 20px;align-items:center}body[data-theme=paper] .inspector-empty{border-style:dashed;padding:16px 18px;display:flex;align-items:center;justify-content:center;gap:16px}body[data-theme=paper] .inspector-empty-mark{font-family:var(--font-display);font-size:52px;color:var(--paper-red);line-height:1;transform:rotate(-8deg)}body[data-theme=paper] .inspector-empty-text{font-family:var(--font-marker);font-size:18px;color:var(--ink-soft)}body[data-theme=paper] .inspector-id{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding-right:16px;border-right:2px dashed var(--ink)}body[data-theme=paper] .inspector-pad-number{display:flex;flex-direction:column;align-items:center;gap:0;padding:4px 12px 5px;background:var(--paper-red);color:#fff;border:2.5px solid var(--ink);border-radius:10px 4px 9px 5px;box-shadow:var(--paper-shadow-sm);min-width:58px;transform:rotate(-3deg)}body[data-theme=paper] .inspector-bank{font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--paper-yellow);text-shadow:1px 1px 0 var(--ink);line-height:1}body[data-theme=paper] .inspector-padnum{font-family:var(--font-display);font-weight:700;font-size:32px;color:#fff;text-shadow:2px 2px 0 var(--ink);line-height:1;letter-spacing:0}body[data-theme=paper] .inspector-id-body{display:flex;flex-direction:column;gap:4px;min-width:0}body[data-theme=paper] .inspector-sample{font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-theme=paper] .inspector-group{align-self:flex-start;font-family:var(--font-display);font-weight:700;font-size:14px;padding:2px 10px;border:2px solid;border-radius:10px 3px 8px 5px;text-transform:none;letter-spacing:0;background:#ffffffa6}body[data-theme=paper] .inspector-group-count{color:var(--ink-soft);margin-left:4px;font-size:13px;font-family:var(--font-marker)}body[data-theme=paper] .inspector-shuffle-group{display:inline-flex;align-items:stretch;gap:4px;transform:rotate(1.5deg)}body[data-theme=paper] .shuffle-btn{padding:6px 14px;font-family:var(--font-display);font-size:16px;letter-spacing:0;display:inline-flex;align-items:center;gap:6px;background:var(--paper-orange);color:var(--ink);border:2.5px solid var(--ink);border-radius:10px 4px 12px 3px}body[data-theme=paper] .shuffle-btn:not(:disabled){background:var(--paper-orange)}body[data-theme=paper] .shuffle-btn:not(:disabled):hover{background:var(--paper-yellow);transform:translateY(-2px) rotate(-2deg)}body[data-theme=paper] .shuffle-step-btn{padding:0 10px;font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1;background:var(--paper-cream);color:var(--ink);border:2.5px solid var(--ink);border-radius:50%;min-width:30px;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--paper-shadow-sm);transition:background .1s,transform .1s}body[data-theme=paper] .shuffle-step-btn:not(:disabled):hover{background:var(--paper-yellow);transform:translateY(-2px) rotate(-4deg)}body[data-theme=paper] .shuffle-step-btn:disabled{opacity:.35;cursor:not-allowed}body[data-theme=paper] .shuffle-arrow{font-size:18px;line-height:1}body[data-theme=paper] .inspector-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:center;position:relative;z-index:1}body[data-theme=paper] .inspector-color-row{display:flex;align-items:center;gap:12px;padding-top:10px;margin-top:8px;border-top:2px dashed var(--ink);grid-column:1 / -1;position:relative;z-index:1}body[data-theme=paper] .inspector-color-row .control-label{flex-shrink:0;min-width:50px}body[data-theme=paper] .inspector-color-row .color-presets{flex:1;min-width:0}body[data-theme=paper] .control{display:flex;flex-direction:column;gap:4px;min-width:0}body[data-theme=paper] .control-label{font-family:var(--font-marker);font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}body[data-theme=paper] .control-body{display:flex;align-items:center;min-width:0}body[data-theme=paper] .seg{display:inline-flex;border:2.5px solid var(--ink);border-radius:8px 3px 7px 4px;overflow:hidden;width:100%;background:var(--paper-cream);box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .seg-btn{flex:1;background:transparent;border:none;color:var(--ink-soft);padding:6px 8px;font-family:var(--font-display);font-size:16px;letter-spacing:0;border-radius:0;box-shadow:none}body[data-theme=paper] .seg-btn:hover{background:var(--paper-yellow);color:var(--ink);transform:none}body[data-theme=paper] .seg-btn.active{background:var(--paper-red);color:#fff;font-weight:700;text-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .tune-pair{display:flex;gap:6px}body[data-theme=paper] .num{display:inline-flex;align-items:center;gap:2px;background:var(--paper-cream);border:2.5px solid var(--ink);border-radius:8px 3px 7px 4px;padding:1px;box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .num-btn{width:22px;height:24px;padding:0;font-size:18px;line-height:1;border:none;background:transparent;color:var(--ink);letter-spacing:0;font-family:var(--font-display);border-radius:4px;box-shadow:none}body[data-theme=paper] .num-btn:hover{background:var(--paper-yellow);color:var(--paper-red);transform:none;box-shadow:none}body[data-theme=paper] .num-input{width:38px;text-align:center;background:transparent;border:none;color:var(--ink);padding:2px 0;font-family:var(--font-display);font-size:17px;font-weight:700;-moz-appearance:textfield}body[data-theme=paper] .num-input:focus{outline:none;color:var(--paper-red)}body[data-theme=paper] .num-input::-webkit-outer-spin-button,body[data-theme=paper] .num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}body[data-theme=paper] .num-suffix{font-family:var(--font-marker);font-size:12px;color:var(--ink-soft);padding-right:4px;min-width:14px}body[data-theme=paper] .slider{display:flex;align-items:center;gap:8px;width:100%;min-width:0}body[data-theme=paper] .slider input[type=range]{flex:1;min-width:0;height:6px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--paper-cream);border:2px solid var(--ink);border-radius:4px;outline:none;box-shadow:inset 0 1px 2px #2a2d3433}body[data-theme=paper] .slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--paper-red);cursor:pointer;border:2px solid var(--ink);box-shadow:1px 2px #2a2d344d}body[data-theme=paper] .slider input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--paper-red);cursor:pointer;border:2px solid var(--ink);box-shadow:1px 2px #2a2d344d}body[data-theme=paper] .slider-value{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--ink);min-width:40px;text-align:right;font-variant-numeric:tabular-nums}body[data-theme=paper] .groups-panel{display:flex;flex-direction:column;background:var(--paper-green);border:3px solid var(--ink);border-radius:16px 8px 14px 10px;height:100%;min-height:0;overflow:hidden;box-shadow:var(--paper-shadow);transform:rotate(.4deg);position:relative}body[data-theme=paper] .groups-panel:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%) rotate(-3deg);width:88px;height:22px;background:var(--washi-blue);border:1px solid rgba(0,0,0,.18);box-shadow:0 2px 5px #00000026;pointer-events:none;z-index:5}body[data-theme=paper] .groups-header{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px;flex-shrink:0;position:relative;border-bottom:2px dashed rgba(255,255,255,.55)}body[data-theme=paper] .groups-header:after{display:none}body[data-theme=paper] .groups-title-wrap{display:inline-flex;align-items:baseline;gap:10px}body[data-theme=paper] .groups-title{font-family:var(--font-display);font-weight:700;font-size:28px;letter-spacing:0;text-transform:none;color:#fff;text-shadow:2px 2px 0 var(--ink);line-height:1;transform:rotate(-1.5deg);display:inline-block}body[data-theme=paper] .groups-count{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:0;color:var(--ink);font-variant-numeric:tabular-nums;padding:2px 8px;border:2.5px solid var(--ink);border-radius:8px 3px 7px 4px;background:var(--paper-yellow);transform:rotate(3deg);display:inline-block}body[data-theme=paper] .add-group-btn{padding:5px 12px;font-size:16px;font-family:var(--font-display);font-weight:700;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--paper-yellow);border:2.5px solid var(--ink);border-radius:10px 4px 9px 5px;cursor:pointer;box-shadow:var(--paper-shadow-sm);transform:rotate(2deg)}body[data-theme=paper] .add-group-btn:hover{background:var(--paper-orange);transform:rotate(-2deg) translateY(-1px)}body[data-theme=paper] .groups-empty{margin:24px 18px;padding:22px 18px;color:#fff;font-size:17px;font-family:var(--font-display);text-align:center;line-height:1.4;border:3px dashed #FFF;border-radius:12px 6px 10px 8px;background:#ffffff1a;transform:rotate(-1deg)}body[data-theme=paper] .groups-empty p{margin:6px 0 8px;color:#fff;font-family:var(--font-display);font-weight:700;letter-spacing:0;text-transform:none;font-size:19px;text-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .groups-empty small{display:block;font-size:15px;font-style:normal;font-family:var(--font-marker);color:#ffffffe6}body[data-theme=paper] .groups-empty-mark{display:block;font-size:38px;color:#fff;margin-bottom:4px;line-height:1;text-shadow:2px 2px 0 var(--ink)}body[data-theme=paper] .groups-list{display:flex;flex-direction:column;gap:10px;padding:12px 10px;overflow-y:auto;min-height:0;overscroll-behavior:contain}body[data-theme=paper] .groups-list,body[data-theme=paper] .group-usage-grid,body[data-theme=paper] .group-pool{scrollbar-width:thin;scrollbar-color:var(--ink) transparent}body[data-theme=paper] .groups-list::-webkit-scrollbar,body[data-theme=paper] .group-usage-grid::-webkit-scrollbar,body[data-theme=paper] .group-pool::-webkit-scrollbar{width:8px}body[data-theme=paper] .groups-list::-webkit-scrollbar-track,body[data-theme=paper] .group-usage-grid::-webkit-scrollbar-track,body[data-theme=paper] .group-pool::-webkit-scrollbar-track{background:transparent}body[data-theme=paper] .groups-list::-webkit-scrollbar-thumb,body[data-theme=paper] .group-usage-grid::-webkit-scrollbar-thumb,body[data-theme=paper] .group-pool::-webkit-scrollbar-thumb{background:var(--ink);border-radius:4px;border:1px solid var(--paper-cream)}body[data-theme=paper] .group-card{background:var(--paper-cream);border:2.5px solid var(--ink);border-radius:10px 4px 9px 5px;overflow:hidden;display:flex;position:relative;box-shadow:var(--paper-shadow-sm);transition:transform .15s,box-shadow .15s;flex-shrink:0}body[data-theme=paper] .group-card:nth-child(2n){transform:rotate(-.9deg)}body[data-theme=paper] .group-card:nth-child(3n){transform:rotate(1.1deg)}body[data-theme=paper] .group-card:nth-child(4n){transform:rotate(-1.5deg)}body[data-theme=paper] .group-card:hover{transform:rotate(0) translateY(-2px);box-shadow:var(--paper-shadow);z-index:2}body[data-theme=paper] .group-card.drop{transform:rotate(0) scale(1.04);box-shadow:var(--paper-shadow-lg),0 0 0 3px var(--paper-red);background:var(--paper-yellow)}body[data-theme=paper] .group-card.drop:after{content:"drop it!";position:absolute;top:6px;right:8px;padding:4px 10px;background:var(--paper-red);color:#fff;font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:0;text-transform:none;border:2px solid var(--ink);border-radius:8px 3px 7px 4px;pointer-events:none;z-index:5;transform:rotate(-5deg);text-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .group-color-stripe{width:14px;flex-shrink:0;border:none;padding:0;margin:0;cursor:pointer;align-self:stretch;transition:width .14s;border-radius:0;text-transform:none;letter-spacing:0;position:relative;border-right:2.5px solid var(--ink);box-shadow:none}body[data-theme=paper] .group-color-stripe:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,transparent 0px,transparent 3px,rgba(0,0,0,.07) 3px,rgba(0,0,0,.07) 4px);pointer-events:none}body[data-theme=paper] .group-color-stripe:hover{width:22px}body[data-theme=paper] .group-color-stripe:focus-visible{outline:3px dashed var(--ink);outline-offset:-2px}body[data-theme=paper] .group-color-popover{position:fixed;display:grid;grid-template-columns:repeat(4,auto);gap:6px;padding:12px;background:var(--paper-cream);border:3px solid var(--ink);border-radius:12px 6px 10px 8px;box-shadow:var(--paper-shadow-lg);z-index:1000;transform:rotate(-1deg)}body[data-theme=paper] .group-color-swatch{width:26px;height:26px;border-radius:50%;border:2.5px solid var(--ink);padding:0;cursor:pointer;text-transform:none;letter-spacing:0;box-shadow:var(--paper-shadow-sm)}body[data-theme=paper] .group-color-swatch:hover{transform:scale(1.18) rotate(15deg)}body[data-theme=paper] .group-color-swatch.active{outline:3px dashed var(--ink);outline-offset:2px}body[data-theme=paper] .group-card-body{flex:1;display:flex;flex-direction:column;min-width:0;padding:8px 12px 10px;gap:6px}body[data-theme=paper] .group-card-head{display:flex;align-items:center;gap:8px;min-width:0}body[data-theme=paper] .group-index{font-family:var(--font-marker);font-size:13px;letter-spacing:.02em;color:var(--ink-soft);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:700}body[data-theme=paper] .group-name{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:0;cursor:text;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.05;flex:1 1 auto;color:var(--ink)}body[data-theme=paper] .group-name-input{background:#fff;border:2px solid var(--ink);color:var(--ink);padding:2px 6px;border-radius:6px 2px 5px 3px;font-family:var(--font-display);font-weight:700;font-size:22px;width:100%;min-width:0;flex:1 1 auto;outline:none}body[data-theme=paper] .group-action-cluster{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;opacity:.6;transition:opacity .12s}body[data-theme=paper] .group-card:hover .group-action-cluster,body[data-theme=paper] .group-card:focus-within .group-action-cluster{opacity:1}body[data-theme=paper] .group-icon-btn{width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--paper-cream-2);border:2px solid var(--ink);color:var(--ink);font-family:var(--font-marker);font-size:14px;font-weight:700;line-height:1;letter-spacing:0;border-radius:6px 2px 5px 3px;cursor:pointer;box-shadow:1px 1px 0 var(--ink);transition:background .1s,transform .08s}body[data-theme=paper] .group-icon-btn:hover:not(:disabled){background:var(--paper-yellow);transform:rotate(-6deg) scale(1.1)}body[data-theme=paper] .group-icon-btn:active:not(:disabled){transform:scale(.92)}body[data-theme=paper] .group-icon-btn:disabled{opacity:.35;cursor:not-allowed}body[data-theme=paper] .group-icon-btn.group-icon-danger:hover:not(:disabled){background:var(--paper-red);color:#fff}body[data-theme=paper] .group-toggle-btn{font-size:0;line-height:.8;background:var(--paper-yellow);color:var(--ink);border-width:2px}body[data-theme=paper] .group-toggle-btn:not(:disabled):hover{background:var(--paper-orange);transform:rotate(-6deg) scale(1.1)}body[data-theme=paper] .group-toggle-btn:before{content:"▾";display:inline-block;font-size:16px;font-weight:700;transition:transform .15s}body[data-theme=paper] .group-toggle-btn.open{border-style:dashed;background:var(--paper-mint)}body[data-theme=paper] .group-toggle-btn.open:before{transform:rotate(180deg)}body[data-theme=paper] .group-meter{display:flex;align-items:center;gap:8px;padding:2px 0 4px;border-bottom:1.5px dashed var(--ink)}body[data-theme=paper] .group-meter-block{display:inline-flex;align-items:baseline;gap:5px;flex:0 0 auto}body[data-theme=paper] .group-meter-block b{font-family:var(--font-display);font-weight:700;font-size:18px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:0}body[data-theme=paper] .group-meter-block i{font-style:normal;font-family:var(--font-marker);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}body[data-theme=paper] .group-meter-sep{width:1.5px;height:12px;background:var(--ink);flex-shrink:0;opacity:.5}body[data-theme=paper] .group-usage-grid{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0 0}body[data-theme=paper] .usage-cell{width:14px;height:14px;border-radius:3px 1px;background:var(--paper-cream-2);border:1.5px solid var(--ink);cursor:grab;flex-shrink:0;position:relative;transition:transform .08s}body[data-theme=paper] .usage-cell:hover{transform:scale(1.5) rotate(8deg);z-index:2}body[data-theme=paper] .usage-cell.used{border-color:var(--ink);box-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .usage-cell:active{cursor:grabbing;transform:scale(.92)}body[data-theme=paper] .group-pool{list-style:none;margin:0;padding:8px 12px 10px;display:flex;flex-direction:column;gap:2px;border-top:2px dashed var(--ink);background:var(--paper-cream-2)}body[data-theme=paper] .pool-item{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:3px 6px;font-family:var(--font-display);font-size:16px;color:var(--ink-soft);border-radius:4px 2px 3px;letter-spacing:0;transition:background .08s,color .08s}body[data-theme=paper] .pool-item:hover{background:#ffffffb3;color:var(--ink)}body[data-theme=paper] .pool-item.used{color:var(--ink);font-weight:700}body[data-theme=paper] .pool-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-light);border:1.5px solid var(--ink);margin-left:1px}body[data-theme=paper] .pool-item.used .pool-dot{background:var(--paper-red)}body[data-theme=paper] .pool-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}body[data-theme=paper] .pool-remove{width:20px;height:20px;padding:0;font-size:14px;border-radius:50%;background:transparent;border:1.5px solid transparent;color:var(--ink-light);cursor:pointer;line-height:1;letter-spacing:0;opacity:0;font-family:var(--font-marker);font-weight:700;box-shadow:none;transition:opacity .1s,color .1s}body[data-theme=paper] .pool-item:hover .pool-remove{opacity:1}body[data-theme=paper] .pool-remove:hover{color:#fff;background:var(--paper-red);border-color:var(--ink);transform:rotate(15deg)}body[data-theme=paper] .group-pool-hint{margin-top:4px;padding:10px 12px;color:var(--ink-soft);font-family:var(--font-marker);font-size:14px;letter-spacing:.02em;text-transform:none;text-align:center;border:2px dashed var(--ink);border-radius:8px 3px 7px 4px;background:#ffffff80}body[data-theme=paper] .footer{display:flex;align-items:center;gap:12px;padding:8px 22px 10px;background:linear-gradient(180deg,#f4d35eeb,#f4d35ed1,#f4d35eeb);border-top:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);min-height:36px;font-family:var(--font-marker);font-size:16px;color:var(--ink);position:relative;margin:0 14px 12px;border-radius:0 0 12px 14px;box-shadow:var(--paper-shadow-sm);transform:rotate(-.3deg);background-image:linear-gradient(180deg,#f4d35eeb,#f4d35ed1,#f4d35eeb),repeating-linear-gradient(45deg,rgba(42,45,52,.04) 0px,rgba(42,45,52,.04) 1px,transparent 1px,transparent 6px)}body[data-theme=paper] .status-dot{width:10px;height:10px;border-radius:50%;background:var(--ink);border:1.5px solid var(--ink);flex-shrink:0}body[data-theme=paper] .status-dot-info{background:var(--paper-blue)}body[data-theme=paper] .status-dot-success{background:var(--paper-green)}body[data-theme=paper] .status-dot-error{background:var(--paper-red);animation:blink 1.2s infinite}body[data-theme=paper] .status-dot-idle{background:var(--paper-cream)}@keyframes blink{0%,60%,to{opacity:1}30%{opacity:.3}}body[data-theme=paper] .status{letter-spacing:.02em;font-family:var(--font-marker);color:var(--ink)}body[data-theme=paper] .status-error{color:var(--paper-red);font-weight:700}body[data-theme=paper] .status-success{color:var(--paper-green);font-weight:700}body[data-theme=paper] .status-info{color:var(--ink);font-weight:700}body[data-theme=paper] .dim{color:var(--ink-soft);font-style:normal;font-family:var(--font-marker)}body[data-theme=paper] .paper-tape{position:absolute;pointer-events:none;z-index:6}body[data-theme=paper] .paper-tape-tr{top:-8px;right:20px;width:70px;height:20px;background:var(--washi-pink);border:1px solid rgba(0,0,0,.18);box-shadow:0 2px 4px #00000026;transform:rotate(8deg)}body[data-theme=paper] .scotch-tape{position:absolute;width:56px;height:18px;background:linear-gradient(180deg,#fff8c873,#fff4aa52 50%,#fff8c873);border:1px solid rgba(170,145,60,.32);box-shadow:0 2px 4px #0000001f;pointer-events:none;z-index:6}body[data-theme=paper] .sticker-burst{position:absolute;width:70px;height:70px;pointer-events:none;z-index:5}body[data-theme=paper] .marker-arrow{position:absolute;pointer-events:none;z-index:7}body[data-theme=paper] .marker-arrow-caption{font-family:var(--font-marker);font-size:16px;color:var(--paper-red);font-weight:700}body[data-theme=paper] .export-burst-wrap{position:relative;display:inline-flex;align-items:center;width:0;height:0;pointer-events:none}body[data-theme=paper] .export-sticker{position:absolute;right:-38px;top:-42px;pointer-events:none;filter:drop-shadow(2px 3px 0 rgba(42,45,52,.18));animation:sticker-spin 9s linear infinite}@keyframes sticker-spin{0%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}to{transform:rotate(-6deg)}}body[data-theme=paper] .scotch-tape{position:absolute}body[data-theme=paper] .scotch-tl{top:-8px;left:28px;width:70px;height:22px;background:linear-gradient(180deg,#fff8c880,#fff4aa59 50%,#fff8c880);border:1px solid rgba(170,145,60,.32);box-shadow:0 2px 4px #00000024;transform:rotate(-10deg);z-index:5}body[data-theme=paper] .scotch-tr{top:-6px;right:36px;width:64px;height:20px;background:linear-gradient(180deg,#fff8c88c,#fff4aa66 50%,#fff8c88c);border:1px solid rgba(170,145,60,.3);box-shadow:0 2px 4px #0000001f;transform:rotate(8deg);z-index:5}body[data-theme=paper] .pad-arrow{position:absolute;left:-8px;top:-34px;z-index:8;transform:rotate(-4deg);pointer-events:none}@media (max-width: 1080px){body[data-theme=paper] .pad-arrow{display:none}}body[data-theme=paper] .side{position:relative}body[data-theme=paper] .groups-arrow{position:absolute;top:-30px;right:-8px;z-index:8;transform:rotate(3deg);pointer-events:none}@media (max-width: 1080px){body[data-theme=paper] .groups-arrow{display:none}}body[data-theme=paper] .groups-panel:after{content:"";position:absolute;bottom:10px;right:-6px;width:24px;height:70px;background:var(--washi-rainbow);border:1px solid rgba(0,0,0,.18);box-shadow:-2px 1px 4px #00000026;pointer-events:none;z-index:5;transform:rotate(3deg)}body[data-theme=paper] .rack:after{content:"";position:absolute;bottom:-8px;left:14px;width:80px;height:18px;background:var(--washi-rainbow);border:1px solid rgba(0,0,0,.16);box-shadow:0 2px 4px #00000024;transform:rotate(-3deg);pointer-events:none;z-index:4}body[data-theme=paper] .inspector:after,body[data-theme=paper] .inspector-empty:after{content:"";position:absolute;top:-6px;right:40px;width:56px;height:18px;background:linear-gradient(180deg,#fff8c885,#fff4aa5c 50%,#fff8c885);border:1px solid rgba(170,145,60,.3);box-shadow:0 2px 4px #00000024;transform:rotate(6deg);pointer-events:none;z-index:7}body[data-theme=brutalist] .theme-switch{display:inline-flex;align-items:stretch;border:var(--hairline) solid var(--ink);background:var(--paper);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}body[data-theme=brutalist] .theme-switch-btn{background:var(--paper);color:var(--ink);border:none;border-right:var(--hairline) solid var(--ink);padding:6px 10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-radius:0;cursor:pointer;transition:none}body[data-theme=brutalist] .theme-switch-btn:last-child{border-right:none}body[data-theme=brutalist] .theme-switch-btn.active{background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .theme-switch-btn:not(.active):hover{background:var(--accent);color:var(--paper)}body[data-theme=paper] .theme-switch{display:inline-flex;align-items:stretch;gap:4px;padding:2px;background:var(--paper-cream-2);border:2.5px solid var(--ink);border-radius:12px 4px 11px 6px;box-shadow:var(--paper-shadow-sm);transform:rotate(-1deg)}body[data-theme=paper] .theme-switch-btn{background:transparent;color:var(--ink-soft);border:1.5px dashed transparent;padding:4px 10px;font-family:var(--font-display, "Caveat", cursive);font-size:16px;font-weight:700;letter-spacing:0;text-transform:none;border-radius:8px 3px 9px 4px;cursor:pointer;transition:transform .1s,background .1s,color .1s}body[data-theme=paper] .theme-switch-btn.active{background:var(--paper-yellow);color:var(--ink);border-color:var(--ink);transform:rotate(1.5deg);box-shadow:1px 2px 0 var(--ink)}body[data-theme=paper] .theme-switch-btn:not(.active):hover{color:var(--ink);background:#ffffff8c}body[data-theme=brutalist] .scotch-tape,body[data-theme=brutalist] .marker-arrow,body[data-theme=brutalist] .export-burst-wrap,body[data-theme=clean] .scotch-tape,body[data-theme=clean] .marker-arrow,body[data-theme=clean] .export-burst-wrap{display:none!important}.m8-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:500;display:grid;place-items:center;padding:24px}.m8-modal{width:min(440px,100%);max-height:calc(100vh - 48px);overflow:auto;display:flex;flex-direction:column}.m8-modal-head{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4px 12px;padding:14px 16px 10px;position:relative}.m8-modal-title{font-size:18px;font-weight:800;margin:0;letter-spacing:-.02em}.m8-modal-sub{grid-column:1 / -1;font-size:11px;opacity:.75;line-height:1.2}.m8-modal-close{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;align-self:start}.m8-modal-body{display:flex;flex-direction:column;gap:14px;padding:12px 16px 14px}.m8-field{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 10px}.m8-field-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.m8-field-input{padding:6px 8px;font-size:14px;font-weight:600;min-width:0;width:100%}.m8-field-preview{display:flex;align-items:baseline;gap:8px;margin-top:-8px;padding-left:74px;font-size:11px}.m8-field-preview-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;opacity:.65}.m8-field-preview code{font-family:var(--font-mono, monospace);font-weight:700;font-size:12px;letter-spacing:.04em}.m8-fieldset{display:flex;flex-direction:column;gap:6px;padding:8px 10px 10px;margin:0;border:1px solid}.m8-fieldset legend{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:800;padding:0 6px}.m8-radio{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:0 10px;cursor:pointer;padding:4px}.m8-radio input{margin:0}.m8-radio-label{font-size:13px;font-weight:600}.m8-radio-count{font-family:var(--font-mono, monospace);font-size:11px;font-weight:700;padding:1px 6px;border:1px solid}.m8-radio-hint{font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.6}.m8-summary{display:flex;align-items:center;gap:8px;font-family:var(--font-mono, monospace);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.m8-warn{font-size:11px;line-height:1.4;padding:8px 10px;border:1px solid}.m8-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px 14px;border-top:1px solid}body[data-theme=brutalist] .m8-modal-backdrop{background:#000000a6}body[data-theme=brutalist] .m8-modal{background:var(--paper);color:var(--ink);border:var(--bold-rule) solid var(--ink);border-radius:0}body[data-theme=brutalist] .m8-modal-head{border-bottom:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .m8-modal-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:-.03em}body[data-theme=brutalist] .m8-modal-title:before{content:"§ ";color:var(--accent)}body[data-theme=brutalist] .m8-modal-sub{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em}body[data-theme=brutalist] .m8-modal-close{background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--ink);border-radius:0;font-family:var(--font-mono)}body[data-theme=brutalist] .m8-modal-close:hover{background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .m8-field-label{font-family:var(--font-mono);color:var(--ink)}body[data-theme=brutalist] .m8-field-input{background:var(--paper);border:var(--hairline) solid var(--ink);color:var(--ink);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:-.01em;border-radius:0}body[data-theme=brutalist] .m8-field-input:focus{outline:none;background:var(--accent);color:var(--paper)}body[data-theme=brutalist] .m8-field-preview-label{font-family:var(--font-mono);color:var(--ink)}body[data-theme=brutalist] .m8-field-preview code{background:var(--ink);color:var(--paper);padding:1px 6px;font-family:var(--font-mono)}body[data-theme=brutalist] .m8-fieldset{background:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0}body[data-theme=brutalist] .m8-fieldset legend{background:var(--ink);color:var(--paper);font-family:var(--font-mono)}body[data-theme=brutalist] .m8-radio{border-bottom:var(--hairline) dotted var(--rule-faint)}body[data-theme=brutalist] .m8-radio:last-child{border-bottom:none}body[data-theme=brutalist] .m8-radio:hover{background:#ff4f0014}body[data-theme=brutalist] .m8-radio-label{font-family:var(--font-sans);font-weight:700;text-transform:uppercase;letter-spacing:-.01em}body[data-theme=brutalist] .m8-radio-count{border-color:var(--ink);background:var(--paper);color:var(--ink)}body[data-theme=brutalist] .m8-radio-hint{font-family:var(--font-mono);color:var(--ink-mid)}body[data-theme=brutalist] .m8-summary{background:var(--ink);color:var(--paper);padding:6px 10px}body[data-theme=brutalist] .m8-warn{background:var(--paper);color:var(--accent);border-color:var(--accent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em}body[data-theme=brutalist] .m8-modal-foot{border-top-color:var(--ink);border-top-width:var(--hairline);border-top-style:solid}body[data-theme=paper] .m8-modal-backdrop{background:#2a2d3473}body[data-theme=paper] .m8-modal{background:var(--panel-raised, #fff);color:var(--ink);border:2.5px solid var(--ink);border-radius:14px 8px 18px 6px;box-shadow:var(--paper-shadow-lg);transform:rotate(-.5deg)}body[data-theme=paper] .m8-modal-head{border-bottom:1.5px dashed var(--ink)}body[data-theme=paper] .m8-modal-title{font-family:var(--font-display);font-size:26px;font-weight:700;letter-spacing:0}body[data-theme=paper] .m8-modal-sub{font-family:var(--font-marker);font-size:14px;color:var(--ink-soft)}body[data-theme=paper] .m8-modal-close{background:var(--paper-yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:50%;font-family:var(--font-display);font-size:18px;font-weight:700}body[data-theme=paper] .m8-field-label{font-family:var(--font-marker);font-size:13px;letter-spacing:.04em;color:var(--ink)}body[data-theme=paper] .m8-field-input{background:#fff;border:1.5px solid var(--ink);color:var(--ink);font-family:var(--font-display);font-size:18px;border-radius:6px 3px 7px 2px}body[data-theme=paper] .m8-field-input:focus{outline:2px solid var(--paper-yellow);outline-offset:1px}body[data-theme=paper] .m8-field-preview-label{font-family:var(--font-marker);color:var(--ink-soft)}body[data-theme=paper] .m8-field-preview code{background:var(--paper-yellow);border:1.5px solid var(--ink);padding:2px 8px;border-radius:6px 3px;font-family:IBM Plex Mono,monospace;font-weight:700}body[data-theme=paper] .m8-fieldset{background:var(--panel-sunken);border:1.5px solid var(--ink);border-radius:8px 4px 9px 3px}body[data-theme=paper] .m8-fieldset legend{background:var(--paper-pink);color:var(--ink);font-family:var(--font-marker);border:1.5px solid var(--ink);border-radius:6px 3px;text-transform:none;font-size:13px;letter-spacing:.04em}body[data-theme=paper] .m8-radio:hover{background:#ffffff8c}body[data-theme=paper] .m8-radio-label{font-family:var(--font-display);font-size:16px}body[data-theme=paper] .m8-radio-count{border-color:var(--ink);background:#fff;border-radius:6px 3px;font-family:IBM Plex Mono,monospace}body[data-theme=paper] .m8-radio-hint{font-family:var(--font-marker);color:var(--ink-soft);text-transform:none;font-size:13px;letter-spacing:0}body[data-theme=paper] .m8-summary{background:var(--paper-mint);color:var(--ink);border:1.5px solid var(--ink);border-radius:6px 3px;padding:4px 10px}body[data-theme=paper] .m8-warn{background:var(--paper-yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:6px 3px;font-family:var(--font-display)}body[data-theme=paper] .m8-modal-foot{border-top:1.5px dashed var(--ink)}body[data-theme=brutalist] .group-icon-btn.group-icon-m8{color:var(--accent)}body[data-theme=brutalist] .group-icon-btn.group-icon-m8:hover:not(:disabled){background:var(--accent);color:var(--paper)}body[data-theme=paper] .group-icon-btn.group-icon-m8{color:var(--paper-purple)}body[data-theme=paper] .group-icon-btn.group-icon-m8:hover:not(:disabled){background:var(--paper-purple);color:#fff}body[data-theme=brutalist] .keyboard-mode-toggle.active{background:var(--accent);color:var(--paper);border-color:var(--ink)}body[data-theme=paper] .keyboard-mode-toggle.active{background:var(--paper-blue);color:#fff;border-color:var(--ink);transform:rotate(-1.5deg)}.pad-key{display:inline-flex;align-items:center;justify-content:center;font-weight:700;pointer-events:none;-webkit-user-select:none;user-select:none}body[data-theme=brutalist] .pad-key{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;padding:1px 5px;background:var(--ink);color:var(--accent);border:var(--hairline) solid var(--ink);text-transform:uppercase}body[data-theme=brutalist] .pad.selected .pad-key{background:var(--paper);color:var(--ink)}body[data-theme=paper] .pad-key{font-family:IBM Plex Mono,Patrick Hand,monospace;font-size:11px;padding:1px 6px;background:#fff;color:var(--ink);border:1.5px solid var(--ink);border-radius:6px 2px 5px 3px;box-shadow:1px 1px 0 var(--ink);transform:rotate(-3deg)}.ui-tooltip{position:fixed;z-index:1000;max-width:320px;padding:10px 12px;pointer-events:none;font-size:12px;line-height:1.45;animation:ui-tooltip-in .12s ease-out both}.ui-tooltip b{font-weight:800}.ui-tooltip-list{margin:6px 0;padding-left:14px;list-style:square}.ui-tooltip-list li{margin:3px 0}.ui-tooltip kbd{display:inline-block;padding:0 4px;margin:0 1px;font-family:IBM Plex Mono,ui-monospace,Menlo,monospace;font-size:10px;font-weight:700;line-height:1.4;border-radius:2px}@keyframes ui-tooltip-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.ui-tooltip-top{animation-name:ui-tooltip-in-top}@keyframes ui-tooltip-in-top{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}body[data-theme=brutalist] .ui-tooltip{background:var(--ink);color:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0;font-family:var(--font-mono);letter-spacing:.02em;box-shadow:3px 3px 0 var(--accent)}body[data-theme=brutalist] .ui-tooltip b{color:var(--accent);letter-spacing:.1em;text-transform:uppercase}body[data-theme=brutalist] .ui-tooltip kbd{background:var(--paper);color:var(--ink);border:var(--hairline) solid var(--paper)}body[data-theme=brutalist] .ui-tooltip-list{list-style:"§ "}body[data-theme=paper] .ui-tooltip{background:var(--panel-raised, #fff);color:var(--ink);border:2px solid var(--ink);border-radius:9px 4px 11px 3px;font-family:var(--font-display);font-size:14px;line-height:1.3;letter-spacing:0;box-shadow:3px 4px 0 var(--ink)}body[data-theme=paper] .ui-tooltip b{font-family:var(--font-marker);color:var(--paper-red);font-weight:700;letter-spacing:.02em}body[data-theme=paper] .ui-tooltip kbd{background:var(--paper-yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:4px 2px 5px 1px;font-size:11px;box-shadow:1px 1px 0 var(--ink)}body[data-theme=paper] .ui-tooltip-list{list-style:none;padding-left:0}body[data-theme=paper] .ui-tooltip-list li:before{content:"✎ ";color:var(--paper-red);margin-right:4px}body[data-theme=clean]{--bg: #0a0a0b;--s1: #131316;--s2: #1c1c20;--s3: #232328;--bd-subtle: #232328;--bd: #2e2e34;--bd-strong: #3f3f47;--fg: #f4f4f5;--fg-2: #a1a1aa;--fg-3: #71717a;--fg-disabled: #52525b;--primary: #f4f4f5;--primary-fg: #18181b;--ring: #d4d4d8;--danger: #ef4444;--ok: #22c55e;--info: #71717a;--warn: #f97316;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 10px;font-family:var(--font-sans);font-size:13px;line-height:1.45;font-weight:400;background:var(--bg);color:var(--fg);letter-spacing:-.005em}body[data-theme=clean] *{box-sizing:border-box}body[data-theme=clean] ::selection{background:var(--fg);color:var(--bg)}body[data-theme=clean] .app{display:grid;grid-template-rows:auto 1fr auto;height:100vh;overflow:hidden;background:var(--bg)}body[data-theme=clean] .header{display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:16px;padding:14px 20px;background:var(--bg);border-bottom:1px solid var(--bd-subtle)}body[data-theme=clean] .brand{display:flex;flex-direction:column;gap:2px;-webkit-user-select:none;user-select:none;line-height:1}body[data-theme=clean] .brand-mark{font-family:var(--font-sans);font-weight:700;font-size:20px;letter-spacing:-.025em;color:var(--fg)}body[data-theme=clean] .brand-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--fg-3);text-transform:lowercase}body[data-theme=clean] .brand-domain{width:fit-content;color:var(--fg-2);font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-decoration:none}body[data-theme=clean] .brand-domain:hover,body[data-theme=clean] .brand-domain:focus-visible{color:var(--fg);text-decoration:underline;text-underline-offset:3px;outline:none}body[data-theme=clean] .kit-name-wrap{display:flex;flex-direction:column;gap:4px;align-self:center;min-width:240px}body[data-theme=clean] .kit-name-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}body[data-theme=clean] .kit-name-input{background:var(--s1);border:1px solid var(--bd);color:var(--fg);font-family:var(--font-sans);font-weight:500;font-size:14px;padding:7px 10px;border-radius:var(--r-sm);width:100%;letter-spacing:-.01em}body[data-theme=clean] .kit-name-input:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #d4d4d81f}body[data-theme=clean] .controls{display:flex;align-items:center;gap:6px;margin-left:auto}body[data-theme=clean] button{font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:-.005em;background:transparent;color:var(--fg);border:1px solid var(--bd);padding:6px 12px;border-radius:var(--r-sm);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}body[data-theme=clean] button:hover{background:var(--s2);border-color:var(--bd-strong)}body[data-theme=clean] button:focus-visible{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #d4d4d81f}body[data-theme=clean] button:disabled{color:var(--fg-disabled);border-color:var(--bd-subtle);background:transparent;cursor:not-allowed}body[data-theme=clean] button.primary{background:var(--primary);color:var(--primary-fg);border-color:var(--primary);font-weight:600}body[data-theme=clean] button.primary:hover{background:#e4e4e7;border-color:#e4e4e7}body[data-theme=clean] button.primary:disabled{background:var(--s2);color:var(--fg-disabled);border-color:var(--s2)}body[data-theme=clean] .workspace-switcher{position:relative;display:inline-flex}body[data-theme=clean] .workspace-trigger{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 28px 6px 12px;background:var(--s1);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:12px;text-align:left;max-width:240px;position:relative}body[data-theme=clean] .workspace-trigger:hover{background:var(--s2);border-color:var(--bd-strong)}body[data-theme=clean] .workspace-trigger.active{border-color:var(--bd-strong)}body[data-theme=clean] .workspace-trigger-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:var(--fg-3);text-transform:uppercase}body[data-theme=clean] .workspace-trigger-name{font-family:var(--font-sans);font-weight:500;font-size:13px;letter-spacing:-.01em;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}body[data-theme=clean] .workspace-trigger-chev{position:absolute;top:50%;right:10px;transform:translateY(-50%);color:var(--fg-3);font-family:var(--font-mono);font-size:10px}body[data-theme=clean] .workspace-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:280px;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-md);padding:4px;z-index:30;max-height:420px;overflow-y:auto;box-shadow:0 10px 32px #00000080}body[data-theme=clean] .workspace-menu:before{display:none}body[data-theme=clean] .workspace-new{width:100%;text-align:left;padding:8px 10px;background:transparent;color:var(--fg);border:none;font-family:var(--font-sans);font-size:12px;font-weight:500;border-radius:var(--r-sm)}body[data-theme=clean] .workspace-new:before{content:"+ ";color:var(--fg-3)}body[data-theme=clean] .workspace-new:hover{background:var(--s2)}body[data-theme=clean] .workspace-divider{height:1px;background:var(--bd-subtle);margin:4px 0}body[data-theme=clean] .workspace-row{display:flex;align-items:stretch;border-radius:var(--r-sm);overflow:hidden}body[data-theme=clean] .workspace-row:hover{background:var(--s2)}body[data-theme=clean] .workspace-row-pick{flex:1;display:flex;flex-direction:column;align-items:flex-start;padding:7px 10px;background:transparent;border:none;font-family:var(--font-sans);font-size:12px;color:var(--fg);text-align:left;min-width:0}body[data-theme=clean] .workspace-row-name{font-weight:500;font-size:13px;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}body[data-theme=clean] .workspace-row-time{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);margin-top:2px}body[data-theme=clean] .workspace-row-delete{width:28px;padding:0;background:transparent;border:none;color:var(--fg-3);font-family:var(--font-mono);font-size:13px}body[data-theme=clean] .workspace-row-delete:hover{background:#ef44441a;color:var(--danger)}body[data-theme=clean] .theme-switch{display:inline-flex;gap:0;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);padding:2px}body[data-theme=clean] .theme-switch-btn{background:transparent;color:var(--fg-2);border:none;padding:4px 10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;border-radius:var(--r-xs)}body[data-theme=clean] .theme-switch-btn:hover{background:var(--s2);color:var(--fg)}body[data-theme=clean] .theme-switch-btn.active{background:var(--s3);color:var(--fg)}body[data-theme=clean] .main{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);grid-template-rows:minmax(0,1fr) 200px;gap:0;padding:0;min-height:0;overflow:hidden;background:var(--bg)}body[data-theme=clean] .work-area{grid-column:1;grid-row:1;display:flex;flex-direction:column;border-right:1px solid var(--bd-subtle);border-bottom:1px solid var(--bd-subtle);min-width:0;min-height:0}body[data-theme=clean] .side{grid-column:2;grid-row:1 / 3;display:flex;flex-direction:column;min-height:0;overflow:hidden;border-bottom:1px solid var(--bd-subtle);background:var(--bg)}body[data-theme=clean] .dock{grid-column:1;grid-row:2;min-width:0;border-right:1px solid var(--bd-subtle);background:var(--bg)}@media (max-width: 1080px){body[data-theme=clean] .main{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto minmax(0,260px)}body[data-theme=clean] .side{grid-column:1;grid-row:3;border-top:1px solid var(--bd-subtle)}body[data-theme=clean] .dock{grid-row:2}}body[data-theme=clean] .rack{display:flex;flex-direction:column;gap:8px;padding:14px 18px;background:var(--bg);border-bottom:1px solid var(--bd-subtle)}body[data-theme=clean] .rack-row{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap;row-gap:6px}body[data-theme=clean] .rack-row-top>.paint-exit-pulse{margin-left:auto}body[data-theme=clean] .rack-divider{width:1px;align-self:stretch;background:var(--bd-subtle);margin:0 4px}body[data-theme=clean] .paint-row{display:flex;align-items:center;gap:4px;min-width:0}body[data-theme=clean] .paint-row-color{flex:0 0 auto}body[data-theme=clean] .paint-row-group{flex:1 1 0;min-width:0;gap:6px}body[data-theme=clean] .paint-chips-scroll{display:flex;align-items:center;gap:4px;flex:1 1 0;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--bd) transparent}body[data-theme=clean] .paint-mini-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--fg-3);text-transform:uppercase;margin-right:4px;flex-shrink:0}body[data-theme=clean] .paint-empty{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);padding:0 4px}body[data-theme=clean] .paint-exit-pulse{padding:6px 12px;font-family:var(--font-sans);font-size:11px;font-weight:500;background:var(--danger);color:#fff;border:1px solid var(--danger);border-radius:var(--r-sm)}body[data-theme=clean] .paint-exit-pulse:hover{background:#dc2626;border-color:#dc2626}body[data-theme=clean] .bank-selector{display:flex;gap:0;align-items:center;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);padding:2px}body[data-theme=clean] .bank-btn{width:30px;height:26px;padding:0;font-family:var(--font-mono);font-weight:600;font-size:12px;background:transparent;color:var(--fg-2);border:none;border-radius:var(--r-xs);position:relative}body[data-theme=clean] .bank-btn:hover{background:var(--s2);color:var(--fg)}body[data-theme=clean] .bank-btn.active{background:var(--s3);color:var(--fg)}body[data-theme=clean] .bank-btn.populated:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--ok)}body[data-theme=clean] .bank-action{position:relative}body[data-theme=clean] .bank-action-trigger{padding:6px 11px;height:28px;font-family:var(--font-sans);font-size:12px;font-weight:500;background:var(--s1);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-sm);white-space:nowrap}body[data-theme=clean] .bank-action-trigger:hover:not(:disabled){background:var(--s2);border-color:var(--bd-strong)}body[data-theme=clean] .bank-action-trigger.active{background:var(--s3);border-color:var(--bd-strong);color:var(--fg)}body[data-theme=clean] .bank-action-trigger:disabled{color:var(--fg-disabled);background:var(--s1);border-color:var(--bd-subtle)}body[data-theme=clean] .bank-action-randomize-group{display:inline-flex;align-items:center;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);padding:0;overflow:hidden}body[data-theme=clean] .bank-action-randomize-group>.bank-action-trigger{border:none;border-radius:0;background:transparent;border-right:1px solid var(--bd-subtle)}body[data-theme=clean] .bank-action-randomize-group>.bank-action-trigger:last-child{border-right:none}body[data-theme=clean] .bank-action-randomize-group>.bank-action-trigger:hover:not(:disabled){background:var(--s2)}body[data-theme=clean] .bank-action-menu{position:absolute;top:calc(100% + 4px);left:0;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-md);padding:4px;z-index:20;white-space:nowrap;box-shadow:0 10px 32px #00000080}body[data-theme=clean] .bank-action-menu-label{display:block;padding:6px 8px 4px;font-family:var(--font-mono);font-size:10px;color:var(--fg-3);text-transform:uppercase;letter-spacing:.06em}body[data-theme=clean] .bank-action-menu-row{display:flex;gap:2px;padding:2px}body[data-theme=clean] .bank-action-target{width:30px;height:28px;padding:0;font-family:var(--font-mono);font-weight:600;font-size:12px;background:transparent;color:var(--fg);border:1px solid transparent;border-radius:var(--r-xs)}body[data-theme=clean] .bank-action-target:hover{background:var(--s2);border-color:var(--bd)}body[data-theme=clean] .keyboard-mode-toggle.active,body[data-theme=clean] .promote-toggle.active{background:var(--primary);color:var(--primary-fg);border-color:var(--primary)}body[data-theme=clean].paint-armed,body[data-theme=clean].paint-armed *{cursor:crosshair!important}body[data-theme=clean] .color-swatch{width:22px;height:22px;padding:0;border-radius:var(--r-xs);border:1px solid var(--bd);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}body[data-theme=clean] .color-swatch:hover{border-color:var(--ring);transform:scale(1.05)}body[data-theme=clean] .color-swatch.active{outline:2px solid var(--ring);outline-offset:1px}body[data-theme=clean] .color-none{background:linear-gradient(135deg,transparent 45%,var(--fg-3) 45%,var(--fg-3) 55%,transparent 55%),var(--s1);color:var(--fg-3)}body[data-theme=clean] .color-custom{width:26px;height:22px;padding:0;border:1px solid var(--bd);border-radius:var(--r-xs);background:transparent;cursor:pointer}body[data-theme=clean] .color-custom::-webkit-color-swatch-wrapper{padding:0}body[data-theme=clean] .color-custom::-webkit-color-swatch{border:none;border-radius:3px}body[data-theme=clean] .color-custom::-moz-color-swatch{border:none;border-radius:3px}body[data-theme=clean] .color-presets.compact{gap:3px}body[data-theme=clean] .group-chip{background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);padding:4px 10px;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--fg);cursor:pointer}body[data-theme=clean] .group-chip:hover{background:var(--s2);border-color:var(--bd-strong)}body[data-theme=clean] .group-chip.active{background:var(--s3);border-color:var(--ring)}body[data-theme=clean] .group-chip-none{border-style:dashed;color:var(--fg-3)}body[data-theme=clean] .pad-stage{flex:1;display:grid;place-items:center;min-height:0;min-width:0;background:var(--bg);padding:20px;container-type:size}body[data-theme=clean] .pad-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:6px;width:min(100cqw,100cqh);height:min(100cqw,100cqh);aspect-ratio:1}body[data-theme=clean] .pad{background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-md);padding:10px 12px 8px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;min-height:0;min-width:0;transition:background .1s ease,border-color .1s ease,transform .06s ease}body[data-theme=clean] .pad:hover{border-color:var(--bd-strong);background:var(--s2)}body[data-theme=clean] .pad:focus-visible{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #d4d4d81f}body[data-theme=clean] .pad.loaded{background:var(--s1)}body[data-theme=clean] .pad.group-only{background:repeating-linear-gradient(135deg,var(--s1) 0,var(--s1) 6px,var(--bg) 6px,var(--bg) 7px)}body[data-theme=clean] .pad.drop{border-color:var(--ring);background:var(--s2);box-shadow:0 0 0 3px #d4d4d826}body[data-theme=clean] .pad.playing{background:var(--fg);color:var(--bg);border-color:var(--fg)}body[data-theme=clean] .pad.playing .pad-num,body[data-theme=clean] .pad.playing .pad-name,body[data-theme=clean] .pad.playing .pad-group-label{color:var(--bg)}body[data-theme=clean] .pad.selected{border-color:var(--ring);box-shadow:inset 0 0 0 1px var(--ring)}body[data-theme=clean] .pad.paint{cursor:crosshair}body[data-theme=clean] .pad-color-bar{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--pad-color, transparent);z-index:2}body[data-theme=clean] .pad-meta{display:flex;align-items:center;justify-content:flex-start;gap:6px;padding-right:22px}body[data-theme=clean] .pad-num{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--fg-3);font-weight:600}body[data-theme=clean] .pad.selected .pad-num{color:var(--fg-2)}body[data-theme=clean] .pad-dup{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);margin-left:2px;cursor:help}body[data-theme=clean] .pad-group-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:var(--fg-2);text-transform:uppercase;padding:1px 5px;background:var(--s2);border-radius:var(--r-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%;margin-left:auto}body[data-theme=clean] .pad-name{font-family:var(--font-sans);font-size:12px;font-weight:500;color:var(--fg);line-height:1.2;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;width:100%}body[data-theme=clean] .pad-name.empty{font-family:var(--font-mono);font-size:11px;color:var(--fg-disabled);font-weight:400;letter-spacing:.08em}body[data-theme=clean] .pad-name-input{background:var(--bg);border:1px solid var(--ring);color:var(--fg);font-family:var(--font-sans);font-size:12px;font-weight:500;padding:2px 6px;border-radius:var(--r-xs);width:100%}body[data-theme=clean] .pad-clear{position:absolute;top:4px;right:4px;width:20px;height:20px;background:transparent;color:var(--fg-3);border:none;padding:0;font-family:var(--font-mono);font-size:13px;line-height:1;border-radius:var(--r-xs);display:none;align-items:center;justify-content:center;z-index:3}body[data-theme=clean] .pad.loaded .pad-clear,body[data-theme=clean] .pad.group-only .pad-clear{display:flex}body[data-theme=clean] .pad-clear:hover{background:#ef44441f;color:var(--danger)}body[data-theme=clean] .pad-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px;margin-top:4px;min-height:22px;flex-shrink:0;opacity:0;transition:opacity .12s ease}body[data-theme=clean] .pad:hover .pad-actions,body[data-theme=clean] .pad.selected .pad-actions{opacity:1}body[data-theme=clean] .pad-shuffle,body[data-theme=clean] .pad-history-btn,body[data-theme=clean] .pad-lock{width:22px;height:22px;padding:0;background:transparent;color:var(--fg-2);border:1px solid var(--bd);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center}body[data-theme=clean] .pad-lock{margin-right:auto;font-size:11px;font-variant-emoji:text}body[data-theme=clean] .pad-lock:hover{background:var(--s2);border-color:var(--bd-strong);color:var(--fg)}body[data-theme=clean] .pad-lock.is-locked{color:var(--fg);background:var(--s2);border-color:var(--bd-strong)}body[data-theme=clean] .pad.locked .pad-actions{opacity:1}body[data-theme=clean] .pad.locked{border-color:var(--bd-strong)}body[data-theme=clean] .pad-shuffle:hover,body[data-theme=clean] .pad-history-btn:not(:disabled):hover{background:var(--s2);border-color:var(--bd-strong);color:var(--fg)}body[data-theme=clean] .pad-history-btn:disabled{color:var(--fg-disabled);border-color:var(--bd-subtle);cursor:not-allowed}body[data-theme=clean] .pad-key{font-family:var(--font-mono);font-size:10px;font-weight:600;padding:1px 5px;background:var(--s3);color:var(--fg-2);border:1px solid var(--bd);border-radius:var(--r-xs)}body[data-theme=clean] .pad.selected .pad-key{background:var(--fg);color:var(--bg);border-color:var(--fg)}body[data-theme=clean] .inspector,body[data-theme=clean] .inspector-empty{height:100%;background:var(--bg);border:none;border-top:1px solid var(--bd-subtle)}body[data-theme=clean] .inspector{padding:16px 20px;display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:12px 24px;align-items:center}body[data-theme=clean] .inspector-empty{padding:24px;display:flex;align-items:center;justify-content:flex-start;gap:20px}body[data-theme=clean] .inspector-empty-mark{font-family:var(--font-sans);font-size:40px;font-weight:200;color:var(--fg-disabled);line-height:1}body[data-theme=clean] .inspector-empty-text{font-family:var(--font-sans);font-size:13px;color:var(--fg-3);max-width:480px}body[data-theme=clean] .inspector-id{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding-right:16px;border-right:1px solid var(--bd-subtle)}body[data-theme=clean] .inspector-pad-number{display:flex;flex-direction:column;align-items:flex-start;padding:8px 12px;background:var(--s1);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-md);min-width:64px}body[data-theme=clean] .inspector-bank{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);letter-spacing:.08em}body[data-theme=clean] .inspector-bank:before{content:"bnk ";color:var(--fg-disabled)}body[data-theme=clean] .inspector-padnum{font-family:var(--font-mono);font-weight:600;font-size:24px;color:var(--fg);margin-top:2px;letter-spacing:-.02em}body[data-theme=clean] .inspector-id-body{display:flex;flex-direction:column;gap:6px;min-width:0}body[data-theme=clean] .inspector-sample{font-family:var(--font-sans);font-weight:600;font-size:15px;color:var(--fg);letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-theme=clean] .inspector-group{align-self:flex-start;font-family:var(--font-mono);font-size:10px;font-weight:600;padding:2px 8px;border:1px solid;border-radius:var(--r-xs);text-transform:uppercase;letter-spacing:.06em}body[data-theme=clean] .inspector-group-count{opacity:.7;margin-left:4px;font-size:10px}body[data-theme=clean] .inspector-shuffle-group{display:inline-flex;align-items:stretch;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);overflow:hidden}body[data-theme=clean] .shuffle-btn{padding:6px 12px;font-family:var(--font-sans);font-size:12px;font-weight:500;background:var(--primary);color:var(--primary-fg);border:none;border-left:1px solid var(--bd-subtle);border-right:1px solid var(--bd-subtle);display:inline-flex;align-items:center;gap:6px;border-radius:0}body[data-theme=clean] .shuffle-btn:not(:disabled):hover{background:#e4e4e7}body[data-theme=clean] .shuffle-btn:disabled{background:var(--s2);color:var(--fg-disabled)}body[data-theme=clean] .shuffle-step-btn{padding:0 10px;background:transparent;color:var(--fg-2);border:none;border-radius:0;font-family:var(--font-mono);font-size:14px}body[data-theme=clean] .shuffle-step-btn:not(:disabled):hover{background:var(--s2);color:var(--fg)}body[data-theme=clean] .shuffle-step-btn:disabled{color:var(--fg-disabled);cursor:not-allowed}body[data-theme=clean] .shuffle-arrow{font-size:13px}body[data-theme=clean] .inspector-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:center}body[data-theme=clean] .inspector-color-row{display:flex;align-items:center;gap:14px;padding-top:10px;margin-top:8px;border-top:1px solid var(--bd-subtle);grid-column:1 / -1}body[data-theme=clean] .inspector-color-row .control-label{flex-shrink:0;min-width:60px}body[data-theme=clean] .inspector-color-row .color-presets{flex:1;min-width:0}body[data-theme=clean] .control{display:flex;flex-direction:column;gap:5px;min-width:0}body[data-theme=clean] .control-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}body[data-theme=clean] .control-body{display:flex;align-items:center}body[data-theme=clean] .seg{display:inline-flex;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);padding:2px;width:100%}body[data-theme=clean] .seg-btn{flex:1;background:transparent;border:none;color:var(--fg-2);padding:5px 8px;font-family:var(--font-sans);font-size:11px;font-weight:500;border-radius:var(--r-xs)}body[data-theme=clean] .seg-btn:hover{background:var(--s2);color:var(--fg)}body[data-theme=clean] .seg-btn.active{background:var(--s3);color:var(--fg)}body[data-theme=clean] .tune-pair{display:flex;gap:4px}body[data-theme=clean] .num{display:inline-flex;align-items:center;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-sm);padding:0}body[data-theme=clean] .num-btn{width:22px;height:24px;padding:0;font-size:13px;font-weight:600;background:transparent;color:var(--fg-2);border:none;border-radius:0}body[data-theme=clean] .num-btn:hover{background:var(--s2);color:var(--fg)}body[data-theme=clean] .num-input{width:38px;text-align:center;background:transparent;border:none;color:var(--fg);padding:2px 0;font-family:var(--font-mono);font-size:11px;font-weight:600;-moz-appearance:textfield}body[data-theme=clean] .num-input:focus{outline:none;color:var(--fg);background:var(--s3)}body[data-theme=clean] .num-input::-webkit-outer-spin-button,body[data-theme=clean] .num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}body[data-theme=clean] .num-suffix{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);padding:0 6px;letter-spacing:.04em}body[data-theme=clean] .slider{display:flex;align-items:center;gap:10px;width:100%}body[data-theme=clean] .slider input[type=range]{flex:1;min-width:0;height:4px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--s3);border-radius:999px;outline:none}body[data-theme=clean] .slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--fg);cursor:pointer;border:none}body[data-theme=clean] .slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--fg);cursor:pointer;border:none}body[data-theme=clean] .slider-value{font-family:var(--font-mono);font-size:10px;color:var(--fg-2);min-width:36px;text-align:right}body[data-theme=clean] .groups-panel{display:flex;flex-direction:column;min-height:0;flex:1;background:var(--bg);border-left:1px solid var(--bd-subtle)}body[data-theme=clean] .groups-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 10px;border-bottom:1px solid var(--bd-subtle);flex-shrink:0}body[data-theme=clean] .groups-title-wrap{display:flex;align-items:baseline;gap:8px}body[data-theme=clean] .groups-title{font-family:var(--font-sans);font-weight:600;font-size:14px;color:var(--fg);letter-spacing:-.01em}body[data-theme=clean] .groups-count{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);letter-spacing:.04em}body[data-theme=clean] .add-group-btn{padding:5px 10px;background:var(--s1);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:12px;font-weight:500}body[data-theme=clean] .add-group-btn:hover{background:var(--s2);border-color:var(--bd-strong)}body[data-theme=clean] .groups-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--fg-3);text-align:center;gap:8px}body[data-theme=clean] .groups-empty-mark{font-size:32px;color:var(--fg-disabled);line-height:1}body[data-theme=clean] .groups-empty p{font-size:13px;color:var(--fg-2);margin:0}body[data-theme=clean] .groups-empty small{font-size:11px;color:var(--fg-3);max-width:240px;line-height:1.4}body[data-theme=clean] .groups-list{display:flex;flex-direction:column;overflow-y:auto;min-height:0;padding:8px;gap:6px}body[data-theme=clean] .group-card{position:relative;display:flex;flex-direction:column;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-md);overflow:hidden;flex-shrink:0;transition:border-color .12s ease}body[data-theme=clean] .group-card:hover{border-color:var(--bd-strong)}body[data-theme=clean] .group-card.drop{border-color:var(--ring);box-shadow:0 0 0 3px #d4d4d81f}body[data-theme=clean] .group-card.drop:after{content:"drop to add to pool";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#f4f4f514;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--fg);text-transform:uppercase;pointer-events:none}body[data-theme=clean] .group-color-stripe{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ink);border:none;border-radius:0;padding:0;cursor:pointer;z-index:1}body[data-theme=clean] .group-color-popover{position:fixed;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-md);padding:6px;display:grid;grid-template-columns:repeat(6,22px);gap:4px;z-index:200;box-shadow:0 10px 32px #00000080}body[data-theme=clean] .group-color-swatch{width:22px;height:22px;border:1px solid var(--bd);border-radius:var(--r-xs);padding:0;cursor:pointer}body[data-theme=clean] .group-color-swatch:hover{border-color:var(--ring)}body[data-theme=clean] .group-color-swatch.active{outline:2px solid var(--ring);outline-offset:1px}body[data-theme=clean] .group-card-body{padding:10px 12px 10px 14px;display:flex;flex-direction:column;gap:8px}body[data-theme=clean] .group-card-head{display:flex;align-items:center;gap:6px}body[data-theme=clean] .group-index{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);letter-spacing:.04em}body[data-theme=clean] .group-name{font-family:var(--font-sans);font-weight:600;font-size:13px;color:var(--fg);letter-spacing:-.01em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text}body[data-theme=clean] .group-name-input{background:var(--bg);border:1px solid var(--ring);color:var(--fg);font:inherit;font-family:var(--font-sans);font-weight:600;font-size:13px;padding:2px 6px;border-radius:var(--r-xs);flex:1;min-width:0;width:100%;outline:none}body[data-theme=clean] .group-action-cluster{display:inline-flex;align-items:center;gap:2px;flex-shrink:0}body[data-theme=clean] .group-icon-btn{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;color:var(--fg-2);font-family:var(--font-mono);font-size:13px;font-weight:600;border-radius:var(--r-xs)}body[data-theme=clean] .group-icon-btn:hover:not(:disabled){background:var(--s2);border-color:var(--bd);color:var(--fg)}body[data-theme=clean] .group-icon-btn:disabled{color:var(--fg-disabled);cursor:not-allowed}body[data-theme=clean] .group-icon-btn.group-icon-danger:hover:not(:disabled){background:#ef44441f;border-color:#ef44444d;color:var(--danger)}body[data-theme=clean] .group-icon-btn.group-icon-m8{color:var(--fg-2)}body[data-theme=clean] .group-icon-btn.group-icon-m8:hover:not(:disabled){background:var(--s2);color:var(--fg)}body[data-theme=clean] .group-toggle-btn{font-size:0;background:var(--s2);color:var(--fg);border:1px solid var(--bd)}body[data-theme=clean] .group-toggle-btn:not(:disabled):hover{background:var(--s3);color:var(--fg)}body[data-theme=clean] .group-toggle-btn:before{content:"▾";display:inline-block;font-size:11px;transition:transform .15s ease}body[data-theme=clean] .group-toggle-btn.open{background:var(--fg);color:var(--bg);border-color:var(--fg)}body[data-theme=clean] .group-toggle-btn.open:before{transform:rotate(180deg)}body[data-theme=clean] .group-meter{display:flex;align-items:center;gap:12px}body[data-theme=clean] .group-meter-block{display:inline-flex;align-items:baseline;gap:5px}body[data-theme=clean] .group-meter-block b{font-family:var(--font-mono);font-weight:600;font-size:13px;color:var(--fg)}body[data-theme=clean] .group-meter-block i{font-family:var(--font-mono);font-style:normal;font-size:10px;color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase}body[data-theme=clean] .group-meter-sep{width:1px;height:12px;background:var(--bd-subtle)}body[data-theme=clean] .group-usage-grid{display:grid;grid-template-columns:repeat(auto-fill,12px);gap:3px;padding-top:2px}body[data-theme=clean] .usage-cell{width:12px;height:12px;border:1px solid var(--bd);border-radius:2px;background:var(--s2);cursor:grab}body[data-theme=clean] .usage-cell:hover{border-color:var(--ring)}body[data-theme=clean] .usage-cell.used{border-color:transparent}body[data-theme=clean] .group-pool-hint{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);padding:6px 0}body[data-theme=clean] .group-pool{list-style:none;margin:0;padding:0;border-top:1px solid var(--bd-subtle);display:flex;flex-direction:column}body[data-theme=clean] .pool-item{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 14px;border-bottom:1px solid var(--bd-subtle);font-family:var(--font-sans);font-size:12px;color:var(--fg-2)}body[data-theme=clean] .pool-item:last-child{border-bottom:none}body[data-theme=clean] .pool-item.used{color:var(--fg)}body[data-theme=clean] .pool-dot{width:6px;height:6px;border-radius:50%;background:var(--fg-3);flex-shrink:0}body[data-theme=clean] .pool-item.used .pool-dot{background:var(--ok)}body[data-theme=clean] .pool-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}body[data-theme=clean] .pool-remove{width:20px;height:20px;padding:0;background:transparent;color:var(--fg-3);border:none;font-size:13px;border-radius:var(--r-xs)}body[data-theme=clean] .pool-remove:hover{background:#ef44441f;color:var(--danger)}body[data-theme=clean] .footer{display:flex;align-items:center;gap:8px;padding:8px 20px;background:var(--bg);border-top:1px solid var(--bd-subtle);font-family:var(--font-mono);font-size:11px;color:var(--fg-3)}body[data-theme=clean] .status-dot{width:6px;height:6px;border-radius:50%;background:var(--fg-disabled);flex-shrink:0}body[data-theme=clean] .status-dot-success{background:var(--ok)}body[data-theme=clean] .status-dot-error{background:var(--danger)}body[data-theme=clean] .status-dot-info{background:var(--info)}body[data-theme=clean] .status-dot-idle{background:var(--fg-disabled)}body[data-theme=clean] .status-success{color:var(--ok)}body[data-theme=clean] .status-error{color:var(--danger)}body[data-theme=clean] .status-info{color:var(--fg-2)}body[data-theme=clean] .m8-modal-backdrop{background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}body[data-theme=clean] .m8-modal{background:var(--s1);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-lg);box-shadow:0 20px 60px #000000b3}body[data-theme=clean] .m8-modal-head{border-bottom:1px solid var(--bd-subtle)}body[data-theme=clean] .m8-modal-title{font-family:var(--font-sans);font-weight:600;letter-spacing:-.02em}body[data-theme=clean] .m8-modal-sub{font-family:var(--font-mono);color:var(--fg-3);letter-spacing:.04em}body[data-theme=clean] .m8-modal-close{background:transparent;color:var(--fg-2);border:1px solid var(--bd);border-radius:var(--r-sm)}body[data-theme=clean] .m8-modal-close:hover{background:var(--s2);color:var(--fg)}body[data-theme=clean] .m8-field-label{font-family:var(--font-mono);color:var(--fg-3);text-transform:uppercase;letter-spacing:.08em}body[data-theme=clean] .m8-field-input{background:var(--bg);border:1px solid var(--bd);color:var(--fg);font-family:var(--font-sans);border-radius:var(--r-sm)}body[data-theme=clean] .m8-field-input:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #d4d4d81f}body[data-theme=clean] .m8-field-preview-label{font-family:var(--font-mono);color:var(--fg-3)}body[data-theme=clean] .m8-field-preview code{background:var(--s2);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-xs);font-family:var(--font-mono)}body[data-theme=clean] .m8-fieldset{background:var(--bg);border:1px solid var(--bd);border-radius:var(--r-md)}body[data-theme=clean] .m8-fieldset legend{background:var(--s2);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-sm);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;font-size:10px}body[data-theme=clean] .m8-radio:hover{background:var(--s2);border-radius:var(--r-xs)}body[data-theme=clean] .m8-radio-label{font-family:var(--font-sans);font-weight:500;color:var(--fg)}body[data-theme=clean] .m8-radio-count{background:var(--s2);border-color:var(--bd);color:var(--fg);font-family:var(--font-mono);border-radius:var(--r-xs)}body[data-theme=clean] .m8-radio-hint{font-family:var(--font-mono);color:var(--fg-3);text-transform:uppercase;letter-spacing:.06em}body[data-theme=clean] .m8-summary{background:var(--s2);color:var(--fg);border-radius:var(--r-sm);padding:6px 10px;font-family:var(--font-mono);letter-spacing:.04em}body[data-theme=clean] .m8-warn{background:#f9731614;border-color:#f973164d;color:var(--warn);font-family:var(--font-sans);border-radius:var(--r-sm)}body[data-theme=clean] .m8-modal-foot{border-top:1px solid var(--bd-subtle)}body[data-theme=clean] .ui-tooltip{background:var(--s2);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-md);font-family:var(--font-sans);font-size:12px;letter-spacing:-.005em;box-shadow:0 10px 32px #00000080}body[data-theme=clean] .ui-tooltip b{color:var(--fg);font-weight:600;letter-spacing:-.01em}body[data-theme=clean] .ui-tooltip kbd{background:var(--bg);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:10px;padding:1px 5px}body[data-theme=clean] .ui-tooltip-list{list-style:none;padding-left:0;margin:6px 0}body[data-theme=clean] .ui-tooltip-list li{position:relative;padding-left:12px}body[data-theme=clean] .ui-tooltip-list li:before{content:"→";position:absolute;left:0;color:var(--fg-3)}.export-menu{position:relative;display:inline-flex}.export-trigger-chev{margin-left:6px;font-size:.85em;opacity:.8}.export-menu-panel{position:absolute;top:calc(100% + 6px);right:0;min-width:280px;z-index:50;display:flex;flex-direction:column;padding:0}.export-menu-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px;text-align:left;cursor:pointer;background:transparent;border:none;border-radius:0;font:inherit;letter-spacing:inherit}.export-menu-row:disabled{cursor:not-allowed;opacity:.45}.export-menu-row-title{font-weight:700;font-size:14px;letter-spacing:-.01em}.export-menu-row-sub{font-size:11px;opacity:.7}body[data-theme=brutalist] .export-trigger{position:relative}body[data-theme=brutalist] .export-trigger.active{background:var(--ink);color:var(--accent)}body[data-theme=brutalist] .export-menu-panel{background:var(--paper);border:var(--bold-rule) solid var(--ink);box-shadow:4px 4px 0 var(--accent);border-radius:0}body[data-theme=brutalist] .export-menu-panel:before{content:"§ EXPORT / SRC.X.0.0";display:block;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:9px;letter-spacing:.2em;font-weight:600;padding:4px 10px;text-transform:uppercase}body[data-theme=brutalist] .export-menu-row{color:var(--ink);border-bottom:var(--hairline) solid var(--rule-faint)}body[data-theme=brutalist] .export-menu-row:last-child{border-bottom:none}body[data-theme=brutalist] .export-menu-row:hover:not(:disabled){background:var(--ink);color:var(--paper)}body[data-theme=brutalist] .export-menu-row-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:-.02em}body[data-theme=brutalist] .export-menu-row-sub{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;opacity:.7}body[data-theme=paper] .export-trigger.active{transform:rotate(-1deg)}body[data-theme=paper] .export-menu-panel{background:var(--panel-raised, #fff);border:2.5px solid var(--ink);border-radius:11px 5px 13px 4px;box-shadow:var(--paper-shadow-lg);padding:4px;gap:2px}body[data-theme=paper] .export-menu-row{border-radius:7px 3px 8px 4px;color:var(--ink);border:1.5px solid transparent;font-family:var(--font-sans)}body[data-theme=paper] .export-menu-row:hover:not(:disabled){background:var(--paper-yellow);border-color:var(--ink)}body[data-theme=paper] .export-menu-row-title{font-family:var(--font-display);font-size:17px;font-weight:700}body[data-theme=paper] .export-menu-row-sub{font-family:var(--font-marker);font-size:13px;color:var(--ink-soft);letter-spacing:0}body[data-theme=clean] .export-trigger{display:inline-flex;align-items:center}body[data-theme=clean] .export-menu-panel{background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-md);padding:4px;box-shadow:0 10px 32px #00000080}body[data-theme=clean] .export-menu-row{border-radius:var(--r-sm);color:var(--fg);transition:background .1s ease}body[data-theme=clean] .export-menu-row:hover:not(:disabled){background:var(--s2)}body[data-theme=clean] .export-menu-row-title{font-family:var(--font-sans);font-weight:600;color:var(--fg)}body[data-theme=clean] .export-menu-row-sub{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);letter-spacing:.02em}.m8-batch-modal{width:min(520px,100%)}.m8-batch-list-head{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.m8-batch-bulk{display:inline-flex;gap:4px}.m8-batch-bulk button{padding:2px 8px;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.m8-batch-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:240px;overflow-y:auto;border:1px solid;border-radius:4px}.m8-batch-empty{padding:12px;text-align:center;font-size:12px;opacity:.7}.m8-batch-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:6px 8px;font-size:12px}.m8-batch-row.empty{opacity:.45}.m8-batch-row.over-cap{grid-template-columns:1fr auto auto}.m8-batch-row-pick{display:inline-flex;align-items:center;gap:8px;cursor:pointer;min-width:0}.m8-batch-row-swatch{width:12px;height:12px;border-radius:3px;border:1px solid;flex-shrink:0}.m8-batch-row-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.m8-batch-row-stats{display:inline-flex;align-items:center;gap:6px;font-family:IBM Plex Mono,monospace;font-size:11px;white-space:nowrap;opacity:.75}.m8-batch-row-warn{font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border:1px solid;border-radius:3px}body[data-theme=brutalist] .m8-batch-list{border-color:var(--ink)}body[data-theme=brutalist] .m8-batch-row{border-bottom:var(--hairline) dotted var(--rule-faint)}body[data-theme=brutalist] .m8-batch-row:last-child{border-bottom:none}body[data-theme=brutalist] .m8-batch-row:hover{background:#ff4f000f}body[data-theme=brutalist] .m8-batch-row-swatch{border-color:var(--ink)}body[data-theme=brutalist] .m8-batch-row-warn{color:var(--accent);border-color:var(--accent)}body[data-theme=paper] .m8-batch-list{border-color:var(--ink);background:var(--panel-sunken);border-radius:8px 4px 9px 3px}body[data-theme=paper] .m8-batch-row:hover{background:#ffffff8c}body[data-theme=paper] .m8-batch-row-swatch{border-color:var(--ink)}body[data-theme=paper] .m8-batch-row-name{font-family:var(--font-display);font-size:14px}body[data-theme=paper] .m8-batch-row-warn{background:var(--paper-yellow);color:var(--ink);border-color:var(--ink);border-radius:4px 2px}body[data-theme=clean] .m8-batch-list{border-color:var(--bd);background:var(--bg);border-radius:var(--r-md)}body[data-theme=clean] .m8-batch-row:hover{background:var(--s2)}body[data-theme=clean] .m8-batch-row-swatch{border-color:var(--bd)}body[data-theme=clean] .m8-batch-row-name{color:var(--fg)}body[data-theme=clean] .m8-batch-row-stats{color:var(--fg-3)}body[data-theme=clean] .m8-batch-row-warn{color:var(--warn);border-color:#f9731666;background:#f9731614}body[data-theme] .factory-kit-picker,body[data-theme] .audio-output-route{display:inline-flex;align-items:stretch;flex:0 0 auto;white-space:nowrap}body[data-theme] .factory-kit-picker>span,body[data-theme] .audio-output-route>span{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:0 7px}body[data-theme] .factory-kit-picker select{min-width:126px;cursor:pointer}body[data-theme=brutalist] .factory-kit-picker,body[data-theme=brutalist] .audio-output-route{border-left:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .factory-kit-picker>span,body[data-theme=brutalist] .audio-output-route>span{color:var(--paper);background:var(--ink)}body[data-theme=brutalist] .factory-kit-picker select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:var(--paper);color:var(--ink);font:700 10px var(--font-mono);text-transform:uppercase;padding:0 24px 0 8px}body[data-theme=brutalist] .audio-output-route>button{border-top:0;border-right:0;border-bottom:0}body[data-theme=brutalist] .audio-output-route>button.is-active{color:var(--paper);background:var(--accent)}body[data-theme=paper] .factory-kit-picker,body[data-theme=paper] .audio-output-route{border:2px solid var(--ink);border-radius:7px 3px 6px 4px;overflow:hidden;background:var(--panel)}body[data-theme=paper] .factory-kit-picker>span,body[data-theme=paper] .audio-output-route>span{color:var(--ink);background:var(--paper-yellow);border-right:1px dashed var(--ink)}body[data-theme=paper] .factory-kit-picker select{border:0;background:var(--panel);color:var(--ink);font:700 12px var(--font-body);padding:4px 8px}body[data-theme=paper] .audio-output-route>button{border:0;border-radius:0}body[data-theme=paper] .audio-output-route>button+button{border-left:1px dashed var(--ink)}body[data-theme=paper] .audio-output-route>button.is-active{background:var(--paper-red);color:#fff}body[data-theme=clean] .factory-kit-picker,body[data-theme=clean] .audio-output-route{border:1px solid var(--bd);border-radius:var(--r-sm);overflow:hidden;background:var(--s1)}body[data-theme=clean] .factory-kit-picker>span,body[data-theme=clean] .audio-output-route>span{color:var(--fg-3);border-right:1px solid var(--bd)}body[data-theme=clean] .factory-kit-picker select{border:0;background:var(--s1);color:var(--fg);font:500 11px var(--font-sans);padding:5px 8px}body[data-theme=clean] .factory-kit-picker select:focus-visible{outline:1px solid var(--ring);outline-offset:-1px}body[data-theme=clean] .audio-output-route>button{border:0;border-radius:0;padding-inline:8px}body[data-theme=clean] .audio-output-route>button+button{border-left:1px solid var(--bd)}body[data-theme=clean] .audio-output-route>button.is-active{background:var(--fg);color:var(--bg)}body[data-theme] .rack-row-sequencer,body[data-theme] .step-sequencer{width:100%;min-width:0}body[data-theme] .step-sequencer{display:flex;flex-direction:column;gap:5px}body[data-theme] .sequencer-transport,body[data-theme] .sequencer-track{display:flex;align-items:center;gap:5px;min-width:0}body[data-theme] .sequencer-title{font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.12em;white-space:nowrap}body[data-theme] .sequencer-bpm{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.1em}body[data-theme] .sequencer-bpm input{width:52px;height:25px;padding:2px 4px;text-align:center;font:700 11px var(--font-mono)}body[data-theme] .sequencer-track-name{display:flex;align-items:center;gap:7px;width:132px;min-width:132px;overflow:hidden;font-family:var(--font-mono);font-size:9px}body[data-theme] .sequencer-track-name b{flex:0 0 auto;font-size:9px}body[data-theme] .sequencer-track-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-theme] .sequencer-steps{display:grid;grid-template-columns:repeat(16,minmax(20px,1fr));gap:3px;flex:1 1 auto;min-width:390px}body[data-theme] .sequencer-steps>button{position:relative;height:25px;min-width:0;padding:0;border-radius:2px}body[data-theme] .sequencer-steps>button:not(:first-child).is-beat{margin-left:4px}body[data-theme] .sequencer-steps>button span{font-family:var(--font-mono);font-size:7px;line-height:1;opacity:.65}body[data-theme] .sequencer-clear-track,body[data-theme] .sequencer-transport>button{height:25px;padding:0 8px;white-space:nowrap;font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.06em}body[data-theme=clean] .step-sequencer{padding-top:7px;border-top:1px solid var(--bd-subtle)}body[data-theme=clean] .sequencer-title,body[data-theme=clean] .sequencer-track-name{color:var(--fg-2)}body[data-theme=clean] .sequencer-bpm input{color:var(--fg);background:var(--s1);border:1px solid var(--bd);border-radius:var(--r-xs)}body[data-theme=clean] .sequencer-steps>button{color:var(--fg-3);background:var(--s1);border:1px solid var(--bd)}body[data-theme=clean] .sequencer-steps>button.is-on{color:var(--bg);background:var(--fg);border-color:var(--fg)}body[data-theme=clean] .sequencer-steps>button.is-current{box-shadow:inset 0 -3px #22c55e}body[data-theme=clean] .sequencer-play[aria-pressed=true]{color:#22c55e;border-color:#22c55e}body[data-theme=brutalist] .step-sequencer{padding-top:6px;border-top:var(--hairline) solid var(--ink)}body[data-theme=brutalist] .sequencer-title{color:var(--paper);background:var(--ink);padding:3px 7px}body[data-theme=brutalist] .sequencer-bpm input{color:var(--ink);background:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0}body[data-theme=brutalist] .sequencer-steps>button{color:var(--ink);background:var(--paper);border:var(--hairline) solid var(--ink);border-radius:0}body[data-theme=brutalist] .sequencer-steps>button.is-on{color:var(--paper);background:var(--accent)}body[data-theme=brutalist] .sequencer-steps>button.is-current{outline:2px solid var(--ink);outline-offset:1px}body[data-theme=brutalist] .sequencer-play[aria-pressed=true]{color:var(--paper);background:var(--accent)}body[data-theme=paper] .step-sequencer{padding:7px 8px;border:2px dashed var(--ink);border-radius:9px 3px 8px 4px;background:#ffffff59}body[data-theme=paper] .sequencer-title{font-family:var(--font-display);font-size:12px;color:var(--ink)}body[data-theme=paper] .sequencer-bpm input{color:var(--ink);background:var(--paper-cream);border:2px solid var(--ink);border-radius:5px 2px}body[data-theme=paper] .sequencer-steps>button{color:var(--ink);background:var(--paper-cream);border:2px solid var(--ink);border-radius:4px 2px;box-shadow:1px 1px 0 var(--ink);transform:none}body[data-theme=paper] .sequencer-steps>button.is-on{color:#fff;background:var(--paper-red)}body[data-theme=paper] .sequencer-steps>button.is-current{outline:3px solid var(--paper-yellow);outline-offset:-4px}body[data-theme=paper] .sequencer-play[aria-pressed=true]{color:#fff;background:var(--paper-red)}@media (max-width: 720px){html,body,#root{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}body[data-theme] .app{display:block;height:auto;min-height:100vh;overflow:visible}body[data-theme] .app:before,body[data-theme] .app:after{display:none}body[data-theme] .header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;padding:12px;transform:none}body[data-theme] .brand{grid-column:1;grid-row:1}body[data-theme] .brand-mark{font-size:20px;line-height:1;letter-spacing:-.025em}body[data-theme] .brand-mark:before,body[data-theme] .brand-sub:after{content:none}body[data-theme] .kit-name-wrap{grid-column:2;grid-row:1;min-width:0}body[data-theme] .workspace-switcher{grid-column:1;grid-row:2;min-width:0}body[data-theme] .workspace-trigger{width:100%;max-width:none}body[data-theme] .theme-switch{grid-column:2;grid-row:2;justify-self:end}body[data-theme] .theme-switch-btn{padding-inline:8px}body[data-theme] .controls{display:flex;grid-column:1 / -1;grid-row:3;width:100%;margin:0;overflow-x:auto;padding-bottom:2px}body[data-theme] .controls>button,body[data-theme] .controls .factory-kit-picker,body[data-theme] .controls .audio-output-route,body[data-theme] .controls .export-trigger{flex:0 0 auto;white-space:nowrap}body[data-theme] .main{display:flex;flex-direction:column;gap:0;min-height:0;overflow:visible;padding:0;width:100%;max-width:100vw}body[data-theme] .work-area{order:1;min-height:0;border-right:0;width:100%;max-width:100vw;overflow:hidden}body[data-theme] .dock{order:2;min-height:180px;border-right:0;overflow-x:auto}body[data-theme] .side{order:3;min-height:320px;overflow:visible;border-right:0}body[data-theme] .rack{padding:10px 12px;transform:none;width:100%;max-width:100vw}body[data-theme] .rack:before,body[data-theme] .rack:after{display:none}body[data-theme] .rack-row-top,body[data-theme] .rack-row-paint,body[data-theme] .rack-row-sequencer{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:5px;width:100%;max-width:100%}body[data-theme] .step-sequencer{min-width:720px}body[data-theme] .rack-row>*{flex-shrink:0}body[data-theme] .pad-stage{display:block;min-height:0;padding:12px;container-type:inline-size;width:100%;max-width:100vw}body[data-theme] .pad-grid{width:100%;max-width:100%;height:auto;aspect-ratio:1;gap:5px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr))}body[data-theme] .pad{padding:7px}body[data-theme] .pad-name{font-size:10px}body[data-theme] .groups-panel{min-height:320px;height:auto}body[data-theme] .footer{position:sticky;bottom:0;z-index:40}body[data-theme=paper] .main{padding:0}body[data-theme=paper] .work-area{gap:0}}
