.round-main{max-width:1000px}.round-toolbar,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.round-toolbar{margin-bottom:22px}.grow{flex:1;min-width:200px}.actions{margin-top:14px}.round-main .panel{margin-bottom:20px}.progress-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.progress-grid div{padding:14px 8px;background:#eef3ef;border-radius:12px;text-align:center;font-size:13px}.progress-grid strong{display:block;font-size:25px}.active-section{background:#e1f3e8;border:1px solid #92bba6;padding:18px;border-radius:14px;margin:18px 0}.active-section .primary{display:block;text-align:center}.zone{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid #dbe4df}.zone-title{font-weight:650;overflow-wrap:anywhere}.zone-meta{font-size:13px;margin-top:5px;color:#53665e}.zone[data-state=active] .zone-meta{color:#956311}.zone[data-state=done] .zone-meta{color:#24704a}.zone button{flex-shrink:0;max-width:135px}.field-grid{display:flex;gap:10px}.field-grid label{flex:1;min-width:0}.field-grid input{width:100%}#map{display:block;width:100%;height:auto;min-height:240px;max-height:550px;background:#f1f5f1;border:1px solid #d9e3dc;border-radius:18px;touch-action:none}#map [data-object]{cursor:grab}#map text{pointer-events:none;user-select:none;font-family:system-ui,sans-serif}#map .chosen{stroke:#d4892b;stroke-width:3}#object-tools{padding:14px 0}#invite-qr{display:block;width:250px;max-width:100%;margin:auto;background:white}#invite-url{font-size:12px}#status-filter{max-width:140px}#section-labels{max-height:210px;overflow:auto}#section-labels label{font-size:13px}#detach-label{display:flex;gap:10px;align-items:center}#detach{width:auto}#message:empty,#error:empty{display:none}#message{background:#e5f1e8;padding:12px;border-radius:10px}dialog{max-height:90dvh;overflow:auto}button:disabled{opacity:.5}svg:focus{outline:2px solid #ce8b29}@media(max-width:540px){.round-main{padding:18px}.progress-grid div{font-size:11px}.round-toolbar .primary{width:100%}.zone{align-items:flex-start}.zone button{font-size:12px;padding:10px}.actions button{flex:1}#map{min-height:200px}.field-grid{gap:6px}}

.map-legend{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0;font-size:13px;font-weight:650}.map-legend span{padding:5px 9px;border-radius:7px;color:#173c2e}.legend-pending{background:#b8c3be}.legend-active{background:#efbd53}.legend-done{background:#73bf91}#selected-zone{padding:0 12px;background:#fff;border:2px solid #86a993;border-radius:12px;margin-bottom:12px}summary{cursor:pointer;font-weight:650}

.has-board .intro{display:none}.round-main .panel{padding:22px}.map-scroll{overflow:auto;max-height:none;border-radius:18px}.map-scroll.large #map{width:1000px;max-width:none;max-height:none;min-height:600px}.map-size{display:flex;align-items:center;gap:8px;font-size:13px}.map-size input{width:auto}#active-section p{font-size:13px}.round-main .intro h1{font-size:32px}

.map-scroll.large #map{touch-action:pan-x pan-y}

.invitation-code{font-size:42px;letter-spacing:.25em;text-align:center;font-weight:750}#join-code{text-transform:uppercase;font-size:24px;letter-spacing:.2em}#map [data-decoration]{pointer-events:none}.map-scroll.drag-mode #map{touch-action:none}.map-scroll:not(.drag-mode) #map{touch-action:pan-x pan-y}#map.dragging{cursor:grabbing}#map [data-object] text[data-title]{pointer-events:auto;cursor:grab}

#map .selected-row{fill:#8ec5ff;stroke:#176de0;stroke-width:4}.map-scroll #map.dragging [data-object]{cursor:grabbing}

.count-heading{padding:12px 2px 20px}.count-heading h1{font-size:clamp(26px,5vw,36px);line-height:1.15;margin:10px 0}.count-heading p{margin:0}
#administration summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:650}
#administration .round-toolbar{margin:16px 0}#administration{margin-bottom:12px}
#records-dialog{width:min(620px,calc(100% - 24px))}#records-list{max-height:50vh;overflow:auto}
.record-select{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #d7e1da;min-height:44px}
.record-select input{width:22px;height:22px;flex:none;margin:2px 0}.record-select strong,.record-select small{display:block}.record-select small{font-size:14px;color:#526b60;margin-top:5px}
.participant #map-hint,.participant #object-tools{display:none!important}
.participant #freshness{font-size:12px}.participant #map{cursor:pointer}
#selected-zone{position:sticky;top:0;z-index:3;background:#fff;border:1px solid #bfd0c5;border-radius:12px;padding:10px;margin:12px 0}
#selected-zone .zone{border:0;margin:0;padding:0}#selected-zone button{min-height:48px}
.count-options summary{min-height:44px;display:flex;align-items:center;cursor:pointer}
@media(max-width:600px){#selected-zone .zone{display:flex;flex-direction:column;align-items:stretch;gap:10px}#selected-zone button{width:100%}.count-heading{padding-bottom:12px}.round-main{padding-top:10px}}

#quick-choice{margin-top:16px}.map-zoom{font-size:13px}.participant .map-zoom{display:flex;min-height:44px}
.participant .map-legend{gap:6px}.participant .map-legend span{font-size:12px;padding:6px}
.participant .panel{padding:20px}.participant #map{min-height:220px}

.move-controls{margin:18px 0;padding:14px;background:#e8f0eb;border-radius:12px}
#toggle-move{min-height:48px;font-size:16px}#toggle-move[aria-pressed=true]{background:#173f30;color:white}
#map [data-title]{cursor:pointer;pointer-events:auto}#map [data-label] text{pointer-events:none}
.map-scroll.drag-mode{outline:3px solid #3b8661;outline-offset:3px}.map-scroll.drag-mode #map [data-object]{cursor:grab}

.count-heading h1{letter-spacing:-.025em}.map-zoom input{width:22px;height:22px}.map-scroll.large #map{min-width:760px}

#admin-map-tools{border-top:1px solid #d4dfd7;margin-top:16px;padding-top:12px}#admin-map-tools h3{margin:0 0 8px}

.admin-files{border-top:1px solid #d4dfd7;padding:16px 0;margin-top:16px}.admin-files .secondary{display:block;margin:10px 0;text-align:center;min-height:44px}.admin-files [hidden]{display:none!important}

/* One shelf row per card; shared status colors with the map and scanner. */
.legend-mine{background:#8ec5ff}
#zones{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}
.zone{--zone-accent:#9daea5;--zone-bg:#f3f5f2;display:flex;flex-direction:column;align-items:stretch;gap:12px;border:1px solid #d9e3dc;border-left:5px solid var(--zone-accent);border-radius:14px;background:var(--zone-bg);padding:16px;color:var(--ink)}
.zone[data-state=mine]{--zone-accent:#176de0;--zone-bg:#edf4ff}
.zone[data-state=active]{--zone-accent:#c89021;--zone-bg:#fff7e3}
.zone[data-state=done]{--zone-accent:#3b8b60;--zone-bg:#edf7ef}
.zone-context{display:block;color:#65746e;font-size:12px;margin-bottom:4px}
.zone-title{font-size:16px;line-height:1.3}
.zone-meta{font-size:13px;font-weight:600;line-height:1.5}
.zone[data-state=mine] .zone-meta{color:#175bb7}
.zone button{max-width:none;width:100%;min-height:44px;font-size:14px;padding:10px;border-radius:10px}
.zone[data-state=done] .primary,.zone[data-state=active] .primary{background:transparent;color:#254d3c;border:1px solid #98b6a5}
.zone[data-state=active] .primary{border-color:#c9b16f;color:#755311}
.zone[data-state=mine] .primary{background:#175bb7}
.zone .primary:disabled{opacity:1;cursor:default}
.division-status{display:flex;gap:5px;margin-top:12px;flex-wrap:wrap}
.division-status span{display:flex;align-items:center;justify-content:center;min-width:32px;height:28px;border:1px solid #98a9a0;border-radius:5px;font-size:12px;color:#173c2e;background:#dfe5e0}
.division-status [data-state=mine]{background:#8ec5ff;border-color:#176de0}
.division-status [data-state=active]{background:#efbd53;border-color:#b78219}
.division-status [data-state=done]{background:#73bf91;border-color:#398459}
#selected-zone .zone{padding:12px;border-left:5px solid var(--zone-accent)}

.admin-records{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.admin-records p,.reset-section p{font-size:14px;color:var(--muted)}
#records-dialog h2,#reset-dialog h2{font-size:24px;letter-spacing:-.5px;margin:8px 0 14px;line-height:1.2}
#records-dialog h3{font-size:17px;margin:0 0 8px}.reset-section{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.reset-danger{color:#963d35;border:1px solid #d3a59f;background:#fff8f6;min-height:48px;width:100%}
#reset-confirm{background:#963d35;color:#fff;border:0}.reset-preserved{padding:12px;background:#edf3ee;border-radius:10px;font-size:14px}
#reset-dialog .actions{display:grid;grid-template-columns:1fr 1fr;margin-top:24px}#reset-dialog .actions button{min-height:48px}#reset-title{font-weight:650}

.embedded-count .top,.embedded-count #administration,.embedded-count #manage-records,.embedded-count .owner-control,.embedded-count #object-tools{display:none!important}
.embedded-count .round-main{padding-top:calc(16px + env(safe-area-inset-top))}
.participant #board>div.panel{display:none}
.participant #board>details{display:none}
.participant .count-heading h1{font-size:28px}.participant .count-heading p{font-size:15px}
.embedded-count .count-heading{padding-top:0}

.embedded-count .intro{display:none}

.embedded-count .panel{padding-top:16px}.participant #map-zoom-button{display:block;min-height:44px;margin:8px 0}

#map{background:#f4f6f0}#map [data-zone]{cursor:pointer;transition:fill .15s ease}#map [data-decoration]{pointer-events:none}

.map-navigation{display:flex;align-items:center;gap:14px;margin-top:14px}.map-navigation strong{font-size:18px}#map.overview-map{max-height:none;min-height:0;background:#f4f5ef}#map [data-overview-area]{cursor:pointer;outline:none}#map [data-overview-area]:hover .overview-card{stroke:#587f60}#map [data-overview-area]:focus .overview-card{stroke:#176de0;stroke-width:4}.map-navigation button{min-height:44px}#map-caption{margin:8px 0 14px}@media(prefers-reduced-motion:reduce){#map{animation:none}}

/* Shared map chrome; status and realistic furniture colors remain semantic. */
.round-main .panel{border-color:var(--line);border-radius:14px;padding:18px;margin-bottom:12px}
.progress-grid div,.move-controls,.reset-preserved,#message{background:var(--tint)}
.active-section{background:var(--tint);border-color:var(--line)}
#map,#map.overview-map{background:var(--bg);border-color:var(--line)}
.count-heading{padding:4px 0 12px}
.count-heading h1{font-size:clamp(24px,4vw,30px);margin:6px 0}
.count-heading .muted{max-width:none}
.map-navigation strong{font-size:16px}
.embedded-count .round-main{padding:12px 18px}
.participant .panel{padding:16px}
#toggle-move[aria-pressed=true]{background:var(--green)}
.map-scroll.drag-mode{outline-color:var(--green)}
@media(max-width:540px){.round-main{padding:12px 16px}.count-heading h1{font-size:24px}.map-legend{gap:6px}.map-legend span{font-size:12px}}
