:root{--bg:#07090e;--panel:#0e1118;--text:#f6f2ea;--muted:#9499a6;--line:#222734;--gold:#e9b56a;--violet:#7768ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 0,#14132a 0,transparent 35%),var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.grain{position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:42px 42px}.topbar{position:sticky;top:0;z-index:40;height:74px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(7,9,14,.74);border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(24px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:12px}.brand strong,.brand em{display:block}.brand strong{letter-spacing:.18em;font-size:14px}.brand em{font-style:normal;color:var(--muted);letter-spacing:.34em;font-size:9px}.topbar nav{display:flex;gap:26px;color:#bec1c9;font-size:13px}.top-actions{display:flex;gap:8px}.ghost-btn,.secondary-btn{background:transparent;color:#e4e1da;border:1px solid var(--line);border-radius:999px;padding:11px 15px;font-size:11px;letter-spacing:.12em}.ghost-btn.hot{border-color:#5a527e}.hero{min-height:720px;padding:84px 7vw 70px;display:grid;grid-template-columns:1.08fr .92fr;gap:5vw;align-items:center}.eyebrow{margin:0;color:#c6a56f;font-size:11px;letter-spacing:.2em;text-transform:uppercase}.hero h1{font:500 clamp(58px,7vw,106px)/.91 Georgia,serif;letter-spacing:-.055em;margin:18px 0 28px}.hero h1 span{font-style:italic;color:#e1c39b}.lead{max-width:650px;color:#a5a9b4;font-size:18px;line-height:1.7}.hero-actions{display:flex;gap:12px;margin-top:32px}.primary-btn{border:0;border-radius:999px;background:#f3efe7;color:#11141b;padding:15px 21px;font-weight:800}.secondary-btn{display:inline-block;padding:14px 21px}.hero-stats{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;color:#777d89;font-size:11px;letter-spacing:.08em}.hero-stats b{color:#ddd7cd}.hero-art-wrap{background:none;border:0;padding:0;justify-self:end;width:min(100%,560px);border-radius:38px}.hero-art{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:38px;box-shadow:0 50px 120px rgba(0,0,0,.52);transition:transform .35s ease}.hero-art-wrap:hover .hero-art{transform:scale(1.015)}.statement{margin:0 7vw;padding:30px 0 56px;border-top:1px solid var(--line);display:grid;grid-template-columns:80px 1fr;gap:20px}.statement span{color:#757b87}.statement p{margin:0;max-width:1050px;font:30px/1.35 Georgia,serif;color:#d5d2cc}.section{padding:84px 7vw}.section.compact{padding-top:52px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:28px}.section-head h2{font:500 50px/1 Georgia,serif;margin:8px 0 0}.catalog-tools{display:flex;gap:8px}.catalog-tools input,.catalog-tools select{background:#0e1118;border:1px solid var(--line);color:#ddd;border-radius:999px;padding:11px 14px;outline:none}.catalog-tools input{width:240px}.catalog-grid{display:grid;gap:14px}.release-card{display:grid;grid-template-columns:124px 1fr auto;gap:24px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(120deg,rgba(255,255,255,.05),rgba(255,255,255,.018));transition:.2s}.release-card:hover{transform:translateY(-2px);border-color:#343b4d}.release-cover{width:124px;aspect-ratio:1;border-radius:17px;object-fit:cover}.release-meta h3{font:500 28px/1.1 Georgia,serif;margin:7px 0}.release-meta>p:not(.eyebrow){color:#9ca1ad;margin:0 0 12px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chips span{font-size:10px;color:#a9adb8;border:1px solid #2b3140;border-radius:999px;padding:6px 9px}.card-actions{display:flex;align-items:center;gap:10px}.fav-card,.favorite-btn,.round-play,.icon-btn,.play-main,.escape-play,.close-escape{border:0;color:#fff;background:transparent}.fav-card,.favorite-btn{font-size:24px}.round-play,.play-main,.escape-play{border-radius:50%;background:#f2eee7;color:#12151c;font-weight:900}.round-play{width:48px;height:48px}.queue-list{border-top:1px solid var(--line)}.queue-row{width:100%;display:grid;grid-template-columns:50px 1fr 1fr 80px;gap:16px;align-items:center;text-align:left;padding:15px 4px;background:transparent;color:#dcdde3;border:0;border-bottom:1px solid var(--line)}.queue-row span,.queue-row small{color:#6f7582}.queue-row em{font-style:normal;color:#969ca8}.queue-row.active b{color:var(--gold)}.lyrics-section{padding-bottom:180px}.lyrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lyrics-grid p{white-space:pre-line;margin:0;padding:24px;background:#0d1016;border:1px solid var(--line);border-radius:20px;font:22px/1.65 Georgia,serif;color:#d9d6d0}.player-shell{position:fixed;z-index:70;left:50%;bottom:14px;transform:translateX(-50%);width:min(1180px,94vw);height:78px;display:grid;grid-template-columns:48px minmax(180px,1fr) 44px 54px 44px 46px minmax(120px,1.2fr) 46px 44px 92px 54px;gap:10px;align-items:center;padding:10px 13px;background:rgba(13,16,23,.92);border:1px solid #2a3040;border-radius:22px;backdrop-filter:blur(24px);box-shadow:0 20px 80px rgba(0,0,0,.45)}.player-cover{width:48px;height:48px;border-radius:11px;object-fit:cover}.player-track{min-width:0}.player-track strong,.player-track span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-track strong{font-size:13px}.player-track span{font-size:11px;color:#8d93a0;margin-top:4px}.icon-btn{font-size:16px}.play-main{width:48px;height:48px}.time{font-size:10px;color:#8d93a0}.seek,.volume,.escape-controls input{accent-color:#e7b36a;width:100%}.escape-mini{border:1px solid #383e4d;background:transparent;color:#dcdde2;border-radius:999px;padding:8px;font-size:10px}.escape{position:fixed;z-index:100;inset:0;display:none;background:#05070b;overflow:hidden}.escape.open{display:block}.escape-cover{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;filter:blur(28px) saturate(1.15);opacity:.55;transform:scale(1.04)}.escape-shade{position:absolute;inset:0;background:radial-gradient(circle at 68% 42%,transparent 0,rgba(5,7,11,.22) 34%,rgba(5,7,11,.86) 82%)}#visualizer{position:absolute;inset:0;width:100%;height:100%;opacity:.8}.escape-content{position:absolute;z-index:3;left:8vw;right:8vw;bottom:9vh;max-width:920px}.escape-content>p{color:#cfac74;letter-spacing:.22em;font-size:11px}.escape-content h2{font:500 clamp(54px,8vw,118px)/.88 Georgia,serif;letter-spacing:-.05em;margin:12px 0 18px}.escape-line{width:120px;height:1px;background:#d4ae76;margin:24px 0}.escape-content blockquote{margin:0 0 28px;font:italic 20px/1.5 Georgia,serif;color:#d2d0cb}.escape-controls{display:grid;grid-template-columns:56px 42px minmax(180px,1fr) 42px;gap:12px;align-items:center;max-width:720px}.escape-play{width:54px;height:54px}.escape-quality{margin-top:17px;font-size:10px;letter-spacing:.14em;color:#a7acb7}.close-escape{position:absolute;z-index:4;right:28px;top:22px;font-size:38px}.toast{position:fixed;z-index:130;left:50%;bottom:108px;transform:translate(-50%,15px);opacity:0;padding:10px 15px;border-radius:999px;background:#171b24;border:1px solid #343b4c;color:#eee;transition:.2s;font-size:12px;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}footer{display:flex;justify-content:space-between;padding:30px 7vw 120px;color:#666d79;font-size:10px;letter-spacing:.12em}.empty{color:#747a86;padding:20px 0}@media(max-width:900px){.topbar nav{display:none}.top-actions #searchBtn{display:none}.hero{grid-template-columns:1fr;padding-top:52px}.hero-art-wrap{justify-self:center}.statement{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.catalog-tools{width:100%}.catalog-tools input{width:100%}.release-card{grid-template-columns:82px 1fr auto;gap:14px}.release-cover{width:82px}.release-meta h3{font-size:22px}.lyrics-grid{grid-template-columns:1fr}.queue-row{grid-template-columns:40px 1fr auto}.queue-row em{display:none}.player-shell{grid-template-columns:46px 1fr 50px auto;height:70px}.player-shell>*:nth-child(n+5){display:none}.escape-mini{display:none}.escape-content{left:6vw;right:6vw}.escape-content h2{font-size:56px}.escape-controls{grid-template-columns:54px 1fr}.escape-controls span,.escape-controls input{display:none}}
/* v0.4 enhancements */
.quality-badge{font-size:9px;letter-spacing:.16em;color:#f0c27f;border:1px solid #5a472e;background:rgba(232,174,93,.08);border-radius:999px;padding:8px 10px}.hero-release{display:flex;flex-direction:column;gap:4px;margin:20px 0 0;color:#a8aebb}.hero-release span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#d6a965}.hero-release strong{font:500 21px/1.2 Georgia,serif;color:#f0eee9}.cover-wrap{position:relative;width:124px}.availability{position:absolute;left:8px;bottom:8px;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800;letter-spacing:.08em;backdrop-filter:blur(10px)}.availability.ready{background:rgba(10,23,17,.76);border:1px solid rgba(91,195,130,.35);color:#8ee4ac}.availability.missing{background:rgba(36,15,15,.8);border:1px solid rgba(220,92,92,.35);color:#f2a4a4}.release-card.missing{opacity:.62}.round-play:disabled,.queue-row:disabled{cursor:not-allowed;opacity:.35}.cover-error{background:linear-gradient(135deg,#191d27,#0d1017);color:transparent}.player-track i{display:block;font-style:normal;font-size:8px;letter-spacing:.14em;color:#c79a5c;margin-top:4px}.seek-wrap{position:relative;height:22px;display:flex;align-items:center}.seek-wrap:before{content:"";position:absolute;left:0;right:0;top:10px;height:3px;background:#282e3b;border-radius:999px}.buffer-fill,.progress-fill{position:absolute;left:0;top:10px;height:3px;border-radius:999px;pointer-events:none}.buffer-fill{background:#4b5364;width:0}.progress-fill{background:#e5b36d;width:0}.seek-wrap .seek{position:relative;z-index:3;background:transparent}.hero-art{box-shadow:0 35px 100px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.07)}
@media(max-width:900px){.quality-badge{display:none}.cover-wrap{width:82px}}

/* v0.6 ESCAPE transport controls */
.escape-transport{display:flex;align-items:center;gap:12px;margin:4px 0 16px}.escape-icon,.escape-repeat{border:1px solid rgba(255,255,255,.16);background:rgba(9,12,18,.46);color:#f4efe7;backdrop-filter:blur(12px);transition:.18s ease}.escape-icon{width:48px;height:48px;border-radius:50%;font-size:17px}.escape-icon:hover,.escape-repeat:hover{border-color:rgba(231,179,106,.62);background:rgba(231,179,106,.08);transform:translateY(-1px)}.escape-play{width:62px;height:62px;font-size:18px;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 10px 40px rgba(0,0,0,.25)}.escape-repeat{height:46px;min-width:72px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 13px}.escape-repeat .repeat-symbol{font-size:19px;line-height:1}.escape-repeat small{font-size:8px;letter-spacing:.16em;color:#aeb3bf}.escape-repeat.active{border-color:#b9894b;background:rgba(231,179,106,.12);color:#f1be78}.escape-repeat.active small{color:#e9bd80}.escape-controls{grid-template-columns:42px minmax(180px,1fr) 42px;max-width:760px}.escape-status-row{display:flex;align-items:center;gap:16px;margin-top:14px}.escape-quality{margin-top:0}.escape-track-counter{font-size:9px;letter-spacing:.13em;color:#7f8694;border-left:1px solid rgba(255,255,255,.12);padding-left:16px}.escape-transport button{cursor:pointer}.escape-transport button:focus-visible{outline:2px solid #e7b36a;outline-offset:3px}
@media(max-width:900px){.escape-transport{gap:9px}.escape-icon{width:44px;height:44px}.escape-play{width:58px;height:58px}.escape-repeat{min-width:66px;padding:0 10px}.escape-controls{display:grid;grid-template-columns:38px minmax(100px,1fr) 38px}.escape-controls span,.escape-controls input{display:block}.escape-content{bottom:6vh}.escape-content blockquote{display:none}}


/* v0.6 — ESCAPE MODE auto-hiding tool layer */
.escape-tool-reveal{position:absolute;z-index:8;right:30px;bottom:28px;width:52px;height:52px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;background:rgba(7,9,14,.42);color:#f2c27d;font:700 25px/1 Georgia,serif;backdrop-filter:blur(16px);box-shadow:0 12px 40px rgba(0,0,0,.28);cursor:default;transition:.25s ease;user-select:none}
.escape-tool-reveal:hover{transform:scale(1.07);border-color:rgba(242,194,125,.72);background:rgba(231,179,106,.11);box-shadow:0 0 0 6px rgba(231,179,106,.045),0 14px 45px rgba(0,0,0,.34)}
.escape-tool-layer{position:absolute;z-index:7;inset:0;opacity:1;visibility:visible;transition:opacity .55s ease,visibility .55s ease;pointer-events:none}
.escape-tool-layer .escape-content,.escape-tool-layer .close-escape{pointer-events:auto}
.escape.tools-hidden .escape-tool-layer{opacity:0;visibility:hidden}
.escape.tools-hidden .escape-tool-layer *{pointer-events:none!important}
.escape-tool-reveal::after{content:'CONTROLS';position:absolute;right:61px;top:50%;transform:translateY(-50%) translateX(8px);opacity:0;white-space:nowrap;font:700 8px/1 Inter,system-ui,sans-serif;letter-spacing:.18em;color:#d8b178;transition:.22s ease}
.escape-tool-reveal:hover::after{opacity:.86;transform:translateY(-50%) translateX(0)}
.escape:not(.tools-hidden) .escape-tool-reveal{opacity:.28}
.escape:not(.tools-hidden) .escape-tool-reveal:hover{opacity:1}
@media(max-width:900px){.escape-tool-reveal{right:18px;bottom:18px;width:48px;height:48px;font-size:23px}.escape-tool-reveal::after{display:none}}

/* v0.7 — real master metadata + library refresh */
.library-overview{margin:0 7vw 12px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.025)}
.library-overview>div{padding:22px 24px;min-height:112px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.library-overview>div:last-child{border-right:0}.library-overview span{font-size:9px;letter-spacing:.2em;color:#a77d4b}.library-overview strong{font:500 30px/1.1 Georgia,serif;margin:7px 0 3px;color:#f2eee7}.library-overview small{font-size:10px;color:#727987;letter-spacing:.06em}
.catalog-tools select#sortSelect{min-width:155px}.release-card{position:relative;overflow:hidden}.release-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(232,176,99,.045),transparent 33%);opacity:0;transition:.25s}.release-card:hover:before{opacity:1}.master-row{display:flex;align-items:center;gap:10px;margin:12px 0 8px;flex-wrap:wrap}.master-badge{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;border:1px solid #374054;color:#c7ccd6;background:#10141d}.master-badge.studio{border-color:rgba(230,172,91,.46);color:#f0c17e;background:rgba(230,172,91,.08)}.master-badge.lossless{border-color:rgba(86,174,128,.4);color:#9bddb6;background:rgba(86,174,128,.07)}.master-badge.missing{color:#e9a3a3;border-color:rgba(220,92,92,.35)}.tech-note{font-size:9px;color:#747c8b;letter-spacing:.07em}.player-track small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px;letter-spacing:.09em;color:#8b7355;margin-top:3px}.player-track i{margin-top:2px}.release-meta .chips{margin-top:5px}
@media(max-width:900px){.library-overview{grid-template-columns:1fr 1fr;margin:0 6vw}.library-overview>div{border-bottom:1px solid var(--line)}.library-overview>div:nth-child(2){border-right:0}.catalog-tools{flex-wrap:wrap}.catalog-tools select{flex:1}.master-row{gap:6px}}

/* v0.8 — ESCAPE MODE reliable recovery controls */
.escape-tool-reveal{
  z-index:50!important;
  pointer-events:auto!important;
  border:1px solid rgba(255,255,255,.24);
  outline:none;
  appearance:none;
}
.escape.tools-hidden .escape-tool-reveal{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  box-shadow:0 0 0 5px rgba(231,179,106,.055),0 14px 48px rgba(0,0,0,.42);
}
.escape-exit-fixed{
  z-index:55!important;
  position:absolute!important;
  top:22px!important;
  right:28px!important;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:50%;
  background:rgba(7,9,14,.42)!important;
  color:#f4efe7!important;
  font-size:32px!important;
  line-height:1!important;
  backdrop-filter:blur(14px);
  opacity:.82;
  transition:.2s ease;
  pointer-events:auto!important;
}
.escape-exit-fixed:hover{opacity:1;border-color:rgba(242,194,125,.7)!important;background:rgba(231,179,106,.11)!important;transform:scale(1.05)}
.escape.tools-hidden .escape-exit-fixed{opacity:.72!important;visibility:visible!important;pointer-events:auto!important}
.escape-tool-layer{z-index:20!important}
.escape-tool-layer .escape-content{pointer-events:auto}
@media(max-width:900px){.escape-exit-fixed{top:16px!important;right:16px!important;width:44px;height:44px;font-size:29px!important}}

/* v0.9 — click-to-lock ESCAPE controls */
.escape-tool-reveal{cursor:pointer!important}
.escape:not(.tools-hidden) .escape-tool-reveal{opacity:.72!important}
.escape:not(.tools-hidden) .escape-tool-reveal::after{content:'HIDE CONTROLS'}
.escape.tools-hidden .escape-tool-reveal::after{content:'SHOW CONTROLS'}


/* v1.0 — ESCAPE identity stays visible; only transport tools hide */
.escape-content{z-index:21!important;pointer-events:none}
.escape-identity{position:relative;z-index:22;pointer-events:none;opacity:1!important;visibility:visible!important;transition:none!important}
.escape-identity p,.escape-identity h2,.escape-identity blockquote,.escape-identity .escape-line{opacity:1!important;visibility:visible!important}
.escape-tool-layer{position:relative!important;z-index:23!important;inset:auto!important;max-width:760px;opacity:1;visibility:visible;pointer-events:auto!important;transition:opacity .42s ease,transform .42s ease,visibility .42s ease;transform:translateY(0)}
.escape-tool-layer *{pointer-events:auto}
.escape.tools-hidden .escape-tool-layer{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(10px)}
.escape.tools-hidden .escape-tool-layer *{pointer-events:none!important}
.escape.tools-hidden .escape-identity,.escape.tools-hidden .escape-identity *{opacity:1!important;visibility:visible!important}
.escape-tool-reveal{z-index:60!important}
.escape-exit-fixed{z-index:61!important}
@media(max-width:900px){.escape-identity blockquote{display:block!important;font-size:16px}.escape-tool-layer{max-width:100%}}
