@import"https://fonts.googleapis.com/css2?family=Inter:wght@200;300;400;500;600;700&display=swap";.sidebar-container{position:fixed;top:0;left:0;bottom:0;z-index:120;display:flex;pointer-events:none}.sidebar-rail{width:48px;height:100%;display:flex;flex-direction:column;align-items:center;padding:16px 0;gap:8px;background:#0a0e17d9;border-right:1px solid rgba(255,255,255,.06);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;z-index:2}.sidebar-rail__btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;background:transparent;border:1px solid transparent;color:#ffffff80;cursor:pointer;transition:all .15s ease;position:relative;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.sidebar-rail__label{display:none;line-height:1}.sidebar-rail__btn:hover{background:#ffffff0f;color:#fffc}.sidebar-rail__btn--active{background:#ff6b351f;border-color:#ff6b3540;color:#ff6b35e6}.sidebar-rail__btn--active:hover{background:#ff6b352e}.sidebar-rail__btn--playing{color:#ff6b35e6}.sidebar-rail__pulse{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:#ff6b35;animation:railPulse 1.5s ease-in-out infinite}@keyframes railPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.sidebar-panel{width:240px;height:100%;background:#0c1018f2;border-right:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;transform:translate(-100%);opacity:0;transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s ease;pointer-events:none;z-index:1}.sidebar-panel--open{transform:translate(0);opacity:1;pointer-events:auto}.sidebar-panel__header{padding:16px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.sidebar-panel__title{font-size:.7rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:#fff9;margin:0}.sidebar-panel__close{display:none;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffffbf}.sidebar-panel__content{flex:1;overflow-y:auto;padding:16px}.sidebar-panel__content::-webkit-scrollbar{width:4px}.sidebar-panel__content::-webkit-scrollbar-track{background:transparent}.sidebar-panel__content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.sidebar-backdrop{position:fixed;inset:0 0 0 288px;background:transparent;pointer-events:auto;z-index:0}.midi-tab{display:flex;flex-direction:column;gap:20px}.midi-tab__section{display:flex;flex-direction:column;gap:8px}.midi-tab__heading{font-size:.6rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:#fff6;margin:0}.midi-tab__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.midi-tab__item{margin:0}.midi-tab__file-btn{width:100%;padding:10px;border-radius:6px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);text-align:left;cursor:pointer;transition:all .12s ease;display:flex;flex-direction:column;gap:2px}.midi-tab__file-btn:hover{background:#ff6b3514;border-color:#ff6b3526}.midi-tab__file-btn--active{background:#ff6b351f;border-color:#ff6b354d}.midi-tab__file-btn:disabled{opacity:.4;cursor:not-allowed}.midi-tab__file-name{font-size:.75rem;font-weight:400;color:#ffffffe6;line-height:1.3}.midi-tab__file-composer{font-size:.6rem;color:#ffffff73}.midi-tab__upload-btn{display:block;width:100%;padding:10px;border-radius:6px;background:transparent;border:1px dashed rgba(255,255,255,.1);color:#ffffff80;font-size:.65rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;text-align:center;cursor:pointer;transition:all .12s ease}.midi-tab__upload-btn:hover{background:#ff6b350f;border-color:#ff6b3533;color:#fffc}.midi-tab__upload-btn--loading{opacity:.5;cursor:wait}.midi-tab__error{padding:8px;border-radius:4px;background:#ff3c3c1a;border-left:2px solid rgba(255,60,60,.5);color:#ffa0a0;font-size:.68rem}.midi-player{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:6px;background:#ffffff05;border:1px solid rgba(255,255,255,.04)}.midi-player__progress{height:2px;background:#ffffff14;border-radius:1px;overflow:hidden}.midi-player__progress-bar{height:100%;background:#ff6b35cc;transition:width .1s linear}.midi-player__time{display:flex;justify-content:space-between;font-size:.6rem;color:#fff6;font-variant-numeric:tabular-nums}.midi-player__controls{display:flex;justify-content:center;gap:8px}.midi-player__btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#ffffffb3;transition:all .12s ease}.midi-player__btn:hover:not(:disabled){background:#ff6b3526;border-color:#ff6b3540}.midi-player__btn:disabled{opacity:.2;cursor:not-allowed}.midi-player__btn--play{background:#ff6b3533;border-color:#ff6b3559;color:#ff6b35}.midi-player__btn--play:hover:not(:disabled){background:#ff6b354d}.midi-player__info{display:flex;flex-direction:column;gap:2px;padding-top:6px;border-top:1px solid rgba(255,255,255,.04)}.midi-player__title{font-size:.7rem;color:#ffffffd9;line-height:1.25}.midi-player__meta{font-size:.58rem;color:#fff6;text-transform:uppercase;letter-spacing:.05em}.midi-player__tempo{display:flex;flex-direction:column;gap:4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.04)}.midi-player__tempo-label{display:flex;justify-content:space-between;align-items:center;font-size:.6rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em}.midi-player__tempo-value{font-variant-numeric:tabular-nums;color:#ff6b35e6}.midi-player__tempo-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:#ffffff14;border-radius:2px;outline:none;cursor:pointer}.midi-player__tempo-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;background:#ff6b35e6;border-radius:50%;cursor:pointer;-webkit-transition:transform .1s ease;transition:transform .1s ease}.midi-player__tempo-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.midi-player__tempo-slider::-moz-range-thumb{width:12px;height:12px;background:#ff6b35e6;border:none;border-radius:50%;cursor:pointer}.samples-tab{display:flex;flex-direction:column;gap:20px}.samples-tab__section{display:flex;flex-direction:column;gap:8px}.samples-tab__heading{font-size:.6rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:#fff6;margin:0}.samples-tab__import-btns{display:flex;gap:6px}.samples-tab__import-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;border-radius:6px;background:#ff6b3514;border:1px solid rgba(255,107,53,.15);color:#fffc;font-size:.65rem;font-weight:400;letter-spacing:.05em;cursor:pointer;transition:all .12s ease}.samples-tab__import-btn:hover{background:#ff6b3526;border-color:#ff6b3540}.samples-tab__import-btn--secondary{flex:.5;background:transparent;border:1px dashed rgba(255,255,255,.1);color:#ffffff80}.samples-tab__import-btn--secondary:hover{background:#ffffff0a;border-color:#fff3;color:#ffffffb3}.samples-tab__import-btn--loading{opacity:.5;cursor:wait}.samples-tab__error{padding:8px;border-radius:4px;background:#ff3c3c1a;border-left:2px solid rgba(255,60,60,.5);color:#ffa0a0;font-size:.68rem}.samples-tab__stats{font-size:.6rem;color:#ffffff59;text-align:center;padding:4px 0}.samples-tab__loading,.samples-tab__empty{font-size:.7rem;color:#fff6;text-align:center;padding:20px 10px}.samples-tab__categories{display:flex;flex-direction:column;gap:2px}.samples-tab__category{display:flex;flex-direction:column}.samples-tab__category-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 6px;border-radius:4px;background:transparent;border:none;color:#ffffffb3;cursor:pointer;transition:all .1s ease;text-align:left}.samples-tab__category-header:hover{background:#ffffff0a}.samples-tab__category-chevron{transition:transform .15s ease;flex-shrink:0;opacity:.5}.samples-tab__category-header--expanded .samples-tab__category-chevron{transform:rotate(90deg)}.samples-tab__category-name{flex:1;font-size:.7rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.samples-tab__category-count{font-size:.6rem;color:#ffffff59;padding:2px 6px;background:#ffffff0d;border-radius:10px}.samples-tab__category-delete{opacity:0;padding:4px;background:transparent;border:none;color:#ff6464b3;cursor:pointer;border-radius:4px;transition:all .1s ease}.samples-tab__category-header:hover .samples-tab__category-delete{opacity:1}.samples-tab__category-delete:hover{background:#ff3c3c26;color:#ff6464}.samples-tab__list{list-style:none;margin:0;padding:0 0 0 18px;display:flex;flex-direction:column;gap:1px}.samples-tab__item{margin:0}.samples-tab__sample-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:6px 8px;border-radius:4px;background:transparent;border:none;color:#ffffffa6;cursor:pointer;transition:all .1s ease;text-align:left}.samples-tab__sample-btn:hover{background:#ff6b3514;color:#ffffffe6}.samples-tab__sample-btn--active{background:#ff6b351f;border-left:2px solid rgba(255,107,53,.6);color:#fffffff2}.samples-tab__sample-name{flex:1;font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.samples-tab__sample-meta{font-size:.58rem;color:#ffffff59;font-variant-numeric:tabular-nums}@media (max-width: 900px){.sidebar-container{inset:auto 0 0;width:100%;flex-direction:column;justify-content:flex-end}.sidebar-rail{width:100%;height:auto;min-height:56px;flex-direction:row;justify-content:center;padding:8px max(12px,env(safe-area-inset-left,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-right,0px));border-right:none;border-top:1px solid rgba(255,255,255,.08);background:#0a0e17f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-rail__btn{flex:1;width:auto;min-height:40px;max-width:200px;padding:8px 10px;border-radius:10px}.sidebar-rail__label{display:inline}.sidebar-rail__pulse{top:8px;right:10px}.sidebar-panel{position:fixed;right:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));left:0;width:auto;height:auto;max-height:min(72vh,560px);border-right:none;border-top:1px solid rgba(255,255,255,.1);border-radius:16px 16px 0 0;transform:translateY(calc(100% + 24px));opacity:1}.sidebar-panel--open{transform:translateY(0)}.sidebar-panel__header{padding:12px 14px}.sidebar-panel__title{font-size:.64rem;letter-spacing:.18em}.sidebar-panel__close{display:inline-flex}.sidebar-panel__content{padding:12px 14px 16px}.sidebar-backdrop{left:0;background:#05081073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.midi-tab,.samples-tab{gap:16px}.midi-tab__section,.samples-tab__section{gap:10px}.midi-player__btn{width:36px;height:36px}.midi-tab__file-btn,.midi-tab__upload-btn{padding:12px}.samples-tab__import-btns{flex-direction:column}.samples-tab__import-btn,.samples-tab__import-btn--secondary{flex:1;width:100%;min-height:38px}.samples-tab__sample-btn{padding:8px 10px}.samples-tab__category-delete{opacity:1}}@media (max-width: 520px){.sidebar-rail{min-height:54px;gap:6px;padding-inline:max(10px,env(safe-area-inset-left,0px))}.sidebar-rail__btn{max-width:none;min-height:38px;padding:8px;font-size:.6rem;letter-spacing:.06em}.sidebar-panel{bottom:calc(54px + env(safe-area-inset-bottom,0px));max-height:78vh}.midi-player__controls{gap:10px}}:root{--color-bg-sky: #0a0e17;--color-bg-deep: #050810;--color-primary-soft: #1a1f2e;--color-primary-dim: #0f1419;--color-accent-sheen: rgba(255, 107, 53, .2);--color-accent-sheen-strong: rgba(255, 107, 53, .4);--color-accent-silver: rgba(255, 107, 53, .15);--color-glimmer-one: rgba(255, 107, 53, .8);--color-glimmer-two: rgba(255, 107, 53, .6);--color-glimmer-three: rgba(255, 107, 53, .3);--color-text-primary: rgba(255, 255, 255, .95);--color-text-secondary: rgba(255, 255, 255, .7);--color-text-tertiary: rgba(255, 255, 255, .5);--color-key-white: rgba(20, 24, 32, .9);--color-key-active: rgba(255, 107, 53, .3);--color-key-black: rgba(10, 12, 18, .95);--color-key-black-active: rgba(255, 107, 53, .4);--color-surface: rgba(20, 24, 32, .6);--color-surface-intense: rgba(20, 24, 32, .8);--color-surface-soft: rgba(20, 24, 32, .4);--color-chip: rgba(20, 24, 32, .5);--shadow-radiant: 0 8px 24px rgba(0, 0, 0, .6);--shadow-floating: 0 4px 16px rgba(0, 0, 0, .5);--shadow-soft: 0 2px 8px rgba(0, 0, 0, .4);--shadow-touch: 0 1px 4px rgba(0, 0, 0, .3);--space-xs: 6px;--space-sm: 10px;--space-md: 16px;--space-lg: 20px;--space-xl: 28px;--space-2xl: 40px;--border-glass: 1px solid rgba(255, 107, 53, .15);--border-glass-subtle: 1px solid rgba(255, 107, 53, .08);--blur-surface: 0px;--blur-overlay: 0px;--transition-dissolve: .2s ease;--transition-surface: .15s ease;--transition-hover: .2s ease;--radius-large: 2px;--radius-medium: 2px;--radius-small: 0px;--max-shell-width: min(92vw, 1080px);--wave-candy-height: clamp(180px, 22vh, 240px);--scroll-progress: 0}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;min-height:100%;background:var(--color-bg-deep);color:var(--color-text-primary);font-family:Courier New,monospace;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow-x:hidden}#root{min-height:100vh;position:relative;z-index:1}button,input,select,textarea{font-family:inherit;font-weight:300}button{cursor:pointer;background:none;border:none;color:inherit;padding:0}p,span,label,dd,dt,li{color:var(--color-text-primary);opacity:1;text-shadow:0 1px 3px rgba(255,255,255,.2)}small{color:var(--color-text-secondary);opacity:.9}h1,h2,h3,h4{font-weight:400;line-height:1.3;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-primary);text-shadow:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--color-accent-sheen);outline-offset:4px}button:disabled{opacity:.45;cursor:not-allowed}.simple-background{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--color-bg-deep)}.gradient-layer{display:none}.app-stage{position:relative;min-height:100vh;display:flex;flex-direction:column}.app-shell{position:relative;width:var(--max-shell-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-xl);padding:var(--space-xl) var(--space-lg) var(--space-2xl);min-height:100vh}.app-shell>*{position:relative;z-index:1}.tier-focus{box-shadow:var(--shadow-radiant);border:1px solid rgba(255,255,255,.32)}.tier-support{box-shadow:var(--shadow-floating);border:1px solid rgba(255,255,255,.24)}.tier-subtle{box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.14);opacity:.92}.content-tertiary{order:0;flex:0 0 auto}.content-primary{order:1;flex:1 1 auto}.content-secondary{order:2;flex:0 1 auto}.zone-top{width:min(520px,100%);position:relative;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-medium);background:linear-gradient(180deg,var(--color-surface-soft) 0%,rgba(255,255,255,.08) 100%);-webkit-backdrop-filter:blur(var(--blur-surface)) brightness(1.08);backdrop-filter:blur(var(--blur-surface)) brightness(1.08);border:var(--border-glass-subtle);box-shadow:var(--shadow-soft);overflow:hidden}.zone-center{width:min(1200px,95vw);flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);padding:var(--space-lg) 0}.zone-bottom{width:min(1200px,95vw);display:flex;justify-content:center;padding-bottom:var(--space-lg)}.brand-title{font-weight:400;font-size:1.2rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-glimmer-one);text-shadow:none;margin:0}.brand-subtitle{font-weight:300;font-size:clamp(.8rem,1.2vw,1rem);letter-spacing:.18em;color:var(--color-text-secondary);text-transform:uppercase;opacity:.92}.header-controls{display:flex;align-items:center;gap:8px}.header-controls .button-icon{width:36px;height:36px;font-size:.9rem}.header-controls label.button-icon{cursor:pointer}.header-controls .button-icon.loading{opacity:.5;pointer-events:none}.panel{position:relative;background:var(--color-surface);border:var(--border-glass);border-radius:var(--radius-medium);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md);-webkit-backdrop-filter:blur(var(--blur-surface)) brightness(1.08);backdrop-filter:blur(var(--blur-surface)) brightness(1.08);box-shadow:var(--shadow-soft);overflow:hidden}.panel.elevated{box-shadow:var(--shadow-floating);background:linear-gradient(200deg,var(--color-surface) 0%,rgba(184,198,219,.18) 100%)}.button-icon,.button-primary,.waveform-button{position:relative;overflow:hidden;border-radius:var(--radius-small);background:linear-gradient(180deg,#e8f0f53d,#b8c6db29);border:var(--border-glass-subtle);color:var(--color-text-primary);-webkit-backdrop-filter:blur(14px) brightness(1.1);backdrop-filter:blur(14px) brightness(1.1);transition:transform var(--transition-hover),filter var(--transition-hover),box-shadow var(--transition-hover);box-shadow:var(--shadow-touch)}.button-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.1rem;color:var(--color-text-primary)}.button-primary{padding:14px 22px;border-radius:999px;font-size:.9rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(180deg,#e8f0f54d,#b8c6db2e)}.button-link{font-size:.85rem;font-weight:300;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);background:none;text-decoration:none;padding:6px 12px;border-radius:var(--radius-small);transition:color .36s ease}.button-link:hover{color:var(--color-text-primary)}.button-icon:hover,.button-primary:hover,.waveform-button:hover{opacity:.8}.control-chip{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:var(--color-chip);color:var(--color-text-secondary);font-size:clamp(.72rem,.9vw,.85rem);letter-spacing:.14em;text-transform:uppercase;box-shadow:0 8px 20px #101c2847;-webkit-backdrop-filter:blur(12px) brightness(1.08);backdrop-filter:blur(12px) brightness(1.08)}.slider-group{display:flex;flex-direction:column;gap:12px}.label-stack{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.slider-value{font-size:clamp(.75rem,.9vw,.85rem);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary)}.slider-description{font-size:clamp(.72rem,.95vw,.85rem);color:var(--color-text-secondary);opacity:.9;letter-spacing:.05em}.slider-input-wrapper{position:relative;width:100%;height:32px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:0;background:transparent;overflow:visible;--slider-progress: 50%}.slider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:0;background:linear-gradient(90deg,rgba(255,107,53,.3) 0%,rgba(255,107,53,.5) var(--slider-progress, 50%),rgba(255,255,255,.06) calc(var(--slider-progress, 50%) + .1%),rgba(255,255,255,.06) 100%);transition:all .15s ease;border:none;box-shadow:none}input[type=range]:hover{background:linear-gradient(90deg,rgba(255,107,53,.4) 0%,rgba(255,107,53,.6) var(--slider-progress, 50%),rgba(255,255,255,.08) calc(var(--slider-progress, 50%) + .1%),rgba(255,255,255,.08) 100%)}input[type=range]:focus-visible{outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;border-radius:0;background:#ff6b35e6;border:1px solid rgba(255,107,53,1);box-shadow:none;cursor:pointer;-webkit-transition:all .12s ease;transition:all .12s ease}input[type=range]::-webkit-slider-thumb:hover{background:#ff6b35;width:14px;height:14px}input[type=range]::-webkit-slider-thumb:active{transform:scale(.9)}input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:0;background:#ff6b35e6;border:1px solid rgba(255,107,53,1);box-shadow:none;cursor:pointer;-moz-transition:all .12s ease;transition:all .12s ease}input[type=range]::-moz-range-thumb:hover{background:#ff6b35;width:14px;height:14px}input[type=range]::-moz-range-thumb:active{transform:scale(.9)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:clamp(.78rem,.95vw,.88rem);color:var(--color-text-secondary);letter-spacing:.08em;text-transform:uppercase}.toggle-row input[type=checkbox]{width:52px;height:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff1f;border-radius:999px;position:relative;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 0 12px #0c182440;transition:background .32s ease}.toggle-row input[type=checkbox]:after{content:"";position:absolute;top:3px;left:4px;width:20px;height:20px;border-radius:50% 50% 45% 45%;background:linear-gradient(180deg,#f8fafbe6,#d1dce5b3);box-shadow:0 8px 16px #0c182452;transition:transform .32s ease}.toggle-row input[type=checkbox]:checked{background:#e8f0f557}.toggle-row input[type=checkbox]:checked:after{transform:translate(22px)}.fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}.fieldset+.fieldset{margin-top:20px}.record-button{position:relative}.record-button.recording{background:#ff32324d;border-color:#ff323280;animation:recordPulse 1s ease-in-out infinite}.record-button.recording span{color:#ff6464}@keyframes recordPulse{0%,to{box-shadow:0 0 #ff323266}50%{box-shadow:0 0 0 8px #ff323200}}.recording-indicator{color:#ff5050;font-weight:500;animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.keyboard-surface{position:relative;width:min(1400px,96vw);min-height:clamp(280px,40vh,420px);max-height:clamp(360px,55vh,520px);padding:var(--space-lg);display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-md);border-radius:var(--radius-large);background:linear-gradient(200deg,#e8f0f55c,#7a8fa329);border:1px solid rgba(255,255,255,.26);-webkit-backdrop-filter:blur(var(--blur-overlay)) brightness(1.08);backdrop-filter:blur(var(--blur-overlay)) brightness(1.08);box-shadow:var(--shadow-radiant);overflow:hidden}.keyboard-header{display:flex;justify-content:space-between;align-items:flex-start;color:var(--color-text-secondary);font-size:clamp(.8rem,1vw,.95rem);letter-spacing:.18em;text-transform:uppercase}.keyboard-region{position:relative;width:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-sm);min-height:0}.keyboard-legend{display:inline-flex;gap:var(--space-sm);font-size:clamp(.7rem,.9vw,.85rem);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.14em}.keyboard-wrapper{position:relative;width:100%;flex:1 1 auto;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:stretch;align-items:stretch;align-content:stretch;gap:var(--space-sm);min-height:0;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.white-keys{position:relative;display:grid;grid-template-columns:repeat(11,1fr);width:100%;height:100%;min-height:clamp(120px,20vh,180px);grid-row:1;border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#ffffffeb,#d1dce5a6);box-shadow:inset 0 -14px 26px #1824302e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);gap:1px}.key-white{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:clamp(6px,1.3vw,12px);border:none;background:var(--color-key-white);color:var(--color-text-secondary);transition:transform .32s cubic-bezier(.22,.61,.36,1),box-shadow .32s cubic-bezier(.22,.61,.36,1),background-color .32s ease;border-radius:0 0 18px 18px;cursor:pointer;text-shadow:0 4px 12px rgba(24,36,48,.18);width:100%;min-width:0;min-height:100%}.key-white:last-child{border-right:none}.key-white:hover{transform:translateY(-2px) scaleY(1.02);box-shadow:0 16px 28px #0c182438}.key-white.active,.key-white[data-active=true]{background:var(--color-key-active);transform:translateY(6px) scaleY(.97);box-shadow:inset 0 -16px 26px #34567452,0 26px 40px #0c182442}.key-white:focus-visible{outline:3px solid var(--color-accent-sheen-strong);outline-offset:2px}.key-white .note-label,.key-white .key-label{position:absolute;font-size:clamp(.6rem,.8vw,.75rem);color:var(--color-text-secondary);opacity:.9;letter-spacing:.08em}.key-white .note-label{bottom:clamp(8px,1.6vw,14px);color:var(--color-text-primary);opacity:.95}.key-white .key-label{top:clamp(8px,1.2vw,12px);left:clamp(6px,1vw,10px);font-weight:300;opacity:.9}.black-keys-layer{position:absolute;inset:0;pointer-events:none;grid-row:1}.key-black{position:absolute;top:0;pointer-events:auto;margin-top:clamp(8px,1.5vw,12px);background:var(--color-key-black);border-radius:0 0 14px 14px;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 -6px 14px #081018a6,0 20px 36px #0810188c;color:#f8fafbd9;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:var(--space-xs);transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s cubic-bezier(.22,.61,.36,1),background-color .28s ease;transform:translate(-50%);cursor:pointer;min-width:clamp(24px,4vw,48px);min-height:clamp(44px,8vh,80px);z-index:2}.key-black:hover{transform:translate(-50%) translateY(-2px) scale(1.02);box-shadow:inset 0 -6px 16px #081018b3,0 28px 40px #08101899}.key-black.active,.key-black[data-active=true]{background:var(--color-key-black-active);transform:translate(-50%) translateY(5px) scale(.98);box-shadow:inset 0 -10px 18px #081018bf,0 18px 28px #0810188c}.key-black:focus-visible{outline:3px solid var(--color-accent-sheen-strong);outline-offset:2px}.key-black .note-label,.key-black .key-label{position:absolute;font-size:clamp(.55rem,.75vw,.7rem);opacity:.88}.key-black .note-label{bottom:clamp(6px,1.4vw,12px);font-weight:400;opacity:.92}.key-black .key-label{top:clamp(6px,1.2vw,10px);left:50%;transform:translate(-50%);font-weight:300;opacity:.88}.key-active-indicator{position:absolute;inset:6px;border-radius:inherit;background:linear-gradient(180deg,#ffffff40,#b8c6db2e);animation:notePulse 1.2s ease-in-out infinite;pointer-events:none;mix-blend-mode:screen}.keyboard-meta{grid-row:2;text-align:center;font-size:clamp(.65rem,1.4vw,.8rem);color:var(--color-text-tertiary);letter-spacing:.14em;text-transform:uppercase;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-small);background:#e8f0f51f;-webkit-backdrop-filter:blur(10px) brightness(1.05);backdrop-filter:blur(10px) brightness(1.05);box-shadow:0 12px 20px #101c2833;max-width:100%}.keyboard-loading{display:flex;align-items:center;justify-content:center;width:100%;border-radius:18px;background:#ffffff14;color:var(--color-text-secondary);font-size:clamp(.85rem,1vw,1rem);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-transform:uppercase;letter-spacing:.18em}.keyboard-hints{display:flex;justify-content:center;gap:var(--space-lg);font-size:clamp(.65rem,.8vw,.75rem);color:var(--color-text-tertiary);opacity:.7;letter-spacing:.1em;text-transform:uppercase}.keyboard-hint{display:inline-flex;gap:4px}.warmup-indicator{position:absolute;right:24px;bottom:24px;display:inline-flex;align-items:center;gap:12px;padding:12px 18px;border-radius:999px;background:#e8f0f53d;border:1px solid rgba(255,255,255,.2);color:var(--color-text-secondary);font-size:clamp(.72rem,.9vw,.85rem);letter-spacing:.14em;text-transform:uppercase;box-shadow:0 18px 32px #101c2852;-webkit-backdrop-filter:blur(12px) brightness(1.05);backdrop-filter:blur(12px) brightness(1.05);overflow:hidden}.warmup-indicator__pulse{width:8px;height:8px;border-radius:50%;background:var(--color-glimmer-one)}.controls-surface{position:relative;width:min(1200px,95vw);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--space-lg);padding:var(--space-lg);align-items:flex-start;border-radius:var(--radius-large);background:linear-gradient(210deg,var(--color-surface-intense) 0%,rgba(122,143,163,.14) 100%);border:var(--border-glass);-webkit-backdrop-filter:blur(var(--blur-overlay)) brightness(1.1);backdrop-filter:blur(var(--blur-overlay)) brightness(1.1);box-shadow:var(--shadow-floating);overflow:hidden}.controls-panel{display:flex;flex-direction:column;gap:var(--space-md);min-width:0}.controls-panel.wide{display:flex;flex-direction:column;gap:var(--space-md)}.controls-surface>.controls-panel:first-child{grid-column:1}.controls-surface>.controls-panel.wide{grid-column:2}.controls-heading{font-size:clamp(.9rem,1.1vw,1rem);font-weight:300;letter-spacing:.24em;text-transform:uppercase;color:var(--color-text-secondary)}.control-groups,.control-section{display:flex;flex-direction:column;gap:var(--space-md)}.slider-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.waveform-panel{gap:20px}.panel-subtitle{font-size:clamp(.75rem,.95vw,.85rem);color:var(--color-text-secondary);opacity:.9;letter-spacing:.06em}.waveform-grid{display:flex;flex-direction:column;gap:var(--space-sm)}.waveform-button{min-height:118px;text-align:left;padding:18px 20px;font-size:clamp(.85rem,1vw,.95rem);font-weight:300;letter-spacing:.14em;text-transform:uppercase;background-image:repeating-linear-gradient(180deg,#e8f0f542,#e8f0f50f,#7a8fa31f 48px);min-width:44px}.waveform-button.is-active{color:var(--color-text-primary);box-shadow:0 30px 50px #0c182452;border:1px solid rgba(255,255,255,.36);transform:translateY(-6px) scale(1.03)}.panel-footer{display:flex;flex-direction:column;gap:var(--space-sm)}.preset-manager{width:100%}.preset-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.preset-content{display:flex;flex-direction:column;gap:16px;animation:fadeIn .2s ease}.preset-message{padding:8px 12px;border-radius:var(--radius-small);font-size:.8rem;background:#ff6b351a;border-left:2px solid rgba(255,107,53,.5)}.preset-error{background:#ff6b351a;border-left-color:#ff6b3599;color:#ffc8b4}.preset-success{background:#00ff6614;border-left-color:#00ff6680;color:#b4ffd2}.preset-section{display:flex;flex-direction:column;gap:10px}.preset-section-title{font-size:.75rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-tertiary);opacity:.7}.preset-save-form{display:flex;gap:8px}.preset-input{flex:1;padding:8px 12px;border-radius:var(--radius-small);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--color-text-primary);font-size:.85rem;transition:all .2s ease}.preset-input:focus{outline:none;border-color:#ff6b354d;background:#ffffff0f}.preset-input::-moz-placeholder{color:var(--color-text-tertiary);opacity:.5}.preset-input::placeholder{color:var(--color-text-tertiary);opacity:.5}.preset-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;max-height:280px;overflow-y:auto;padding:2px}.preset-list::-webkit-scrollbar{width:4px}.preset-list::-webkit-scrollbar-track{background:transparent}.preset-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.preset-list::-webkit-scrollbar-thumb:hover{background:#ffffff40}.preset-item{display:flex;flex-direction:column;padding:8px;border-radius:0;background:#ffffff05;border:1px solid rgba(255,255,255,.08);transition:all .12s ease;cursor:pointer;position:relative}.preset-item:hover{background:#ff6b350f;border-color:#ff6b3540}.preset-item-active{background:#ff6b351a;border-color:#ff6b3580;border-left-width:2px}.preset-item-info{flex:1;margin-bottom:6px}.preset-item-name{font-size:.8rem;font-weight:400;color:var(--color-text-primary);margin-bottom:3px;line-height:1.2}.preset-item-meta{font-size:.65rem;color:var(--color-text-tertiary);opacity:.5;text-transform:uppercase;letter-spacing:.08em}.preset-item-actions{display:flex;gap:4px;margin-top:auto}.preset-action-btn{flex:1;padding:5px 6px;border-radius:0;font-size:.65rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;transition:all .12s ease;border:1px solid;background:transparent}.preset-load-btn{border-color:#ff6b3540;color:#ffa078d9}.preset-load-btn:hover{background:#ff6b351f;border-color:#ff6b3566;color:#ffb48c}.preset-delete-btn{flex:.4;border-color:#ffffff14;color:#ffffff59}.preset-delete-btn:hover{background:#ff32321a;border-color:#ff50504d;color:#ff7878e6}.preset-empty{grid-column:1 / -1;text-align:center;padding:32px 16px;color:var(--color-text-tertiary);font-size:.85rem;opacity:.5}.wave-candy,.keyboard-surface,.controls-surface{width:min(1200px,95vw)}.wave-candy{gap:var(--space-sm);padding:var(--space-md)}.wave-candy--raylib{height:var(--wave-candy-height);min-height:var(--wave-candy-height);padding:var(--space-sm)}.wave-candy-gear{position:absolute;top:10px;right:12px;font-size:.85rem;line-height:1;padding:6px;border-radius:8px;border:1px solid rgba(150,170,190,.35);color:#d2dce6d9;background:#080c1299;text-shadow:0 0 8px rgba(10,18,28,.6);transition:color .16s ease,border-color .16s ease,background .16s ease}.wave-candy-gear:hover:not(:disabled){color:#f6c484f2;border-color:#f6ba7899;background:#0a121ccc}.wave-candy-gear[aria-pressed=true]{color:#a0dcfff2;border-color:#78c8ff99;background:#0c1622d9}.wave-candy-gear:disabled{opacity:.5;cursor:not-allowed}.wave-candy__viewport{flex:1 1 auto;min-height:0;width:100%;height:100%}.wave-candy__canvas{display:block;width:100%;height:100%;border-radius:12px;background:#06090ee6}.wave-candy-grid{display:grid;grid-template-columns:minmax(160px,1.1fr) minmax(200px,1.5fr) minmax(80px,.55fr) minmax(160px,1fr) minmax(180px,1.1fr);grid-auto-rows:150px;gap:var(--space-sm);align-items:stretch}.candy-tile{display:flex;flex-direction:column;gap:6px;padding:10px;min-height:140px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:#070b12a6;box-shadow:inset 0 0 18px #04080e8c}.candy-meter{min-width:90px}.candy-label{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--color-text-secondary)}.candy-canvas{width:100%;flex:1 1 auto;min-height:0;border-radius:10px;background:#06090ee6}.shortcuts-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:clamp(32px,6vw,64px);background:#10182473;-webkit-backdrop-filter:blur(20px) brightness(.95);backdrop-filter:blur(20px) brightness(.95);z-index:40;animation:dissolveIn var(--transition-dissolve) forwards}.shortcuts-card{width:min(520px,100%);display:flex;flex-direction:column;gap:clamp(24px,3vw,32px);border-radius:var(--radius-medium);background:linear-gradient(210deg,#e8f0f552,#b8c6db2e);border:var(--border-glass);-webkit-backdrop-filter:blur(var(--blur-overlay)) brightness(1.08);backdrop-filter:blur(var(--blur-overlay)) brightness(1.08);box-shadow:var(--shadow-floating);padding:clamp(28px,4vw,36px);position:relative;overflow:hidden}.shortcuts-header{display:flex;align-items:center;justify-content:space-between;font-size:clamp(1rem,1.2vw,1.15rem);font-weight:300;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-secondary)}.shortcuts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;font-size:clamp(.78rem,.95vw,.9rem);color:var(--color-text-secondary)}.shortcuts-grid dt{font-weight:400;color:var(--color-text-primary);letter-spacing:.12em;text-transform:uppercase}.shortcuts-grid dd{margin:6px 0 0;color:var(--color-text-secondary);opacity:.92}.error-boundary-container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:clamp(32px,6vw,64px);background:linear-gradient(180deg,var(--color-bg-sky) 0%,var(--color-bg-deep) 100%);z-index:50}.error-boundary-card{width:min(600px,100%);display:flex;flex-direction:column;gap:clamp(24px,3vw,32px);border-radius:var(--radius-medium);background:linear-gradient(210deg,#e8f0f552,#b8c6db2e);border:var(--border-glass);-webkit-backdrop-filter:blur(var(--blur-overlay)) brightness(1.08);backdrop-filter:blur(var(--blur-overlay)) brightness(1.08);box-shadow:var(--shadow-floating);padding:clamp(28px,4vw,36px);position:relative;overflow:hidden}.error-boundary-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.error-boundary-header h1{font-size:clamp(1.2rem,1.5vw,1.4rem);margin:0}.error-badge{padding:8px 16px;border-radius:999px;background:#ff6b3533;color:#ff6b35;font-size:clamp(.7rem,.9vw,.8rem);letter-spacing:.12em;text-transform:uppercase;font-weight:400}.error-boundary-content{display:flex;flex-direction:column;gap:20px}.error-message{font-size:clamp(.85rem,1vw,.95rem);line-height:1.6;color:var(--color-text-secondary)}.error-details{background:#ffffff0d;border-radius:var(--radius-small);padding:16px;border:1px solid rgba(255,255,255,.1)}.error-details summary{cursor:pointer;font-weight:400;letter-spacing:.08em;text-transform:uppercase;font-size:clamp(.75rem,.9vw,.85rem);color:var(--color-text-secondary);margin-bottom:12px}.error-stack{margin:12px 0 0;padding:16px;background:#00000026;border-radius:8px;overflow-x:auto;font-size:clamp(.7rem,.85vw,.8rem);line-height:1.5;color:#f8fafbe6;font-family:Courier New,monospace}.error-boundary-actions{display:flex;gap:16px;align-items:center;justify-content:flex-start}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes dissolveIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes notePulse{0%,to{opacity:.8}50%{opacity:.4}}@media (max-width: 1200px){.app-shell{width:min(100%,1100px);padding:var(--space-xl) var(--space-lg) var(--space-2xl);gap:var(--space-lg)}.zone-top{width:min(640px,100%)}.zone-center,.zone-bottom,.wave-candy,.keyboard-surface,.controls-surface{width:min(100%,96vw)}}@media (max-width: 900px){:root{--wave-candy-height: clamp(140px, 24vh, 190px)}.app-shell{width:100%;max-width:none;padding:max(12px,calc(env(safe-area-inset-top,0px) + 8px)) var(--space-sm) calc(88px + env(safe-area-inset-bottom,0px));gap:var(--space-md)}.zone-top,.zone-center,.zone-bottom,.wave-candy,.keyboard-surface,.controls-surface{width:100%;max-width:100%}.zone-top{padding:12px 14px;gap:10px;border-radius:12px}.brand-title{font-size:1rem;letter-spacing:.12em}.header-controls{gap:6px;flex-wrap:wrap;justify-content:flex-end}.header-controls .button-icon{width:40px;height:40px;font-size:1rem}.zone-center{gap:var(--space-md);padding:0}.zone-bottom{padding-bottom:0}.wave-candy{padding:10px}.wave-candy--raylib{height:var(--wave-candy-height);min-height:var(--wave-candy-height)}.wave-candy-gear{top:8px;right:8px;font-size:.76rem}.keyboard-surface{min-height:240px;max-height:none;padding:12px;gap:10px;border-radius:12px}.keyboard-header{flex-wrap:wrap;row-gap:6px;-moz-column-gap:10px;column-gap:10px;font-size:.72rem;letter-spacing:.1em}.keyboard-legend{font-size:.63rem;letter-spacing:.08em}.keyboard-region{gap:8px}.white-keys{min-height:clamp(110px,28vw,145px)}.key-white .note-label,.key-white .key-label{font-size:clamp(.48rem,1.7vw,.62rem)}.key-black{margin-top:6px;min-width:clamp(19px,5vw,30px);min-height:clamp(40px,13vw,64px);border-radius:0 0 10px 10px}.keyboard-meta{font-size:.62rem;letter-spacing:.1em;padding:4px 8px}.keyboard-hints{gap:8px;font-size:.56rem;letter-spacing:.06em;flex-wrap:wrap;justify-content:flex-start;opacity:.65}.warmup-indicator{position:static;max-width:100%;width:-moz-fit-content;width:fit-content;padding:8px 10px;gap:8px;font-size:.6rem;letter-spacing:.08em;box-shadow:none}.controls-surface{padding:12px;grid-template-columns:1fr;gap:12px;border-radius:12px}.controls-panel,.controls-panel.wide{gap:12px}.panel{padding:12px;gap:12px;border-radius:12px}.controls-heading{font-size:.78rem;letter-spacing:.12em}.label-stack{gap:8px;align-items:center}.slider-group{gap:8px}.slider-grid{grid-template-columns:1fr}.slider-description{font-size:.68rem;letter-spacing:.02em}.toggle-row{font-size:.68rem;letter-spacing:.05em}.waveform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.waveform-button{min-height:72px;padding:12px;font-size:.72rem;letter-spacing:.1em}.waveform-button.is-active{transform:none}.panel-footer{flex-direction:column}.shortcuts-overlay{padding:16px}.shortcuts-card{padding:16px;gap:16px}.shortcuts-grid{grid-template-columns:1fr;gap:10px}}@media (max-width: 700px){.zone-top{flex-wrap:wrap;justify-content:center}.brand-title{width:100%;text-align:center}.header-controls{width:100%;justify-content:center}.keyboard-hints{display:none}.waveform-grid{grid-template-columns:1fr}}@media (max-width: 520px){.app-shell{padding-right:8px;padding-left:8px;padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}.zone-top{padding:10px 12px}.brand-title{font-size:.92rem;letter-spacing:.1em}.header-controls .button-icon{width:38px;height:38px}.wave-candy--raylib{height:clamp(120px,22vh,160px);min-height:clamp(120px,22vh,160px)}.keyboard-surface{padding:10px;border-radius:10px}.keyboard-header{font-size:.68rem;letter-spacing:.08em}.keyboard-legend{font-size:.58rem}.white-keys{border-radius:12px}.key-black{min-width:clamp(17px,5.5vw,24px);min-height:clamp(34px,14vw,50px)}.controls-surface{padding:10px;gap:10px}.panel{padding:10px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
 */*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.block{display:block}.table{display:table}.hidden{display:none}.resize{resize:both}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}
