@import"https://fonts.googleapis.com/css2?family=DotGothic16&family=Press+Start+2P&family=Yuji+Syuku&display=swap";@font-face{font-family:YuJishi;src:url(/fonts/yujishi/YuJishi-Weight9.ttf) format("truetype");font-display:swap;font-weight:900;font-style:normal}:root{--pixel-font: "Press Start 2P", "DotGothic16", "Courier New", monospace;--pixel-font-ja: "DotGothic16", "Press Start 2P", "Courier New", monospace;--wa-title-font: "勇獅子", "YuJishi", "Yu Jishi", "Yujishi", "Yuji Syuku", "Hiragino Mincho ProN", "Yu Mincho", "BIZ UDPMincho", "Songti SC", serif;--wa-ui-font: "勇獅子", "YuJishi", "Yu Jishi", "Yujishi", "Yu Mincho", "Hiragino Mincho ProN", "BIZ UDPMincho", serif;color:#2c261c;background:repeating-linear-gradient(90deg,rgba(80,96,63,.16) 0 2px,transparent 2px 34px),repeating-linear-gradient(0deg,rgba(255,250,235,.42) 0 1px,transparent 1px 42px),radial-gradient(circle at 18% 12%,rgba(133,142,82,.34),transparent 28rem),radial-gradient(circle at 84% 10%,rgba(166,120,72,.24),transparent 24rem),linear-gradient(145deg,#d8d0a6,#b9bb83 42%,#7e8a5b);background-size:auto,auto,auto;font-family:var(--wa-ui-font);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}body.is-match-screen{overflow:hidden}button,input{font:inherit}button{cursor:pointer}.app-shell{width:min(1120px,calc(100% - 28px));margin:0 auto;padding:22px 0 42px}.app-shell.is-match{min-height:100svh;padding-block:10px 14px}.hero{display:grid;align-items:center;min-height:210px;padding:30px;border:1px solid rgba(102,76,42,.28);border-radius:8px;color:#2c261c;background:radial-gradient(circle at 18% 0%,rgba(255,250,235,.45),transparent 18rem),repeating-linear-gradient(90deg,rgba(102,76,42,.12) 0 2px,transparent 2px 28px),linear-gradient(120deg,#d8c99d,#9d8056 76%);box-shadow:inset 0 0 0 4px #fffaeb2e,0 26px 70px #402e1942}.turn-kicker{display:inline-flex;width:fit-content;padding:7px 12px;border:1px solid rgba(218,172,91,.48);border-radius:999px;background:#fff4dc14;font-size:.8rem;font-weight:900;text-transform:uppercase}.hero h1{max-width:820px;margin:0;font-family:var(--wa-title-font);font-size:clamp(2.2rem,6.4vw,5.1rem);font-weight:900;line-height:.9;letter-spacing:.02em;color:#4a3d2b;text-transform:none;text-shadow:0 2px 0 rgba(255,250,235,.7),0 7px 18px rgba(64,46,25,.28),4px 4px 0 rgba(109,86,47,.42)}.hero p{margin:0;font-size:1.05rem;font-weight:800}.scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px 0 18px}.match-scoreboard{margin-top:0}.score-card,.intro-card,.setup-card,.turn-card,.result-stage,.history{border:1px solid rgba(102,76,42,.22);border-radius:8px;background:linear-gradient(180deg,#fffaebb8,#e7dcb894),#f1e5c3cc;box-shadow:inset 0 0 0 1px #fff4dc0b,0 22px 52px #402e192e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.intro-card{display:grid;gap:26px;min-height:calc(100svh - 44px);align-content:center;justify-items:center;padding:34px;border:2px solid rgba(88,60,31,.34);background:radial-gradient(circle at 50% 18%,rgba(255,250,235,.72),transparent 20rem),repeating-linear-gradient(90deg,rgba(80,96,63,.08) 0 2px,transparent 2px 34px),linear-gradient(180deg,#e4d6a9f0,#ae9c68db);text-align:center}.intro-mark{width:min(190px,42vw);aspect-ratio:1;padding:10px;border:3px solid rgba(62,42,23,.32);border-radius:24px;background:#fffaeb70;box-shadow:inset 0 0 0 4px #fffaeb33,0 22px 48px #402e193d}.intro-mark img{display:block;width:100%;height:100%;border-radius:18px;object-fit:cover}.intro-copy{display:grid;gap:10px}.intro-copy span{color:#6a532e;font-size:.95rem;font-weight:1000}.intro-copy h1{margin:0;color:#4a3d2b;font-family:var(--wa-title-font);font-size:clamp(2.4rem,8vw,5.8rem);line-height:.88;text-shadow:0 2px 0 rgba(255,250,235,.78),4px 5px 0 rgba(82,60,35,.22),0 18px 38px rgba(64,46,25,.22)}.intro-copy p{margin:0;color:#2c261cbd;font-size:1rem;font-weight:1000}.intro-card>button{min-height:58px;width:min(360px,100%);border:2px solid rgba(62,42,23,.28);border-radius:8px;background:linear-gradient(180deg,#fffaeb29,#fffaeb00),linear-gradient(135deg,#5f6c3d,#9aa260);color:#fff9e8;font-weight:1000;box-shadow:0 7px #454d2a7a,0 16px 30px #575b3447}.setup-card{display:grid;gap:22px;margin-top:26px;padding:28px;background:repeating-linear-gradient(135deg,rgba(102,76,42,.035) 0 2px,transparent 2px 14px),linear-gradient(180deg,#fffaebbd,#e7dcb89e),#f1e5c3d1}.setup-card h2{margin:0;font-family:var(--wa-title-font);font-size:clamp(1.25rem,3.2vw,2.4rem);font-weight:900;line-height:1;color:#6a532e;writing-mode:horizontal-tb;text-shadow:none;text-transform:none}.setup-input-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:12px;align-items:end}.setup-player{display:grid;gap:8px;padding:16px;border:1px solid rgba(102,76,42,.22);border-radius:8px;background:linear-gradient(180deg,#fffaeba3,#e7dcb86b),#faefcd8a}.setup-player.playerA{background:linear-gradient(180deg,#fffaeb8f,#e7dcb85c),#868e5552}.setup-player.playerB{background:linear-gradient(180deg,#fffaeb8f,#e7dcb85c),#9d805647}.setup-player span{color:#6a532e;font-size:.9rem;font-weight:900}.setup-player input{width:100%;min-height:54px;padding:10px 14px;border:1px solid rgba(102,76,42,.24);border-radius:8px;background:#fffaeb94;color:#2c261c;font-weight:900;font-family:var(--wa-ui-font);box-shadow:inset 0 1px #fffc}.setup-player input:disabled{color:#f7efe285;background:#ffffff0a}.setup-player input[aria-invalid=true]{border-color:#862618c7;box-shadow:inset 0 1px #fffc,0 0 0 3px #86261829}.setup-error,.judge-warning{color:#7b2418;font-size:.9rem;font-weight:1000}.setup-input-row button,.setup-card>button{min-height:56px;border:0;border-radius:8px;background:linear-gradient(135deg,#6f7b4b,#9aa260);color:#fff9e8;font-weight:1000;box-shadow:0 14px 30px #575b3447;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.setup-input-row button:not(:disabled):hover,.setup-card>button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 18px 36px #575b345c}.setup-input-row button:disabled,.setup-card>button:disabled{cursor:not-allowed;opacity:.5}.setup-vs{margin:0 auto;font-family:var(--wa-title-font);font-size:clamp(2.7rem,7vw,5.8rem);font-weight:1000;line-height:.9;color:#2b2117;text-shadow:0 2px 0 rgba(255,250,235,.9),4px 4px 0 rgba(109,86,47,.28),0 10px 24px rgba(64,46,25,.18);text-align:center}.setup-vs.is-matchup{width:100%;font-family:var(--wa-title-font);font-size:clamp(2rem,5vw,4.2rem);word-break:keep-all}.order-panel{display:grid;gap:12px;padding:14px;border:1px solid rgba(102,76,42,.22);border-radius:8px;background:#fffaeb6b}.order-display{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.order-display span{min-height:44px;display:grid;place-items:center;padding:8px 10px;border:1px solid rgba(102,76,42,.2);border-radius:8px;background:linear-gradient(180deg,#fffaeba3,#e7dcb857),#868e5529;color:#2c261c;font-weight:900}.order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.order-actions button{min-height:46px;border:0;border-radius:8px;background:linear-gradient(135deg,#6f7b4b,#9aa260);color:#fff9e8;font-weight:1000;box-shadow:0 12px 24px #575b343d}.order-actions button:disabled{cursor:not-allowed;opacity:.68}.order-panel.is-rolling .order-display{filter:brightness(1.06)}.order-panel.is-rolling .order-display span{background:linear-gradient(180deg,#fffaebb8,#e7dcb86b),#9d805642}.setup-judge{width:fit-content;margin:-10px auto 0;padding:9px 14px;border:1px solid rgba(102,76,42,.22);border-radius:8px;background:#fffaeb75;color:#6a532e;font-size:.95rem;font-weight:1000}.match-length-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.match-length-panel button{min-height:48px;border:1px solid rgba(102,76,42,.22);border-radius:8px;background:#fffaeb73;color:#2c261c;font-weight:900}.match-length-panel button.is-selected{background:linear-gradient(135deg,#6f7b4b,#9aa260);color:#fff9e8;box-shadow:0 12px 24px #575b343d}.reset-setup-button,.skip-judge-button{min-height:48px;border:1px solid rgba(102,76,42,.22);border-radius:8px;background:#fffaeb73;color:#2c261c;font-weight:1000}.rules-card{display:grid;gap:22px;min-height:calc(100svh - 24px);align-content:center;padding:34px;border:2px solid rgba(88,60,31,.34);border-radius:8px;background:radial-gradient(circle at 50% 18%,rgba(255,250,235,.7),transparent 22rem),repeating-linear-gradient(90deg,rgba(80,96,63,.08) 0 2px,transparent 2px 34px),linear-gradient(180deg,#e4d6a9f0,#ae9c68db);box-shadow:inset 0 0 0 4px #fffaeb2e,0 26px 70px #402e193d}.rules-title{display:grid;justify-items:center;gap:8px;text-align:center}.rules-title span{color:#6a532e;font-size:.9rem;font-weight:1000}.rules-title h2{margin:0;font-family:var(--wa-title-font);font-size:clamp(2.2rem,6vw,5rem);line-height:.9;text-shadow:0 2px 0 rgba(255,250,235,.86),4px 5px 0 rgba(82,60,35,.22)}.rules-list{display:grid;gap:10px;max-width:760px;margin:0 auto;padding:0;list-style:none}.rules-list li{padding:12px 14px;border:1px solid rgba(102,76,42,.2);border-radius:8px;background:#fffaeb7a;color:#3a2b1d;font-weight:1000}.rules-matchup{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:center;max-width:720px;width:100%;margin:0 auto;text-align:center}.rules-matchup span,.rules-matchup strong{overflow:hidden;font-family:var(--wa-title-font);font-size:clamp(1.6rem,5vw,3.8rem);line-height:.9;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 0 rgba(255,250,235,.78),3px 3px 0 rgba(82,60,35,.2)}.rules-card>button,.soft-button{min-height:56px;border:2px solid rgba(62,42,23,.28);border-radius:8px;background:linear-gradient(180deg,#fffaeb29,#fffaeb00),linear-gradient(135deg,#5f6c3d,#9aa260);color:#fff9e8;font-weight:1000;box-shadow:0 7px #454d2a7a,0 16px 30px #575b3447}.rules-card>button{width:min(420px,100%);margin:0 auto}.match-menu{position:fixed;top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));z-index:30}.match-menu summary{display:grid;min-width:92px;min-height:44px;place-items:center;border:2px solid rgba(62,42,23,.3);border-radius:8px;background:#f4e8c4f0;color:#4a321d;font-weight:1000;box-shadow:0 8px 22px #402e1933;cursor:pointer;list-style:none}.match-menu summary::-webkit-details-marker{display:none}.match-menu-panel{position:absolute;top:calc(100% + 8px);right:0;display:grid;gap:10px;width:min(92vw,420px);padding:12px;border:2px solid rgba(62,42,23,.28);border-radius:8px;background:#eee0bbf5;box-shadow:0 18px 44px #402e1947}.match-menu-panel .scoreboard{grid-template-columns:1fr;gap:8px;margin:0}.match-menu-panel .score-card{min-height:72px}.match-menu-panel .soft-button{color:#fff9e8}.score-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;min-height:116px;padding:14px;overflow:hidden;border:2px solid rgba(88,60,31,.34);background:linear-gradient(90deg,#fffaeb70,#fffaeb00),repeating-linear-gradient(90deg,rgba(88,60,31,.1) 0 2px,transparent 2px 22px),linear-gradient(135deg,#b99b68,#7f6d43);box-shadow:inset 0 0 0 4px #fff7e02e,0 16px 38px #402e1933}.score-card:before{position:absolute;inset:10px;border:1px solid rgba(255,250,235,.26);content:"";pointer-events:none}.score-card.playerA{background:linear-gradient(90deg,#fffaeb6b,#fffaeb00),repeating-linear-gradient(90deg,rgba(88,60,31,.1) 0 2px,transparent 2px 22px),linear-gradient(135deg,#9da56d,#697548)}.score-card.playerB{background:linear-gradient(90deg,#fffaeb6b,#fffaeb00),repeating-linear-gradient(90deg,rgba(88,60,31,.1) 0 2px,transparent 2px 22px),linear-gradient(135deg,#b79764,#806644)}.score-card.judge{grid-template-columns:minmax(0,1fr) auto;background:linear-gradient(90deg,#fffaeb7a,#fffaeb00),repeating-linear-gradient(90deg,rgba(88,60,31,.08) 0 2px,transparent 2px 22px),linear-gradient(135deg,#d7c69a,#9e8658)}.score-nameplate{position:relative;z-index:1;display:grid;gap:5px;min-width:0}.score-card span,.score-card small,.result-copy span,.history span{color:#5a4326;font-size:.88rem;font-weight:900}.score-card strong{position:relative;z-index:1;display:block;min-width:0;overflow:hidden;color:#2a2118;font-family:var(--wa-title-font);font-size:clamp(1.45rem,3vw,2.6rem);font-weight:1000;line-height:.92;text-overflow:ellipsis;text-shadow:0 2px 0 rgba(255,250,235,.78),3px 3px 0 rgba(82,60,35,.24);white-space:nowrap}.score-card>div:not(.score-nameplate){position:relative;z-index:1;display:grid;justify-items:center;min-width:54px;padding:8px 9px;border:1px solid rgba(62,42,23,.22);border-radius:6px;background:#fffaeb6b}.score-card>div:not(.score-nameplate) strong{font-size:2rem}.score-card small{position:relative;z-index:1;align-self:end}.turn-card{position:relative;display:grid;gap:18px;padding:24px;overflow:hidden;border:2px solid rgba(88,60,31,.34);background:radial-gradient(circle at 50% 28%,rgba(255,250,235,.7),transparent 20rem),repeating-linear-gradient(90deg,rgba(80,96,63,.08) 0 2px,transparent 2px 34px),linear-gradient(180deg,#e4d6a9f0,#ae9c68d1)}.turn-card:before{position:absolute;inset:18px;border:1px solid rgba(255,250,235,.38);content:"";pointer-events:none}.turn-card.playerA{background:radial-gradient(circle at 50% 28%,rgba(255,250,235,.74),transparent 20rem),linear-gradient(135deg,#868e559e,#e8dbb2eb)}.turn-card.playerB{background:radial-gradient(circle at 50% 28%,rgba(255,250,235,.74),transparent 20rem),linear-gradient(135deg,#9d805694,#e8dbb2eb)}.turn-topline{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.turn-phase{min-width:78px;padding:10px 14px;border:2px solid rgba(62,42,23,.3);border-radius:999px;background:#f4e8c4;color:#5a4326;font-family:var(--wa-title-font);font-size:1.35rem;font-weight:1000;line-height:1;text-align:center;box-shadow:3px 4px #583c1f2e}.turn-player-plaque{position:relative;z-index:1;display:flex;align-items:baseline;justify-content:center;gap:12px;padding:16px 18px 10px;border-block:3px solid rgba(88,60,31,.32);color:#241a13;background:#fffaeb57}.turn-player-plaque span{min-width:0;overflow-wrap:anywhere;font-family:var(--wa-title-font);font-size:clamp(2.5rem,7vw,5.8rem);font-weight:1000;line-height:.86;text-align:center;text-shadow:0 2px 0 rgba(255,250,235,.86),4px 5px 0 rgba(82,60,35,.24)}.turn-player-plaque small{color:#6a532e;font-size:1rem;font-weight:1000;white-space:nowrap}.nanko-board{position:relative;z-index:1;justify-self:center;width:min(520px,88vw);aspect-ratio:7 / 11;margin:0 0 4px;padding:18px;border:9px solid #4d3420;border-radius:48px;overflow:hidden;background:linear-gradient(90deg,#fff6db47,#fff6db00 38%),repeating-linear-gradient(90deg,rgba(82,54,28,.13) 0 3px,transparent 3px 34px),linear-gradient(90deg,#b7834a,#e0bf7b 46%,#a86f3b);box-shadow:inset 0 0 0 6px #fff7e038,inset 0 22px 38px #fffaeb33,inset 0 -30px 42px #3d27152e,0 28px 52px #402e1947}.board-surface{position:relative;width:100%;height:100%;border:2px solid rgba(67,43,24,.2);border-radius:34px;background:linear-gradient(90deg,rgba(255,250,235,.26),transparent 34%,rgba(75,48,25,.08)),repeating-linear-gradient(90deg,rgba(75,48,25,.1) 0 2px,transparent 2px 28px),linear-gradient(90deg,#fffaeb14,#4b30190d);box-shadow:inset 0 0 0 4px #fff7e01f,inset 0 0 34px #4b301924}.board-hand{position:absolute;left:50%;display:grid;justify-items:center;color:#2a2118;transform:translate(-50%);opacity:0}.board-hand-top{top:-7%;animation:hand-slide-top .52s cubic-bezier(.16,.84,.32,1) forwards}.board-hand-bottom{bottom:-7%;animation:hand-slide-bottom .52s cubic-bezier(.16,.84,.32,1) forwards}.hand-image{display:block;width:min(420px,82vw);max-height:390px;object-fit:contain;filter:drop-shadow(0 0 2px #1f1711) drop-shadow(0 0 2px #1f1711) drop-shadow(0 0 3px rgba(31,23,17,.72)) drop-shadow(0 14px 10px rgba(61,39,21,.28));transform-origin:center;-webkit-user-select:none;user-select:none}.board-hand-bottom .hand-image{transform:rotate(180deg)}.board-hand.is-waiting{opacity:.42}.result-board{margin:2px auto 8px}.result-board .board-hand-top{animation:hand-exit-top .62s cubic-bezier(.62,0,.42,1) forwards}.result-board .board-hand-bottom{animation:hand-exit-bottom .62s cubic-bezier(.62,0,.42,1) forwards}.board-sticks{position:absolute;inset:0;opacity:0;animation:sticks-reveal .24s ease-out .56s forwards}.board-stick{position:absolute;left:var(--stick-x);top:var(--stick-y);display:block;width:20px;height:132px;border:3px solid rgba(45,27,12,.72);border-radius:3px;background:linear-gradient(90deg,rgba(255,232,184,.2),transparent 32%,rgba(34,20,9,.25)),linear-gradient(180deg,#8a5425,#4a2a12 62%,#2d180b);box-shadow:inset -4px 0 #23140947,inset 3px 0 #c684422e,5px 7px #2d1b0c33,0 13px 18px #2d1b0c33;transform:translate(-50%,-50%) rotate(var(--stick-rotate));transform-origin:center}.turn-card h2,.result-copy h2,.history h2{margin:0;font-family:var(--wa-title-font);font-size:clamp(2.2rem,5.4vw,4.1rem);line-height:.98;text-shadow:0 2px 0 rgba(255,250,235,.86),4px 4px 0 rgba(109,86,47,.28)}.turn-card p,.result-copy p{margin:0;color:#2c261cc7;font-size:1.05rem;font-weight:900}.nanko-table{position:relative;z-index:1;display:grid;gap:16px;padding:20px;border:3px solid rgba(69,44,24,.32);border-radius:8px;background:radial-gradient(ellipse at center,rgba(255,250,235,.42),transparent 58%),repeating-linear-gradient(90deg,rgba(83,58,31,.15) 0 2px,transparent 2px 30px),linear-gradient(135deg,#b28d58,#745437);box-shadow:inset 0 0 0 5px #fffaeb29,inset 0 24px 48px #fffaeb1f,0 20px 46px #402e1938}.nanko-table p{width:fit-content;margin:0 auto;padding:7px 14px;border-radius:999px;background:#fffaebb8;color:#4a321d;box-shadow:2px 3px #402e192e}.grip-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.grip-button{display:grid;gap:5px;min-height:76px;padding:10px;border:2px solid rgba(62,42,23,.28);border-radius:8px;background:linear-gradient(180deg,#fffaeba3,#e4c58e94),#d6af72;color:#2a2118;box-shadow:0 8px #533a1f3d;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.grip-button:hover,.grip-button.is-selected{transform:translateY(-2px);filter:saturate(1.06);box-shadow:0 11px #533a1f42}.grip-button.is-selected{border-color:#291c109e;background:linear-gradient(180deg,#fffaebb3,#7e8b518f),#d6af72}.grip-button:disabled,.grip-button.is-disabled{cursor:not-allowed;opacity:.42;transform:none;filter:grayscale(.55);box-shadow:0 4px #533a1f2e}.grip-button span{font-size:1rem;font-weight:1000}.grip-button small{color:#2a2118b3;font-size:.78rem;font-weight:900}.pick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pick-card{display:grid;gap:8px;justify-items:center;min-height:158px;padding:15px 10px 13px;border:2px solid rgba(62,42,23,.34);border-radius:8px;color:#241a13;background:linear-gradient(90deg,#fffaeb4d,#fffaeb00),repeating-linear-gradient(90deg,rgba(73,47,25,.12) 0 2px,transparent 2px 16px),linear-gradient(180deg,#e4c98f,#a77a45);box-shadow:inset 0 0 0 3px #fffaeb2e,0 12px #533a1f47,0 18px 30px #402e192e;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.pick-card:hover,.pick-card.is-selected{transform:translateY(-4px);filter:saturate(1.08) contrast(1.05);box-shadow:inset 0 0 0 3px #fffaeb3d,0 16px #533a1f4d,0 26px 38px #402e193d}.pick-card:disabled,.pick-card.is-disabled{cursor:not-allowed;opacity:.42;transform:none;filter:grayscale(.55);box-shadow:inset 0 0 0 3px #fffaeb1f,0 6px #533a1f33,0 12px 20px #402e191f}.pick-card.is-selected{border-color:#291c109e;background:linear-gradient(90deg,#fffaeb5c,#fffaeb00),repeating-linear-gradient(90deg,rgba(73,47,25,.12) 0 2px,transparent 2px 16px),linear-gradient(180deg,#f0d696,#7d8b51)}.pick-card strong{font-size:2.5rem;line-height:1;font-family:var(--wa-title-font);text-shadow:0 2px 0 rgba(255,250,235,.8),3px 3px 0 rgba(82,60,35,.24)}.nanko-table.is-guess .pick-card{align-content:center;min-height:112px;padding-block:12px}.turn-card.is-guess .nanko-board{width:min(560px,90vw)}.reading-call{display:grid;place-items:center;min-height:2.4em;color:#4a321d;font-size:clamp(.74rem,1.6vw,.95rem);font-weight:1000;line-height:1.12;text-align:center;word-break:keep-all;overflow-wrap:anywhere}.stick-stack{display:flex;align-items:end;justify-content:center;gap:8px;min-height:52px}.stick-stack span{display:block;width:12px;height:50px;border:2px solid rgba(102,76,42,.56);border-radius:999px;background:#fffaeb73;transform:rotate(-6deg)}.stick-stack span:nth-child(2){transform:rotate(5deg)}.stick-stack span:nth-child(3){transform:rotate(-1deg)}.stick-stack .is-on{background:linear-gradient(180deg,#d8c99d,#6f7b4b)}.stick-stack.is-hidden .is-on{background:repeating-linear-gradient(45deg,#17120f 0 5px,#e5c68b 5px 10px)}.turn-actions,.result-actions{position:relative;z-index:1;display:flex;gap:12px;align-items:center;justify-content:space-between}.turn-actions span{color:#2c261cad;font-weight:900}.turn-actions button,.result-actions button{min-height:58px;padding:0 26px;border:2px solid rgba(62,42,23,.28);border-radius:8px;background:linear-gradient(180deg,#fffaeb29,#fffaeb00),linear-gradient(135deg,#5f6c3d,#9aa260);color:#fff9e8;font-weight:1000;box-shadow:0 7px #454d2a7a,0 16px 30px #575b3447}.result-actions .soft-button{background:#fffaeb73;color:#2c261c}.result-stage{position:relative;display:grid;gap:18px;padding:24px;overflow:hidden;border:2px solid rgba(88,60,31,.34);background:radial-gradient(circle at 50% 18%,rgba(255,250,235,.66),transparent 20rem),repeating-linear-gradient(90deg,rgba(80,96,63,.08) 0 2px,transparent 2px 34px),linear-gradient(180deg,#e4d6a9f0,#ae9c68d1)}.result-stage.player{background:radial-gradient(circle at 50% 18%,rgba(255,250,235,.66),transparent 20rem),linear-gradient(135deg,#868e5599,#e8dbb2eb)}.result-stage.judge{background:radial-gradient(circle at 50% 18%,rgba(255,250,235,.66),transparent 20rem),linear-gradient(135deg,#9d805694,#e8dbb2eb)}.result-stage.draw{background:radial-gradient(circle at 50% 18%,rgba(255,250,235,.66),transparent 20rem),linear-gradient(135deg,#75714f7a,#e8dbb2eb)}.result-copy{position:relative;z-index:1;display:grid;justify-items:center;gap:8px;padding:8px 0 2px;text-align:center}.result-score-status{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-score-status div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 12px;border:1px solid rgba(102,76,42,.22);border-radius:8px;background:#fffaeb80}.result-score-status span,.result-score-status em{color:#6a532e;font-size:.86rem;font-style:normal;font-weight:1000}.result-score-status strong{overflow:hidden;color:#241a13;font-family:var(--wa-title-font);font-size:clamp(1.25rem,3vw,2.4rem);line-height:.92;text-overflow:ellipsis;white-space:nowrap}.reveal-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.drink-overlay{position:fixed;inset:0!important;z-index:999;display:grid;place-items:center;width:100vw!important;height:100vh!important;margin:0;padding:28px max(28px,env(safe-area-inset-right)) 28px max(28px,env(safe-area-inset-left));border:0;border-radius:0;appearance:none;cursor:pointer;background:#160e0800;animation:drink-overlay-dim .42s ease-out 2.45s forwards}.drink-overlay-text{width:min(1040px,calc(100vw - 56px));display:grid;justify-items:center;gap:.18em;color:#fff3cf;font-family:var(--wa-title-font);font-weight:1000;line-height:.88;text-align:center;pointer-events:none;opacity:0;transform:scale(.62) rotate(-2deg);animation:drink-call-pop .9s cubic-bezier(.16,.84,.32,1) 2.75s forwards;text-shadow:0 5px 0 #5b1d12,8px 9px 0 rgba(136,66,25,.7),0 0 26px rgba(255,236,172,.5),0 28px 56px rgba(0,0,0,.6)}.drink-overlay-text span{max-width:100%;font-size:clamp(2.4rem,7.2vw,6.2rem);white-space:nowrap}.drink-overlay-text strong{display:block;max-width:100%;font-size:clamp(3.2rem,9.2vw,8rem);line-height:.88;white-space:nowrap}.winner-overlay{animation-delay:.55s}.winner-overlay-text{color:#fff6d6;animation-delay:.9s;text-shadow:0 5px 0 #503a12,8px 9px 0 rgba(129,90,25,.72),0 0 30px rgba(255,229,129,.68),0 28px 56px rgba(0,0,0,.6)}.winner-overlay-text span{font-size:clamp(2.8rem,8.2vw,7.1rem)}.winner-overlay-text strong{font-size:clamp(2.8rem,8vw,7rem)}.reveal-card{display:grid;gap:14px;padding:18px;border:2px solid rgba(62,42,23,.3);border-radius:8px;background:linear-gradient(90deg,#fffaeb61,#fffaeb00),repeating-linear-gradient(90deg,rgba(73,47,25,.1) 0 2px,transparent 2px 20px),linear-gradient(180deg,#e4c98f,#b98e54);box-shadow:inset 0 0 0 4px #fffaeb24,0 16px 34px #402e192e}.reveal-card.playerA{background:linear-gradient(90deg,#fffaeb61,#fffaeb00),repeating-linear-gradient(90deg,rgba(73,47,25,.1) 0 2px,transparent 2px 20px),linear-gradient(180deg,#d9c88e,#87915b)}.reveal-card.playerB{background:linear-gradient(90deg,#fffaeb61,#fffaeb00),repeating-linear-gradient(90deg,rgba(73,47,25,.1) 0 2px,transparent 2px 20px),linear-gradient(180deg,#e0c589,#9b7047)}.reveal-card strong{color:#241a13;font-family:var(--wa-title-font);font-size:clamp(1.8rem,4vw,3.2rem);line-height:.92;text-shadow:0 2px 0 rgba(255,250,235,.78),3px 3px 0 rgba(82,60,35,.2)}.reveal-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.reveal-card div{padding:10px;border:1px solid rgba(102,76,42,.2);border-radius:8px;background:#fffaeb70}.reveal-card dt{color:#6a532e;font-size:.85rem;font-weight:900}.reveal-card dd{margin:0;font-size:1.7rem;font-weight:1000;font-family:var(--wa-title-font);text-shadow:2px 2px 0 rgba(255,250,235,.72)}.history{margin-top:18px;padding:18px;background:#f1e5c394}.history h2{margin-bottom:12px;font-size:1.35rem}.history p{margin:0;color:#2c261cad;font-weight:800}.history ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}.history li{display:grid;gap:4px;padding:12px;border:1px solid rgba(102,76,42,.18);border-radius:8px;background:#fffaeb73}@media(max-width:780px),(hover:none)and (pointer:coarse){.app-shell{width:min(100% - 12px,1120px);padding:6px 0 24px}.app-shell.is-match{width:min(100% - 8px,1120px);height:100svh;min-height:100svh;overflow:hidden;padding:4px 0}.hero,.scoreboard,.setup-input-row,.order-display,.order-actions,.match-length-panel,.score-card,.result-score-status,.reveal-grid{grid-template-columns:1fr}.hero{min-height:220px;padding:20px}.intro-card{min-height:calc(100svh - 12px);gap:18px;padding:22px 16px}.intro-mark{width:min(150px,44vw)}.intro-copy h1{font-size:clamp(2.4rem,14vw,4.1rem)}.scoreboard{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 0 6px}.score-card{min-height:54px;padding:7px;border-width:1px;grid-template-columns:1fr;gap:4px}.score-card.judge{grid-template-columns:1fr}.score-card>div:not(.score-nameplate){min-width:0;padding:4px}.score-card span,.score-card small{font-size:.64rem}.score-card strong{font-size:clamp(1rem,5.8vw,1.65rem)}.score-card.judge small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rules-card{min-height:calc(100svh - 8px);gap:12px;padding:14px}.rules-title{gap:4px}.rules-title h2{font-size:clamp(2rem,13vw,3.2rem)}.rules-list{gap:7px}.rules-list li{padding:8px 10px;font-size:.82rem;line-height:1.28}.rules-matchup{gap:8px}.rules-matchup span,.rules-matchup strong{font-size:clamp(1.3rem,8vw,2.3rem)}.rules-card>button{min-height:48px}.match-menu summary{min-width:76px;min-height:38px;font-size:.8rem}.match-menu-panel{width:min(94vw,340px);padding:8px}.match-menu-panel .score-card{min-height:58px}.turn-card,.result-stage{gap:7px;padding:8px}.turn-card{height:calc(100svh - 8px);grid-template-rows:auto auto minmax(0,1fr) auto auto;overflow:hidden}.turn-card.is-guess{grid-template-rows:auto auto minmax(0,1fr) auto auto}.result-stage{max-height:calc(100svh - 8px);overflow:auto}.result-stage .result-board{display:none}.turn-card:before{inset:8px}.turn-topline{gap:8px}.turn-kicker{padding:4px 8px;font-size:.66rem}.turn-phase{min-width:52px;padding:6px 8px;font-size:.92rem}.turn-player-plaque{padding:7px 8px 5px;border-block-width:2px}.turn-player-plaque span{font-size:clamp(1.75rem,10vw,3rem)}.turn-player-plaque small{font-size:.78rem}.turn-card p,.result-copy p,.turn-actions span{font-size:.72rem}.pick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.pick-card{min-height:74px;padding:7px 4px 6px;border-width:1px}.nanko-table.is-guess .pick-card{min-height:50px;padding:5px 4px}.pick-card strong{font-size:1.55rem}.reading-call{min-height:1.35em;font-size:.54rem;line-height:1.02}.stick-stack{min-height:26px;gap:3px}.stick-stack span{width:7px;height:25px}.reveal-card dl{grid-template-columns:1fr}.grip-selector{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.grip-button{min-height:44px;padding:6px 4px;border-width:1px}.grip-button span{font-size:.7rem}.grip-button small{display:none}.nanko-board{align-self:center;height:100%;max-height:100%;width:auto;max-width:min(218px,54vw);padding:5px;border-width:5px;border-radius:24px}.turn-card.is-guess .nanko-board{max-width:min(248px,60vw)}.board-hand{width:calc(100% + 22px);height:54%;margin-left:-11px;overflow:hidden}.board-hand-top{top:-5px}.board-hand-bottom{bottom:-5px}.board-surface{border-radius:16px}.hand-image{position:absolute;left:50%;width:min(176px,48vw);max-height:none;transform:translate(-50%)}.turn-card.is-guess .hand-image{width:min(190px,52vw);max-height:none}.board-hand-top .hand-image{bottom:-2%}.board-hand-bottom .hand-image{top:-2%;transform:translate(-50%) rotate(180deg)}.board-hand-top.is-flat .hand-image{bottom:8%}.board-hand-bottom.is-flat .hand-image{top:8%}.board-stick{width:13px;height:88px;border-width:2px}.nanko-table{gap:6px;padding:7px;border-width:2px}.nanko-table.is-guess{gap:5px;padding:6px}.nanko-table p{padding:5px 10px;font-size:.82rem}.reveal-grid{gap:10px}.reveal-card{gap:10px;padding:12px}.reveal-card strong{font-size:clamp(1.6rem,8vw,2.5rem)}.turn-actions,.result-actions{align-items:stretch;flex-direction:column}.turn-actions button,.result-actions button{min-height:46px;width:100%}.turn-actions{gap:6px}.result-score-status{gap:7px}.result-score-status div{padding:7px 9px}.result-score-status strong{font-size:1.45rem}}@keyframes order-roll-shake{0%{transform:translate(-2px);filter:brightness(1)}50%{transform:translate(2px);filter:brightness(1.08)}to{transform:translate(0);filter:brightness(1)}}@keyframes hand-slide-top{0%{opacity:0;transform:translate(-50%,-42%)}to{opacity:1;transform:translate(-50%)}}@keyframes hand-slide-bottom{0%{opacity:0;transform:translate(-50%,42%)}to{opacity:1;transform:translate(-50%)}}@keyframes hand-exit-top{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-58%)}}@keyframes hand-exit-bottom{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,58%)}}@keyframes sticks-reveal{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes drink-call-pop{0%{opacity:0;transform:scale(.62) rotate(-2deg)}58%{opacity:1;transform:scale(1.08) rotate(1deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes drink-overlay-dim{0%{background:#160e0800}to{background:#160e0894}}
