/* rise4-map: quiet atlas lettering; geography remains visible below it. */
.r4-map-label { position:absolute; left:0; top:0; pointer-events:none; font:small-caps 14px Georgia, 'Times New Roman', serif; letter-spacing:.06em; color:#ece4c7; text-shadow:0 1px 3px #3e4831, 0 0 5px #3e4831; white-space:nowrap; }
.r4-map-label.sea { font-variant:normal; font-style:italic; color:#a9bdc6; text-shadow:0 1px 4px #304d60; }
.r4-map-label[hidden] { display:none; }
body.theme-light .r4-map-label { color:#f7efd8; }
.rise3d.is-mobile .r4-map-label { font-size:12px; letter-spacing:.02em; }

.r4-map-overview { display:none; font-size:12px; }
.r3-minimap.expanded .r4-map-overview, .r3-panel .r4-map-overview { display:block; }

/* rise6-map: where am I (province · region · country), the Turkey/World switch and atlas lettering tiers. */
.rise3d .r6-map-place { margin:0 2px 4px; font-size:12px; line-height:1.3; color:#cfc6a5; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rise3d .r6-map-place strong { color:#f3ead0; font-weight:600; letter-spacing:.01em; }
.rise3d .r6-map-view { min-height:26px; padding:0 8px; font-size:11px; border-radius:6px; flex-shrink:0; white-space:nowrap; }
.rise3d.is-phone .r3-panel .r6-map-place { font-size:14px; margin:0 0 8px; }
.r4-map-label.city { font:12px Georgia, 'Times New Roman', serif; letter-spacing:.02em; color:#f3ead0; }
.r4-map-label.city::before { content:''; display:inline-block; width:5px; height:5px; margin:0 4px 1px 0; background:#efe5c4; box-shadow:0 0 0 1px rgba(30,30,22,.8); vertical-align:middle; }
.r4-map-label.capital { color:#f4ce72; font-weight:600; }
.r4-map-label.capital::before { background:#f4ce72; }
.r4-map-label.province { font-size:15px; letter-spacing:.14em; color:rgba(240,232,205,.9); }
.r4-map-label.country { font-size:13px; letter-spacing:.16em; color:rgba(236,228,199,.82); }
.rise3d.is-mobile .r4-map-label.city { font-size:11px; }
.rise3d.is-mobile .r4-map-label.province { font-size:13px; }

/* rise7: player finder. Small map: a list that opens above the map; enlarged map: a column over the
   canvas; phone map sheet: inline above the map. */
.rise3d .r7-players { position:absolute; left:-1px; right:-1px; bottom:calc(100% + 6px); display:flex; flex-direction:column; gap:6px; padding:8px; max-height:min(340px, 55vh);
  background:var(--r3-paper); border:1px solid var(--r3-line); border-radius:8px; box-shadow:var(--shadow-md, 0 4px 12px #0005); z-index:3; }
.rise3d .r7-players[hidden] { display:none; }
.rise3d .r7-players input { width:100%; min-height:32px; padding:0 10px; border-radius:6px; border:1px solid var(--r3-line); background:var(--r3-control); color:var(--r3-ink); font-size:13px; }
.rise3d .r7-player-list { display:flex; flex-direction:column; gap:2px; overflow-y:auto; overscroll-behavior:contain; min-height:0; }
.rise3d .r7-player { display:flex; align-items:center; gap:8px; width:100%; min-height:40px; padding:4px 6px; text-align:left; background:none; border:0; border-radius:6px; color:var(--r3-ink); }
.rise3d .r7-player:hover, .rise3d .r7-player:focus-visible { background:var(--r3-control); }
.rise3d .r7-player .r3-flag-icon { flex:0 0 auto; }
.rise3d .r7-player-copy { display:flex; flex-direction:column; min-width:0; flex:1; }
.rise3d .r7-player-copy strong { font-size:13px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rise3d .r7-player-copy small { font-size:11px; color:var(--r3-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rise3d .r7-player-level { flex:0 0 auto; font-size:11px; color:var(--r3-gold); font-variant-numeric:tabular-nums; }
.rise3d .r7-players-empty { margin:6px 4px; font-size:12px; color:var(--r3-muted); }
.rise3d .r7-players-toggle[aria-expanded='true'] { border-color:var(--r3-gold); color:var(--r3-gold); }
.rise3d .r3-minimap.expanded .r7-players { left:auto; right:16px; top:44px; bottom:auto; width:280px; max-height:calc(100% - 100px); }
.rise3d.is-phone .r3-panel .r7-players { position:static; max-height:40vh; margin:0 0 8px; box-shadow:none; }
.rise3d.is-phone .r3-panel .r3-minimap-foot { display:flex; }
.rise3d.is-phone .r3-panel .r3-minimap-foot > :not(.r7-players-toggle) { display:none; }
.rise3d.is-phone .r3-panel .r7-player-copy small { display:block; }
