/* September 15 presentation pass. No game state, hit-target or timing changes. */
.welcome-table{position:relative;isolation:isolate;max-width:390px;margin:0 auto 12px;padding-bottom:28px}
.welcome-table::before{content:'';position:absolute;left:0;right:0;bottom:4px;height:47px;border:2px solid #bb914d;border-radius:50%;background:radial-gradient(ellipse at 50% 0,#37604b,#15372e 72%);box-shadow:0 6px 0 #75532c,0 14px 18px #0003;z-index:-1}
.welcome-table .welcome-cast{margin-top:12px;margin-bottom:0;position:relative;z-index:1}
.welcome-table .welcome-cast::after{display:none}
.welcome-pieces{position:absolute;bottom:-2px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:5px;z-index:2;pointer-events:none}
.welcome-pieces img{width:80px;height:49px;transform:rotate(-6deg)}
.welcome-word{display:block;position:relative;width:29px;height:33px;border-radius:4px;background:linear-gradient(#fff4d9,#e8c17e);border:1px solid #b48c48;box-shadow:0 3px 0 #8e632e,0 5px 8px #0003;color:#183b31;font:700 24px/30px Georgia,serif;text-align:center;transform:rotate(7deg)}
.welcome-word:last-child{transform:rotate(-5deg)}.welcome-word small{position:absolute;right:3px;bottom:1px;font:700 7px/1 system-ui}
#home .hero #hero-cards .card{animation:none}
#home .hero .tag{max-width:32ch}
#home .hero #about-roots{font-size:12px;min-height:44px}
#home .home-tools{margin-top:12px}
.gr-game .gr-game-art{display:block;width:100%;max-width:144px;height:88px;object-fit:contain;align-self:center;pointer-events:none}
.gr-game{position:relative;overflow:hidden;padding:14px 16px 18px;gap:7px;background:radial-gradient(ellipse at 50% 0,#f4d79b55,transparent 80%),#fff9eb}
.gr-game strong{line-height:1.15}.gr-game .gr-muted{font-size:.8rem;line-height:1.4;margin:0}
.gr-dialog[data-room-phase=playing] .gr-culture-ribbon{padding-bottom:8px;margin-bottom:10px}
.gr-dialog[data-room-phase=playing] .gr-culture-ribbon span:not(.cast-avatar):not(.cast-portrait){display:none}
.gr-live{border-left:3px solid #a26f27;padding:10px 12px;border-radius:0 10px 10px 0;background:#eadbbd66;font-weight:600;line-height:1.45}
.gr-score.gr-current{outline:2px solid #215947;outline-offset:-2px}
.gr-dialog[data-room-phase=over] .gr-live{background:#e8ce9266;border-color:#88611c;font-size:1.05rem}
.competition-champion{border:1px solid #c29a51;border-radius:20px;box-shadow:0 5px 0 #67482333;background:radial-gradient(ellipse at top,#f5d89744,transparent 70%);padding:22px 16px}
.competition-champion h3{font-family:var(--disp);font-size:clamp(26px,6vw,38px);line-height:1.1;margin:8px 0}
.competition-standing.champion{border:2px solid #b99447}
/* Keep controls in DOM order. Reduce decoration, not the playable board. */
@media(max-width:600px){
 .neighborhood-table .neighborhood-scene{height:64px}
 .neighborhood-table .block-established .neighborhood-scene{height:32px}
 .neighborhood-table .neighborhood-heading{padding:7px 0;gap:8px}
 .neighborhood-table .neighborhood-heading h2{font-size:22px}
 .neighborhood-table .block-about{margin-top:8px;padding-top:5px}
 .neighborhood-table .block-about summary{min-height:44px;display:flex;align-items:center}
 .neighborhood-table .block-turn{margin:9px 0}
 .neighborhood-table .block-ruling{padding:8px 0;min-height:34px}
 .neighborhood-table .block-controls .field{margin-top:3px}
 .neighborhood-table .block-position{margin-top:5px}
 .gr-dialog[data-room-phase=playing] .gr-body h2{font-size:1.65rem;margin-block:8px}
 .gr-dialog[data-room-phase=playing] .gr-score{padding:7px;min-width:110px}
 .gr-game{padding:10px 12px 16px}.gr-game .gr-game-art{height:76px}
}
@media(prefers-reduced-motion:no-preference){
 body[data-presentation-motion=on] .gr-game,
 body[data-presentation-motion=on] .block-letter,
 body[data-presentation-motion=on] .gr-button,
 body[data-presentation-motion=on] #ct-actions .btn{transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}
 body[data-presentation-motion=on] .gr-button:enabled:active,
 body[data-presentation-motion=on] .block-letter:enabled:active,
 body[data-presentation-motion=on] #ct-actions .btn:enabled:active{transform:translateY(2px)}
 body[data-presentation-motion=on] .competition-champion{animation:table-crown .65s ease-out both}
 body[data-presentation-motion=on] .gr-dialog[data-room-phase=over] .gr-live{animation:table-crown .65s ease-out both}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body[data-presentation-motion=on] .gr-game:hover{transform:translateY(-3px);box-shadow:0 7px 0 #d6c5a5}}
@keyframes table-crown{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
body[data-presentation-motion=off] .gr-dialog *,body[data-presentation-motion=off] .competition-champion,body[data-presentation-motion=off] .block-letter,body[data-presentation-motion=off] #ct-actions .btn{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.welcome-table *,.gr-dialog *,.competition-champion,.block-letter,#ct-actions .btn{animation:none!important;transition:none!important}}
