/* A Realm of Dragons v21.0.0 — Crowned Realm Control */
:root{--v21-panel-bg:rgba(12,13,10,.965);--v21-gold:#e7c878;--v21-line:rgba(232,201,124,.34)}
/* Political and parcel colours are display-only. Pins, labels and explicit editor tools own interaction. */
#parcelLayer,#claimLayer,#v19HexPoliticalLayer,#v19HexGridLayer,#v19HexSelectionLayer{pointer-events:none!important}
body.v21-placement-active #atlasSvg{cursor:crosshair!important}
body.v21-territory-brush #atlasSvg{cursor:cell!important}

/* Label boxes are removed permanently; readable outlined text remains above each marker. */
.marker-label-bg,.annotation-label-bg{display:none!important}
.marker-label,.annotation-label{paint-order:stroke fill;stroke:#080806!important;stroke-width:2px!important;stroke-linejoin:round;vector-effect:non-scaling-stroke;text-shadow:none!important;filter:none!important}
.marker-leader,.annotation-leader{display:none!important}
.location-marker .marker-label{pointer-events:auto;cursor:pointer}

.v21-map-command-toggle{position:absolute;z-index:66;right:12px;top:14px;width:46px;height:46px;border:1px solid var(--v21-line);border-radius:13px;background:linear-gradient(180deg,rgba(28,26,20,.98),rgba(9,10,8,.98));color:var(--v21-gold);font-size:22px;font-weight:900;box-shadow:0 12px 32px rgba(0,0,0,.45)}
.v21-map-command-panel{position:absolute;z-index:65;right:10px;top:68px;width:min(320px,calc(100vw - 20px));max-height:calc(100dvh - var(--header) - 96px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--v21-line);border-radius:15px;background:var(--v21-panel-bg);box-shadow:0 24px 70px rgba(0,0,0,.58);backdrop-filter:blur(18px);padding:12px;display:grid;gap:12px}
.v21-map-command-panel[hidden]{display:none!important}.v21-command-head{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:9px}.v21-command-head small{display:block;color:var(--gold);font-size:9px;letter-spacing:.12em}.v21-command-head strong{font-family:Georgia,serif;color:#fff0c5}.v21-command-head button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.04);color:var(--cream);font-size:20px}.v21-command-section{display:grid;gap:7px}.v21-command-section>small{color:var(--gold);font-size:9px;letter-spacing:.14em}.v21-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.v21-command-grid button{min-height:43px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.035);color:var(--cream);font-weight:800;padding:8px;display:flex;gap:7px;align-items:center;justify-content:center}.v21-command-grid button:hover{border-color:var(--line2);background:rgba(223,185,92,.1)}.v21-command-grid button span{color:var(--gold2)}
.v21-map-command-panel .staff-command{border-color:rgba(219,170,67,.38);background:rgba(219,170,67,.055)}

/* The old scattered controls are replaced with one scrollable command panel. */
.map-viewport>.zoom-controls,.map-viewport>.map-tools{display:none!important}
.preset-bar{top:auto!important;bottom:18px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;max-width:min(760px,calc(100% - 40px));overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.map-readout{bottom:72px!important}

.v21-brush-banner{position:absolute;z-index:70;left:50%;top:76px;transform:translateX(-50%);width:min(680px,calc(100% - 24px));display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e4bd5e;border-radius:13px;padding:11px 13px;background:rgba(28,22,12,.97);box-shadow:0 18px 45px rgba(0,0,0,.52)}.v21-brush-banner strong{display:block;color:#fff0c2;font-family:Georgia,serif}.v21-brush-banner span{display:block;color:#c8bea8;font-size:11px;margin-top:3px}.v21-brush-banner button{white-space:nowrap}

.v21-territory-grid{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(280px,1.3fr);gap:13px}.v21-territory-card{border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.018);padding:13px;display:grid;gap:10px}.v21-territory-card h3{margin:0;font-family:Georgia,serif;color:var(--gold2)}.v21-territory-card p{margin:0;color:var(--muted);line-height:1.5}.v21-preview-chip{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:9px;background:rgba(0,0,0,.18)}.v21-preview-chip i{width:30px;height:30px;border-radius:8px;background:var(--preview,#8d7440);border:1px solid rgba(255,255,255,.35)}.v21-preview-chip small{display:block;color:var(--muted)}.v21-danger-zone{border-color:rgba(166,67,72,.46);background:rgba(113,37,42,.08)}
.v21-save-card{border-color:rgba(105,177,116,.42)!important}.v21-save-status{display:block;margin-top:8px;color:var(--muted);line-height:1.45}.v21-save-status.good{color:#a8d7a8}.v21-save-status.bad{color:#e8a2a2}.v21-save-status.busy{color:#efd58a}
.v21-snapshot-list{display:grid;gap:7px;max-height:330px;overflow:auto}.v21-snapshot-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px}.v21-snapshot-list small{display:block;color:var(--muted)}
.v21-colour-field{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center}.v21-colour-field input[type=color]{width:64px;height:48px;border:1px solid var(--line2);border-radius:10px;background:#111;padding:3px}.v21-colour-swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:5px}.v21-colour-swatches button{aspect-ratio:1;border:1px solid rgba(255,255,255,.35);border-radius:7px;background:var(--swatch);min-width:24px}

@media(max-width:900px){
 .v21-map-command-toggle{top:78px;right:10px}.v21-map-command-panel{top:132px;right:8px;max-height:calc(100dvh - 218px)}
 .preset-bar{left:10px!important;right:10px!important;bottom:74px!important;transform:none!important;max-width:none!important}
 .map-readout{bottom:128px!important}
 .v21-brush-banner{top:136px;align-items:flex-start}.v21-territory-grid{grid-template-columns:1fr}
}
@media(min-width:901px){.atlas-search-panel{max-width:430px}.topbar{min-width:0}.topbar>.brand{min-width:235px!important}.topbar>.desktop-nav{min-width:0;overflow-x:auto}.topbar-actions{flex:0 0 auto}}
@media(min-width:901px) and (max-width:1280px){.brand-text small,.realm-date{display:none}.topbar>.brand{min-width:205px!important}.topbar-actions .button.ghost{display:none}.preset-bar{max-width:calc(100% - 380px)!important}}
@media(max-width:560px){.v21-command-grid{grid-template-columns:1fr 1fr}.v21-map-command-panel{width:calc(100vw - 16px)}.v21-brush-banner{display:grid;top:132px}.v21-brush-banner button{width:100%}}
