:root{--bg:#07080a;--surface:#0e1013;--surface2:#13161a;--line:#24272d;--text:#f4f4f6;--muted:#8d929b;--accent:#bb1760;--accent2:#ef1680;--cyan:#0bc6dc;--yellow:#f0b323;--radius:7px;--shell:1440px}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(circle at 50% -10%,#211020 0,transparent 28rem),var(--bg);color:var(--text);font:14px/1.45 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input{font:inherit}.shell{width:min(calc(100% - 32px),var(--shell));margin-inline:auto}.skip-link{position:fixed;left:12px;top:-60px;z-index:100;background:#fff;color:#000;padding:10px}.skip-link:focus{top:12px}.site-header{position:relative;z-index:20;background:#08090c;border-bottom:1px solid #222}.header-top{min-height:88px;display:grid;grid-template-columns:270px minmax(280px,680px) 1fr;align-items:center;gap:32px}.brand{display:inline-flex;flex-direction:column;font-weight:800;letter-spacing:.3px}.brand span{font-size:25px;line-height:1}.brand b{color:var(--accent2)}.brand small{font-size:10px;letter-spacing:2px;margin-top:5px}.site-search{height:44px;border:1px solid #45404a;border-radius:5px;display:flex;background:#0b0c10;box-shadow:0 0 28px #bb176015}.site-search input{min-width:0;flex:1;border:0;background:transparent;color:#fff;padding:0 16px;outline:0}.site-search:focus-within{border-color:var(--accent)}.site-search button{width:48px;border:0;background:transparent;color:var(--accent2);font-size:25px;cursor:pointer}.menu-toggle{display:none}.main-nav{border-top:1px solid #181a1f;background:#0a0b0e}.nav-inner{height:62px;display:flex;align-items:stretch}.nav-inner>a,.nav-inner summary{height:62px;display:flex;align-items:center;padding:0 26px;font-weight:800;font-size:13px;cursor:pointer;list-style:none}.nav-inner>a:hover,.nav-inner summary:hover{background:#111318;color:#fff}.nav-home{background:linear-gradient(180deg,#4d0b2d,#170a11)!important;color:#ff4b9c!important;font-size:22px!important}.main-nav details{position:relative}.main-nav details summary::-webkit-details-marker{display:none}.main-nav details summary:after{content:'⌄';margin-left:7px;color:#777}.nav-drop{position:absolute;top:62px;left:0;min-width:205px;padding:8px;background:#101217;border:1px solid #2b2e35;box-shadow:0 18px 45px #000b}.nav-drop a{display:block;padding:10px 12px;color:#bbb}.nav-drop a:hover{background:#191c21;color:#fff}.hero{overflow:hidden;border-bottom:1px solid #25272d;background:radial-gradient(circle at 72% 48%,#bb17606b,transparent 18rem),linear-gradient(120deg,#090a0d 15%,#101326 52%,#170715 100%)}.hero-inner{height:400px;display:grid;grid-template-columns:1fr 1.2fr;position:relative}.hero-copy{padding:50px 0 35px 32px;z-index:2}.eyebrow{letter-spacing:3px;color:#aaa;font-size:12px}.hero h1{font-size:55px;line-height:.88;margin:13px 0 16px;letter-spacing:-2px}.hero h1 b{color:var(--accent2)}.hero h1 span{font-weight:300;font-size:.68em;letter-spacing:2px}.hero p{max-width:510px;color:#bbb;font-size:15px}.button{display:inline-flex;gap:18px;align-items:center;margin-top:12px;background:linear-gradient(90deg,var(--accent),var(--accent2));padding:13px 20px;border-radius:4px;font-weight:800}.hero-art{position:relative;min-width:0;background:radial-gradient(ellipse at 50% 45%,#073b64 0,#19061d 26%,transparent 58%)}.hero-art:before,.hero-art:after{content:'';position:absolute;inset:-100px 18% -80px auto;width:180px;background:#00d9ff17;transform:rotate(28deg)}.hero-art:after{right:42%;background:#e1007a20}.orb{position:absolute;width:260px;height:260px;border-radius:50%;left:36%;top:50%;transform:translate(-50%,-50%);border:2px solid #eb0b79;box-shadow:0 0 40px #bb1760,0 0 120px #0b6da488 inset;background:radial-gradient(circle at 55% 45%,#34132e,#080a10 68%)}.headphones{position:absolute;left:36%;top:50%;transform:translate(-50%,-50%);font-size:140px;color:#07090d;text-shadow:0 0 8px #f06}.hero-art p{position:absolute;right:6%;top:48%;font-weight:800;letter-spacing:9px;line-height:2;text-align:center;color:#ddd}.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;padding-block:14px 30px}.panel{background:linear-gradient(180deg,#101216,#0b0d10);border:1px solid #202329;border-radius:var(--radius);overflow:hidden}.featured,.player-slot{grid-column:1/-1}.downloads{grid-row:2/4}.mp3{grid-column:2}.genres{grid-column:2}.section-head{min-height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid #26292f;box-shadow:inset 3px 0 var(--accent)}.section-head h2{font-size:20px;margin:0}.section-head>a,.section-head>span{font-size:11px;color:var(--accent2);font-weight:800}.release-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:14px}.release-card{background:#101216;border:1px solid #282b31;border-radius:5px;overflow:hidden;min-width:0}.release-card .cover{display:block;aspect-ratio:1/1;overflow:hidden;background:#181a20}.release-card .cover img{width:100%;height:100%;object-fit:cover;transition:.3s}.release-card:hover .cover img{transform:scale(1.035)}.release-body{padding:11px}.release-body h3{font-size:14px;line-height:1.25;margin:0 0 8px;min-height:35px}.meta{color:#8d929b;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats{display:flex;gap:12px;margin-top:10px;color:#a9adb4;font-size:10px}.download-grid{counter-reset:release;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:0;padding:8px 14px 14px;list-style:none}.download-row{counter-increment:release;display:grid;grid-template-columns:32px 54px 1fr 36px;gap:10px;align-items:center;min-height:76px;border-bottom:1px solid #25282e}.download-row:before{content:counter(release);display:grid;place-items:center;width:30px;height:30px;background:#20242a;border-radius:4px;font-weight:800}.thumb img{width:54px;height:54px;object-fit:cover}.download-copy{min-width:0;display:flex;flex-direction:column}.download-title{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.download-copy small{color:#8e939b;margin:2px 0}.download-copy span{color:#737983;font-size:10px}.download-action{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--accent);border-radius:4px;color:var(--accent2);font-size:18px}.track-list{counter-reset:track;margin:0;padding:8px 14px;list-style:none}.track-row{counter-increment:track;border-bottom:1px solid #24272c}.track-row a{display:grid;grid-template-columns:32px 1fr auto 16px;gap:9px;align-items:center;min-height:45px}.track-row .rank:before{content:counter(track);display:grid;place-items:center;width:27px;height:27px;border-radius:3px;background:#23262b;font-weight:800}.track-row:nth-child(1) .rank:before{background:var(--accent2)}.track-row:nth-child(2) .rank:before{background:#d69d13}.track-row:nth-child(3) .rank:before{background:#00a8c4}.track-row b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-row small{color:#777;font-size:9px}.track-row i{font-style:normal;color:var(--accent2)}.outline-button{display:block;width:max-content;margin:8px 14px 14px auto;border:1px solid var(--accent);padding:8px 12px;border-radius:4px;color:#eee;font-size:10px;font-weight:800}.tag-cloud{display:flex;flex-wrap:wrap;gap:6px;padding:14px}.tag-cloud a{padding:5px 8px;border:1px solid #454950;border-radius:4px;font-size:11px;text-transform:uppercase;color:#c2c4c8}.tag-cloud a:hover{border-color:var(--accent);color:#fff}.player-placeholder{min-height:145px;display:grid;grid-template-columns:64px minmax(180px,360px) 1fr;align-items:center;gap:20px;padding:24px}.player-placeholder button{width:58px;height:58px;border-radius:50%;border:1px solid var(--accent2);background:#1b0c15;color:#fff;font-size:20px}.player-placeholder strong,.player-placeholder small{display:block}.player-placeholder small{margin-top:6px;color:#777}.wave{height:65px;background:repeating-linear-gradient(90deg,transparent 0 8px,#bb1760 9px 11px);mask:linear-gradient(170deg,transparent 10%,#000 40%,#000 60%,transparent 90%);opacity:.75}.site-footer{border-top:1px solid #25282d;background:#090a0c}.footer-inner{min-height:140px;display:grid;grid-template-columns:250px 1fr auto;align-items:center;gap:30px}.footer-inner nav{display:flex;gap:26px;color:#8f939a}.footer-inner p{grid-column:1/2;margin-top:-38px;color:#676b72;font-size:11px}.equalizer{display:flex;align-items:end;gap:4px;height:45px}.equalizer i{display:block;width:3px;background:var(--accent);height:18px}.equalizer i:nth-child(2n){height:33px}.equalizer i:nth-child(3n){height:25px}.inner-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;padding-block:24px}.content-panel,.side-panel{min-width:0}.block-st,#fullstory,.base,.story{background:#101216;border:1px solid #25282e;border-radius:var(--radius);padding:18px;margin-bottom:16px}.h-block,.h-bblock{border-left:3px solid var(--accent);padding-left:12px}.fstory-content{line-height:1.7;color:#d3d5d8}.fstory-content img{max-width:100%;height:auto}.shortstory-rating,.shortstory-list{list-style:none;padding:0}.shortstory-rating li,.shortstory-list li{padding:8px;border-bottom:1px solid #25282e}.tagscloud a{display:inline-block;border:1px solid #3b3e45;padding:5px 8px;margin:3px;border-radius:3px}.navigation{display:flex;gap:5px}.navigation a,.navigation span{padding:8px 11px;background:#15181d;border:1px solid #2b2e34}.navigation span{border-color:var(--accent);color:#fff}@media(max-width:1000px){.header-top{grid-template-columns:230px 1fr auto}.menu-toggle{display:block;background:#14161b;border:1px solid #343840;color:#fff;padding:9px 12px;border-radius:4px}.main-nav{display:none}.main-nav.is-open{display:block}.nav-inner{height:auto;display:block;padding:8px 16px}.nav-inner>a,.nav-inner summary{height:auto;min-height:44px;padding:0 12px}.main-nav details{position:static}.nav-drop{position:static;border:0;box-shadow:none;margin:0 0 6px 12px}.hero-inner{grid-template-columns:1fr 1fr}.home-grid{grid-template-columns:minmax(0,1fr) 290px}.release-grid{grid-template-columns:repeat(3,1fr)}.release-card:nth-child(n+4){display:none}.download-grid{grid-template-columns:1fr}.inner-layout{grid-template-columns:1fr}.side-panel{display:none}}@media(max-width:700px){.shell{width:min(calc(100% - 20px),var(--shell))}.header-top{min-height:72px;grid-template-columns:1fr auto;gap:12px}.brand span{font-size:20px}.site-search{grid-column:1/-1;grid-row:2;margin-bottom:12px}.hero-inner{height:auto;min-height:430px;grid-template-columns:1fr}.hero-copy{padding:38px 12px 160px}.hero h1{font-size:43px}.hero-art{position:absolute;inset:auto 0 0;height:190px;opacity:.7}.orb{width:160px;height:160px}.headphones{font-size:85px}.hero-art p{font-size:9px;right:4%}.home-grid{display:block}.panel{margin-bottom:12px}.release-grid{grid-template-columns:repeat(2,1fr)}.release-card:nth-child(4){display:block}.section-head h2{font-size:16px}.download-grid{padding-inline:8px}.download-row{grid-template-columns:28px 48px 1fr 30px;gap:7px}.thumb img{width:48px;height:48px}.player-placeholder{grid-template-columns:55px 1fr}.wave{grid-column:1/-1}.footer-inner{grid-template-columns:1fr;padding:28px 0}.footer-inner p{grid-column:auto;margin:0}.equalizer{display:none}}

/* v0.2 — interaction system */
:root{--ease:cubic-bezier(.2,.8,.2,1);--glow:0 0 22px #bb176052}
a{transition:color .22s var(--ease),border-color .22s var(--ease),background-color .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease)}
.nav-inner>a,.nav-inner summary{position:relative;overflow:hidden}.nav-inner>a:not(.nav-home):after,.nav-inner summary:after{transition:.28s var(--ease)}.nav-inner>a:not(.nav-home):before,.nav-inner summary:before{content:'';position:absolute;left:26px;right:26px;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent2),var(--cyan),transparent);transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease);box-shadow:0 0 12px var(--accent)}.nav-inner>a:hover:before,.nav-inner summary:hover:before{transform:scaleX(1)}.nav-drop a{position:relative}.nav-drop a:hover{transform:translateX(4px);color:#fff;text-shadow:0 0 14px #ef168080}.nav-home:hover{box-shadow:inset 0 -2px var(--accent2),0 0 24px #bb176035}.fx-link{position:relative;overflow:hidden}.fx-link:after{content:'';position:absolute;inset:-60% auto -60% -40%;width:25%;transform:rotate(18deg);background:#fff4;filter:blur(3px);transition:left .55s var(--ease)}.fx-link:hover:after{left:120%}.button:hover{transform:translateY(-2px);box-shadow:0 8px 28px #bb176055}.head-link:hover{color:#fff;text-shadow:0 0 14px var(--accent2)}
.carousel-tools{display:flex;align-items:center;gap:7px}.carousel-tools button{width:31px;height:31px;border:1px solid #393d44;border-radius:4px;background:#111318;color:#ddd;cursor:pointer;transition:.2s var(--ease)}.carousel-tools button:hover{border-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:var(--glow)}.carousel-tools .head-link{margin-left:5px}.release-carousel{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;padding:14px}.release-carousel::-webkit-scrollbar{display:none}.release-track{display:flex;gap:12px;width:max-content}.release-track .release-card{width:calc((min(100vw - 60px,var(--shell)) - 80px)/5);max-width:265px;min-width:190px;scroll-snap-align:start;position:relative;transition:transform .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease)}.release-card .cover{position:relative}.release-card .cover:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#bb176000 30%,#bb17604d 72%,#0bc6dc38);opacity:0;transition:.3s var(--ease)}.release-card .cover:before{content:'';position:absolute;z-index:2;left:0;right:0;top:-4px;height:2px;background:linear-gradient(90deg,transparent,var(--cyan),var(--accent2),transparent);opacity:0;box-shadow:0 0 10px var(--accent2)}.release-card:hover{transform:translateY(-5px);border-color:#bb17608c;box-shadow:0 14px 32px #0008,0 0 24px #bb176025}.release-card:hover .cover img{transform:scale(1.065)}.release-card:hover .cover:after{opacity:1}.release-card:hover .cover:before{opacity:1;animation:scan-cover 1.2s linear infinite}.release-card:hover h3 a{color:#fff;text-shadow:0 0 12px #bb176060}@keyframes scan-cover{0%{top:0}100%{top:100%}}
.download-row{position:relative;transition:background .22s var(--ease),transform .22s var(--ease)}.download-row:after{content:'';position:absolute;left:-14px;top:18%;bottom:18%;width:2px;background:linear-gradient(var(--cyan),var(--accent2));transform:scaleY(0);transition:transform .25s var(--ease);box-shadow:0 0 10px var(--accent)}.download-row:hover{background:linear-gradient(90deg,#bb17600e,transparent);transform:translateX(3px)}.download-row:hover:after{transform:scaleY(1)}.download-row:hover:before{background:var(--accent);box-shadow:0 0 15px #bb176060}.download-row:hover .download-title{color:#fff}.download-action:hover{background:var(--accent);color:#fff;box-shadow:var(--glow);transform:translateY(-2px)}
.track-row a{position:relative}.track-row a:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,var(--accent2),var(--cyan),transparent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.track-row:hover a:after{transform:scaleX(1)}.track-row:hover b{color:#fff}.track-row:hover .rank:before{background:#4a1230;box-shadow:0 0 12px #bb176055}.track-row i{font-size:0;width:14px;height:14px;display:flex;align-items:end;gap:2px}.track-row i:before,.track-row i:after{content:'';width:2px;height:8px;background:var(--accent2);box-shadow:4px -3px 0 var(--cyan),8px 1px 0 var(--accent2)}.track-row:hover i:before{animation:eq1 .5s ease-in-out infinite alternate}.track-row:hover i:after{animation:eq2 .42s ease-in-out infinite alternate}@keyframes eq1{to{height:13px}}@keyframes eq2{to{height:4px}}
.tag-cloud a{position:relative;overflow:hidden}.tag-cloud a:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,#bb17602e,#0bc6dc20,#bb17602e);transform:translateX(-105%);transition:.35s var(--ease)}.tag-cloud a:hover{transform:translateY(-2px);box-shadow:0 0 18px #bb176030}.tag-cloud a:hover:before{transform:translateX(0)}
.live-chat{grid-column:2;align-self:start}.chat-heading{display:flex;align-items:center;gap:10px}.live-dot{display:inline-flex;align-items:center;gap:6px;color:#ff4b9c;font-size:9px;font-weight:800;letter-spacing:1.2px}.live-dot:before{content:'';width:6px;height:6px;border-radius:50%;background:#ff2e86;box-shadow:0 0 10px #ff2e86;animation:livepulse 1.6s ease-in-out infinite}@keyframes livepulse{50%{opacity:.35;box-shadow:0 0 2px #ff2e86}}.chat-open{border:0;background:transparent;color:var(--accent2);font-size:10px;font-weight:800;cursor:pointer}.chat-open:hover{color:#fff;text-shadow:0 0 12px var(--accent2)}.chat-preview{padding:14px}.chat-copy strong{font-size:12px;letter-spacing:1px}.chat-copy p{margin:5px 0 12px;color:#777;font-size:11px}.chat-messages{border-top:1px solid #24272d;border-bottom:1px solid #24272d;padding:5px 0;margin-bottom:12px}.chat-messages p{margin:0;padding:7px 0;display:flex;gap:8px;font-size:10px}.chat-messages b{color:#d33a80;white-space:nowrap}.chat-messages span{color:#9499a1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-pill{width:100%;padding:9px;border:1px solid #71304d;border-radius:4px;background:linear-gradient(90deg,#bb176016,#0bc6dc0b);color:#eee;font-size:10px;font-weight:800;cursor:pointer}.chat-pill:hover{border-color:var(--accent);box-shadow:var(--glow);letter-spacing:.4px}.chat-drawer{position:fixed;inset:0;z-index:100;pointer-events:none;visibility:hidden}.chat-drawer.is-open{pointer-events:auto;visibility:visible}.chat-backdrop{position:absolute;inset:0;border:0;background:#0009;opacity:0;transition:.3s}.chat-drawer.is-open .chat-backdrop{opacity:1}.chat-panel{position:absolute;right:0;top:0;bottom:0;width:min(440px,100%);background:#0b0d11;border-left:1px solid #3a2030;box-shadow:-30px 0 80px #000b;transform:translateX(102%);transition:transform .38s var(--ease);display:grid;grid-template-rows:auto 1fr auto}.chat-drawer.is-open .chat-panel{transform:none}.chat-panel header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #282b31}.chat-panel header>div{display:flex;align-items:center;gap:12px}.chat-panel h2{font-size:16px;margin:0}.chat-panel header>button{border:0;background:transparent;color:#aaa;font-size:28px;cursor:pointer}.chat-coming{display:grid;place-content:center;text-align:center;padding:35px}.chat-coming>span{color:var(--accent2);font-size:10px;letter-spacing:2px}.chat-coming strong{font-size:21px;margin-top:8px}.chat-coming p{color:#777;max-width:310px}.chat-panel footer{display:grid;grid-template-columns:110px 1fr auto;gap:7px;padding:14px;border-top:1px solid #282b31}.chat-panel input,.chat-panel footer button{min-width:0;border:1px solid #30343b;background:#111419;color:#777;padding:10px;border-radius:4px}.chat-lock{overflow:hidden}
@media(max-width:1000px){.release-track .release-card{width:calc((100vw - 76px)/3);min-width:210px}.live-chat{grid-column:2}.carousel-tools .head-link{display:none}}
@media(max-width:700px){.release-carousel{padding:10px}.release-track .release-card{width:calc((100vw - 56px)/2);min-width:155px}.live-chat{grid-column:auto}.chat-panel footer{grid-template-columns:1fr}.carousel-tools button{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* v0.3 ------------------------------------------------------------- */
/* Featured: a single scan per pointer entry. Animation does not loop. */
.release-card:hover .cover:before{animation:scan-cover .72s cubic-bezier(.2,.7,.2,1) 1 forwards}

/* Category links: compact interactive chips without changing DLE output. */
.release-body .meta{display:flex;flex-wrap:wrap;gap:4px;white-space:normal;overflow:visible}
.release-body .meta a{display:inline-flex;align-items:center;min-height:20px;padding:2px 6px;border:1px solid #333842;border-radius:3px;background:#11141a;color:#9298a2;font-size:11px;line-height:1.2;text-transform:uppercase;transition:transform .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease),color .18s var(--ease),box-shadow .18s var(--ease)}
.release-body .meta a:hover{transform:translateY(-1px);border-color:#bb1760;background:#bb176020;color:#fff;box-shadow:0 0 12px #bb17602c}

/* Genre cloud: local hover only. No travelling strip across neighbouring tags. */
.tag-cloud a:before{display:none}
.tag-cloud a{transition:transform .16s var(--ease),border-color .16s var(--ease),background .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease)}
.tag-cloud a:hover{transform:translateY(-2px) scale(1.025);border-color:#bb1760;background:radial-gradient(circle at 20% 20%,#bb176038,#14171c 70%);color:#fff;box-shadow:0 0 12px #bb176026,inset 0 0 0 1px #bb176012}

/* Main home composition: independent left/right stacks avoid artificial empty panel height. */
.home-grid{align-items:start}
.home-main,.home-side{display:grid;gap:14px;align-content:start;min-width:0}
.home-main{grid-column:1}.home-side{grid-column:2}
.downloads,.mp3,.genres,.live-chat{grid-column:auto;grid-row:auto}
.player-slot{grid-column:1/-1}

/* Hype / topnews */
.hype .section-head>div,.recent-downloads .section-head>div{display:flex;align-items:baseline;gap:10px}
.hype .section-head small,.recent-downloads .section-head small{font-size:9px;letter-spacing:1.4px;color:#6f7580}
.hype-list{list-style:none;margin:0;padding:12px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.hype-list li{min-width:0;border:1px solid #292d34;border-radius:5px;background:#0d1014;overflow:hidden;transition:transform .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}
.hype-list li:hover{transform:translateY(-3px);border-color:#bb17607a;box-shadow:0 9px 24px #0007,0 0 16px #bb17601e}
.hype-list a{display:block;min-width:0}.hype-list a span{display:block;aspect-ratio:1/1;overflow:hidden;background:#171a20}.hype-list img{width:100%;height:100%;object-fit:cover;transition:transform .25s var(--ease)}.hype-list li:hover img{transform:scale(1.055)}
.hype-list b{display:block;padding:8px;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Future ClickTracker live feed */
.recent-placeholder{padding:14px 16px 16px}.recent-placeholder>strong{font-size:10px;letter-spacing:1.3px;color:#c6c9cf}.recent-placeholder>p{max-width:700px;margin:5px 0 12px;color:#737983;font-size:10px}
.recent-ghost{display:grid;grid-template-columns:8px 1fr;align-items:center;gap:9px;min-height:32px;border-top:1px solid #20242a;color:#626873;font-size:10px}.recent-ghost i{width:5px;height:5px;border-radius:50%;background:#bb1760;box-shadow:0 0 7px #bb1760}

/* Slightly roomier v0.3 UI while preserving the fixed visual tone. */
.download-row{min-height:80px}.track-row a{min-height:48px}.release-body{padding:12px}.tag-cloud{gap:7px}

@media(max-width:1000px){.home-main{grid-column:1}.home-side{grid-column:2}.hype-list{grid-template-columns:repeat(3,minmax(0,1fr))}.hype-list li:nth-child(n+7){display:none}}
@media(max-width:700px){.home-main,.home-side{display:grid;grid-column:auto}.hype-list{grid-template-columns:repeat(2,minmax(0,1fr))}.hype-list li:nth-child(n+7){display:block}}
@media(prefers-reduced-motion:reduce){.release-card:hover .cover:before{animation:none;opacity:0}.hype-list li,.hype-list img,.release-body .meta a,.tag-cloud a{transition:none!important;transform:none!important}}

/* v0.4 ------------------------------------------------------------- */
/* Covers stay visually stable. Motion is carried by light/border feedback. */
.release-card .cover img,
.release-card:hover .cover img,
.hype-list img,
.hype-list li:hover img{transform:none}
.release-card .cover img,.hype-list img{transition:filter .22s var(--ease)}
.release-card:hover .cover img{filter:brightness(1.035)}

/* HYPE: no image zoom; use a restrained cyan/magenta edge-light instead. */
.hype-list a span{position:relative}
.hype-list a span:after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid transparent;box-shadow:inset 0 0 0 0 transparent;transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease)}
.hype-list li:hover a span:after{border-color:#0bc6dc70;box-shadow:inset 0 -18px 30px #0bc6dc10,inset 0 0 18px #bb176012;background:linear-gradient(145deg,transparent 68%,#0bc6dc0c)}

/* Featured categories keep the established magenta chip language. */
.release-body .meta a:hover{border-color:var(--accent);background:#bb176020;color:#fff;box-shadow:0 0 12px #bb17602c}

/* Styles / Genres: cyan is the secondary accent and clearly separates tags
   from the magenta category chips used by Featured. */
.tag-cloud a:hover{transform:translateY(-2px);border-color:var(--cyan);background:#0bc6dc16;color:#e9fdff;box-shadow:0 0 13px #0bc6dc2d,inset 0 0 0 1px #0bc6dc12}

/* Most Downloaded category links: deliberately quieter than chips/tags.
   A short cyan underline grows from the centre of each category label. */
.download-copy small{display:flex;flex-wrap:wrap;gap:0 5px;white-space:normal}
.download-copy small a{position:relative;color:#858b95;transition:color .18s var(--ease)}
.download-copy small a:after{content:'';position:absolute;left:50%;right:50%;bottom:-2px;height:1px;background:var(--cyan);box-shadow:0 0 6px #0bc6dc80;transition:left .2s var(--ease),right .2s var(--ease)}
.download-copy small a:hover{color:#dffbff}
.download-copy small a:hover:after{left:0;right:0}

/* Post titles are primary links, but their feedback stays restrained.
   No box/glow: magenta text + a tiny directional cue. */
.download-title{position:relative;display:block;padding-right:15px;transition:color .18s var(--ease)}
.download-title:after{content:'→';position:absolute;right:2px;top:50%;color:var(--accent2);opacity:0;transform:translate(-4px,-50%);transition:opacity .18s var(--ease),transform .18s var(--ease)}
.download-title:hover{color:var(--accent2)!important}
.download-title:hover:after{opacity:1;transform:translate(0,-50%)}

/* Featured title: text-only feedback because the card already has scan/light. */
.release-body h3 a{transition:color .18s var(--ease),text-shadow .18s var(--ease)}
.release-card:hover h3 a{color:inherit;text-shadow:none}
.release-body h3 a:hover{color:var(--accent2);text-shadow:none}

@media(prefers-reduced-motion:reduce){
  .release-card .cover img,.hype-list img,.hype-list a span:after,.download-copy small a,.download-copy small a:after,.download-title,.download-title:after,.release-body h3 a{transition:none!important}
}

/* v0.5 — quieter card surfaces and download-title interaction */
.release-card{border-color:transparent}
.release-card:hover{border-color:transparent;box-shadow:0 14px 32px #0008}

.hype-list li{border-color:transparent}
.hype-list li:hover{border-color:transparent;box-shadow:0 9px 24px #0008,0 0 18px #bb176020}
.hype-list a span:after{border:0;transition:box-shadow .2s var(--ease),background .2s var(--ease)}
.hype-list li:hover a span:after{border:0;box-shadow:inset 0 0 18px #bb176012;background:transparent}

.download-title{padding-right:0}
.download-title:after{content:none}

/* v0.6 ------------------------------------------------------------- */
/* HYPE final: no border/glow/overlay; motion only. */
.hype-list li,.hype-list li:hover{border-color:transparent;box-shadow:none}
.hype-list a span:after,.hype-list li:hover a span:after{content:none;background:none;box-shadow:none}

/* Fullstory: collection-first, wide reading surface. */
.fullstory-layout{padding-top:18px;padding-bottom:38px;max-width:1180px}
.fullstory-layout .speedbar{margin-bottom:15px;color:#69707a;font-size:10px}
.cv-fullstory{max-width:980px;margin:0 auto}
.cv-full-head{padding:8px 0 18px;border-bottom:1px solid #242830}
.cv-full-kicker{font-size:9px;letter-spacing:2px;color:var(--accent2);font-weight:800;margin-bottom:8px}
.cv-full-head h1{margin:0;color:#f5f7fa;font-size:clamp(24px,3vw,38px);line-height:1.08;letter-spacing:-.5px}
.cv-full-taxonomy{margin-top:13px;display:flex;flex-wrap:wrap;gap:7px}.cv-full-taxonomy a{display:inline-flex;padding:5px 8px;border:1px solid #343944;border-radius:3px;color:#aeb4bd;font-size:9px;text-transform:uppercase;transition:.18s}.cv-full-taxonomy a:hover{color:#fff;border-color:var(--accent);background:#bb17601c}
.cv-full-content{padding:24px 0;color:#aeb3bc;font-size:13px;line-height:1.72}.cv-full-content>div,.cv-full-content>p{max-width:900px}.cv-full-content img{display:block;max-width:min(100%,680px);height:auto;margin:0 auto 22px}.cv-full-content iframe{display:block;width:100%;max-width:900px;margin:22px auto;border:0;background:#07090c}.cv-full-content audio{width:100%;max-width:900px;margin:18px auto;display:block}
.cv-full-content b,.cv-full-content strong{color:#f2f4f7}.cv-full-content a{color:var(--accent2)}.cv-full-content a:hover{color:#fff}
.cv-download-zone{margin:8px 0 20px;border-top:1px solid #242830;border-bottom:1px solid #242830;padding:13px 0}.cv-download-state,.cv-collection-prototype{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px}.cv-status-dot{width:8px;height:8px;border-radius:50%;background:#22d69a;box-shadow:0 0 10px #22d69a70}.cv-download-state small,.cv-collection-prototype small{display:block;color:#777e88;font-size:8px;letter-spacing:1.5px}.cv-download-state strong,.cv-collection-prototype strong{display:block;color:#f4f6f8;font-size:12px;margin-top:2px}.cv-download-count{text-align:right}.cv-download-count b{display:block;color:var(--accent2);font-size:16px}.cv-download-count span{color:#737a84;font-size:8px;text-transform:uppercase;letter-spacing:1px}.cv-status-ring{width:10px;height:10px;border:1px solid #707680;border-radius:50%}.cv-collection-prototype p{margin:3px 0 0;color:#747b85;font-size:10px}.cv-request-btn,.cv-request-submit{border:1px solid var(--accent);background:#bb176014;color:#fff;padding:9px 13px;font:700 9px/1 inherit;letter-spacing:.8px;cursor:pointer}.cv-request-btn:hover{background:var(--accent);box-shadow:0 0 18px #bb17603b}
.cv-full-tools{display:flex;align-items:center;gap:16px;color:#707781;font-size:9px}.cv-back{color:#aeb4bd}.cv-back:hover{color:var(--accent2)}.cv-full-actions{display:flex;gap:10px}.cv-full-stats{margin-left:auto;display:flex;gap:13px}.cv-related{margin-top:30px}.cv-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:12px}.cv-related-grid img{width:100%;height:auto}
.cv-request-modal{position:fixed;inset:0;z-index:1000;display:none}.cv-request-modal.is-open{display:block}.cv-request-backdrop{position:absolute;inset:0;border:0;background:#000b;backdrop-filter:blur(5px)}.cv-request-dialog{position:relative;z-index:1;width:min(92vw,480px);margin:12vh auto 0;background:#0c0f13;border-top:2px solid var(--accent);box-shadow:0 30px 80px #000;padding:24px}.cv-request-dialog>small{color:var(--accent2);letter-spacing:1.5px;font-size:8px}.cv-request-dialog h2{margin:5px 0 16px}.cv-request-dialog p{color:#7d848e;font-size:11px;line-height:1.5}.cv-request-dialog label{display:block;margin:13px 0;color:#c6cad0;font-size:10px}.cv-request-dialog label em{color:#6d747e;font-style:normal}.cv-request-dialog input,.cv-request-dialog textarea{box-sizing:border-box;width:100%;margin-top:6px;background:#090b0e;border:1px solid #292e36;color:#fff;padding:10px}.cv-request-x{position:absolute;right:12px;top:10px;border:0;background:none;color:#7d848e;font-size:22px;cursor:pointer}.cv-request-note{margin-bottom:0!important;font-size:9px!important}.cv-request-submit:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.fullstory-layout{padding-inline:14px}.cv-fullstory{max-width:none}.cv-full-head h1{font-size:25px}.cv-full-content{font-size:12px}.cv-download-state,.cv-collection-prototype{grid-template-columns:auto 1fr}.cv-download-count,.cv-request-btn{grid-column:2;text-align:left;justify-self:start}.cv-full-tools{flex-wrap:wrap}.cv-full-stats{width:100%;margin-left:0}.cv-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.7 — parsed fullstory */
.hype-list li:hover{box-shadow:none!important}.hype-list li:hover img{filter:none!important}
.cv-fullstory{max-width:1180px}
.cv-parsed-release{padding-top:4px}.cv-release-overview{display:grid;grid-template-columns:minmax(320px,560px) minmax(300px,1fr);gap:42px;align-items:start}.cv-release-artwork img{width:100%;max-height:680px;object-fit:contain;margin:0!important;background:#090a0c}.cv-release-data{min-width:0}.cv-subhead{display:flex;justify-content:space-between;align-items:center;min-height:34px;border-bottom:1px solid #282c33;margin-bottom:10px;color:#f2f4f7;font-size:10px;font-weight:800;letter-spacing:1.2px}.cv-subhead span{position:relative;padding-left:10px}.cv-subhead span:before{content:'';position:absolute;left:0;top:1px;bottom:1px;width:2px;background:var(--accent)}.cv-subhead small{color:var(--cyan);font-size:8px;letter-spacing:1px}.cv-release-meta dl{margin:0 0 24px}.cv-release-meta dl>div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:8px 0;border-bottom:1px solid #181b20}.cv-release-meta dt{color:#676e78;font-size:9px;font-weight:800}.cv-release-meta dd{margin:0;color:#dce0e5;font-size:12px}.cv-tracklist ol{list-style:none;margin:0;padding:0}.cv-tracklist li{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;min-height:34px;border-bottom:1px solid #181b20}.cv-tracklist li span{color:var(--cyan);font:700 9px/1 monospace}.cv-tracklist li b{color:#c7ccd3;font-size:11px;font-weight:500}.cv-preview{margin-top:32px}.cv-preview iframe,.cv-preview audio{width:100%;max-width:none!important;margin:0!important}.cv-legacy-story{max-width:900px;margin-inline:auto}.cv-download-zone{margin-top:8px}.cv-related-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cv-related-grid>*:nth-child(n+5){display:none}
@media(max-width:850px){.cv-release-overview{grid-template-columns:1fr;gap:22px}.cv-release-artwork img{max-width:620px;margin-inline:auto!important}.cv-release-data{max-width:720px;margin-inline:auto;width:100%}}
@media(max-width:520px){.cv-release-meta dl>div{grid-template-columns:95px 1fr;gap:10px}.cv-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.8 — provider embeds + long tracklists ------------------------- */
.cv-preview-frame{background:transparent;overflow:hidden}
.cv-preview-frame iframe{display:block;border:0!important;background:transparent!important;box-shadow:none!important}/* Old Bandcamp embeds were authored with assorted fixed widths. Keep the
   player at its natural useful desktop width instead of stretching its
   internal document across the entire fullstory and exposing white space. */
.cv-preview--bandcamp .cv-preview-frame{width:min(100%,760px);overflow:hidden;background:#111}
.cv-preview--bandcamp iframe{width:100%!important;max-width:760px!important;background:#111!important}

/* For long releases only the first 12 tracks stay beside the artwork.
   Remaining tracks continue below both columns and use the freed width. */
.cv-tracklist--long{margin-bottom:0}
.cv-tracklist-continuation{margin-top:22px;border-top:1px solid #282c33}
.cv-tracklist-continuation ol{list-style:none;margin:0;padding:8px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:42px}
.cv-tracklist-continuation li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;min-height:38px;border-bottom:1px solid #181b20}
.cv-tracklist-continuation li span{color:var(--cyan);font:700 9px/1 monospace}
.cv-tracklist-continuation li b{color:#c7ccd3;font-size:11px;font-weight:500;line-height:1.35}

@media(max-width:850px){
  .cv-tracklist-continuation{margin-top:0}
  .cv-tracklist-continuation ol{grid-template-columns:1fr;column-gap:0}
}.cv-preview--bandcamp .cv-preview-frame{width:min(100%,700px);max-width:700px;background:transparent}
.cv-preview--bandcamp iframe{width:min(100%,700px)!important;max-width:700px!important;background:transparent!important}

/* Fullstory is the reading surface, so its own text should not look smaller
   than text inside third-party players. */
.cv-full-kicker{font-size:11px}
.cv-full-taxonomy a{font-size:11px;padding:6px 9px}
.cv-full-content{font-size:15px;line-height:1.68}
.cv-subhead{min-height:40px;font-size:12px;letter-spacing:1.15px}
.cv-subhead small{font-size:10px}
.cv-release-meta dl>div{grid-template-columns:132px 1fr;gap:18px;padding:10px 0}
.cv-release-meta dt{font-size:11px}
.cv-release-meta dd{font-size:16px;line-height:1.45}
.cv-tracklist li{grid-template-columns:38px 1fr;gap:12px;min-height:40px}
.cv-tracklist li span,.cv-tracklist-continuation li span{font-size:11px}
.cv-tracklist li b,.cv-tracklist-continuation li b{font-size:16px;line-height:1.42}
.cv-tracklist-continuation li{grid-template-columns:38px minmax(0,1fr);gap:12px;min-height:42px}
.cv-download-state small,.cv-collection-prototype small{font-size:10px}
.cv-download-state strong,.cv-collection-prototype strong{font-size:14px}
.cv-download-count span{font-size:10px}
.cv-full-tools{font-size:11px}
.cv-related-grid{gap:16px}
.cv-related-grid .cv-release-card__title,.cv-related-grid .short-title{font-size:14px}
.cv-related-grid .cv-release-card__meta,.cv-related-grid .short-meta{font-size:11px}

/* Moderate global lift for dense home UI: preserve chart density. */
.downloads-list .release-title,.mp3-list .track-title,.hype-list .release-title{font-size:calc(1em + 1px)}
.genre-cloud a{font-size:calc(1em + 1px)}

@media(max-width:700px){
  .cv-full-content{font-size:14px}
  .cv-release-meta dl>div{grid-template-columns:105px 1fr;gap:12px}
  .cv-release-meta dt{font-size:10px}
  .cv-release-meta dd,.cv-tracklist li b,.cv-tracklist-continuation li b{font-size:13px}
}

/* v0.8.2 — final fullstory/carousel polish */
/* Featured is intentionally calm: no scanning beam. Keep symmetric inner gutters. */
.featured .release-carousel{padding-left:18px;padding-right:18px}
.featured .release-card .cover:before,.featured .release-card:hover .cover:before{content:none!important;display:none!important;animation:none!important;opacity:0!important}/* Bandcamp classic embeds are max 700px wide; PHP computes enough height for all parsed tracks. */
.cv-preview--bandcamp .cv-preview-frame{width:min(100%,700px);max-width:700px;overflow:hidden}
.cv-preview--bandcamp iframe{display:block;width:100%!important;max-width:700px!important;border:0!important}


/* v0.8.3 — provider edge mask + true carousel track gutters */
/* Put the gutter on the scrolling flex track itself, not only on its viewport. */
.featured .release-carousel{padding-left:0;padding-right:0}
.featured .release-track:before,.featured .release-track:after{content:"";display:block;flex:0 0 18px;width:18px}/* Bandcamp: width only. Preserve the source iframe height verbatim so classic
   embeds with 2/3+ tracks remain fully expanded. */
.cv-preview--bandcamp .cv-preview-frame{width:min(100%,700px);max-width:700px;overflow:hidden}
.cv-preview--bandcamp iframe{display:block;width:100%!important;max-width:700px!important;border:0!important}

/* v0.8.4 — featured track gutter + chart download action */
/* Real padding belongs to the flex track content box. Unlike pseudo-items it is
   not treated as an extra carousel item, so the first/last card get equal air. */
.featured .release-track{box-sizing:content-box;padding-inline:18px}
.featured .release-track:before,.featured .release-track:after{content:none!important;display:none!important}


/* v0.8.5 — final homepage carousel gutter */
/* The gutter is now outside the max-content track. This changes the track's
   actual start/end position in the scrollable viewport instead of changing
   the track's internal content box. */
.featured .release-carousel{padding-left:0!important;padding-right:0!important;scroll-padding-inline:18px}
.featured .release-track{box-sizing:border-box!important;padding-inline:0!important;margin-inline:18px}
.featured .release-track:before,.featured .release-track:after{content:none!important;display:none!important}


/* v0.9 — resolved fullstory download states */
.cv-download-zone{position:relative;margin:28px 0 24px;padding:18px 0;border-top:1px solid #242830;border-bottom:1px solid #242830}
.cv-download-state{grid-template-columns:auto minmax(150px,1fr) auto auto}
.cv-primary-download{display:inline-flex;align-items:center;gap:18px;min-height:46px;padding:0 0 0 18px;background:var(--accent);color:#fff!important;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.9px;text-transform:uppercase}
.cv-primary-download b{display:grid;place-items:center;align-self:stretch;min-width:46px;border-left:1px solid #ffffff26;font-size:18px;font-weight:500}
.cv-primary-download:hover{filter:brightness(1.08)}
.cv-dead-link{display:block;margin:10px 0 0 auto;padding:0;border:0;background:none;color:#656c76;font:700 8px/1 inherit;letter-spacing:1px;text-transform:uppercase;cursor:not-allowed}
.cv-download-zone--collection .cv-collection-prototype{grid-template-columns:auto 1fr auto}
.cv-download-zone button[disabled]{opacity:.62}
@media(max-width:700px){.cv-download-state{grid-template-columns:auto 1fr}.cv-primary-download{grid-column:2;justify-self:start}.cv-download-count{grid-column:2}.cv-download-zone--collection .cv-collection-prototype{grid-template-columns:auto 1fr}.cv-download-zone--collection .cv-request-btn{grid-column:2}}

/* v0.9.1 — administrator-only legacy download diagnostic */
.cv-admin-download-hint{margin-top:12px;padding:11px 12px;border:1px dashed #343943;background:#101319;display:flex;align-items:center;justify-content:space-between;gap:16px}
.cv-admin-download-hint small{display:block;color:#7f8792;font-size:9px;letter-spacing:1.25px}.cv-admin-download-hint strong{display:block;margin-top:3px;color:#d9dde3;font-size:12px}.cv-admin-download-hint p{margin:4px 0 0;color:#777f8a;font-size:10px}.cv-admin-download-hint--warning{border-color:#bb176080;background:#bb17600a}.cv-admin-download-hint--warning small{color:#d8578f}.cv-admin-download-hint a{flex:0 0 auto;border:1px solid #bb1760;padding:8px 11px;color:#fff;text-decoration:none;font-size:9px;font-weight:700;letter-spacing:.8px}.cv-admin-download-hint a:hover{background:#bb1760}
@media(max-width:700px){.cv-admin-download-hint{align-items:flex-start;flex-direction:column}.cv-admin-download-hint a{align-self:flex-start}}


/* v0.9.2 — fullstory download action hierarchy */
.cv-download-zone--available .cv-download-state{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px}
.cv-download-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:12px;padding-left:21px}
.cv-download-main{display:flex;align-items:center;gap:14px;min-width:0}
.cv-download-zone--available .cv-download-count{text-align:left}
.cv-download-zone--available .cv-dead-link{margin:0 0 3px auto;flex:0 0 auto}
@media(max-width:700px){.cv-download-actions{align-items:flex-start;flex-direction:column;padding-left:21px;gap:12px}.cv-download-main{align-items:flex-start;flex-direction:column}.cv-download-zone--available .cv-dead-link{margin:0}}

/* v0.9.3.1 — legacy Tracklist links keep the normal row appearance. */
.cv-tracklist .cv-track-link,.cv-tracklist-continuation .cv-track-link{color:inherit;text-decoration:none;transition:color .16s ease}
.cv-tracklist .cv-track-link:hover,.cv-tracklist-continuation .cv-track-link:hover{color:var(--accent)}/* Hearthis must not inherit clipping/radius/size rules intended for other providers. */
.cv-preview--hearthis .cv-preview-frame{
  width:100%; max-width:none; height:auto; overflow:visible; border-radius:0; background:transparent;
}
.cv-preview--hearthis .cv-preview-frame iframe{
  position:static; width:100%!important; max-width:none!important; height:130px!important;
  border-radius:0!important; margin:0!important; overflow:visible;
}
/* Legacy Tracklist links: visible at rest, primary accent on interaction. */
.cv-tracklist .cv-track-link,.cv-tracklist-continuation .cv-track-link{
  color:var(--accent); text-decoration:none; transition:color .16s ease;
}
.cv-tracklist .cv-track-link:hover,.cv-tracklist-continuation .cv-track-link:hover{
  color:var(--text);
}

/* v0.9.3.5 — fullstory interaction polish
   DOWNLOAD: lift + magenta glow + one-pass shine + arrow movement.
   MORE RELEASES/TRACKS: calm card lift + artwork zoom + magenta title + corner arrow. */
.cv-primary-download{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.cv-primary-download::before{
    content:"";
    position:absolute;
    z-index:0;
    top:-40%;
    bottom:-40%;
    left:-38%;
    width:22%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);
    transform:skewX(-20deg);
    opacity:0;
    pointer-events:none;
}
.cv-primary-download>span,.cv-primary-download>b{position:relative;z-index:1}
.cv-primary-download:hover{
    transform:translateY(-2px);
    filter:brightness(1.06);
    box-shadow:0 8px 24px rgba(187,23,96,.28),0 0 0 1px rgba(187,23,96,.55);
}
.cv-primary-download:hover::before{
    opacity:1;
    animation:cv-download-shine .58s ease-out 1;
}
.cv-primary-download b{transition:transform .2s ease}
.cv-primary-download:hover b{transform:translateY(2px)}
@keyframes cv-download-shine{
    0%{left:-38%}
    100%{left:118%}
}

.cv-related-grid .shortstory-block{
    position:relative;
    transition:transform .22s ease;
}
.cv-related-grid .short-img{
    position:relative;
    overflow:hidden;
}
.cv-related-grid .short-img img{
    display:block;
    transition:transform .28s ease,filter .28s ease;
}
.cv-related-grid .short-img::after{
    content:"↗";
    position:absolute;
    z-index:4;
    top:10px;
    right:10px;
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    background:rgba(8,10,13,.78);
    border:1px solid rgba(255,255,255,.12);
    color:#fff;
    font-size:14px;
    line-height:1;
    opacity:0;
    transform:translate(-5px,5px);
    transition:opacity .2s ease,transform .2s ease,border-color .2s ease;
    pointer-events:none;
}
.cv-related-grid .shortstory-block:hover{transform:translateY(-3px)}
.cv-related-grid .shortstory-block:hover .short-img img{
    transform:scale(1.035);
    filter:brightness(.88);
}
.cv-related-grid .shortstory-block:hover .short-img::after{
    opacity:1;
    transform:translate(0,0);
    border-color:rgba(187,23,96,.58);
}
.cv-related-grid .short-title-opc{
    transition:color .2s ease;
}
.cv-related-grid .shortstory-block:hover .short-title-opc{
    color:var(--accent)!important;
}

@media (prefers-reduced-motion:reduce){
    .cv-primary-download,
    .cv-primary-download b,
    .cv-related-grid .shortstory-block,
    .cv-related-grid .short-img img,
    .cv-related-grid .short-img::after,
    .cv-related-grid .short-title-opc{
        transition:none!important;
    }
    .cv-primary-download:hover,
    .cv-primary-download:hover b,
    .cv-related-grid .shortstory-block:hover,
    .cv-related-grid .shortstory-block:hover .short-img img,
    .cv-related-grid .short-img::after{
        transform:none!important;
    }
    .cv-primary-download::before{display:none!important;animation:none!important}
}

/* v0.10 — universal category catalog */
.inner-layout.cv-category-layout{display:block;padding-block:24px 34px}
.cv-category-layout>.side-panel{display:none!important}
.cv-category-layout>.content-panel{width:100%;min-width:0}
.cv-category-catalog{display:block}
.cv-category-catalog>.speedbar,.cv-category-catalog>.cv-category-head,.cv-category-catalog>.pages,.cv-category-catalog>.clearfix,.cv-category-catalog>.navigation{width:100%}
.cv-category-head{grid-column:1/-1;min-height:106px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 6px;padding:20px 0 18px;border-bottom:1px solid #252930;position:relative}
.cv-category-head:after{content:"";position:absolute;left:0;bottom:-1px;width:92px;height:2px;background:linear-gradient(90deg,var(--accent),var(--cyan))}
.cv-category-head small{display:block;margin-bottom:7px;color:var(--cyan);font-size:9px;font-weight:800;letter-spacing:2px}
.cv-category-head h1{margin:0;color:#f5f6f8;font-size:30px;line-height:1.05;letter-spacing:-.6px;text-transform:uppercase}
.cv-category-head p{margin:8px 0 0;color:#747b85;font-size:11px}
.cv-category-head>span{padding-bottom:3px;color:#5f6670;font-size:9px;font-weight:800;letter-spacing:1.7px}
.cv-catalog-card{min-width:0;background:#0e1013;border:1px solid #20242a;border-radius:5px;overflow:hidden;transition:transform .22s ease,border-color .22s ease,background-color .22s ease}
.cv-catalog-cover{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#111419}
.cv-catalog-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(4,5,7,.34));opacity:0;transition:opacity .24s ease;pointer-events:none}
.cv-catalog-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease,filter .3s ease}
.cv-catalog-open{position:absolute;z-index:2;top:11px;right:11px;display:grid;place-items:center;width:31px;height:31px;background:rgba(7,9,12,.82);border:1px solid rgba(255,255,255,.13);color:#fff;font-size:15px;opacity:0;transform:translate(-5px,5px);transition:opacity .2s ease,transform .2s ease,border-color .2s ease}
.cv-catalog-body{padding:13px 14px 14px}
.cv-catalog-body h3{min-height:38px;margin:0 0 10px;font-size:14px;line-height:1.35}
.cv-catalog-body h3 a{color:#eef0f3;transition:color .2s ease}
.cv-catalog-tags{display:flex;flex-wrap:wrap;gap:5px;min-height:23px}
.cv-catalog-tags a{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid #30353c;color:#7e858f;font-size:8px;line-height:1.1;text-transform:uppercase;transition:border-color .2s ease,color .2s ease}
.cv-catalog-tags a:hover{border-color:var(--cyan);color:var(--cyan)}
.cv-catalog-card:hover{transform:translateY(-3px);border-color:#323740;background:#111419}
.cv-catalog-card:hover .cv-catalog-cover img{transform:scale(1.035);filter:brightness(.88)}
.cv-catalog-card:hover .cv-catalog-cover:after{opacity:1}
.cv-catalog-card:hover .cv-catalog-open{opacity:1;transform:translate(0,0);border-color:rgba(187,23,96,.68)}
.cv-catalog-card:hover .cv-catalog-body h3 a{color:var(--accent)}
.cv-category-catalog>.pages{grid-column:1/-1;margin-top:12px;padding-top:20px;border-top:1px solid #22262c}
@media(max-width:1100px){.cv-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.cv-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cv-category-head h1{font-size:25px}.cv-category-head>span{display:none}}
@media(max-width:460px){.cv-category-grid{grid-template-columns:1fr}.cv-category-head h1{font-size:22px}.cv-catalog-body h3{min-height:0}}
@media(prefers-reduced-motion:reduce){.cv-catalog-card,.cv-catalog-cover img,.cv-catalog-cover:after,.cv-catalog-open{transition:none!important}.cv-catalog-card:hover,.cv-catalog-card:hover .cv-catalog-cover img,.cv-catalog-open{transform:none!important}}

/* v0.10.1 — grid the real DLE shortstory wrapper, not .content-panel */
.cv-category-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    align-items:start;
    width:100%;
}
.cv-category-grid>.cv-catalog-card{width:auto!important;margin:0!important}
.cv-category-catalog>.cv-category-grid{margin-top:18px}

/* v0.10.2 — category responsive, readable chips, touch pagination */

/* Genre/category chips */
.cv-category-grid .cv-catalog-tags{gap:6px;min-height:27px}
.cv-category-grid .cv-catalog-tags a{
    min-height:26px;
    padding:5px 8px;
    font-size:10px;
    line-height:1.15;
    letter-spacing:.15px;
}

/* Responsive grid — authoritative final rules */
.cv-category-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
@media (max-width:1100px){
    .cv-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:760px){
    .cv-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:14px!important;
    }
}
@media (max-width:480px){
    .cv-category-grid{
        grid-template-columns:minmax(0,1fr)!important;
        gap:14px!important;
    }
}

/* DLE pagination: generous touch targets */
.cv-category-catalog .pages,
.cv-category-catalog .navigation{
    width:100%;
    margin-top:24px;
    padding-top:22px;
    border-top:1px solid #252930;
}
.cv-category-catalog .pages{
    display:flex!important;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}
.cv-category-catalog .pages a,
.cv-category-catalog .pages span{
    box-sizing:border-box;
}
.cv-category-catalog .pages-numbers{
    display:flex!important;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px!important;
}
.cv-category-catalog .pages-numbers a,
.cv-category-catalog .pages-numbers span{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-width:42px!important;
    height:42px!important;
    padding:0 10px!important;
    margin:0!important;
    border:1px solid #30353d!important;
    background:#101318!important;
    color:#a3a9b2!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1!important;
    text-decoration:none;
}
.cv-category-catalog .pages-numbers a:hover,
.cv-category-catalog .pages-numbers a:focus-visible{
    border-color:var(--cyan)!important;
    color:var(--cyan)!important;
}
.cv-category-catalog .pages-numbers span{
    border-color:var(--accent)!important;
    background:var(--accent)!important;
    color:#fff!important;
}
.cv-category-catalog .pages-prev,
.cv-category-catalog .pages-next{
    min-width:0!important;
    margin:0!important;
}
.cv-category-catalog .pages-prev a,
.cv-category-catalog .pages-next a{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-width:96px!important;
    min-height:42px!important;
    padding:0 14px!important;
    margin:0!important;
    border:1px solid #30353d!important;
    background:#101318!important;
    color:#a3a9b2!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:.5px;
    text-transform:uppercase;
}
.cv-category-catalog .pages-prev a:hover,
.cv-category-catalog .pages-next a:hover,
.cv-category-catalog .pages-prev a:focus-visible,
.cv-category-catalog .pages-next a:focus-visible{
    border-color:var(--cyan)!important;
    color:var(--cyan)!important;
}

@media (max-width:600px){
    .cv-category-catalog .pages{
        gap:10px!important;
    }
    .cv-category-catalog .pages-numbers{
        width:100%;
        order:1;
        gap:7px!important;
    }
    .cv-category-catalog .pages-prev{
        order:2;
        flex:1 1 0;
        text-align:left;
    }
    .cv-category-catalog .pages-next{
        order:3;
        flex:1 1 0;
        text-align:right;
    }
    .cv-category-catalog .pages-prev a,
    .cv-category-catalog .pages-next a{
        min-width:112px!important;
        min-height:44px!important;
    }
}

/* v0.11 — MP3 Tracks category ------------------------------------------------ */
.inner-layout.cv-mp3-layout{display:block;padding-block:24px 34px}
.cv-mp3-layout>.side-panel{display:none!important}
.cv-mp3-layout>.content-panel{width:100%;min-width:0}
.cv-mp3-category{display:block}
.cv-mp3-list{display:grid;grid-template-columns:1fr;gap:10px;width:100%;margin-top:18px}

.cv-mp3-head{
    display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    min-height:106px;margin:0 0 6px;padding:20px 0 18px;
    border-bottom:1px solid #252930;position:relative
}
.cv-mp3-head:after{content:"";position:absolute;left:0;bottom:-1px;width:92px;height:2px;background:linear-gradient(90deg,var(--accent),var(--cyan))}
.cv-mp3-head small{display:block;margin-bottom:7px;color:var(--cyan);font-size:9px;font-weight:800;letter-spacing:2px}
.cv-mp3-head h1{margin:0;color:#f5f6f8;font-size:30px;line-height:1.05;letter-spacing:-.6px}
.cv-mp3-head p{margin:8px 0 0;color:#747b85;font-size:11px}
.cv-mp3-head>span{padding-bottom:3px;color:#5f6670;font-size:9px;font-weight:800;letter-spacing:1.7px}

.cv-mp3-card{
    display:grid;grid-template-columns:132px minmax(0,1fr);gap:0;
    min-height:132px;background:#0e1013;border:1px solid #20242a;border-radius:6px;
    overflow:hidden;transition:transform .2s ease,border-color .2s ease,background-color .2s ease
}
.cv-mp3-cover{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#111419}
.cv-mp3-cover img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease,filter .28s ease}
.cv-mp3-open{
    position:absolute;z-index:2;top:10px;right:10px;display:grid;place-items:center;
    width:30px;height:30px;background:rgba(7,9,12,.82);border:1px solid rgba(255,255,255,.13);
    color:#fff;font-size:14px;opacity:0;transform:translate(-4px,4px);
    transition:opacity .2s ease,transform .2s ease,border-color .2s ease
}
.cv-mp3-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto 1fr;column-gap:18px;padding:16px 18px;min-width:0}
.cv-mp3-main h3{grid-column:1/2;margin:0 0 8px;font-size:16px;line-height:1.25}
.cv-mp3-main h3 a{color:#f0f2f5;transition:color .2s ease}
.cv-mp3-tags{grid-column:1/2;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.cv-mp3-tags a{
    display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;
    border:1px solid #30353c;color:#8e959f;font-size:11px;line-height:1.1;text-transform:uppercase;
    transition:border-color .2s ease,color .2s ease
}
.cv-mp3-tags a:hover{border-color:var(--cyan);color:var(--cyan)}
.cv-mp3-player{grid-column:1/2;align-self:end;min-width:0}
.cv-mp3-actions{grid-column:2;grid-row:1/4;display:flex;align-items:flex-end;justify-content:flex-end}
.cv-mp3-download{
    position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:14px;
    min-height:40px;padding:0 13px;border:1px solid var(--accent);
    background:#140b11;color:#f5f6f8;font-size:10px;font-weight:800;letter-spacing:.5px;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background-color .2s ease
}
.cv-mp3-download b{color:var(--accent2);font-size:17px;transition:transform .2s ease}
.cv-mp3-download:hover{
    transform:translateY(-2px);border-color:var(--accent2);background:#1a0c14;
    box-shadow:0 7px 22px rgba(187,23,96,.22)
}
.cv-mp3-download:hover b{transform:translateY(2px)}
.cv-mp3-card:hover{transform:translateY(-2px);border-color:#343942;background:#111419}
.cv-mp3-card:hover .cv-mp3-cover img{transform:scale(1.035);filter:brightness(.88)}
.cv-mp3-card:hover .cv-mp3-open{opacity:1;transform:translate(0,0);border-color:rgba(187,23,96,.68)}
.cv-mp3-card:hover .cv-mp3-main h3 a{color:var(--accent)}

/* Pagination inherits the v0.10.2 touch treatment in MP3 category too. */
.cv-mp3-category .pages,.cv-mp3-category .navigation{
    width:100%;margin-top:24px;padding-top:22px;border-top:1px solid #252930
}
.cv-mp3-category .navigation{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}
.cv-mp3-category .navigation a,.cv-mp3-category .navigation span{
    display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;
    padding:0 10px;margin:0;background:#101318;border:1px solid #30353d;
    color:#a3a9b2;font-size:13px;font-weight:800
}
.cv-mp3-category .navigation a:hover{border-color:var(--cyan);color:var(--cyan)}
.cv-mp3-category .navigation span{background:var(--accent);border-color:var(--accent);color:#fff}

@media(max-width:760px){
    .cv-mp3-head h1{font-size:25px}.cv-mp3-head>span{display:none}
    .cv-mp3-card{grid-template-columns:108px minmax(0,1fr);min-height:108px}
    .cv-mp3-main{padding:13px 14px;column-gap:12px}
    .cv-mp3-main h3{font-size:14px}
}
@media(max-width:560px){
    .cv-mp3-card{grid-template-columns:92px minmax(0,1fr)}
    .cv-mp3-main{display:block;padding:12px}
    .cv-mp3-tags{margin-bottom:9px}
    .cv-mp3-actions{margin-top:10px;justify-content:flex-start}
    .cv-mp3-download{min-height:42px}
}
@media(max-width:390px){
    .cv-mp3-card{grid-template-columns:78px minmax(0,1fr)}
    .cv-mp3-cover{aspect-ratio:auto;height:100%}
    .cv-mp3-tags a{font-size:8px;padding-inline:6px}
}
@media(prefers-reduced-motion:reduce){
    .cv-mp3-card,.cv-mp3-cover img,.cv-mp3-open,.cv-mp3-main h3 a,.cv-mp3-download,.cv-mp3-download b{transition:none!important}
    .cv-mp3-card:hover,.cv-mp3-card:hover .cv-mp3-cover img,.cv-mp3-open,.cv-mp3-download:hover,.cv-mp3-download:hover b{transform:none!important}
}

/* DLE pages use the same touch layout as the release catalog. */
.cv-mp3-category .pages{display:flex!important;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px}
.cv-mp3-category .pages-numbers{display:flex!important;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px!important}
.cv-mp3-category .pages-numbers a,.cv-mp3-category .pages-numbers span,
.cv-mp3-category .pages-prev a,.cv-mp3-category .pages-next a{
 display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;
 min-width:42px!important;min-height:42px!important;margin:0!important;padding:0 10px!important;
 background:#101318!important;border:1px solid #30353d!important;color:#a3a9b2!important;
 font-size:13px!important;font-weight:800!important;line-height:1!important;text-decoration:none
}
.cv-mp3-category .pages-prev a,.cv-mp3-category .pages-next a{min-width:96px!important}
.cv-mp3-category .pages-numbers a:hover,.cv-mp3-category .pages-prev a:hover,.cv-mp3-category .pages-next a:hover{border-color:var(--cyan)!important;color:var(--cyan)!important}
.cv-mp3-category .pages-numbers span{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}
@media(max-width:600px){
 .cv-mp3-category .pages-numbers{order:1;width:100%}
 .cv-mp3-category .pages-prev{order:2;flex:1;text-align:left}
 .cv-mp3-category .pages-next{order:3;flex:1;text-align:right}
 .cv-mp3-category .pages-prev a,.cv-mp3-category .pages-next a{min-height:44px!important}
}

/* v0.12 — MP3 fullstory and category download counts */
.cv-mp3-story{max-width:900px;margin:0 auto 22px}
.cv-mp3-story-art{max-width:430px;margin:0 auto 26px}
.cv-mp3-story-art img{display:block;width:100%;height:auto;object-fit:contain;border:1px solid #282d34}
.cv-mp3-story-player{width:100%;min-width:0}
.cv-mp3-story-player .dleaudioplayer{max-width:none!important;width:100%!important}
.cv-mp3-story-player .cv-subhead{margin-bottom:16px}
.cv-mp3-story-player>br{display:none}
.cv-mp3-count{white-space:nowrap;display:inline-flex;align-items:center;gap:5px;color:#aeb6c0;font-size:12px;font-weight:800}
.cv-mp3-count small{font-size:9px;color:#737c87;font-weight:600}
.cv-mp3-actions{gap:18px;align-items:flex-end}
@media(max-width:560px){.cv-mp3-actions{align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.cv-mp3-story-art{max-width:100%}}

/* v0.13: release feedback */
.cv-dead-link{cursor:pointer;text-decoration:none;display:inline-block}.cv-dead-link:hover{color:#0bc6dc}.cv-request-btn{display:inline-block;text-decoration:none;white-space:nowrap}.cv-feedback-page{max-width:760px;margin:35px auto;padding:28px;border:1px solid #282d35;background:#101216;color:#e5e8ec}.cv-feedback-heading small,.cv-feedback-release span{color:#0bc6dc;letter-spacing:2px;font-size:10px}.cv-feedback-heading h1{font-size:28px;letter-spacing:1px;margin:10px 0}.cv-feedback-heading p{color:#8e959f}.cv-feedback-release{padding:18px;margin:22px 0;border-left:3px solid #bb1760;background:#181b20;display:flex;flex-direction:column;gap:7px}.cv-feedback-release strong{font-size:14px}.cv-feedback-release a{color:#0bc6dc;font-size:10px;text-decoration:none}.cv-feedback-page label{display:block;margin:15px 0;font-size:11px;letter-spacing:.5px}.cv-feedback-page input:not([type=hidden]),.cv-feedback-page textarea{display:block;box-sizing:border-box;width:100%;margin-top:8px;padding:12px;background:#0a0c10;border:1px solid #353943;color:#fff;font:inherit;outline:none}.cv-feedback-page input:focus,.cv-feedback-page textarea:focus{border-color:#0bc6dc}.cv-feedback-challenge{margin:18px 0}.cv-feedback-submit{background:#bb1760;border:1px solid #bb1760;color:#fff;padding:14px 22px;font-size:11px;font-weight:800;letter-spacing:1px;cursor:pointer}.cv-feedback-submit:hover{background:#941049}@media(max-width:600px){.cv-feedback-page{padding:18px;margin:16px auto}}

/* v0.13.2: release feedback has no right sidebar; keep all other layouts unchanged. */
body:has(.cv-feedback-page) .inner-layout { display:block; }
body:has(.cv-feedback-page) .inner-layout > .side-panel { display:none; }
body:has(.cv-feedback-page) .inner-layout > .content-panel { width:100%; max-width:none; min-width:0; }

/* v0.14: reversed hover palette, restricted to homepage widgets. */
.genres .tag-cloud a:hover{border-color:#bb1760;background:#bb176022;color:#fff;box-shadow:0 0 13px #bb176040,inset 0 0 0 1px #bb176022}
.genres .tag-cloud a:before{background:linear-gradient(110deg,#bb17602e,#ef168024,#bb17602e)}
.featured .release-body .meta a:hover{border-color:#0bc6dc;background:#0bc6dc1c;color:#e9fdff;box-shadow:0 0 12px #0bc6dc35}
.cv-recent-list{list-style:none;margin:0;padding:6px 16px 12px}
.cv-recent-item{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #24272d}
.cv-recent-item:last-child{border-bottom:0}
.cv-recent-item:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px #0bc6dc55}
.cv-recent-item a{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;transition:color .2s}
.cv-recent-item a:hover{color:var(--cyan)}
.cv-recent-item time{font-size:10px;color:#858c96;white-space:nowrap}
.cv-recent-empty{padding:24px 16px;color:#8d929b;font-size:12px}
.cv-recent-note{padding:0 16px 13px;color:#68717c;font-size:10px}

/* v0.15: Ranked chart pages */
.cv-chart-shell{padding-top:28px;padding-bottom:56px}.cv-chart{border:1px solid #252830;border-radius:8px;background:#0e0f13;overflow:hidden}.cv-chart-header{padding:28px 30px;border-bottom:1px solid #252830;background:linear-gradient(115deg,#19111a,#0e1015 70%)}.cv-chart-back{display:inline-block;color:#0bc6dc;font-size:11px;font-weight:700;margin-bottom:18px}.cv-chart-eyebrow{font-size:10px;letter-spacing:2px;color:#bb1760;font-weight:800}.cv-chart-header h1{font-size:clamp(23px,3vw,36px);line-height:1.15;margin:9px 0 12px;color:#fff}.cv-chart-header p{font-size:12px;color:#89919f;margin:0}.cv-chart-list{list-style:none;counter-reset:none;padding:0 26px;margin:0}.cv-chart-item{display:grid;grid-template-columns:54px minmax(0,1fr) 105px 25px;gap:14px;align-items:center;min-height:64px;border-bottom:1px solid #262932}.cv-chart-item:last-child{border-bottom:0}.cv-chart-position{font-size:19px;font-weight:800;color:#bb1760;font-variant-numeric:tabular-nums}.cv-chart-title{color:#f4f5f7;font-size:13px;font-weight:700;min-width:0;overflow-wrap:anywhere}.cv-chart-title:hover,.cv-chart-open:hover{color:#0bc6dc}.cv-chart-count{color:#96a2ae;font-size:12px;text-align:right;white-space:nowrap}.cv-chart-open{color:#697581;font-size:18px;text-align:right}.cv-chart-empty{padding:24px 30px;color:#9ca5b0}.cv-chart-pages{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:24px;border-top:1px solid #262932}.cv-chart-pages a{display:inline-block;border:1px solid #30343e;border-radius:5px;padding:9px 13px;color:#e6e9ee;font-size:12px}.cv-chart-pages a:hover,.cv-chart-pages a.is-current{background:#bb1760;border-color:#bb1760;color:#fff}@media(max-width:600px){.cv-chart-header{padding:22px 17px}.cv-chart-list{padding:0 12px}.cv-chart-item{grid-template-columns:32px minmax(0,1fr) 65px;gap:8px}.cv-chart-position{font-size:15px}.cv-chart-title{font-size:12px}.cv-chart-count{font-size:10px}.cv-chart-open{display:none}}

/* CosmoVolume v0.16 — comments core and HYPE hover */
.hype-list li:hover b,.hype-list li:hover .release-title,.hype-list a:hover b{color:#0bc6dc!important}
.hype-list b,.hype-list .release-title{transition:color .2s ease}
.cv-conversation{margin-top:34px;border-top:1px solid #252a31;padding-top:25px;color:#e8edf3}
.cv-conversation-head h2{font-size:23px;letter-spacing:1.2px;margin:6px 0 8px}
.cv-conversation-head p{color:#9ba4af;margin:0 0 22px;font-size:13px}
.cv-conversation-kicker{font-size:10px;letter-spacing:2px;color:#0bc6dc}
.cv-comment-compose{padding:22px;border:1px solid #30353d;border-radius:9px;background:#101318}
.cv-comment-intro{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.cv-comment-intro strong{font-size:13px;letter-spacing:1.4px}
.cv-comment-intro span,.cv-comment-actions span{font-size:11px;color:#929ba7}
.cv-comment-identity{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.cv-comment-identity label,.cv-comment-security label{display:block;color:#b6c0ca;font-size:10px;letter-spacing:1px;font-weight:700}
.cv-comment-identity small{font-weight:400;letter-spacing:0}
.cv-comment-identity input,.cv-comment-security input{display:block;box-sizing:border-box;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #343b45;border-radius:5px;background:#0a0d11;color:#f2f5f8;font-size:13px}
.cv-comment-prompt{font-size:12px;color:#cbd3dc;margin-bottom:10px}
.cv-comment-reactions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.cv-comment-reactions button{border:1px solid #3a414b;border-radius:20px;background:#191d24;color:#d9e1e9;padding:8px 12px;font-size:10px;cursor:pointer}
.cv-comment-reactions button:hover,.cv-comment-reactions button:focus-visible{border-color:#0bc6dc;color:#0bc6dc}
.cv-comment-editor{min-width:0;margin-bottom:14px}.cv-comment-editor textarea{width:100%;box-sizing:border-box;min-height:120px;background:#0b0e12;color:#f0f3f7;border:1px solid #39414b;border-radius:5px;padding:12px}
.cv-comment-security{margin:13px 0}.cv-comment-security label span{display:block;margin:8px 0;color:#dce4ee}
.cv-comment-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:18px}
.cv-comment-submit{background:#bb1760;color:#fff;border:0;border-radius:5px;padding:12px 20px;cursor:pointer;font-weight:700;letter-spacing:1px}
.cv-comment-submit:hover{background:#d32273}
.cv-conversation-feed{margin-top:26px}.cv-conversation-feed>h3{font-size:13px;letter-spacing:1.2px;color:#c7d0dc;margin:0 0 14px}
.cv-comment{padding:18px 0;border-bottom:1px solid #2a3038}.cv-comment-top{display:flex;align-items:center;gap:12px}.cv-comment-avatar img{height:38px;width:38px;object-fit:cover;border-radius:50%}.cv-comment-person{display:flex;flex-direction:column;gap:4px}.cv-comment-person strong{font-size:13px}.cv-comment-person time{font-size:10px;color:#89939e}.cv-comment-rating{margin-left:auto}.cv-comment-body{margin:12px 0 10px;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.cv-comment-tools{display:flex;flex-wrap:wrap;gap:12px;font-size:10px;letter-spacing:.7px}.cv-comment-tools a{color:#9da7b4}.cv-comment-tools a:hover{color:#0bc6dc}.cv-comment-signature{color:#8b96a2}
@media(max-width:650px){.cv-comment-identity{grid-template-columns:1fr}.cv-comment-compose{padding:15px}.cv-conversation-head h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.hype-list b,.hype-list .release-title{transition:none}}


/* v0.16.2 — compact BBCode toolbar for comments only.
   Keep DLE's own buttons/handlers; do not replace the editor. */
.cv-comment-editor .bb-editor { width:100%; max-width:100%; min-width:0; }
.cv-comment-editor .bb-editor .bb-pane { display:flex; flex-wrap:wrap; align-items:center; gap:5px; padding:8px; background:#141820; border:1px solid #343b47; border-bottom:0; border-radius:6px 6px 0 0; }
.cv-comment-editor .bb-editor .bb-btn { float:none; display:inline-flex; align-items:center; justify-content:center; width:32px; min-width:32px; height:30px; box-sizing:border-box; padding:0; margin:0; color:#dce5ed; background:#222630; background-image:none; border:1px solid #3a414b; border-radius:4px; box-shadow:none; }
.cv-comment-editor .bb-editor .bb-btn:hover,
.cv-comment-editor .bb-editor .bb-btn:focus-visible { background:#253640; background-image:none; border-color:#0bc6dc; color:#0bc6dc; box-shadow:none; }
.cv-comment-editor .bb-editor .bb-btn:before { font-family:Arial,Helvetica,sans-serif !important; font-size:14px; line-height:1; }
.cv-comment-editor #b_b:before {content:"B";font-weight:800}
.cv-comment-editor #b_i:before {content:"I";font-style:italic;font-weight:700}
.cv-comment-editor #b_url:before {content:"LINK";font-size:9px}
.cv-comment-editor #b_quote:before {content:"\201C";font-size:22px}
.cv-comment-editor #b_emo:before {content:"☺";font-size:19px}
/* Hide only unused toolbar controls; DLE retains all BBCode actions. */
.cv-comment-editor .bb-editor .bb-pane .bb-btn:not(#b_b):not(#b_i):not(#b_url):not(#b_quote):not(#b_emo),
.cv-comment-editor .bb-editor .bb-pane .bb-sep,
.cv-comment-editor .bb-editor .bb-pane .bb-sel {display:none}
.cv-comment-editor .bb-editor textarea {margin-top:0; border-radius:0 0 6px 6px; min-height:120px; background:#0b0e12; color:#f0f3f7; border:1px solid #39414b; padding:12px;}
@media(max-width:560px){.cv-comment-editor .bb-editor .bb-pane{gap:4px;padding:6px}.cv-comment-editor .bb-editor .bb-btn{width:30px;min-width:30px}}


/* v0.16.3 — readability refinements for comment composer and comments */
.cv-comment-intro strong{font-size:14px}
.cv-comment-intro span,.cv-comment-actions span{font-size:12px}
.cv-comment-identity label,.cv-comment-security label{font-size:12px;letter-spacing:.75px}
.cv-comment-identity small{font-size:11px}
.cv-comment-identity input,.cv-comment-security input{font-size:14px}
.cv-comment-prompt{font-size:14px}
.cv-comment-reactions button{font-size:12px;padding:9px 14px;line-height:1.3}
.cv-comment-editor textarea,.cv-comment-editor .bb-editor textarea{font-size:14px;line-height:1.6}
.cv-comment-editor .bb-editor .bb-pane{gap:7px;padding:9px}
.cv-comment-editor .bb-editor .bb-btn{width:38px;min-width:38px;height:36px;font-size:16px}
.cv-comment-editor .bb-editor .bb-btn:before{font-size:16px}
.cv-comment-editor #b_url:before{font-size:11px}
.cv-comment-editor #b_quote:before{font-size:24px}
.cv-comment-editor #b_emo:before{font-size:21px}
.cv-comment-person strong{font-size:14px}
.cv-comment-person time{font-size:12px}
.cv-comment-body{font-size:14px;line-height:1.6}
.cv-comment-tools{font-size:12px}
@media(max-width:560px){.cv-comment-editor .bb-editor .bb-pane{gap:6px;padding:7px}.cv-comment-editor .bb-editor .bb-btn{width:36px;min-width:36px;height:36px}}

/* v0.16.4 — conversation first, composer on demand */
.cv-conversation-cta{display:flex;justify-content:flex-end;margin:0 0 18px}
.cv-write-comment{background:#bb1760;border:1px solid #bb1760;color:white;border-radius:5px;padding:12px 18px;font-size:13px;font-weight:750;letter-spacing:.6px;cursor:pointer}
.cv-write-comment:hover,.cv-write-comment:focus-visible{background:#d52273}
.cv-conversation-form[hidden]{display:none!important}
.cv-conversation-form{margin:20px 0 0}
.cv-conversation-feed{margin-top:8px}
.cv-comment{background:#101318;border:1px solid #303843;border-radius:9px;padding:18px;margin:12px 0 16px}
.cv-comment-avatar{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#252c35;overflow:hidden}
.cv-comment-avatar img{width:42px;height:42px;position:relative;z-index:2}
.cv-comment-avatar img.cv-avatar-broken{display:none}
.cv-comment-avatar-fallback{position:absolute;inset:0;display:grid;place-items:center;color:#0bc6dc;font-size:23px;font-weight:bold}
.cv-comment-person strong{font-size:15px}
.cv-comment-person time{font-size:12px}
.cv-comment-body{font-size:16px;line-height:1.7;color:#e8edf3}
.cv-comment-body blockquote,.cv-comment-body .quote,.cv-comment-body .qoute,.cv-comment-body .quote_block{margin:12px 0;padding:12px 16px;background:#171e26;border:0;border-left:3px solid #0bc6dc;color:#d4e1ed;box-shadow:none}
.cv-comment-tools{font-size:11px;gap:17px}
.cv-comment-tools a{color:#aebac8}
.cv-comment-tools a:hover{color:#0bc6dc}
.cv-conversation-feed>h3{font-size:15px}
.ui-dialog,.ui-widget.ui-dialog{background:#11151b;color:#e9edf3;border:1px solid #37414c}
.ui-dialog .ui-dialog-titlebar{background:#1b222b;color:#e9edf3;border:0}
.ui-dialog .ui-dialog-content{color:#d1dbe5}
.ui-dialog .ui-dialog-buttonpane{background:#11151b;border-top:1px solid #303843}
.ui-dialog .ui-dialog-buttonpane button{background:#242d38;color:#f2f6fa;border:1px solid #414b58;border-radius:4px}
@media(max-width:600px){.cv-conversation-cta{justify-content:stretch}.cv-write-comment{width:100%}.cv-comment{padding:13px}}

/* v0.16.5 — collapsible composer and native reply/quote visual alignment */
.cv-compose-actions{display:flex;justify-content:flex-end;margin:0 0 10px}
.cv-close-comment{border:1px solid #414b57;border-radius:5px;background:#202630;color:#dce7f1;padding:9px 13px;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.4px}
.cv-close-comment span{font-size:17px;margin-left:7px;vertical-align:-1px}
.cv-close-comment:hover,.cv-close-comment:focus-visible{border-color:#0bc6dc;color:#0bc6dc}
.cv-conversation .replyform,.cv-conversation .reply-form,.cv-conversation .replycomment,.cv-conversation .replycommentform,.cv-conversation .replybox,
.cv-conversation [id^="replyform"],.cv-conversation [id^="reply-form"]{background:#101318!important;color:#e7edf4!important;border:1px solid #34404c!important;border-radius:8px!important;padding:14px!important}
.cv-conversation .replyform textarea,.cv-conversation .reply-form textarea,.cv-conversation .replycomment textarea,.cv-conversation .replycommentform textarea,
.cv-conversation [id^="replyform"] textarea,.cv-conversation [id^="reply-form"] textarea{background:#0b0e12!important;color:#edf3fa!important;border:1px solid #394451!important;border-radius:5px!important;padding:12px!important;font-size:14px!important}
.cv-conversation .replyform input,.cv-conversation .reply-form input,.cv-conversation [id^="replyform"] input{background:#151a20;color:#eaf1f8;border:1px solid #394451}
.cv-conversation .replyform button,.cv-conversation .reply-form button,.cv-conversation [id^="replyform"] button{border-radius:4px}
.cv-conversation .cv-comment-body .quote,.cv-conversation .cv-comment-body .quote_block,
.cv-conversation .cv-comment-body .quote_body,.cv-conversation .cv-comment-body .quote-title,
.cv-conversation .cv-comment-body .quote_title{background:#18212b!important;color:#dce7f1!important;border-color:#0bc6dc!important;box-shadow:none!important}
.cv-conversation .cv-comment-body .quote-title,.cv-conversation .cv-comment-body .quote_title{border-left:3px solid #0bc6dc!important;border-top:0!important;border-right:0!important;border-bottom:0!important;padding:8px 12px!important;font-size:12px!important;font-weight:700}
.cv-conversation .cv-comment-body .quote_body{border-left:3px solid #0bc6dc!important;padding:10px 12px!important}
.cv-conversation .cv-comment-body .quote .quote,.cv-conversation .cv-comment-body .quote_body .quote_body{margin:6px 0!important;padding:6px 10px!important}

/* v0.16.6: DLE 12.1 actual AJAX markup: #dlefastreplycomments,
   #dlereplypopup, and #comm-id-N (edited inline content). */
#dlefastreplycomments,#dlereplypopup,
[id^="comm-id-"] > .bb-editor,
[id^="comm-id-"] > form,
[id^="comm-id-"] > div:has(> .bb-editor) {
 background:#101318!important;color:#e8edf5!important;border:1px solid #34404b!important;
 border-radius:8px!important;padding:12px!important;box-sizing:border-box;
}
#dlefastreplycomments .bb-editor,#dlereplypopup .bb-editor,
[id^="comm-id-"] .bb-editor{background:#101318!important;width:100%!important;box-sizing:border-box}
#dlefastreplycomments .bb-editor .bb-pane,#dlereplypopup .bb-editor .bb-pane,
[id^="comm-id-"] .bb-editor .bb-pane{
 background:#141820!important;border:1px solid #34404b!important;padding:7px!important;
 display:flex!important;flex-wrap:wrap!important;gap:4px!important;
}
#dlefastreplycomments .bb-editor .bb-btn,#dlereplypopup .bb-editor .bb-btn,
[id^="comm-id-"] .bb-editor .bb-btn{
 background:#242b35!important;color:#e8edf5!important;border:1px solid #414d5c!important;
 border-radius:4px!important;width:36px!important;height:34px!important;
}
#dlefastreplycomments textarea,#dlereplypopup textarea,
[id^="comm-id-"] textarea,#dlefastreplycomments input[type="text"],
#dlereplypopup input[type="text"],[id^="comm-id-"] input[type="text"]{
 background:#0b0e12!important;color:#eef4fa!important;border:1px solid #3b4754!important;
 border-radius:5px!important;padding:10px!important;box-sizing:border-box;max-width:100%;
 font-size:14px!important;
}
#dlefastreplycomments textarea,#dlereplypopup textarea,[id^="comm-id-"] textarea{
 width:100%!important;min-height:135px!important;
}
#dlefastreplycomments .bbcodes,#dlereplypopup .bbcodes,[id^="comm-id-"] .bbcodes{
 background:#bb1760!important;color:#fff!important;border:0!important;border-radius:4px!important;
 padding:10px 14px!important;cursor:pointer;
}
#dlefastreplycomments .bbcodes:hover,#dlereplypopup .bbcodes:hover,
[id^="comm-id-"] .bbcodes:hover{background:#d52273!important}
#dlefastreplycomments .bb-editor .bb-btn:before,#dlereplypopup .bb-editor .bb-btn:before,
[id^="comm-id-"] .bb-editor .bb-btn:before{font-family:Arial,sans-serif!important;font-size:14px}
#dlefastreplycomments #b_b:before,#dlereplypopup #b_b:before,[id^="comm-id-"] #b_b:before{content:"B";font-weight:bold}
#dlefastreplycomments #b_i:before,#dlereplypopup #b_i:before,[id^="comm-id-"] #b_i:before{content:"I";font-style:italic}
#dlefastreplycomments #b_url:before,#dlereplypopup #b_url:before,[id^="comm-id-"] #b_url:before{content:"LINK";font-size:9px}
#dlefastreplycomments #b_quote:before,#dlereplypopup #b_quote:before,[id^="comm-id-"] #b_quote:before{content:"“";font-size:20px}
#dlefastreplycomments #b_emo:before,#dlereplypopup #b_emo:before,[id^="comm-id-"] #b_emo:before{content:"☺";font-size:18px}

/* v0.16.7 — compact, legible BBCode controls inside DLE inline EDIT.
   Keep original native buttons and onclick handlers. */
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane .bb-btn:not(#b_b):not(#b_i):not(#b_url):not(#b_quote):not(#b_emo){
 display:none!important;
}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane .bb-sep,
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane .bb-sel{display:none!important}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane .bb-btn{
 font-size:0!important;line-height:1!important;position:relative!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-width:38px!important;width:38px!important;height:36px!important;
 background-image:none!important;overflow:hidden!important;
}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane .bb-btn:before{
 font-family:Arial,Helvetica,sans-serif!important;color:#e8edf5!important;
 font-size:16px!important;line-height:1!important;display:block!important;
 position:static!important;opacity:1!important;
}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane #b_b:before{content:"B"!important;font-weight:800!important}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane #b_i:before{content:"I"!important;font-style:italic!important;font-weight:700!important}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane #b_url:before{content:"LINK"!important;font-size:10px!important}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane #b_quote:before{content:"“"!important;font-size:23px!important}
.cv-conversation [id^="comm-id-"] .bb-editor .bb-pane #b_emo:before{content:"☺"!important;font-size:19px!important}

/* v0.16.8 — unified cyan DLE quote presentation */
.cv-conversation .cv-comment-body .quote,
.cv-conversation .cv-comment-body .quote_block,
.cv-conversation .cv-comment-body .qoute,
.cv-conversation .cv-comment-body blockquote {
  background:#18212b!important;
  border:0!important;
  border-left:3px solid #0bc6dc!important;
  border-radius:0 5px 5px 0!important;
  box-shadow:none!important;
  color:#dce7f1!important;
  margin:12px 0!important;
  padding:10px 14px!important;
}
.cv-conversation .cv-comment-body .quote .quote-title,
.cv-conversation .cv-comment-body .quote .quote_title,
.cv-conversation .cv-comment-body .quote .title,
.cv-conversation .cv-comment-body .quote_block .quote-title,
.cv-conversation .cv-comment-body .quote_block .quote_title,
.cv-conversation .cv-comment-body .quote_block .title,
.cv-conversation .cv-comment-body .qoute .title,
.cv-conversation .cv-comment-body .quote-title,
.cv-conversation .cv-comment-body .quote_title {
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#9fb5c7!important;
  display:block;
  font-size:12px!important;
  font-weight:700!important;
  margin:0 0 7px!important;
  padding:0!important;
}
.cv-conversation .cv-comment-body .quote .quote_body,
.cv-conversation .cv-comment-body .quote_block .quote_body,
.cv-conversation .cv-comment-body .quote .quote-content,
.cv-conversation .cv-comment-body .quote_block .quote-content {
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#e9eff5!important;
  margin:0!important;
  padding:0!important;
}

/* v0.16.9 approved quote layout and v0.17.0 GIF picker */
.cv-comment-body .title_quote{margin:8px 0 0!important;padding:12px 14px 4px!important;background:#18212b!important;color:#9cb2c4!important;border:0!important;border-left:3px solid #0bc6dc!important;border-radius:6px 6px 0 0!important;font-size:12px!important;line-height:1.5!important;display:flex;align-items:center;gap:8px}
.cv-comment-body .title_quote+.quote{margin:0 0 4px!important;padding:4px 14px 12px!important;background:#18212b!important;color:#e8edf3!important;border:0!important;border-left:3px solid #0bc6dc!important;border-radius:0 0 6px 6px!important;font-size:14px!important;line-height:1.6!important}
.cv-comment-body .quote+br,.cv-comment-body .quote+br+br{display:none}
.cv-comment-body .quote+p{margin-top:8px!important}
.cv-comment-body .cv-quote-icon{color:#0bc6dc;font-size:18px;line-height:1}
.cv-gif-wrap{margin:12px 0 10px}.cv-gif-toggle{background:#202630;color:#eaf0f6;border:1px solid #414b58;border-radius:6px;padding:10px 14px;font-size:12px;font-weight:750;cursor:pointer;letter-spacing:.4px}.cv-gif-toggle:hover,.cv-gif-toggle:focus-visible{border-color:#0bc6dc;color:#0bc6dc}.cv-gif-toggle span{margin-left:7px}.cv-gif-picker[hidden]{display:none!important}.cv-gif-picker{background:#11161d;border:1px solid #36414d;border-radius:8px;padding:12px;margin-top:10px}.cv-gif-picker-head{font-size:12px;color:#f1f4f8;font-weight:750;display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.cv-gif-picker-head span,.cv-gif-picker p{font-size:11px;color:#94a6b9;font-weight:400}.cv-gif-picker p{margin:12px 0 0}.cv-gif-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cv-gif-grid button{background:#1b222b;color:#e8eef5;border:1px solid #33404d;border-radius:6px;cursor:pointer;padding:7px;display:flex;flex-direction:column;gap:7px;align-items:center;font-size:11px;font-weight:700}.cv-gif-grid button:hover,.cv-gif-grid button:focus-visible{border-color:#0bc6dc;color:#0bc6dc}.cv-gif-grid img{display:block;width:100%;max-width:155px;aspect-ratio:1.6;object-fit:contain;border-radius:4px;background:#090d12}.cv-comment-body img[src*="/assets/reactions/"]{max-width:240px!important;max-height:170px!important;width:auto!important;height:auto!important;display:block;margin:9px 0;border-radius:6px}@media(max-width:520px){.cv-gif-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-gif-picker-head{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.cv-gif-grid img,.cv-comment-body img[src*="/assets/reactions/"]{animation:none!important}}

/* v0.17.1 — polished compact reaction grid, mobile sizing and GIF display */
.cv-gif-picker{max-width:680px;padding:15px;background:#10161e;border-color:#344352;box-shadow:0 12px 32px rgba(0,0,0,.24)}
.cv-gif-grid{gap:12px}
.cv-gif-grid button{padding:8px;gap:8px;background:#151d27;border-color:#303f4d;transition:border-color .15s,transform .15s,background .15s}
.cv-gif-grid button:hover,.cv-gif-grid button:focus-visible{background:#1a2733;transform:translateY(-1px)}
.cv-gif-grid img{max-width:none;width:100%;aspect-ratio:280/176;object-fit:cover;border:0;border-radius:5px}
.cv-comment-body img[src*="/assets/reactions/"]{max-width:min(280px,100%)!important;max-height:176px!important;object-fit:contain;background:#0a0d14;border:1px solid #303e4a}
@media(max-width:580px){.cv-gif-picker{padding:10px}.cv-gif-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cv-gif-grid button{padding:6px;font-size:10px}.cv-gif-picker-head{font-size:11px}}
@media(prefers-reduced-motion:reduce){.cv-gif-grid button{transition:none!important;transform:none!important}}

/* v0.17.2 — adult reaction prototype and category filters */
.cv-gif-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}.cv-gif-filters button{border:1px solid #344554;background:#111c27;color:#b9cce0;border-radius:6px;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer}.cv-gif-filters button:hover,.cv-gif-filters button:focus-visible,.cv-gif-filters button.is-active{border-color:#0bc6dc;color:#0bc6dc;background:#0b2935}.cv-gif-grid button[hidden]{display:none!important}.cv-gif-grid button span{line-height:1.35}.cv-gif-grid img{aspect-ratio:300/166;object-fit:cover}.cv-comment-body img[src*="/assets/reactions/"]{max-width:min(300px,100%)!important;max-height:180px!important}


/* v0.17.3: responsive side-by-side layout for one local reaction only. */
.cv-comment-body{container-type:inline-size;}
.cv-comment-adaptive{display:block;min-width:0;}
.cv-comment-copy{min-width:0;overflow-wrap:anywhere;}
.cv-comment-reaction{min-width:0;}
.cv-comment-adaptive .cv-comment-reaction img[src*="/assets/reactions/"]{
 display:block;margin:10px 0 0!important;max-width:100%!important;
 width:auto!important;height:auto!important;object-fit:contain;
}
@container (min-width:480px){
 .cv-comment-adaptive{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,240px);gap:16px;align-items:start;}
 .cv-comment-adaptive .cv-comment-reaction img[src*="/assets/reactions/"]{
  margin:0 0 0 auto!important;max-width:240px!important;max-height:170px!important;
 }
}

/* v0.17.3.1: DLE nested comm-id content; container is the comment body. */
.cv-comment-body{container-type:inline-size;}
.cv-comment-body [id^="comm-id-"].cv-comment-adaptive{display:flex;flex-direction:column;gap:10px;min-width:0;}
.cv-comment-body .cv-comment-adaptive>.cv-comment-copy{min-width:0;flex:1 1 auto;overflow-wrap:anywhere;}
.cv-comment-body .cv-comment-adaptive>.cv-comment-reaction{min-width:0;flex:0 0 auto;}
.cv-comment-body .cv-comment-adaptive>.cv-comment-reaction img[src*="/assets/reactions/"]{display:block;margin:0!important;max-width:min(220px,100%)!important;max-height:170px!important;width:auto!important;height:auto!important;}
@container (min-width:480px){
 .cv-comment-body [id^="comm-id-"].cv-comment-adaptive{flex-direction:row;align-items:flex-start;gap:16px;}
 .cv-comment-body .cv-comment-adaptive>.cv-comment-reaction{flex:0 0 220px;max-width:220px;margin-left:auto;}
 .cv-comment-body .cv-comment-adaptive>.cv-comment-reaction img[src*="/assets/reactions/"]{margin:0 0 0 auto!important;}
}

/* v0.17.3.2 — balanced 280px GIF and 560px container breakpoint.
   Override earlier v0.17.3/3.1 container-query rules without touching JS. */
.cv-comment-body .cv-comment-adaptive>.cv-comment-reaction img[src*="/assets/reactions/"]{
  max-width:min(280px,100%)!important;
  max-height:180px!important;
}
@container (min-width:480px) and (max-width:559.98px){
  .cv-comment-body [id^="comm-id-"].cv-comment-adaptive{
    flex-direction:column;
    gap:10px;
  }
  .cv-comment-body .cv-comment-adaptive>.cv-comment-reaction{
    flex:0 0 auto;
    max-width:100%;
    margin-left:0;
  }
  .cv-comment-body .cv-comment-adaptive>.cv-comment-reaction img[src*="/assets/reactions/"]{
    margin:0!important;
  }
}
@container (min-width:560px){
  .cv-comment-body [id^="comm-id-"].cv-comment-adaptive{
    flex-direction:row;
    align-items:flex-start;
    gap:16px;
  }
  .cv-comment-body .cv-comment-adaptive>.cv-comment-reaction{
    flex:0 0 280px;
    max-width:280px;
    margin-left:auto;
  }
  .cv-comment-body .cv-comment-adaptive>.cv-comment-reaction img[src*="/assets/reactions/"]{
    margin:0 0 0 auto!important;
  }
}

/* v0.17.8.5-search-ui-fix3 */

.cv-search-mode .inner-layout.cv-search-layout {
    grid-template-columns: minmax(0,1fr);
}

.cv-search-mode .side-panel {
    display:none;
}

.cv-search-mode .content-panel,
.cv-search-mode .cv-search-panel {
    width:100%;
}

/* v0.17.8.6-search-header */

/* Keep v0.17.7 result rendering untouched */

.cv-search-mode .cv-search-title {
    display:block;
    margin:25px 0 10px;
}

.cv-search-mode .cv-search-subtitle {
    display:block;
    opacity:.75;
    margin-bottom:25px;
}

/* v0.17.8.6-search-header-fix */
.cv-search-mode .search-advanced-hidden {
    display:none!important;
}

/* v0.17.8.7-search-header */

.cv-search-head {
    margin: 24px 0 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,.12);
}

.cv-search-head small {
    display:block;
    letter-spacing:2px;
    text-transform:uppercase;
    font-size:11px;
    opacity:.75;
}

.cv-search-head h1 {
    margin:6px 0 8px;
    font-size:32px;
}

.cv-search-head p {
    margin:0;
    opacity:.75;
}

/* v0.17.8.8-search-results-layout */

/*
   Search results only.
   Keeps v0.17.7 DLE markup untouched.
*/

.cv-search-mode .shortstory {
    display:flex;
    gap:25px;
    padding:20px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.cv-search-mode .short-33 {
    flex:0 0 260px;
}

.cv-search-mode .short-66 {
    flex:1;
}

.cv-search-mode .short-img img {
    width:260px;
    height:260px;
    object-fit:cover;
}

.cv-search-mode .short-title {
    margin-top:0;
}

.cv-search-mode .short-text {
    margin-top:15px;
}

/* v0.17.8.9-search-results-polish */

/* Search results only */

.cv-search-mode .short-title a,
.cv-search-mode .short-title b {
    transition: color .2s ease;
}

.cv-search-mode .short-title a:hover {
    color: #ef1680;
}

.cv-search-mode .short-category a {
    color: #0bc6dc;
    transition: color .2s ease;
}

.cv-search-mode .short-category a:hover {
    color: #ef1680;
}

/* Hide DLE counters */
.cv-search-mode .short-meta,
.cv-search-mode .short-comments,
.cv-search-mode .short-views,
.cv-search-mode .comm-num,
.cv-search-mode .views-num {
    display:none;
}

/* Replace the visible "More" continuation link style */
.cv-search-mode .shortstory a[href*="fullstory"] {
    text-decoration:none;
}

/* Release action */
.cv-search-mode .shortstory .cv-open-release {
    display:inline-block;
    margin-top:18px;
    padding:8px 14px;
    border:1px solid #ef1680;
    color:#ef1680;
    text-transform:uppercase;
    font-size:12px;
    letter-spacing:.5px;
}

.cv-search-mode .shortstory .cv-open-release:hover {
    background:#ef1680;
    color:#fff;
}

/* v0.17.8.9-fix — native DLE search results, scoped only to search */
.cv-search-mode .shortstory .short-title a,
.cv-search-mode .shortstory .short-title a b {transition:color .18s ease!important}
.cv-search-mode .shortstory .short-title a:hover,
.cv-search-mode .shortstory .short-title a:hover b {color:#ef1680!important}
.cv-search-mode .shortstory .short-category {display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:10px}
.cv-search-mode .shortstory .short-category a {
  display:inline-flex;align-items:center;padding:4px 8px;
  border:1px solid #303843;border-radius:3px;background:#101419;
  color:#aab7c6!important;font-size:11px;line-height:1.25;text-transform:uppercase;
  text-decoration:none;transition:background .18s,border-color .18s,color .18s
}
.cv-search-mode .shortstory .short-category a:hover,
.cv-search-mode .shortstory .short-category a:focus-visible {
  background:#0bc6dc!important;border-color:#0bc6dc!important;color:#071015!important
}
.cv-search-mode .shortstory .short-info-b {display:none!important}
.cv-search-mode .shortstory a.short-more.cv-open-release {
  display:inline-flex;align-items:center;justify-content:center;
  margin-top:14px;padding:9px 14px;border:1px solid #ef1680;
  border-radius:3px;background:#ef16800d;color:#f5dce9!important;
  font-size:11px;font-weight:800;letter-spacing:.65px;text-transform:uppercase;
  text-decoration:none;transition:background .18s,color .18s,border-color .18s
}
.cv-search-mode .shortstory a.short-more.cv-open-release:hover {
  background:#ef1680!important;color:#fff!important
}
.cv-search-mode .cv-search-empty {
  padding:28px 26px;margin:20px 0 36px;background:#101216;
  border:1px solid #282c33;border-left:3px solid #ef1680;border-radius:5px
}
.cv-search-mode .cv-search-empty small {color:#0bc6dc;font-size:10px;letter-spacing:1.8px;font-weight:800}
.cv-search-mode .cv-search-empty h2 {font-size:23px;margin:9px 0}
.cv-search-mode .cv-search-empty p {color:#aeb5be;margin:8px 0}
.cv-search-mode .cv-search-empty .cv-request-upload {
  display:inline-block;margin-top:13px;padding:11px 16px;border:1px solid #ef1680;
  color:#fff;background:#bb17601c;font-size:11px;font-weight:800;letter-spacing:.6px
}
.cv-search-mode .cv-search-empty .cv-request-upload:hover {background:#ef1680}
@media(max-width:700px) {
 .cv-search-mode .cv-search-empty{padding:20px 16px}
}


/* v0.17.8.9-fix2 — DLE bold title overrides anchor color */
body.cv-search-mode .shortstory .short-66 h3.short-title a:hover,
body.cv-search-mode .shortstory .short-66 h3.short-title a:hover b,
body.cv-search-mode .shortstory .short-66 h3.short-title a:focus-visible,
body.cv-search-mode .shortstory .short-66 h3.short-title a:focus-visible b {color:#ef1680!important;text-shadow:none!important}

/* Feedback: native DLE form, no backend changes */
body.cv-feedback-mode .inner-layout{grid-template-columns:minmax(0,1fr)!important;max-width:1100px}
body.cv-feedback-mode .inner-layout>.side-panel{display:none!important}
body.cv-feedback-mode .content-panel{width:100%;min-width:0}
body.cv-feedback-mode .content-panel .block-st,
body.cv-feedback-mode .content-panel .base,
body.cv-feedback-mode .content-panel .story {padding:28px!important;border:1px solid #292d35!important;border-radius:6px;background:#101216}
body.cv-feedback-mode .content-panel h1,
body.cv-feedback-mode .content-panel h2,
body.cv-feedback-mode .content-panel .h-block {color:#fff;font-size:clamp(23px,3vw,30px);letter-spacing:.2px}
body.cv-feedback-mode .content-panel form input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),
body.cv-feedback-mode .content-panel form textarea,
body.cv-feedback-mode .content-panel form select {display:block;box-sizing:border-box;width:100%;max-width:680px;min-height:43px;margin:7px 0 14px;padding:11px 13px;border:1px solid #353b46;border-radius:4px;background:#090b0f;color:#f5f5f6;font:inherit;outline:0}
body.cv-feedback-mode .content-panel form textarea{min-height:190px;resize:vertical}
body.cv-feedback-mode .content-panel form input:focus,
body.cv-feedback-mode .content-panel form textarea:focus,
body.cv-feedback-mode .content-panel form select:focus{border-color:#0bc6dc!important;box-shadow:0 0 0 2px #0bc6dc16}
body.cv-feedback-mode .content-panel form button,
body.cv-feedback-mode .content-panel form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 22px;border:1px solid #ef1680;border-radius:3px;background:linear-gradient(100deg,#bb1760,#ef1680);color:white;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;cursor:pointer}
body.cv-feedback-mode .content-panel form button:hover,
body.cv-feedback-mode .content-panel form input[type=submit]:hover{filter:brightness(1.15)}
body.cv-feedback-mode .content-panel form label{color:#bfc5ce;font-size:12px}
body.cv-feedback-mode .content-panel .cv-feedback-kicker{display:block;margin:0 0 12px;color:#0bc6dc;font-size:10px;font-weight:800;letter-spacing:2px}


/* v0.17.8.9-fix3 — actual markup: <h3><a class="short-title"><b>...</b></a></h3> */
body.cv-search-mode .shortstory a.short-title,
body.cv-search-mode .shortstory a.short-title b {
  color:#f4f4f6!important;
  transition:color .18s ease;
}
body.cv-search-mode .shortstory a.short-title:hover,
body.cv-search-mode .shortstory a.short-title:hover b,
body.cv-search-mode .shortstory a.short-title:focus-visible,
body.cv-search-mode .shortstory a.short-title:focus-visible b {
  color:#ef1680!important;
}
/* Search form styling independent of feedback mode and DLE engine.css */
body.cv-search-mode form#fullsearch input:not([type="hidden"]):not([type="submit"]):not([type="button"]),
body.cv-search-mode form[name="fullsearch"] input:not([type="hidden"]):not([type="submit"]):not([type="button"]) {
  box-sizing:border-box;max-width:100%;width:320px;min-height:40px;
  padding:9px 12px;background:#090b0f;border:1px solid #353b46;
  border-radius:4px;color:#f4f4f6;font:inherit;
}
body.cv-search-mode form#fullsearch input:focus,
body.cv-search-mode form[name="fullsearch"] input:focus {
  outline:none;border-color:#0bc6dc;box-shadow:0 0 0 2px #0bc6dc16;
}
body.cv-search-mode form#fullsearch .bbcodes,
body.cv-search-mode form[name="fullsearch"] .bbcodes,
body.cv-search-mode form#fullsearch input[type="submit"],
body.cv-search-mode form[name="fullsearch"] input[type="submit"] {
  display:inline-flex;align-items:center;justify-content:center;
  width:auto;min-height:36px;padding:9px 16px;
  border:1px solid #ef1680;border-radius:3px;
  background:linear-gradient(100deg,#bb1760,#ef1680);color:#fff;
  font-size:11px;font-weight:800;letter-spacing:.4px;
  text-transform:uppercase;cursor:pointer;
}
body.cv-search-mode form#fullsearch .bbcodes:hover,
body.cv-search-mode form[name="fullsearch"] .bbcodes:hover,
body.cv-search-mode form#fullsearch input[type="submit"]:hover,
body.cv-search-mode form[name="fullsearch"] input[type="submit"]:hover {
  filter:brightness(1.15);
}


/* v0.17.8.10 — Search pagination only. Keep DLE-generated links intact. */
body.cv-search-mode .content-panel .pages,
body.cv-search-mode .content-panel .navigation,
body.cv-search-mode .cv-search-panel .pages,
body.cv-search-mode .cv-search-panel .navigation {
  width:100%;clear:both;box-sizing:border-box;
  display:flex!important;align-items:center;justify-content:center;
  flex-wrap:wrap;gap:8px;margin:24px 0 0!important;
  padding:22px 8px 0!important;border-top:1px solid #252930;
  background:transparent;text-align:center;
}
body.cv-search-mode .pages .pages-numbers,
body.cv-search-mode .navigation .pages-numbers {
  display:flex!important;align-items:center;justify-content:center;
  flex-wrap:wrap;gap:8px;margin:0!important;padding:0!important;
}
body.cv-search-mode .pages .pages-prev,
body.cv-search-mode .pages .pages-next,
body.cv-search-mode .navigation .pages-prev,
body.cv-search-mode .navigation .pages-next {margin:0!important;padding:0!important;min-width:0!important;}
body.cv-search-mode .pages a,
body.cv-search-mode .pages span,
body.cv-search-mode .navigation a,
body.cv-search-mode .navigation span {
  box-sizing:border-box;display:inline-flex!important;align-items:center;
  justify-content:center;min-width:42px;min-height:42px;
  margin:0!important;padding:0 11px!important;
  border:1px solid #30353d;background:#101318;
  color:#aab1bd;font-size:13px;font-weight:800;
  line-height:1.15;text-decoration:none;vertical-align:middle;
}
body.cv-search-mode .pages a:hover,
body.cv-search-mode .pages a:focus-visible,
body.cv-search-mode .navigation a:hover,
body.cv-search-mode .navigation a:focus-visible {
  border-color:#0bc6dc!important;color:#0bc6dc!important;
  background:#101a20;outline:none;
}
body.cv-search-mode .pages .pages-numbers span,
body.cv-search-mode .navigation .pages-numbers span,
body.cv-search-mode .pages span.current,
body.cv-search-mode .navigation span.current,
body.cv-search-mode .pages span.page-active,
body.cv-search-mode .navigation span.page-active {
  border-color:#bb1760!important;background:#bb1760!important;color:#fff!important;
}
body.cv-search-mode .pages .pages-prev a,
body.cv-search-mode .pages .pages-next a,
body.cv-search-mode .navigation .pages-prev a,
body.cv-search-mode .navigation .pages-next a {min-width:94px;padding:0 14px!important;}
@media(max-width:600px){
  body.cv-search-mode .content-panel .pages,
  body.cv-search-mode .content-panel .navigation,
  body.cv-search-mode .cv-search-panel .pages,
  body.cv-search-mode .cv-search-panel .navigation {gap:6px;padding-left:0!important;padding-right:0!important;}
  body.cv-search-mode .pages a,
  body.cv-search-mode .pages span,
  body.cv-search-mode .navigation a,
  body.cv-search-mode .navigation span {min-width:40px;min-height:42px;padding:0 9px!important;}
}

/* Native DLE 12.1 emoticon popup: theme only, leave editor behavior intact. */
#smiles, #smilesbox, #dle-smiles, #dle-smilesbox,
.smilesbox, .smiles-box, .dle-smiles, .dle-smilesbox,
#smiles .ui-widget-content, #smilesbox .ui-widget-content {
  background: #101318 !important;
  color: #eaf0f6 !important;
  border: 1px solid #303744 !important;
  border-radius: 7px !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.48) !important;
}
#smiles a, #smilesbox a, #dle-smiles a, #dle-smilesbox a,
.smilesbox a, .smiles-box a, .dle-smiles a, .dle-smilesbox a {
  display: inline-block;
  border-radius: 4px;
  padding: 3px;
}
#smiles a:hover, #smilesbox a:hover, #dle-smiles a:hover, #dle-smilesbox a:hover,
.smilesbox a:hover, .smiles-box a:hover, .dle-smiles a:hover, .dle-smilesbox a:hover {
  background: rgba(11,198,220,.15) !important;
  outline: 1px solid #0bc6dc;
}

/* CosmoVolume — native DLE smile picker */

body .bb-pane-dropdown {
    background: #101318 !important;
    color: #e8edf5 !important;
    border: 1px solid #303744 !important;
    border-radius: 8px !important;
    box-shadow: 0 14px 36px rgba(0, 0, 0, .45) !important;
    padding: 8px !important;
}

body .bb-pane-dropdown a,
body .bb-pane-dropdown button {
    background: transparent !important;
    border-radius: 5px;
    transition: background-color .15s ease;
}

body .bb-pane-dropdown a:hover,
body .bb-pane-dropdown button:hover {
    background: rgba(11, 198, 220, .16) !important;
}

body .bb-pane-dropdown img {
    vertical-align: middle;
}

/* CosmoVolume MP3 genre navigation v1 — after cards and pagination */
.cv-mp3-genre-nav[hidden]{display:none!important}
.cv-mp3-genre-nav{padding-bottom:34px}
.cv-mp3-genre-panel{overflow:hidden;background:#101216;border:1px solid #25282e;border-radius:var(--radius)}
.cv-mp3-genre-panel .section-head>div{display:flex;flex-direction:column;gap:3px;justify-content:center}
.cv-mp3-genre-panel .section-head small{font-size:10px;letter-spacing:.11em;color:#0bc6dc;font-weight:700}
.cv-mp3-genre-panel .section-head h2{font-size:20px}
.cv-mp3-genre-intro{margin:15px 16px 0;color:#a7b3c5;font-size:13px}
.cv-mp3-genre-cloud{padding:14px 16px 18px}
.cv-mp3-genre-cloud a[aria-current="page"]{color:#fff;border-color:#0bc6dc;background:rgba(11,198,220,.12)}
@media(max-width:600px){.cv-mp3-genre-panel .section-head{gap:12px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.cv-mp3-genre-panel .section-head h2{font-size:17px}}

/* CosmoVolume — uniform tag cloud layout */
.tag-cloud {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center;
    align-content: flex-start;
    gap: 6px 7px;
    line-height: normal;
}

/* DLE tag wrappers */
.tag-cloud > span {
    display: flex !important;
    align-items: center;
    flex: 0 0 auto;
    margin: 0 !important;
    padding: 0 !important;
    line-height: normal !important;
    vertical-align: baseline !important;
}

/* Tag links */
.tag-cloud > span > a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    line-height: 1.3 !important;
    vertical-align: middle !important;
    white-space: nowrap;
}

/* Neutralize DLE cloud font-size variations */
.tag-cloud .clouds_xsmall,
.tag-cloud .clouds_small,
.tag-cloud .clouds_medium,
.tag-cloud .clouds_large,
.tag-cloud .clouds_xlarge {
    font-size: inherit !important;
}