.hero-player{position:relative}
.hero-player .visualizer-wrap{order:1;margin-bottom:10px}
.player-statusbar{order:1;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 4px 12px;color:#9eafd1;font-family:var(--mono);font-size:9px;letter-spacing:.9px;text-transform:uppercase}
.player-statusbar span:first-child{display:inline-flex;align-items:center;gap:7px}
.player-statusbar span:first-child:before{content:'';width:6px;height:6px;border-radius:50%;background:#7990bc;box-shadow:0 0 10px rgba(121,144,188,.4)}
.player-statusbar[data-state="ready"] span:first-child:before,.player-statusbar[data-state="playing"] span:first-child:before{background:var(--cyan);box-shadow:0 0 12px rgba(32,221,255,.8)}
.player-statusbar[data-state="loading"] span:first-child:before{background:#b4aaff;animation:playerPulse 1s ease-in-out infinite}
.player-statusbar[data-state="error"] span:first-child:before{background:#ff6f9f}
.shortcut-hint{color:#7181a7;font-size:8px;letter-spacing:.6px;text-transform:none}
.hero-player .player-controls{order:2;padding:9px 11px}
.hero-player .play-button{width:64px;height:64px;flex-basis:64px}
.hero-player .track-nav{min-width:154px;padding:9px 10px 9px 14px}
.hero-player .track-nav .skip-icon{width:34px;height:34px;flex-basis:34px}
.hero-player .hero-progress{order:3;position:relative;height:10px;margin:15px 3px 0;cursor:pointer;touch-action:none;transition:height .18s,box-shadow .18s}
.hero-player .hero-progress:after{content:'';position:absolute;top:50%;left:var(--progress,0%);width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),var(--pink));box-shadow:0 0 14px rgba(32,221,255,.5);transform:translate(-50%,-50%) scale(.72);opacity:0;transition:opacity .18s,transform .18s}
.hero-player .hero-progress:hover,.hero-player .hero-progress:focus-visible{height:12px;outline:none;box-shadow:0 0 0 3px rgba(32,221,255,.12),inset 0 1px 3px rgba(0,0,0,.3)}
.hero-player .hero-progress:hover:after,.hero-player .hero-progress:focus-visible:after{opacity:1;transform:translate(-50%,-50%) scale(1)}
.hero-player .time-row{order:4;font-size:10px}
.hero-player .player-audio-settings{order:5;width:100%;box-sizing:border-box;margin:14px 0 0;padding:10px 4px 0;border-top:1px solid rgba(137,180,255,.14)}
.hero-player .player-audio-settings summary{padding:3px 0;color:#b8c4e0;font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;list-style:none;cursor:pointer}
.hero-player .player-audio-settings summary::-webkit-details-marker{display:none}
.hero-player .player-audio-settings summary:after{content:'＋';float:right;color:var(--cyan);font-size:13px}
.hero-player .player-audio-settings[open] summary:after{content:'−'}
.hero-player .player-audio-settings[open]{padding-bottom:3px}
.player-audio-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}
.audio-mode{color:#8090b5;font-family:var(--mono);font-size:9px;letter-spacing:.6px;text-transform:uppercase}
.use-library-audio{padding:6px 9px;border:1px solid rgba(68,203,255,.28);border-radius:8px;background:rgba(32,221,255,.06);color:#b8c4e0;font-family:var(--mono);font-size:8px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.use-library-audio:hover,.use-library-audio:focus-visible{outline:none;border-color:var(--cyan);background:rgba(32,221,255,.12);color:var(--white)}
.use-library-audio:disabled{opacity:.48;cursor:default;border-color:rgba(137,180,255,.16);background:transparent}
.player-audio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}
.player-audio-grid label{display:grid;gap:7px;font-size:11px;color:#bcc7e1}
.player-audio-grid output{justify-self:end;margin-top:-20px;color:var(--cyan);font-family:var(--mono);font-size:10px}
.player-audio-grid input{width:100%;accent-color:var(--cyan);cursor:pointer}
.audio-preset>label{display:none}.audio-preset{gap:14px}.preset-indicators input:not(:disabled){cursor:pointer}.preset-indicators input:not(:disabled):focus{outline:1px solid var(--cyan);outline-offset:3px}
@keyframes playerPulse{50%{opacity:.35;transform:scale(.72)}}
@media(max-width:760px){.player-statusbar{margin-bottom:10px}.shortcut-hint{display:none}.hero-player .track-nav{min-width:132px}.hero-player .player-audio-settings{margin-top:12px;padding-top:9px}.player-audio-meta{align-items:flex-start;flex-direction:column}.use-library-audio{width:100%}.player-audio-grid{grid-template-columns:1fr;gap:10px}}
