:root{--bg:#000;--surface:#16141ce6;--border:#2c2836;--text:#f4f2f8;--muted:#9d97ad;--accent:#ff3d81;--live:#ff2d2d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{min-height:100vh;color:var(--text);background:#000;margin:0}body:before{content:"";z-index:-1;opacity:.2;background:url(/bg/stage.jpg) 50%/cover no-repeat;position:fixed;inset:0}a{color:inherit;text-decoration:none}main{max-width:1100px;margin:0 auto;padding:24px 16px 64px}.site-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#000000d9;padding:14px 16px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1100px;margin:0 auto;display:flex}.logo{align-items:center;gap:10px;display:flex}.nav{gap:18px;display:flex}.nav a{color:var(--muted);border-bottom:2px solid #0000;padding:6px 2px;font-weight:600}.nav a.active{color:var(--text);border-bottom-color:var(--accent)}.count{background:var(--accent);color:#fff;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:.7rem}.row-wrap{position:relative}.row{--gap:16px;--per-view:3;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--per-view) - 1) * var(--gap)) / var(--per-view));gap:var(--gap);scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--border) transparent;padding-bottom:12px;display:grid;overflow-x:auto}.row>.card-wrap{scroll-snap-align:start;min-width:0}@media (width<=820px){.row{--per-view:2}}@media (width<=520px){.row{--per-view:1}}.row-btn{z-index:2;color:#fff;cursor:pointer;opacity:0;pointer-events:none;background:#000c;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:opacity .2s,transform .2s,background .2s;display:flex;position:absolute;top:35%;transform:scale(.85);box-shadow:0 4px 14px #00000080}.row-wrap.can-prev .row-prev,.row-wrap.can-next .row-next{opacity:1;pointer-events:auto;transform:scale(1)}.row-btn:hover{background:var(--accent);border-color:var(--accent);transform:scale(1.08)}.row-prev{left:-20px}.row-next{right:-20px}@media (width<=520px){.row-btn{width:44px;height:44px}.row-prev{left:4px}.row-next{right:4px}}.card-wrap{position:relative}.card-star{gap:6px;display:flex;position:absolute;top:8px;right:8px}.head-actions{gap:8px;display:flex}.info{font-size:2.2rem}.star.info:not(.star-labeled){width:56px;height:56px}.star.info.star-labeled{height:46px;font-size:1.3rem}.band-dialog{border:1px solid var(--border);width:min(720px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text);background:#14111b;border-radius:16px;padding:0;overflow:auto}.band-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000000bf}.dialog-close{z-index:2;color:#fff;cursor:pointer;background:#0009;border:1px solid #ffffff4d;border-radius:50%;width:34px;height:34px;padding:0 0 3px;font-size:1.4rem;line-height:1;position:absolute;top:10px;right:12px}.dialog-close:hover{background:var(--accent)}.band-layout{grid-template-columns:260px 1fr;display:grid}.band-cover{aspect-ratio:1;object-fit:cover;width:100%;display:block}.band-cover-gen{text-align:center;color:#fff;text-shadow:0 2px 12px #00000059;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex}.cover-initials{letter-spacing:-.04em;font-size:4.5rem;font-style:italic;font-weight:900;line-height:1}.cover-name{letter-spacing:.18em;text-transform:uppercase;margin-top:10px;font-size:.85rem;font-weight:700}.band-body{flex-direction:column;gap:10px;min-width:0;padding:22px 24px 24px;display:flex}.band-title{background:0 0;border-radius:0;margin:0 36px 0 0;padding:0;font-size:1.6rem;display:block}.band-body h3{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:8px 0 0;font-size:.8rem}.band-body p{margin:0}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--accent);color:var(--accent);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600}.members{gap:4px;margin:0;padding:0;list-style:none;display:grid}.tour{gap:6px;margin:0;padding:0;list-style:none;display:grid}.tour li{border-bottom:1px solid var(--border);grid-template-columns:92px 1fr auto auto;align-items:center;gap:10px;padding:6px 0;display:grid}.tour li:last-child{border-bottom:0}.tour-date{color:var(--accent);font-size:.85rem;font-weight:700}.tour-where{flex-direction:column;min-width:0;display:flex}.tour-tag:hover{filter:brightness(1.15)}.tour-tag{letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:#fff;border-radius:999px;padding:2px 7px;font-size:.65rem;font-weight:700}.band-show{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:8px;padding-top:14px;display:flex}@media (width<=620px){.band-layout{grid-template-columns:1fr}.band-cover{aspect-ratio:16/9}.cover-initials{font-size:3.5rem}}.star{color:#fff;cursor:pointer;background:#0000008c;border:1px solid #ffffff4d;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:34px;height:34px;font-family:inherit;font-size:1.1rem;line-height:1;display:inline-flex}.star:hover{background:#000c}.star-on{color:#ffc83d;border-color:#ffc83d}.star-labeled{background:var(--surface);width:auto;height:32px;color:var(--text);border-color:var(--border);padding:0 14px;font-size:.9rem}.star-labeled.star-on{color:#ffc83d;border-color:#ffc83d}.head-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.link{color:var(--accent);font-weight:600}.logo img{border-radius:10px}.wordmark{letter-spacing:-.02em;font-size:1.4rem;font-style:italic;font-weight:800}.wordmark b{background:linear-gradient(90deg,#ff2d6f,#8a1fb5);color:#0000;-webkit-background-clip:text;background-clip:text}h2{background:var(--surface);border-radius:999px;margin:32px 0 12px;padding:4px 12px;font-size:1.1rem;display:inline-block}.back{background:var(--surface);border-radius:999px;padding:4px 12px}.muted{color:var(--muted);margin:2px 0}.small{font-size:.85rem}.grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:transform .15s,box-shadow .15s;display:block;overflow:hidden;box-shadow:0 2px 10px #00000080}.card:hover{transform:translateY(-3px);box-shadow:0 8px 22px #ff3d8138}.card-poster{aspect-ratio:16/9;background:#1a1620 50%/cover no-repeat;padding:10px}.card-body{padding:12px 14px 16px}.card-body h3{margin:0}.badge{letter-spacing:.06em;color:#fff;background:#0000008c;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-live{background:var(--live)}.dot{background:#fff;border-radius:50%;width:7px;height:7px;animation:1.4s infinite pulse}@keyframes pulse{50%{opacity:.25}}.back{color:var(--muted);margin-bottom:12px;display:inline-block}.stage{aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden}.player{width:100%;height:100%;position:relative}.player video{background:#000;width:100%;height:100%;display:block}.player-overlay{color:#fff;pointer-events:none;background:#0000008c;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.player-overlay button{pointer-events:auto}.player-bar{pointer-events:none;justify-content:space-between;gap:8px;display:flex;position:absolute;top:10px;left:10px;right:10px}.player-bar>*{pointer-events:auto}.player-bar button,.player-bar select,.player-overlay button{color:#fff;cursor:pointer;font:inherit;background:#0009;border:1px solid #ffffff40;border-radius:8px;padding:6px 10px;font-size:.85rem}.player-bar label{color:#fff;font-size:.85rem}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:30px;height:30px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.waiting{color:#fff;text-align:center;background:#111 50%/cover no-repeat;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.countdown{font-variant-numeric:tabular-nums;margin:8px 0;font-size:clamp(2rem,8vw,4rem);font-weight:800}.event-head{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-top:16px;padding:18px 20px}.event-head h1{margin:10px 0 0}.tour .star{width:30px;height:30px;font-size:1rem}.tour-starred{gap:8px;max-width:640px;margin:0 0 24px;padding:0;list-style:none;display:grid}.tour-starred li{background:var(--surface);border:1px solid var(--border);border-radius:10px;grid-template-columns:110px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.splash{z-index:1000;background:radial-gradient(circle at 50% 45%,#fff 0%,#f1ecfb 100%);justify-content:center;align-items:center;transition:opacity .6s;display:flex;position:fixed;inset:0}.splash-out{opacity:0;pointer-events:none}.splash-logo{opacity:0;filter:drop-shadow(0 10px 30px #a838dc59);width:min(62vw,340px);height:auto;animation:.9s cubic-bezier(.2,.9,.3,1.25) .1s forwards splash-in,1.4s ease-in-out 1s infinite splash-pulse;transform:scale(.6)rotate(-6deg)}@keyframes splash-in{to{opacity:1;transform:scale(1)rotate(0)}}@keyframes splash-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.logo img{animation:.7s cubic-bezier(.2,.9,.3,1.4) 2.2s backwards logo-pop}@keyframes logo-pop{0%{opacity:0;transform:scale(0)rotate(-90deg)}}@media (prefers-reduced-motion:reduce){.splash-logo,.logo img{opacity:1;animation:none;transform:none}}.player-fill{z-index:900;background:#000;width:100vw;height:100dvh;position:fixed;inset:0}.player-fill video{object-fit:contain}.player-exit{z-index:3;color:#fff;cursor:pointer;background:#0009;border:1px solid #ffffff4d;border-radius:50%;width:40px;height:40px;font-size:1.1rem;position:absolute;bottom:14px;right:14px}body.no-scroll{overflow:hidden}body.no-scroll .site-header{display:none}.stage:has(.player-fill){aspect-ratio:auto;border-radius:0;overflow:visible}.player-fill{width:100vw;max-width:none;height:100dvh}.section-head{justify-content:space-between;align-items:center;gap:12px;margin:32px 0 12px;display:flex}.section-head h2{margin:0}.section-count{color:var(--muted,#a9a3b5);white-space:nowrap;font-size:.9rem;font-weight:600}.star.info .info-i{font-family:Georgia,Times New Roman,serif;font-size:2rem;font-style:italic;font-weight:700;line-height:1}.star.info.star-labeled .info-i{font-size:1.5rem}.settings{gap:10px;max-width:640px;display:grid}.setting{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.setting-text{flex-direction:column;gap:4px;display:flex}.setting-note{color:#ffb4a8;margin:0}.switch{appearance:none;cursor:pointer;background:#3a3544;border:0;border-radius:999px;flex:none;width:52px;height:30px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(22px)}.adm-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 16px;display:flex}.adm-tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:16px;display:flex}.adm-tabs button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px;font-weight:600}.adm-tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.adm-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.adm-list li{background:var(--surface);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.adm-form{gap:14px;max-width:680px;display:grid}.adm-narrow{max-width:420px;margin:40px auto}.adm-field{gap:6px;font-size:.9rem;display:grid}.adm-field input,.adm-field textarea,.adm-field select{background:var(--surface);color:var(--text);border:1px solid var(--border);font:inherit;border-radius:8px;padding:9px 10px}.adm-actions{gap:8px;display:flex}.adm-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:8px;padding:7px 14px;font-size:.9rem}.adm-primary{background:var(--accent);border-color:var(--accent);color:#fff}.adm-danger{color:#ff8f8f}.adm-btn:disabled{opacity:.6;cursor:default}.adm-error{color:#ffb4a8;margin:0}.err-box{background:var(--surface);border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;border-radius:8px;padding:12px}.head-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.watching{color:var(--muted);font-size:.9rem;font-weight:600}.card-watching{margin-left:6px}.player-bar-left{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.player-watching{color:#fff;pointer-events:none;background:#0009;border:1px solid #ffffff40;border-radius:8px;padding:6px 10px;font-size:.85rem;font-weight:600}
