*{box-sizing:border-box}body{margin:0;background:#0b0d13;color:#eef1fa;font:16px system-ui,-apple-system,Segoe UI,sans-serif}header{display:flex;align-items:center;justify-content:space-between;padding:18px max(20px,calc((100vw - 1100px)/2));border-bottom:1px solid #252a38;background:#12151e}.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block;letter-spacing:2px}.brand small{display:block;color:#8793aa;font-size:11px;letter-spacing:2px}.dot{width:13px;height:13px;background:#f29a31;border-radius:50%;box-shadow:0 0 18px #f29a31}.pill,.tag{border:1px solid #34415a;color:#a8bbda;border-radius:40px;padding:8px 12px;font-size:11px;letter-spacing:1px}main{max-width:1100px;margin:auto;padding:28px 18px}.hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:36px;background:linear-gradient(125deg,#222b43,#141824 62%,#2c1f1b);border:1px solid #343c50;border-radius:20px}.eyebrow,.arrow{font-size:12px;letter-spacing:2px;color:#f6a34e}h1{font-size:clamp(32px,5vw,55px);line-height:1.06;margin:8px 0 15px}h1 em{color:#f4a44b;font-style:normal}.hero p{color:#b2bbcc;max-width:540px}.hero-score{background:#10151f;border:1px solid #3b455c;border-radius:16px;padding:26px;text-align:center;min-width:210px}.hero-score span,.hero-score small{display:block;font-size:11px;color:#a5b1c7}.hero-score b{display:block;font-size:56px;color:#f5aa53}.tabs{display:flex;gap:8px;overflow:auto;padding:22px 0}.tabs button,button,select{font:inherit}.tabs button{background:#1b2030;border:1px solid #303a50;border-radius:9px;padding:11px 17px;color:#bac4d8;white-space:nowrap;cursor:pointer}.tabs button.active{background:#f5a34b;color:#181818;border-color:#f5a34b;font-weight:750}.view{display:none}.view.active{display:block}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card,.panel{background:#171b27;border:1px solid #303749;border-radius:16px}.card{padding:24px;text-align:left;color:#f1f3fa;cursor:pointer;min-height:225px}.card:hover{border-color:#f5a34b;transform:translateY(-2px)}.card .icon{display:block;font-size:30px;margin-bottom:22px}.card b{font-size:19px}.card p,.muted{color:#aab4c6;font-size:14px;line-height:1.55}.card .arrow{display:block;margin-top:25px}.panel{padding:26px;margin-top:20px}.panel h2{margin:0 0 15px}.stats{display:flex;flex-wrap:wrap;gap:12px}.stats>div{background:#22293a;padding:15px;border-radius:10px;min-width:160px}.stats b{display:block;font-size:23px;color:#f6aa53}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}button:not(.tab):not(.card):not(.controller button){cursor:pointer;border:1px solid #45516b;background:#29334a;color:white;border-radius:10px;padding:12px 16px}button.primary{background:#ed9c3e!important;color:#151515!important;border-color:#ed9c3e!important;font-weight:750}button:disabled{opacity:.5;cursor:not-allowed}.controller{display:grid;grid-template-columns:1fr 1.05fr 1fr;gap:12px;margin:24px 0}.controller button{min-height:260px;background:radial-gradient(circle at center,#252e42,#111720);color:#e9edf6;border:2px solid #46506a;border-radius:18px;cursor:pointer;font-weight:750;letter-spacing:1px}.controller button:hover{border-color:#f5a34b}.controller span{font-size:11px;color:#abb6cc}.middle{display:grid;gap:8px}.middle button{min-height:80px}.info{margin-top:20px;border-left:3px solid #f5a34b;padding:15px;background:#232b3c;border-radius:6px;line-height:1.6}.info h3{margin:0 0 5px}.info p{margin:0}.option{display:block;width:100%;text-align:left;margin:10px 0;padding:15px!important}.option.correct{border-color:#3bd39b!important;background:#16483d!important}.option.wrong{border-color:#ed6972!important;background:#542b34!important}.quiz-progress{color:#f5a34b;font-weight:700}.deckgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.deck{background:#0d1320;border:1px solid #42516a;border-radius:15px;padding:25px;text-align:center}.deck small{display:block;letter-spacing:3px;color:#8da2c9}.deck strong{display:block;font-size:35px;margin:15px}.pulse{width:48px;height:48px;border-radius:50%;background:#415b7f;margin:10px auto}.pulse.on{background:#f5a34b;box-shadow:0 0 24px #f5a34b}.controls,.answer{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:15px 0}select{background:#222b3d;color:white;border:1px solid #495670;padding:12px;border-radius:8px}.challenge{border:1px solid #3c465c;padding:18px;margin:14px 0;border-radius:12px}.challenge h3{margin:0}.challenge p{color:#b4bed1}.challenge.done{border-color:#3bd39b}footer{text-align:center;color:#7f8da4;font-size:12px;padding:35px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.hero{padding:24px}.hero-score{min-width:155px}}@media(max-width:580px){header{padding:14px}.pill{display:none}.hero{display:block}.hero-score{margin-top:20px}.grid{grid-template-columns:1fr 1fr}.card{padding:16px;min-height:205px}.card b{font-size:16px}.panel{padding:17px}.controller{grid-template-columns:1fr}.controller button{min-height:95px}.middle{grid-template-columns:1fr 1fr 1fr}.middle button{min-height:90px;font-size:11px}.deck{padding:13px}.deck strong{font-size:23px}}
.sim-box{border:1px solid #35435c;border-radius:14px;padding:20px;margin:18px 0;background:#101725}.sim-box label{display:block;margin-bottom:10px;font-weight:700}.sim-box output{float:right;color:#ffa947}.sim-box input[type=range]{width:100%;accent-color:#ffa947;min-height:34px}.sim-box .controls{margin-top:14px;flex-wrap:wrap}.sim-box button{min-width:90px}.deckgrid{margin-top:16px}
.scratch-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:16px;margin:20px 0}.scratch-box{border:1px solid #38445d;background:#101725;padding:20px;border-radius:14px}.scratch-box label{display:block;color:#bbc7db;margin:12px 0 6px;font-size:14px}.scratch-box select{width:100%}.scratch-box h3{font-size:24px;margin:0 0 8px}.scratch-steps{background:#222b3d;border-radius:10px;padding:12px 16px;line-height:1.7}.scratch-steps ol{margin:0;padding-left:22px}@media(max-width:720px){.scratch-layout{grid-template-columns:1fr}}

#phrase .controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:18px 0}#phrase .controls label{display:flex;align-items:center;gap:8px}#phrase select{max-width:220px}#phrase .deckgrid{margin:20px 0}

#scratchpro input[type=file]{max-width:100%;margin:10px 0 18px}#scratchpro input[type=range]{width:100%}#sp-disc:active{cursor:grabbing}

/* V1.8 waveform sample editor */
.wave-editor{margin:18px 0;padding:15px;border:1px solid #3b4a66;border-radius:12px;background:#101827}.wave-editor canvas{width:100%;height:150px;display:block;border-radius:8px;cursor:crosshair;touch-action:manipulation}.wave-editor input[type=range]{width:100%;display:block;margin:8px 0 13px}.wave-editor label{display:block;margin-top:8px}.wave-times{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;color:#ffad4b;font-size:12px;margin:8px 0}.wave-editor .controls{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}

/* Scratch Pro V1.9 : waveform zoomable */
.wave-zoom-controls{align-items:center;flex-wrap:wrap;margin:10px 0 6px}.wave-zoom-controls #sp-zoom-label{color:#ffab44;font-weight:700;min-width:65px}.wave-pan-row{display:flex;gap:12px;align-items:center;margin:8px 0}.wave-pan-row label{white-space:nowrap}.wave-pan-row input{flex:1;min-width:0}.wave-viewport{width:100%;overflow:hidden;border:1px solid #3b4963;border-radius:9px;background:#0c1423}.wave-viewport canvas{display:block;width:100%;height:150px;cursor:crosshair;touch-action:pan-y}

/* Mix Lab V1.11 */
.mix-decks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.mix-deck{min-width:0;border:1px solid #34445e;border-radius:16px;padding:18px;background:#101724}.mix-deck h3{color:#f6a444}.mix-deck canvas{display:block;width:100%;height:100px;border-radius:8px;background:#0a1120;cursor:crosshair;margin:12px 0}.mix-name{font-size:.85rem;color:#a9bbd7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mix-readout{display:flex;justify-content:space-between;gap:10px;color:#f6a444;font-weight:bold;margin-bottom:12px}.mix-deck input[type=range],.mix-master input[type=range]{width:100%;display:block;margin:8px 0 16px}.mix-eq{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mix-eq label{min-width:0;font-size:.8rem}.mix-master{border:1px solid #34445e;border-radius:14px;padding:18px}.mix-deck .controls{flex-wrap:wrap}@media(max-width:750px){.mix-decks{grid-template-columns:1fr}.mix-eq{gap:6px}}

/* V1.14 Mix Lab waveform tools */
.mx-wave-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}.mx-wave-tools button{padding:7px 11px}.mx-wave-tools span{min-width:35px;text-align:center;color:#f6a444;font-weight:700}.mx-scroll-label{display:block;font-size:12px;color:#b9c5d9;margin:6px 0 12px}.mx-scroll-label input{width:100%;display:block;margin-top:4px}.mix-deck canvas{cursor:crosshair}

.mx-bpm-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0 12px}.mx-bpm-row label{display:inline-flex;align-items:center;gap:6px}.mx-bpm-row input[type=number],.mx-bpm-row input[type=password]{background:#0b1423;color:#f4f5fa;border:1px solid #43536e;border-radius:6px;padding:8px;width:85px}.mx-bpm-row input[type=checkbox]{width:auto}#mx-stacked{display:block;width:100%;height:150px;background:#0a1120;border-radius:8px;margin:12px 0}
