/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#25163f;--cream:#fff8e8;--paper:#fffdf5;--blue:#40d9da;--blue-dark:#087f92;--red:#ff6687;--red-dark:#b52d58;--yellow:#ffe36e;--purple:#6c42c1}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:#f5e6c9;min-width:320px}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 12% 8%,#40d9da59 0 9%,#0000 10%),radial-gradient(circle at 89% 22%,#ff66874d 0 12%,#0000 13%),linear-gradient(145deg,#fff8e8 0%,#f8e1bb 52%,#ffeac9 100%);margin:0;font-family:Arial Rounded MT Bold,Microsoft YaHei,PingFang SC,system-ui,sans-serif}button,kbd{font:inherit}button:focus-visible,canvas:focus-visible{outline:5px solid var(--yellow);outline-offset:4px}.mobile-orientation-gate{display:none}@media (orientation:portrait) and (width<=820px){html,body{overscroll-behavior:none;overflow:hidden}.mobile-orientation-gate{z-index:10000;min-height:100dvh;padding:max(18px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));background:radial-gradient(circle at 16% 12%,#40d9da80 0 12%,#0000 13%),radial-gradient(circle at 88% 88%,#ff668761 0 15%,#0000 16%),#fff4d9;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.mobile-orientation-card{border:5px solid var(--ink);background:var(--paper);width:min(520px,100%);box-shadow:8px 9px 0 var(--ink);text-align:center;border-radius:28px 28px 28px 10px;padding:clamp(20px,5vw,34px)}.mobile-rotate-symbol{border:5px solid var(--ink);background:var(--yellow);width:116px;height:72px;box-shadow:4px 5px 0 var(--ink);border-radius:18px;margin:0 auto 17px;position:relative;transform:rotate(-3deg)}.mobile-rotate-symbol span{place-items:center;height:100%;font-size:34px;font-weight:1000;display:grid}.mobile-rotate-symbol b{color:var(--purple);font-size:43px;line-height:1;position:absolute;bottom:-26px;right:-29px}.mobile-orientation-card .eyebrow{margin-bottom:8px;font-size:11px}.mobile-orientation-card h2{margin:0 0 13px;font-size:clamp(34px,10vw,54px);line-height:1}.mobile-orientation-card>p:not(.eyebrow){color:#5f506e;margin:0 auto 17px;font-size:15px;font-weight:800;line-height:1.65}.mobile-orientation-card .primary-button{width:100%;margin-bottom:13px}.mobile-orientation-card .primary-button:disabled{cursor:wait;opacity:.72}.mobile-orientation-card .mobile-orientation-status{color:#7c2350;font-size:13px}.mobile-orientation-card .mobile-browser-help{background:#eee6ff;border-radius:12px;padding:10px 12px;font-size:12px}.mobile-mode-links{grid-template-columns:1fr 1fr;gap:9px;display:grid}.mobile-mode-links a{border:3px solid var(--ink);color:var(--ink);box-shadow:0 3px 0 var(--ink);background:#d8ffff;border-radius:13px;padding:11px 8px;font-size:13px;font-weight:1000;text-decoration:none}.mobile-mode-links a:last-child{background:#fff0af}}@media (orientation:portrait) and (width<=820px) and (height<=620px){.mobile-orientation-card{padding:15px 18px}.mobile-rotate-symbol{width:92px;height:55px;margin-bottom:10px}.mobile-rotate-symbol span{font-size:27px}.mobile-orientation-card h2{font-size:32px}.mobile-orientation-card>p:not(.eyebrow){margin-bottom:10px;font-size:12px;line-height:1.4}}.site-shell{width:min(1240px,100% - 28px);margin:0 auto;padding:24px 0 40px}.topbar{align-items:center;gap:14px;margin:0 4px 16px;display:flex}.brand-mark{border:4px solid var(--ink);width:62px;height:62px;color:var(--ink);background:var(--yellow);box-shadow:5px 6px 0 var(--ink);border-radius:21px 21px 21px 7px;flex:none;place-items:center;font-size:30px;font-weight:1000;display:grid;transform:rotate(-4deg)}.topbar h1{letter-spacing:-.05em;margin:-1px 0 0;font-size:clamp(30px,4vw,48px);font-weight:1000;line-height:.95}.eyebrow{color:var(--purple);letter-spacing:.11em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:900}.tagline{border:3px solid var(--ink);background:var(--paper);border-radius:999px;margin-left:auto;padding:10px 15px;font-weight:900;transform:rotate(1deg);box-shadow:4px 4px #25163f26}.local-top-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.local-top-actions .tagline{margin-left:0}.local-rules-button{border:3px solid var(--ink);color:var(--ink);background:var(--yellow);box-shadow:3px 4px 0 var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:1000}.local-rules-button:focus-visible{outline:4px solid var(--blue);outline-offset:3px}.game-card{border:5px solid var(--ink);background:var(--paper);border-radius:30px;overflow:hidden;box-shadow:0 15px #25163f26,0 28px 60px #4829542e}.score-strip{border-bottom:5px solid var(--ink);background:#fffdf5;grid-template-columns:1fr auto 1fr;align-items:center;min-height:84px;padding:10px 24px;display:grid}.team-score{align-items:center;gap:12px;font-size:clamp(16px,2vw,22px);font-weight:900;display:flex}.team-score strong{text-align:center;min-width:58px;font-size:clamp(36px,5vw,56px);line-height:1}.red-score{justify-content:flex-end}.team-dot{border:3px solid var(--ink);border-radius:50%;width:20px;height:20px}.blue-score .team-dot{background:var(--blue)}.red-score .team-dot{background:var(--red)}.blue-score strong{color:var(--blue-dark)}.red-score strong{color:var(--red-dark)}.timer{border:4px solid var(--ink);min-width:148px;color:var(--ink);background:var(--yellow);box-shadow:4px 5px 0 var(--ink);border-radius:18px;justify-content:center;align-items:baseline;gap:5px;padding:7px 17px;transition:transform .18s,background .18s;display:flex}.timer span{font-size:12px;font-weight:900}.timer strong{font-size:30px;line-height:1}.timer-danger{background:var(--red);animation:.55s ease-in-out infinite alternate timer-pop}.timer-final-rush{z-index:2;color:#fff;background:#ff315f;animation:.48s ease-in-out infinite alternate timer-final-rush}.timer-final-rush strong{font-size:40px}@keyframes timer-pop{to{transform:scale(1.06)rotate(-1deg)}}@keyframes timer-final-rush{0%{box-shadow:4px 5px 0 var(--ink), 0 0 0 #ff315f00;background:#ff315f;transform:scale(1.1)rotate(-1deg)}to{box-shadow:4px 5px 0 var(--ink), 0 0 24px #ff315fd9;background:#b90036;transform:scale(1.22)rotate(1deg)}}.canvas-wrap{aspect-ratio:1100/680;background:#25163f;width:100%;position:relative;overflow:hidden}.game-canvas{cursor:crosshair;width:100%;height:100%;display:block}.toast{z-index:4;border:3px solid var(--ink);max-width:min(88%,540px);color:var(--ink);background:var(--yellow);text-align:center;border-radius:999px;padding:10px 18px;font-weight:900;animation:.23s cubic-bezier(.2,1.4,.5,1) toast-in;position:absolute;top:18px;left:50%;transform:translate(-50%);box-shadow:4px 5px #25163fb3}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-10px)scale(.9)}}.start-overlay{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a0e38a3;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.start-bubble{border:5px solid var(--ink);background:var(--cream);width:min(680px,94%);box-shadow:10px 12px 0 var(--ink);text-align:center;border-radius:34px 34px 34px 12px;padding:clamp(22px,4vw,38px);transform:rotate(-.5deg)}.mini-badge{border:2px solid var(--ink);color:var(--ink);background:var(--blue);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:900;display:inline-block}.start-bubble h2{letter-spacing:-.04em;margin:16px 0 9px;font-size:clamp(28px,4vw,46px);line-height:1}.start-bubble p{max-width:520px;margin:0 auto;font-size:clamp(14px,1.7vw,18px);line-height:1.65}kbd{border:3px solid var(--ink);min-width:35px;min-height:35px;color:var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:9px;place-items:center;font-weight:1000;display:inline-grid}.quick-rules{flex-wrap:wrap;justify-content:center;gap:9px;margin:18px 0 21px;display:flex}.quick-rules span{color:#fff;background:var(--purple);border-radius:12px;padding:8px 11px;font-size:13px}.quick-rules b{color:var(--yellow)}.mode-picker{flex-wrap:wrap;justify-content:center;gap:10px;margin:14px auto 0;display:flex}.mode-group{border:2px solid var(--ink);background:#fff;border-radius:14px;align-items:center;gap:8px;padding:6px 8px 6px 11px;display:flex}.mode-group>span{color:#6b5c78;font-size:12px;font-weight:900}.mode-options{flex-wrap:wrap;gap:5px;display:flex}.mode-options button{color:var(--ink);cursor:pointer;background:#eee9f4;border:2px solid #0000;border-radius:9px;padding:7px 10px;font-size:12px;font-weight:900}.mode-options button.is-active{border-color:var(--ink);background:var(--yellow);box-shadow:0 2px 0 var(--ink)}.lan-mode-entry{border:3px solid var(--ink);width:min(520px,100%);color:var(--ink);box-shadow:0 4px 0 var(--ink);text-align:left;background:linear-gradient(100deg,#c9ffff,#fff3ae);border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin:14px auto 0;padding:11px 15px;text-decoration:none;display:flex}.lan-mode-entry strong{white-space:nowrap}.lan-mode-entry span{color:#5f506e;font-size:12px;font-weight:800}.primary-button{border:4px solid var(--ink);width:min(310px,100%);color:var(--ink);background:var(--yellow);box-shadow:0 7px 0 var(--ink);cursor:pointer;border-radius:17px;margin:0 auto 12px;padding:15px 26px;font-size:19px;font-weight:1000;transition:transform .12s,box-shadow .12s;display:block}.primary-button:hover{box-shadow:0 9px 0 var(--ink);transform:translateY(-2px)rotate(-1deg)}.primary-button:active{box-shadow:0 2px 0 var(--ink);transform:translateY(5px)}.secondary-button{border:2px solid var(--ink);color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;margin:0 auto 12px;padding:7px 14px;font-size:13px;font-weight:900}.start-bubble small{color:#776b87;font-weight:700}.result-bubble{background:#fff3bc}.final-score{justify-content:center;align-items:center;gap:16px;margin:13px 0;font-size:30px;display:flex}.final-score b:first-child{color:var(--blue-dark)}.final-score b:last-child{color:var(--red-dark)}.personal-score-strip{border-bottom:4px solid var(--ink);background:#fffdf5;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 16px;display:grid}.personal-score-card,.personal-result-card{border:3px solid var(--ink);background:#fff;border-radius:13px;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:8px 11px;display:grid;box-shadow:3px 3px #25163f24}.personal-score-card.is-blue,.personal-result-card.is-blue{background:#e5ffff}.personal-score-card.is-red,.personal-result-card.is-red{background:#ffe7ee}.personal-score-card span,.personal-result-card span{font-size:12px;font-weight:1000}.personal-score-card strong,.personal-result-card strong{grid-area:1/2/span 2;font-size:20px}.personal-score-card small,.personal-result-card small{color:#6b5c78;font-size:10px;font-weight:900}.personal-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:min(520px,100%);margin:0 auto 12px;display:grid}.round-awards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(520px,100%);margin:0 auto 14px;display:grid}.round-awards span{border:2px solid var(--ink);background:#fff;border-radius:11px;padding:8px 10px;font-size:12px;font-weight:900}.stats-row{flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 22px;display:flex}.stats-row span{border:2px solid var(--ink);background:#fff;border-radius:12px;padding:8px 11px;font-size:13px}.control-dock{border-top:5px solid var(--ink);background:#fffdf5;grid-template-columns:1fr 1fr;align-items:stretch;gap:14px;padding:15px 18px 18px;display:grid}.control-dock.has-player-two{grid-template-columns:1fr 1fr 1fr}.control-item{border:3px solid var(--ink);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#e8ffff;border-radius:16px;align-items:center;gap:13px;padding:10px 13px;display:flex;box-shadow:3px 4px #25163f29}.control-item:active{transform:translateY(2px)}.control-item kbd{background:var(--blue);min-width:48px;height:48px;font-size:22px}.control-item div{min-width:0;display:grid}.control-item strong,.control-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.control-item strong{font-size:16px}.control-item span{color:#6b5c78;margin-top:3px;font-size:12px}.control-item .charge-track{border:2px solid var(--ink);background:#25163f1f;border-radius:999px;width:100%;height:6px;margin-top:6px;display:block;overflow:hidden}.control-item .charge-track>i{border-radius:inherit;background:linear-gradient(90deg, #ff8a3d, var(--yellow));height:100%;transition:width .12s linear;display:block}.item-control{background:#fff6cf}.item-control kbd{background:var(--yellow)}.item-control.is-empty,.player-two-control.is-empty{opacity:.65}.player-two-control{background:#e7f5ff}.player-two-control.is-versus{background:#ffe7ef}.mobile-player-two-action{display:none}.player-two-control.is-versus kbd{background:var(--red)}.player-two-control .key-pair{gap:5px;display:flex}.player-two-control .key-pair kbd{min-width:38px}.legend{flex-wrap:wrap;grid-column:1/-1;justify-content:center;align-items:center;gap:12px;padding:0 5px;font-size:12px;font-weight:900;display:flex}.legend span{white-space:nowrap;align-items:center;gap:6px;display:flex}.legend i{border:3px solid var(--ink);width:19px;height:19px;display:inline-block;transform:rotate(12deg)}.iron-swatch{background:#b9c4d8;border-radius:45% 55% 40% 60%}.scrap-swatch{background:#8f684d;border-radius:35% 55% 42% 60%}.crystal-swatch{background:var(--yellow);clip-path:polygon(50% 0,100% 35%,78% 100%,22% 100%,0 35%)}.large-gold-swatch{background:radial-gradient(circle at 35% 35%,#ffe36e 0 28%,#e3a92f 30% 100%);border-radius:38% 54% 42% 58%}.diamond-swatch{clip-path:polygon(50% 0,100% 35%,72% 100%,28% 100%,0 35%);background:#6cf1ff}.core-swatch{background:#ff91f4;border-radius:38% 50% 44% 56%;box-shadow:inset 0 0 0 4px #6e477f}.bamboo-swatch{background:linear-gradient(90deg,#efffa8 0 42%,#ffb13b 42% 58%,#efffa8 58%);border-radius:50%}.bomb-ore-swatch{background:#4f4858;border-radius:38% 52% 43% 57%;box-shadow:inset 0 0 0 4px #ff9b54}.black8-swatch{background:radial-gradient(circle,#f8f5ff 0 29%,#111018 30% 70%,#050409 71%);border-radius:50%;box-shadow:inset 0 0 0 2px #eeeaf8,0 0 8px #f3f0ff8c}.gold8-swatch{background:radial-gradient(circle at 35% 30%,#fff7ad 0 12%,#ffd84d 35%,#b77600 100%);border-radius:50%;box-shadow:inset 0 0 0 2px #fff0a0,0 0 10px #ffd84dbf}.money-bag-swatch{background:linear-gradient(135deg,#f1c36b,#9b5b26);border-radius:45% 45% 38% 38%;box-shadow:inset 0 0 0 3px #5a321a,0 0 9px #ffc43eb3}.powerup-swatch{background:linear-gradient(90deg,#b98cff 0 38%,#ffe36e 38% 62%,#b98cff 62%);border-radius:5px;box-shadow:0 0 9px #b98cffbf}.garbage-swatch{background:#80758f;border-radius:35% 35% 48% 48%;box-shadow:inset 0 0 0 3px #c7b9d7}.play-note{border:3px solid var(--ink);background:#fffdf5d9;border-radius:16px;align-items:center;gap:13px;width:fit-content;max-width:92%;margin:24px auto 0;padding:12px 18px;font-size:13px;display:flex;box-shadow:4px 5px #25163f21}.play-note strong{color:var(--purple);white-space:nowrap}@media (width<=820px){.site-shell{width:min(100% - 16px,1240px);padding-top:13px}.tagline{display:none}.local-top-actions{margin-left:auto}.brand-mark{width:52px;height:52px;font-size:25px}.game-card{border-width:4px;border-radius:22px}.score-strip{border-bottom-width:4px;min-height:67px;padding:8px 12px}.team-score{gap:6px}.team-score strong{min-width:38px;font-size:34px}.team-dot{border-width:2px;width:14px;height:14px}.timer{min-width:112px;box-shadow:3px 4px 0 var(--ink);border-width:3px;padding:6px 10px}.timer strong{font-size:24px}.control-dock{border-top-width:4px;grid-template-columns:1fr 1fr;gap:8px;padding:10px}.control-dock.has-player-two{grid-template-columns:1fr 1fr}.control-dock.has-player-two .player-two-control{grid-column:1/-1}.legend{grid-column:1/-1;justify-content:center}.control-item{border-width:2px;gap:8px;padding:7px 9px}.control-item kbd{border-width:2px;min-width:38px;height:38px;font-size:18px}.control-item span{display:none}.start-overlay{padding:10px}.start-bubble{box-shadow:7px 8px 0 var(--ink);border-width:4px;padding:18px}.mode-picker{margin-top:10px}.quick-rules{margin:12px 0 15px}.play-note{flex-direction:column;align-items:flex-start;gap:4px}}@media (width<=520px){.topbar{margin-bottom:10px}.eyebrow{font-size:9px}.score-strip{grid-template-columns:1fr 88px 1fr}.team-score>span:not(.team-dot),.team-dot{display:none}.timer{min-width:82px}.timer span{display:none}.canvas-wrap{aspect-ratio:auto;min-height:340px}.start-bubble p{line-height:1.4}.quick-rules span:nth-child(2){display:none}.control-item strong{font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.lan-shell{width:min(1320px,100% - 28px);padding:max(22px, env(safe-area-inset-top)) env(safe-area-inset-right) max(46px, env(safe-area-inset-bottom)) env(safe-area-inset-left);overscroll-behavior:none;margin:0 auto}.lan-access-card{border:5px solid var(--ink);width:min(620px,100%);box-shadow:10px 12px 0 var(--ink), 0 28px 65px #25163f33;text-align:center;background:linear-gradient(145deg,#f4eaff,#fff8d5);border-radius:28px 28px 28px 10px;justify-items:center;margin:clamp(24px,8vh,90px) auto 0;padding:clamp(26px,5vw,48px);display:grid}.lan-access-card h2{margin:15px 0 6px;font-size:clamp(30px,6vw,50px);line-height:1}.lan-access-card>p{color:#635675;margin:5px 0;font-weight:800;line-height:1.6}.lan-access-card form{width:min(430px,100%)}.lan-access-card .lan-field{text-align:left;margin:20px 0 12px}.lan-access-card .primary-button{width:100%;margin:0}.lan-access-card>a{color:var(--purple);margin-top:18px;font-size:13px;font-weight:900}.lan-access-loader{border:7px solid #25163f2e;border-top-color:var(--purple);border-radius:50%;width:52px;height:52px;margin:24px 0 10px;animation:.75s linear infinite lan-access-spin}@keyframes lan-access-spin{to{transform:rotate(360deg)}}.lan-topbar,.lan-room-bar,.lan-score-strip,.lan-top-actions,.lan-entry-actions,.lan-controls,.lan-lobby-actions{align-items:center;display:flex}.lan-topbar{justify-content:space-between;gap:18px;margin-bottom:17px}.lan-topbar h1{letter-spacing:-.05em;margin:0;font-size:clamp(28px,4vw,46px);line-height:1}.lan-topbar h1 span{color:var(--purple);letter-spacing:-.02em;font-size:.55em}.lan-top-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px}.lan-text-button,.lan-connection,.lan-room-bar button{border:2px solid var(--ink);color:var(--ink);background:var(--paper);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;text-decoration:none}button.lan-text-button,.lan-room-bar button{cursor:pointer}.lan-connection:before{content:"";background:#ffb13b;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.lan-connection.is-connected:before{background:#39cd81}.lan-connection.is-offline:before{background:var(--red)}.lan-entry-card{border:5px solid var(--ink);background:var(--paper);border-radius:28px;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);display:grid;overflow:hidden;box-shadow:0 14px #25163f24,0 24px 60px #25163f2e}.lan-entry-copy{padding:clamp(26px,5vw,58px)}.lan-entry-copy h2{letter-spacing:-.05em;margin:16px 0 9px;font-size:clamp(30px,5vw,56px);line-height:1}.lan-entry-copy>p{color:#635675;max-width:680px;font-weight:700;line-height:1.7}.lan-field{gap:6px;max-width:520px;margin:24px 0 15px;display:grid}.lan-field span{font-size:13px;font-weight:900}.lan-field input,.lan-join-row input{border:3px solid var(--ink);min-width:0;color:var(--ink);font:inherit;background:#fff;border-radius:13px;padding:13px 15px;font-weight:900}.lan-entry-actions{align-items:stretch;gap:12px;max-width:700px}.lan-entry-actions .primary-button{white-space:nowrap;width:auto;margin:0}.lan-join-row{flex:1;grid-template-columns:minmax(110px,1fr) auto;gap:7px;display:grid}.lan-join-row button,.lan-start-button{border:3px solid var(--ink);color:var(--ink);background:var(--blue);box-shadow:0 4px 0 var(--ink);font:inherit;cursor:pointer;border-radius:13px;font-weight:1000}.lan-address-card{border-left:5px solid var(--ink);text-align:center;background:linear-gradient(160deg,#d9ffff,#fff1ae);align-content:center;justify-items:center;gap:10px;padding:30px;display:grid}.lan-address-card img{border:4px solid var(--ink);background:#fff;border-radius:18px;width:min(230px,100%)}.lan-address-card span{overflow-wrap:anywhere;color:#665777;font-size:12px;font-weight:800}.lan-offline-help{border:3px dashed var(--ink);background:#ffffffa8;border-radius:17px;gap:12px;max-width:290px;padding:22px;display:grid}.lan-offline-help b{font-size:22px}.lan-offline-help span{font-size:14px;line-height:1.6}.lan-offline-help i{color:#087f62;font-size:12px;font-style:normal;font-weight:900}.lan-notice{color:#8a2042;background:#ffe4ec;border:2px solid #9c264d;border-radius:10px;margin:12px 0 0;padding:9px 12px;font-size:13px;font-weight:900}.lan-capacity-help{border:3px solid var(--ink);background:#fff2bd;border-radius:13px;justify-items:start;gap:6px;margin-top:12px;padding:13px;display:grid}.lan-capacity-help span{color:#635675;font-size:12px;font-weight:800}.lan-capacity-help .primary-button{width:auto;margin:5px 0 0;text-decoration:none}.lan-room-bar{border:4px solid var(--ink);background:var(--paper);border-radius:19px;justify-content:center;gap:13px;margin-bottom:15px;padding:11px 15px;box-shadow:0 6px #25163f21}.lan-room-bar>div{background:#f0e9f6;border-radius:10px;align-items:baseline;gap:7px;padding:5px 13px;display:flex}.lan-room-bar span{color:#6b5c78;font-size:11px;font-weight:900}.lan-room-bar strong{letter-spacing:.08em;font-size:20px}.lan-result-banner{border:4px solid var(--ink);text-align:center;background:linear-gradient(120deg,#dcffff,#fff1b1,#ffe0ea);border-radius:21px;justify-items:center;margin-bottom:15px;padding:20px;display:grid;box-shadow:0 7px #25163f24}.lan-result-banner>span{color:var(--purple);font-size:12px;font-weight:1000}.lan-result-banner h2{margin:5px 0 2px;font-size:clamp(28px,5vw,46px);line-height:1}.lan-final-score{align-items:center;gap:13px;font-size:32px;display:flex}.lan-final-score b:first-child{color:var(--blue-dark)}.lan-final-score b:last-child{color:var(--red-dark)}.lan-result-banner i{color:var(--ink);font-style:normal}.lan-result-banner p{color:#6b5c78;margin:4px 0 0;font-size:12px;font-weight:800}.lan-result-players{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(720px,100%);margin:12px auto 8px;display:grid}.lan-result-player{border:3px solid var(--ink);text-align:left;background:#fff;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;padding:9px 11px;display:grid}.lan-result-player.is-blue{background:#e5ffff}.lan-result-player.is-red{background:#ffe7ee}.lan-result-player span{font-size:12px;font-weight:1000}.lan-result-player strong{grid-area:1/2/span 2;font-size:20px}.lan-result-player small{color:#6b5c78;font-size:10px;font-weight:900}.lan-round-awards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(720px,100%);margin:0 auto 8px;display:grid}.lan-round-awards span{border:2px solid var(--ink);background:#fff;border-radius:11px;padding:8px 10px;font-size:12px;font-weight:900}.lan-lobby-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.lan-content-mode-picker{border:4px solid var(--ink);background:#f4eaff;border-radius:20px;grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;gap:10px 18px;padding:16px 18px;display:grid;box-shadow:0 7px #25163f21}.lan-content-mode-picker>div:first-child{gap:2px;display:grid}.lan-content-mode-picker>div:first-child strong{font-size:17px}.lan-content-mode-picker>div:first-child span{color:#6b5c78;font-size:11px;font-weight:800}.lan-content-mode-picker>p{color:#554567;grid-column:1/-1;margin:0;font-size:12px;font-weight:800}.lan-content-mode-options{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.lan-content-mode-options button{border:3px solid var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:11px;padding:9px 13px;font-size:12px;font-weight:900}.lan-content-mode-options button.is-active{background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.lan-content-mode-options button:disabled{color:inherit;cursor:default;opacity:.7}.lan-content-mode-options button.is-active:disabled{opacity:1}.lan-slot{border:4px solid var(--ink);background:var(--paper);border-radius:20px;min-width:0;padding:17px;box-shadow:0 7px #25163f21}.lan-slot.is-blue{background:#e5ffff}.lan-slot.is-red{background:#ffe7ee}.lan-slot.is-me{box-shadow:0 0 0 6px var(--yellow), 0 8px 0 var(--ink)}.lan-slot>header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.lan-slot>header span{color:#6b5c78;font-size:12px;font-weight:900}.lan-slot>header strong{font-size:20px}.lan-slot.is-blue>header strong{color:var(--blue-dark)}.lan-slot.is-red>header strong{color:var(--red-dark)}.lan-player-card,.lan-ai-card{border:3px solid var(--ink);background:#fff;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:5px 12px;min-height:78px;padding:13px;display:grid}.lan-player-card b,.lan-ai-card b{font-size:19px}.lan-player-card span,.lan-ai-card span{color:#6b5c78;font-size:12px;font-weight:800}.lan-player-card i{border-radius:999px;grid-area:1/2/span 2;padding:6px 9px;font-size:11px;font-style:normal;font-weight:900}.lan-player-card i.is-online{color:#086e4a;background:#bff5d9}.lan-player-card i.is-away{color:#992a4f;background:#ffd9e5}.lan-move-row{grid-template-columns:repeat(4,1fr);gap:5px;margin-top:10px;display:grid}.lan-move-row button{border:2px solid var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:6px;font-size:11px;font-weight:900}.lan-move-row button:disabled{opacity:.35;cursor:default}.lan-lobby-actions{border:4px solid var(--ink);background:#fff8d5;border-radius:20px;flex-wrap:wrap;grid-column:1/-1;justify-content:center;gap:12px;padding:18px}.lan-lobby-actions .primary-button,.lan-lobby-actions .secondary-button{width:auto;margin:0}.lan-start-button{background:var(--yellow);padding:15px 22px}.lan-start-button:disabled{opacity:.42;cursor:not-allowed}.lan-lobby-actions>p{color:#6b5c78;text-align:center;width:100%;margin:3px 0 0;font-size:12px;font-weight:800}.lan-game-card{border:5px solid var(--ink);background:var(--paper);border-radius:26px;overflow:hidden;box-shadow:0 14px #25163f26,0 24px 55px #25163f33}.lan-score-strip{border-bottom:5px solid var(--ink);grid-template-columns:1fr auto 1fr;gap:14px;min-height:80px;padding:10px 22px;display:grid}.lan-score-strip>strong{align-self:center;font-size:clamp(22px,4vw,42px)}.lan-score-strip>strong.is-blue{color:var(--blue-dark)}.lan-score-strip>strong.is-red{color:var(--red-dark);text-align:right}.lan-personal-strip{border-bottom:4px solid var(--ink);background:#fffdf5;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:9px 12px;display:grid}.lan-personal-card{border:2px solid var(--ink);background:#fff;border-radius:11px;grid-template-columns:1fr auto;gap:2px 8px;min-width:0;padding:7px 9px;display:grid}.lan-personal-card.is-blue{background:#e5ffff}.lan-personal-card.is-red{background:#ffe7ee}.lan-personal-card.is-me{box-shadow:0 0 0 3px var(--yellow)}.lan-personal-card span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:1000;overflow:hidden}.lan-personal-card strong{grid-area:1/2/span 2;font-size:17px}.lan-personal-card small{color:#6b5c78;font-size:9px;font-weight:900}.lan-timer{border:4px solid var(--ink);background:var(--yellow);box-shadow:4px 4px 0 var(--ink);border-radius:16px;align-self:center;align-items:baseline;gap:5px;padding:8px 17px;font-weight:900;display:flex}.lan-timer b{font-size:30px;line-height:1}.lan-timer span{font-size:11px}.lan-timer small{font-size:9px}.lan-timer.is-rush{color:#fff;background:var(--red);animation:.48s ease-in-out infinite alternate timer-final-rush}.lan-canvas-wrap{aspect-ratio:1430/884;background:var(--ink);width:100%;position:relative}.lan-canvas-wrap canvas{width:100%;height:100%;display:block}.lan-rotate-hint{display:none}.lan-event{z-index:2;border:3px solid var(--ink);max-width:80%;color:var(--ink);background:var(--yellow);text-align:center;border-radius:999px;padding:9px 15px;font-size:13px;font-weight:1000;animation:2.3s both lan-event-life;position:absolute;top:15px;left:50%;transform:translate(-50%);box-shadow:3px 4px #25163fb8}.lan-event.is-bomb{background:#ff9a50}.lan-event.is-assist{background:#78f0ad}.lan-event.is-core{background:#ff91f4}.lan-event.is-rush{color:#fff;background:var(--red)}.lan-event.is-end{color:#fff;background:var(--purple)}@keyframes lan-event-life{0%{opacity:0;transform:translate(-50%,-8px)scale(.92)}12%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-4px)scale(.98)}}.lan-countdown{z-index:5;color:#fff;text-align:center;background:#190d36b8;place-content:center;display:grid;position:absolute;inset:0}.lan-countdown span{font-size:20px;font-weight:900}.lan-countdown strong{text-shadow:8px 9px 0 var(--ink);font-size:clamp(90px,20vw,190px);line-height:.9;animation:.5s ease-in-out infinite alternate timer-pop}.lan-feedback-strip{border-top:5px solid var(--ink);background:#f4eaff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:7px 14px;display:grid}.lan-personal-event-slot{align-items:center;min-width:0;min-height:30px;display:flex}.lan-personal-event{border:2px solid var(--ink);max-width:100%;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;background:#fff0a8;border-radius:9px;padding:6px 10px;font-size:12px;font-weight:900;animation:1.6s both lan-personal-event-life;overflow:hidden;box-shadow:2px 2px #25163f61}.lan-personal-event.is-warning{background:#ffd3a8}@keyframes lan-personal-event-life{0%{opacity:0;transform:translateY(5px)}14%,78%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}.lan-status-chips{justify-content:flex-end;align-items:center;gap:6px;display:flex}.lan-status-chips span{border:2px solid var(--ink);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:1000}.lan-status-chips .is-buff{background:#c9ffdc}.lan-status-chips .is-debuff{color:#fff;background:#7a5db2}.lan-controls{border-top:5px solid var(--ink);justify-content:center;gap:12px;padding:14px}.lan-controls>button{border:3px solid var(--ink);min-width:min(390px,48%);color:var(--ink);font:inherit;cursor:pointer;touch-action:manipulation;background:#e7ffff;border-radius:14px;align-items:center;gap:7px;padding:10px 13px;font-weight:900;display:flex}.lan-controls>button:last-child{background:#fff2bd}.lan-controls>button.is-empty{opacity:.72;filter:saturate(.55)}.lan-controls kbd{min-width:34px;min-height:34px;box-shadow:0 3px 0 var(--ink)}.lan-controls span{margin-left:4px;font-size:13px}.lan-bomb-status{text-align:left;flex:1;gap:2px;display:grid}.lan-bomb-status strong{font-size:14px}.lan-bomb-status small{color:#6b5c78;font-size:10px}.lan-bomb-status .charge-track{width:100%;margin-top:3px}.lan-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#190d36c2;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.lan-rules-dialog{border:5px solid var(--ink);background:var(--cream);width:min(760px,100%);max-height:min(90vh,820px);box-shadow:10px 12px 0 var(--ink);border-radius:28px 28px 28px 10px;padding:clamp(22px,4vw,38px);overflow:auto}.lan-rules-dialog h2{margin:14px 0;font-size:clamp(32px,5vw,48px);line-height:1}.lan-rules-copy{gap:10px;display:grid}.lan-rules-copy p{background:#ffffffad;border-radius:11px;margin:0;padding:10px 12px;font-size:14px;font-weight:700;line-height:1.55}.lan-rules-dialog .primary-button{margin-top:20px;margin-bottom:8px}.collection-backdrop{z-index:30;padding:18px}.collection-dialog{border:5px solid var(--ink);background:#fff9e8;border-radius:28px;grid-template-rows:auto auto minmax(0,1fr);width:min(1120px,100%);height:min(880px,100dvh - 36px);max-height:min(880px,100vh - 36px);display:grid;overflow:hidden;box-shadow:0 18px #25163f3d,0 32px 80px #13093066}.collection-header{border-bottom:4px solid var(--ink);background:linear-gradient(135deg,#f4eaff,#fff8d5);justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 15px;display:flex}.collection-header h2{margin:8px 0 3px;font-size:clamp(30px,5vw,50px);line-height:1}.collection-header p{color:#6b5c78;margin:0;font-size:13px;font-weight:800}.collection-close{border:4px solid var(--ink);width:46px;height:46px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer;background:#fff;border-radius:50%;flex:none;font:1000 30px/1 system-ui}.collection-tabs{border-bottom:3px solid var(--ink);background:#fffdf5;gap:9px;padding:13px 18px;display:flex}.collection-tabs button{border:3px solid var(--ink);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:13px;padding:10px 18px;font-size:14px;font-weight:1000}.collection-tabs button.is-active{background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.collection-tabs button span{color:#6b5c78;margin-left:5px;font-size:11px}.collection-grid{overscroll-behavior:contain;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px;min-height:0;padding:16px 18px 32px;scroll-padding-bottom:32px;display:grid;overflow-y:auto}.collection-powerup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-card{border:3px solid var(--ink);background:#fff;border-radius:18px;grid-template-columns:120px minmax(0,1fr);align-items:center;min-width:0;min-height:132px;padding:10px 13px 10px 6px;display:grid;box-shadow:0 5px #25163f1f}.collection-card.is-powerup{background:linear-gradient(135deg,#f4eaff,#fff 68%)}.collection-icon-canvas{width:120px;height:100px;display:block}.collection-card-copy{min-width:0}.collection-card-title{grid-template-columns:1fr auto;align-items:center;gap:3px 8px;display:grid}.collection-card-title>span{color:#7b6790;grid-column:1/-1;font-size:10px;font-weight:1000}.collection-card-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:18px;line-height:1.15;overflow:hidden}.collection-card-title b{color:#6d3a00;white-space:nowrap;background:#ffe8a3;border-radius:999px;padding:4px 7px;font-size:11px}.collection-card-copy p{margin:6px 0 3px;font-size:12px;font-weight:900;line-height:1.35}.collection-card-copy small{color:#6b5c78;font-size:11px;font-weight:750;line-height:1.45;display:block}@media (width<=800px){.lan-shell{width:min(100% - 14px,1320px);padding-top:12px}.lan-topbar{flex-direction:column;align-items:flex-start}.lan-top-actions{justify-content:flex-start}.lan-entry-card{border-width:4px;grid-template-columns:1fr}.lan-address-card{border-top:4px solid var(--ink);border-left:0}.lan-address-card img{width:170px}.lan-lobby-grid,.lan-content-mode-picker{grid-template-columns:1fr}.lan-content-mode-options{justify-content:flex-start}.lan-content-mode-picker>p,.lan-lobby-actions{grid-column:1}.lan-room-bar{justify-content:flex-start;overflow-x:auto}.lan-score-strip{border-bottom-width:4px;min-height:65px;padding:7px 10px}.lan-personal-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.lan-result-players,.lan-round-awards,.personal-result-grid,.round-awards{grid-template-columns:1fr}.lan-timer{border-width:3px;padding:6px 9px}.lan-timer b{font-size:24px}.lan-game-card{border-width:4px}.lan-feedback-strip,.lan-controls{border-top-width:4px}.personal-score-strip{grid-template-columns:1fr}.lan-controls>button{flex:1;min-width:0}.lan-controls span{display:none}.collection-dialog{border-width:4px;border-radius:20px;height:calc(100dvh - 18px);max-height:calc(100vh - 18px)}.collection-grid{grid-template-columns:1fr;padding:12px 12px 28px;scroll-padding-bottom:28px}.collection-powerup-grid{grid-template-columns:1fr}}@media (width<=520px){.lan-topbar h1 span{margin-top:6px;display:block}.lan-entry-copy{padding:24px 18px}.lan-entry-actions{flex-direction:column;align-items:stretch}.lan-entry-actions .primary-button{width:100%}.lan-address-card{padding:22px}.lan-room-bar>div{min-width:max-content}.lan-timer small{display:none}.collection-backdrop{padding:8px}.collection-header{padding:16px 15px 12px}.collection-header p{font-size:11px}.collection-close{border-width:3px;width:40px;height:40px}.collection-tabs{padding:10px}.collection-tabs button{flex:1;padding:9px 8px}.collection-card{grid-template-columns:94px minmax(0,1fr);padding:8px}.collection-icon-canvas{width:94px;height:82px}.collection-card-title strong{font-size:16px}.lan-score-strip{grid-template-columns:1fr 84px 1fr}.lan-score-strip>strong{font-size:19px}.lan-timer span{display:none}.lan-canvas-wrap{aspect-ratio:auto;min-height:360px}.lan-event{max-width:92%;font-size:11px;top:8px}.lan-feedback-strip{gap:6px;min-height:44px;padding:5px 8px}.lan-personal-event{padding:5px 7px;font-size:10px}.lan-status-chips{gap:4px}.lan-status-chips span{padding:4px 6px;font-size:9px}.lan-controls{gap:7px;padding:8px}.lan-controls>button{justify-content:center;padding:8px}.lan-controls kbd{min-width:31px;min-height:31px}.lan-mode-entry{flex-direction:column;align-items:flex-start;gap:4px}}@media (pointer:coarse){.lan-field input,.lan-join-row input{font-size:16px}.lan-shell.is-playing{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.lan-shell.is-playing .lan-controls{z-index:80;bottom:max(6px, env(safe-area-inset-bottom));width:min(900px,100% - 12px);padding:9px max(9px, env(safe-area-inset-right)) 9px max(9px, env(safe-area-inset-left));border:4px solid var(--ink);background:#fffdf5;border-radius:18px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #14082d66}.lan-controls>button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:66px}.lan-controls kbd{display:none}.lan-controls span{display:block}.lan-bomb-status{text-align:center;margin-left:0}.lan-bomb-status small{display:block}}@media (pointer:coarse) and (orientation:portrait){.lan-shell.is-playing .lan-rotate-hint{z-index:8;border:2px solid var(--ink);max-width:210px;box-shadow:2px 3px 0 var(--ink);text-align:center;background:#ffe36ef0;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:1000;display:block;position:absolute;bottom:10px;right:10px}}@media (pointer:coarse) and (orientation:landscape) and (height<=620px){.lan-shell.is-playing{width:100%;padding-top:max(4px, env(safe-area-inset-top))}.lan-shell.is-playing .lan-topbar,.lan-shell.is-playing .lan-room-bar,.lan-shell.is-playing .lan-personal-strip{display:none}.lan-shell.is-playing .lan-game-card{border-width:2px;border-radius:10px}.lan-shell.is-playing .lan-score-strip{border-bottom-width:2px;min-height:48px;padding:4px 12px}.lan-shell.is-playing .lan-score-strip>strong{font-size:20px}.lan-shell.is-playing .lan-timer{box-shadow:2px 2px 0 var(--ink);border-width:2px;padding:4px 8px}.lan-shell.is-playing .lan-timer b{font-size:22px}.lan-shell.is-playing .lan-canvas-wrap{aspect-ratio:auto;width:100%;height:calc(100dvh - 168px);min-height:170px}.lan-shell.is-playing .lan-canvas-wrap canvas{object-fit:contain}.lan-shell.is-playing .lan-feedback-strip{border-top-width:2px;min-height:34px;padding:3px 8px}body{overflow:hidden}.site-shell{width:100%;height:100dvh;padding:max(3px, env(safe-area-inset-top)) max(3px, env(safe-area-inset-right)) max(3px, env(safe-area-inset-bottom)) max(3px, env(safe-area-inset-left));margin:0}.site-shell>.topbar,.site-shell>.play-note{display:none}.site-shell .game-card{height:100%;min-height:0;box-shadow:none;border-width:2px;border-radius:10px;flex-direction:column;display:flex}.site-shell .score-strip{border-bottom-width:2px;flex:0 0 42px;min-height:42px;padding:3px 12px}.site-shell .team-score{font-size:13px}.site-shell .team-score strong{min-width:34px;font-size:27px}.site-shell .timer{min-width:90px;box-shadow:2px 2px 0 var(--ink);border-width:2px;border-radius:10px;padding:3px 8px}.site-shell .timer strong{font-size:21px}.site-shell .timer-final-rush strong{font-size:25px}.site-shell .personal-score-strip{display:none}.site-shell .canvas-wrap{aspect-ratio:auto;flex:auto;place-items:center;min-height:0;display:grid}.site-shell .game-canvas{object-fit:contain;width:100%;height:100%}.site-shell .control-dock,.site-shell .control-dock.has-player-two{border-top-width:2px;flex:0 0 52px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-height:52px;padding:3px 5px}.site-shell .control-dock.has-player-two{grid-template-columns:repeat(4,minmax(0,1fr))}.site-shell .control-item{min-height:44px;box-shadow:none;border-width:2px;border-radius:9px;gap:6px;padding:3px 7px}.site-shell .control-item kbd{min-width:31px;height:31px;min-height:31px;box-shadow:0 2px 0 var(--ink);border-width:2px;border-radius:7px;font-size:15px}.site-shell .control-item strong{font-size:11px}.site-shell .control-item span,.site-shell .control-item .charge-track,.site-shell .control-dock .legend,.site-shell .player-two-control{display:none}.site-shell .mobile-player-two-action{border:2px solid var(--ink);min-width:0;color:var(--ink);font:inherit;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#dff9ff;border-radius:9px;justify-content:center;align-items:center;padding:4px 6px;font-size:10px;font-weight:1000;display:flex}.site-shell .mobile-player-two-action.is-secondary{background:#fff1b5}.site-shell .start-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:3px}.site-shell .start-bubble{width:min(940px,98%);max-height:calc(100% - 4px);box-shadow:3px 3px 0 var(--ink);border-width:3px;border-radius:15px;padding:7px 11px;overflow-y:auto;transform:none}.site-shell .start-bubble .mini-badge{border-width:1px;padding:3px 8px;font-size:9px}.site-shell .start-bubble h2{margin:3px 0;font-size:19px}.site-shell .start-bubble>p{max-width:880px;font-size:10px;line-height:1.25}.site-shell .start-bubble>p:nth-of-type(2){display:none}.site-shell .mode-picker{flex-wrap:nowrap;gap:4px;margin-top:5px}.site-shell .mode-group{border-width:1px;border-radius:8px;gap:3px;padding:3px 4px}.site-shell .mode-group>span{white-space:nowrap;font-size:9px}.site-shell .mode-options{flex-wrap:nowrap;gap:2px}.site-shell .mode-options button{white-space:nowrap;border-width:1px;border-radius:6px;padding:4px 6px;font-size:9px}.site-shell .lan-mode-entry,.site-shell .quick-rules{display:none}.site-shell .start-bubble .primary-button{width:min(190px,100%);box-shadow:0 3px 0 var(--ink);border-width:2px;border-radius:9px;margin:6px auto 3px;padding:6px 12px;font-size:13px}.site-shell .start-bubble>small{display:none}.lan-modal-backdrop{padding:4px}.lan-rules-dialog{width:min(1040px,98%);max-height:calc(100dvh - 8px);box-shadow:3px 3px 0 var(--ink);border-width:3px;border-radius:14px;padding:7px 10px}.lan-rules-dialog .mini-badge{padding:3px 7px;font-size:9px}.lan-rules-dialog h2{margin:3px 0 5px;font-size:20px}.lan-rules-copy{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.lan-rules-copy p{padding:4px 6px;font-size:9px;line-height:1.25}.lan-rules-dialog .primary-button{box-shadow:0 3px 0 var(--ink);border-width:2px;margin:6px auto 2px;padding:6px 12px;font-size:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
