@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&family=Nunito:wght@500;600;700;800;900&family=Figtree:wght@400;500;600;700&display=swap";:root{--paper:#fff4e6;--panel:#fff;--ink:#2a1e17;--muted:#8a6a55;--rule:#ffd9b8;--brand:#ff6a13;--on-brand:#fff;--brand-soft:#ffe6d3;--accent:#ff3d7f;--on-accent:#fff;--free:#ffd23f;--free-ink:#2a1e17;--sq:#fff;--sq-border:1.5px solid #ffd9b8;--radius:14px;--dab-glow:none;--call-bg:linear-gradient(90deg, #ff6a13, #ff3d7f);--call-shadow:0 6px 0 #c2301f;--screen-bg:linear-gradient(135deg, #ff6a13 0%, #ff3d7f 100%);--screen-ink:#fff;--ok:#1e7f55;--ok-soft:#ddf2e8;--warn:#b7791f;--warn-soft:#fdf3d2;--display:"Fredoka", "Nunito", system-ui, sans-serif;--body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--heading:"Fredoka", "Nunito", system-ui, sans-serif;--missed:#ffb000;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%}html{touch-action:manipulation;-webkit-text-size-adjust:100%}button,.sq,.bcard{touch-action:manipulation}body{background-color:var(--paper);background-image:var(--art-page,none);color:var(--ink);font-family:var(--body);-webkit-tap-highlight-color:transparent;background-size:300px 300px;margin:0;font-size:16px;line-height:1.5}h1,h2,h3{text-wrap:balance;margin:0;font-weight:800;line-height:1.1}h1{font-family:var(--display);text-transform:uppercase;letter-spacing:.01em;font-size:clamp(2rem,7vw,3.2rem);font-weight:900;line-height:1.05}h2{font-family:var(--heading);font-size:1.55rem}h3{font-family:var(--heading);font-size:1.25rem}p{margin:0}a{color:var(--brand)}img{max-width:100%}.page{flex-direction:column;gap:20px;max-width:1100px;margin:0 auto;padding:24px 16px 64px;display:flex}.page.narrow{max-width:480px}.page-loading{height:100%;color:var(--muted);place-items:center;display:grid}.stack{flex-direction:column;gap:12px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spread{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.muted{color:var(--muted)}.small{font-size:.92rem}.eyebrow{font-family:var(--body);letter-spacing:.02em;color:var(--muted);font-size:.9rem;font-weight:800}.panel{background:var(--panel);border:1px solid var(--rule);border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;gap:16px;display:grid}@media (width<=820px){.grid-2{grid-template-columns:minmax(0,1fr)}}button,.btn{font:inherit;border:2px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-weight:700;text-decoration:none;display:inline-flex}button.primary,.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}button.ghost{border-color:var(--rule)}button.danger{border-color:var(--brand);color:var(--brand)}button.big{padding:16px 26px;font-size:1.15rem}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--brand);outline-offset:2px}label.field{color:var(--ink);flex-direction:column;gap:5px;font-size:.95rem;font-weight:700;display:flex}input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],select,textarea{font:inherit;color:var(--ink);background:var(--paper);border:1.5px solid var(--rule);border-radius:12px;width:100%;padding:11px 14px}select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--brand) 50%), linear-gradient(135deg, var(--brand) 50%, transparent 50%);background-position:calc(100% - 22px) 55%,calc(100% - 16px) 55%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:44px;font-weight:700}@supports (appearance:base-select){select{appearance:base-select;background-image:none;padding-right:14px}select::picker-icon{color:var(--brand);transition:rotate .2s}select:open::picker-icon{rotate:180deg}select::picker(select){appearance:base-select;border:1.5px solid var(--rule);background:var(--panel);border-radius:14px;padding:6px;box-shadow:0 16px 40px #0000002e}select option{color:var(--ink);border-radius:10px;padding:10px 12px;font-weight:600}select option:hover,select option:focus-visible{background:var(--brand-soft)}select option:checked{background:var(--brand);color:var(--on-brand)}select option::checkmark{display:none}select optgroup{color:var(--muted);padding:6px 4px 2px;font-weight:800}}textarea{min-height:160px;font-size:.95rem}.check{cursor:pointer;align-items:flex-start;gap:10px;font-size:1rem;font-weight:600;display:flex}.check input[type=checkbox]{appearance:none;cursor:pointer;background:var(--rule) radial-gradient(circle, #fff 0 9px, transparent 10px) no-repeat left 1px center / 24px 24px;border-radius:999px;flex:none;width:46px;height:26px;margin:1px 0 0;transition:background-color .2s,background-position .2s;box-shadow:inset 0 1px 3px #00000026}.check input[type=checkbox]:checked{background-color:var(--brand);background-position:right 1px center}.check input[type=checkbox]:disabled{opacity:.5}.switch-mini{color:var(--muted);cursor:pointer;align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:inline-flex}.switch-mini input[type=checkbox]{background-image:radial-gradient(circle,#fff 0 7px,#0000 8px);background-size:20px 20px;width:38px;height:22px}.segmented{background:var(--paper);border:1.5px solid var(--rule);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.segmented button{border:0;padding:6px 16px;font-size:.9rem}.segmented button.on{background:var(--brand);color:var(--on-brand)}.check small{color:var(--muted);font-size:.9rem;font-weight:500;display:block}.chip{font-family:var(--body);background:var(--paper);border:1px solid var(--rule);white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:.95rem;font-weight:800}.chip.ok{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.chip.warn{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.chip.brand{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.error{background:var(--brand-soft);color:var(--brand);border-radius:10px;padding:10px 12px;font-size:.9rem}.notice{background:var(--warn-soft);border-radius:10px;padding:10px 12px;font-size:.9rem}.code-big{font-family:var(--display);letter-spacing:.12em;font-size:3.4rem;font-weight:900;line-height:1}.letter{background:var(--brand);width:56px;height:56px;color:var(--on-brand);font-family:var(--display);border-radius:50%;flex:none;place-items:center;font-size:2rem;font-weight:900;display:grid}.letter.idle{background:var(--rule);color:var(--muted)}.bcard{--sqfs:15px;-webkit-user-select:none;user-select:none;flex:1;grid-template-rows:auto;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:minmax(64px,1fr);gap:5px;min-height:0;display:grid;container-type:inline-size}.bcard .hdr{font-family:var(--display);text-align:center;border-radius:var(--radius);color:var(--brand);font-size:1.7rem;font-weight:900;line-height:1.15}.bcard .hdr.hot{background:var(--accent);color:var(--on-accent)}.sq{border-radius:var(--radius);border:var(--sq-border);background-color:var(--t-back,var(--sq));background-image:var(--t-sq,none);min-width:0;min-height:0;text-shadow:var(--sq-halo,none);color:var(--sq-ink,var(--ink));font:inherit;text-align:center;cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:center;align-items:center;padding:4px 3px;font-weight:700;line-height:1.1;display:flex;position:relative;overflow:hidden}.sq .fit{overflow-wrap:normal;word-break:normal;width:100%;height:100%;font-size:var(--sqfs);letter-spacing:-.005em;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-family:Figtree,Helvetica Neue,system-ui,sans-serif;display:flex;overflow:hidden}.sq .ti{font-weight:600;line-height:1.12}.sq .ti .br{font-size:.8em;font-weight:500}.sq .ar{color:var(--sq-muted,var(--muted));font-size:.8em;font-weight:400;line-height:1.1}.sq.marked{background-color:var(--t-marked-bg,var(--brand));background-image:var(--t-marked,none);border-color:var(--brand);color:var(--t-marked-ink,var(--on-brand));box-shadow:var(--dab-glow);text-shadow:var(--sq-halo-on,none)}.sq.marked .ar{color:inherit;opacity:.85}.sq.free{background-color:var(--t-back,var(--free));background-image:var(--t-free,none);justify-content:var(--free-justify,center);padding-bottom:var(--free-pad,3px);text-shadow:var(--free-shadow,none);color:var(--free-ink);font-family:var(--display);letter-spacing:0;cursor:default;white-space:nowrap;background-size:contain;border-color:#0000;font-size:clamp(.7rem,4.4cqi,1.35rem);font-weight:900;overflow:hidden}.sq.col-hot:not(.marked):not(.win):not(.free){background-color:var(--t-hot-back,color-mix(in srgb, var(--accent) 13%, var(--sq)));background-image:var(--t-hot,none);border-color:color-mix(in srgb, var(--accent) 40%, var(--rule))}.sq.free.col-hot{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent)}.sq:disabled{opacity:1;cursor:default}.sq.missed{box-shadow:inset 0 0 0 3px var(--missed), 0 0 0 2px var(--missed);position:relative}.sq.missed:after{content:"";background:var(--missed);width:9px;height:9px;box-shadow:0 0 0 2px var(--sq);border-radius:50%;position:absolute;top:4px;right:4px}@media (prefers-reduced-motion:no-preference){.sq.missed,.catchup i{animation:1.1s ease-in-out infinite missed-pulse}}@keyframes missed-pulse{50%{box-shadow:inset 0 0 0 4px var(--missed), 0 0 14px 4px var(--missed)}}.sq.win{background-color:var(--t-win-bg,var(--ok));background-image:var(--t-win,none);border-color:var(--ok);color:var(--t-win-ink,#fff);text-shadow:none}.sq.win .ar{color:inherit}@media (prefers-reduced-motion:no-preference){.sq{transition:background .15s,transform .1s}.sq:active{transform:scale(.95)}}.guide{text-align:left;flex-direction:column;gap:10px;display:flex}.guide-text{font-size:1rem}.guide-examples{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.guide-ex{flex-direction:column;align-items:center;gap:4px;margin:0;display:flex}.guide-grid{grid-template-columns:repeat(5,14px);gap:3px;display:grid}.guide-grid i{background:var(--rule);border-radius:3px;width:14px;height:14px;display:block}.guide-grid i.on{background:var(--brand)}.guide-grid i.free{outline:2px solid var(--ink);outline-offset:-2px}.guide-ex figcaption{color:var(--muted);font-size:.75rem;font-weight:600}.chip-btn{cursor:pointer;font-weight:500}.play{z-index:1;min-height:100dvh;padding:10px 8px calc(12px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:10px;max-width:620px;margin:0 auto;display:flex;position:relative}.play-top .brandmark{flex:1 1 0;min-width:0}.play-top .brandmark b{white-space:normal;font-size:clamp(1rem,5.2vw,1.35rem);line-height:1.05;overflow:visible}.play-top>button{flex:none}.lobby-hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:12px 8px;display:flex}.lobby-hero h1{font-size:clamp(2.2rem,11vw,3.4rem)}.lobby-hero p{max-width:30ch;font-size:1.05rem}.lobby-disc{background:repeating-radial-gradient(circle,#1b1b1b 0 3px,#0c0c0c 3px 5px);border-radius:50%;place-items:center;width:120px;height:120px;display:grid;position:relative;box-shadow:0 12px 30px #00000040}.lobby-disc:after{content:"";background:conic-gradient(transparent 0 15%, #ffffff2e 20%, transparent 26% 62%, #ffffff1f 68%, transparent 74%);border-radius:50%;position:absolute;inset:0}.lobby-disc b{background:var(--brand);width:46px;height:46px;color:var(--on-brand);font-family:var(--display);border-radius:50%;place-items:center;font-size:1.5rem;display:grid}.lobby-msg-chip{background:var(--panel);border:1.5px solid var(--rule);border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:700}.lobby-actions{flex-direction:column;gap:10px;display:flex}.lobby-dots{gap:6px;display:flex}.lobby-dots i{background:var(--brand);border-radius:50%;width:10px;height:10px;display:block}@media (prefers-reduced-motion:no-preference){.lobby-disc:after{animation:3s linear infinite spin}.lobby-dots i{animation:1.2s ease-in-out infinite dot}.lobby-dots i:nth-child(2){animation-delay:.2s}.lobby-dots i:nth-child(3){animation-delay:.4s}}@keyframes dot{50%{opacity:.5;transform:translateY(-8px)}}.play.playing{height:100dvh;min-height:560px}.play.playing .bcard{grid-auto-rows:minmax(0,1fr)}.catchup{background:var(--panel);border:2px solid var(--missed);border-radius:16px;flex:none;align-items:center;gap:8px;height:48px;margin:0;padding:0 14px;font-size:.9rem;font-weight:600;line-height:1.2;display:flex;overflow:hidden}.catchup span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.catchup.quiet-tip{border-color:var(--rule);color:var(--muted);font-weight:600}.catchup i{background:var(--missed);border-radius:50%;flex:none;width:12px;height:12px;display:block}.toast{z-index:40;width:min(92vw,560px);margin:0;position:fixed;top:58px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000040}.banner.checking{color:var(--ink)}.play-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.play-top button{padding:6px 14px;font-size:.9rem}.brandmark{align-items:center;gap:10px;min-width:0;display:flex}.brandmark img{width:auto;height:30px}.brandmark b{font-family:var(--display);text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem;font-weight:900;line-height:1;overflow:hidden}.banner{text-align:center;border-radius:12px;padding:10px 14px;font-weight:700}.banner.checking{background:var(--warn-soft)}.banner.valid{background:var(--ok-soft);color:var(--ok)}.banner.invalid{background:var(--brand-soft);color:var(--brand)}.call-bingo{width:100%;box-shadow:var(--call-shadow);font-size:1.6rem;font-family:var(--display);letter-spacing:.06em;padding:14px;font-weight:900;background:var(--call-bg)!important;border:0!important}.center-msg{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.center-msg h1{font-size:clamp(2.2rem,10vw,3.4rem)}.powered{text-align:center;color:var(--muted);font-size:.75rem}.overlay{z-index:50;background:color-mix(in srgb, var(--paper) 70%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.overlay .box{background:var(--panel);text-align:center;border-radius:18px;flex-direction:column;gap:14px;width:100%;max-width:420px;padding:24px;display:flex;box-shadow:0 20px 60px #00000040}.overlay .box h1{color:var(--brand)}.overlay .box{max-height:90dvh;position:relative;overflow-y:auto}.overlay .box.wide{text-align:left;max-width:980px}.box-title{padding:0 36px}.close-x{background:var(--paper);width:40px;height:40px;color:var(--ink);border:0;border-radius:50%;padding:0;font-size:1.7rem;line-height:1;position:absolute;top:10px;right:10px}.close-x:hover{background:var(--brand-soft)}.look-default{border-color:var(--rule);align-self:flex-start}.look-default.on{border-color:var(--brand);background:var(--brand-soft)}.howtoplay{text-align:left;flex-direction:column;gap:8px;margin:0;padding-left:22px;display:flex}.pattern-picker{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.pp{border:2px solid var(--rule);background:var(--paper);border-radius:14px;flex-direction:column;gap:6px;padding:10px 6px;font-size:.82rem;line-height:1.1}.pp.on{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.pp-grid{grid-template-columns:repeat(5,9px);gap:2px;display:grid}.pp-grid i{background:var(--rule);border-radius:2px;width:9px;height:9px;display:block}.pp-grid i.on{background:var(--brand)}.look-btn{border:1.5px solid var(--rule);background:var(--paper);text-align:left;border-radius:14px;justify-content:flex-start;gap:12px;width:100%;padding:10px 14px}.look-swatch{background:var(--paper);border:1px solid var(--rule);border-radius:10px;grid-template-columns:repeat(3,12px);gap:3px;padding:6px;display:grid}.look-swatch i{background:var(--brand);border-radius:4px;width:12px;height:22px;display:block}.look-swatch i:nth-child(2){background:var(--accent)}.look-swatch i:nth-child(3){background:var(--free)}.look-text{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.look-change{color:var(--brand);font-size:.9rem}.list{flex-direction:column;display:flex}.list>*{border-top:1px solid var(--rule);padding:10px 0}.list>:first-child{border-top:0}.player-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.player-row b{overflow-wrap:anywhere}.upcoming{max-height:360px;overflow-y:auto}.song-row{grid-template-columns:34px 28px minmax(0,1fr);align-items:center;gap:8px;font-size:1rem;display:grid}.song-row .n{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:800}.song-row .c{color:var(--brand);font-weight:900}.song-row.played{opacity:.5}.song-row.now{font-weight:700}.mini{grid-template-columns:repeat(5,14px);gap:2px;display:grid}.mini i{background:var(--rule);border-radius:3px;width:14px;height:14px;display:block}.mini i.c{background:var(--ok)}.mini i.w{background:var(--brand)}.mini i.m{background:var(--warn)}.mini i.f{background:var(--ink)}.qr{background:#fff;border-radius:12px;width:180px;max-width:100%;padding:10px}.qr canvas,.qr img{display:block;width:100%!important;height:auto!important}.remote{max-width:440px;padding:16px 16px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:16px;min-height:100%;margin:0 auto;display:flex}.remote .next{width:100%;font-size:2rem;font-family:var(--display);letter-spacing:.05em;border-radius:24px;padding:34px;font-weight:900}.remote input[type=range]{width:100%;accent-color:var(--brand);height:36px}.screen{background:var(--screen-bg);color:var(--screen-ink);font-size:clamp(14px,1.6vw,28px);font-family:var(--body);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.screen>*{z-index:1;position:relative}.screen:before{content:"";z-index:0;pointer-events:none;background-image:var(--art-screen,none);background-size:420px 420px;position:absolute;inset:0}.backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.backdrop.fixed{position:fixed}.backdrop .blob{filter:blur(8vh);opacity:.45;border-radius:50%;display:block;position:absolute}.backdrop .b1{background:var(--accent);width:60vh;height:60vh;top:-14vh;left:-12vh}.backdrop .b2{background:var(--free);opacity:.3;width:70vh;height:70vh;bottom:-24vh;right:-18vh}.backdrop .b3{background:var(--brand);opacity:.35;width:46vh;height:46vh;top:30%;left:42%}.backdrop.fixed .blob{opacity:.22}.backdrop .note{opacity:0;color:var(--screen-ink);font-size:7vh;position:absolute;bottom:-10vh}.backdrop.fixed .note{color:var(--brand);font-size:5vh}.backdrop .note.n0{left:6%}.backdrop .note.n1{left:18%}.backdrop .note.n2{left:31%}.backdrop .note.n3{left:45%}.backdrop .note.n4{left:58%}.backdrop .note.n5{left:70%}.backdrop .note.n6{left:83%}.backdrop .note.n7{left:94%}@media (prefers-reduced-motion:no-preference){.backdrop .b1{animation:18s ease-in-out infinite alternate drift1}.backdrop .b2{animation:22s ease-in-out infinite alternate drift2}.backdrop .b3{animation:26s ease-in-out infinite alternate drift3}.backdrop .note{animation:11s linear infinite float-up}.backdrop .note.n1{animation-duration:13s;animation-delay:1.4s}.backdrop .note.n2{animation-delay:4.2s}.backdrop .note.n3{animation-duration:12s;animation-delay:2.8s}.backdrop .note.n4{animation-delay:6s}.backdrop .note.n5{animation-duration:14s;animation-delay:7.5s}.backdrop .note.n6{animation-delay:3.5s}.backdrop .note.n7{animation-duration:12s;animation-delay:9s}.screen .sheen{animation:4s linear infinite spin}.screen .label{animation:.7s cubic-bezier(.2,1.6,.4,1) both drop-in}.screen .eq i{animation-name:eq;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}.screen .recent-row.newest{animation:.6s ease-out both slide-in}.screen .lobby-soon{animation:2.4s ease-in-out infinite breathe}.screen .claim-banner{animation:1s ease-in-out infinite pulse-banner}.screen .winner h1{animation:.8s cubic-bezier(.2,1.6,.4,1) both bounce-in,2s ease-in-out .8s infinite wobble}.screen .winner .rays{animation:20s linear infinite spin}.screen .pb-grid i{transition:background .4s,transform .4s}}@keyframes drift1{to{transform:translate(30vw,20vh)scale(1.2)}}@keyframes drift2{to{transform:translate(-35vw,-18vh)scale(.9)}}@keyframes drift3{to{transform:translate(-25vw,25vh)scale(1.3)}}@keyframes float-up{0%{opacity:0;transform:translateY(0)rotate(-10deg)}10%{opacity:.35}80%{opacity:.25}to{opacity:0;transform:translateY(-120vh)rotate(20deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes drop-in{0%{opacity:0;transform:scale(.3)rotate(-30deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes eq{0%{transform:scaleY(.15)}to{transform:scaleY(1)}}@keyframes slide-in{0%{opacity:0;transform:translate(8vw)}to{opacity:1;transform:none}}@keyframes breathe{50%{opacity:.55}}@keyframes pulse-banner{50%{transform:translate(-50%)scale(1.05)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@keyframes wobble{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)scale(1.05)}}.screen .top{justify-content:space-between;align-items:center;gap:2vw;padding:2.2vh 3vw;display:flex}.screen .top img{width:auto;height:8vh}.screen .top .name{font-family:var(--display);text-transform:uppercase;font-size:2.2em;font-weight:900;line-height:1}.screen .top-right{align-items:center;gap:2vw;display:flex}.screen .round{opacity:.85;font-size:1.1em;font-weight:800}.screen .pattern-badge{background:#00000038;border-radius:2vh;align-items:center;gap:1vw;padding:1vh 1.4vw 1vh 1vh;display:flex}.screen .pb-grid{grid-template-columns:repeat(5,1.6vh);gap:.35vh;display:grid}.screen .pb-grid i{background:#ffffff40;border-radius:.35vh;width:1.6vh;height:1.6vh;display:block}.screen .pb-grid i.on{background:var(--free);transform:scale(1.1)}.screen .pb-label{opacity:.75;font-size:.8em;font-weight:700;line-height:1.1}.screen .pb-name{font-family:var(--display);text-transform:uppercase;font-size:1.5em;font-weight:900;line-height:1.05}.screen .mid{flex:1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:4vw;min-height:0;padding:0 5vw;display:grid}.screen .now{flex-direction:column;align-items:center;gap:2.4vh;display:flex}.screen .record{aspect-ratio:1;background:#111;border-radius:50%;place-items:center;width:min(44vh,36vw);display:grid;position:relative;box-shadow:0 3vh 6vh #00000059,0 0 0 .8vh #ffffff14}.screen .grooves{background:repeating-radial-gradient(circle,#1b1b1b 0 .5vh,#0c0c0c .5vh .9vh);border-radius:50%;position:absolute;inset:3%}.screen .sheen{background:conic-gradient(from 0deg, transparent 0 15%, #ffffff29 20%, transparent 26% 62%, #ffffff1f 68%, transparent 74%);border-radius:50%;position:absolute;inset:0}.screen .label{aspect-ratio:1;background:var(--brand);width:56%;color:var(--on-brand);font-family:var(--display);box-shadow:inset 0 0 0 1vh color-mix(in srgb, var(--accent) 70%, transparent);border-radius:50%;place-items:center;font-size:min(19vh,15vw);font-weight:900;line-height:1;display:grid;position:relative}.screen .now-info{flex-direction:column;align-items:center;gap:1.2vh;width:min(44vh,36vw);display:flex}.screen .eq{align-items:flex-end;gap:.6vh;height:5vh;display:flex}.screen .eq i{background:var(--screen-ink);opacity:.85;transform-origin:bottom;border-radius:.6vh;width:1.2vh;height:100%;display:block;transform:scaleY(.5)}.screen .song-count{font-family:var(--display);font-size:2em;font-weight:900;line-height:1}.screen .progress{background:#fff3;border-radius:1vh;width:100%;height:1.2vh;overflow:hidden}.screen .progress i{background:var(--free);border-radius:1vh;height:100%;transition:width .6s;display:block}.screen .recent{flex-direction:column;gap:1.6vh;min-width:0;display:flex}.screen .recent-head{opacity:.75;letter-spacing:.04em;font-size:1.1em;font-weight:800}.screen .recent-row{background:#0000002e;border-radius:2vh;align-items:center;gap:1.4vw;min-width:0;padding:1.4vh 1.4vw;display:flex}.screen .recent-row.newest{box-shadow:0 0 0 .3vh var(--free);background:#ffffff2e}.screen .recent-row:not(.newest){opacity:.85;font-size:.82em}.screen .recent-col{background:var(--brand);width:2.2em;height:2.2em;color:var(--on-brand);font-family:var(--display);border-radius:50%;flex:none;place-items:center;font-size:1.3em;font-weight:900;display:grid}.screen .recent-text{text-overflow:ellipsis;min-width:0;font-size:1.45em;font-weight:800;line-height:1.15;overflow:hidden}.screen .recent-text span{opacity:.75;font-size:.72em;font-weight:500;display:block}.screen .recent-empty{opacity:.8;font-size:1.6em;font-weight:700}.screen .bottom{justify-content:space-between;align-items:flex-end;gap:2vw;padding:1.6vh 3vw 2vh;display:flex}.screen .bottom-right{opacity:.85;flex-direction:column;align-items:flex-end;gap:1vh;display:flex}.screen .bottom .powered{color:inherit;opacity:.8;font-size:.7em}.screen .winners-line{font-weight:800}.screen .screen-btn{color:inherit;border-color:#ffffff59;padding:.6vh 1.2vw;font-size:.6em}.screen .join-strip{background:#00000040;border-radius:2vh;align-items:center;gap:1.2vw;padding:1vh 1.6vw 1vh 1vh;display:flex}.screen .join-strip .qr{border-radius:1.2vh;width:13vh;padding:.8vh}.screen .join-title{font-family:var(--display);text-transform:uppercase;font-size:1.6em;font-weight:900;line-height:1}.screen .join-sub{opacity:.9;font-size:1em}.screen .join-sub b{font-family:var(--display);letter-spacing:.08em;font-size:1.3em}.screen .fullqr{z-index:4;background:var(--screen-bg);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3vw;padding:0 3vw;display:grid;position:absolute;inset:0}.screen .fq-code .qr{border-radius:2vh;width:92vh;max-width:62vw;padding:1.6vh}.screen .fq-code .qr canvas{width:100%;height:auto;display:block}.screen .fq-side{align-self:center;margin-bottom:30vh}.screen .fq-title{font-family:var(--display);font-size:9vh;font-weight:900;line-height:1}.screen .fullqr-text{margin-top:1.5vh;font-size:3.6vh;font-weight:800;line-height:1.3}.screen .mini-recent{flex-direction:column;gap:.8vh;width:calc(88vw - min(92vh,62vw));font-size:.6em;display:flex;position:absolute;bottom:4vh;right:3vw}.screen .mini-recent .recent-row{padding:.8vh 1vw}.screen .mini-recent .recent-text{white-space:nowrap}.screen .join-side{justify-content:center;align-items:center}.screen .join-strip.big{text-align:center;flex-direction:column;gap:2vh;padding:3vh 3vw}.screen .join-strip.big .qr{border-radius:2vh;width:min(40vh,30vw);padding:1.6vh}.screen .join-strip.big .join-title{font-size:3em}.screen .join-strip.big .join-sub{font-size:1.4em}.screen .winner{text-align:center;background:color-mix(in srgb, var(--brand) 90%, #000);color:var(--on-brand);z-index:5;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.screen .winner .rays{background:repeating-conic-gradient(#ffffff17 0 7deg, transparent 7deg 18deg);width:200vmax;height:200vmax;margin:-100vmax 0 0 -100vmax;position:absolute;top:50%;left:50%}.screen .winner h1{text-shadow:0 1vh #00000040;font-size:18vh}.screen .winner p{font-size:3.4em;font-weight:900;font-family:var(--display)}.screen .winner .winner-sub{font-size:1.4em;font-family:var(--body);opacity:.9;font-weight:700}.screen .claim-banner{background:var(--free);color:var(--free-ink);font-weight:900;font-family:var(--display);text-transform:uppercase;z-index:4;white-space:nowrap;border-radius:2vh;padding:1.5vh 3vw;font-size:2.4em;position:absolute;top:14vh;left:50%;transform:translate(-50%);box-shadow:0 2vh 5vh #0000004d}.screen .claim-banner.invalid{background:var(--panel);color:var(--ink)}.screen .lobby{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:4vw;min-height:0;padding:0 5vw 3vh;display:grid}.screen .lobby-qr{place-items:center;display:grid}.screen .lobby-qr .qr{border-radius:3vh;width:min(70vh,44vw);padding:2.2vh;box-shadow:0 3vh 6vh #0000004d}.screen .lobby-info{flex-direction:column;gap:2.2vh;display:flex}.screen .lobby-head{font-family:var(--display);text-transform:uppercase;font-size:3.4em;font-weight:900;line-height:.95}.screen .lobby-or{opacity:.9;font-size:1.3em}.screen .lobby-label{letter-spacing:.12em;text-transform:uppercase;opacity:.75;margin-top:2vh;font-size:1em;font-weight:800}.screen .lobby-code{font-family:var(--display);letter-spacing:.12em;color:var(--screen-ink);text-shadow:0 .6vh 0 var(--accent);font-size:7em;font-weight:900;line-height:.9}.screen .lobby-msg{opacity:.9;font-size:1.3em}.screen .lobby-soon{font-size:1.2em;font-weight:800}.screen .pre{flex:1;place-items:center;display:grid}.screen .thanks{font-family:var(--display);text-transform:uppercase;font-size:4.5em;font-weight:900;line-height:1}.screen .thanks-winner{font-size:2em;font-weight:800}.finish{background:var(--brand-soft);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.howto{background:var(--brand-soft);border-radius:12px;padding:12px 14px;font-size:.95rem}.howto ol{flex-direction:column;gap:4px;margin:6px 0 0;padding-left:20px;display:flex}.picker{flex-direction:column;gap:12px;display:flex}.picker-tabs{flex-wrap:wrap;gap:6px;display:flex}.picker-tabs .tab{border-width:1.5px;border-color:var(--rule);padding:6px 12px;font-size:.85rem}.picker-tabs .tab.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:520px;padding:2px;display:grid;overflow-y:auto}.picker.strip .picker-tabs{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.picker.strip .picker-tabs .tab{flex:none}.picker.strip .picker-grid{scroll-snap-type:x mandatory;max-height:none;padding:4px 2px 10px;display:flex;overflow:auto visible}.picker.strip .tt{scroll-snap-align:start;flex:0 0 116px;gap:5px;padding:8px}.picker.strip .tt-blurb{display:none}.picker.strip .tt-name{font-size:.9rem}.picker.strip .tt-call{padding:2px;font-size:.75rem}.tt{background:var(--paper);color:var(--ink);border:2px solid var(--rule);text-align:left;font-family:var(--body);border-radius:14px;flex-direction:column;align-items:stretch;gap:6px;padding:10px;font-weight:600;display:flex}.tt.on{outline:3px solid var(--brand);outline-offset:2px}.tt-name{font-family:var(--heading);color:var(--brand);font-size:1.05rem;line-height:1.1}.tt-grid{grid-template-columns:repeat(5,1fr);gap:3px;display:grid}.tt-grid i{aspect-ratio:1;border-radius:calc(var(--radius) / 3);background:var(--sq);border:1px solid var(--rule);display:block}.tt-grid i.d{background:var(--brand);border-color:var(--brand);box-shadow:var(--dab-glow)}.tt-grid i.f{background:var(--free);border-color:#0000}.tt-call{text-align:center;font-family:var(--display);background:var(--call-bg);color:var(--on-brand);border-radius:999px;padding:4px;font-size:.85rem}.tt-blurb{color:var(--muted);font-size:.72rem;font-weight:500;line-height:1.25}.locked-code{background:var(--brand-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.locked-code b{font-family:var(--display);letter-spacing:.25em;color:var(--brand);font-size:2rem;line-height:1}.page.console{gap:12px;max-width:1840px;padding-top:12px}.join-panel{gap:8px;padding-top:12px}.console-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"bar""mid""left""right";align-items:start;gap:14px;display:grid}.console-bar{flex-wrap:wrap;grid-area:bar;justify-content:center;align-items:center;gap:8px;display:flex}.console-out{grid-area:out;justify-content:flex-end;display:none}.console-bar .bar-out{margin-left:auto}.console-bar .btn,.console-bar button{padding:8px 14px;font-size:.9rem}.console-grid .col{flex-direction:column;gap:16px;min-width:0;display:flex}.col-left{grid-area:left}.col-mid{grid-area:mid}.col-right{grid-area:right}@media (width>=900px){.console-grid{grid-template:"left bar""left mid""right mid"1fr/minmax(300px,1fr) minmax(0,1.5fr)}}@media (width>=1380px){.console-grid{grid-template:"left bar out""left mid right"1fr/minmax(300px,.95fr) minmax(0,1.45fr) minmax(320px,1fr)}.console-out{display:flex}.console-bar .bar-out{display:none}.col-right{position:sticky;top:16px}.col-right .list{max-height:calc(100vh - 170px);overflow-y:auto}}.console .qr{flex:none;width:150px}.np{align-items:center;gap:18px;display:flex}.np-art{background:#111 repeating-radial-gradient(circle,#1c1c1c 0 3px,#0d0d0d 3px 5px);border-radius:16px;flex:none;place-items:center;width:128px;height:128px;display:grid;box-shadow:0 10px 24px #0003}.np-art.idle{opacity:.6}.np-label{background:var(--brand);width:58px;height:58px;color:var(--on-brand);font-family:var(--display);border-radius:50%;place-items:center;font-size:2rem;font-weight:900;display:grid}@media (prefers-reduced-motion:no-preference){.np-label{animation:.6s cubic-bezier(.2,1.6,.4,1) both drop-in}}.np-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.np-title{overflow-wrap:anywhere;font-size:1.6rem;line-height:1.15;font-family:var(--heading)}.np-artist{color:var(--muted);font-size:1.1rem;font-weight:600}.np-progress{background:var(--rule);border-radius:8px;height:8px;margin-top:8px;overflow:hidden}.np-progress i{background:var(--brand);height:100%;transition:width .4s;display:block}.transport{grid-template-columns:auto auto 1fr;gap:10px;display:grid}.tr-btn{border-color:var(--rule);flex-direction:column;gap:0;padding:10px 18px;font-size:1.4rem;line-height:1}.tr-btn span{font-size:.75rem;font-weight:700}.tr-btn.next{background:var(--brand);border-color:var(--brand);color:var(--on-brand);font-size:1.3rem;font-family:var(--heading);flex-direction:row;gap:10px}.finish-btns button{border-color:var(--rule);background:var(--panel)}.finish-btns button.on{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.song-row .c{background:var(--brand-soft);border-radius:50%;place-items:center;width:28px;height:28px;font-size:.9rem;display:grid}.song-row .tag{background:var(--brand);color:var(--on-brand);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:800}.song-row.next{background:var(--brand-soft);border-radius:10px;padding-left:6px;padding-right:6px;font-weight:700}.upcoming{max-height:460px}.slug-input{border:1.5px solid var(--rule);background:var(--paper);border-radius:12px;align-items:center;display:flex;overflow:hidden}.slug-input span{color:var(--muted);white-space:nowrap;padding:0 4px 0 14px;font-weight:700}.slug-input input{background:0 0!important;border:0!important;padding-left:2px!important}.phone-bar{display:none}.menu-section{text-align:left;border-top:1.5px solid var(--rule);padding-top:12px}@media (width<=899px){.page.console{gap:12px;padding:12px 10px 110px}.page.console h1{font-size:2rem}.page.console>.spread .row{gap:6px}.page.console>.spread .row .btn,.page.console>.spread .row button{padding:7px 12px;font-size:.85rem}.console-grid{flex-direction:column;gap:12px;display:flex}.console-grid .col{display:contents}.o-bar{order:0;justify-content:flex-start}.o-now{order:1}.o-claims{order:2}.o-lobby{order:3}.o-requests{order:4}.o-playing{order:5}.o-order{order:6}.o-next{order:7}.o-settings{order:8}.o-join{order:9}.np-art{width:84px;height:84px}.np-label{width:40px;height:40px;font-size:1.4rem}.np-title{font-size:1.25rem}.now-panel .transport,.now-panel>p.muted{display:none}.phone-bar{z-index:30;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1.5px solid var(--rule);grid-template-columns:1fr 2fr;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0}.phone-bar button{padding:16px;font-size:1.15rem}.phone-bar .primary{font-family:var(--heading);font-size:1.3rem}.player-row{flex-wrap:wrap}}.dns-rec{background:var(--panel);border-radius:10px;grid-template-columns:auto 1fr;gap:4px 16px;margin-top:8px;padding:10px 14px;display:grid}.dns-rec span{color:var(--muted);font-weight:700}.dns-rec b{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:1.05rem}.seller-steps{flex-direction:column;gap:4px;margin:0;padding-left:22px;display:flex}.song-row.played.now{opacity:1}.switch-mini{white-space:nowrap}.ticker{flex:none;gap:2px;display:inline-grid}.ticker i{background:var(--rule);border-radius:2px;transition:background .3s;display:block}.ticker i.on{background:var(--brand)}.ticker i.free{background:color-mix(in srgb, var(--free) 60%, var(--rule))}.game-type{border:1.5px solid var(--rule);background:var(--panel);color:var(--ink);border-radius:14px;align-items:center;gap:10px;padding:6px 12px 6px 8px;font-size:1rem;font-weight:800;display:inline-flex}.game-type .i{border:1.5px solid var(--muted);width:20px;height:20px;color:var(--muted);border-radius:50%;place-items:center;font-size:.75rem;font-style:normal;font-weight:800;display:grid}.overlay.bingo-alert{background:color-mix(in srgb, var(--brand) 55%, #0009);z-index:60}.overlay.bingo-alert .box{border:4px solid var(--free);max-width:560px}.bingo-alert-head{font-family:var(--display);color:var(--brand);font-size:3.4rem;font-weight:900;line-height:1}@media (prefers-reduced-motion:no-preference){.overlay.bingo-alert .box{animation:.5s cubic-bezier(.2,1.6,.4,1) both bounce-in}.bingo-alert-head{animation:1.4s ease-in-out infinite wobble}}.stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat{background:var(--panel);border:1.5px solid var(--rule);border-radius:12px;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.stat span{color:var(--muted);font-size:.85rem;font-weight:700}.stat b{font-family:var(--heading);color:var(--ink);font-size:1.6rem;line-height:1.1}.stat small{color:var(--muted);font-size:.85rem}.auto-row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.auto-custom{color:var(--muted);align-items:center;gap:6px;font-size:.9rem;font-weight:700;display:inline-flex}.auto-custom input{width:80px;padding:6px 10px}.tr-btn.next.won{background:var(--ok);border-color:var(--ok);color:#fff}.song-row .tag{background:var(--ok);color:#fff}.song-row.next .tag{background:var(--free);color:var(--free-ink)}.player-row.quiet{opacity:.75}.player-row.left{opacity:.7}.player-row.left b{text-decoration:line-through}.player-row.left .small{color:var(--warn)}@media (prefers-reduced-motion:no-preference){.o-lobby.nudge{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);animation:.6s ease-in-out 2 nudge}}@keyframes nudge{0%,to{transform:none}20%{transform:translate(-6px)rotate(-.6deg)}40%{transform:translate(6px)rotate(.6deg)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.sq.near:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ffecaad9 50%,#0000 65%) 0 0/250% 100% no-repeat;animation:1.7s ease-in-out infinite dmb-shimmer;position:absolute;inset:0;box-shadow:inset 0 0 0 2.5px #f2c94c,0 0 12px #f2c94ccc}@keyframes dmb-shimmer{0%{background-position:130% 0}to{background-position:-30% 0}}.call-bingo.ready{animation:1.2s ease-in-out infinite dmb-ready}@keyframes dmb-ready{50%{box-shadow:var(--call-shadow), 0 0 0 5px #f2c94c, 0 0 26px 8px #f2c94cbf}}.catchup.on{border:2.5px solid var(--missed);animation:1.4s ease-in-out infinite dmb-boxpulse}@keyframes dmb-boxpulse{50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--missed) 30%, transparent), 0 0 18px color-mix(in srgb, var(--missed) 70%, transparent)}}.chip.rs{flex-direction:column;align-items:flex-end;gap:0;padding-block:3px;line-height:1.1;display:inline-flex}.chip.rs small{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:.66rem;font-weight:800}.floaters{pointer-events:none;z-index:0;opacity:.85;position:fixed;inset:0;overflow:hidden}.screen .floaters{opacity:.9;--flake:#fff;position:absolute}.fl{height:100%;width:var(--s);animation:linear infinite dmb-fall;position:absolute;top:0}.fl b{top:calc(var(--s) * -1);width:var(--s);height:var(--s);animation:ease-in-out infinite alternate dmb-sway;display:block;position:absolute;left:0}.fl svg,.fx svg,.fx-flyer svg{width:100%;height:100%;display:block}.screen .fl svg{filter:drop-shadow(0 3px 4px #00000040)}.screen .fl-tree svg,.screen .fl-holly svg{filter:drop-shadow(0 0 1.5px #fffffff2)drop-shadow(0 0 4px #ffffff59)}@keyframes dmb-fall{0%{transform:translateY(0)}to{transform:translateY(calc(100% + var(--s) * 2))}}@keyframes dmb-sway{0%{transform:translateX(calc(var(--sw) * -1)) rotate(calc(var(--sp) * -.5))}to{transform:translateX(var(--sw)) rotate(calc(var(--sp) * .5))}}.calm .fl,.calm .fl b,.calm .bulb *{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){.fl,.fl b,.bulb *{animation-play-state:paused}}.lights-wrap{z-index:2;pointer-events:none;height:44px;position:fixed;top:0;left:0;right:0}.screen .lights-wrap{z-index:1;height:9vh;position:absolute}.lights{width:100%;height:100%;display:block;overflow:visible}.bulb .glass,.bulb .halo{animation:2.4s ease-in-out infinite dmb-glass;animation-delay:var(--d)}.bulb .halo{animation-name:dmb-halo}.bulb.b2 .glass,.bulb.b2 .halo{animation-delay:calc(var(--d) - 1.2s)}@keyframes dmb-glass{0%,45%{opacity:1}55%,95%{opacity:.38}to{opacity:1}}@keyframes dmb-halo{0%,45%{opacity:.75}55%,95%{opacity:0}to{opacity:.75}}.play.lit{padding-top:38px}.fx-layer{pointer-events:none;z-index:40;position:fixed;inset:0;overflow:hidden}.screen .fx-layer{position:absolute}.fx{pointer-events:none;position:absolute}.fx-flyer{pointer-events:none;width:min(104vw,640px);position:absolute;top:0;left:0}.fx-flyer svg{filter:drop-shadow(0 8px 8px #00000047);height:auto;animation:.45s ease-in-out infinite alternate dmb-bob}.fx-flyer.shake svg{animation:.12s linear 6 dmb-shakeit}@keyframes dmb-bob{to{transform:translateY(-6px)}}@keyframes dmb-shakeit{50%{transform:rotate(3deg)translateY(-3px)}}.drop-banner{z-index:45;background:var(--accent);color:var(--on-accent);font-family:var(--display);text-align:center;white-space:nowrap;pointer-events:none;border:3px solid #f2c94c;border-radius:16px;padding:10px 18px;font-size:1.45rem;font-weight:900;animation:3.4s forwards dmb-banner;position:fixed;top:16%;left:50%;transform:translate(-50%);box-shadow:0 10px 24px #0000004d}.drop-banner small{font-family:var(--body);font-size:.8rem;font-weight:700;display:block}@keyframes dmb-banner{0%{opacity:0;transform:translate(-50%,-30px)scale(.6)}12%{opacity:1;transform:translate(-50%)scale(1.06)}18%,82%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-10px)scale(.9)}}.gift-tag{z-index:46;transform-origin:50% -24px;pointer-events:none;width:min(78vw,360px);animation:.8s cubic-bezier(.2,1.4,.4,1) both dmb-tagin,2.4s ease-in-out .8s infinite alternate dmb-swing;position:fixed;top:13%;left:50%}.gift-tag:before{content:"";border-left:2px solid #c9a56a;height:24px;position:absolute;top:-24px;left:50%}.gift-tag>div{background:var(--tag-bg,var(--panel));color:var(--tag-ink,var(--ink));clip-path:polygon(12% 0,88% 0,100% 18%,100% 100%,0 100%,0 18%);text-align:center;border-radius:0 0 12px 12px;padding:24px 14px 12px;position:relative;box-shadow:0 12px 26px #0000004d}.gift-tag>div:before{content:"";background:var(--paper);border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;top:7px;left:50%;box-shadow:0 0 0 2px #c9971c}.gift-tag b{font-family:var(--display);color:var(--tag-accent,var(--brand));font-size:1.7rem;font-weight:900;line-height:1;display:block}.gift-tag strong{font-family:var(--display);margin-top:4px;font-size:1.4rem;font-weight:900;display:block}.gift-tag span{opacity:.8;margin-top:4px;font-size:.85rem;font-weight:800;display:block}.gift-tag.tv{transform-origin:50% -30px;width:46%;position:absolute;top:14%}.gift-tag.tv:before{height:30px;top:-30px}.gift-tag.tv>div{padding:5vh 3vw 3vh}.gift-tag.tv>div:before{width:2vh;height:2vh;margin-left:-1vh;top:1.4vh}.gift-tag.tv.side{width:32%;left:81%}.gift-tag.tv b{font-size:7vh}.gift-tag.tv strong{font-size:6vh}.gift-tag.tv span{font-size:2.4vh}@keyframes dmb-tagin{0%{transform:translate(-50%,-120%)rotate(-10deg)}to{transform:translate(-50%)}}@keyframes dmb-swing{0%{transform:translate(-50%)rotate(-3deg)}to{transform:translate(-50%)rotate(3deg)}}.storm{background:var(--storm-tint,#08281673);pointer-events:none;animation:.5s dmb-fadein;position:absolute;inset:0;overflow:hidden}.storm i{width:var(--z);height:var(--z);background:var(--c,#fff);opacity:.9;border-radius:50%;animation:linear infinite dmb-storm;position:absolute;top:-4%}@keyframes dmb-storm{to{transform:translate(-18vw,110vh)}}@keyframes dmb-fadein{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.giftwrap{z-index:60;background:color-mix(in srgb, var(--paper) 82%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;transition:opacity .4s;animation:.4s dmb-fadein;display:grid;position:fixed;inset:0}.giftwrap.going{opacity:0}.screen .giftwrap{background:var(--shade,#08281699);position:absolute}.gift{aspect-ratio:1.15;width:min(52vw,260px);margin-top:8%;position:relative}.screen .gift{width:24vw}.gift .box{background:var(--gift-box,#c8102e);border-radius:6px;animation:.6s ease-in-out .2s 2 dmb-giftshake;position:absolute;inset:20% 0 0;box-shadow:inset 0 -10px #00000026}.gift .box:before,.gift .lid:before{content:"";background:var(--gift-ribbon,#1f8a4c);width:16%;position:absolute;top:0;bottom:0;left:42%}.gift .lid{background:var(--gift-lid,#d6203a);border-radius:5px;height:18%;animation:1s cubic-bezier(.3,1.3,.5,1) 1.5s forwards dmb-lid;position:absolute;top:8%;left:-6%;right:-6%;box-shadow:0 4px #00000026}.gift .bow{width:64%;position:absolute;bottom:70%;left:50%;overflow:visible;transform:translate(-50%)}@keyframes dmb-giftshake{25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes dmb-lid{to{opacity:0;transform:translate(40%,-260%)rotate(38deg)}}.gift .reveal,.round-badge .reveal{text-align:center;white-space:nowrap}.gift .reveal{opacity:0;animation:.9s cubic-bezier(.2,1.5,.4,1) 1.8s forwards dmb-reveal;position:absolute;bottom:60%;left:50%;transform:translate(-50%)scale(.2)}.reveal b{font-family:var(--display);color:var(--brand);text-shadow:0 3px #f2c94c;font-size:3rem;font-weight:900;line-height:1;display:block}.screen .reveal b{color:#fff;text-shadow:0 4px #8e0b1f,0 10px 20px #0006;font-size:12vh}.reveal span{color:#3a2412;background:#f2c94c;border-radius:999px;margin-top:8px;padding:4px 14px;font-size:1rem;font-weight:800;line-height:1.25;display:inline-block}.screen .reveal span{padding:.8vh 2vw;font-size:3vh}@keyframes dmb-reveal{to{opacity:1;transform:translate(-50%)translateY(-30%)scale(1)}}.round-badge{background:var(--panel);border:3px solid var(--brand);border-radius:24px;padding:24px 28px;animation:.8s cubic-bezier(.2,1.5,.4,1) dmb-pop;box-shadow:0 16px 40px #00000040}@keyframes dmb-pop{0%{opacity:0;transform:scale(.3)rotate(-10deg)}to{opacity:1;transform:none}}.play.dealing .bcard .sq{animation:.5s cubic-bezier(.2,1.3,.4,1) both dmb-deal}@keyframes dmb-deal{0%{opacity:0;transform:scale(.4)rotateY(90deg)}}.tv-catch{z-index:5;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.tv-catch .storm{background:#0000004d}.tv-catch .tv-flyer{z-index:1;width:46vw;animation:12s linear infinite dmb-cruise;position:absolute;top:0;left:0}.tv-catch .tv-flyer svg{filter:drop-shadow(0 10px 10px #00000059);width:100%;height:auto;animation:.45s ease-in-out infinite alternate dmb-bob;display:block}@keyframes dmb-cruise{0%{transform:translate(-110%,8vh)rotate(-5deg)}48%{transform:translate(230%,2vh)rotate(-2deg)}50%{transform:translate(240%,58vh)scaleX(-1)}98%{transform:translate(-20%,62vh)scaleX(-1)}to{transform:translate(-110%,60vh)scaleX(-1)}}.tv-catch .tv-banner{z-index:2;background:linear-gradient(180deg, var(--brand), color-mix(in srgb, var(--brand) 75%, #000));color:var(--on-brand);text-align:center;font-family:var(--display);white-space:nowrap;border:5px solid #f2c94c;border-radius:22px;padding:3vh 5vw;font-size:9vh;font-weight:900;line-height:1;animation:1.6s ease-in-out infinite dmb-tvpulse,.8s cubic-bezier(.2,1.5,.4,1) dmb-pop;position:relative;box-shadow:0 16px 40px #00000073}.tv-catch .tv-banner small{font-family:var(--body);margin-top:2vh;font-size:3.2vh;font-weight:800;display:block}.tv-catch .countdown{color:#3a2412;min-width:1.4em;height:1.4em;font-family:var(--body);vertical-align:middle;background:#f2c94c;border-radius:50%;place-items:center;margin-left:.3em;font-size:.8em;display:inline-grid}@keyframes dmb-tvpulse{50%{transform:scale(1.03);box-shadow:0 16px 40px #00000073,0 0 0 8px #f2c94c59,0 0 40px 10px #f2c94c80}}.screen.lit .top{padding-top:10vh}.screen.lit .top .brandmark{z-index:3;background:#00000059;border:.3vh solid #f2c94c;border-radius:99vh;padding:.6vh 2.4vw;position:absolute;top:1.2vh;left:50%;transform:translate(-50%)}.screen.lit .top .brandmark img{height:6vh}.screen.lit .top .brandmark .name{text-transform:none;font-size:1.5em}.screen .side-info{z-index:2;flex-direction:column;align-items:stretch;gap:1vh;width:23vw;display:flex;position:absolute;top:2.4vh;right:2.5vw}.screen.lit .side-info{top:10vh}.screen .join-card{background:#00000052;border-radius:2vh;padding:1.2vh;box-shadow:0 0 0 .3vh #f2c94c}.screen .jc-row{align-items:center;gap:1.2vw;display:flex}.screen .jc-row .qr{border-radius:1.2vh;flex:none;width:16vh;padding:.8vh}.screen .jc-title{font-family:var(--display);font-size:1.7em;font-weight:900;line-height:1.02}.screen .jc-url{overflow-wrap:anywhere;margin-top:1vh;font-size:.85em;font-weight:800}.screen .jc-url b{font-family:var(--display);letter-spacing:.08em}.screen .side-info .pill{justify-content:flex-start}.screen .mid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:3vw;padding-left:3vw;padding-right:28vw}.screen .recent{padding:.6vh}.screen .side-info .pill{background:#00000047;border-radius:99vh;align-items:center;gap:.8vw;padding:.8vh 1.4vw;font-size:1.05em;font-weight:800;display:flex}.screen .side-info .pill.song{color:#f2c94c}.screen .side-info .ticker i{background:#ffffff40}.screen .side-info .ticker i.on{background:#f2c94c}.screen .record,.screen .now-info{width:min(54vh,28vw)}.screen.lit .top{min-height:8vh}.claim-pop{z-index:55;background:#00000061;place-items:center;padding:16px;animation:.3s dmb-fadein;display:grid;position:fixed;inset:0}.claim-pop>div{width:min(88vw,380px);padding-top:26px}.gift-tag.inline{pointer-events:auto;transform-origin:50% -24px;width:100%;animation:.8s cubic-bezier(.2,1.4,.4,1) both dmb-tagin-in,2.6s ease-in-out .8s infinite alternate dmb-swing-in;position:relative;top:auto;left:auto}.gift-tag.inline>div{padding:30px 18px 18px}.gift-tag.inline b{font-size:2rem}.gift-tag.inline span{font-size:1rem}@keyframes dmb-tagin-in{0%{transform:translateY(-60vh)rotate(-10deg)}to{transform:none}}@keyframes dmb-swing-in{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}.tag-x{width:34px;height:34px;color:inherit;cursor:pointer;background:#0000001f;border:0;border-radius:50%;place-items:center;padding:0;font-size:1.4rem;line-height:1;display:grid;position:absolute;top:32px;right:10px}.tag-btn{width:100%;margin-top:14px}.fx-layer{z-index:70}.logo-help{color:var(--muted);background:var(--paper);border-radius:10px;padding:10px 12px;line-height:1.45}.logo-preview{gap:10px;display:flex}.logo-preview .lp{border-radius:10px;flex:1;place-items:center;height:84px;padding:8px;display:grid}.logo-preview .lp.dark{background:#0e4a28}.logo-preview .lp.light{border:1px solid var(--rule);background:#fbf7ef}.logo-preview img{object-fit:contain;max-width:100%;max-height:100%}.linkish{color:var(--brand);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.claim-pop.answered .gift-tag.inline{animation:.6s cubic-bezier(.2,1.4,.4,1) both dmb-tagin-in}.dash-top{grid-template-columns:minmax(0,auto) 1fr auto;align-items:center;gap:12px;display:grid}.dash-title{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-title b{overflow-wrap:anywhere;font-size:1rem;line-height:1.2}.dash-title .chip{align-self:flex-start}.dash-tools{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.dash-tools .btn,.dash-tools button{padding:7px 12px;font-size:.88rem}.dash-actions{background:var(--ink);border-radius:18px;align-items:center;gap:6px;padding:6px;display:flex;box-shadow:0 6px 18px #0000002e}.dash-actions .btn,.dash-actions button{padding:8px 14px;font-size:.9rem}.dash-actions button:not(.primary):not(.danger){color:var(--paper);border-color:color-mix(in srgb, var(--paper) 45%, transparent);background:0 0}.dash-actions .chip{background:var(--paper)}.dash-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}.dash-col{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.dash .panel{gap:10px}.gs-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.gs-head h2{margin:0}.gs-head .pattern-picker{grid-template-columns:repeat(2,66px)}.pp-small{gap:6px}.pp-small .pp{border-width:1.5px;border-radius:10px;gap:4px;padding:6px 3px;font-size:.66rem}.pp-small .pp-grid{grid-template-columns:repeat(5,6px);gap:1.5px}.pp-small .pp-grid i{border-radius:1.5px;width:6px;height:6px}.pattern-picker.pp-row{grid-template-columns:repeat(6,minmax(0,1fr))}.switches-compact .check{padding:2px 0}.switches-compact .check span{font-size:.92rem}.song-timer{background:var(--paper);border:2px solid var(--rule);border-radius:14px;flex-direction:column;flex:none;align-items:center;min-width:92px;padding:8px 12px;display:flex}.song-timer span{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.7rem;font-weight:800}.song-timer b{font-variant-numeric:tabular-nums;font-size:1.9rem;line-height:1}.song-timer.warn{background:#fff4cc;border-color:#f2b705}.song-timer.over{border-color:var(--danger,#c62828);color:#8a1111;background:#ffe1e1}@media (prefers-reduced-motion:no-preference){.song-timer.over{animation:1s ease-in-out infinite timer-pulse}}@keyframes timer-pulse{50%{transform:scale(1.06)}}.song-row{grid-template-columns:34px 30px minmax(0,1fr) auto auto}.skip-x{border:1.5px solid var(--rule);min-width:0;color:var(--muted);opacity:.6;background:0 0;border-radius:8px;padding:2px 8px;font-size:.8rem;line-height:1.2}.skip-x:hover,.skip-x:focus-visible{opacity:1}.skip-x.on{background:var(--danger,#c62828);border-color:var(--danger,#c62828);color:#fff;opacity:1}.song-row.skipping .t{opacity:.6;text-decoration:line-through}.song-row.buried{opacity:.5}.song-row .tag.muted{background:var(--rule);color:var(--ink)}.prize-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip.gold{color:#3a2a00;background:#f2b705}.player-row .pname{font-size:1rem}.winners-row{gap:6px}.cohost-warn{z-index:40;color:#3a2a00;text-align:center;background:#f2b705;padding:8px;font-weight:800;position:sticky;top:0}.switch-list{text-align:left;max-height:50vh;overflow-y:auto}.switch-list .player-row{cursor:pointer}.switch-list .player-row.on{background:var(--brand-soft);border-radius:10px;padding-left:8px;padding-right:8px}.dash .qr{width:104px}.dash .code-big{font-size:2.6rem}.dash .np-art{width:96px;height:96px}.dash .np-label{width:46px;height:46px;font-size:1.6rem}.dash .np-title{font-size:1.4rem}@media (width>=900px) and (width<=1199px){.dash-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dash-mid{grid-column:1/-1}}@media (width>=1200px){.page.console.dash{flex-direction:column;gap:10px;max-width:none;height:100vh;padding:10px 14px;display:flex;overflow:hidden}.dash-grid{flex:1;grid-template-columns:minmax(300px,.9fr) minmax(0,1.45fr) minmax(320px,1fr);align-items:stretch;min-height:0}.dash-col{height:100%}.dash-col>.panel{flex:none}.dash .panel{padding:14px 16px}.dash-scroll{min-height:0;overflow-y:auto;flex:auto!important}.dash-fill{flex-direction:column;min-height:120px;display:flex;flex:auto!important}.dash-fill .dash-list{flex:1;min-height:0;max-height:none;overflow-y:auto}.lobby-list{max-height:24vh;overflow-y:auto}.req-list{max-height:18vh;overflow-y:auto}.dash .finish{gap:6px;padding:10px}.dash .stats .stat{padding:6px 10px}.dash .stat b{font-size:1.15rem}}@media (width<=899px){.dash-top{grid-template-columns:1fr}.dash-tools{justify-content:flex-start}.dash-actions{flex-wrap:wrap;justify-content:flex-start}.dash-grid{flex-direction:column;display:flex}.dash-col{display:contents}.pattern-picker.pp-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.finish-compact{display:none}.stat-inline span{color:var(--muted);font-size:.85rem;font-weight:700}.stat-inline b{font-size:1rem}.stat-inline small{color:var(--muted)}.rm-x{padding:6px 10px}@media (width>=1200px){.dash .finish{flex-flow:wrap}.dash .finish-full{display:none}.dash .finish-compact{flex-wrap:wrap;align-items:center;gap:8px 16px;width:100%;display:flex}.dash .finish-btns button{padding:5px 12px;font-size:.85rem}.gs-head h2{font-size:1.45rem;line-height:1.05}.dash .catchup-ctl button{padding:7px 12px;font-size:.88rem}.dash .catchup-ctl>small{display:none}.dash-tools .btn,.dash-tools button{padding:6px 10px;font-size:.84rem}.dash .player-row .switch-mini{font-size:.85rem}}.card-wrap{display:contents}.remix-banner{text-align:center;background:var(--brand);color:var(--on-brand);border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:10px 14px;display:flex;box-shadow:0 8px 22px #0003}.remix-banner b{font-family:var(--display);letter-spacing:.02em;font-size:1.6rem;line-height:1}.remix-banner span{font-size:1.05rem}.remix-banner small{opacity:.9;font-size:.85rem}.tv-remix{z-index:65;background:#00000059;place-items:center;display:grid;position:fixed;inset:0}.remix-banner.tv{border:.6vh solid var(--free);border-radius:3vh;padding:3vh 5vw}.remix-banner.tv b{font-size:9vh}.remix-banner.tv span{font-size:4.5vh}.remix-banner.tv small{font-size:2.6vh}@media (prefers-reduced-motion:no-preference){.remix-banner{animation:.5s cubic-bezier(.2,1.6,.4,1) both bounce-in}.remixing .sq:not(.free):not(.marked):not(.win){animation:.9s ease-in-out both sq-flip}.remixing .sq:nth-child(odd){animation-delay:80ms}.remixing .sq:nth-child(3n){animation-delay:.16s}}@keyframes sq-flip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}@media (width>=1000px){.gof-wide{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"pl look sw""pat pace sw";align-items:start;gap:16px 28px!important;display:grid!important}.gof-wide .gof-pl{grid-area:pl}.gof-wide .gof-pat{grid-area:pat}.gof-wide .gof-look{grid-area:look}.gof-wide .gof-pace{grid-area:pace}.gof-wide .gof-sw{grid-area:sw}.gof-wide .pattern-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.gof-wide .gof-pace .stack{padding-left:0!important}}.night-templates{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));align-items:stretch;gap:10px;display:grid}.night-tpl{text-align:left;border:2px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px}.night-tpl:hover{border-color:var(--brand)}.night-tpl b{font-family:var(--heading);color:var(--brand);font-size:1.1rem}.night-tpl>span{color:var(--muted);font-size:.85rem;font-weight:600}.tpl-pats{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.tpl-pats i{background:var(--brand-soft);color:var(--ink);border-radius:999px;padding:2px 8px;font-size:.72rem;font-style:normal;font-weight:700}.night-rounds{flex-wrap:wrap;gap:4px;display:flex}.night-rounds .chip{font-size:.78rem}.night-grid{flex-direction:column;gap:6px;display:flex}.night-head,.night-line{grid-template-columns:54px minmax(0,2fr) minmax(0,1.2fr) minmax(0,1.2fr) auto;align-items:center;gap:8px;display:grid}.night-head span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:800}.night-line b{font-family:var(--heading);color:var(--brand);text-align:center;font-size:1.2rem}.night-line .ghost{padding:6px 10px}@media (width<=760px){.night-head{display:none}.night-line{grid-template-columns:34px 1fr}.night-line>select,.night-line>span{grid-column:2}.night-row{flex-direction:column;align-items:flex-start}}.phone-only{display:none}@media (width<=899px){.phone-only{align-self:flex-start;display:inline-flex}}.chat-fab{right:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:45;background:var(--panel);border:2px solid var(--rule);border-radius:50%;width:54px;height:54px;padding:0;font-size:1.5rem;position:fixed;box-shadow:0 6px 18px #0003}.chat-fab b,.msg-btn b{background:var(--danger,#c62828);color:#fff;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.75rem;display:grid;position:absolute;top:-4px;right:-4px}.msg-btn{padding:6px 10px;position:relative}.chat-fab.unread{border-color:var(--brand);animation:.6s ease-in-out 3 nudge}.chat-panel{left:10px;right:10px;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:46;background:var(--panel);max-width:420px;color:var(--ink);border:2px solid var(--rule);border-radius:18px;flex-direction:column;gap:8px;margin-left:auto;padding:12px;display:flex;position:fixed;box-shadow:0 10px 30px #00000040}.chat-list{text-align:left;flex-direction:column;gap:6px;max-height:40vh;display:flex;overflow-y:auto}.chat-list.host{max-height:30vh}.chat-msg{background:var(--brand-soft);border-radius:14px;flex-direction:column;align-self:flex-start;gap:2px;max-width:85%;padding:8px 12px;display:flex}.chat-msg.player{background:var(--brand);color:var(--on-brand);align-self:flex-end}.chat-msg small{opacity:.75;font-size:.72rem}.chat-msg.warn{color:#7a1010;background:#ffe1e1;border:1.5px solid #e57373}.chat-msg.rename{color:#3a2a00;background:#fff4cc;border:1.5px solid #f2b705}.chat-send{gap:6px;display:flex}.chat-send input{flex:1;min-width:0}.chat-warn-text{font-size:1.15rem;font-weight:700}.quick-msgs{flex-wrap:wrap;gap:6px;display:flex}.quick-msgs button{padding:6px 10px;font-size:.82rem}.quick-msgs button.warn{color:#9a1b1b;border-color:#e57373}.room-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding-right:60px;display:flex}.emoji-bar{gap:4px;display:flex}.emoji-bar button{border:1.5px solid var(--rule);background:var(--panel);border-radius:12px;min-width:0;padding:4px 8px;font-size:1.35rem;line-height:1.1}.emoji-bar button:disabled{opacity:.45}.hint-btn{border-radius:999px;padding:6px 12px;font-size:.9rem}.hint-box{color:#3a2a00;background:#fff4cc;border:1.5px solid #f2b705;border-radius:12px;margin:0;padding:6px 12px;font-size:.95rem}.vote-count{font-family:var(--display);color:var(--brand);font-size:3rem;font-weight:900;line-height:1}.vote-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vote-options button{padding:14px 10px;font-size:1.05rem}.vote-results{text-align:left;flex-direction:column;gap:6px;display:flex}.vr{background:var(--paper);border:1.5px solid var(--rule);border-radius:10px;justify-content:space-between;gap:8px;padding:8px 12px;display:flex;position:relative;overflow:hidden}.vr i{background:var(--brand-soft);z-index:0;transition:width .4s;position:absolute;top:0;bottom:0;left:0}.vr span,.vr b{z-index:1;position:relative}.vr.top{border-color:var(--brand)}.vr.top i{background:color-mix(in srgb, var(--brand) 35%, transparent)}.vote-panel{border:2px solid var(--brand)}.react-top{flex-wrap:wrap;gap:4px;display:flex}.react-list{max-height:16vh;overflow-y:auto}.react-e{font-size:1.2rem}.hints-row select{width:auto;margin-left:8px;padding:2px 6px;font-size:.85rem}.tv-emojis{pointer-events:none;z-index:62;position:fixed;inset:0;overflow:hidden}.tv-emoji{flex-direction:column;align-items:center;animation:5.5s ease-out forwards emoji-up;display:flex;position:absolute;bottom:-12vh}.tv-emoji b{filter:drop-shadow(0 .6vh 1vh #00000059);font-size:9vh;line-height:1}.tv-emoji small{color:#fff;background:#0000008c;border-radius:1vh;margin-top:.4vh;padding:.2vh 1vh;font-size:2.2vh;font-weight:800}@keyframes emoji-up{0%{opacity:0;transform:translateY(0)scale(.6)}10%{opacity:1;transform:translateY(-12vh)scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-95vh)scale(1.1)}}.tv-join{z-index:61;flex-direction:column;align-items:flex-start;gap:1vh;display:flex;position:fixed;bottom:3vh;left:2vw}.tv-join-item{background:var(--brand);color:var(--on-brand);border-radius:99vh;padding:1vh 2.4vh;font-size:3.4vh;animation:.6s cubic-bezier(.2,1.6,.4,1) both join-in;box-shadow:0 .8vh 2vh #0000004d}@keyframes join-in{0%{opacity:0;transform:translate(-30vw)}to{opacity:1;transform:none}}.tv-vote{z-index:64;background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.tv-vote-box{background:var(--panel);color:var(--ink);border:.6vh solid var(--brand);border-radius:3vh;flex-direction:column;align-items:center;gap:2vh;min-width:50vw;padding:4vh 5vw;display:flex}.tv-vote-box>b{font-family:var(--heading);text-align:center;font-size:6vh}.tv-vote-opts{flex-wrap:wrap;justify-content:center;gap:1.5vh;display:flex}.tv-vote-opts span{background:var(--brand-soft);border-radius:2vh;padding:1.2vh 3vh;font-size:4vh;font-weight:800}.tv-vote-box .vote-count{font-size:12vh}.tv-vote-box small{color:var(--muted);font-size:2.6vh}.tv-vote-box .vote-results{min-width:40vw}.tv-vote-box .vr{padding:1.2vh 2vh;font-size:3.2vh}.play.a11y-big .sq .fit>span:first-child{font-size:1.18em}.play.a11y-big .catchup{font-size:1.08em}.play.a11y-contrast .sq{color:#000!important;background:#fff!important;border:2px solid #000!important}.play.a11y-contrast .sq *{color:#000!important;text-shadow:none!important}.play.a11y-contrast .sq.marked,.play.a11y-contrast .sq.win{color:#fff!important;background:#000!important}.play.a11y-contrast .sq.marked *,.play.a11y-contrast .sq.win *{color:#fff!important}.play.a11y-contrast .sq.missed{background:#ffd400!important}.storm.confetti i{height:calc(var(--z) * .45);opacity:.95;border-radius:2px;animation-name:dmb-confetti}@keyframes dmb-confetti{0%{transform:translate(0, 0) rotate(var(--r))}to{transform:translate(-18vw, 110vh) rotate(calc(var(--r) + 720deg))}}.bunting .flag{animation:2.6s ease-in-out infinite alternate dmb-flutter;animation-delay:var(--d)}@keyframes dmb-flutter{0%{transform:rotate(-4deg)skew(-3deg)}to{transform:rotate(4deg)skew(3deg)}}.calm .bunting .flag{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.bunting .flag{animation:none}}.fx-flyer.grow{width:min(62vw,300px)}.fx-flyer.grow svg{animation:none}.fx-flyer.grow.shake svg{animation:.12s linear 8 dmb-shakeit}.tv-catch .tv-flyer.grow{width:20vw;animation:1.4s ease-in-out infinite alternate dmb-tvbottle;top:2vh;left:50%}.tv-catch .tv-flyer.grow svg{animation:.18s linear infinite dmb-shakeit}@keyframes dmb-tvbottle{0%{transform:translate(-50%)rotate(-6deg)scale(.96)}to{transform:translate(-50%)rotate(6deg)scale(1.04)}}.bcard.g3,.bcard.g4{grid-template-rows:none}.bcard.g3{gap:8px}.bcard.numbers .sq .num{font-family:var(--display);font-weight:900;font-size:calc(var(--sqfs) * 2.1);letter-spacing:-.02em;line-height:1}.pp.custom .pp-name:after{content:" ★";color:var(--brand)}.my-score{background:var(--panel);color:var(--ink);border-radius:999px;justify-content:center;align-self:center;gap:12px;padding:4px 10px;font-size:.92rem;display:flex;box-shadow:0 1px 3px #0000001f}.my-score b{color:var(--brand);font-size:1.05rem}.o-scores .score-list{flex-direction:column;gap:4px;max-height:26vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.o-scores .score-list li{border-radius:8px;grid-template-columns:26px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:4px 6px;display:grid}.o-scores .score-list li:first-child{background:var(--brand-soft)}.o-scores .rk{color:var(--muted);text-align:center;font-weight:800}.o-scores .pts{font-variant-numeric:tabular-nums;color:var(--brand);font-weight:900}.screen .tv-scores{background:#00000052;border-radius:2vh;flex-direction:column;gap:.6vh;padding:1.2vh 1.2vw;display:flex}.screen .tv-scores-head{font-family:var(--heading);color:#f2c94c;font-size:1.05em}.screen .tv-scores ol{flex-direction:column;gap:.4vh;margin:0;padding:0;list-style:none;display:flex}.screen .tv-scores li{grid-template-columns:1.6em minmax(0,1fr) auto;align-items:center;gap:.6vw;font-weight:700;display:grid}.screen .tv-scores .rk{opacity:.7;text-align:center}.screen .tv-scores .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.screen .tv-scores .pts{font-variant-numeric:tabular-nums;font-weight:900}.screen .tv-ff{opacity:.95;font-size:.85em}.screen .pre .tv-scores{text-align:left;min-width:34vw;font-size:1.3em}.screen .record .label.num{flex-direction:column;justify-content:center;align-items:center;line-height:.9;display:flex}.screen .record .label.num small{opacity:.85;font-size:.38em}.quiz-wait,.quiz-play{background:var(--panel);color:var(--ink);border-radius:18px;flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px;display:flex;box-shadow:0 2px 10px #0000001f}.quiz-wait{text-align:center;justify-content:center}.quiz-wait b{font-family:var(--heading);color:var(--brand);font-size:1.6rem}.quiz-q{text-align:center;flex-direction:column;gap:2px;display:flex}.quiz-q b{font-family:var(--heading);font-size:1.5rem}.quiz-opts{flex:1;align-content:center;gap:10px;display:grid}.quiz-opt{text-align:left;border:2px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:14px;align-items:center;gap:12px;min-height:64px;padding:14px;font-size:1.1rem;font-weight:700;display:flex}.quiz-opt .ql{background:var(--brand);width:34px;height:34px;color:var(--on-brand);font-family:var(--display);border-radius:50%;flex:none;place-items:center;display:grid}.quiz-opt .qt{overflow-wrap:anywhere;min-width:0}.quiz-opt.picked{border-color:var(--brand);background:var(--brand-soft)}.quiz-opt.right{border-color:var(--ok);background:var(--ok-soft)}.quiz-opt.right .ql{background:var(--ok)}.quiz-opt.wrong{background:#fbe3e0;border-color:#c0392b}.quiz-opt.wrong .ql{background:#c0392b}.quiz-opt.dim{opacity:.45}.quiz-opt:disabled{cursor:default}.quiz-note{text-align:center;margin:0;font-weight:700}.quiz-host{background:var(--brand-soft);border-radius:12px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.quiz-host-opts{flex-wrap:wrap;gap:6px;display:flex}.screen .quiz-mid{justify-content:center}.screen .tv-quiz{flex-direction:column;align-items:flex-start;gap:2.4vh;width:64vw;max-width:100%;display:flex}.screen .tv-quiz-q{font-family:var(--heading);font-size:8vh;line-height:1.05}.screen .tv-quiz-opts{grid-template-columns:1fr 1fr;gap:2vh 2vw;width:100%;display:grid}.screen .tv-quiz-opt{background:#0000004d;border-radius:2.4vh;align-items:center;gap:1.4vw;padding:2vh 1.6vw;font-size:3.6vh;font-weight:800;transition:opacity .4s,background .4s,transform .4s;display:flex}.screen .tv-quiz-opt i{color:#2a1e17;width:6vh;height:6vh;font-style:normal;font-family:var(--display);background:#f2c94c;border-radius:50%;flex:none;place-items:center;display:grid}.screen .tv-quiz-opt.right{background:#1e7f55;transform:scale(1.04)}.screen .tv-quiz-opt.dim{opacity:.35}.screen .tv-quiz-right{opacity:.9;font-size:3vh;font-weight:700}.pattern-maker .pm-body{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.pm-grid{aspect-ratio:1;grid-auto-rows:1fr;gap:6px;width:min(300px,80vw);display:grid}.pm-cell{border:2px solid var(--rule);background:var(--panel);color:var(--muted);border-radius:10px;padding:0;font-size:.7rem;font-weight:800}.pm-cell.on{background:var(--brand);border-color:var(--brand)}.pm-cell.free{background:var(--free);color:var(--free-ink);border-color:var(--free)}.pm-saved{flex-direction:column;gap:8px;display:flex}.pm-saved-row{grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.pm-saved-row .pp-grid{justify-self:center}.autopilot-row select{margin-left:8px}.venue-form .grid-2,.tipreview .grid-2{gap:12px}.slide-row{border:1.5px solid var(--rule);border-radius:12px;align-items:flex-start;gap:12px;padding:10px;display:flex}.slide-thumb{aspect-ratio:16/10;background:var(--brand-soft);width:96px;color:var(--brand);border-radius:8px;flex:none;place-items:center;font-weight:800;display:grid;overflow:hidden}.slide-thumb img{object-fit:cover;width:100%;height:100%}.small-btn{cursor:pointer;padding:6px 12px;font-size:.9rem}.facts-paste{text-align:left}.facts-paste textarea{width:100%;min-height:90px;margin-block:8px}.facts-list{text-align:left;flex-direction:column;gap:6px;max-height:52vh;display:flex;overflow:auto}.fact-row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,13em) minmax(0,1fr) auto;align-items:center;gap:10px;padding:4px 0;display:grid}.fact-song{flex-direction:column;min-width:0;display:flex}.fact-song b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=640px){.fact-row{grid-template-columns:1fr}}.screen .tv-slide{z-index:58;background:#0000008c;place-items:center;animation:.5s both dmb-fadein;display:grid;position:fixed;inset:0}.screen .tv-slide-box{background:var(--panel);width:min(78vw,140vh);color:var(--ink);border:.6vh solid var(--brand);border-radius:3vh;grid-template-columns:1fr;display:grid;overflow:hidden;box-shadow:0 3vh 8vh #0006}.screen .tv-slide.has-pic .tv-slide-box{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.screen .tv-slide-box img{object-fit:cover;width:100%;height:100%;max-height:62vh;display:block}.screen .tv-slide-words{flex-direction:column;justify-content:center;gap:2vh;padding:5vh 4vw;display:flex}.screen .tv-slide-words b{font-family:var(--heading);color:var(--brand);text-wrap:balance;font-size:7vh;line-height:1.05}.screen .tv-slide-words span:not(.eyebrow){font-size:3.6vh;font-weight:700}.screen .tv-slide-words .eyebrow{letter-spacing:.12em;font-size:2.4vh}.screen .tv-fact{background:#00000047;border-radius:2vh;flex-direction:column;gap:.6vh;margin-bottom:2.4vh;padding:1.6vh 1.6vw;animation:.6s 1.5s both dmb-fadein;display:flex}.screen .tv-fact b{color:#f2c94c;font-family:var(--heading);font-size:1.1em}.screen .tv-fact span{font-size:.95em;line-height:1.3}.screen .tv-virtual{z-index:30;color:#fff;white-space:nowrap;background:#0000008c;border-radius:99vh;align-items:baseline;gap:1vw;padding:1vh 2vw;font-size:2.4vh;display:flex;position:fixed;bottom:2vh;left:50%;transform:translate(-50%)}.screen .tv-virtual b{color:#f2c94c;font-size:1.15em}.screen .tv-preflight{z-index:70;color:#fff;background:#111;border:.5vh solid #35d07f;border-radius:2vh;flex-direction:column;align-items:center;gap:.5vh;padding:2vh 2.5vw;display:flex;position:fixed;inset:auto 2vw 12vh auto}.screen .tv-preflight b{font-size:14vh;line-height:1;font-family:var(--display);color:#35d07f}.end-buttons{background:var(--panel);color:var(--ink);border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:14px;display:flex}.end-buttons .end-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.end-buttons.compact{background:0 0;padding:0}.preflight{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.preflight li{border:1.5px solid var(--rule);border-radius:14px;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:12px;display:grid}.preflight li>div{flex-direction:column;gap:6px;min-width:0;display:flex}.pf-mark{background:var(--rule);width:32px;height:32px;color:var(--muted);border-radius:50%;place-items:center;font-weight:900;display:grid}.pf-mark.ok{background:var(--ok);color:#fff}.pf-mark.bad{color:#fff;background:#c0392b}.pf-code{color:var(--brand);font-size:1.3em}.pf-fix{background:var(--warn-soft);color:var(--ink);border-radius:10px;padding:8px 10px;font-size:.9rem}.pf-qr{width:150px}.print-page{color:#111;background:#fff;flex-direction:column;gap:16px;min-height:100vh;padding:16px;display:flex}.print-bar{background:var(--panel);border:1.5px solid var(--rule);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;display:flex}.print-bar.stack{flex-direction:column;align-items:stretch}.print-cards{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px;display:grid}.paper-card{break-inside:avoid;background:#fff;border:2px solid #222;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.paper-card header{grid-template-columns:minmax(0,1fr) auto 64px;align-items:center;gap:8px;display:grid}.pc-title{flex-direction:column;min-width:0;display:flex}.pc-title b{font-family:var(--heading);color:var(--brand);font-size:1.2rem}.pc-title span{color:#555;font-size:.72rem}.pc-num{font-family:var(--display);font-size:1.6rem;font-weight:900}.pc-qr svg{width:64px;height:64px;display:block}.pc-grid{gap:3px;display:grid}.pc-hdr{text-align:center;font-family:var(--display);color:var(--brand);font-size:1.3rem;font-weight:900}.pc-sq{aspect-ratio:1;text-align:center;border:1.5px solid #444;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;padding:3px;font-size:.62rem;line-height:1.1;display:flex;overflow:hidden}.pc-sq b{font-weight:700}.pc-sq span{color:#555;font-size:.85em}.pc-sq.num b{font-size:1.8rem;font-family:var(--display)}.pc-sq.free{background:#eee;font-size:.8rem;font-weight:900}.paper-card.g3 .pc-sq,.paper-card.g4 .pc-sq{font-size:.8rem}.call-sheet{break-after:page}.call-sheet ol{columns:2;column-gap:24px;padding-left:2.2em;font-size:.85rem}.call-sheet li{break-inside:avoid;padding:2px 0}.call-sheet .tick{vertical-align:-1px;border:1.5px solid #333;border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.call-sheet .c{width:1.2em;color:var(--brand);font-weight:800;display:inline-block}.check-page .check-verdict{border-radius:14px;flex-direction:column;gap:2px;padding:14px;display:flex}.check-verdict b{font-family:var(--heading);font-size:2rem}.check-verdict.ok{background:var(--ok-soft);color:var(--ok)}.check-verdict.no{background:var(--warn-soft);color:var(--warn)}.check-grid .pc-sq{background:var(--panel);color:var(--ink);border-color:var(--rule)}.check-grid .pc-sq.on{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.promo-sheet{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.poster{width:100%}.poster-inner{aspect-ratio:210/297;background:linear-gradient(160deg, var(--p1), var(--p2));color:#fff;text-align:center;box-sizing:border-box;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2.2%;width:min(100%,620px);padding:6%;display:flex;overflow:hidden}.poster-logo{object-fit:contain;max-width:46%;max-height:14%}.poster-brand,.poster-venue{letter-spacing:.1em;text-transform:uppercase;font-size:clamp(14px,3vw,20px);font-weight:800}.poster-head{font-family:var(--display);text-wrap:balance;margin:0;font-size:clamp(40px,11vw,84px);line-height:.95}.poster-when{font-size:clamp(18px,4vw,30px);font-weight:800}.poster-extra{font-size:clamp(13px,2.6vw,18px)}.poster-qr{background:#fff;border-radius:12px;width:38%;padding:3%}.poster-qr svg,.tc-qr svg{width:100%;height:auto;display:block}.poster-scan{font-size:clamp(13px,2.6vw,18px)}.poster-how{opacity:.9;max-width:80%;font-size:clamp(11px,2.2vw,15px)}.table-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;width:100%;display:grid}.table-card{text-align:center;break-inside:avoid;border:2px dashed #999;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:14px;display:flex}.table-card>b{font-family:var(--display);color:var(--p1);font-size:1.6rem}.tc-qr{width:70%}.social-tile{aspect-ratio:1;border-radius:12px;width:min(100%,540px)}@media print{.no-print,.print-bar{display:none!important}.print-page{padding:0}.print-cards{grid-template-columns:1fr 1fr;gap:8mm}.paper-card{page-break-inside:avoid}.poster-inner{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:0;width:100%}.promo-sheet.tile{display:none}body{background:#fff!important}}.find-bar{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.find-bar .field:first-child{flex:1;min-width:220px}.find-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.find-card{flex-direction:column;gap:10px;display:flex}.find-card h2{margin:0}.find-when{flex-wrap:wrap;align-items:center;gap:8px;font-size:1.05rem;display:flex}.find-when b{color:var(--brand)}.pay-entry{background:var(--panel);color:var(--ink);border:2px solid var(--brand);border-radius:16px;flex-direction:column;align-items:stretch;gap:10px;padding:16px;display:flex}.pay-entry>b{font-family:var(--heading);text-align:center;font-size:1.4rem}.pay-entry.ok{border-color:var(--ok)}.pay-entry.claimed{border-color:var(--warn)}.terms section{flex-direction:column;gap:8px;display:flex}.terms h2{margin:0}.music-strip{border:2px solid var(--rule);background:var(--paper);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding:6px 10px;font-size:.9rem;display:flex}.music-strip .ms-text{flex:220px;min-width:0;line-height:1.3}.music-strip .ms-text small{color:var(--muted)}.music-strip .ms-btns{flex-wrap:wrap;gap:6px;display:flex}.music-strip .ms-btns button{padding:4px 10px;font-size:.82rem}.music-strip.ok{border-color:var(--ok)}.music-strip.gold{border-color:var(--warn);background:var(--warn-soft)}.music-strip.bad{color:#7a1f16;background:#fdecea;border-color:#c0392b}.sp-guide ol{gap:6px;margin:8px 0 0;padding-left:22px;display:grid}.sp-uri{background:var(--paper);border:1px solid var(--rule);word-break:break-all;border-radius:8px;padding:4px 8px;font-size:.85rem}.sp-lists{max-height:55vh;overflow-y:auto}.dj-panel{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.dj-tabs{flex-wrap:wrap;gap:6px}.dj-tabs button{padding:4px 10px;font-size:.85rem}.dj-tabs button.on{background:var(--brand);border-color:var(--brand);color:var(--on-brand,#fff)}.dj-search{width:100%}.dj-list{flex:1;min-height:0;overflow-y:auto}.dj-panel.compact .dj-list{max-height:52vh}.dj-row .dj-play{flex:none;padding:4px 10px;font-size:.82rem}.song-row .tag.gold{background:var(--warn);color:#fff}.tr-dj{text-align:center;flex:1;align-self:center}.screen.venue-bg{background-position:50%;background-size:cover}.venue-logo-prev{background:var(--paper);border-radius:6px;width:auto;height:40px}.venue-bg-prev{object-fit:cover;border-radius:6px;width:72px;height:40px}.night-summary{background:var(--ok-soft);border:2px solid var(--ok);border-radius:12px;margin-top:8px;padding:8px 12px}.today-panel{border:2px solid var(--brand)}
