.guild-switch {display:flex;justify-content:center;gap:10px;margin:0 auto 24px;flex-wrap:wrap}
.guild-switch button {min-height:44px}
.guild-switch button[aria-pressed="true"] {background:var(--tc-gold)}
.guild-panel {max-width:1200px;margin:0 auto;padding:0 16px 48px;color:var(--tc-ink)}
.guild-panel[hidden],#playerStandings[hidden] {display:none!important}
.guild-panel [hidden] {display:none!important}
.guild-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.guild-heading h2 {font-weight:900;margin:0 0 5px;font-size:1.6rem}
.guild-heading p {margin:0;color:var(--tc-ink-soft)}
.guild-layout {display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}
.guild-map-card,.guild-list-card {background:var(--tc-surface);border:2px solid var(--tc-ink);border-radius:20px;box-shadow:0 5px 0 var(--tc-line);overflow:hidden}
.guild-map-head {padding:16px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center}
.guild-map-head h3,.guild-list-card h3 {font-size:1rem;font-weight:900;margin:0}
.guild-map-tools {display:flex;gap:6px;flex-wrap:wrap}
.guild-map-tools button {min-width:40px;min-height:40px;padding:6px 10px;background:var(--tc-surface);border:2px solid var(--tc-ink);border-radius:10px;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 2px 0 var(--tc-line)}
.guild-map-tools button:hover {background:color-mix(in srgb, var(--tc-gold) 20%, var(--tc-surface))}
.guild-map-stage {position:relative;background:color-mix(in srgb, var(--tc-blue) 20%, var(--tc-surface));border-block:2px solid var(--tc-ink);aspect-ratio:1.75;min-height:290px;overflow:hidden}
.guild-map-stage svg {display:block;width:100%;height:100%;touch-action:none;cursor:grab;user-select:none}
.guild-map-stage svg {animation:guild-map-enter .45s ease-out}
@keyframes guild-map-enter {from {opacity:0} to {opacity:1}}
.guild-map-stage svg.is-dragging {cursor:grabbing}
.guild-land {fill:var(--tc-surface-2);stroke:var(--tc-line);stroke-width:.7}
.guild-territory {cursor:pointer;opacity:.75;transition:opacity .18s}
.guild-territory:hover,.guild-territory.is-selected {opacity:1}
.guild-frontier-halo {fill:none;stroke:var(--tc-surface);stroke-width:2.6;stroke-linejoin:round;pointer-events:none}
.guild-frontier {fill:none;stroke:var(--tc-ink);stroke-width:.9;stroke-linejoin:round;pointer-events:none}
.guild-frontier-selected {fill:none;stroke:var(--tc-gold);stroke-width:2;stroke-linejoin:round;pointer-events:none}
.guild-pin {cursor:pointer}
.guild-pin circle {fill:var(--tc-surface);stroke:var(--tc-ink);stroke-width:2}
.guild-pin.is-selected circle {stroke:var(--tc-gold-deep);stroke-width:3}
.guild-selected-label rect {fill:var(--tc-surface);stroke:var(--tc-ink);stroke-width:2}
.guild-selected-label text {fill:var(--tc-ink);font:900 12px Nunito,sans-serif;pointer-events:none}
.guild-map-detail {min-height:64px;display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--tc-surface-2)}
.guild-map-detail img {width:48px;height:32px;object-fit:cover;border:2px solid var(--tc-ink);border-radius:5px;box-shadow:0 2px 0 var(--tc-line)}
.guild-map-detail strong {font-weight:900}
.guild-map-detail small {display:block;color:var(--tc-ink-soft)}
.guild-note {padding:12px 16px;margin:0;font-size:.85rem;color:var(--tc-ink-soft)}
.guild-list-card h3 {padding:16px;border-bottom:2px solid var(--tc-ink)}
.guild-list {max-height:520px;overflow:auto;padding:6px;margin:0;list-style:none}
.guild-row {width:100%;display:grid;grid-template-columns:24px 32px minmax(0,1fr);gap:8px;align-items:center;text-align:left;border:2px solid transparent;background:var(--tc-surface);color:var(--tc-ink);padding:10px 8px;border-radius:12px;font:inherit;cursor:pointer;min-height:62px}
.guild-row:hover {background:var(--tc-surface-2)}
.guild-row[aria-pressed="true"] {border-color:var(--tc-ink);background:color-mix(in srgb, var(--tc-gold) 20%, var(--tc-surface));box-shadow:0 3px 0 var(--tc-gold)}
.guild-row img {width:32px;height:23px;object-fit:cover;border:1px solid var(--tc-ink);border-radius:4px}
.guild-row strong {display:block;font-weight:900;overflow-wrap:anywhere}
.guild-row small {display:block;font-size:.8rem;color:var(--tc-ink-soft)}
.guild-rank {font-weight:900;color:var(--tc-gold-text)}
.guild-status {padding:24px;text-align:center}
.guild-period {display:flex;gap:6px;padding:10px 12px}
.guild-period button {flex:1;min-height:44px;padding:8px;background:var(--tc-surface);color:var(--tc-ink);border:1px solid var(--tc-line);border-radius:8px;font:inherit;font-size:.85rem;cursor:pointer}
.guild-period button[aria-pressed="true"] {background:var(--tc-surface-2);border-color:var(--tc-ink);font-weight:800}
.guild-invite {margin:12px;max-width:calc(100% - 24px);min-height:44px}
.guild-attribution {padding:0 16px 12px;font-size:.7rem;color:var(--tc-ink-soft)}
.guild-country-picker {background:var(--tc-surface-2);border:2px solid var(--tc-ink);border-radius:14px;padding:14px;margin-bottom:20px}
.guild-country-picker label {display:block;font-weight:900;margin-bottom:8px}
.guild-country-picker select {width:100%;min-height:44px;border:2px solid var(--tc-ink);background:var(--tc-surface);color:var(--tc-ink);border-radius:10px;font:inherit;padding:8px}
.guild-country-picker p {font-size:.85rem;color:var(--tc-ink-soft);margin:8px 0 0}
.guild-country-preview {display:flex;align-items:center;gap:10px;font-weight:800;margin-top:10px}
.guild-country-preview img {width:44px;height:30px;object-fit:cover;border:2px solid var(--tc-ink);border-radius:5px}
.guild-country-picker [hidden] {display:none}
.guild-profile-card {background:var(--tc-surface);border:2px solid var(--tc-ink);border-radius:16px;box-shadow:0 4px 0 var(--tc-line);padding:20px;margin:0 0 24px}
.guild-profile-card h2 {font-size:1.25rem;font-weight:900;margin:0 0 6px;color:var(--tc-ink)}
.guild-profile-card p {color:var(--tc-ink-soft);margin:0 0 14px}
.guild-profile-choice {display:grid;grid-template-columns:minmax(0,360px) 48px;align-items:center;justify-content:start;gap:10px}
.guild-profile-choice label {grid-column:1/-1;font-weight:800;color:var(--tc-ink)}
.guild-profile-choice select {width:100%;min-width:0;min-height:44px;background:var(--tc-surface);color:var(--tc-ink);border:2px solid var(--tc-ink);border-radius:10px;padding:8px 12px;font:inherit}
.guild-profile-choice img {width:48px;height:32px;object-fit:cover;border:2px solid var(--tc-ink);border-radius:5px}
.guild-profile-actions {display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px}
.guild-profile-actions [hidden] {display:none!important}
.guild-profile-status {font-size:.85rem;color:var(--tc-ink-soft);min-height:1.4em;margin-top:10px}
.guild-profile-choice select:focus-visible {outline:3px solid var(--tc-blue-deep);outline-offset:3px}
.guild-google-hint {display:block;text-align:center;margin:10px 0 0;color:var(--tc-ink-soft);font-size:.85rem}
.guild-board-backdrop {position:absolute;z-index:0;pointer-events:none;border:2px solid var(--tc-ink);border-radius:20px;overflow:hidden;background:var(--tc-surface-2);box-shadow:0 5px 0 var(--tc-line)}
.guild-board-backdrop img {display:block;width:100%;height:100%;object-fit:cover;opacity:.55}
.guild-board-host {position:relative;isolation:isolate}
.guild-board-host>.guild-board-surface {position:relative;z-index:1}
.guild-board-section>#status,.guild-board-section>#waitingStatus,.guild-board-section>.moves-panel,.guild-board-section>.mobile-controls {position:relative;z-index:2}
.guild-panel button:focus-visible,.guild-switch button:focus-visible,.guild-country-picker select:focus-visible {outline:3px solid var(--tc-blue-deep);outline-offset:3px}
@media(max-width:900px) {.guild-layout {grid-template-columns:1fr}.guild-list {max-height:340px}.guild-map-stage {min-height:320px}}
@media(max-width:480px) {.guild-panel {padding-inline:10px}.guild-map-head {padding:12px}.guild-map-stage {min-height:300px}.guild-heading h2 {font-size:1.35rem}}
@media(prefers-reduced-motion:reduce) {.guild-territory {transition:none}.guild-map-stage svg {animation:none}}
