.board-surround{position:relative}
.board-choice{margin:12px 0 20px;scroll-margin:16px}
.board-choice .choice-footer{position:static;transform:none;width:auto;max-width:none;margin:12px 0 0;padding:12px 0 0;border:0;border-top:1px solid #57534c29;box-shadow:none;background:transparent}
.board-choice .choice-footer .choice-actions{justify-content:flex-start;flex-wrap:wrap}
body:has(.board-choice){padding-bottom:0}
.choice-card-zoom{position:relative;flex:none;width:54px;border:0;padding:0;background:none}
.choice-card-zoom img{display:block;width:100%;border-radius:3px}
.choice-card-zoom>span{position:absolute;right:-5px;bottom:-4px;background:#f7f3eb;border:1px solid #aba18e;border-radius:50%;width:22px;height:22px}
.piece-palette{display:flex;flex-wrap:wrap;gap:8px}
.piece-palette legend{width:100%}
.piece-palette button{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:83px;min-height:116px}
.piece-palette button svg{width:62px;height:78px}
.selected-piece{display:inline-flex;align-items:center;gap:3px;margin-right:8px}
.selected-piece svg{width:25px;height:33px;vertical-align:middle}
.decision-clock{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:12px 16px;background:#dce8d6;border:1px solid #8b9e80;border-radius:6px;font-size:14px}
.decision-clock .timer{font-size:24px;flex:none}
.hand-card-wrap{position:relative}
.hand-zoom{position:absolute;right:7px;top:7px;width:29px;height:29px;border:1px solid #b3a78c;border-radius:50%;background:#fffaf0ee;color:#332e25;z-index:2;font-size:19px;box-shadow:0 2px 8px #302a2520}
.card-detail-zoom{display:block;align-self:start;width:100%;padding:0;border:0;background:none}
.card-detail-zoom img{display:block;width:100%;max-width:100%;border-radius:3px}
.card-detail-zoom span{display:block;padding:9px;font-size:14px;text-decoration:underline}
.revealed-zoom{padding:0;border:0;background:none}
#card-zoom{width:min(820px,96vw);max-width:96vw;height:94dvh;max-height:94dvh;padding:0;border:1px solid #a3957f;border-radius:10px;background:#f2ece1;color:#38342c;overflow:hidden}
#card-zoom::backdrop{background:#161712bb;backdrop-filter:blur(4px)}
.zoom-toolbar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #b4aa96;background:#f2ece1}
.zoom-toolbar strong{flex:1;min-width:0;font:20px Georgia,serif}
.zoom-toolbar .btn{padding:4px 13px;font-size:20px;min-height:34px}
.zoom-toolbar [data-zoom-percent]{font-size:14px;min-width:36px;text-align:center}
.zoom-scroll{height:calc(100% - 65px);overflow:auto;overscroll-behavior:contain;padding:12px}
.zoom-scroll img{display:block;width:100%;height:auto;max-width:none;margin:auto;touch-action:pan-x pan-y pinch-zoom}
.mythic-picker{padding:22px 26px;background:#eaded6;border-top:1px solid #c6b7a7;border-bottom:1px solid #c6b7a7}
.mythic-picker h3{margin:0 0 6px;font:22px Georgia,serif}
.mythic-picker p{font-size:14px;line-height:1.6;max-width:620px;margin:0 0 18px}
.mythic-picker>div{display:flex;gap:18px;flex-wrap:wrap}
.mythic-picker article{width:170px;text-align:center}
.mythic-picker article>button:first-child{width:100%;padding:8px;border:2px solid #b09d91;border-radius:7px;background:#f4ede5;display:flex;flex-direction:column;gap:7px;align-items:center}
.mythic-picker article>button.selected{border-color:#9b342f;box-shadow:0 0 0 2px #9b342f35;background:#fff8ed}
.mythic-picker img{width:100%;border-radius:3px}
.mythic-picker strong{font-size:14px}
.mythic-picker article span{font-size:14px;color:#86352f}
.mythic-picker article>.text-button{padding:10px}
.random-deck-result{margin:0;padding:0 26px 18px;font-size:14px}
.dice-overlay{position:absolute;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;padding:14px;background:#ece8dfb8;backdrop-filter:blur(3px);border-radius:6px}
.dice-stage{width:min(420px,100%);max-height:100%;overflow:auto;overscroll-behavior:contain;padding:23px;border:1px solid #a69882;border-radius:12px;background:#f8f2e6;box-shadow:0 12px 60px #30251d35;text-align:center}
.dice-stage header{display:flex;gap:14px;align-items:center;text-align:left;justify-content:center}
.dice-stage h3{margin:4px 0;font:25px Georgia,serif}
.dice-stage header .eyebrow{font-size:14px;letter-spacing:1.7px}
.dice-stage header small{font-size:14px;color:#77705e}
.dice-card{width:46px;flex:none;padding:0;border:0;background:none}
.dice-card img{width:100%;display:block;border-radius:3px}
.dice-stage .dice-values{display:flex;gap:22px;justify-content:center;margin:26px 0 20px}
.die{display:flex;flex-direction:column;justify-content:center;align-items:center;width:94px;height:100px;border:1px solid #8a7b63;border-radius:16px;background:linear-gradient(135deg,#fffdf5,#e8ddc5);box-shadow:0 6px 0 #afa087,0 12px 18px #493b2525;transform-origin:center}
.die strong{font:52px Georgia,serif;color:#3c382f;line-height:1.05}
.die small{font-size:14px;color:#7a6c55}
.roll-consequence{font-size:14px;line-height:1.6;margin:18px 0;color:#3c4233}
.dice-controls{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.dice-controls .roll-actions{display:flex;flex-direction:column;gap:8px;flex:1;min-width:135px}
.dice-controls .btn{font-size:14px;padding:10px 12px;min-height:38px}
.roll-adjust{padding:11px;background:#e1e9d8;border:1px solid #b4c0a7;border-radius:6px;margin-bottom:5px}
.roll-adjust strong{display:block;font-size:14px;margin-bottom:8px}
.roll-adjust>div{display:flex;gap:5px;align-items:center;margin:5px 0;justify-content:center}
.roll-adjust>div>span{font-size:14px}
.roll-adjust .btn{padding:7px 9px;min-height:32px;background:#f8f6ed}
.roll-adjust .text-button{font-size:14px;margin-top:8px}
.roll-wait,.roll-deadline{font-size:14px;color:#7a705e}
.roll-deadline{display:block;margin-top:15px}
.is-rolling .die{animation:die-tumble 1.1s cubic-bezier(.18,.65,.3,1) both}
.is-rolling .die:nth-child(2){animation-delay:60ms}
.is-rolling .roll-consequence{animation:roll-explain .3s 0.8s both}
.is-rolling .dice-controls{opacity:.7}
@keyframes die-tumble{0%{transform:translateY(-35px) rotate(-160deg) scale(.65);opacity:0}30%{opacity:1;transform:translateY(6px) rotate(40deg) scale(1.08)}65%{transform:translateY(-10px) rotate(-15deg)}85%{transform:translateY(2px) rotate(4deg)}100%{transform:none;opacity:1}}
@keyframes roll-explain{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:600px){.mythic-picker{padding:18px 15px}.mythic-picker article{width:calc(50% - 9px);max-width:170px}.mythic-picker>div{gap:12px}.dice-overlay{padding:8px}.dice-stage{padding:15px}.dice-stage h3{font-size:21px}.dice-stage .dice-values{margin:16px 0}.die{width:70px;height:76px;border-radius:13px}.die strong{font-size:39px}.roll-consequence{font-size:14px;line-height:1.5;margin:14px 0}.zoom-toolbar{padding:10px;gap:7px}.zoom-toolbar strong{font-size:16px}.choice-card-zoom{width:40px}.board-choice .choice-footer{padding:10px 0 0}.decision-clock{font-size:14px}.decision-clock .timer{font-size:21px}}
@media(prefers-reduced-motion:reduce){.is-rolling .die,.is-rolling .roll-consequence{animation:none}.is-rolling .dice-controls{opacity:1;pointer-events:auto}}

.card-clarification{padding:12px 14px;border-left:3px solid #63865b;background:#e5ecdb;font-size:14px;line-height:1.7}

.dice-stage .die strong{width:auto;height:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none;display:block}
.decision-clock{position:sticky;top:8px;z-index:7}

.choice-legend[hidden]{display:none}
@media(max-width:600px){.piece-palette button{min-width:62px;flex:1;min-height:96px;font-size:14px}.piece-palette button svg{width:48px;height:64px}}

.rules-update{padding:22px 28px;margin-bottom:25px;border:1px solid var(--line);border-radius:8px;background:#F7F7F740}.rules-update h2{font-size:27px}.rules-update li{font-size:16px;line-height:1.8;margin:8px 0}
/* 0.5: readable controls, card fit, material and explicit decisions. */
body{font-size:16px}.btn{font-size:16px;min-height:44px}.header nav{gap:24px}.nav,.profile,.online{font-size:14px}.eyebrow{font-size:14px;letter-spacing:1.3px}
.image-card{border-inline:6px solid var(--rarity)}.image-card>img{background:var(--rarity)}.card-caption{justify-content:center;align-items:center;flex-direction:column;text-align:center;border-left:0;min-height:48px;height:auto!important;padding:9px 6px}.card-caption strong{font-size:15px;text-align:center;width:100%}.card-caption small{font-size:14px}.hand-card-wrap .card-caption strong{font-size:14px}.hand-card-wrap{flex-basis:150px}.hand-card-wrap .image-card img{height:auto;aspect-ratio:4536/6336}
.game-center{min-width:0}.game-right{min-width:0}.game-left h2{font-size:27px}.game-left small,.game-links button,.player-deck,.captured-label,.move-log>div,.event-log,.turn-message p{font-size:15px}.player-title strong{font-size:18px;overflow-wrap:anywhere}.player-title{flex-wrap:wrap}.timer{font-size:27px}.turn-message strong{font-size:18px}.game-side-tabs button{font-size:16px}.active-mythics{flex-wrap:wrap}.active-mythics button{width:145px;max-width:100%}.active-mythics small{font-size:15px}.draw-pile .pile-art{width:118px;height:158px}.draw-pile .deck-stack{transform:scale(.72);transform-origin:top left}.draw-pile>small{max-width:none;line-height:1.6}.pile-art>span{top:auto;bottom:0;left:auto;right:0;width:30px;height:30px;font-size:18px}
.material-counter{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;background:#f7f7f755;border:1px solid var(--line);border-radius:6px;margin:12px 0;font-size:16px}.material-counter small{font-size:14px}.declared-plan{border:2px solid #AB2C2C;background:#AB2C2C0c;padding:14px;display:flex;align-items:center;gap:16px;justify-content:space-between;margin:12px 0;border-radius:7px}.declared-plan>div{display:flex;flex-direction:column;gap:8px}.declared-plan strong{font-size:18px;color:#AB2C2C}.planned-card{display:flex;align-items:center;gap:10px;max-width:55%;font-size:15px}.planned-card img{width:58px;border:2px solid #AB2C2C}.planned-card span{overflow-wrap:anywhere}
.law-buttons{display:flex;gap:12px;margin-top:12px}.law-buttons:empty{display:none}.law-roll{flex:1;display:grid;grid-template-columns:auto 1fr;gap:0 14px;align-items:center;padding:16px 20px;background:#FFFFFF;color:#AB2C2C;border:3px solid #AB2C2C;border-radius:8px;box-shadow:inset 0 0 0 3px #E8DC33;font-size:23px;min-height:86px}.law-roll>span{grid-row:1/3;font-size:42px}.law-roll strong{font-size:22px}.law-roll small{font-size:15px;color:#57534C}.law-roll:disabled{opacity:.6}
.piece-fogged{opacity:.22;filter:grayscale(1)}.board-fog{transition:opacity .15s}.result-overlay{position:absolute;inset:0;z-index:25;display:grid;place-items:center;padding:20px;background:#57534c66;backdrop-filter:blur(3px)}.board-result{width:min(470px,100%);padding:34px 24px;border:1px solid #57534C;border-radius:12px;background:#F2ECE1;text-align:center;box-shadow:0 20px 80px #2e2d2d33}.board-result h2{font-size:36px}.board-result p{font-size:18px}.board-result>div{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
#card-zoom[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}.zoom-toolbar{min-height:64px}.zoom-scroll{height:auto;min-height:0;display:block;padding:12px}.zoom-scroll img{height:auto;max-height:none;max-width:none}.card-detail-zoom img{max-height:72dvh;object-fit:contain}.card-detail-zoom{align-self:start}.card-exact-text{font-size:17px}.card-detail .rarity-label{font-size:14px}.choice-hint{font-size:16px}.board-choice h3{font-size:26px}.board-choice p,.choice-stages button,.choice-options button,.choice-legend{font-size:16px}.board-choice .choice-actions .btn{font-size:16px}.choice-options{max-width:100%;flex-wrap:wrap}.board-choice-heading{align-items:flex-start}.board-choice-heading p{line-height:1.6}.choice-stages{flex-wrap:wrap}.choice-stages>button{min-width:0;flex:1 1 180px}.dice-stage{width:min(500px,100%)}.dice-stage h3{font-size:28px}.dice-stage header small,.dice-stage .eyebrow,.dice-stage>small,.roll-wait{font-size:14px}.roll-consequence{font-size:18px}.roll-actions .btn{font-size:16px}.home-bottom{font-size:14px}.home-bottom .text-button{font-size:14px}.header-caption,footer,footer button{font-size:14px}
@media(min-width:1200px){main{max-width:1800px}.game-layout{grid-template-columns:210px minmax(0,1fr) 310px;gap:22px}.game-right{padding:20px}.game-links{margin-top:20px}.game-left{padding-top:15px}.board-svg{max-height:none}.game-right .move-log{max-height:360px;min-height:130px}}
@media(min-width:1600px){.game-layout{grid-template-columns:240px minmax(0,1fr) 370px;gap:30px}.active-mythics button{width:175px}.game-left h2{font-size:31px}.game-right{padding:25px}.player-title strong{font-size:20px}}
@media(max-width:1199px) and (min-width:761px){.game-layout{grid-template-columns:minmax(0,1fr) 290px;gap:20px}.game-left{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;gap:24px;padding-bottom:15px}.game-left>h2{display:none}.game-center{grid-column:1}.game-right{grid-column:2}.active-mythics button{width:78px}.active-mythics small{display:none}.draw-pile{display:flex;align-items:center;gap:10px}.draw-pile h2{font-size:22px}.draw-pile .pile-art{width:48px;height:66px}.draw-pile .deck-stack{transform:scale(.3)}.game-links{display:none}}
@media(max-width:760px){.game-layout{grid-template-columns:minmax(0,1fr);gap:16px}.game-left{grid-column:1;display:flex;flex-direction:row;align-items:center;gap:18px}.game-left>h2,.game-links,.draw-pile h2{display:none}.game-center,.game-right{grid-column:1;grid-row:auto}.game-right{display:block;padding:20px}.game-left .active-mythics button{width:60px}.game-left .active-mythics small{display:none}.draw-pile{display:flex;align-items:center;gap:10px}.draw-pile .pile-art{width:43px;height:58px}.draw-pile .deck-stack{transform:scale(.27)}.draw-pile small{font-size:14px;max-width:140px}.pile-art>span{font-size:14px;width:22px;height:22px}.mythic-empty small{font-size:14px}.game-topline{font-size:12px;flex-wrap:wrap}.game-topline>span{font-size:12px;max-width:none;flex:1}.game-topline .back-button{width:36px;height:36px}.game-topline .icon-button{min-height:36px;min-width:36px}.opponent-hand{font-size:14px}.board-status{font-size:14px;line-height:1.6;gap:8px;flex-wrap:wrap}.hand-heading>small{font-size:14px;max-width:45%;text-align:right}.hand-heading h2{font-size:25px}.hand-tools .btn{font-size:14px;min-height:42px;padding:9px}.hand-tools{flex-wrap:wrap}.game-mobile-players strong{font-size:14px}.game-mobile-players .timer{font-size:20px;min-width:66px}.game-mobile-players>div{flex-wrap:wrap}.game-player:nth-child(2){border-left:0;padding-left:0}.player-title strong{font-size:18px;max-width:none}.game-side-tabs button{font-size:16px}.captured-label,.captured>span{font-size:14px}.game-actions .btn{font-size:16px;min-height:44px}.turn-message strong{font-size:18px}.turn-message p{font-size:15px}.game-right .move-log>div,.event-log{font-size:14px}.law-roll{padding:14px;gap:0 10px}.law-roll strong{font-size:20px}.law-roll small{font-size:14px}.law-roll>span{font-size:36px}.material-counter{font-size:15px}.planned-card{flex-direction:column;font-size:14px}.declared-plan{gap:10px}.declared-plan strong{font-size:16px}.board-result h2{font-size:29px}.board-result p{font-size:16px}.board-result{padding:24px 16px}.board-result .btn{font-size:14px}.dice-stage h3{font-size:23px}.dice-stage{padding:16px}.roll-consequence{font-size:16px}.dice-stage .btn{font-size:15px}.zoom-toolbar{gap:7px;padding:10px}.zoom-toolbar strong{font-size:16px}.zoom-toolbar .btn{min-height:38px;padding:5px 10px}.home-bottom{flex-wrap:wrap;gap:16px}.header nav{gap:22px}.header .nav,.header .profile{font-size:14px}.header .profile>span:last-child{max-width:95px;overflow:hidden;text-overflow:ellipsis}.header .account{gap:8px}footer{font-size:14px;line-height:1.6;gap:12px}footer .footer-right,footer button{font-size:14px}}
@media(max-width:500px){.header nav{gap:8px;justify-content:space-between}.header .nav{white-space:nowrap}}
