.lg-overlay{z-index:70;background:var(--ls-bg);color:var(--ls-ink);--lg-accent:var(--ls-red);--lg-accent-soft:var(--ls-red-soft);flex-direction:column;min-height:0;display:flex;position:fixed;inset:0;overflow:hidden}.lg-overlay.is-embedded{z-index:auto;min-height:640px;box-shadow:var(--ls-shadow);border-radius:22px;position:relative;inset:auto}.lg-bg{pointer-events:none;opacity:.55;background:radial-gradient(1200px 400px at 110% -10%, color-mix(in srgb, var(--lg-accent) 10%, transparent), transparent 60%), radial-gradient(900px 380px at -10% 110%, color-mix(in srgb, var(--ls-gold) 12%, transparent), transparent 60%);position:absolute;inset:0}.lg-top{z-index:2;border-bottom:1px solid var(--ls-line);background:color-mix(in srgb, var(--ls-card) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-sizing:border-box;align-items:center;gap:10px;min-height:60px;padding:12px clamp(12px,3vw,24px);display:flex;position:relative}.lg-top-title{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.lg-badge{background:var(--lg-accent);color:#fff;border-radius:12px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.lg-top-name{font-family:var(--font-manrope), sans-serif;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:700;line-height:20px;overflow:hidden}.lg-top-sub{color:var(--ls-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:16px;overflow:hidden}.lg-icon-btn{border:1px solid var(--ls-line);background:var(--ls-card);width:40px;height:40px;color:var(--ls-ink);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.lg-icon-btn:hover{background:var(--ls-soft)}.lg-body{z-index:1;min-height:0;padding:clamp(14px, 3vw, 28px) clamp(14px, 3vw, 28px) calc(28px + env(safe-area-inset-bottom));box-sizing:border-box;flex:1;position:relative;overflow:auto}.lg-wrap{max-width:1040px;margin:0 auto}.lg-narrow{max-width:620px;margin:0 auto}.lg-h1{font-family:var(--font-manrope), sans-serif;letter-spacing:-.01em;margin:0;font-size:clamp(20px,3.2vw,26px);font-weight:700;line-height:1.2}.lg-lead{color:var(--ls-muted);margin:6px 0 0;font-size:14px;line-height:20px}.lg-shelf{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:14px;margin-top:18px;display:grid}.lg-game-card{text-align:left;border:1px solid var(--ls-line);background:var(--ls-card);cursor:pointer;font:inherit;color:inherit;border-bottom-width:4px;border-radius:20px;gap:10px;padding:18px 18px 16px;transition:transform .12s,box-shadow .12s;display:grid;position:relative;overflow:hidden}.lg-game-card:hover{box-shadow:var(--ls-shadow-lg);transform:translateY(-2px)}.lg-game-card:active{transform:translateY(1px)}.lg-game-card .lg-gc-zh{color:var(--gc-accent);letter-spacing:.02em;font-size:30px;font-weight:700;line-height:36px}.lg-game-card .lg-gc-name{font-family:var(--font-manrope), sans-serif;font-size:16px;font-weight:700}.lg-game-card .lg-gc-blurb{color:var(--ls-muted);font-size:13px;line-height:19px}.lg-game-card .lg-gc-tags{flex-wrap:wrap;gap:6px;display:flex}.lg-game-card .lg-gc-art{opacity:.07;color:var(--gc-accent);pointer-events:none;font-size:92px;line-height:1;position:absolute;top:-10px;right:-8px}.lg-setup{gap:18px;display:grid}.lg-field{gap:8px;display:grid}.lg-field-label{font-size:13px;font-weight:600}.lg-seg{flex-wrap:wrap;gap:8px;display:flex}.lg-seg button{border:1px solid var(--ls-line);background:var(--ls-card);height:40px;color:var(--ls-ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.lg-seg button.is-on{background:var(--ls-red-soft);border-color:var(--ls-red-line);color:var(--ls-red);font-weight:600}.lg-seg button:disabled{opacity:.45;cursor:default}.lg-choice{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px;display:grid}.lg-choice button{text-align:left;border:1px solid var(--ls-line);background:var(--ls-card);font:inherit;color:inherit;cursor:pointer;border-radius:16px;gap:4px;padding:12px 14px;display:grid}.lg-choice button.is-on{border-color:var(--ls-red-line);background:var(--ls-red-soft);box-shadow:inset 0 0 0 1px var(--ls-red-line)}.lg-choice b{align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.lg-choice span{color:var(--ls-muted);font-size:12px;line-height:17px}.lg-select{border:1px solid var(--ls-line);background:var(--ls-card);height:44px;color:var(--ls-ink);font:inherit;border-radius:12px;width:100%;padding:0 12px}.lg-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.lg-error{background:var(--ls-amber-soft);color:var(--ls-amber);border-radius:12px;padding:10px 14px;font-size:14px}.lg-lobby-hero{text-align:center;padding:10px 0 6px}.lg-lobby-zh{color:var(--lg-accent);font-size:clamp(44px,9vw,72px);font-weight:700;line-height:1.1}.lg-players{flex-wrap:wrap;justify-content:center;gap:10px;margin:18px 0;display:flex}.lg-player{background:var(--ls-card);border:1px solid var(--ls-line);height:44px;box-shadow:var(--ls-shadow);border-radius:999px;align-items:center;gap:8px;padding:0 14px 0 6px;font-size:14px;font-weight:600;display:inline-flex}.lg-player .lg-dot{color:#fff;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:inline-flex}.lg-player.is-ready{border-color:var(--ls-green)}.lg-player .lg-ready{color:var(--ls-green);font-size:18px}.lg-howto{background:var(--ls-card);border:1px solid var(--ls-line);color:var(--ls-muted);border-radius:16px;align-items:flex-start;gap:10px;padding:14px 16px;font-size:14px;line-height:21px;display:flex}.lg-wait-pulse{background:var(--lg-accent,var(--ls-red));border-radius:999px;flex:none;width:10px;height:10px;animation:1.4s ease-in-out infinite lg-pulse;display:inline-block}@keyframes lg-pulse{0%,to{opacity:.5;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}.lg-countdown{z-index:5;background:color-mix(in srgb, var(--ls-bg) 86%, transparent);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lg-countdown span{font-family:var(--font-manrope), sans-serif;color:var(--lg-accent);font-size:120px;font-weight:800}.lg-tile{border:2px solid var(--ls-line);background:var(--ls-card);color:var(--ls-ink);cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-bottom-width:6px;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;padding:8px;transition:transform 80ms,border-color .15s,background .15s;display:flex;position:relative}.lg-tile:active:not(:disabled){border-bottom-width:3px;margin-top:3px;transform:translateY(3px)}.lg-tile:disabled{cursor:default}.lg-tile .lg-tile-zh{font-size:clamp(26px,6.4vw,44px);font-weight:600;line-height:1.15}.lg-tile .lg-tile-sub{color:var(--ls-muted);font-size:12px}.lg-tile.is-right{background:var(--ls-green-soft);border-color:var(--ls-green);color:var(--ls-green)}.lg-tile.is-wrong{background:var(--ls-red-soft);border-color:var(--ls-red);color:var(--ls-red);animation:.32s lg-shake}.lg-tile.is-dim{opacity:.45}.lg-tile.is-marked{background:var(--lg-accent);border-color:color-mix(in srgb, var(--lg-accent) 70%, #000);color:#fff}.lg-tile.is-marked .lg-tile-sub{color:#fffc}@keyframes lg-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.lg-play{gap:16px;display:grid}.lg-hud{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lg-progress{background:var(--ls-soft);border-radius:999px;flex:1;min-width:120px;height:10px;overflow:hidden}.lg-progress>i{background:var(--lg-accent);border-radius:999px;height:100%;transition:width .3s;display:block}.lg-score{font-family:var(--font-manrope), sans-serif;background:var(--ls-gold-soft);height:34px;color:var(--ls-amber);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:15px;font-weight:700;display:inline-flex}.lg-timer{background:var(--ls-soft);border-radius:999px;height:6px;overflow:hidden}.lg-timer>i{background:var(--lg-accent);transform-origin:0;height:100%;display:block}.lg-prompt{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:6px 0;display:flex}.lg-play-btn{background:var(--lg-accent);color:#fff;cursor:pointer;width:84px;height:84px;box-shadow:0 6px 0 color-mix(in srgb, var(--lg-accent) 60%, #000);border:0;border-radius:999px;justify-content:center;align-items:center;transition:transform 80ms;display:inline-flex}.lg-play-btn:active{box-shadow:0 2px 0 color-mix(in srgb, var(--lg-accent) 60%, #000);transform:translateY(4px)}.lg-play-btn .material-symbols-outlined{font-size:40px}.lg-clue{font-size:22px;font-weight:600;line-height:28px}.lg-clue-sub{color:var(--ls-muted);font-size:14px}.lg-grid{gap:clamp(8px,1.6vw,14px);display:grid}.lg-grid.cols-2{grid-template-columns:repeat(2,1fr)}.lg-grid.cols-3{grid-template-columns:repeat(3,1fr)}.lg-grid.cols-4{grid-template-columns:repeat(4,1fr)}.lg-grid .lg-tile{aspect-ratio:1.15}.lg-grid.is-wide .lg-tile{aspect-ratio:auto;min-height:88px}.lg-swat .lg-tile:nth-child(3n+1){rotate:-1.6deg}.lg-swat .lg-tile:nth-child(3n+2){rotate:1.2deg}.lg-swat .lg-tile:nth-child(4n){rotate:-.6deg}.lg-swat-hit{pointer-events:none;justify-content:center;align-items:center;font-size:54px;display:flex;position:absolute;inset:-6px}.lg-tones{grid-template-columns:repeat(4,1fr);gap:clamp(8px,1.6vw,14px);display:grid}.lg-tones .lg-tile{aspect-ratio:.95}.lg-tone-svg{width:64%;max-width:86px;height:auto}.lg-tone-num{font-family:var(--font-manrope), sans-serif;font-size:22px;font-weight:800}@media (max-width:520px){.lg-tones{grid-template-columns:repeat(2,1fr)}.lg-tones .lg-tile{aspect-ratio:1.5}}.lg-word-big{letter-spacing:.04em;font-size:clamp(48px,12vw,84px);font-weight:600;line-height:1.1}.lg-word-big .is-target{color:var(--lg-accent);text-underline-offset:10px;text-decoration:underline;text-decoration-thickness:4px}.lg-reveal{grid-template-columns:minmax(0,1fr);justify-items:center;gap:16px;display:grid}.lg-reveal-box{aspect-ratio:1;background:var(--ls-card);border:2px solid var(--ls-line);width:min(64vw,280px);box-shadow:var(--ls-shadow);border-radius:22px;position:relative}.lg-reveal-box svg{width:100%;height:100%;display:block}.lg-reveal-pips{gap:6px;display:flex}.lg-reveal-pips i{background:var(--ls-soft);border-radius:999px;width:22px;height:8px}.lg-reveal-pips i.is-on{background:var(--lg-accent)}@media (min-width:900px){.lg-reveal{grid-template-columns:auto minmax(0,1fr);place-items:center stretch}}.lg-build-slots{justify-content:center;align-items:center;gap:10px;display:flex}.lg-build-slots.is-stack{flex-direction:column}.lg-slot{border:2px dashed var(--ls-line);background:var(--ls-card);cursor:pointer;width:clamp(88px,22vw,120px);height:clamp(88px,22vw,120px);color:var(--ls-ink);border-radius:18px;justify-content:center;align-items:center;font-family:inherit;font-size:clamp(40px,10vw,60px);display:flex}.lg-slot.is-filled{border-style:solid;border-color:var(--lg-accent)}.lg-build-eq{color:var(--ls-faint);font-size:28px}.lg-bingo{gap:16px;display:grid}@media (min-width:900px){.lg-bingo.has-side{grid-template-columns:minmax(0,1fr) 320px;align-items:start}}.lg-card{background:var(--ls-card);border:1px solid var(--ls-line);box-shadow:var(--ls-shadow);box-sizing:border-box;border-radius:24px;gap:clamp(6px,1.4vw,10px);width:100%;max-width:620px;margin:0 auto;padding:clamp(10px,2vw,16px);display:grid}.lg-card .lg-tile{aspect-ratio:1;border-radius:14px;padding:4px}.lg-card .lg-tile .lg-tile-zh{font-size:clamp(20px,5.4vw,36px)}.lg-card.size-3 .lg-tile .lg-tile-zh{font-size:clamp(26px,7vw,44px)}.lg-card .lg-tile.in-line{box-shadow:0 0 0 3px var(--ls-gold) inset}.lg-call{background:var(--ls-card);border:1px solid var(--ls-line);box-shadow:var(--ls-shadow);border-radius:20px;align-items:center;gap:14px;padding:14px 16px;display:flex}.lg-call-n{font-family:var(--font-manrope), sans-serif;color:var(--ls-muted);white-space:nowrap;font-size:13px;font-weight:800}.lg-call-main{flex:1;min-width:0}.lg-call-big{font-size:26px;font-weight:600;line-height:32px}.lg-called{flex-wrap:wrap;gap:6px;display:flex}.lg-called span{background:var(--ls-soft);border-radius:999px;padding:4px 10px;font-size:15px}.lg-called span.is-new{background:var(--lg-accent-soft);color:var(--lg-accent);font-weight:600}.lg-bingo-banner{text-align:center;font-family:var(--font-manrope), sans-serif;color:var(--lg-accent);letter-spacing:.04em;font-size:30px;font-weight:800}.lg-panel{background:var(--ls-card);border:1px solid var(--ls-line);box-shadow:var(--ls-shadow);border-radius:20px;padding:14px 16px}.lg-panel h3{color:var(--ls-muted);text-transform:none;margin:0 0 10px;font-size:13px;font-weight:600}.lg-lanes{gap:10px;display:grid}.lg-lane{grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.lg-lane-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.lg-lane-bar{background:var(--ls-soft);border-radius:999px;height:8px;margin-top:4px;overflow:hidden}.lg-lane-bar i{border-radius:999px;height:100%;transition:width .4s;display:block}.lg-lane-val{color:var(--ls-muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.lg-av{color:#fff;background:var(--ls-soft);border-radius:999px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.lg-av img{object-fit:cover;width:100%;height:100%}.lg-mem{grid-template-columns:repeat(4,1fr);gap:clamp(6px,1.4vw,12px);width:100%;max-width:720px;margin:0 auto;display:grid}@media (min-width:900px){.lg-mem.n-16,.lg-mem.n-12{grid-template-columns:repeat(4,1fr)}}.lg-mcard{perspective:800px;aspect-ratio:.82;cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;padding:0}.lg-mcard:disabled{cursor:default}.lg-mcard-in{width:100%;height:100%;transform-style:preserve-3d;transition:transform .38s cubic-bezier(.2,.8,.2,1);position:relative}.lg-mcard.is-up .lg-mcard-in{transform:rotateY(180deg)}.lg-mface{backface-visibility:hidden;box-sizing:border-box;text-align:center;border:2px solid var(--ls-line);border-bottom-width:5px;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;inset:0}.lg-mface.back{background:var(--lg-accent);border-color:color-mix(in srgb, var(--lg-accent) 70%, #000);color:#ffffffe6;font-size:clamp(22px,5vw,34px)}.lg-mface.back:after{content:"";border:1.5px dashed #ffffff59;border-radius:9px;position:absolute;inset:7px}.lg-mface.front{background:var(--ls-card);transform:rotateY(180deg)}.lg-mface.front .zh{font-size:clamp(22px,5.4vw,38px);font-weight:600;line-height:1.15}.lg-mface.front .tx{word-break:break-word;font-size:clamp(13px,2.6vw,19px);font-weight:600;line-height:1.25}.lg-mcard.is-matched .lg-mface.front{background:var(--ls-green-soft);border-color:var(--ls-green)}.lg-mcard.is-miss .lg-mface.front{background:var(--ls-red-soft);border-color:var(--ls-red)}.lg-turn{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.lg-turn-chip{border:1px solid var(--ls-line);background:var(--ls-card);border-radius:999px;align-items:center;gap:8px;height:40px;padding:0 12px 0 5px;font-size:14px;font-weight:600;display:inline-flex}.lg-turn-chip.is-turn{border-color:var(--lg-accent);box-shadow:0 0 0 3px var(--lg-accent-soft)}.lg-turn-chip b{font-family:var(--font-manrope), sans-serif;color:var(--lg-accent)}.lg-feedback{text-align:center;min-height:26px;font-size:15px;font-weight:600}.lg-feedback.is-right{color:var(--ls-green)}.lg-feedback.is-wrong{color:var(--ls-red)}.lg-podium{justify-content:center;align-items:flex-end;gap:clamp(8px,2vw,18px);margin:18px 0 6px;display:flex}.lg-pod{flex-direction:column;align-items:center;gap:8px;width:clamp(90px,22vw,150px);display:flex}.lg-pod-av{color:#fff;width:56px;height:56px;box-shadow:var(--ls-shadow);border-radius:999px;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex;overflow:hidden}.lg-pod-av img{object-fit:cover;background:#fff;width:100%;height:100%}.lg-pod-name{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:600;overflow:hidden}.lg-pod-block{width:100%;font-family:var(--font-manrope), sans-serif;color:#fff;border-radius:16px 16px 6px 6px;justify-content:center;align-items:flex-start;padding-top:10px;font-size:26px;font-weight:800;display:flex}.lg-pod.r1 .lg-pod-block{background:linear-gradient(#d8ab25,#c99a12);height:120px}.lg-pod.r2 .lg-pod-block{background:linear-gradient(#a9b0b6,#8e959c);height:92px}.lg-pod.r3 .lg-pod-block{background:linear-gradient(#c98a5a,#b4723f);height:70px}.lg-pod-score{color:var(--ls-muted);font-size:13px;font-weight:600}.lg-rows{gap:8px;display:grid}.lg-row{background:var(--ls-card);border:1px solid var(--ls-line);border-radius:14px;grid-template-columns:34px 30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.lg-row.is-me{border-color:var(--ls-red-line);background:var(--ls-red-soft)}.lg-row-rank{font-family:var(--font-manrope), sans-serif;color:var(--ls-muted);text-align:center;font-weight:800}.lg-row-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.lg-row-meta{color:var(--ls-muted);font-size:12px}.lg-row-score{font-family:var(--font-manrope), sans-serif;font-size:16px;font-weight:800}.lg-missed{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:8px;display:grid}.lg-missed-item{background:var(--ls-card);border:1px solid var(--ls-line);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.lg-missed-item .zh{font-size:24px;font-weight:600;line-height:1.1}.lg-missed-item .py{font-size:13px;font-weight:600}.lg-missed-item .mn{color:var(--ls-muted);font-size:12px;line-height:16px}.lg-missed-item .ct{color:var(--ls-red);white-space:nowrap;margin-left:auto;font-size:12px;font-weight:700}.lg-section-title{font-family:var(--font-manrope), sans-serif;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:22px 0 10px;font-size:16px;font-weight:700;display:flex}.lg-me-card{text-align:center;background:var(--ls-card);border:1px solid var(--ls-line);box-shadow:var(--ls-shadow);border-radius:22px;padding:18px}.lg-me-score{font-family:var(--font-manrope), sans-serif;color:var(--lg-accent);font-size:44px;font-weight:800;line-height:1.1}.lg-confetti{pointer-events:none;z-index:90;position:fixed;inset:0;overflow:hidden}.lg-confetti i{border-radius:2px;width:9px;height:14px;animation:2.4s cubic-bezier(.3,.6,.4,1) forwards lg-fall;position:absolute;top:-16px}@keyframes lg-fall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{transform:translate3d(var(--dx), 105vh, 0) rotate(var(--rot));opacity:.9}}.lg-lab-hero{background:linear-gradient(135deg, var(--ls-card), var(--ls-gold-soft));border:1px solid var(--ls-line);border-radius:24px;grid-template-columns:minmax(0,1fr);align-items:center;gap:18px;padding:22px;display:grid}@media (min-width:860px){.lg-lab-hero{grid-template-columns:minmax(0,1fr) 200px}}.lg-lab-hero img{justify-self:center;width:180px}@media (prefers-reduced-motion:reduce){.lg-tile,.lg-mcard-in,.lg-game-card{transition:none!important}.lg-tile.is-wrong{animation:none}.lg-confetti{display:none}}.lg-split{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (min-width:980px){.lg-split.has-side{grid-template-columns:minmax(0,1fr) 300px}}.lg-reveal>div{width:100%}.lg-reveal .lg-grid.is-wide .lg-tile{min-height:76px}@media (min-width:900px){.lg-reveal>div:first-child{width:auto}}@media (min-width:700px){.lg-mcard{aspect-ratio:1}.lg-mem.n-12{max-width:min(720px,133.333dvh - 306.667px)}.lg-mem.n-16{max-width:min(720px,100dvh - 250px)}}.lg-missed-item .zh{white-space:nowrap}.lg-howto>.material-symbols-outlined{flex:none}.lg-card.size-4{max-width:min(620px,max(300px,100dvh - 250px))}.lg-card.size-3{max-width:min(560px,max(300px,100dvh - 250px))}
