@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/cinzel-latin-ext-wght-normal-CG36JvV6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/cinzel-latin-wght-normal-DMUuCU8H.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Grenze Gotisch Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/grenze-gotisch-vietnamese-wght-normal-DCapxpm9.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Grenze Gotisch Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/grenze-gotisch-latin-ext-wght-normal-HmOq8Fgg.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Grenze Gotisch Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/grenze-gotisch-latin-wght-normal-BhUVw2FV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#050505;--surface:#0a0a0ccc;--surface-solid:#0e0e11;--line:#dcdce61f;--line-strong:#dcdce63d;--heading:#f2f2f5;--text:#e6e6ea;--text-dim:#a9a9b3;--text-faint:#7d7d87;--chrome-edge:linear-gradient(135deg, #ffffff73, #7878821f 40%, #ffffff47 60%, #50505a14);--blood:#8b0000;--blood-hi:#c1121f;--blood-text:#ff6b75;--glow-white:0 0 18px #ffffff29, 0 0 2px #ffffff80;--glow-red:0 0 14px #c1121f99, 0 0 36px #8b000066;--font-goth:"Cinzel Variable", "Trajan Pro", Georgia, serif;--font-body:"Inter Variable", "Segoe UI", system-ui, sans-serif;--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--blood-hi);outline-offset:2px}.page-loading{min-height:100vh;color:var(--text-dim);letter-spacing:.3em;text-transform:uppercase;place-items:center;font-size:12px;display:grid}.goth{font-family:var(--font-goth);letter-spacing:.08em;color:var(--heading);text-shadow:0 0 18px #ffffff24,0 1px #000c;font-weight:700}.panel{background:var(--surface);-webkit-backdrop-filter:blur(14px)saturate(120%);border-radius:var(--radius);position:relative;box-shadow:0 20px 60px #0009,inset 0 1px #ffffff0d}.panel:before{content:"";border-radius:inherit;background:var(--chrome-edge);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.btn{border:1px solid var(--line-strong);color:var(--text);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(#ffffff0f,#ffffff03);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .2s,box-shadow .2s,background .2s,color .2s;display:inline-flex}.btn:hover:not(:disabled){box-shadow:var(--glow-white);color:#fff;border-color:#ffffff8c}.btn-red{background:linear-gradient(#c1121f59,#8b000040);border-color:#c1121fb3}.btn-red:hover:not(:disabled){border-color:var(--blood-hi);box-shadow:var(--glow-red)}.btn-ghost{color:var(--text-dim);background:0 0;border-color:#0000}.btn-icon{border-radius:10px;padding:8px}.pill{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--text-dim);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:5px 11px;font-size:11px;font-weight:600;display:inline-flex}html.has-custom-cursor,html.has-custom-cursor *{cursor:none!important}html.has-custom-cursor input:not([type=range]),html.has-custom-cursor textarea{cursor:text!important}.cursor-dot,.cursor-ring{z-index:9999;pointer-events:none;border-radius:50%;position:fixed;top:0;left:0}.cursor-dot{background:#fff;width:6px;height:6px;margin:-3px 0 0 -3px;box-shadow:0 0 8px #fffc}.cursor-dot.is-pressed{background:#ff3b47;box-shadow:0 0 10px #e11e2de6}.cursor-ring{border:1px solid #ffffff8c;width:34px;height:34px;margin:-17px 0 0 -17px;transition:border-color .2s,background-color .2s,box-shadow .2s;box-shadow:0 0 12px #ffffff1f}.cursor-ring.is-hover{background-color:#c1121f1a;border-color:#e11e2de6;box-shadow:0 0 18px #c1121f73}.cursor-ring.is-pressed{border-color:#ff3b47}.home{min-height:100vh;position:relative;overflow:hidden}.home-ui{z-index:1;pointer-events:none;grid-template-rows:auto 1fr auto;gap:16px;min-height:100vh;padding:24px 28px 22px;display:grid;position:relative}.home-ui>*{pointer-events:auto}.topbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar-right{align-items:center;gap:12px;display:flex}.brand{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.logo-wrap{flex-direction:column;align-items:stretch;line-height:1;display:inline-flex}.logo{font-family:"Grenze Gotisch Variable", var(--font-goth);letter-spacing:.015em;text-shadow:none;align-items:baseline;margin:0;font-size:clamp(40px,5.6vw,66px);font-weight:750;line-height:.9;display:inline-flex}.logo-rule{background:linear-gradient(90deg,#0000,#ffffff8c 20% 80%,#0000);width:100%;height:1px;margin-top:8px;display:block;position:relative}.logo-rule:after{content:"";background:#e0202e;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 0 10px #e11e2de6}.logo-main{background:linear-gradient(105deg,#e8e8ee 0% 42%,#fff 47%,#ffe3e5 50%,#fff 53%,#e8e8ee 58% 100%) 100% 0/300% 100%;color:#0000;filter:drop-shadow(0 0 16px #ffffff38)drop-shadow(0 2px #000000e6);-webkit-background-clip:text;background-clip:text;animation:7s ease-in-out 1.6s infinite logo-shine}@keyframes logo-shine{0%{background-position:100% 0}22%,to{background-position:0 0}}.logo-fm{color:#e0202e;text-shadow:0 0 12px #c1121fbf,0 0 32px #8b00008c,0 2px #000000e6;margin-left:.04em;animation:3.6s ease-in-out infinite fm-breathe}@keyframes fm-breathe{0%,to{text-shadow:0 0 10px #c1121f99,0 0 26px #8b000073,0 2px #000000e6}50%{text-shadow:0 0 18px #e11e2df2,0 0 44px #8b0000b3,0 2px #000000e6}}.insta-link{color:var(--text-dim);letter-spacing:.08em;border:1px solid var(--line);background:#00000059;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 9px;font-size:13px;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s,box-shadow .2s,background .2s;display:inline-flex}.insta-link:hover,.insta-link:focus-visible{color:#fff;background:#8b00002e;border-color:#c1121f99;box-shadow:0 0 18px #c1121f59}.onair-sign{align-items:center;gap:12px;display:flex}.onair-lamp{background:radial-gradient(at 50% 40%,#2a0508 0%,#140204 70%,#0b0103 100%);border:1px solid #a01e2873;border-radius:6px;place-items:center;padding:7px 14px;animation:8s infinite lamp-standby;display:inline-grid;position:relative;box-shadow:inset 0 0 0 2px #0009,inset 0 0 14px #780a1459,0 0 0 1px #ffffff14,0 0 14px #8b00002e}.onair-text{font-family:var(--font-body);letter-spacing:.32em;color:#5c1219;text-shadow:0 0 6px #c1121f40;margin-right:-.32em;font-size:13px;font-weight:800;animation:8s infinite lamp-text}@keyframes lamp-text{0%,84%,to{color:#5c1219;text-shadow:0 0 6px #c1121f40}86%{color:#ff3b47;text-shadow:0 0 10px #ff2b38,0 0 26px #c1121fe6}87%{color:#5c1219;text-shadow:0 0 6px #c1121f40}89%{color:#d42230;text-shadow:0 0 8px #e0202e,0 0 20px #c1121fb3}92%{color:#6a1520;text-shadow:0 0 6px #c1121f4d}}@keyframes lamp-standby{0%,84%,87%,92%,to{box-shadow:inset 0 0 0 2px #0009,inset 0 0 14px #780a1459,0 0 0 1px #ffffff14,0 0 14px #8b00002e}86%,89%{box-shadow:inset 0 0 0 2px #0009,inset 0 0 22px #e11e2d8c,0 0 0 1px #ffffff1a,0 0 30px #c1121f8c}}.onair-caption{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.onair-state{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;font-size:11px;font-weight:600}.onair-signal{align-items:flex-end;gap:3px;height:10px;display:inline-flex}.onair-signal i{background:#3a3a42;border-radius:1px;width:3px;animation:2.4s ease-in-out infinite signal-scan}.onair-signal i:first-child{height:3px}.onair-signal i:nth-child(2){height:5px;animation-delay:.2s}.onair-signal i:nth-child(3){height:7px;animation-delay:.4s}.onair-signal i:nth-child(4){height:10px;animation-delay:.6s}@keyframes signal-scan{0%,60%,to{background:#3a3a42}20%{background:#8a2a33}}.middle{pointer-events:none;justify-content:space-between;align-items:flex-end;gap:20px;min-height:0;display:flex}.middle>*{pointer-events:auto}.middle-left{pointer-events:none;flex-direction:column;justify-content:flex-end;align-self:stretch;gap:14px;min-width:0;display:flex}.middle-left>*{pointer-events:auto}.middle>.tracklist{align-self:center}.brand-links{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.about-trigger{border:1px solid var(--line);color:var(--text-dim);letter-spacing:.04em;background:#00000059;border-radius:999px;padding:5px 13px;font-size:13px;font-weight:600;transition:color .2s,border-color .2s,box-shadow .2s,background .2s}.about-trigger:hover,.about-trigger:focus-visible{color:#fff;box-shadow:var(--glow-white);border-color:#ffffff80}.request-trigger{color:#fff;background:linear-gradient(#c1121f4d,#8b000033);border-color:#c1121f99}.request-trigger:hover,.request-trigger:focus-visible{border-color:var(--blood-hi);box-shadow:var(--glow-red)}.about-card.request-card{text-align:left;align-items:stretch}.request-card .weekly-diamond,.request-card .about-title{align-self:center}.request-form{flex-direction:column;gap:14px;display:flex}.request-form .about-soon{text-align:center;font-size:14px}.request-form .field label{color:var(--text);font-size:13px;font-weight:600}.request-textarea{resize:vertical;min-height:96px;line-height:1.5}.request-counter{color:var(--text-faint);font-variant-numeric:tabular-nums;align-self:flex-end;font-size:11px}.request-form .btn-red{align-self:flex-end}.request-sent{text-align:center;color:var(--text);flex-direction:column;align-items:center;gap:16px;display:flex}.request-sent p{margin:6px 0 0}.request-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.hp-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.news{flex-direction:column;gap:10px;width:min(320px,100%);padding:14px 16px 10px;display:flex}.news-head{align-items:center;gap:10px;display:flex}.news-title{flex:1;margin:0;font-size:15px}.news-count{color:var(--text-dim);font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:11px}.news-viewport{min-height:112px;position:relative;overflow:hidden}.news-item{color:inherit;border-radius:8px;flex-direction:column;gap:6px;padding:2px 0;text-decoration:none;display:flex}.news-headline{color:#fff;font-size:14.5px;font-weight:700;line-height:1.35}.news-summary{color:var(--text-dim);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.news-more{color:var(--blood-text);letter-spacing:.04em;align-items:center;gap:5px;font-size:11.5px;font-weight:600;display:inline-flex}.news-item:hover .news-headline,.news-item:focus-visible .news-headline{text-underline-offset:3px;-webkit-text-decoration:underline #e11e2db3;text-decoration:underline #e11e2db3}.news-timer{background:#ffffff14;border-radius:2px;height:2px;overflow:hidden}.news-timer span{background:linear-gradient(90deg, var(--blood), var(--blood-hi));transform-origin:0;width:100%;height:100%;animation:linear forwards news-timer;display:block}.news-timer span.is-paused{animation-play-state:paused}@keyframes news-timer{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.news-foot{justify-content:space-between;align-items:center;display:flex}.news-source{color:var(--text-faint);letter-spacing:.04em;font-size:11px;text-decoration:none}.news-source:hover{color:var(--text-dim);text-decoration:underline}.news-nav{gap:2px;display:flex}.news-nav .btn-icon{padding:4px}.about-layer{z-index:60;overscroll-behavior:contain;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:radial-gradient(#0505058c,#050505e0);padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.about-card{text-align:center;flex-direction:column;align-items:center;gap:12px;width:min(560px,100%);margin:auto;padding:34px 32px 30px;display:flex}.about-close{position:absolute;top:10px;right:10px}.about-title{margin:0;font-size:26px}.about-soon{color:var(--text-dim);margin:0;line-height:1.6}.about-roles{letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:11px;font-weight:700;display:flex}.about-roles i{background:var(--blood-hi);width:4px;height:4px;transform:rotate(45deg)}.about-body{text-align:left;color:var(--text);flex-direction:column;gap:12px;margin-top:6px;font-size:14.5px;line-height:1.7;display:flex}.about-body p{margin:0}.about-since{border-left:3px solid var(--blood-hi);color:var(--text-dim);background:linear-gradient(90deg,#8b00002e,#0000);border-radius:0 8px 8px 0;flex-wrap:wrap;align-items:baseline;gap:10px;padding:10px 14px;font-size:13px;line-height:1.4;display:flex}.about-since-date{font-family:var(--font-goth);color:#fff;letter-spacing:.06em;font-size:16px;font-weight:700}.about-since strong{color:#fff}.about-genres{flex-wrap:wrap;justify-content:center;gap:8px;margin:6px 0 0;padding:0;list-style:none;display:flex}.about-genres li{border:1px solid var(--line-strong);letter-spacing:.06em;color:var(--text-dim);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.about-genres li.is-main{color:#fff;background:#8b000033;border-color:#c1121f99}@media (width<=600px){.about-card{padding:30px 20px 24px}.about-body{font-size:14px}}.weekly{flex-direction:column;gap:12px;width:min(320px,100%);padding:16px 18px 18px;display:flex;overflow:hidden}.weekly:after{content:"";background:linear-gradient(180deg, transparent, var(--blood-hi), transparent);opacity:.9;background-size:100% 200%;width:3px;animation:4s ease-in-out infinite weekly-edge;position:absolute;top:0;bottom:0;left:0}@keyframes weekly-edge{0%,to{background-position:0 100%}50%{background-position:0 0}}.weekly-head{align-items:center;gap:12px;display:flex}.weekly-diamond{background:#e0202e;flex:none;width:9px;height:9px;transform:rotate(45deg);box-shadow:0 0 10px #e11e2de6}.weekly-title{margin:0;font-size:16px}.weekly-sub{color:var(--text-dim);letter-spacing:.2em;text-transform:uppercase;margin-top:3px;font-size:11px}.weekly-song{min-width:0}.weekly-name{color:#fff;overflow-wrap:anywhere;font-size:17px;font-weight:700;line-height:1.3}.weekly-artist{color:var(--text-dim);margin-top:2px;font-size:13.5px}.weekly-link{border:1px solid var(--line-strong);color:var(--text);background:#ffffff0a;border-radius:999px;align-self:flex-start;align-items:center;gap:9px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .2s,box-shadow .2s,background .2s,color .2s;display:inline-flex}.weekly-link svg:first-child{color:var(--text);transition:color .2s}.weekly-note{color:var(--text-faint);letter-spacing:.04em;font-size:11px}.weekly-actions{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.weekly-actions.is-compact{flex-flow:wrap;justify-content:space-between;align-items:center;gap:10px}.weekly-actions.is-compact .weekly-link{padding:5px 11px;font-size:12px}.weekly-hint{color:var(--text-faint);font-size:10.5px;line-height:1.4}.spotify-embed{background:#ffffff0a;border-radius:12px;min-height:80px;position:relative;overflow:hidden}.spotify-embed-frame{border:0;border-radius:12px;width:100%;height:80px;display:block}.spotify-embed-loading{color:var(--text-faint);place-items:center;font-size:12px;animation:1.4s ease-in-out infinite embed-pulse;display:grid;position:absolute;inset:0}@keyframes embed-pulse{0%,to{opacity:.5}50%{opacity:1}}.platform-youtube .weekly-link:hover,.platform-youtube .weekly-link:focus-visible{color:#fff;border-color:#ff0000a6;box-shadow:0 0 18px #ff00004d}.platform-youtube .weekly-link:hover svg:first-child{color:#f03}.platform-spotify .weekly-link:hover,.platform-spotify .weekly-link:focus-visible{color:#fff;border-color:#1ed76099;box-shadow:0 0 18px #1ed76040}.platform-spotify .weekly-link:hover svg:first-child{color:#1ed760}.tracklist{flex-direction:column;width:min(370px,100%);max-height:min(58vh,560px);display:flex;overflow:hidden}.tracklist-head{justify-content:space-between;align-items:baseline;padding:16px 18px 10px;display:flex}.tracklist-head h2{margin:0;font-size:19px}.tracklist-head small{color:var(--text-dim);letter-spacing:.06em;font-size:12px}.tracklist ul{margin:0;padding:4px 8px 10px;list-style:none;overflow-y:auto}.tracklist ul::-webkit-scrollbar{width:6px}.tracklist ul::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:3px}.track-row{text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;width:100%;padding:10px;transition:background .2s,border-color .2s,box-shadow .2s;display:grid}.track-row:hover{border-color:var(--line);background:#ffffff0d}.track-row.is-current{box-shadow:inset 3px 0 0 var(--blood-hi);background:linear-gradient(90deg,#8b000038,#8b00000f);border-color:#c1121f66}.track-num{color:var(--text-faint);text-align:center;font-variant-numeric:tabular-nums;place-items:center;font-size:12px;display:grid}.track-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.track-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.track-row.is-current .track-title{color:#fff}.track-artist{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.track-dur{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:12px}.tracklist-empty{color:var(--text-dim);padding:20px 18px 26px;font-size:14px}.eq{align-items:flex-end;gap:2px;height:12px;display:inline-flex}.eq i{background:var(--blood-text);border-radius:1px;width:3px;height:4px}.eq.on i{animation:.9s ease-in-out infinite eq}.eq.on i:nth-child(2){animation-delay:-.3s}.eq.on i:nth-child(3){animation-delay:-.6s}@keyframes eq{0%,to{height:3px}50%{height:12px}}.dock{justify-content:center;display:flex}.playbar{grid-template-columns:auto 1fr minmax(120px,170px);align-items:center;gap:20px;width:min(980px,100%);padding:14px 20px;display:grid}.playbar.is-playing{box-shadow:0 20px 60px #0009,0 0 40px #c1121f29,inset 0 1px #ffffff0d}.transport{align-items:center;gap:6px;display:flex}.transport .btn-ghost:hover:not(:disabled){color:#fff;box-shadow:none}.play-btn{color:#0a0a0c;width:54px;height:54px;box-shadow:0 0 0 1px #ffffff40, 0 6px 20px #0009, var(--glow-white);background:radial-gradient(circle at 35% 30%,#fff 0%,#c4c4cc 30%,#5e5e66 70%,#2a2a30 100%);border:none;border-radius:50%;place-items:center;display:grid}.play-btn.on{box-shadow:0 0 0 1px #ffffff4d, 0 6px 20px #0009, var(--glow-red)}.now{flex-direction:column;gap:8px;min-width:0;display:flex}.now-line{align-items:baseline;min-width:0;height:22px;display:flex;position:relative;overflow:hidden}.now-text{align-items:baseline;gap:10px;min-width:0;display:flex}.now-title{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:700;overflow:hidden}.now-artist{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.now-hint{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.progress{color:var(--text-dim);font-variant-numeric:tabular-nums;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;font-size:11.5px;display:grid}.progress span:last-child{text-align:right}.bar{background:#ffffff1f;border-radius:3px;height:4px;position:relative}.bar.seekable{cursor:pointer;height:6px}.bar.seekable:hover .bar-fill{box-shadow:0 0 14px #c1121ff2}.bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--blood), var(--blood-hi));position:absolute;inset:0 auto 0 0;box-shadow:0 0 10px #c1121fb3}.volume{align-items:center;gap:8px;display:flex}.volume input[type=range]{accent-color:#d8d8de;width:100%}.list-toggle{display:none}@media (width<=820px){.home-ui{padding:16px 16px 14px}.middle{flex-direction:column;justify-content:flex-end;align-items:stretch;gap:10px}.middle>.tracklist{align-self:stretch}.middle-left{align-self:auto;gap:10px}.news{width:100%;padding:12px 14px 8px}.news-viewport{min-height:92px}.news-summary{-webkit-line-clamp:2}.weekly{gap:8px;width:100%;padding:12px 14px}.weekly-head{gap:10px}.weekly-name{font-size:15px}.logo{font-size:clamp(36px,10vw,46px)}.about-trigger,.insta-link{padding:4px 10px;font-size:12px}.tracklist{width:100%;max-height:46vh;display:none}.tracklist.open{display:flex}.list-toggle{display:inline-flex}.playbar{grid-template-columns:1fr;gap:10px;padding:12px 14px}.transport{order:2;justify-content:center}.now{order:1}.volume{display:none}.play-btn{width:50px;height:50px}.topbar{align-items:flex-start}.onair-sign{flex-direction:column;align-items:flex-end;gap:6px}.onair-caption{align-items:flex-end}.onair-state{letter-spacing:.1em;font-size:9.5px}.onair-lamp{padding:5px 10px}.onair-text{font-size:11px}.insta-link{font-size:12px}}@media (prefers-reduced-motion:reduce){.eq.on i{height:8px;animation:none}.logo-main,.logo-fm,.onair-lamp,.onair-text,.onair-signal i,.weekly:after,.news-timer span{animation:none}}.admin{background:radial-gradient(ellipse at 20% -10%, #8b000024, transparent 50%), radial-gradient(ellipse at 100% 0%, #ffffff0a, transparent 45%), var(--bg);min-height:100vh;padding:28px clamp(16px,4vw,48px) 60px}.admin-inner{flex-direction:column;gap:22px;max-width:1100px;margin:0 auto;display:flex}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-head h1{margin:0;font-size:clamp(26px,3.4vw,36px);line-height:1}.admin-head .sub{color:var(--text-dim);letter-spacing:.32em;text-transform:uppercase;margin-top:8px;font-size:12px}.section{padding:20px 22px}.section h2{flex-wrap:wrap;align-items:baseline;gap:12px;margin:0 0 14px;font-size:21px;display:flex}.section h2 small{font-family:var(--font-body);color:var(--text-dim);letter-spacing:.04em;text-shadow:none;font-size:12px;font-weight:500}.login-wrap{background:radial-gradient(ellipse at 50% 30%, #8b00001f, transparent 55%), var(--bg);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{flex-direction:column;gap:14px;width:min(380px,100%);padding:32px 30px;display:flex}.login-card h1{text-align:center;margin:0;font-size:32px}.change-info{color:var(--text-dim);text-align:center;margin:0 0 4px;font-size:13.5px;line-height:1.55}.login-card .btn-ghost{align-self:center}.login-card .sub{text-align:center;color:var(--text-dim);letter-spacing:.4em;text-transform:uppercase;margin-bottom:8px;font-size:11px}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-dim);letter-spacing:.06em;font-size:12px}.input{border:1px solid var(--line-strong);background:#00000073;border-radius:10px;outline:none;width:100%;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.input:focus{box-shadow:var(--glow-white);border-color:#fff9}.error-text{color:var(--blood-text);min-height:18px;font-size:13px}.dropzone{border:1.5px dashed var(--line-strong);text-align:center;color:var(--text-dim);cursor:pointer;border-radius:12px;padding:26px;transition:border-color .2s,background .2s,box-shadow .2s}.dropzone.over{border-color:var(--blood-hi);box-shadow:var(--glow-red);color:var(--text);background:#8b00001f}.dropzone strong{color:var(--text)}.admin-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin-row{background:var(--surface-solid);border:1px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:12px;grid-template-columns:22px 34px 1fr auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.admin-row.is-inactive .admin-meta{opacity:.55}.drag-handle{color:var(--text-faint);cursor:grab;touch-action:none;place-items:center;display:grid}.drag-handle:active{cursor:grabbing}.admin-meta{min-width:0}.admin-meta .t{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.admin-meta .a{color:var(--text-dim);font-size:12.5px}.admin-actions{align-items:center;gap:4px;display:flex}.edit-grid{grid-template-columns:1fr 1fr auto auto;align-items:center;gap:8px;display:grid}.switch{border:1px solid var(--line-strong);letter-spacing:.12em;text-transform:uppercase;background:#0006;border-radius:999px;align-items:center;gap:8px;min-width:104px;padding:4px 10px 4px 4px;font-size:11px;font-weight:700;display:inline-flex}.switch .knob{background:#3a3a42;border-radius:50%;width:18px;height:18px;transition:background .2s,box-shadow .2s}.switch.on{color:var(--text);border-color:#c1121f99}.switch.on .knob{background:var(--blood-hi);box-shadow:var(--glow-red)}.switch:not(.on){color:var(--text-dim)}.toast-area{z-index:50;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:18px;right:18px}.toast{max-width:340px;padding:12px 16px;font-size:14px}.toast.err{color:var(--blood-text)}.confirm-layer{z-index:40;background:#0009;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.confirm-card{flex-direction:column;gap:16px;max-width:400px;padding:24px;display:flex}.confirm-card .row{justify-content:flex-end;gap:10px;display:flex}.upload-progress{margin-top:12px}.inbox-badge{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--blood-hi);box-shadow:var(--glow-red);text-shadow:none;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.inbox{flex-direction:column;gap:8px;max-height:420px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.inbox-item{background:var(--surface-solid);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 14px;display:grid}.inbox-item.is-unread{box-shadow:inset 3px 0 0 var(--blood-hi);border-color:#c1121f80}.inbox-meta{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.inbox-user{color:#fff;font-weight:700}.inbox-meta time{color:var(--text-dim);font-size:12px}.inbox-message{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;grid-column:1;margin:0;line-height:1.5}.inbox-actions{grid-area:1/2/span 2;align-items:flex-start;gap:4px;display:flex}.inbox-item:not(.is-unread) .inbox-message{color:var(--text-dim)}.weekly-current{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.weekly-current-song{min-width:180px;color:var(--text);flex:1}.weekly-current-song strong{color:#fff}.pill-manual{color:#ffb3b8;border-color:#c1121f99}.weekly-override summary{cursor:pointer;color:var(--text-dim);margin-bottom:12px;font-size:13px}.weekly-override summary:hover{color:var(--text)}.weekly-form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.weekly-form-url{grid-column:1/-1}.weekly-form-actions{flex-wrap:wrap;grid-column:1/-1;gap:10px;display:flex}@media (width<=720px){.weekly-form{grid-template-columns:1fr}.admin-row{grid-template-columns:22px 1fr auto}.admin-row .row-num{display:none}.admin-row .admin-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end}.edit-grid{grid-template-columns:1fr}}
