:root{color-scheme:light;--paper: #f2eada;--paper-bright: #fffaf0;--ink: #28241e;--ink-soft: #625b50;--rule: #b9aa91;--red: #e74735;--green: #278a61;--yellow: #e9ad27;--blue: #3274b9;--shadow: 0 18px 0 rgba(73, 60, 41, .1), 0 28px 55px rgba(66, 50, 30, .18);font-family:Arial Narrow,Avenir Next Condensed,Roboto Condensed,ui-sans-serif,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}html{min-height:100%;background:var(--paper)}body{min-width:320px;min-height:100%;margin:0;color:var(--ink);background:repeating-linear-gradient(0deg,transparent 0 34px,rgba(67,55,39,.025) 34px 35px),var(--paper)}body:before{position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 15% 10%,rgba(231,71,53,.1) 0 11%,transparent 11.2%),radial-gradient(circle at 91% 86%,rgba(50,116,185,.1) 0 14%,transparent 14.2%);content:"";pointer-events:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button:focus-visible,a:focus-visible,input:focus-visible+span,canvas:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.game-shell{width:min(1320px,100%);margin:0 auto;padding:20px clamp(16px,3vw,42px) 38px}.game-bar{display:flex;align-items:center;justify-content:space-between;min-height:64px;margin-bottom:22px;border-bottom:2px solid var(--ink)}.brand{display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{display:grid;width:39px;height:39px;overflow:hidden;grid-template-columns:1fr 1fr;border:2px solid var(--ink);transform:rotate(-3deg)}.brand-mark i:nth-child(1){background:var(--red)}.brand-mark i:nth-child(2){background:var(--green)}.brand-mark i:nth-child(3){background:var(--blue)}.brand-mark i:nth-child(4){background:var(--yellow)}.brand strong{display:block;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:25px;line-height:.88;letter-spacing:.08em}.brand small,.section-heading small,.dialog-card header small,.winner-card>small{display:block;margin-top:5px;color:var(--ink-soft);font-size:9px;font-weight:900;letter-spacing:.18em}.game-actions{display:flex;align-self:stretch}.tool-button{display:inline-flex;min-width:82px;align-items:center;justify-content:center;gap:7px;border:0;border-left:1px solid var(--rule);background:transparent;cursor:pointer;font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.tool-button:hover{background:#fffaf08c}.tool-button svg,.roll-button svg{width:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.tool-button .sound-off,.tool-button[aria-pressed=false] .sound-on{display:none}.tool-button[aria-pressed=false] .sound-off{display:block}.game-layout{display:grid;grid-template-columns:minmax(0,840px) minmax(270px,340px);justify-content:center;gap:clamp(24px,4vw,58px);align-items:start}.play-table{min-width:0}.turn-ribbon{--player-color: var(--red);--player-light: #f8c7b7;position:relative;display:grid;width:min(100%,820px);min-height:56px;margin:0 auto 11px;padding:9px 14px 9px 16px;grid-template-columns:12px minmax(0,1fr) auto auto;align-items:center;gap:12px;border:2px solid var(--ink);background:var(--paper-bright);box-shadow:4px 4px 0 var(--player-color)}.turn-swatch{width:12px;height:31px;background:var(--player-color)}.turn-ribbon p{margin:0}.turn-ribbon p small{display:block;color:var(--ink-soft);font-size:8px;font-weight:900;letter-spacing:.17em}.turn-ribbon p strong{display:block;margin-top:2px;font-family:Georgia,Times New Roman,serif;font-size:20px;line-height:1}.turn-progress{padding:7px 9px;border-left:1px solid var(--rule);color:var(--ink-soft);font-size:11px;font-weight:800}.turn-timer{display:grid;min-width:48px;min-height:38px;place-items:center;align-content:center;border:1px solid var(--rule);background:#e8dfcf;line-height:1}.turn-timer small{color:var(--ink-soft);font-size:7px;font-weight:900;letter-spacing:.12em}.turn-timer b{margin-top:2px;font-family:Georgia,Times New Roman,serif;font-size:17px}.turn-timer.is-running{border-color:var(--ink);background:var(--paper-bright)}.turn-timer.is-urgent{background:var(--red);color:#fff;animation:timer-pulse .75s ease-in-out infinite alternate}.turn-timer.is-urgent small{color:#fff}@keyframes timer-pulse{to{transform:scale(1.05)}}.board-frame{position:relative;width:min(100%,820px);aspect-ratio:1;margin:0 auto;padding:clamp(5px,1vw,9px);border:2px solid var(--ink);background:#d7c8ad;box-shadow:var(--shadow)}canvas{display:block;width:100%;height:100%;background:var(--paper-bright);cursor:pointer;touch-action:manipulation}.board-dice{position:absolute;z-index:4;width:64px;height:72px;pointer-events:none;transform-origin:center;will-change:transform,opacity}.board-dice[hidden]{display:none}.board-dice .board-dice-face{position:relative;top:0;left:0;z-index:2;box-shadow:3px 4px 0 var(--yellow),0 9px 15px #28241e3d}.board-dice-shadow{position:absolute;right:5px;bottom:0;left:5px;z-index:1;height:12px;border-radius:50%;background:#28241e9e;filter:blur(4px);transform:scaleX(.9)}.command-deck{position:relative;display:grid;width:min(94%,720px);min-height:90px;margin:-1px auto 0;padding:12px;grid-template-columns:68px minmax(0,1fr) 135px;align-items:center;gap:14px;border:2px solid var(--ink);background:var(--paper-bright);box-shadow:7px 8px #28241e21}.dice-stage{position:relative;width:68px;height:70px;perspective:360px}.dice-stage .dice,.dice-stage .dice-shadow{transition:opacity .1s ease,transform .16s ease}.dice-stage.is-away .dice{opacity:0;transform:translateY(-14px) rotate(12deg) scale(.72)}.dice-stage.is-away .dice-shadow{opacity:0;transform:scaleX(.3)}.dice-shadow{position:absolute;right:7px;bottom:1px;left:7px;height:12px;border-radius:50%;background:#28241e3d;filter:blur(3px);transform:scaleX(.78);transform-origin:center}.dice{position:absolute;top:0;left:2px;display:grid;width:64px;height:64px;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:9px;border:2px solid var(--ink);background:#fffdf7;box-shadow:4px 4px 0 var(--yellow);transform:rotate(-2deg);transform-origin:50% 65%;will-change:transform,filter}.dice:after{position:absolute;inset:3px;border-top:2px solid rgba(255,255,255,.85);border-left:2px solid rgba(255,255,255,.7);content:"";pointer-events:none}.dice i{display:none;width:8px;height:8px;place-self:center;border-radius:50%;background:var(--ink)}.dice i:nth-child(1){grid-area:1 / 1}.dice i:nth-child(2){grid-area:1 / 2}.dice i:nth-child(3){grid-area:1 / 3}.dice i:nth-child(4){grid-area:2 / 1}.dice i:nth-child(5){grid-area:2 / 2}.dice i:nth-child(6){grid-area:2 / 3}.dice i:nth-child(7){grid-area:3 / 1}.dice i:nth-child(8){grid-area:3 / 2}.dice i:nth-child(9){grid-area:3 / 3}.dice[data-value="1"] i:nth-child(5),.dice[data-value="2"] i:nth-child(1),.dice[data-value="2"] i:nth-child(9),.dice[data-value="3"] i:nth-child(1),.dice[data-value="3"] i:nth-child(5),.dice[data-value="3"] i:nth-child(9),.dice[data-value="4"] i:nth-child(1),.dice[data-value="4"] i:nth-child(3),.dice[data-value="4"] i:nth-child(7),.dice[data-value="4"] i:nth-child(9),.dice[data-value="5"] i:nth-child(1),.dice[data-value="5"] i:nth-child(3),.dice[data-value="5"] i:nth-child(5),.dice[data-value="5"] i:nth-child(7),.dice[data-value="5"] i:nth-child(9),.dice[data-value="6"] i:nth-child(1),.dice[data-value="6"] i:nth-child(3),.dice[data-value="6"] i:nth-child(4),.dice[data-value="6"] i:nth-child(6),.dice[data-value="6"] i:nth-child(7),.dice[data-value="6"] i:nth-child(9){display:block}.turn-copy{min-width:0}.turn-copy strong{display:block;overflow:hidden;font-family:Georgia,Times New Roman,serif;font-size:clamp(16px,2vw,21px);line-height:1.12;text-overflow:ellipsis;white-space:nowrap}.turn-copy span{display:-webkit-box;overflow:hidden;margin-top:4px;color:var(--ink-soft);font-size:11px;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.roll-button{display:flex;min-height:52px;align-items:center;justify-content:center;gap:9px;border:2px solid var(--ink);background:var(--ink);color:var(--paper-bright);box-shadow:4px 4px 0 var(--red);cursor:pointer;font-weight:900;letter-spacing:.04em;text-transform:uppercase;transition:transform .12s ease,box-shadow .12s ease}.roll-button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--red)}.roll-button:active:not(:disabled){transform:translate(3px,3px);box-shadow:1px 1px 0 var(--red)}.roll-button:disabled{border-color:var(--rule);background:#d9d0bf;box-shadow:none;color:#8d8272;cursor:not-allowed}.move-picker{display:none;width:min(94%,720px);min-height:52px;margin:8px auto 0;align-items:center;justify-content:center;gap:8px}.move-picker.is-visible{display:flex}.move-picker>span{margin-right:4px;color:var(--ink-soft);font-size:9px;font-weight:900;letter-spacing:.15em}.token-button,.text-action{border:0;border-bottom:2px solid var(--ink);background:transparent;cursor:pointer;font-size:12px;font-weight:850}.token-button{min-height:40px;padding:0 12px;border:2px solid var(--ink);background:var(--paper-bright);box-shadow:3px 3px 0 var(--yellow)}.match-panel{position:sticky;top:18px;border-top:7px solid var(--ink)}.panel-section{padding:20px 0 22px;border-bottom:1px solid var(--rule)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:16px}.section-heading small{margin-top:0}.section-heading h2,.dialog-card h2{margin:2px 0 0;font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:700;letter-spacing:-.035em}.text-action{padding:5px 0;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.players-list{display:grid}.player-entry{--player-color: var(--red);display:grid;min-height:61px;padding:8px 5px;grid-template-columns:23px 11px minmax(0,1fr) auto;align-items:center;gap:10px;border-top:1px solid var(--rule);transition:padding .15s ease,background .15s ease}.player-entry:last-child{border-bottom:1px solid var(--rule)}.player-entry.is-active{padding-left:10px;background:var(--paper-bright);box-shadow:inset 5px 0 0 var(--player-color)}.player-index{color:var(--ink-soft);font-size:9px;font-weight:900}.player-dot{width:11px;height:11px;border:2px solid var(--ink);border-radius:50%;background:var(--player-color)}.player-name strong,.player-name small{display:block}.player-name strong{font-family:Georgia,Times New Roman,serif;font-size:15px}.player-name small{margin-top:2px;color:var(--ink-soft);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.player-score b{font-family:Georgia,Times New Roman,serif;font-size:21px}.player-score small{color:var(--ink-soft);font-size:10px}.game-log{display:grid;max-height:245px;margin:0;padding:0;gap:0;overflow:auto;list-style:none}.game-log li{display:grid;padding:9px 0;grid-template-columns:26px 1fr;gap:9px;border-top:1px dotted var(--rule)}.game-log li>span{color:var(--ink-soft);font-size:9px;font-weight:900}.game-log p{margin:0;color:var(--ink-soft);font-size:11px;line-height:1.35}.table-note{margin:16px 0 0;color:var(--ink-soft);font-family:Georgia,Times New Roman,serif;font-size:12px;font-style:italic;line-height:1.45}dialog{border:0}dialog::backdrop{background:#28241eb8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet-dialog{width:min(560px,calc(100% - 28px));max-height:calc(100dvh - 28px);margin:auto;padding:0;overflow:visible;background:transparent}.dialog-card{margin:0;padding:clamp(19px,4vw,32px);border:3px solid var(--ink);background:var(--paper);box-shadow:11px 11px 0 var(--yellow)}.dialog-card>header{display:flex;align-items:start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:2px solid var(--ink)}.dialog-card header small{margin-top:0}.close-button{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:2px solid var(--ink);background:var(--paper-bright);cursor:pointer;font-family:Georgia,serif;font-size:25px;line-height:1}fieldset{margin:22px 0 0;padding:0;border:0}fieldset:disabled{opacity:.38}legend{margin-bottom:10px;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.choice-card,.count-picker label{position:relative;cursor:pointer}.choice-card input,.count-picker input{position:absolute;opacity:0;pointer-events:none}.choice-card>span{display:block;min-height:78px;padding:13px;border:2px solid var(--rule);background:#fffaf080}.choice-card input:checked+span{border-color:var(--ink);background:var(--paper-bright);box-shadow:4px 4px 0 var(--red)}.choice-card strong,.choice-card small{display:block}.choice-card strong{font-family:Georgia,Times New Roman,serif;font-size:15px}.choice-card small{margin-top:5px;color:var(--ink-soft);font-size:10px;line-height:1.3}.count-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.count-picker span{display:grid;min-height:47px;place-items:center;border:2px solid var(--rule);background:#fffaf080;font-family:Georgia,serif;font-size:18px;font-weight:700}.count-picker input:checked+span{border-color:var(--ink);background:var(--paper-bright);box-shadow:3px 3px 0 var(--blue)}.optional-label{margin-left:5px;color:var(--ink-soft);font-size:8px;font-weight:650;letter-spacing:0;text-transform:none}.profile-picker{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px}.profile-preview{display:grid;width:54px;height:54px;overflow:hidden;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--red);box-shadow:3px 3px 0 var(--yellow);color:#fff;font-family:Georgia,serif;font-size:14px;font-weight:700}.profile-preview img{width:100%;height:100%;object-fit:cover}.profile-upload{position:relative;display:flex;min-height:54px;align-items:center;cursor:pointer}.profile-upload input{position:absolute;width:1px;height:1px;opacity:0}.profile-upload strong,.profile-upload small{display:block}.profile-upload strong{width:max-content;border-bottom:2px solid var(--ink);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.profile-upload small{margin-top:5px;color:var(--ink-soft);font-size:9px}.profile-remove{padding:5px 0;border:0;border-bottom:1px solid var(--red);background:transparent;color:var(--red);cursor:pointer;font-size:9px;font-weight:850;text-transform:uppercase}.start-button{display:flex;width:100%;min-height:58px;margin-top:25px;padding:0 18px;align-items:center;justify-content:space-between;border:2px solid var(--ink);background:var(--ink);box-shadow:5px 5px 0 var(--red);color:var(--paper-bright);cursor:pointer}.start-button span{color:#cfc4b1;font-family:Georgia,serif;font-size:12px;font-style:italic}.start-button b{font-size:12px;letter-spacing:.09em;text-transform:uppercase}.rules-list{margin:10px 0 0;padding:0;list-style:none}.rules-list li{display:grid;padding:14px 0;grid-template-columns:38px 1fr;gap:10px;border-bottom:1px solid var(--rule)}.rules-list li>b{color:var(--red);font-family:Georgia,serif;font-size:14px}.rules-list p{margin:0}.rules-list strong,.rules-list span{display:block}.rules-list strong{font-family:Georgia,serif;font-size:14px}.rules-list span{margin-top:3px;color:var(--ink-soft);font-size:11px;line-height:1.35}.rules-close{justify-content:center}.winner-dialog{width:min(440px,calc(100% - 30px));margin:auto;padding:0;overflow:visible;background:transparent}.winner-card{padding:38px 26px 30px;border:3px solid var(--ink);background:var(--paper-bright);box-shadow:10px 10px 0 var(--yellow);text-align:center}.winner-burst{display:grid;width:76px;height:76px;margin:0 auto 21px;grid-template-columns:1fr 1fr;overflow:hidden;border:3px solid var(--ink);border-radius:50%;transform:rotate(8deg)}.winner-burst i:nth-child(1){background:var(--red)}.winner-burst i:nth-child(2){background:var(--green)}.winner-burst i:nth-child(3){background:var(--blue)}.winner-burst i:nth-child(4){background:var(--yellow)}.winner-card h2{margin:7px 0;font-family:Georgia,serif;font-size:clamp(30px,8vw,42px);letter-spacing:-.045em}.winner-card p{margin:0;color:var(--ink-soft);font-family:Georgia,serif;font-size:14px;line-height:1.5}.winner-card .start-button{justify-content:center}.toast{position:fixed;bottom:max(18px,env(safe-area-inset-bottom));left:50%;z-index:20;max-width:calc(100% - 32px);padding:12px 16px;border:2px solid var(--ink);background:var(--paper-bright);box-shadow:4px 4px 0 var(--green);font-size:11px;font-weight:850;opacity:0;pointer-events:none;transform:translate(-50%,16px);transition:opacity .18s ease,transform .18s ease}.toast.is-visible{opacity:1;transform:translate(-50%)}@media(max-width:900px){.game-shell{padding-inline:12px}.game-layout{grid-template-columns:minmax(0,700px)}.match-panel{position:static;display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top-width:4px}.table-note{display:none}}@media(max-width:620px){body{background:var(--paper)}.game-shell{min-height:100svh;padding:max(8px,env(safe-area-inset-top)) 8px max(12px,env(safe-area-inset-bottom))}.game-bar{min-height:43px;margin:0 2px 8px}.brand{gap:7px}.brand-mark{width:28px;height:28px}.brand strong{font-size:18px}.brand small{display:none}.tool-button{min-width:43px;padding:0;border-left:0}.tool-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tool-button svg{width:19px}.game-layout{display:block}.turn-ribbon{min-height:45px;margin-bottom:7px;padding:6px 9px;grid-template-columns:8px minmax(0,1fr) auto auto;gap:8px;box-shadow:3px 3px 0 var(--player-color)}.turn-swatch{width:8px;height:25px}.turn-ribbon p strong{font-size:16px}.turn-progress{padding:5px 6px;font-size:9px}.turn-timer{min-width:38px;min-height:31px}.turn-timer small{font-size:6px}.turn-timer b{font-size:14px}.board-frame{width:min(100%,calc(100svh - 248px));min-width:min(100%,268px);padding:4px;box-shadow:0 8px #493c291a,0 16px 25px #42321e24}.command-deck{width:calc(100% - 14px);min-height:75px;padding:8px;grid-template-columns:53px minmax(0,1fr) 96px;gap:8px;box-shadow:4px 5px #28241e21}.dice{width:50px;height:50px;padding:7px;box-shadow:3px 3px 0 var(--yellow)}.dice-stage{width:53px;height:56px}.board-dice{width:50px;height:57px}.board-dice-shadow{height:9px}.dice-shadow{right:5px;left:5px;height:9px}.dice i{width:6px;height:6px}.turn-copy strong{font-size:14px}.turn-copy span{margin-top:2px;font-size:9px}.roll-button{min-height:48px;gap:5px;font-size:11px;box-shadow:3px 3px 0 var(--red)}.roll-button svg{width:17px}.move-picker{width:100%;min-height:44px;margin-top:5px;overflow-x:auto;justify-content:start;padding:0 4px 4px}.move-picker>span{position:sticky;left:0;padding:10px 5px;background:var(--paper)}.token-button{min-width:74px;min-height:38px;flex:0 0 auto;padding:0 8px}.match-panel{display:block;margin-top:10px;border-top:0}.match-panel .section-heading,.log-section,.table-note{display:none}.panel-section{padding:0;border:0}.players-list{display:grid;grid-template-columns:repeat(var(--player-count, 4),minmax(0,1fr));gap:4px}.player-entry{min-height:39px;padding:5px 4px;grid-template-columns:7px minmax(0,1fr) auto;gap:5px;border:1px solid var(--rule)}.player-entry:last-child{border-bottom:1px solid var(--rule)}.player-entry.is-active{padding-left:4px;border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--player-color)}.player-index{display:none}.player-dot{width:7px;height:19px;border:0;border-radius:0}.player-name strong{overflow:hidden;font-family:inherit;font-size:9px;font-weight:900;text-overflow:ellipsis;text-transform:uppercase}.player-name small,.player-score small{display:none}.player-score b{font-size:14px}.sheet-dialog{width:100%;max-width:none;max-height:calc(100dvh - 10px);margin:auto 0 0}.dialog-card{max-height:calc(100dvh - 10px);padding:19px 16px max(18px,env(safe-area-inset-bottom));overflow:auto;border-width:3px 0 0;box-shadow:none}.dialog-card>header{padding-bottom:14px}.dialog-card h2{font-size:22px}fieldset{margin-top:17px}.choice-card>span{min-height:70px;padding:10px}.start-button{margin-top:19px}.profile-picker{grid-template-columns:50px minmax(0,1fr) auto}.rules-list li{padding:11px 0}}.home-screen{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) clamp(14px,4vw,48px) max(24px,env(safe-area-inset-bottom));overflow-x:hidden}.home-masthead{display:grid;width:min(1180px,100%);min-height:68px;margin:0 auto;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:2px solid var(--ink)}.home-edition{font-size:9px;font-weight:900;letter-spacing:.2em}.home-brand{justify-self:center}.home-sound-button{justify-self:end;min-height:34px;padding:0;border:0;border-bottom:2px solid var(--ink);background:transparent;cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.home-stage{width:min(1180px,100%);margin:0 auto}.home-loading{display:grid;min-height:min(620px,calc(100svh - 110px));place-content:center;justify-items:center;gap:15px}.home-loading span{width:38px;height:38px;border:5px solid var(--rule);border-top-color:var(--red);animation:home-loader .7s steps(8) infinite}.home-loading p{margin:0;font-family:Georgia,Times New Roman,serif;font-size:15px}@keyframes home-loader{to{transform:rotate(360deg)}}.identity-gate{position:relative;display:grid;min-height:min(660px,calc(100svh - 110px));padding:clamp(34px,8vw,96px) clamp(18px,6vw,76px);grid-template-columns:150px minmax(0,1fr);align-content:center;column-gap:clamp(24px,5vw,70px);border-bottom:2px solid var(--ink);overflow:hidden}.identity-gate:after{position:absolute;right:-70px;bottom:-90px;width:260px;height:260px;border:38px solid rgba(50,116,185,.13);border-radius:50%;content:""}.gate-number{align-self:start;color:var(--red);font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(86px,12vw,150px);line-height:.78;letter-spacing:-.05em}.gate-copy{max-width:650px}.gate-copy small,.home-welcome small,.home-network>header small,.route-copy small{color:var(--ink-soft);font-size:9px;font-weight:900;letter-spacing:.18em}.gate-copy h1,.home-welcome h1{margin:9px 0 13px;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5.6vw,72px);font-weight:500;line-height:.98;letter-spacing:-.035em}.gate-copy p{max-width:530px;margin:0;color:var(--ink-soft);font-family:Georgia,Times New Roman,serif;font-size:clamp(15px,1.8vw,19px);line-height:1.5}.identity-gate-form{z-index:1;grid-column:2;width:min(650px,100%);margin-top:36px}.identity-gate-form>label{display:block;margin-bottom:8px;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.identity-gate-form>div{display:grid;grid-template-columns:minmax(0,1fr) 200px}.identity-gate-form input{min-width:0;min-height:68px;padding:0 19px;border:3px solid var(--ink);border-right:0;border-radius:0;background:var(--paper-bright);color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:22px;outline:0}.identity-gate-form input:focus{box-shadow:inset 0 -6px 0 var(--yellow)}.identity-gate-form button{display:grid;min-height:68px;padding:10px 18px;place-content:center start;border:3px solid var(--ink);background:var(--ink);color:var(--paper-bright);cursor:pointer;text-align:left}.identity-gate-form button span{font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.identity-gate-form button b{margin-top:3px;font-family:Georgia,Times New Roman,serif;font-size:18px}.identity-note{z-index:1;grid-column:2;margin:12px 0 0;color:var(--ink-soft);font-size:9px;line-height:1.4}.main-menu{padding:clamp(26px,5vw,62px) 0 20px}.home-welcome{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:31px}.home-welcome h1{max-width:780px;margin-bottom:0;font-size:clamp(32px,5vw,62px)}.home-identity-chip{display:grid;min-width:185px;padding:9px;grid-template-columns:42px 1fr;align-items:center;gap:9px;border:2px solid var(--ink);background:var(--paper-bright);cursor:pointer;text-align:left;box-shadow:4px 4px 0 var(--yellow)}.home-identity-chip>span{display:grid;width:42px;height:42px;place-items:center;border:2px solid var(--ink);border-radius:50%;background-color:var(--blue);background-position:center;background-size:cover;color:#fff;font-family:Georgia,serif;font-weight:800}.home-identity-chip>span.has-avatar{color:transparent}.home-identity-chip small{font-size:8px;line-height:1.5}.home-identity-chip b{display:block;color:var(--ink);font-size:9px;letter-spacing:.05em}.home-route-grid{display:grid;grid-template-columns:1fr 1fr;border:3px solid var(--ink);box-shadow:9px 9px #28241e1f}.home-route{position:relative;display:grid;min-height:198px;padding:clamp(20px,3vw,35px);grid-template-columns:55px minmax(0,1fr) auto;align-items:end;gap:18px;border:0;background:var(--paper-bright);cursor:pointer;text-align:left;overflow:hidden}.home-route+.home-route{border-left:3px solid var(--ink)}.home-route:before{position:absolute;inset:0 0 auto;height:11px;background:var(--red);content:"";transition:height .18s ease}.home-route-online:before{background:var(--blue)}.home-route:hover:before{height:18px}.route-index{align-self:start;color:var(--ink-soft);font-family:Georgia,serif;font-size:14px;font-weight:800}.route-copy{align-self:end}.route-copy strong,.route-copy>span{display:block}.route-copy strong{margin:7px 0 4px;font-family:Georgia,Times New Roman,serif;font-size:clamp(25px,3vw,38px);line-height:1}.route-copy>span{color:var(--ink-soft);font-size:11px}.route-arrow{font-family:Georgia,serif;font-size:38px;transition:transform .16s ease}.home-route:hover .route-arrow{transform:translate(6px)}.route-presence{position:absolute;top:28px;right:25px;padding-left:13px;font-size:9px;font-weight:900;text-transform:uppercase}.route-presence:before{position:absolute;top:2px;left:0;width:7px;height:7px;border-radius:50%;background:var(--green);content:""}.home-secondary-actions{display:flex;min-height:53px;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--rule)}.home-secondary-actions button{min-height:38px;padding:0;border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.home-secondary-actions button:hover{border-color:var(--ink)}.home-network{margin-top:42px}.home-network>header{display:flex;margin-bottom:14px;align-items:end;justify-content:space-between;gap:16px}.home-network h2{margin:4px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(23px,3vw,32px);font-weight:500}.home-network>header>button,.open-lobby-button{min-height:43px;padding:0 15px;border:2px solid var(--ink);background:var(--ink);color:var(--paper-bright);cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.home-network-grid{display:grid;grid-template-columns:1fr 1.18fr .9fr;gap:22px}.home-network-grid>section{min-width:0}.home-list-title{display:flex;min-height:35px;padding-bottom:7px;align-items:end;justify-content:space-between;border-bottom:2px solid var(--ink);font-family:Georgia,Times New Roman,serif}.home-list-title b{color:var(--red);font-size:11px}.home-compact-list{display:grid;gap:0}.home-friend-form{display:grid;margin-top:8px;grid-template-columns:minmax(0,1fr) auto}.home-friend-form input{min-width:0;min-height:42px;padding:0 10px;border:2px solid var(--ink);border-right:0;border-radius:0;background:var(--paper-bright);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;outline:0}.home-friend-form input:focus{box-shadow:inset 0 -4px 0 var(--yellow)}.home-friend-form button{min-height:42px;padding:0 11px;border:2px solid var(--ink);background:var(--ink);color:var(--paper-bright);cursor:pointer;font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.home-compact-list .online-item{border-width:0 0 1px;background:transparent}.home-compact-list .online-item button{min-height:33px}.home-error{min-height:18px;margin:10px 0 0;color:var(--red);font-size:10px;font-weight:800;text-align:center}.open-lobby-button{display:flex;width:100%;min-height:64px;margin-top:16px;align-items:center;justify-content:space-between;text-align:left}.open-lobby-button small,.open-lobby-button strong{display:block}.open-lobby-button small{margin-bottom:3px;color:#d8d0c2;font-size:7px;letter-spacing:.12em}.open-lobby-button strong{font-family:Georgia,serif;font-size:16px;text-transform:none}.identity-avatar,.home-identity-chip>span{background-position:center;background-size:cover}.identity-avatar.has-avatar{color:transparent}@media(max-width:720px){.home-screen{padding-inline:10px}.home-masthead{min-height:54px;grid-template-columns:1fr auto}.home-edition{display:none}.home-brand{justify-self:start}.home-sound-button{font-size:8px}.identity-gate{min-height:calc(100svh - 78px);padding:32px 8px;grid-template-columns:1fr;align-content:center}.gate-number{margin-bottom:23px;font-size:76px}.gate-copy h1{font-size:clamp(38px,12vw,54px)}.identity-gate-form,.identity-note{grid-column:1}.identity-gate-form{width:calc(100% - 2px);min-width:0;margin-top:30px}.identity-gate-form>div,.identity-gate-form input,.identity-gate-form button{min-width:0;width:100%}.identity-gate-form>div{grid-template-columns:1fr}.identity-gate-form input{min-height:62px;border-right:3px solid var(--ink);border-bottom:0}.identity-gate-form button{min-height:58px}.main-menu{padding-top:25px}.home-welcome{display:grid;margin-bottom:22px}.home-welcome h1{font-size:38px}.home-identity-chip{min-width:0;justify-self:start}.home-route-grid{grid-template-columns:1fr;box-shadow:6px 7px #28241e1f}.home-route{min-height:146px;padding:23px 16px 19px;grid-template-columns:35px minmax(0,1fr) auto;gap:10px}.home-route+.home-route{border-top:3px solid var(--ink);border-left:0}.route-copy strong{font-size:27px}.route-presence{top:21px;right:16px}.home-secondary-actions{display:grid;padding:9px 0;justify-content:stretch;gap:0}.home-secondary-actions button{text-align:left}.home-network{margin-top:32px}.home-network>header{align-items:stretch}.home-network>header>button{flex:0 0 95px;padding:0 9px}.home-network-grid{grid-template-columns:1fr;gap:25px}}@media(min-width:901px){.game-shell{width:min(1440px,100%)}.game-layout{grid-template-columns:minmax(0,920px) minmax(300px,360px)}.turn-ribbon,.board-frame{width:min(100%,900px)}}@media(max-width:620px){.game-shell{padding-right:2px;padding-left:2px}.game-bar{margin-right:6px;margin-left:6px}.turn-ribbon{width:calc(100% - 8px)}.board-frame{width:calc(100vw - 4px);min-width:0;padding:2px}.player-entry{min-height:44px}.player-name strong{font-size:10px}.player-score b{font-size:16px}}@media(max-width:360px){.command-deck{grid-template-columns:49px minmax(0,1fr) 84px}.dice{width:46px;height:46px}.dice-stage{width:49px;height:52px}.roll-button svg{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.online-tool{position:relative;background:var(--paper-bright)}.online-status-dot{position:absolute;top:10px;right:9px;width:7px;height:7px;border:1px solid var(--ink);border-radius:50%;background:#a99f90}.online-status-dot.is-online{background:var(--green)}.online-dialog{width:min(820px,calc(100% - 28px))}.online-card{max-height:calc(100dvh - 34px);overflow:auto;box-shadow:11px 11px 0 var(--blue)}.online-intro{max-width:460px;margin:25px 0 18px;color:var(--ink-soft);font-family:Georgia,Times New Roman,serif;font-size:15px;line-height:1.5}.online-form label>span{display:block;margin-bottom:7px;color:var(--ink-soft);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.online-form input,.inline-online-form input,.group-online-form>input{width:100%;min-height:49px;padding:0 13px;border:2px solid var(--ink);border-radius:0;background:var(--paper-bright);color:var(--ink);outline:0}.online-form input:focus,.inline-online-form input:focus,.group-online-form>input:focus{box-shadow:4px 4px 0 var(--yellow)}.online-identity{display:grid;margin:18px 0 8px;padding:12px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;border:2px solid var(--ink);background:var(--paper-bright)}.identity-avatar{display:grid;width:48px;height:48px;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--blue);color:#fff;font-family:Georgia,serif;font-size:14px;font-weight:800}.online-identity p,.online-item p{margin:0}.online-identity strong,.online-identity small,.online-item strong,.online-item small{display:block}.online-identity strong{font-family:Georgia,serif;font-size:18px}.online-identity small{margin-top:3px;color:var(--ink-soft);font-size:10px;font-weight:800;letter-spacing:.08em}.copy-id-button,.inline-online-form button,.group-online-form>button,.online-item button{min-height:38px;padding:0 12px;border:2px solid var(--ink);background:var(--ink);color:var(--paper-bright);cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.online-columns{display:grid;grid-template-columns:1fr 1fr;gap:23px}.online-section{margin-top:20px}.online-section-title{display:flex;align-items:baseline;gap:9px;margin-bottom:10px;border-bottom:2px solid var(--ink)}.online-section-title>span{color:var(--red);font-family:Georgia,serif;font-size:11px;font-weight:800}.online-section-title h3{margin:0 0 7px;font-family:Georgia,serif;font-size:20px}.inline-online-form{display:grid;grid-template-columns:minmax(0,1fr) auto;margin-bottom:9px}.inline-online-form input{min-height:42px;border-right:0;font-size:11px;text-transform:uppercase}.group-online-form{display:grid;gap:8px;margin-bottom:9px}.group-online-form>input{min-height:42px}.friend-checklist{display:flex;gap:6px;overflow-x:auto}.friend-checklist label{position:relative;flex:0 0 auto;cursor:pointer}.friend-checklist input{position:absolute;opacity:0}.friend-checklist span{display:block;padding:7px 9px;border:1px solid var(--rule);background:var(--paper-bright);font-size:9px;font-weight:800}.friend-checklist input:checked+span{border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--green)}.online-list{display:grid;gap:6px}.online-item{display:grid;min-height:53px;padding:8px 9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--rule);background:#fffaf085}.online-item strong{overflow:hidden;font-family:Georgia,serif;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.online-item small{margin-top:3px;color:var(--ink-soft);font-size:8px;line-height:1.3}.online-item>span{color:var(--ink-soft);font-size:8px;font-weight:800;text-transform:uppercase}.online-item-actions{display:flex;align-items:center;justify-content:end;gap:5px}.online-item-actions button.is-secondary{border-color:var(--rule);background:transparent;color:var(--ink)}.games-online-section{margin-top:25px}.games-list{grid-template-columns:repeat(2,minmax(0,1fr))}.online-empty{margin:0;padding:10px;border:1px dashed var(--rule);color:var(--ink-soft);font-family:Georgia,serif;font-size:11px;font-style:italic}.online-error{min-height:17px;margin:12px 0 0;color:var(--red);font-size:10px;font-weight:800}@media(max-width:620px){.online-dialog{width:100%}.online-card{max-height:calc(100dvh - 10px)}.online-columns,.games-list{grid-template-columns:1fr}.online-identity{grid-template-columns:42px minmax(0,1fr) auto;padding:9px}.identity-avatar{width:42px;height:42px}.copy-id-button{padding:0 8px}}.command-deck{display:flex;width:min(92%,620px);min-height:100px;padding:13px;align-items:center;justify-content:center;border-width:2px}.command-deck .dice-stage,.command-deck .turn-copy,.command-deck.is-choosing{display:none}.roll-button{width:min(100%,390px);min-height:72px;box-shadow:7px 7px 0 var(--red);font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:22px;font-weight:500;letter-spacing:.16em}.roll-button:hover:not(:disabled){box-shadow:9px 9px 0 var(--red)}.move-picker.is-visible{display:flex;width:min(92%,620px);min-height:100px;margin-top:-1px;padding:16px;align-items:center;justify-content:center;gap:13px;overflow:visible;border:2px solid var(--ink);background:var(--paper-bright);box-shadow:7px 8px #28241e21}.token-button{width:62px;min-width:62px;height:62px;min-height:62px;padding:0;border:2px solid var(--ink);background:var(--paper-bright);box-shadow:5px 5px 0 var(--player-color, var(--yellow));font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:800;transition:transform .12s ease,box-shadow .12s ease}.token-button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--player-color, var(--yellow))}.token-button:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--player-color, var(--yellow))}@media(max-width:620px){.command-deck{width:calc(100% - 14px);min-height:82px;padding:9px}.roll-button{width:min(100%,300px);min-height:60px;font-size:19px;box-shadow:5px 5px 0 var(--red)}.move-picker.is-visible{width:calc(100% - 14px);min-height:82px;padding:10px;justify-content:center;gap:10px}.token-button{width:52px;min-width:52px;height:52px;min-height:52px;font-size:21px}}
