:root{color-scheme:dark;--bg:#13141c;--panel:#20212d;--line:#3a3b4b;--text:#f5f1ff;--muted:#b5b3c7;--accent:#d9c0ff;--mint:#b6f0cb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px 'DM Sans',system-ui,sans-serif}main{max-width:1200px;margin:auto;padding:30px}button,input,select{font:inherit}button,select,.filebutton{border:1px solid var(--line);background:#2c2d3c;color:var(--text);border-radius:9px;padding:10px 14px;cursor:pointer}button:hover,.filebutton:hover{background:#414253}button:focus-visible,input:focus-visible,select:focus-visible,.filebutton:focus-within{outline:3px solid var(--mint);outline-offset:3px}button:disabled{opacity:.55;cursor:wait}input{background:#181923;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:8px}header{display:flex;align-items:center;gap:20px;margin-bottom:28px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:2px}.moon{font-size:45px;color:var(--accent)}.subtitle{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:5px}.project{margin-left:auto;display:grid;gap:4px}.project label{font-size:11px;color:var(--muted)}.project input{background:transparent;width:220px}.transport{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:24px}.transport>button{font-size:25px;font-weight:700;padding:19px 36px;min-width:165px}.play{background:var(--mint);color:#14261b;border-color:var(--mint)}.play:hover{background:#d0ffdf}.stop{background:#333444;color:white}.tempo{display:flex;gap:9px;align-items:center;margin-left:10px}.tempo label,.tempo span,.mode{color:var(--muted);font-size:13px}.tempo input{width:72px}.position{margin-left:auto;color:var(--mint);font-variant-numeric:tabular-nums;letter-spacing:2px}.songbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.songbar label{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:22px;margin-bottom:18px}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}h1,h2{font-size:19px;margin:0;font-weight:600}.patterns{display:flex;gap:6px}.patterns button{padding:7px 15px}.patterns .selected{background:var(--accent);color:#20182c}.gridscroll{overflow-x:auto;padding-bottom:6px}.seqrow{display:grid;grid-template-columns:118px repeat(16,minmax(32px,1fr));gap:6px;align-items:center;min-width:800px;margin:9px 0}.tracklabel{display:flex;align-items:center;gap:8px}.tracklabel button{padding:5px 7px;font-size:12px}.step{height:35px;padding:0;border-radius:6px;background:#303140;border:1px solid #444555}.step.group{background:#3a3b4d}.step.on{background:var(--track);border-color:var(--track);color:#14151b}.step.now{box-shadow:0 0 0 3px white inset}.step.numeral{height:20px;background:none;border:none;color:var(--muted);font-size:10px;cursor:default}.noteText{font-size:11px;font-weight:700}.gridfoot{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;margin-top:12px}.gridfoot button{font-size:12px}#arrangement{display:flex;gap:8px;overflow:auto;padding:3px 3px 9px}.bar{min-width:75px;background:#292a39;border:1px solid var(--line);padding:8px;border-radius:8px;display:grid;gap:6px}.bar span{font-size:10px;color:var(--muted)}.bar select{padding:6px}.bar button{padding:2px;font-size:11px}.bar.current{outline:2px solid var(--mint)}.keys{display:flex;gap:7px}.key{flex:1;min-height:100px;background:#eeebf5;color:#282035;border-color:#eeebf5;display:flex;flex-direction:column;justify-content:end;gap:9px;touch-action:none;user-select:none}.key small{color:#5c536b}.key.pressed{background:var(--accent)}.effects{display:flex;gap:30px;flex-wrap:wrap;margin-top:20px}.effects label{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.effects input{padding:0;max-width:160px;accent-color:var(--accent)}footer{display:flex;justify-content:space-between;align-items:center;gap:15px;color:var(--muted);font-size:12px}.exports{display:flex;gap:8px;flex-wrap:wrap}.exports button,.filebutton{font-size:12px}.filebutton input{display:none}@media(max-width:700px){main{padding:16px}header{gap:10px;flex-wrap:wrap;margin-bottom:20px}.brand{font-size:13px}.moon{font-size:33px}.project{order:3;margin:0;width:100%}.project input{width:100%}header>button{margin-left:auto;font-size:12px}.transport{gap:10px}.transport>button{flex:1;min-width:120px;font-size:25px;padding:20px 12px}.tempo{margin-left:0}.mode select{padding:8px}.position{font-size:12px}.panel{padding:15px}.songbar{font-size:12px}.songbar select{max-width:175px}.sectionhead{flex-wrap:wrap}.key{padding:8px 0;min-height:105px}.key small{font-size:10px}.effects{gap:12px}.effects label{width:100%;justify-content:space-between}.effects input{max-width:none;width:65%}footer{align-items:start;flex-direction:column}.gridfoot{gap:8px}.instrument .sectionhead label{font-size:12px}}

.key:hover{background:#d9c0ff;color:#282035}.key:hover small{color:#5c536b}
