:root{--bg: #0c0e13;--bg-raised: rgba(16, 18, 24, .78);--ink: #f3efe6;--ink-soft: #b7b1a6;--red: #c15c5c;--red-rgb: 193, 92, 92;--line: rgba(243, 239, 230, .14);--line-strong: rgba(243, 239, 230, .28);--radius: 2px;--font-ui: "Sora", "Avenir Next", "Segoe UI", sans-serif;--font-text: "Newsreader", "Iowan Old Style", Palatino, serif;--nav-height: 58px;--ease: .22s ease}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-weight:400}#root{min-height:100%}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}::selection{background:rgba(var(--red-rgb),.35);color:#fff}:focus-visible{outline:2px solid var(--red);outline-offset:3px}a{text-decoration:none;color:inherit}button,input{font-family:inherit}.site{min-height:100vh;display:flex;flex-direction:column;position:relative}.site.fill{height:100vh;overflow:hidden}.atmosphere{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--bg)}.atmosphere-photo{position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;background:url(/assets/images/background.jpg) center / cover no-repeat;filter:saturate(.55) brightness(.42) contrast(1.05);transform:scale(1.03)}.atmosphere-grade{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 78% -10%,rgba(255,186,130,.22),transparent 42%),radial-gradient(ellipse at 50% 115%,rgba(var(--red-rgb),.14),transparent 46%),linear-gradient(180deg,#0a0c128c,#0a0c12c7 38%,#0a0c12eb)}.atmosphere-haze{position:absolute;width:70vw;height:55vh;left:8%;top:-18%;background:radial-gradient(circle,rgba(255,196,150,.28) 0%,rgba(var(--red-rgb),.06) 42%,transparent 70%);filter:blur(6px);animation:haze-drift 36s ease-in-out infinite}.site>:not(.atmosphere){position:relative;z-index:1}.navbar{position:fixed;top:0;left:0;right:0;height:var(--nav-height);display:flex;align-items:center;justify-content:center;gap:4px;padding:0 20px;background:#0c0e13b8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);z-index:10}.navbar a{position:relative;color:var(--ink-soft);font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;padding:10px 16px;border-radius:var(--radius);transition:color var(--ease)}.navbar a:after{content:"";position:absolute;left:16px;right:16px;bottom:6px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform var(--ease)}.navbar a.active,.navbar a:hover{color:var(--ink);background:transparent}.navbar a.active:after,.navbar a:hover:after{transform:scaleX(1)}.hero{display:flex;justify-content:center;align-items:center;padding:calc(var(--nav-height) + 48px) 24px 8px;animation:rise .8s ease both}.hero-logo{width:100%;max-width:440px;height:auto;filter:drop-shadow(0 18px 28px rgba(0,0,0,.45))}.container{width:100%;max-width:1080px;margin:0 auto;padding:28px 24px 72px;flex:1;animation:rise .9s ease .05s both}.site.fill .container{padding-top:calc(var(--nav-height) + 16px);padding-bottom:16px;min-height:0;display:flex;flex-direction:column;animation:none}.intro{max-width:40rem;margin:8px auto 28px;text-align:center;color:var(--ink-soft);font-family:var(--font-ui);font-size:.98rem;font-weight:400;letter-spacing:.01em;line-height:1.6}.intro a{color:var(--red);font-weight:500;text-decoration:underline;text-underline-offset:3px}.intro a:hover{color:var(--ink)}.song-search{position:relative;display:flex;align-items:center;gap:2px;max-width:640px;margin:0 auto 32px;width:100%;padding:2px 6px 2px 4px;border-radius:var(--radius);background:var(--bg-raised);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);transition:border-color var(--ease)}.song-search:focus-within{border-color:rgba(var(--red-rgb),.85)}.song-search-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;color:var(--ink-soft);transition:color var(--ease)}.song-search-icon svg{width:18px;height:18px;fill:currentColor}.song-search:focus-within .song-search-icon{color:var(--red)}.song-search-input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font-family:var(--font-ui);font-size:.95rem;font-weight:400;letter-spacing:.01em;padding:12px 8px 12px 0}.song-search-input::placeholder{color:#b7b1a6cc}.song-search-input:focus{outline:none}.song-search-input::-webkit-search-cancel-button,.song-search-input::-webkit-search-decoration,.song-search-input::-webkit-search-results-button,.song-search-input::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}.song-search-clear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;margin-right:2px;border:0;border-radius:var(--radius);background:transparent;color:var(--ink-soft);cursor:pointer;transition:color var(--ease),background var(--ease)}.song-search-clear svg{width:14px;height:14px;fill:currentColor}.song-search-clear:hover{color:var(--ink);background:rgba(var(--red-rgb),.16)}.player .song-search{margin:0 0 12px;max-width:none;flex-shrink:0}.section-header{display:flex;align-items:center;gap:12px;margin:40px 0 14px}.section-header:before{content:"";width:18px;height:1px;background:var(--red);flex-shrink:0}.section-header h2{margin:0;font-family:var(--font-ui);font-weight:500;font-size:.92rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.song-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;padding:0;margin:0;list-style:none}.tab-download{position:relative;overflow:hidden;width:100%;background:var(--bg-raised);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);padding:16px 18px;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;font-weight:400;font-size:.98rem;letter-spacing:.01em;cursor:pointer;color:var(--ink);gap:16px;transition:border-color var(--ease),background var(--ease)}.tab-download span{line-height:1.35}.tab-download:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 36%,rgba(243,239,230,.08) 50%,transparent 64%);transform:translate(-130%);pointer-events:none}.tab-download:hover{border-color:rgba(var(--red-rgb),.7);background:#1c1012b8;box-shadow:inset 2px 0 0 var(--red)}.tab-download:hover:after{transform:translate(130%);transition:transform .7s ease}.tab-download svg{width:20px;height:20px;fill:var(--ink-soft);flex-shrink:0;transition:fill var(--ease)}.tab-download:hover svg{fill:var(--red)}.gear-section{margin-bottom:28px}.gear-instruments-tagline{margin:0 0 12px;font-family:var(--font-ui);font-size:1.35rem;font-weight:500;letter-spacing:.01em;line-height:1.35;color:var(--ink)}.gear-instruments-tagline a{color:var(--red);font-weight:500;text-decoration:underline;text-underline-offset:3px}.gear-instruments-tagline a:hover{color:var(--ink)}.gear-intro{margin:0 0 18px}.gear-intro p,.gear-builder-link,.gear-card p{font-family:var(--font-ui);font-size:.98rem;color:var(--ink-soft);margin:0 0 6px;line-height:1.6}.gear-intro a,.gear-builder-link a,.gear-card a{color:var(--red);font-weight:500;text-decoration:underline;text-underline-offset:3px}.gear-intro a:hover,.gear-builder-link a:hover,.gear-card a:hover{color:var(--ink)}.carousel{outline:none;margin-bottom:8px}.carousel:focus-visible{outline:2px solid var(--red);outline-offset:4px}.carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:0;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{flex:0 0 100%;min-width:100%;scroll-snap-align:start}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px}.carousel-nav{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink);cursor:pointer;transition:color var(--ease),border-color var(--ease)}.carousel-nav svg{width:18px;height:18px;fill:currentColor}.carousel-nav:hover{color:var(--red);border-color:rgba(var(--red-rgb),.7)}.carousel-dots{display:flex;align-items:center;gap:8px}.carousel-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#f3efe647;cursor:pointer;transition:background var(--ease),transform var(--ease)}.carousel-dot.active{background:var(--red);transform:scale(1.15)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gear-card{position:relative;overflow:hidden;background:var(--bg-raised);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--radius);padding:20px 20px 18px;display:flex;flex-direction:column;gap:8px;min-height:100%}.gear-card h3{font-family:var(--font-ui);font-weight:500;color:var(--ink);margin:0 0 8px;font-size:1.05rem;letter-spacing:.03em;border-bottom:1px solid var(--line);padding-bottom:10px}.gear-card ul{padding-left:18px;margin:4px 0 0;color:var(--ink);font-family:var(--font-ui);font-size:.92rem}.gear-card li{margin-bottom:4px;line-height:1.45;color:var(--ink-soft)}.gear-instrument-slide{gap:18px}.gear-instrument-media,.gear-instrument-copy{min-width:0}.gear-instrument-media{display:flex;align-items:center;justify-content:center}.gear-instrument-media img{width:auto;max-width:100%;height:220px;object-fit:contain;margin:0 auto;border:0;background:transparent;display:block}.gear-simple-slide{min-height:140px;justify-content:center}.gear-simple-slide h3{margin-bottom:4px}.gear-simple-slide p{font-size:1.05rem;color:var(--ink)}@media(min-width:760px){.gear-instrument-slide{display:grid;grid-template-columns:minmax(140px,.42fr) minmax(0,1fr);align-items:center;gap:28px;padding:24px 28px}.gear-instrument-media{position:relative;width:100%;height:clamp(340px,48vh,480px);overflow:visible}.gear-instrument-media img{position:absolute;top:50%;left:50%;width:clamp(340px,48vh,480px);max-width:none;height:auto;margin:0;transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center center}}@media(prefers-reduced-motion:reduce){.carousel-track{scroll-behavior:auto}}.empty,.error{color:var(--ink-soft);font-family:var(--font-text);font-size:1.15rem;padding:24px 0;text-align:center}.error{color:var(--red)}.spinner{width:42px;height:42px;animation:rotate 1.6s linear infinite;display:block;margin:48px auto}.spinner .path{stroke:var(--ink);stroke-width:3;stroke-linecap:round;fill:none;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}@keyframes haze-drift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(12%,10%,0) scale(1.12)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.footer{text-align:center;padding:28px 24px 32px;border-top:1px solid var(--line);background:transparent}.social-icons{display:flex;justify-content:center;gap:28px}.social-icons a{color:var(--ink-soft);display:inline-flex;transition:color var(--ease)}.social-icons svg{width:22px;height:22px;fill:currentColor}.social-icons a:hover{color:var(--red)}.player{--player-text: 1rem;--player-text-sm: .85rem;--player-title: 1.05rem;display:flex;flex-direction:column;min-height:0;flex:1;position:relative;font-size:var(--player-text)}.track-list{flex:1;overflow-y:auto;min-height:0;padding-bottom:168px;scrollbar-width:thin;scrollbar-color:rgba(var(--red-rgb),.45) transparent}.track-row{width:100%;display:flex;align-items:center;gap:14px;padding:12px 14px;background:transparent;border:0;border-bottom:1px solid rgba(243,239,230,.06);color:var(--ink);cursor:pointer;text-align:left;font-size:var(--player-text);box-shadow:inset 2px 0 0 transparent;transition:background var(--ease),box-shadow var(--ease)}.track-row.selected{color:var(--ink);background:rgba(var(--red-rgb),.07);box-shadow:inset 2px 0 0 var(--red)}.track-row:hover{background:#f3efe60a}.play-badge{width:32px;height:32px;border-radius:50%;border:1px solid var(--line-strong);background:transparent;color:var(--ink-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--ease),border-color var(--ease),color var(--ease)}.track-row.selected .play-badge{background:var(--red);border-color:var(--red);color:#fff}.play-badge svg{width:14px;height:14px;fill:currentColor;margin-left:1px}.track-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);font-size:var(--player-text);font-weight:400;letter-spacing:.01em}.track-row>span:last-child{flex-shrink:0;font-size:var(--player-text-sm);color:var(--ink-soft);font-variant-numeric:tabular-nums;letter-spacing:.04em}.now-playing{position:absolute;left:0;right:0;bottom:0;background:#0c0e13e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:14px 16px 16px}.now-playing-title{text-align:center;font-family:var(--font-ui);font-size:var(--player-title);font-weight:500;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seek-row,.controls-row,.volume-row{display:flex;align-items:center;gap:8px}.seek-row{margin-top:10px}.controls-row{margin-top:4px;justify-content:center}.seek-row span{min-width:3rem;color:var(--ink-soft);font-size:var(--player-text-sm);font-variant-numeric:tabular-nums;text-align:center;letter-spacing:.04em}.volume-row{color:var(--ink-soft);font-size:var(--player-text-sm)}.seek-row input,.volume-row input{flex:1;accent-color:var(--red)}.icon-button{background:transparent;border:0;color:var(--ink);cursor:pointer;padding:8px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:color var(--ease)}.icon-button svg{width:22px;height:22px;fill:currentColor}.icon-button:hover,.icon-button.active{color:var(--red)}.icon-button.primary{color:var(--ink)}.icon-button.primary:hover{color:var(--red)}.icon-button.muted{color:var(--ink-soft)}.icon-button.primary svg{width:36px;height:36px}.volume-row{max-width:160px;margin-right:auto}.volume-row svg{width:18px;height:18px;fill:var(--ink-soft)}.play-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.play-wrap .spinner{width:36px;height:36px;margin:0;position:absolute}@media(max-width:600px){.navbar a{padding:10px 8px;font-size:.64rem;letter-spacing:.08em}.navbar a:after{left:8px;right:8px}.hero{padding-top:calc(var(--nav-height) + 28px)}.hero-logo{max-width:280px}.container{padding-left:16px;padding-right:16px}.section-header h2{letter-spacing:.1em;font-size:.82rem}.song-grid{grid-template-columns:1fr}.gear-instrument-media img{height:180px}.volume-row{display:none}.track-list{padding-bottom:156px}}@media(prefers-reduced-motion:reduce){.atmosphere-haze,.hero,.container,.tab-download:after,.gear-card:after{animation:none;transition:none}}
