:root{--sanri:#f482fd;--sanri-deep:#7c36b0;--ink:#181628;--ink-soft:#3f3b56;--paper:#fff8fb;--panel:#ffffffc7;--line:#32214a29;--cyan:#60d7e8;--lime:#c9f45f;--amber:#ffd36a;--shadow:0 24px 70px #461d5933;--motion-fast:.16s;--motion-medium:.52s;--motion-slow:.9s;--motion-ease:cubic-bezier(.22, 1, .36, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,PingFang SC,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--ink);letter-spacing:0;background:radial-gradient(circle at 12% 10%,#60d7e847,#0000 28rem),radial-gradient(circle at 88% 8%,#f482fd57,#0000 30rem),linear-gradient(135deg,#fff8fb 0%,#f3fbff 48%,#fff7df 100%);margin:0;overflow-x:hidden}@keyframes motion-fade-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes motion-fade-soft{0%{opacity:0}to{opacity:1}}@keyframes hero-bg-drift{0%{transform:scale(1.08)translate(-.6%)}to{transform:scale(1.12)translate(.6%,-.4%)}}@keyframes hero-character-drift{0%{transform:translate(0,0)}to{transform:translate(-10px,-12px)}}@keyframes hero-light-sweep{0%{opacity:.46;transform:translate(-7%,2%)rotate(-18deg)scale(1.08,.98)}46%{opacity:.8;transform:translate(3%,-2%)rotate(-8deg)scale(1.16,1.03)}to{opacity:.56;transform:translate(8%,-5%)rotate(8deg)scale(1.24,1.08)}}@keyframes hero-particle-drift{0%{opacity:0;transform:translate(0,0)scale(.35)}14%{opacity:calc(var(--particle-alpha) * .72);transform:translate3d(calc(var(--particle-drift-x) * -.18), calc(var(--particle-drift-y) * -.12), 0) scale(.72)}44%{opacity:var(--particle-alpha);transform:translate3d(calc(var(--particle-drift-x) * .28), calc(var(--particle-drift-y) * .24), 0) scale(1)}72%{opacity:calc(var(--particle-alpha) * .62);transform:translate3d(calc(var(--particle-drift-x) * .72), calc(var(--particle-drift-y) * .7), 0) scale(1.18)}to{opacity:0;transform:translate3d(var(--particle-drift-x), var(--particle-drift-y), 0) scale(.86)}}@keyframes song-filter-refresh{0%{opacity:.78;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes count-pop{0%{text-shadow:0 0 20px #f482fd6b}to{text-shadow:none}}@keyframes count-wheel-in{0%{opacity:.46;transform:translateY(.48em)scale(.98)}58%{opacity:1;transform:translateY(-.08em)scale(1.01)}to{opacity:1;transform:translate(0,0)scale(1)}}.page-surface{min-height:100vh}.page-surface:before{content:"";pointer-events:none;background-image:linear-gradient(#7c36b00f 1px,#0000 1px),linear-gradient(90deg,#7c36b00f 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000d9,#0000 78%);mask-image:linear-gradient(#000000d9,#0000 78%)}.home-page-body{background:radial-gradient(circle at 78% 8%,#f482fd2e,#0000 28rem),#120f1c;min-height:100vh}.home-page-body:before{opacity:.35;mix-blend-mode:screen}a{color:inherit}.site-shell{flex-direction:column;width:min(1160px,100% - 32px);min-height:100vh;margin:0 auto;display:flex}.site-header{z-index:10;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);min-height:68px;animation:motion-fade-rise var(--motion-medium) var(--motion-ease) both;background:#ffffffb8;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 34px;padding:10px;display:flex;position:sticky;top:14px;box-shadow:0 16px 40px #3c1c561f}.home-page-body .site-header{color:#fff;width:min(1160px,100% - 32px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;margin-left:auto;margin-right:auto;position:relative;top:auto}.home-page-body .nav-links a{color:#fffffff0;text-shadow:0 2px 12px #0000006b;font-weight:760}.home-page-body .nav-links a:hover{color:#fff;background:#f482fd5c}.home-page-body .nav-links a.is-active{color:#fff;text-shadow:none;background:#f482fd85}.brand{align-items:center;min-height:48px;padding:0;text-decoration:none;display:inline-flex}.brand-signature{object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 18px #7c36b03d);width:clamp(104px,9vw,148px);height:48px;display:block}.home-page-body .brand-signature{filter:drop-shadow(0 2px 10px #00000080)drop-shadow(0 0 18px #f482fd38)}.nav-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.nav-links a{min-height:40px;color:var(--ink-soft);border-radius:12px;align-items:center;padding:0 14px;font-size:14px;text-decoration:none;display:inline-flex}.nav-links a:hover,.nav-links a.is-active{color:var(--ink);background:#f482fd29}.hero-section{grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);align-items:center;gap:36px;min-height:calc(100vh - 150px);padding-bottom:52px;display:grid}.immersive-hero{isolation:isolate;align-items:center;width:100vw;min-height:calc(100vh - 112px);margin-top:-116px;margin-left:50%;padding:150px max(24px,50vw - 580px) 92px;display:flex;position:relative;overflow:hidden;transform:translate(-50%)}.hero-bg{z-index:-3;filter:saturate(1.15)contrast(1.04)blur(10px);transform-origin:50%;background-image:url(/assets/img/sanri-room-cover.jpg);background-position:50%;background-size:cover;animation:22s ease-in-out infinite alternate hero-bg-drift;position:absolute;inset:0;transform:scale(1.08)}.hero-bg:before{content:"";pointer-events:none;z-index:2;filter:blur(26px);mix-blend-mode:screen;transform-origin:48%;animation:hero-light-sweep 14s var(--motion-ease) infinite alternate;background:radial-gradient(760px 180px at 38% 36%,#f482fd47,#0000 68%),radial-gradient(880px 210px at 68% 30%,#ffffff2e,#0000 66%),radial-gradient(720px 190px at 58% 62%,#60d7e833,#0000 68%),radial-gradient(540px 160px at 18% 58%,#f9d9ff2e,#0000 70%);position:absolute;inset:-22%;-webkit-mask-image:radial-gradient(#000000e6 0 54%,#0000006b 72%,#0000 100%);mask-image:radial-gradient(#000000e6 0 54%,#0000006b 72%,#0000 100%)}.hero-bg:after{content:"";z-index:1;background:linear-gradient(90deg,#0e0c16db,#0e0c165c 45%,#0e0c161f 68%,#0e0c1680),linear-gradient(#0e0c1694,#0e0c1614 45%,#0e0c16c2);position:absolute;inset:0}.immersive-hero:after{content:"";pointer-events:none;position:absolute}.hero-character{z-index:-1;object-fit:cover;object-position:center;opacity:.98;transform-origin:bottom;-webkit-mask-composite:source-in;border:0;border-radius:0;width:min(820px,52vw);height:min(82vh,820px);position:absolute;bottom:4vh;right:max(-36px,50vw - 720px);box-shadow:-36px 44px 120px #00000061,0 0 90px #f482fd2e;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%),linear-gradient(#0000 0%,#00000061 5%,#000 14% 76%,#00000057 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%),linear-gradient(#0000 0%,#00000061 5%,#000 14% 76%,#00000057 92%,#0000 100%);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}@media (min-width:921px){.hero-character{animation:7.5s ease-in-out .9s infinite alternate hero-character-drift}}.immersive-hero:after{z-index:0;background:radial-gradient(at 76% 0,#f482fd14,#0000 36rem),linear-gradient(#0000 0%,#120f1c9e 56%,#120f1c 88%);height:38vh;bottom:-1px;left:-8%;right:-8%}.hero-particles{z-index:1;pointer-events:none;mix-blend-mode:screen;position:absolute;inset:-10%;overflow:hidden;-webkit-mask-image:radial-gradient(112% 78% at 52% 42%,#000000f5 0 58%,#0000008a 76%,#0000 100%);mask-image:radial-gradient(112% 78% at 52% 42%,#000000f5 0 58%,#0000008a 76%,#0000 100%)}.hero-particle{left:var(--particle-x);top:var(--particle-y);width:var(--particle-size);height:var(--particle-size);opacity:0;filter:blur(var(--particle-blur));animation:hero-particle-drift var(--particle-duration) var(--motion-ease) var(--particle-delay) infinite;will-change:transform, opacity;background:#ffffffeb;border-radius:999px;position:absolute;transform:translate(0,0)scale(.35)}.hero-particle:after{content:"";border-radius:inherit;background:inherit;opacity:.24;filter:blur(6px);position:absolute;inset:-42%}.hero-particle-white{background:radial-gradient(circle,#fff,#ffffff9e 38%,#0000 70%)}.hero-particle-violet{background:radial-gradient(circle,#ffefff,#f482fd9e 42%,#0000 72%)}.hero-particle-cyan{background:radial-gradient(circle,#ecfdff,#60d7e899 42%,#0000 72%)}.hero-particle-rose{background:radial-gradient(circle,#ffeffb,#ff9adc94 42%,#0000 72%)}.hero-glass{z-index:2;text-align:left;color:#fff;width:min(620px,100vw - 32px);min-height:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start;padding:0;display:flex;position:relative;transform:none}.hero-glass>*{animation:motion-fade-rise var(--motion-slow) var(--motion-ease) both}.hero-glass>:first-child{animation-delay:.1s}.hero-glass>:nth-child(2){animation-delay:.18s}.hero-glass>:nth-child(3){animation-delay:.26s}.hero-glass>:nth-child(4){animation-delay:.34s}.hero-glass>:nth-child(5){animation-delay:.43s}.hero-glass>:nth-child(6){animation-delay:.52s}.hero-avatar{object-fit:cover;border:7px solid #ffffffeb;border-radius:50%;width:146px;height:146px;margin-bottom:18px;box-shadow:0 18px 50px #00000047}.immersive-hero h1{color:#fff;text-shadow:0 10px 35px #00000061;font-size:clamp(50px,8vw,92px)}.immersive-hero .eyebrow{color:#f9d9ff;text-shadow:0 2px 18px #0000007a}.immersive-hero .hero-lede{color:#ffffffe0;text-shadow:0 2px 18px #0000007a;max-width:520px;margin-top:14px}.live-pill{min-height:34px;color:var(--ink);background:#ffffffe0;border-radius:999px;align-items:center;margin-top:14px;padding:0 14px;font-size:13px;font-weight:850;display:inline-flex}.hero-text-link{color:#ffffffdb;border-bottom:1px solid #ffffff7a;align-items:center;min-height:48px;font-weight:850;text-decoration:none;display:inline-flex}.hero-icon-links{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:24px;display:flex}.hero-icon-links a{color:#fff;text-shadow:0 4px 18px #0000006b;align-content:center;place-items:center;gap:8px;width:104px;min-height:108px;font-size:14px;text-decoration:none;display:grid}.portal-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff38;border:1px solid #ffffff47;border-radius:23px;place-items:center;width:66px;height:66px;display:grid;position:relative;box-shadow:0 15px 34px #0000003d}.portal-icon:before{content:"";background:currentColor;width:28px;height:28px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.portal-icon.note{color:#ffd36a}.portal-icon.note:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 18.5A3.5 3.5 0 1 1 9 11.5a3.5 3.5 0 0 1 0 7Zm8-2A3.5 3.5 0 1 1 17 9.5a3.5 3.5 0 0 1 0 7ZM10.5 5h8v2h-8v9H8.5V7a2 2 0 0 1 2-2Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 18.5A3.5 3.5 0 1 1 9 11.5a3.5 3.5 0 0 1 0 7Zm8-2A3.5 3.5 0 1 1 17 9.5a3.5 3.5 0 0 1 0 7ZM10.5 5h8v2h-8v9H8.5V7a2 2 0 0 1 2-2Z'/%3E%3C/svg%3E")}.portal-icon.live{color:#f482fd}.portal-icon.live:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 7.5A3.5 3.5 0 0 1 7.5 4h9A3.5 3.5 0 0 1 20 7.5v9a3.5 3.5 0 0 1-3.5 3.5h-9A3.5 3.5 0 0 1 4 16.5v-9Zm5.2 2.1v4.8L14 12 9.2 9.6Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 7.5A3.5 3.5 0 0 1 7.5 4h9A3.5 3.5 0 0 1 20 7.5v9a3.5 3.5 0 0 1-3.5 3.5h-9A3.5 3.5 0 0 1 4 16.5v-9Zm5.2 2.1v4.8L14 12 9.2 9.6Z'/%3E%3C/svg%3E")}.portal-icon.space{color:#60d7e8}.portal-icon.space:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm-8 8a8 8 0 1 1 16 0H4Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Zm-8 8a8 8 0 1 1 16 0H4Z'/%3E%3C/svg%3E")}.hero-slogan{color:#ffffffdb;text-align:left;text-shadow:0 10px 34px #00000080;width:auto;margin:28px 0 0;font-size:clamp(22px,3.1vw,42px);font-weight:900;position:static}.home-page-body .quick-panel,.home-page-body .content-grid{z-index:2;position:relative}.home-page-body .quick-panel{border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff1a;gap:0;margin-top:-34px;margin-bottom:64px;padding:20px 0}.home-page-body .quick-panel article{min-height:96px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-left:1px solid #ffffff1f;border-radius:0;padding:8px 28px}.home-page-body .quick-panel article:first-child{border-left:0}.home-page-body .quick-panel strong{color:#fff}.home-page-body .content-grid{grid-template-columns:minmax(0,.95fr) minmax(300px,.55fr);align-items:start;gap:clamp(72px,8vw,128px);margin-bottom:64px}.home-page-body .intro-block{grid-row:auto}.home-page-body .feature-block{color:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.home-page-body .feature-block .eyebrow{color:#f9d9ff}.home-page-body .feature-block p{color:#ffffffb8}.profile-pass{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:24px;max-width:640px;margin-top:24px;display:grid}.profile-avatar-frame{min-width:0}.profile-avatar-frame img{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%}.profile-info-groups{flex-wrap:wrap;gap:34px;display:flex}.profile-card-list{grid-template-columns:1fr;gap:18px;min-width:min(170px,100%);margin:0;display:grid}.profile-card-list div{min-width:0}.profile-card-list dt{color:#ffffff85;margin:0 0 6px;font-size:12px;font-weight:850}.profile-card-list dd{color:#ffffffeb;margin:0;font-size:clamp(16px,1.7vw,20px);font-weight:850;line-height:1.5}.home-page-body .tag-row span{color:#fff;background:#ffffff1a}.home-page-body .countdown-list div{color:#fff;background:0 0;border-bottom:1px solid #ffffff21;border-radius:0;padding:18px 0}.home-page-body .countdown-list div:last-child{border-bottom:0}.home-page-body .countdown-list span{color:#ffffff9e}.home-page-body .countdown-list strong{color:#fff}.hero-copy{max-width:640px}.eyebrow{color:var(--sanri-deep);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:850}h1,h2{margin:0;line-height:1.05}h1{letter-spacing:0;font-size:clamp(52px,9vw,104px)}h2{font-size:clamp(25px,3vw,42px)}.hero-lede,.page-title p,.feature-block p{color:var(--ink-soft);line-height:1.85}.hero-lede{margin:24px 0 0;font-size:clamp(17px,2vw,22px)}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.button{min-height:48px;font:inherit;cursor:pointer;transition:transform var(--motion-fast) ease, box-shadow var(--motion-fast) ease, border-color var(--motion-fast) ease, background var(--motion-fast) ease;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)scale(.98)}.button:focus-visible,.nav-links a:focus-visible,.filter-group button:focus-visible,.filter-section-title button:focus-visible,.hero-text-link:focus-visible,.song-table tbody tr.song-row:focus-visible{outline-offset:3px;outline:3px solid #60d7e8b8}.button.primary{color:#fff;background:linear-gradient(135deg, var(--sanri-deep), #ef65fa);box-shadow:0 18px 34px #7c36b042}.button.secondary{color:var(--ink);border-color:var(--line);background:#ffffffbf}.button.compact{white-space:nowrap;min-height:44px}.button-icon,.button-icon svg,.search-field svg{width:18px;height:18px;display:inline-block}svg{fill:currentColor}.hero-visual{place-items:center;min-height:560px;display:grid}.lab-card{aspect-ratio:.82;width:min(460px,100%);box-shadow:var(--shadow);background:linear-gradient(#ffffffb8,#ffffff38),radial-gradient(circle at 50% 34%,#f482fd57,#0000 33%),radial-gradient(circle at 45% 72%,#60d7e857,#0000 28%),#241937;border:1px solid #ffffffa6;border-radius:36px;position:relative;overflow:hidden}.lab-card:before,.lab-card:after{content:"";border:1px solid #ffffff2e;border-radius:28px;position:absolute;inset:22px}.lab-card:after{background:linear-gradient(90deg,#0000,#ffffff1f,#0000),repeating-linear-gradient(90deg,#ffffff24 0 1px,#0000 1px 16px);border:0;border-radius:0;height:38%;inset:auto 0 0}.orbit{border:1px solid #ffffff38;border-radius:999px;position:absolute}.orbit.one{width:330px;height:330px;top:24%;left:50%;transform:translate(-50%)rotate(-18deg)}.orbit.two{width:235px;height:420px;top:12%;left:50%;transform:translate(-50%)rotate(35deg)}.avatar-core{color:#fff;background:radial-gradient(circle at 48% 38%,#fff 0 7%,#0000 8%),linear-gradient(135deg,#f482fdeb,#60d7e8cc);border-radius:50%;place-items:center;width:230px;height:230px;display:grid;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 44px #ffffff61,0 24px 70px #f482fd52}.avatar-core span{padding-top:86px;font-size:24px;font-weight:900}.spec-chip{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;place-items:center;min-width:86px;min-height:38px;padding:0 14px;font-size:13px;font-weight:800;display:grid;position:absolute}.chip-a{top:76px;left:34px}.chip-b{top:160px;right:34px}.chip-c{color:var(--ink);background:var(--lime);bottom:54px;left:50%;transform:translate(-50%)}.quick-panel{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px;display:grid}.quick-panel article,.feature-block,.song-toolbar,.song-filter-panel,.song-summary,.song-table-wrap{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:22px;box-shadow:0 16px 42px #3c1c561a}.quick-panel article{opacity:0;flex-direction:column;justify-content:space-between;min-height:126px;padding:20px;display:flex;transform:translateY(18px)}.scroll-reveal.is-visible .quick-panel article{animation:motion-fade-rise var(--motion-medium) var(--motion-ease) both}.scroll-reveal.is-visible .quick-panel article:first-child{animation-delay:80ms}.scroll-reveal.is-visible .quick-panel article:nth-child(2){animation-delay:.15s}.scroll-reveal.is-visible .quick-panel article:nth-child(3){animation-delay:.22s}.scroll-reveal.is-visible .quick-panel article:nth-child(4){animation-delay:.29s}.panel-label,.quick-panel small{color:var(--ink-soft);font-size:13px}.quick-panel strong{font-size:22px}.content-grid{grid-template-columns:1.4fr .9fr;gap:18px;margin-bottom:46px;display:grid}.content-grid>.scroll-reveal{min-width:0}.content-grid>.profile-reveal{grid-row:span 2}.feature-block{opacity:0;padding:28px;transform:translateY(18px)}.content-grid .feature-block{height:100%}.scroll-reveal.is-visible .feature-block{animation:motion-fade-rise var(--motion-medium) var(--motion-ease) both;animation-delay:.12s}.scroll-reveal.is-visible .feature-block:nth-child(2),.scroll-reveal.is-visible.countdown-reveal .feature-block{animation-delay:.22s}.intro-block{grid-row:span 2}.tag-row{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.tag-row span,.filter-group button,.song-badge{min-height:32px;color:var(--ink);background:#f482fd29;border-radius:999px;align-items:center;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.tag-row span,.song-badge{transition:transform var(--motion-fast) ease, background var(--motion-fast) ease}.tag-row span:hover,.song-badge:hover{transform:translateY(-1px)}.countdown-list{gap:12px;margin-top:20px;display:grid}.countdown-list div{background:#ffffff9e;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.countdown-list span{color:var(--ink-soft)}.countdown-list strong{font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:baseline;gap:.18em;min-width:4.2em;font-size:26px;display:inline-flex;overflow:hidden}.countdown-list.is-counting strong{animation:count-pop .92s var(--motion-ease) both}.count-number{text-align:right;will-change:transform, opacity;min-width:3ch;display:inline-block}.countdown-list.is-counting .count-number{animation:count-wheel-in 1.18s var(--motion-ease) both}.countdown-list.is-counting div:nth-child(2) .count-number{animation-delay:80ms}.countdown-list.is-counting div:nth-child(3) .count-number{animation-delay:.16s}.count-unit{font-size:.88em}.link-list{gap:10px;margin-top:18px;display:grid}.link-list a{background:#ffffffa3;border-radius:14px;justify-content:space-between;align-items:center;min-height:44px;padding:0 14px;font-weight:750;text-decoration:none;display:flex}.link-list a:after{content:"↗"}.page-title{max-width:760px;margin:30px 0 24px;position:relative}.songs-page-body .page-title{color:#fff;max-width:none;min-height:260px;box-shadow:none;animation:motion-fade-soft var(--motion-slow) ease both;background:linear-gradient(90deg,#181628db,#1816284d),url(/assets/img/sanri-room-cover.jpg) 50%/cover;border:0;border-radius:0;flex-direction:column;justify-content:flex-end;padding:34px;display:flex;overflow:hidden}.songs-page-body .page-title:after{content:"";pointer-events:none;background:radial-gradient(circle at 18% 12%,#f482fd52,#0000 22rem),linear-gradient(#0000,#18162847);position:absolute;inset:0}.songs-page-body .page-title>*{z-index:1;position:relative}.songs-page-body .page-title .eyebrow,.songs-page-body .page-title p{color:#ffffffe0}.songs-page-body .page-title p{max-width:640px}.page-title h1{font-size:clamp(44px,7vw,76px)}.song-toolbar{animation:motion-fade-rise var(--motion-medium) var(--motion-ease) both;grid-template-columns:minmax(240px,1fr) auto;align-items:center;gap:12px;margin-bottom:14px;padding:14px;display:grid}.songs-page-body .song-toolbar{background:#ffffffbd;border:0;box-shadow:0 18px 48px #461d591f}.search-field{border:1px solid var(--line);min-height:48px;color:var(--ink-soft);background:#ffffffc7;border-radius:16px;align-items:center;gap:10px;padding:0 14px;display:flex}.search-field input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.filter-group{flex-wrap:wrap;gap:8px;display:flex}.filter-group button{cursor:pointer;font:inherit;transition:transform var(--motion-fast) ease, border-color var(--motion-fast) ease, background var(--motion-fast) ease, color var(--motion-fast) ease;border:1px solid #0000}.filter-group button:hover{border-color:#7c36b02e;transform:translateY(-1px)}.filter-group button:active{transform:translateY(0)scale(.98)}.filter-group button.is-active{color:#fff;background:var(--sanri-deep)}.tag-filter button{background:#60d7e82e}.song-filter-panel{animation:motion-fade-rise var(--motion-medium) var(--motion-ease) 90ms both;grid-template-columns:minmax(190px,.7fr) minmax(280px,1.3fr);gap:16px;margin:-2px 0 14px;padding:16px;display:grid}.songs-page-body .song-filter-panel{background:#ffffffad;border:0;box-shadow:0 18px 48px #461d591a}.filter-section{min-width:0}.filter-section-title{min-height:32px;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;font-weight:800;display:flex}.filter-section-title button{border:1px solid var(--line);min-height:32px;color:var(--ink);font:inherit;cursor:pointer;background:#ffffffb8;border-radius:999px;padding:0 12px;font-size:13px;font-weight:750}.filter-section-title button:disabled{cursor:default;opacity:.46}.filter-group-wide{align-content:flex-start}.song-summary{min-height:54px;color:var(--ink-soft);animation:motion-fade-rise var(--motion-medium) var(--motion-ease) .16s both;justify-content:space-between;align-items:center;margin-bottom:14px;padding:0 18px;font-weight:750;display:flex}.songs-page-body .song-summary{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;animation:song-filter-refresh .32s var(--motion-ease) both;background:0 0;border:0;padding:0 4px}.song-table-wrap{animation:song-filter-refresh .36s var(--motion-ease) 60ms both;margin-bottom:46px;overflow:auto}.songs-page-body .song-table-wrap{background:#ffffffb8;border:0;box-shadow:0 18px 54px #461d591f}.song-table{border-collapse:collapse;width:100%;min-width:780px}.song-table th,.song-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:16px}.song-table th{color:var(--ink-soft);text-transform:uppercase;font-size:13px}.song-table tr:last-child td{border-bottom:0}.song-table tbody tr{transition:background-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease}.song-table tbody tr.song-row{cursor:pointer}.song-table tbody tr.song-row:hover{background-color:#f482fd14}.song-table tbody tr.song-row:focus-visible{outline-offset:-3px}.song-table tbody tr.song-row.is-copied{background-color:#f482fd24;box-shadow:inset 4px 0 #f482fdc2}.song-title{gap:6px;font-weight:850;display:grid}.song-title small{color:var(--ink-soft);font-weight:650}.song-badge{background:#60d7e82e;width:max-content;margin:2px 4px 2px 0}.song-empty-row td{padding:0}.song-empty-state{color:#ffffffc7;text-align:center;background:radial-gradient(circle at 50% 0,#f482fd1f,#0000 18rem),#ffffff06;align-content:center;place-items:center;gap:10px;min-height:220px;padding:36px 18px;display:grid}.song-empty-state strong{color:#fff;font-size:20px}.song-empty-state span{color:#ffffffad}.song-empty-state button{color:#fff;min-height:38px;font:inherit;cursor:pointer;background:#f482fd38;border:1px solid #ffffff2e;border-radius:999px;padding:0 16px;font-weight:800}.song-empty-state button:hover{background:#f482fd57}.toast{z-index:20;opacity:0;pointer-events:none;color:#fff;background:#181628eb;border-radius:14px;max-width:min(520px,100% - 32px);padding:12px 16px;transition:opacity .16s,transform .16s;position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);box-shadow:0 16px 38px #18162838}.toast.is-visible{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.hero-bg{transform:scale(1.08)}.hero-particle{opacity:calc(var(--particle-alpha) * .58);animation:none;transform:none}.quick-panel article,.feature-block{opacity:1;transform:none}}.site-footer{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:auto;padding:24px 0 34px;font-size:13px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:920px){.hero-section,.content-grid,.song-toolbar,.song-filter-panel{grid-template-columns:1fr}.hero-section{min-height:auto}.hero-visual{min-height:420px}.hero-character{opacity:.32;width:min(420px,78vw);animation:none;bottom:88px;right:50%;transform:translate(50%)}.hero-glass{transform:none}.lab-card{width:min(380px,100%)}.quick-panel{grid-template-columns:repeat(2,1fr)}.home-page-body .quick-panel article:nth-child(odd){border-left:0}}@media (max-width:640px){html,body{max-width:100%;overflow-x:hidden}.site-shell{width:min(100% - 22px,1160px)}.site-header{border-radius:16px;flex-direction:row;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:4px;min-height:56px;padding:6px 8px;display:grid}.brand{flex:0 0 42px;min-width:42px;min-height:40px}.brand-signature{width:42px;height:38px}.nav-links{grid-template-columns:repeat(3,minmax(0,1fr));justify-self:end;gap:2px;width:min(276px,100%);min-width:0;max-width:none;display:grid}.nav-links a{white-space:nowrap;justify-content:center;min-width:0;min-height:34px;padding:0 4px;font-size:9px;line-height:1}.hero-actions,.button,.home-page-body .site-header{width:100%}.quick-panel{grid-template-columns:1fr}.immersive-hero{width:calc(100% + 22px);min-height:calc(100vh - 82px);margin-left:-11px;padding:126px 22px 74px;transform:none}.hero-glass{width:calc(100vw - 44px);min-width:0;max-width:calc(100vw - 44px)}.immersive-hero h1{overflow-wrap:anywhere;max-width:100%;font-size:clamp(44px,13vw,56px)}.immersive-hero .hero-lede,.hero-slogan{word-break:break-all;overflow-wrap:break-word;max-width:100%}.immersive-hero .hero-lede{font-size:16px;line-height:1.75}.hero-slogan{font-size:clamp(20px,7vw,26px);line-height:1.28}.hero-actions{align-items:stretch}.hero-text-link{width:max-content;max-width:100%}.hero-character{width:min(430px,88vw);height:54vh;bottom:110px}.home-page-body .quick-panel{margin-top:-10px;margin-bottom:46px}.home-page-body .quick-panel article{border-top:1px solid #ffffff1f;border-left:0}.home-page-body .quick-panel article:first-child{border-top:0}.home-page-body .content-grid{grid-template-columns:1fr;gap:42px}.content-grid>.profile-reveal{grid-row:auto}.feature-block{padding:22px}.profile-pass{grid-template-columns:minmax(116px,.48fr) minmax(0,1fr);align-items:start;gap:18px}.profile-avatar-frame{width:auto}.profile-info-groups{gap:18px}.profile-card-list{grid-template-columns:1fr}.song-table-wrap{border:1px solid var(--line);-webkit-overflow-scrolling:touch;background:#ffffffc7;border-radius:18px;overflow:auto hidden}.song-table{min-width:680px}.song-table th,.song-table td{padding:12px}.song-summary{white-space:nowrap;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 4px;display:flex}.song-summary span:first-child{margin-right:auto}.song-summary span:not(:first-child){flex:none}.songs-page-body .page-title{border-radius:18px;min-height:220px;margin:22px 0;padding:24px}.page-title h1{font-size:clamp(38px,12vw,52px)}.songs-page-body .page-title p{word-break:break-all}.song-toolbar{border-radius:18px;padding:12px}.songs-page-body .song-toolbar,.songs-page-body .song-filter-panel{background:#ffffffc7;border-radius:18px}.songs-page-body .song-filter-panel{padding:18px}.filter-group{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px;overflow-x:auto}.filter-group button{flex:none;min-height:30px;padding:0 10px;font-size:13px}.button.compact{white-space:normal}}.songs-page-body{color:#ffffffe6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:radial-gradient(circle at 0 18%,#60d7e833,#0000 34rem),radial-gradient(circle at 100% 10%,#f482fd47,#0000 36rem),radial-gradient(circle at 12% 86%,#7c36b03d,#0000 32rem),radial-gradient(circle at 86% 78%,#60d7e81f,#0000 30rem),linear-gradient(135deg,#171225 0%,#1b1530 44%,#11182a 100%)}.songs-page-body:before{opacity:.58;mix-blend-mode:screen;background-image:linear-gradient(#f482fd14 1px,#0000 1px),linear-gradient(90deg,#60d7e812 1px,#0000 1px),radial-gradient(circle at 16% 30%,#ffffff17,#0000 20rem),radial-gradient(circle at 82% 18%,#f482fd1a,#0000 24rem);background-size:48px 48px,48px 48px,auto,auto}.songs-page-body:after{content:"";z-index:0;pointer-events:none;opacity:.2;filter:blur(22px)saturate(1.12);background:linear-gradient(90deg,#171225ad,#17122529 42%,#171225b3),linear-gradient(#17122514,#11182ac2),url(/assets/img/sanri-room-cover.jpg) top/cover no-repeat;position:fixed;inset:-72px;transform:scale(1.04);-webkit-mask-image:linear-gradient(#000000eb,#0000009e 58%,#0000 100%);mask-image:linear-gradient(#000000eb,#0000009e 58%,#0000 100%)}.songs-page-body .site-shell{z-index:1;position:relative}.songs-page-body .site-header{color:#fff;-webkit-backdrop-filter:blur(22px)saturate(1.18);backdrop-filter:blur(22px)saturate(1.18);background:linear-gradient(90deg,#ffffff26,#ffffff0e),#362b466b;border-color:#ffffff38;margin-bottom:12px;box-shadow:0 18px 54px #0000002e,0 0 48px #f482fd1f,inset 0 1px #fff3}.songs-page-body .site-header:before{content:"";z-index:-1;pointer-events:none;opacity:.86;background:linear-gradient(90deg,#60d7e824,#0000 35%,#f482fd2e),radial-gradient(circle at 12% 20%,#ffffff1a,#0000 18rem);border-radius:17px;position:absolute;inset:1px}.songs-page-body .brand-signature{filter:drop-shadow(0 2px 10px #00000080)drop-shadow(0 0 20px #f482fd47)}.songs-page-body .nav-links a{color:#ffffffdb}.songs-page-body .nav-links a:hover{color:#fff;background:#ffffff1f}.songs-page-body .nav-links a.is-active{color:#fff;background:linear-gradient(135deg,#7c36b0c2,#f482fd61);box-shadow:inset 0 1px #ffffff29}.songs-page-body .page-title{background:linear-gradient(90deg,#0f0d18d1,#0f0d1880 34%,#0f0d182e 62%,#0f0d185c),linear-gradient(#ffffff14,#0f0d1852),url(/assets/img/sanri-room-cover.jpg) 50%/cover;border:1px solid #ffffff24;border-radius:8px;min-height:clamp(300px,36vw,430px);margin:18px 0 26px;padding:clamp(28px,5vw,54px);box-shadow:0 26px 76px #00000038,0 0 86px #f482fd1f,inset 0 1px #ffffff2e}.songs-page-body .page-title:before{content:"";z-index:1;pointer-events:none;opacity:.2;background:linear-gradient(90deg,#0000,#60d7e829,#0000),repeating-linear-gradient(0deg,#ffffff14 0 1px,#0000 1px 9px);position:absolute;inset:0}.songs-page-body .page-title:after{background:radial-gradient(circle at 12% 12%,#f482fd5c,#0000 17rem),radial-gradient(circle at 78% 26%,#60d7e833,#0000 22rem),linear-gradient(#0000 42%,#0f0d184d)}.songs-page-body .page-title .eyebrow{color:#f9d9ff}.songs-page-body .page-title h1{color:#fff;text-shadow:0 12px 34px #00000075;max-width:720px}.songs-page-body .page-title p{color:#ffffffd1;text-shadow:0 2px 16px #0000006b;max-width:680px}.song-console{gap:14px;margin-bottom:54px;display:grid;position:relative}.song-console:before{content:none}.songs-page-body .song-toolbar,.songs-page-body .song-filter-panel,.songs-page-body .song-table-wrap{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#ffffff24,#fff1),#2a233aad;border:1px solid #ffffff2e;box-shadow:0 18px 54px #0000002e,inset 0 1px #ffffff2e}.songs-page-body .song-toolbar{border-radius:8px;margin-bottom:0;padding:14px}.songs-page-body .search-field{color:#ffffffbd;background:#ffffff1b;border-color:#fff3}.songs-page-body .search-field:focus-within{border-color:#60d7e885;box-shadow:0 0 0 4px #60d7e81f}.songs-page-body .search-field input{color:#fff}.songs-page-body .search-field input::placeholder{color:#ffffff94}.songs-page-body .button.primary{background:linear-gradient(135deg,#7c36b0f2,#ef65faf2),linear-gradient(90deg,#60d7e833,#0000);box-shadow:0 14px 30px #7c36b057,inset 0 1px #fff3}.songs-page-body .song-filter-panel{border-radius:8px;margin:0;padding:18px}.songs-page-body .filter-section-title{color:#ffffffe6}.songs-page-body .filter-section-title button{color:#fffc;background:#ffffff1b;border-color:#ffffff2e}.songs-page-body .filter-section-title button:not(:disabled):hover{background:#f482fd29}.songs-page-body .filter-group button{color:#ffffffd6;background:#ffffff1b;border-color:#ffffff2e}.songs-page-body .filter-group button:hover{background:#60d7e81f;border-color:#60d7e861}.songs-page-body .filter-group button.is-active{color:#fff;background:#7c36b0b8;border-color:#f482fd75}.songs-page-body .tag-filter button{background:#60d7e821;border-color:#60d7e829}.songs-page-body .tag-filter button.is-active{background:#60d7e842;border-color:#60d7e87a}.songs-page-body .song-summary{color:#ffffffe6;min-height:64px;margin:0;padding:0 4px}.songs-page-body .song-summary span{align-items:center;min-height:36px;font-weight:850;display:inline-flex}.songs-page-body .song-summary span:first-child{color:#fff}.songs-page-body .song-summary span:not(:first-child){color:#ffffffe6}.songs-page-body .song-table-wrap{border-radius:8px;margin-bottom:0}.songs-page-body .song-table th,.songs-page-body .song-table td{border-bottom-color:#ffffff1a}.songs-page-body .song-table th{color:#ffffffa8}.songs-page-body .song-table td{color:#ffffffe6}.songs-page-body .song-title{color:#fff}.songs-page-body .song-title small{color:#f9d9ffc2}.songs-page-body .song-badge{color:#dffaff;background:#60d7e838}.songs-page-body .song-table tbody tr.song-row:hover{background-color:#f482fd1c}.songs-page-body .song-table tbody tr.song-row.is-copied{background-color:#60d7e824;box-shadow:inset 4px 0 #60d7e8d1}.songs-page-body .site-footer{color:#ffffff9e}@media (max-width:920px){.songs-page-body:after{opacity:.18;filter:blur(18px)saturate(1.08);background:linear-gradient(#17122557,#11182ad6),url(/assets/img/sanri-room-cover.jpg) top/cover no-repeat;inset:-50px;transform:scale(1.06)}}@media (max-width:640px){.songs-page-body .site-header{background:linear-gradient(90deg,#ffffff1a,#ffffff0b),#221c319e}.songs-page-body .page-title{border-radius:8px;min-height:260px;margin:14px 0 18px;padding:24px}.songs-page-body .page-title p{word-break:normal}.song-console{gap:12px;margin-bottom:40px}.song-console:before{content:none}.songs-page-body .song-toolbar,.songs-page-body .song-filter-panel,.songs-page-body .song-table-wrap{background:#120f1cd1;border-radius:8px}.songs-page-body .song-summary{gap:8px;min-height:auto;padding:4px 0;overflow-x:auto}.songs-page-body .song-table-wrap{border-color:#ffffff1f}}.home-page-body .quick-panel{background:linear-gradient(#ffffff09,#0000 72%);border-top-color:#ffffff29;border-bottom-color:#ffffff24}.home-page-body .quick-panel article{border-left-color:#ffffff2e}.home-page-body .panel-label,.home-page-body .quick-panel small{color:#ffffffa3}.home-page-body .quick-panel strong{color:#fffffffa;text-shadow:0 8px 26px #00000047}.admin-page{color:#f7f3ff;background:radial-gradient(circle at 12% 0,#60d7e833,#0000 26rem),radial-gradient(circle at 88% 10%,#f482fd47,#0000 30rem),linear-gradient(135deg,#14101f 0%,#1b1530 52%,#101827 100%);min-height:100vh}.admin-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:34px 0 58px}.admin-hero{background:linear-gradient(90deg,#0f0d18d1,#0f0d185c),url(/assets/img/sanri-room-cover.jpg) 50%/cover;border:1px solid #ffffff29;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(240px,.34fr);align-items:end;gap:24px;min-height:220px;margin-bottom:18px;padding:clamp(24px,5vw,48px);display:grid;box-shadow:0 24px 72px #0000003d}.admin-hero h1{color:#fff;font-size:clamp(38px,6vw,72px)}.admin-hero p:not(.eyebrow){color:#ffffffc7;max-width:620px;margin:16px 0 0;line-height:1.8}.admin-status{color:#dffaff;background:#0e1521b8;border:1px solid #60d7e847;border-radius:8px;align-items:center;min-height:52px;padding:12px 14px;display:flex}.admin-login-panel,.admin-actions,.admin-editor,.admin-list-tools,.admin-table-wrap{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#ffffff1c,#ffffff0e),#1f192dc7;border:1px solid #ffffff29;border-radius:8px;box-shadow:0 16px 52px #0000002e}.admin-login-panel{gap:16px;max-width:520px;padding:22px;display:grid}.admin-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;padding:14px;display:flex}.admin-editor{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:14px;padding:18px;display:grid}.admin-editor-title,.admin-field-wide{grid-column:1/-1}.admin-editor-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-editor h2{font-size:22px}.admin-editor-title button,.admin-row-actions button,.admin-advanced-toggle button{color:#ffffffe6;min-height:34px;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;padding:0 12px}.admin-login-panel label,.admin-editor label{color:#ffffffb8;gap:7px;font-size:13px;font-weight:800;display:grid}.admin-login-panel input,.admin-editor input,.admin-editor select,.admin-editor textarea{color:#fff;width:100%;min-height:42px;font:inherit;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:8px}.admin-editor input,.admin-login-panel input{padding:0 12px}.admin-editor select{padding:0 10px}.admin-editor textarea{resize:vertical;min-height:84px;padding:10px 12px}.admin-editor input:focus,.admin-login-panel input:focus,.admin-editor select:focus,.admin-editor textarea:focus{border-color:#60d7e885;outline:none;box-shadow:0 0 0 4px #60d7e81f}.admin-list-tools{justify-content:space-between;align-items:center;gap:14px;min-height:66px;margin-bottom:14px;padding:12px 14px;display:flex}.admin-list-tools .search-field{max-width:520px}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:860px}.admin-table th,.admin-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #ffffff1a;padding:15px}.admin-table th{color:#ffffff9e;text-transform:uppercase;font-size:12px}.admin-table td{color:#ffffffdb}.admin-table td strong,.admin-table td span{display:block}.admin-table td strong{color:#fff}.admin-table td span{color:#f9d9ffb8;margin-top:5px;font-size:13px}.admin-row-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-row-actions button:hover,.admin-editor-title button:hover,.admin-advanced-toggle button:hover{background:#f482fd2e}.admin-advanced-toggle{color:#ffffffa3;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.button.ghost{color:#ffffffd6;background:#ffffff14;border-color:#fff3}@media (max-width:900px){.admin-hero,.admin-editor{grid-template-columns:1fr}.admin-list-tools{flex-direction:column;align-items:stretch}.admin-list-tools .search-field{max-width:none}}@media (max-width:640px){.admin-shell{width:min(100% - 22px,1180px);padding-top:18px}.admin-hero,.admin-login-panel,.admin-actions,.admin-editor,.admin-list-tools,.admin-table-wrap{border-radius:8px}}
