:root{--ink:#101014;--cream:#fff7ec;--pink:#ff2694;--cyan:#19cbc7;--yellow:#ffe15b}*{box-sizing:border-box}html,body{margin:0;width:100%;overflow:hidden}body{font-family:Arial,sans-serif;background:transparent;color:var(--ink);padding:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,.dial:focus-visible,summary:focus-visible,input:focus-visible,.pedal-scroll:focus-visible{outline:3px solid var(--pink);outline-offset:3px}.board{height:calc(100vh - 26px);min-height:440px;max-height:570px;width:100%;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;padding:20px;background:var(--cream);border:1px solid var(--ink);border-radius:18px;overflow:hidden}.panel{min-width:0;min-height:0}.deck{display:flex;flex-direction:column;gap:15px}.deck-head{display:flex;align-items:center;justify-content:space-between;height:58px;flex:none}.wordmark{display:flex;align-items:center;gap:18px}.wordmark img{width:108px;height:58px;object-fit:contain}.wordmark>span{font:700 11px Arial;letter-spacing:.15em;border-left:1px solid #10101430;padding-left:18px}.good-vibes{font:700 8px/1.5 Arial;letter-spacing:.1em;color:#72666c}.good-vibes b{font-size:22px;float:left;margin-right:8px}.reset{border:1px solid #10101430;border-radius:50%;background:transparent;width:38px;height:38px;font-size:23px}.screen{position:relative;flex:1;min-height:140px;border-radius:12px;background:var(--ink);color:var(--cream);padding:16px;display:flex;flex-direction:column;overflow:hidden}.screen-top{display:flex;justify-content:space-between;font:11px/1.4 'Courier New',monospace;letter-spacing:.07em}.screen-top>span:last-child{color:var(--cyan)}canvas{width:100%;height:45px;min-height:30px;flex:1;display:block;margin:8px 0}.sample-line{display:flex;justify-content:space-between;gap:10px;align-items:center}.sample-line h1{font-size:23px;line-height:1.1;letter-spacing:-.04em;color:var(--pink);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sample-line>span{font:700 9px Arial;color:var(--cyan)}.screen p{font:10px/1.5 Arial;color:#bdb5bc;margin:5px 0}.seek-label{font-size:0;display:block}.seek-label input{width:100%;height:12px;margin:0;accent-color:var(--pink);cursor:pointer}.transport{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;flex:none}.transport button{min-height:60px;border:1px solid var(--ink);border-radius:12px;background:var(--cream);color:var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}.transport b{font-size:21px;line-height:1}.transport span{font:700 9px Arial;letter-spacing:.035em}.transport .pink{background:var(--pink)}.transport .yellow{background:var(--yellow)}.transport .cyan{background:var(--cyan)}.transport .dark{background:var(--ink);color:var(--cream)}.transport button[aria-pressed=true]{box-shadow:inset 0 0 0 3px var(--pink)}.transport button:hover{filter:brightness(.95)}.main-knobs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;flex:none}.knob-control{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.knob-label{font:700 8px Arial;letter-spacing:.035em;white-space:nowrap}.dial{width:44px;height:44px;background:var(--dial-color,var(--cyan));border:2px solid var(--ink);border-radius:50%;position:relative;touch-action:none;cursor:ns-resize;user-select:none;box-shadow:0 3px 0 #101014}.needle{position:absolute;inset:0;transform:rotate(var(--angle));pointer-events:none}.needle:before{content:'';position:absolute;top:4px;left:calc(50% - 1.5px);width:3px;height:11px;border-radius:3px;background:var(--ink)}output{font:700 11px/1.3 'Courier New',monospace;white-space:nowrap}.upload{position:relative;display:flex;flex-direction:column;gap:4px;justify-content:center;border:1px dashed #10101455;border-radius:10px;padding:12px 14px;min-height:62px;cursor:pointer;background:#fffdf8}.upload strong{font:700 9px Arial;letter-spacing:.07em}.upload span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload small{font:9px/1.3 Arial;color:#72666c}.upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload.dragging{background:#ffd6e9;border-color:var(--pink)}.deck-foot{display:none}.trim-drawer{position:relative;font:10px Arial;flex:none}.trim-drawer summary{cursor:pointer;list-style:none;font:700 9px Arial;letter-spacing:.05em;padding:7px 0;display:flex;justify-content:space-between}.trim-drawer summary:after{content:'+'}.trim-drawer[open] summary:after{content:'−'}.trim{position:absolute;bottom:100%;left:0;right:0;z-index:6;background:var(--cream);border:1px solid var(--ink);border-radius:10px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:8px;box-shadow:0 8px 30px #10101425}.trim>span{display:none}.trim label{white-space:nowrap}.trim input{width:60px;padding:8px 4px;border:1px solid #10101455;border-radius:4px;background:white;font-size:12px}.trim button{padding:10px;border:1px solid var(--ink);border-radius:6px;background:var(--yellow);font:700 9px Arial}
.pedalboard{display:flex;flex-direction:column;border-left:1px solid #10101425;padding-left:20px;gap:12px}.pedal-head{display:flex;align-items:center;gap:8px;min-height:58px;flex:none}.pedal-head>span{color:var(--pink);font-size:30px}.pedal-head h2{font:700 14px/1.1 Arial;letter-spacing:-.02em;margin:0;flex:1}.pedal-head button{border:1px solid #10101455;background:transparent;border-radius:99px;padding:9px 10px;white-space:nowrap;font:700 8px Arial}.pedal-head button b{background:var(--yellow);border-radius:99px;padding:4px 6px;margin-left:5px}.pedal-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pink) transparent;padding-right:8px}.pedal-card{display:grid;grid-template-columns:18px 28px minmax(0,1fr) 43px;align-items:center;gap:6px 8px;padding:11px 0;border-bottom:1px solid #10101420;position:relative}.pedal-number{font:9px 'Courier New',monospace;color:#8a767f}.pedal-icon{grid-column:2;grid-row:1;background:var(--dial-color);border:1px solid var(--ink);border-radius:50%;width:28px;height:28px;text-align:center;line-height:26px;font-size:19px}.pedal-card>div:not(.pedal-control){grid-column:3;grid-row:1;min-width:0}.pedal-card h3{font:700 10px/1.3 Arial;margin:0 0 3px}.pedal-card p{font:9px/1.4 Arial;color:#756b70;margin:0}.pedal-toggle{grid-column:4;grid-row:1;min-height:34px;border:1px solid #10101450;border-radius:99px;font:700 9px Arial;background:transparent;color:#6a5b64}.pedal-toggle[aria-pressed=true]{background:var(--yellow);color:var(--ink);border-color:var(--ink)}.pedal-control{grid-column:3/5}.pedal-control .knob-control{flex-direction:row;justify-content:flex-end;gap:7px}.pedal-control .knob-label{font-size:8px;color:#947482;margin-right:auto}.pedal-control .dial{width:26px;height:26px;border-width:1px;box-shadow:none}.pedal-control .needle:before{top:3px;width:2px;left:calc(50% - 1px);height:7px}.pedal-control output{min-width:43px;text-align:right;font-size:9px;color:#9d1460}.meter-row{display:flex;align-items:center;gap:10px;flex:none;font:700 8px Arial;letter-spacing:.06em}.meter-row strong{color:#9d1460}meter{flex:1;min-width:0;height:8px;appearance:none}meter::-webkit-meter-bar{background:#101014;border:0;height:8px;border-radius:9px}meter::-webkit-meter-optimum-value{background:var(--cyan)}.export{display:flex;justify-content:space-between;align-items:center;flex:none;border:1px solid var(--ink);border-radius:99px;padding:14px 18px;background:var(--pink);color:var(--ink);font:700 10px Arial;letter-spacing:.04em}.export span{font-size:9px}.export:disabled{opacity:.5;cursor:wait}.export-note{font:9px/1.4 Arial;color:#72666c;margin:0;flex:none}#toast{margin:0;height:26px;padding:6px 10px;font:10px/1.4 Arial;color:#786b71;text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
@media(max-width:699px){.board{height:auto;max-height:none;min-height:0;grid-template-columns:1fr;padding:16px;gap:18px;border-radius:14px}.deck{gap:14px}.deck-head{height:54px}.wordmark img{width:98px;height:54px}.screen{flex:none;height:170px}.transport button{min-height:62px}.transport span{font-size:8px}.main-knobs{gap:4px}.dial{width:44px;height:44px}.knob-label{font-size:7px}.pedalboard{padding:18px 0 0;border-left:0;border-top:1px solid #10101425;gap:12px}.pedal-head{min-height:38px}.pedal-head h2{font-size:14px}.pedal-scroll{flex:none;height:280px}.pedal-card{padding:12px 0}.pedal-toggle{min-height:44px}.pedal-card h3{font-size:11px}.pedal-card p{font-size:10px}.pedal-control .dial{width:32px;height:32px}.pedal-control output{font-size:10px}.export{min-height:48px}.good-vibes{display:none}.trim{flex-wrap:wrap;gap:12px}.trim input{padding:10px 4px}#toast{font-size:9px}}
@media(min-width:700px) and (max-height:550px){.board{min-height:400px;padding:14px;gap:14px}.deck{gap:9px}.deck-head,.pedal-head{height:42px;min-height:42px}.wordmark img{height:42px}.screen{min-height:110px}.transport button{min-height:48px}.upload{min-height:50px;padding:8px 12px}.dial{width:35px;height:35px}}
.seek-label input{appearance:none;background:transparent;height:18px}.seek-label input::-webkit-slider-runnable-track{height:3px;background:#65525d;border-radius:9px}.seek-label input::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;background:var(--pink);margin-top:-5px}.seek-label input::-moz-range-track{height:3px;background:#65525d;border-radius:9px}.seek-label input::-moz-range-thumb{border:0;width:13px;height:13px;border-radius:50%;background:var(--pink)}
.export-note a{color:#9d1460;font-weight:700;text-underline-offset:3px;display:inline-block;padding:2px 0}
/* Illustrated Galactic finish, with live controls rather than artwork hotspots. */
:root{--cream:#faf0d6;--pink:#ff168d;--cyan:#04c9c3;--yellow:#ffd400}
.board{position:relative;border:3px solid #101014;border-radius:24px 19px 28px 21px;background-color:var(--cream);background-image:radial-gradient(#714f291d .6px,transparent .8px),radial-gradient(#ff168d16 .7px,transparent 1px);background-size:7px 9px,19px 17px;padding-bottom:24px;gap:20px}
.board:after{content:'';position:absolute;bottom:0;left:0;right:0;height:15px;background:url('galactic-reference.png') center bottom/100% auto no-repeat;border-radius:0 0 22px 18px;pointer-events:none}
.deck-head{height:64px}.wordmark img{width:140px;height:64px}.wordmark>span{font-size:16px;border:0;padding:0;transform:rotate(-6deg)}.good-vibes{background:var(--yellow);border:2px solid var(--ink);border-radius:14px 8px 15px 7px;padding:6px;transform:rotate(-5deg);color:var(--ink);font-size:8px}.good-vibes b{font-size:25px}.reset{border:2px solid var(--ink);background:var(--pink);box-shadow:2px 3px 0 var(--ink);font-weight:900}
.screen{border:3px solid var(--ink);outline:3px solid var(--pink);outline-offset:0;border-radius:23px 17px 21px 15px;box-shadow:3px 4px 0 var(--pink)}.sample-line h1{font-family:'Trebuchet MS',Arial,sans-serif;font-weight:900;font-size:27px;letter-spacing:-.04em;text-shadow:1px 1px 0 #ff72b6}.screen-top{font-weight:700;font-style:italic}.screen p{color:#faf0d6c0}
.transport{gap:12px;margin:2px 0 5px}.transport button{position:relative;border:3px solid var(--ink);border-radius:18px 17px 22px 13px;min-height:62px;box-shadow:0 4px 0 var(--ink);background-image:linear-gradient(135deg,#ffffff48,transparent 48%)}.transport button:before{content:'';position:absolute;top:5px;left:9px;width:17px;height:3px;background:#fff9;border-radius:8px;transform:rotate(-14deg);pointer-events:none}.transport button:after{content:'';position:absolute;bottom:-8px;left:20%;height:10px;width:9px;border:2px solid var(--ink);border-top:0;border-radius:0 0 7px 7px;background:inherit;pointer-events:none}.transport b{font-size:23px}.transport span{font:900 10px 'Trebuchet MS',Arial,sans-serif;transform:rotate(-2deg)}.transport button[aria-pressed=true]{outline:2px solid var(--pink);outline-offset:2px;box-shadow:0 4px 0 var(--ink),inset 0 0 0 3px #ffffff70}.transport button:active{transform:translateY(2px);box-shadow:0 2px 0 var(--ink)}
.knob-label{font-family:'Trebuchet MS',Arial,sans-serif;font-weight:900;font-size:9px}.dial{border:3px solid var(--ink);width:47px;height:47px;background:radial-gradient(ellipse at 32% 20%,#fff9 0,transparent 36%),var(--dial-color);box-shadow:0 4px 0 var(--ink),inset -3px -4px 0 #10101422}.dial:after{content:'';position:absolute;top:6px;left:7px;width:12px;height:4px;background:#ffffffaa;border-radius:50%;transform:rotate(-40deg);pointer-events:none}.needle:before{background:white;width:3px;left:calc(50% - 1.5px);height:12px}.main-knobs .knob-control:nth-child(3) .needle:before{background:var(--ink)}.main-knobs output{font:900 12px 'Trebuchet MS',Arial,sans-serif}
.upload{border:2px solid var(--ink);outline:2px solid var(--pink);border-radius:19px 15px 20px 13px;background:var(--ink);color:var(--cream);min-height:58px;padding:9px 14px}.upload strong{color:var(--pink)}.upload small{color:#faf0d6a0}.upload.dragging{background:#482233;color:white}.trim-drawer summary{font-family:'Trebuchet MS',Arial,sans-serif;font-weight:900}.trim-drawer summary:after{background:var(--yellow);border:1px solid var(--ink);border-radius:50%;width:15px;height:15px;line-height:13px;text-align:center}
.pedalboard{border:2px solid var(--ink);border-radius:18px 24px 17px 22px;padding:8px 12px 10px;gap:10px;box-shadow:3px 3px 0 var(--cyan);background:#faf0d6aa}.pedal-head{height:52px;min-height:52px}.pedal-head>span{font-size:34px;text-shadow:1px 1px 0 var(--ink)}.pedal-head h2{font:900 17px/1.05 'Trebuchet MS',Arial,sans-serif;color:var(--pink);text-shadow:1px 1px 0 var(--ink);letter-spacing:-.035em}.pedal-head button{border:0;padding:4px;font-size:8px}.pedal-head button b{border:1px solid var(--ink)}.pedal-scroll{padding:2px 7px 3px 2px}.pedal-card{border:1.5px solid var(--ink);border-radius:14px 10px 13px 9px;padding:9px 8px;margin-bottom:6px;box-shadow:1px 1px 0 var(--cyan);grid-template-columns:15px 29px minmax(0,1fr) 42px;gap:5px 7px}.pedal-number{color:var(--ink);font-weight:700}.pedal-icon{border:2px solid var(--ink);font-weight:900;background-image:radial-gradient(circle at 28% 18%,#fff8,transparent 50%)}.pedal-card h3{font:900 11px/1.1 'Trebuchet MS',Arial,sans-serif}.pedal-card p{color:#29242a;font-size:9px}.pedal-toggle{border:2px solid var(--ink);min-height:28px;background:var(--ink);color:var(--cream);font-weight:900}.pedal-toggle[aria-pressed=true]{background:var(--yellow)}.pedal-control .knob-label{color:#e30a7b;font-size:8px}.pedal-control .dial{border:1.5px solid var(--ink);width:24px;height:24px}.pedal-control .dial:after{width:6px;height:2px;top:4px;left:4px}.pedal-control .needle:before{height:6px;background:var(--ink)}.pedal-control output{color:#e30a7b;font-weight:900}.meter-row{font-weight:900}.export{border:2px solid var(--ink);box-shadow:0 3px 0 var(--ink);background-image:linear-gradient(135deg,#fff6,transparent 55%);font-weight:900;min-height:43px}.export-note{font-size:8px}.export-note a{padding:5px 0}
@media(max-width:699px){.board{padding:14px 14px 24px;gap:20px;border-radius:20px}.deck{gap:16px}.deck-head{height:66px}.wordmark img{width:140px;height:66px}.transport{gap:7px}.transport button{min-height:66px;border-width:2px}.transport span{font-size:8px}.dial{width:46px;height:46px}.knob-label{font-size:7px}.main-knobs output{font-size:11px}.pedalboard{padding:10px;border:2px solid var(--ink)}.pedal-head h2{font-size:17px}.pedal-head{height:45px;min-height:45px}.pedal-card{grid-template-columns:15px 28px minmax(0,1fr) 44px;padding:10px 7px}.pedal-toggle{min-height:44px}.pedal-control .dial{width:36px;height:36px}.pedal-control .needle:before{height:9px;top:4px}.pedal-card h3{font-size:11px}.pedal-card p{font-size:10px}.export{min-height:48px}.export-note{font-size:9px}}
.deck{gap:12px}.screen{min-height:155px}.screen p{font-size:9px;margin:3px 0}.screen-top{font-size:10px}.upload{flex:none;min-height:64px}.upload small{font-size:8px}.seek-label{flex:none;height:18px}.screen canvas{min-height:22px}
@media(min-width:700px) and (max-height:550px){.board{min-height:0;padding:12px 14px 18px;gap:14px}.deck{gap:6px}.deck-head,.pedal-head{height:40px;min-height:40px}.wordmark img{height:40px;width:100px}.good-vibes{font-size:6px;padding:3px}.good-vibes b{font-size:18px}.screen{min-height:90px;padding:10px 12px}.screen p{display:none}.screen-top{font-size:9px}.sample-line h1{font-size:21px}.sample-line>span{font-size:8px}.screen canvas{height:24px;min-height:20px;margin:5px 0}.transport{gap:9px;margin:2px 0 5px}.transport button{min-height:46px;border-width:2px}.transport b{font-size:18px}.transport span{font-size:8px}.main-knobs .dial{width:34px;height:34px;border-width:2px}.main-knobs .knob-control{gap:4px}.main-knobs output{font-size:10px}.knob-label{font-size:7px}.trim-drawer summary{padding:3px 0;font-size:8px}.upload{min-height:44px;padding:7px 12px;gap:2px}.upload small{display:none}.upload strong{font-size:8px}.upload span{font-size:10px}.pedalboard{padding:5px 10px 8px;gap:8px}.pedal-head h2{font-size:14px}.pedal-card{padding:7px 6px}.pedal-head button{font-size:7px}.export-note{font-size:8px}.export{padding:10px 14px;min-height:38px}.export-note a{padding:0}}
@media(max-width:699px){.deck{gap:16px}.screen{height:180px;min-height:180px}.screen p{font-size:10px}.upload{min-height:68px}.screen-top{font-size:11px}.board{max-height:none;height:auto}}
@media(max-width:699px){.main-knobs .knob-label{font-size:8px;letter-spacing:0}}
@media(max-width:699px){.reset{width:44px;height:44px}.pedal-head button{min-height:44px}.pedal-control .dial{width:44px;height:44px}.trim-drawer summary{min-height:44px;align-items:center}.trim-drawer summary:after{width:24px;height:24px;line-height:22px}.export-note a{min-height:44px;display:flex;align-items:center}}
.board:after{height:22px;background-image:url('galactic-waves.svg');background-size:100% 100%}.board{padding-bottom:28px}.wordmark{position:relative}.wordmark:after{content:'✦';font-size:30px;color:var(--pink);position:absolute;right:-38px;top:0;transform:rotate(15deg)}.wordmark>span{background:var(--yellow);border:2px solid var(--ink);border-radius:12px 8px 14px 7px;padding:5px 7px;font-size:14px;box-shadow:2px 2px 0 var(--ink)}.screen{background-image:radial-gradient(#ff168d30 .7px,transparent 1px);background-size:11px 13px}.pedal-head>span{display:grid;place-items:center;width:36px;height:36px;border:2px solid var(--ink);border-radius:50%;background:var(--pink);color:var(--ink);transform:rotate(-18deg);font-size:28px;box-shadow:2px 2px 0 var(--ink)}.pedal-card:has(.pedal-toggle[aria-pressed=true]){background:linear-gradient(110deg,#ffd40019,transparent 60%);border-color:var(--ink);box-shadow:2px 2px 0 var(--pink)}.pedal-card:has(.pedal-toggle[aria-pressed=true]) .pedal-icon{box-shadow:0 0 0 2px #ff168d25}.playing .screen{box-shadow:3px 4px 0 var(--pink),0 0 15px #ff168d33}.playing #btn-play{background:var(--pink);box-shadow:0 4px 0 var(--ink),inset 0 0 0 3px #ffffff99}.transport #btn-surprise{transform:rotate(-2deg)}.transport #btn-loop{transform:rotate(1deg)}.reset:hover{transform:rotate(-18deg)}.export:hover{filter:brightness(1.05);transform:translateY(-1px)}.pedal-card,.reset,.export{transition:background .15s,box-shadow .15s,transform .15s}
@media(min-width:700px) and (max-height:550px){.board{padding-bottom:24px}.wordmark:after{font-size:22px;right:-28px}.wordmark>span{font-size:10px;padding:4px}.pedal-head>span{width:28px;height:28px;font-size:20px}}
@media(max-width:699px){.board{padding-bottom:30px}.wordmark:after{font-size:26px;right:-26px}.wordmark>span{font-size:12px;padding:4px 6px}.pedal-card{background:#faf0d6}.pedal-head button{min-width:65px}.screen{height:190px;min-height:190px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
.board:after{height:20px;background-repeat:repeat-x;background-size:300px 36px;background-position:center bottom}
