.soundscape{color:#f1e9d6;background:#181a18;min-height:calc(100vh - 60px);padding:38px max(20px,50vw - 640px) 32px;font-family:Arial,sans-serif}.soundscape *{box-sizing:border-box}.sound-kicker{letter-spacing:.22em;color:#c1bcaa;margin:0 0 20px;font-size:9px}.sound-heading>div{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.sound-heading h1{letter-spacing:-.05em;margin:0;font-family:Georgia,serif;font-size:clamp(42px,5.6vw,76px);font-weight:400;line-height:1}.sound-heading h1 em{color:#dbb28c}.sound-heading>div>p{color:#b5b7a6;margin:0 0 4px;font-size:12px;line-height:1.8}.sound-stage{aspect-ratio:15/8;background:#22251e;border:1px solid #585a48;border-radius:3px;width:100%;max-width:100%;min-height:300px;margin-top:32px;position:relative;overflow:hidden}.sound-stage canvas,.sound-fallback{width:100%;height:100%;position:absolute;inset:0}.sound-stage [hidden]{display:none}.sound-stage-caption,.sound-stage-bottom{letter-spacing:.15em;z-index:1;pointer-events:none;color:#d2c6aa;justify-content:space-between;gap:16px;font-size:8px;display:flex;position:absolute;left:24px;right:24px}.sound-stage-caption{top:22px}.sound-stage-caption>span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:65%;overflow:hidden}.sound-stage-bottom{bottom:22px}.sound-control-panel{border-bottom:1px solid #434738;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;padding:18px 0;display:flex}.sound-transport{flex-wrap:wrap;gap:8px;display:flex}.soundscape button{font:inherit;color:#e6decb;cursor:pointer;background:0 0;border:1px solid #6b6e58;border-radius:4px;min-height:46px;padding:10px 19px;font-size:12px}.soundscape button:disabled{opacity:.45;cursor:default}.soundscape :is(button,input,a):focus-visible{outline-offset:4px;outline:3px solid #e9c997}.soundscape .sound-play{color:#25261f;background:#e7c398;border-color:#e7c398;justify-content:space-between;gap:25px;min-width:172px;display:flex}.sound-volume{letter-spacing:.12em;align-items:center;gap:12px;font-size:8px;display:flex}.sound-volume input{accent-color:#dfbd92;width:120px;min-height:44px}.sound-volume output{letter-spacing:0;width:30px;font-size:10px}.sound-settings{grid-template-columns:1fr 1fr 1.2fr;gap:26px;padding-top:24px;display:grid}.sound-settings fieldset{border:0;min-width:0;margin:0;padding:0}.sound-settings legend,.sound-file>label{color:#c5bea9;letter-spacing:.1em;margin-bottom:12px;font-size:8px;display:block}.sound-mode-buttons,.sound-palette-buttons{flex-wrap:wrap;gap:5px;display:flex}.sound-settings button{padding:10px 12px;font-size:11px}.sound-settings button[aria-pressed=true]{color:#f7dfc0;background:#e7c39818;border-color:#e7c398}.sound-palette-buttons button{align-items:center;gap:6px;display:flex}.sound-swatch{border-radius:50%;width:11px;height:11px}.swatch-dusk{background:#e4b88e}.swatch-lagoon{background:#94d3c8}.swatch-bloom{background:#d7a9e2}.sound-file{min-width:0}.sound-file input{font:inherit;color:#c7c6b5;width:100%;max-width:100%;min-height:44px;font-size:10px}.sound-file input::file-selector-button{color:#f1e9d6;cursor:pointer;background:#333b2f;border:1px solid #6b6e58;border-radius:4px;min-height:44px;margin-right:8px;padding:8px 12px}.sound-file p{color:#aeb49e;font-size:9px;line-height:1.5}.sound-status{color:#e5c99f;min-height:22px;margin:23px 0 8px;font-size:12px;line-height:1.7}.sound-note{color:#a9b09a;max-width:820px;font-size:11px;line-height:1.8}@media (width<=850px){.sound-settings{grid-template-columns:1fr 1fr}.sound-file{grid-column:1/-1;max-width:440px}}@media (width<=550px){.soundscape{padding:28px 16px}.sound-heading>div{flex-direction:column;align-items:flex-start;gap:20px}.sound-stage{min-height:310px}.sound-stage-caption,.sound-stage-bottom{font-size:7px;left:14px;right:14px}.sound-stage-bottom>span:last-child{display:none}.sound-transport{gap:6px;width:100%}.sound-transport button{padding:10px 13px}.soundscape .sound-play{flex:1;gap:10px;min-width:148px}.sound-volume{justify-content:space-between;width:100%}.sound-volume input{flex:1;max-width:220px}.sound-settings{grid-template-columns:1fr;gap:20px}.sound-settings button{padding:10px 16px}}
