html,body,#root{color:#eee;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0c0c0d;width:100%;min-height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,sans-serif}body{overflow:hidden}*{box-sizing:border-box}a{color:#e5cf8a;text-underline-offset:3px}.app-shell{grid-template-rows:auto auto auto 1fr;height:100vh;display:grid}header{background:#111114;border-bottom:1px solid #333338;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.brand{align-items:baseline;gap:10px;min-width:0;display:flex}.brand strong{letter-spacing:.02em;font-size:18px}.brand span{color:#aaaab2;font-size:12px}.controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.custom-tune-badge{color:#e8d398;background:#2d281c;border:1px solid #806f42;border-radius:999px;padding:5px 8px;font-size:11px}.locale-switch{gap:4px;display:inline-flex}.locale-switch button{min-width:44px}.locale-switch button[aria-pressed=true]{background:#3a3324;border-color:#d6bb72}button,select{color:#fff;background:#202024;border:1px solid #606068;border-radius:8px;min-height:40px;padding:8px 10px}button{cursor:pointer}button:hover,select:hover{background:#29292e;border-color:#85858e}button:disabled{cursor:default;opacity:.45}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:2px;outline:2px solid #f0d58a}label{color:#c4c4ca;align-items:center;gap:8px;font-size:12px;display:flex}input[type=range]{accent-color:#d6bb72;min-height:28px}input[type=number]{color:#fff;background:#202024;border:1px solid #606068;border-radius:8px;width:88px;min-height:40px;padding:8px 10px}.page-nav{background:#111114;border-bottom:1px solid #2d2d32;align-items:center;gap:8px;padding:8px 16px;display:flex}.page-nav a{color:#c8c8ce;border:1px solid #0000;border-radius:8px;align-items:center;min-height:36px;padding:6px 10px;font-size:13px;text-decoration:none;display:inline-flex}.page-nav a:hover,.page-nav a[aria-current=page]{color:#fff;background:#1c1c20;border-color:#505058}.page-nav .primary-link{color:#fff;background:#3a3324;border-color:#a78b48}.composer-drawer{background:#101013;border-bottom:1px solid #303036}.composer-drawer>summary{cursor:pointer;color:#d5d5db;padding:8px 16px;font-size:13px;list-style-position:inside}.composer-drawer[open]>summary{color:#fff;border-bottom:1px solid #2b2b30}.composer-drawer>.piano-roll-editor{border-top:0;max-height:330px;margin:0;padding:14px 16px 16px;overflow:auto}.workspace{grid-template-columns:250px 1fr;min-height:0;display:grid}.builder-panel{background:#111114;border-right:1px solid #303036;padding:16px;scroll-margin-top:12px;overflow:auto}.customize-heading{margin-bottom:18px}.customize-heading strong{font-size:15px;display:block}.customize-heading span{color:#9999a2;margin-top:5px;font-size:12px;line-height:1.45;display:block}.builder-panel label{grid-template-columns:1fr auto;gap:7px;margin-bottom:18px;display:grid}.builder-panel label input[type=range]{grid-column:1/-1;width:100%}.builder-panel output{color:#f2f2f4;font-variant-numeric:tabular-nums}.builder-panel select{min-width:76px}.builder-panel .builder-error{color:#ffc0b6;margin:4px 0 0;font-size:12px;line-height:1.5}.scene{background:radial-gradient(circle at 55% 35%,#171719 0%,#0c0c0d 62%);min-width:0;min-height:0;position:relative}.scene-hint{color:#b8b8c0;pointer-events:none;background:#111114d1;border:1px solid #3a3a40;border-radius:7px;padding:7px 9px;font-size:11px;position:absolute;bottom:12px;left:12px}canvas{touch-action:none;width:100%!important;height:100%!important}.piano-roll-editor{border-top:1px solid #303036;margin-top:20px;padding-top:18px}.piano-roll-heading{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.piano-roll-heading strong{font-size:15px;display:block}.piano-roll-heading span{color:#9999a2;margin-top:5px;font-size:12px;line-height:1.45;display:block}.piano-roll-actions{gap:6px;display:flex}.piano-roll-actions button{min-height:34px;padding:5px 8px;font-size:11px}.screen-keyboard{background:#141418;border:1px solid #303036;border-radius:8px;margin:0 0 14px;padding:12px}.screen-keyboard-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.screen-keyboard-heading>div{min-width:0}.screen-keyboard-heading strong{font-size:14px;display:block}.screen-keyboard-heading span{color:#9999a2;margin-top:4px;font-size:12px;line-height:1.45;display:block}.screen-keyboard-heading button{flex:none;min-height:36px}.screen-keyboard-recording{color:#e8d398;margin:-2px 0 8px;font-size:11px}.screen-keyboard-keys{gap:4px;padding:2px 0 4px;display:flex;overflow-x:auto}.screen-key{touch-action:none;flex:0 0 48px;min-width:48px;min-height:58px;padding:6px 4px}.screen-key[aria-pressed=true]{background:#6d5c31;border-color:#f0d58a}.screen-key span{font-size:11px;display:block}.piano-roll-scroll{background:#0d0d10;border:1px solid #303036;border-radius:8px;overflow-x:auto}.piano-roll-grid{min-width:max(520px, calc(var(--piano-roll-columns) * 28px))}.piano-roll-row{border-bottom:1px solid #242429;grid-template-columns:36px 1fr;min-height:31px;display:grid}.piano-roll-row:last-child{border-bottom:0}.piano-roll-key{color:#9999a2;background:#151519;border-right:1px solid #303036;justify-content:center;align-items:center;font-size:10px;display:flex}.piano-roll-lane{background-image:linear-gradient(90deg,#ffffff0e 1px,#0000 1px);background-size:calc(100% / var(--piano-roll-columns)) 100%;min-width:0;position:relative}.piano-roll-note{background:#6d5c31;border-color:#9a844b;border-radius:4px;min-height:0;padding:0;position:absolute;top:4px;bottom:4px}.piano-roll-note[aria-pressed=true]{background:#a1843d;border-color:#f0d58a;box-shadow:0 0 0 1px #f0d58a38}.piano-roll-inspector{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.piano-roll-inspector label{align-items:start;gap:5px;display:grid}.piano-roll-inspector select,.piano-roll-inspector input{width:100%;min-width:0}.piano-roll-empty{color:#9999a2;font-size:12px}.info-shell{background:#0c0c0d;min-height:100vh}.info-header{z-index:2;position:sticky;top:0}.info-page{width:min(760px,100% - 32px);margin:0 auto;padding:36px 0 64px}.info-page h1{margin:0 0 10px;font-size:clamp(28px,5vw,42px)}.info-page .lede{color:#bcbcc5;margin:0 0 36px;font-size:17px;line-height:1.65}.info-page section{border-top:1px solid #2d2d32;padding:24px 0}.info-page h2{margin:0 0 10px;font-size:18px}.info-page p{color:#bcbcc5;margin:0;line-height:1.75}.info-page section p+p{margin-top:12px}@media (width<=760px){body{overflow:auto}.app-shell{height:auto;min-height:100vh;display:block}header{flex-direction:column;align-items:flex-start;padding:12px}.brand{display:block}.brand strong{font-size:18px;display:block}.brand span{margin-top:4px;font-size:13px;line-height:1.35;display:block}.controls{justify-content:flex-start;gap:8px;width:100%}.controls label{flex:180px}.controls label input{flex:1;min-width:90px}.page-nav{padding:8px 12px;overflow-x:auto}.page-nav a{flex:none}.composer-drawer>summary{padding:10px 12px}.composer-drawer>.piano-roll-editor{max-height:none;padding:14px 12px 18px}.workspace{flex-direction:column;min-height:0;display:flex}.scene{order:1;height:54vh;min-height:360px}.builder-panel{border-top:1px solid #303036;border-right:0;order:2;max-height:none;padding:18px 14px 28px;overflow:visible}.customize-heading,.builder-panel label{margin-bottom:22px}button,select,input[type=number]{min-height:44px}.scene-hint{text-align:center;bottom:10px;left:10px;right:10px}.piano-roll-heading{display:block}.piano-roll-actions{margin-top:10px}.screen-keyboard-heading{display:block}.screen-keyboard-heading button{margin-top:10px}.piano-roll-inspector{grid-template-columns:1fr}.piano-roll-inspector label{margin-bottom:0}.info-header{flex-direction:row;align-items:center;position:static}.info-page{width:min(100% - 28px,760px);padding-top:28px}}@media (width<=460px){.controls>button{flex:none}.locale-switch{width:100%}.locale-switch button{min-width:52px}}.audio-file-import{background:#151519;border:1px solid #34343b;border-radius:.55rem;gap:.75rem;padding:.8rem;display:grid}.audio-file-import-copy{gap:.2rem;display:grid}.audio-file-import-copy span,.audio-file-import-status,.audio-file-import-name{color:#b8b8c3}.audio-file-import-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.audio-file-import-picker{cursor:pointer;border:1px solid #555560;border-radius:.5rem;align-items:center;min-height:2.45rem;padding:0 .75rem;display:inline-flex;position:relative}.audio-file-import-picker:focus-within{outline-offset:2px;outline:2px solid}.audio-file-import-picker input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.audio-file-import-status,.audio-file-import-name{overflow-wrap:anywhere;margin:0}.audio-file-import audio{width:min(100%,34rem)}.auto-fit-panel{margin-bottom:14px}.auto-fit-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0;display:grid}.auto-fit-option{background:#101014;border:1px solid #303036;border-radius:8px;align-items:flex-start;gap:8px;padding:9px}.auto-fit-option input{accent-color:#d6bb72;margin-top:3px}.auto-fit-option span{min-width:0}.auto-fit-option strong{color:#e4e4e8;font-size:12px;line-height:1.35;display:block}.auto-fit-option small{color:#9999a2;margin-top:4px;font-size:11px;line-height:1.4;display:block}.auto-fit-quantize{background:#101014;border:1px solid #303036;border-radius:8px;justify-content:space-between;padding:9px}.auto-fit-quantize>span{color:#e4e4e8}.auto-fit-result{color:#cfcfd6;background:#1c1a13;border:1px solid #635b3e;border-radius:8px;flex-wrap:wrap;gap:6px 14px;margin-top:10px;padding:9px;font-size:12px;line-height:1.45;display:flex}.auto-fit-result>strong{color:#f0d58a}.auto-fit-result>small{color:#aaaab2;flex-basis:100%}@media (width<=760px){.auto-fit-options{grid-template-columns:1fr}.auto-fit-quantize{align-items:center}}.compatibility-panel{margin-bottom:14px}.compatibility-panel .screen-keyboard-heading{margin-bottom:8px}.compatibility-panel .screen-keyboard-recording{text-align:right;max-width:240px;margin:0;line-height:1.35}.compatibility-summary{color:#bcbcc5;flex-wrap:wrap;gap:6px 14px;font-size:12px;line-height:1.5;display:flex}.compatibility-summary strong{color:#f2f2f4;font-variant-numeric:tabular-nums}.compatibility-issues{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.compatibility-issues li{background:#101014;border:1px solid #303036;border-radius:7px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 8px;font-size:12px;display:grid}.compatibility-issues li>span{color:#d5d5db}.compatibility-issues li>strong{font-variant-numeric:tabular-nums}.compatibility-issues li>small{color:#9999a2}@media (width<=760px){.compatibility-panel .screen-keyboard-recording{text-align:left;max-width:none;margin-top:8px;display:block}.compatibility-issues li{grid-template-columns:1fr auto}.compatibility-issues li>small{grid-column:1/-1}}.microphone-recorder{background:#151519;border:1px solid #34343b;border-radius:.55rem;gap:.75rem;padding:.8rem;display:grid}.microphone-recorder-copy{gap:.2rem;display:grid}.microphone-recorder-copy span,.microphone-recorder-status{color:#b8b8c3}.microphone-recorder-actions,.microphone-recorder-analysis{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.microphone-recorder-analysis{background:#151519;border-bottom:1px solid #34343b;border-left:1px solid #34343b;border-right:1px solid #34343b;border-radius:0 0 .55rem .55rem;margin-top:-.35rem;padding:0 .8rem .8rem}.microphone-recorder audio{width:min(100%,34rem)}.microphone-recorder-status{margin:0}.midi-export{background:#141418;border:1px solid #303036;border-radius:8px;margin:0 0 14px;padding:12px}.midi-export>div{min-width:0}.midi-export strong{font-size:14px;display:block}.midi-export span{color:#9999a2;margin-top:4px;font-size:12px;line-height:1.45;display:block}.midi-export button{min-height:36px;margin-top:10px}.midi-import{background:#141418;border:1px solid #303036;border-radius:8px;margin:0 0 14px;padding:12px}.midi-import>div{min-width:0}.midi-import strong{font-size:14px;display:block}.midi-import span{color:#9999a2;margin-top:4px;font-size:12px;line-height:1.45;display:block}.midi-import button{min-height:36px;margin-top:10px}.midi-import [role=status]{color:#d8d8df;margin:8px 0 0;font-size:11px;line-height:1.45}
