:root{--green:#08764f;--ink:#20392e;--muted:#627268;--line:#dce4dc;--paper:#fff;--ground:#f5f7f2;--radius:14px;color-scheme:light;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--ground)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,.button{border:1px solid transparent;border-radius:8px;padding:11px 17px;background:var(--green);color:white;cursor:pointer;font-weight:650;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;min-height:44px;gap:6px}button:hover,.button:hover{filter:brightness(.96)}button:disabled{opacity:.48;cursor:not-allowed}button.light,.button.light{background:#edf3ed;color:var(--ink);border-color:var(--line)}button.quiet{background:transparent;color:var(--ink);padding:7px 10px;font-weight:500}a{color:var(--green)}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[role=button]:focus-visible{outline:3px solid #cc8c29;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,.product{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.15}h1{font-size:clamp(32px,4vw,48px);margin:0 0 16px}h2{font-size:25px;margin:0 0 18px}p{line-height:1.55}label{display:block;font-size:14px;font-weight:600;margin:13px 0 7px}input:not([type=checkbox]),select{width:100%;border:1px solid #bbcbbf;border-radius:7px;padding:11px;color:var(--ink);background:white;min-height:44px}input[type=checkbox]{accent-color:var(--green);width:18px;height:18px;vertical-align:middle;margin-right:7px}select{margin-bottom:10px}details>summary{cursor:pointer;padding:10px 0}small,.muted{color:var(--muted);font-size:13px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--green)}.site-header{display:flex;align-items:center;gap:28px;height:78px;padding:8px max(24px,calc((100vw - 1400px)/2));background:white;border-bottom:1px solid var(--line)}.site-header img{width:145px;height:auto;display:block}.product{font-size:25px;text-decoration:none;white-space:nowrap}.site-header nav{display:flex;align-items:center;gap:18px;margin-left:auto;font-size:13px}.site-header nav>a{text-decoration:none}.preview-label{text-align:center;background:#f8eecd;color:#655329;font-size:12px;padding:5px}main{max-width:1400px;margin:auto;padding:24px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:26px;margin-bottom:20px}.home-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:30px 0 44px}.home-intro h1{font-size:64px}.home-intro p{font-size:18px;max-width:530px}.home-intro .muted{font-size:15px;margin-bottom:25px}.home-intro img{width:100%;height:auto;border-radius:18px}.home-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}.side-stack{display:grid;gap:0}.inline,.actions,.section-title{display:flex;align-items:center;gap:12px}.inline input{flex:1;min-width:0}.section-title{justify-content:space-between;margin-bottom:20px}.section-title h1,.section-title h2{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.topics{max-height:280px;overflow:auto;padding:6px 10px}.topics label{font-weight:400;display:flex;gap:8px;align-items:start}.topics label small{margin-left:auto;white-space:nowrap}.availability{font-size:13px;color:var(--muted)}.rules-summary{max-width:760px;padding:24px 0 45px}.lobby-grid{display:grid;grid-template-columns:1fr 310px;gap:24px}.invite{text-align:center}#room-code{font-size:33px;letter-spacing:.16em;font-weight:650;margin:15px 0}.invite img{display:block;margin:10px auto}.player-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.player-row svg{width:42px;height:52px}.player-row select{width:105px;margin:0 0 0 auto}.player-row small{display:block;margin-top:5px}.colour-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px}.match-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;min-height:64px}#scores{display:flex;gap:12px;flex:1}.score{display:flex;align-items:center;gap:10px;padding:8px 15px;background:white;border:1px solid var(--line);border-left:4px solid var(--side);border-radius:9px;min-width:160px}.score svg{width:34px;height:43px;flex-shrink:0}.score strong{font-size:14px}.score small{display:block;margin-top:4px;font-size:12px}.phase-clock{text-align:center;min-width:125px;display:flex;flex-direction:column;gap:2px}.phase-clock strong{font-size:23px;font-variant-numeric:tabular-nums}.phase-clock span{font-size:12px}.match-controls{font-size:11px;text-align:right;color:var(--muted);min-width:76px}.match-controls span{display:block}#play-area{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:16px;align-items:stretch;min-height:420px}.map-panel,.question-panel{background:white;border:1px solid var(--line);border-radius:var(--radius);min-width:0;overflow:hidden}.map-panel{display:flex;flex-direction:column}.map-heading{display:flex;justify-content:space-between;padding:13px 18px;font-size:13px}#map-wrap{position:relative;display:flex;align-items:center;justify-content:center;background:#f6f8f3;flex:1;min-height:240px;overflow:hidden}#map{display:block;width:100%;max-height:510px;touch-action:manipulation}.territory polygon{stroke:#fff;stroke-width:5;stroke-linejoin:round;transition:fill .3s;vector-effect:non-scaling-stroke}.territory{cursor:pointer;outline:none}.territory:hover polygon{stroke:#8b9e90;stroke-width:2.5}.territory.selected polygon{stroke:#234f3a;stroke-width:3.5}.territory:focus-visible polygon{stroke:#b77717;stroke-width:4}.territory text{font:600 15px system-ui;fill:#3a4b40;pointer-events:none}.territory .beacon{font-size:22px}.territory .mascot{pointer-events:none}.territory .fort-wall{fill:none;stroke:var(--side);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.isolated-mark{pointer-events:none;fill:url(#isolated-pattern)}.route{fill:none;stroke:var(--route-colour);stroke-width:4;stroke-dasharray:8 6;pointer-events:none}.draft-target{fill:none;stroke:#30543d;stroke-width:4;stroke-dasharray:8 5;pointer-events:none}#action-panel{padding:14px 18px;border-top:1px solid var(--line);min-height:136px}#territory-note{display:block;margin-top:5px;min-height:18px}#move-buttons{gap:6px;flex-wrap:wrap;margin-top:8px}#move-buttons button{padding:8px 12px;font-size:13px}.order-line{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #edf0e9;margin-top:10px;padding-top:5px;font-size:12px}#save{font-size:12px;min-height:32px}.question-panel{display:flex;flex-direction:column;max-height:650px}.question-heading{padding:13px 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);min-height:50px}.question-heading button{margin-left:auto;font-size:12px;min-height:30px}.question-scroll{padding:20px;overflow-y:auto;flex:1}#question-text{font-size:17px;line-height:1.6;white-space:pre-wrap;margin-bottom:18px}.question-scroll img,.review-card img{max-width:100%;max-height:250px;object-fit:contain}.katex-display{overflow-x:auto;overflow-y:hidden}#options{display:grid;gap:9px}.option{justify-content:start;text-align:left;background:white;color:var(--ink);border:1px solid var(--line);font-weight:400;width:100%;padding:12px;gap:12px;line-height:1.35}.option .letter{background:#eff2ed;border-radius:5px;min-width:27px;height:27px;display:grid;place-items:center;font-weight:650}.option[aria-pressed=true]{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green);background:#eef6ee}.option:disabled{opacity:1;color:#627268}.question-submit{padding:14px 20px;border-top:1px solid var(--line)}.question-submit button{width:100%}.question-submit p{font-size:12px;margin:10px 0 0;color:var(--muted)}.arena-footer{display:flex;align-items:center;gap:20px;padding:12px 0}.tabs{display:flex;background:#e4eade;padding:4px;border-radius:9px}.tabs button{background:transparent;color:#4d6255;min-height:37px;padding:6px 20px}.tabs button.active{background:white;color:var(--green);box-shadow:0 1px 3px #0001}.arena-footer p{font-size:12px;color:var(--muted);margin:0}#captain-label{margin-left:auto;font-size:12px}.round-log{font-size:12px;color:#4e6255}.round-log summary{padding:6px 0}.round-log li{margin-bottom:8px}#play-area[data-panel=map]{grid-template-columns:1fr}#play-area[data-panel=map] .question-panel{display:none}#play-area.focus{grid-template-columns:1fr}#play-area.focus .map-panel{display:none}#play-area.focus .question-panel{max-width:850px;width:100%;margin:auto}#overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;background:#f6f8f3ed;z-index:3;padding:24px}#overlay h2{font-size:34px;margin:0}#overlay p{max-width:400px;font-size:14px}.result-heading{text-align:center;padding:20px}.result-heading h1{font-size:42px}#result-scores{display:flex;justify-content:center;gap:15px;margin-bottom:28px}.rematch{max-width:700px;margin:20px auto 35px}.review-card{background:white;border:1px solid var(--line);padding:15px 22px;border-radius:12px;margin:12px 0}.review-card summary{font-weight:650}.review-card .review-content{line-height:1.6}.review-card li{margin:8px 0}.board-table,table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:11px 8px;text-align:left;border-bottom:1px solid var(--line)}.room-tile{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid var(--line)}.room-tile p{font-size:13px;margin:5px 0}dialog{border:1px solid var(--line);border-radius:16px;max-width:750px;width:calc(100% - 32px);max-height:88dvh;padding:28px;color:var(--ink)}dialog::backdrop{background:#17342877}dialog .close{float:right}dialog p{font-size:14px}#notice{position:fixed;top:85px;left:50%;transform:translateX(-50%);background:#203e30;color:white;padding:13px 22px;border-radius:10px;box-shadow:0 6px 20px #10291922;z-index:20;max-width:min(95%,650px);font-size:14px}#notice.error{background:#843d2c}pre{white-space:pre-wrap;overflow-wrap:anywhere}.resolution-shield{fill:#e9f2f8;stroke:var(--side);stroke-width:5;opacity:.95}.animation-layer{pointer-events:none}.gain{animation:gain .55s ease-out}@keyframes gain{50%{transform:translateY(-3px);background:#e4f5de}}.guard-pulse{animation:guard-pulse .7s ease-out}@keyframes guard-pulse{0%,100%{opacity:.4}50%{opacity:1}}.capture-flash{animation:capture .7s ease-out}@keyframes capture{50%{filter:brightness(1.2)}}
@media(min-width:761px){body[data-view=room] main{padding-top:14px}body[data-view=room]:has(#arena:not([hidden])) .site-header{height:59px}.site-header:has(+.preview-label){height:68px}}
@media(orientation:landscape) and (max-height:650px){body[data-view=room]:has(#arena:not([hidden])) .site-header{height:42px;padding:3px 16px;gap:18px}.site-header img{width:100px}.product{font-size:20px}.site-header nav{gap:10px;font-size:11px}.site-header nav button{font-size:11px;min-height:30px}.site-header nav>a{display:none}body[data-view=room] main{padding:6px 12px}.preview-label{font-size:10px;padding:2px}.match-strip{min-height:39px;margin-bottom:6px;gap:8px}.score{padding:4px 8px;min-width:125px;gap:6px}.score svg{width:24px;height:30px}.score strong{font-size:11px}.score small{font-size:10px;margin-top:1px}.phase-clock{min-width:85px;display:grid;grid-template-columns:auto auto;gap:0 8px;align-items:center}.phase-clock strong{font-size:19px;grid-row:span 2}.phase-clock span{font-size:10px}.match-controls{font-size:10px}.match-controls button{min-height:26px;font-size:11px;padding:3px 5px}#play-area{min-height:0;gap:9px;grid-template-columns:minmax(0,1.55fr) minmax(275px,1fr);height:calc(100dvh - 141px)}#map-wrap{min-height:80px}#map{height:100%;max-height:100%}.map-heading{padding:5px 10px;font-size:10px}.map-heading .muted{font-size:10px}#action-panel{padding:6px 10px;min-height:83px}#territory-label{font-size:11px}#territory-note{font-size:10px;margin-top:2px;min-height:12px}#move-buttons{margin-top:3px;gap:5px}#move-buttons button{min-height:32px;padding:4px 8px;font-size:10px}.order-line{margin-top:3px;padding-top:1px;font-size:10px;min-height:20px}#save{min-height:22px;font-size:10px;padding:1px 5px}.question-heading{padding:5px 10px;min-height:30px}.eyebrow{font-size:10px}.question-heading button{min-height:20px;padding:2px 5px;font-size:10px}.question-scroll{padding:10px}#question-text{font-size:14px;margin-bottom:10px;line-height:1.45}#options{gap:6px}.option{padding:7px 9px;min-height:44px;font-size:12px}.option .letter{height:22px;min-width:22px}.question-submit{padding:6px 10px}.question-submit button{min-height:34px;padding:5px 10px;font-size:12px}.question-submit p{font-size:10px;margin-top:4px}.arena-footer{padding:5px 0;gap:10px}.arena-footer .tabs{padding:2px}.tabs button{min-height:28px;padding:4px 16px;font-size:11px}.arena-footer p,#captain-label{font-size:10px}.round-log{font-size:11px}.round-log summary{padding:2px 0}.question-panel{max-height:100%}#play-area.focus{grid-template-columns:1fr}#play-area.focus .question-scroll{display:grid;grid-template-columns:1fr 1fr;gap:20px}#play-area.focus .question-panel{max-width:100%}}
@media(max-width:760px) and (orientation:portrait){.site-header{height:63px;padding:8px 15px;gap:12px}.site-header img{width:105px}.product{font-size:21px}.site-header nav{gap:0}.site-header nav>a,.site-header #sound{display:none}.site-header nav button{font-size:11px;padding:5px}main{padding:16px}.home-intro{grid-template-columns:1fr;gap:20px;padding:18px 0 25px}.home-intro h1{font-size:47px}.home-intro p{font-size:16px}.home-intro img{max-height:220px;object-fit:cover}.home-grid,.lobby-grid{grid-template-columns:1fr;gap:0}.panel{padding:20px}.form-grid{gap:0 12px}.lobby-grid .invite{order:2}.actions{flex-wrap:wrap}.match-strip{flex-wrap:wrap;gap:8px}.match-controls{display:flex;align-items:center;gap:5px}#scores{width:100%;gap:8px;flex:auto}.score{min-width:0;flex:1;padding:6px 8px;gap:6px}.score strong{font-size:11px}.score small{font-size:10px}.score svg{width:28px;height:35px}.phase-clock{flex-direction:row;align-items:center;gap:12px}.phase-clock strong{font-size:21px}#play-area,#play-area[data-panel=map]{display:block;min-height:0;height:calc(100dvh - 252px);min-height:330px}#play-area[data-panel=question] .map-panel{display:none}#play-area[data-panel=map] .question-panel{display:none}.question-panel,.map-panel{height:100%;max-height:none}.question-scroll{padding:16px}#question-text{font-size:16px}.question-heading{padding:8px 16px}.question-submit{padding:12px 16px}.arena-footer{position:sticky;bottom:0;z-index:4;background:var(--ground);display:grid;grid-template-columns:1fr auto;gap:4px 8px;padding:10px 0}.tabs{grid-row:span 2}.tabs button{padding:8px 18px}.arena-footer p,#captain-label{font-size:10px;text-align:right;max-width:180px;margin:0}#map-wrap{min-height:170px}#map{width:100%;height:100%;min-height:180px}.map-heading{font-size:11px;padding:10px}#action-panel{padding:10px 12px;min-height:150px}#move-buttons button{min-height:44px}#result-scores{flex-wrap:wrap}.result-heading h1{font-size:33px}.player-row select{max-width:90px}.player-row{gap:8px}.player-row span{font-size:13px}.room-tile{flex-wrap:wrap}.question-heading #question-focus{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* The active landscape board gets the viewport; expanded map puts orders beside it. */
@media(orientation:landscape) and (max-height:650px){
 body[data-view=room]:has(#arena:not([hidden])) .preview-label{display:none}
 body[data-view=room]:has(#arena:not([hidden])) main{height:calc(100dvh - 42px);display:flex;flex-direction:column;padding:6px 12px}
 #arena:not([hidden]){height:100%;min-height:0;display:flex;flex-direction:column;position:relative}
 #play-area{height:auto;flex:1;min-height:0}
 .match-strip{flex:none}.arena-footer{flex:none}.round-log{flex:none}
 .round-log[open]{position:absolute;bottom:0;left:0;right:0;z-index:8;max-height:60vh;overflow:auto;background:white;padding:10px;border:1px solid var(--line);border-radius:8px}
 #action-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;min-height:0;padding:5px 10px}
 #action-panel>div:first-child{align-self:center}#move-buttons{margin:0}.order-line{grid-column:1/-1;margin-top:2px}
 #move-buttons button{min-height:40px;padding:5px 9px}
 #play-area[data-panel=map] .map-panel{display:grid;grid-template-columns:minmax(0,1fr) 205px;grid-template-rows:24px minmax(0,1fr)}
 #play-area[data-panel=map] .map-heading{grid-column:1/-1}
 #play-area[data-panel=map] #action-panel{grid-template-columns:1fr;display:flex;flex-direction:column;justify-content:safe center;gap:6px;border-top:0;border-left:1px solid var(--line);padding:8px 12px;overflow-y:auto;min-height:0}
 #play-area[data-panel=map] #action-panel>*{flex-shrink:0}
 #play-area[data-panel=map] #move-buttons{flex-direction:row;align-items:stretch;gap:6px}
 #play-area[data-panel=map] #move-buttons button{flex:1 1 72px}
 #play-area[data-panel=map] .order-line{flex-direction:row;align-items:center;padding-top:4px;gap:4px;margin-top:0}
 #play-area[data-panel=map] #save{min-height:36px}
 #map-wrap{min-height:0}#map{min-height:0}
 .territory text{font-size:20px}.territory .beacon{font-size:24px}
 .question-heading,.question-submit{flex-shrink:0}.question-scroll{min-height:0}
}
@media(max-width:760px) and (orientation:portrait){.question-submit{flex-shrink:0}.question-scroll{min-height:0}.territory text{font-size:24px}}
@media(orientation:landscape) and (max-height:650px){#options{grid-template-columns:1fr 1fr;align-items:stretch}.option{min-height:44px}.option .option-text{overflow-wrap:anywhere}.question-submit{padding:5px 10px}.question-submit p{line-height:1.25}.question-heading button{white-space:nowrap}}
.map-zoom{display:flex;margin-left:10px;gap:3px}.map-zoom button{font-size:20px;padding:0 8px;min-height:28px;min-width:30px}.map-heading{align-items:center;gap:10px}.map-heading .muted{margin-left:auto}#map-wrap.zoomed{display:block;overflow:auto;touch-action:pan-x pan-y}#map-wrap.zoomed #map{max-height:none;display:block}.map-heading .map-zoom{flex-shrink:0}@media(orientation:landscape) and (max-height:650px){#play-area[data-panel=map] .map-panel{grid-template-rows:32px minmax(0,1fr)}.map-heading{min-height:32px}.map-zoom button{min-width:34px;min-height:28px}}@media(orientation:portrait){.map-zoom button{min-width:42px;min-height:42px}}
.territory polygon{stroke-width:3}
@media(orientation:landscape) and (max-height:650px){#play-area[data-panel=question] .map-panel:not(:has(.selected)) #action-panel{display:flex;align-items:center;justify-content:space-between;min-height:32px}#play-area[data-panel=question] .map-panel:not(:has(.selected)) #territory-note{display:none}#play-area[data-panel=question] .map-panel:not(:has(.selected)) .order-line{border:0;margin:0;padding:0}}

.lobby-grid:has(#invite-panel[hidden]){grid-template-columns:minmax(0,760px);justify-content:center}
.compact-team-name{display:none}.arena-footer .round-log{margin-left:auto}.arena-footer .round-log[open]{position:absolute;left:0;right:0;bottom:0;z-index:8;background:white;max-height:60vh;overflow:auto;border:1px solid var(--line);padding:12px;border-radius:8px}
.strategy-strip .threat-alert{color:#a12626;font-weight:650}
.planned-action{pointer-events:none}.planned-outline{fill:none;stroke:var(--plan-colour);stroke-width:3;stroke-dasharray:6 5}.planned-route{fill:none;stroke:var(--plan-colour);stroke-width:5;stroke-dasharray:3 9;stroke-linecap:round;animation:plan-flow 1.8s linear infinite}.planned-symbol{fill:#ffffff55;stroke:var(--plan-colour);stroke-width:5;animation:plan-pulse 2s ease-in-out infinite}.planned-number-bg{fill:var(--plan-colour);stroke:white;stroke-width:2}.planned-number{fill:white;font:700 15px system-ui}.planned-action[data-funded=false]{opacity:.5}.territory.exposed>polygon:first-child{stroke:#bd3535;stroke-width:3;stroke-dasharray:5 4}.territory .breach-mark{fill:#bd3535;font-size:32px;font-weight:800}#move-buttons button[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}
@keyframes plan-flow{to{stroke-dashoffset:-24}}@keyframes plan-pulse{50%{opacity:.55}}
#arena[data-phase=paused] .planned-route,#arena[data-phase=paused] .planned-symbol{animation-play-state:paused}
#plan-strip{display:flex;align-items:center;gap:10px;flex-shrink:0;min-height:46px;margin-top:6px;min-width:0}#plan-summary{font-size:11px;max-width:180px;flex-shrink:0}#planned-actions{display:flex;gap:6px;overflow-x:auto;min-width:0;padding:3px}.plan-chip{display:flex;align-items:center;border:1px solid var(--line);border-left:3px solid var(--green);border-radius:7px;background:white;white-space:nowrap}.plan-chip button{font-size:11px;min-height:36px;padding:5px 7px}.plan-chip button:last-child{font-size:20px;min-width:36px;border-left:1px solid var(--line)}.plan-chip[data-action=attack],.plan-chip[data-action=strong]{border-left-color:#bd3535}.plan-chip[data-action=defend]{border-left-color:#2463a6}.plan-chip[data-action=fortify]{border-left-color:#a06917}.plan-chip.unfunded{border-color:#9a451e;background:#fff3e9}#income-detail{font-size:10px;color:var(--muted);margin-left:auto}.arena-footer #captain-label:not(:empty)+#income-detail{margin-left:0}
@media(orientation:landscape) and (max-height:650px){#plan-strip{gap:6px;min-height:38px;margin-top:3px}#plan-summary{font-size:10px;max-width:125px}.plan-chip button{font-size:10px;min-height:32px}.plan-chip button:last-child{font-size:18px;min-width:34px}#income-detail{font-size:9px;max-width:150px}.arena-footer{gap:8px}.arena-footer #draft-status{display:none}#captain-label{max-width:120px}#play-area[data-panel=map] #action-panel{justify-content:flex-start}}
@media(max-width:760px) and (orientation:portrait){#plan-strip{display:block}#plan-summary{max-width:none}.plan-chip button{min-height:40px}#income-detail{grid-column:1/-1;text-align:right}.arena-footer #draft-status{display:none}.arena-footer #save{grid-column:2;grid-row:1}}
@media(orientation:landscape) and (max-height:650px){
 #scores .score-names{display:none}#scores .compact-team-name{display:block}.arena-footer #captain-label{display:none}
 #play-area[data-panel=map] .map-heading{grid-column:2;grid-row:1;padding:2px 8px}
 #play-area[data-panel=map] .map-heading>.muted{display:none}
 #play-area[data-panel=map] #map-wrap{grid-column:1;grid-row:1/3}
 #play-area[data-panel=map] #action-panel{grid-column:2;grid-row:2}
}

/* Keep the view switch and round log on screen on laptops and larger displays. */
@media(orientation:landscape) and (min-height:651px){
 body[data-view=room]:has(#arena:not([hidden])) .preview-label{display:none}
 body[data-view=room]:has(#arena:not([hidden])) main{height:calc(100dvh - 78px);display:flex;flex-direction:column}
 #arena:not([hidden]){height:100%;min-height:0;display:flex;flex-direction:column;position:relative}
 #play-area{height:auto;flex:1;min-height:0}
 .match-strip,.arena-footer,.round-log,.map-heading,.question-heading,.question-submit,#action-panel{flex-shrink:0}
 #map-wrap,.question-scroll{min-height:0}#map{height:100%;max-height:100%;min-height:0}
 .question-panel{max-height:100%}
 .round-log[open]{position:absolute;bottom:0;left:0;right:0;z-index:8;max-height:60vh;overflow:auto;background:white;padding:10px;border:1px solid var(--line);border-radius:8px}
}

#play-area{position:relative}#play-area>#overlay{z-index:9;border-radius:var(--radius)}.order-short{color:#9a451e;font-weight:650}
.map-note{grid-column:1/-1;margin:0 0 8px;font-size:13px}.river{stroke:#5795b1;stroke-width:7;stroke-linecap:round;pointer-events:none;vector-effect:non-scaling-stroke}#river-key{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}#river-key i{display:inline-block;width:14px;border-top:4px solid #5795b1;border-radius:2px}.strategy-strip{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0;margin:0 0 6px;font-size:12px;color:var(--muted)}.strategy-strip p{margin:0;line-height:1.3}.strategy-strip .bonus-due{color:#805500;font-weight:650}#machine-style{white-space:nowrap}.score-breakdown{font-size:11px}.score{min-width:0}
@media(orientation:landscape) and (max-height:650px){.strategy-strip{font-size:10px;margin-bottom:4px}.score .score-breakdown{font-size:9px}.river{stroke-width:5}.map-heading{gap:7px}}
@media(max-width:760px) and (orientation:portrait){.strategy-strip{font-size:10px;flex-wrap:wrap}.score .score-breakdown{font-size:9px}.map-heading{gap:6px}.river{stroke-width:4}}
@media(max-width:760px) and (orientation:portrait){
 body[data-view=room]:has(#arena:not([hidden])) main{height:calc(100dvh - 63px);display:flex;flex-direction:column;padding:12px 16px}
 #arena:not([hidden]){height:100%;min-height:0;display:flex;flex-direction:column}
 #play-area,#play-area[data-panel=map]{height:auto;flex:1;min-height:0}
 .match-strip,.arena-footer,.round-log{flex-shrink:0}
 .map-heading{flex-shrink:0}#map-wrap{min-height:100px}#map{min-height:0}
 #action-panel{flex-shrink:0;min-height:0}.order-line{margin-top:5px}
 .round-log[open]{max-height:30vh;overflow:auto}
}
