/* Match the native game frame, including its responsive display envelope. */
#game-column:has(#left-panel[data-view=map]:not([hidden])){height:auto;min-height:450px;border-color:#0f1820;border-radius:20px;box-shadow:0 0 0 2px #0f1820;background:#22303c}
#left-panel[data-view=map]{--navy:#22303c;--ink:#0f1820;--cream:#fbf6e9;--cream2:#f3ead2;--olive:#5e5232;--dash:#c9b276;--blush:#fbe9e2;--mist:#c9d3df;--gold:#ffd76a;--blue:#2f6fb0;--pix:'Pixelify Sans',"Courier New",monospace;--mono:"Courier New",Courier,monospace;background:var(--navy);color:var(--navy);overflow:hidden;font-weight:400}
/* the new look: the sheet draws its own head (as the AI sheet and the journal), so the red page header is hidden */
#left-panel[data-view=map]>:is(.panel-header,.panel-description){display:none}
#left-panel[data-view=map] .panel-content{position:relative;display:flex;flex:1;min-height:0;width:100%;max-width:none;margin:0;padding:0;overflow:hidden;outline:none}
.atlas-sheet{display:flex;flex:1;flex-direction:column;gap:10px;min-width:0;min-height:0;box-sizing:border-box;padding:12px 16px 16px;font:13px/1.4 var(--mono);font-variant-ligatures:none}
.atlas-sheet *{font-variant-ligatures:none}.atlas-sheet [hidden]{display:none!important}
#left-panel .atlas-sheet button{min-height:0;margin:0;box-shadow:none;font-weight:inherit;cursor:pointer}
.atlas-head{display:flex;flex-shrink:0;align-items:center;gap:12px;color:var(--blush)}.atlas-head svg{flex-shrink:0}
.atlas-head .sx-titles{display:flex;flex-direction:column;flex-grow:1;min-width:0}
.atlas-head .sx-eyebrow{overflow:hidden;color:var(--mist);font-size:11px;letter-spacing:.06em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap}
.atlas-head .sx-title{margin:0;font:600 24px/1.05 var(--pix);letter-spacing:0}
.atlas-sheet kbd{padding:0 5px;border:1.5px solid currentColor;border-radius:4px;background:none;color:inherit;font:600 11px/1.4 var(--mono)}
.atlas-body{display:grid;flex:1;grid-template-columns:minmax(0,1fr);gap:12px;min-height:0}
.atlas-body:has(>.atlas-index:not([hidden])){grid-template-columns:clamp(176px,24%,240px) minmax(0,1fr)}
.atlas{position:relative;container-type:size;min-width:0;min-height:0;overflow:hidden;box-sizing:border-box;border:4px solid var(--ink);border-radius:12px;touch-action:none;background:radial-gradient(ellipse at 50% 20%,#cee1d1,#8ab2b7 55%,#608e9f);isolation:isolate}
.atlas[data-mode=world]{background:radial-gradient(ellipse at 50% 50%,#224956,#142f3c 65%,#102330)}
.atlas-city-stage,.atlas-world-stage,.atlas-landmarks,.atlas-team-pins{position:absolute;inset:0}
.atlas-city-stage,.atlas-globe-canvas{cursor:grab}.atlas-city-stage:active,.atlas-globe-canvas:active{cursor:grabbing}
.atlas-city-canvas,.atlas-globe-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none}
.atlas-landmarks,.atlas-team-pins{pointer-events:none}
/* the places: a cream plaque with its number under a small dot; the mission pin: a navy tag with its medal */
.atlas-landmark-dot{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;box-sizing:border-box;border:2px solid var(--navy);border-radius:50%;background:var(--cream)}
.atlas-plaque{position:absolute;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:2px 8px 2px 3px;border:2px solid var(--navy);border-radius:8px;background:var(--cream);box-shadow:0 3px 0 var(--ink);color:var(--navy);font:600 12px/1.3 var(--mono);white-space:nowrap}
.atlas-plaque:before{content:"";position:absolute;left:50%;top:-9px;width:2px;height:7px;background:var(--navy);transform:translateX(-50%)}
.atlas-plaque b{display:inline-grid;place-items:center;min-width:20px;height:20px;box-sizing:border-box;padding:0 4px;border-radius:10px;background:var(--navy);color:var(--cream);font:600 14px/1 var(--pix)}
.atlas-plaque.is-num{padding:2px}.atlas-plaque.is-num .atlas-plaque-name{display:none}.atlas-plaque.is-hot{background:var(--gold);z-index:1}
.atlas.no-places .atlas-plaque:not(.is-hot),.atlas.no-places .atlas-landmark-dot{display:none}
.atlas-mission{position:absolute;z-index:2;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-100%);pointer-events:none}
.atlas-mission.is-below{flex-direction:column-reverse;transform:translate(-50%,0)}
.atlas-mission-tag{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border:3px solid var(--ink);border-radius:10px;background:var(--navy);box-shadow:0 3px 0 var(--ink);color:var(--blush);white-space:nowrap}
.atlas-mission-tag small{display:block;color:var(--mist);font:10px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.atlas-mission-tag strong{display:block;font:600 15px/1.2 var(--pix)}
.atlas-mission-stem{display:block;width:3px;height:16px;background:var(--ink)}
.atlas-mission-ring{display:block;width:22px;height:10px;margin-top:-5px;box-sizing:border-box;border:3px solid #c84a4a;border-radius:50%;animation:atlas-pulse 1.6s ease-out infinite}
.atlas-mission.is-below .atlas-mission-ring{margin:0 0 -5px}
@keyframes atlas-pulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(1.8);opacity:0}}
/* medals, as the journal's (game.css .jr-medal) */
.atlas-medal{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;box-sizing:border-box;border:3px solid var(--cream);border-radius:50%;background:#3a4a58;color:#fff;box-shadow:inset 0 -3px 0 #00000026;font:600 16px/1 var(--pix)}
.atlas-medal[data-mark="!"]{background:#c84a4a}.atlas-medal[data-mark="✓"]{background:#3f8a4f}.atlas-medal[data-mark=S]{background:#ffd76a;color:#8a5d00}.atlas-medal[data-mark=A]{background:#f3b3a8;color:#9a3a26}.atlas-medal[data-mark=B]{background:#b9d3f0;color:#1f4f86}.atlas-medal[data-mark=C]{background:#d6e8c5;color:#3f6a2a}.atlas-medal[data-mark=D]{background:#e6dcc3;color:#5e5232}
/* the «Lugares» index: fixed head, mission and «Ver todo»; only the numbered list scrolls */
.atlas-index{display:flex;flex-direction:column;min-width:0;min-height:0;box-sizing:border-box;border:4px solid var(--ink);border-radius:12px;background:var(--cream);color:var(--navy)}
.atlas-index-head{display:flex;flex-shrink:0;align-items:baseline;gap:8px;padding:8px 12px 6px}
.atlas-index-head b{color:var(--olive);font:500 15px/1.2 var(--pix)}.atlas-index-head span{margin-left:auto;color:var(--olive);font:600 14px var(--pix)}
.atlas-index-mission{flex-shrink:0;margin:0 10px 8px}
.atlas-index-rule{flex-shrink:0;width:auto;margin:0 10px 8px;border:0;border-top:2px dashed var(--dash)}.atlas-index-list+.atlas-index-rule{margin:8px 10px 0}
.atlas-index-list{flex:1 1 auto;min-height:0;margin:0 10px;padding:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;list-style:none;border:2px solid var(--navy);border-radius:10px;
  background:linear-gradient(#fff 30%,#fff0) top/100% 28px no-repeat local,linear-gradient(#fff0,#fff 70%) bottom/100% 28px no-repeat local,radial-gradient(farthest-side at 50% 0,#0f182033,#0f182000) top/100% 10px no-repeat scroll,radial-gradient(farthest-side at 50% 100%,#0f182033,#0f182000) bottom/100% 10px no-repeat scroll,#fff}
.atlas-index-list li+li{border-top:2px dashed var(--dash)}
#left-panel .atlas-sheet .atlas-index-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:center;width:100%;min-height:40px;padding:4px 8px;border:0;border-radius:0;background:none;color:var(--navy);font:inherit;text-align:left}
#left-panel .atlas-sheet .atlas-index-row:hover{background:var(--cream2)}#left-panel .atlas-sheet .atlas-index-row[aria-current=true]{background:var(--gold)}
#left-panel .atlas-sheet .atlas-index-mission .atlas-index-row{grid-template-columns:30px minmax(0,1fr);border:2px solid var(--navy);border-radius:10px;background:#fff;box-shadow:0 3px 0 var(--ink)}
#left-panel .atlas-sheet .atlas-index-mission .atlas-index-row[aria-current=true]{background:var(--gold)}
.atlas-index-mission .atlas-medal{width:30px;height:30px;border-color:var(--navy)}
#left-panel .atlas-sheet .atlas-world-index .atlas-index-row{grid-template-columns:32px minmax(0,1fr);min-height:48px}
.atlas-index-loading{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px;color:var(--olive);font-size:12px}.atlas-index-loading .atlas-loader{flex-shrink:0;width:16px;height:16px;border-color:#5e523240;border-top-color:var(--olive)}
.atlas-main{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}.atlas-main>.atlas{flex:1}
.atlas-zones{display:flex;flex-shrink:0;gap:6px;padding:6px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin;box-sizing:border-box;border:4px solid var(--ink);border-radius:12px;background:var(--cream)}
#left-panel .atlas-sheet .atlas-zone{display:flex;flex:0 0 auto;align-items:center;gap:7px;min-height:40px;padding:6px 14px;border:3px solid transparent;border-radius:9px;background:none;color:var(--navy);font:500 15px/1.1 var(--pix);white-space:nowrap}
#left-panel .atlas-sheet .atlas-zone:hover:not(:disabled){background:var(--cream2)}
#left-panel .atlas-sheet .atlas-zone[aria-selected=true]{border-color:var(--ink);background:var(--gold);box-shadow:0 3px 0 var(--ink);font-weight:600}
#left-panel .atlas-sheet .atlas-zone:disabled{color:#6f6a5c;cursor:not-allowed}
.atlas-zone-inside{padding:2px 7px;border:2px solid var(--navy);border-radius:6px;background:var(--cream);color:var(--navy);font:600 11px/1.2 var(--mono)}
.atlas-zone-here{flex-shrink:0;width:9px;height:9px;border-radius:50%;background:#3f9d5a;box-shadow:0 0 0 2px var(--cream),0 0 0 3.5px var(--navy)}
.atlas-world-list{margin-bottom:10px}
.atlas-dest-icon{display:grid;place-items:center;width:32px;height:32px}.atlas-dest-icon .atlas-landmark-icon{width:32px;height:32px;filter:none}
.atlas-num{display:grid;place-items:center;width:24px;height:24px;box-sizing:border-box;border-radius:50%;background:var(--navy);color:var(--cream);font:600 14px/1 var(--pix)}
.atlas-row-text{display:grid;min-width:0;line-height:1.2}.atlas-row-text b{font-size:12px;font-weight:600;overflow-wrap:anywhere}.atlas-row-text small{color:var(--olive);font-size:10px}
.atlas-index-foot{flex-shrink:0;padding:10px}
#left-panel .atlas-sheet .atlas-show-all{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;padding:0 12px;border:3px solid var(--ink);border-radius:10px;background:var(--gold);box-shadow:0 3px 0 var(--ink);color:var(--navy);font:600 15px/1 var(--pix)}
#left-panel .atlas-sheet .atlas-show-all:hover{background:#ffe08a}
/* the round controls: ⌂, +, −, places on or off (P) */
.atlas-tools{position:absolute;top:12px;right:12px;z-index:4;display:flex;flex-direction:column;gap:10px}
.atlas[data-mode=world] .atlas-tools{display:none}
/* a short map card: the round controls need the right edge, so the small globe goes (the world button stays in the team row's place) */
@container (max-height:430px){.atlas[data-mode=city] .atlas-globe-dock{display:none}}
#left-panel .atlas-sheet .atlas-tool{position:relative;display:grid;place-items:center;width:38px;height:38px;padding:0;border:3px solid var(--ink);border-radius:50%;background:var(--cream);box-shadow:0 3px 0 var(--ink);color:var(--navy);font:600 20px/1 var(--pix)}
#left-panel .atlas-sheet .atlas-tool:hover{background:#fff}
#left-panel .atlas-sheet .atlas-places-toggle[aria-pressed=true]{background:var(--gold)}
.atlas-eye-off{display:none}.atlas-places-toggle[aria-pressed=true] .atlas-eye-on{display:none}.atlas-places-toggle[aria-pressed=true] .atlas-eye-off{display:block}
.atlas-kb{position:absolute;right:-8px;bottom:-7px;padding:0 3px;border:2px solid var(--ink);border-radius:4px;background:var(--gold);color:var(--navy);font:600 9px/1.3 var(--mono)}
.atlas-globe-dock{position:absolute;right:18px;bottom:16px;width:180px;height:180px;filter:drop-shadow(0 5px 10px #173b4e66)}
.atlas-mini-globe{position:absolute;inset:0}
#left-panel .atlas-sheet .atlas-globe-expand{position:absolute;right:0;top:0;z-index:3;display:grid;place-items:center;width:38px;height:38px;padding:0;border:3px solid var(--ink);border-radius:50%;background:var(--cream);box-shadow:0 3px 0 var(--ink);color:var(--navy);font-size:18px}
.atlas[data-mode=world] .atlas-globe-dock{display:none}
.atlas-globe-pins,.atlas-globe-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.atlas-globe-leaders{fill:#f1d9aa;stroke:#f1d9aa;stroke-width:1;opacity:.7}
#left-panel .atlas-globe-pins button{position:absolute;pointer-events:auto;background:none;border:0;padding:0;transform:translate(-50%,-100%);color:#fff5dc;box-shadow:none;z-index:1;line-height:1}
.atlas-landmark-icon{display:block;width:58px;height:58px;filter:drop-shadow(0 2px 1px #143644aa)}
.atlas-mini-globe .atlas-landmark-icon{width:30px;height:30px}
.atlas-globe-pins [aria-pressed=true] .atlas-landmark-icon{filter:drop-shadow(0 0 3px #fff0b9) drop-shadow(0 2px 1px #143644aa)}
.atlas-place-label{position:absolute;left:50%;top:100%;transform:translateX(-50%);padding:6px 9px;border-radius:4px;background:#fff4d9;color:#294a52;font-size:11px;white-space:nowrap;box-shadow:0 2px 0 #102f3f50;opacity:0;pointer-events:none}
.atlas-globe-pins button:hover .atlas-place-label,.atlas-globe-pins button:focus-visible .atlas-place-label,.atlas-world-stage [aria-pressed=true] .atlas-place-label{opacity:1}
.atlas-mini-globe .atlas-place-label{font-size:9px;top:auto;bottom:100%}
#left-panel .atlas-pin{position:absolute;display:flex;align-items:center;flex-direction:column;transform:translate(-50%,-100%);pointer-events:auto;min-width:42px;padding:0 0 10px;background:none;color:#273b41;border:0;box-shadow:none;z-index:2;filter:drop-shadow(0 3px 2px #16354566)}
.atlas-pin:after{content:"";position:absolute;bottom:1px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:8px solid #faf1cf}
.atlas-portrait{display:block;position:relative;width:42px;height:42px;overflow:hidden;border:3px solid #fff3cf;border-radius:50%;background:#477b89}
.atlas-portrait canvas{position:absolute;width:64px;height:64px;left:50%;top:-8px;transform:translateX(-50%);image-rendering:pixelated;pointer-events:none}
.atlas-pin.is-self .atlas-portrait{background:#bb594b}
.atlas-pin>strong{display:flex;align-items:center;gap:3px;margin-top:3px;padding:2px 7px;border:2px solid var(--navy);border-radius:8px;background:var(--cream);box-shadow:0 2px 0 var(--ink);color:var(--navy);font:600 11px/1.3 var(--mono);white-space:nowrap}
.atlas-pin .captain-star{width:12px;height:12px}
#left-panel .atlas-pin[aria-pressed=true] .atlas-portrait{outline:3px solid #e8bc61;outline-offset:2px}
.atlas-edge-arrow{position:absolute;right:-9px;top:-5px;font-size:20px;font-style:normal;color:#fff3cf;text-shadow:0 1px 2px #244451}
.atlas-pin.is-edge .atlas-portrait{border-style:dashed}.atlas-pin.is-edge:after{display:none}
.atlas-person{position:absolute;left:18px;bottom:18px;z-index:4;min-width:170px;max-width:240px;box-sizing:border-box;padding:12px 16px;border:4px solid var(--ink);border-radius:12px;background:var(--cream);color:var(--navy)}
.atlas-person h4{display:flex;align-items:center;gap:5px;margin:2px 22px 6px 0;font:600 16px/1.2 var(--pix)}.atlas-person p{margin:0 0 6px;font-size:12px}.atlas-person small{color:var(--olive);font-size:10px}
#left-panel .atlas-sheet .atlas-person>button{position:absolute;right:6px;top:4px;padding:2px 7px;border:0;background:none;color:var(--olive);font-size:20px}
.atlas-message{position:absolute;left:50%;top:50%;z-index:5;display:flex;align-items:center;gap:15px;max-width:80%;box-sizing:border-box;padding:20px 26px;transform:translate(-50%,-50%);border:4px solid var(--ink);border-radius:12px;background:var(--navy);color:var(--blush);font-size:13px;line-height:1.6}
.atlas-loader{width:20px;height:20px;border:2px solid #e9ddab44;border-top-color:#e9ddab;border-radius:50%;animation:atlas-spin 1s linear infinite}
@keyframes atlas-spin{to{transform:rotate(360deg)}}
#left-panel .atlas-sheet :is(button,[tabindex]):focus-visible,.atlas-globe-canvas:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
#left-panel .atlas button:hover{filter:brightness(1.08)}.atlas [hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.atlas-loader,.atlas-mission-ring{animation:none}}
@media(max-width:660px){#game-column:has(#left-panel[data-view=map]:not([hidden])){min-height:320px}.atlas-globe-dock{right:8px;bottom:8px;width:105px;height:105px}.atlas-mini-globe .atlas-landmark-icon{width:24px;height:24px}.atlas-landmark-icon{width:42px;height:42px}.atlas-place-label{font-size:9px;padding:4px 6px}.atlas-person{left:10px;bottom:10px;min-width:120px;max-width:155px;padding:10px}.atlas-person h4{font-size:14px}.atlas-person p{font-size:10px}.atlas-sheet{padding:8px 10px 10px;gap:8px}.atlas-head .sx-title{font-size:20px}.atlas-body:has(>.atlas-index:not([hidden])){grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(220px,1fr) auto}.atlas-body>.atlas-index{order:2;max-height:250px}.atlas-tools{top:8px;right:8px;gap:8px}}

.atlas-location{position:absolute;top:14px;left:16px;display:flex;align-items:center;gap:9px;margin:0;max-width:calc(100% - 80px);font:600 28px/1.15 var(--pix);color:var(--blush);text-shadow:0 2px 0 var(--ink);pointer-events:none;z-index:3}
/* in the city the head's eyebrow names it; the world view keeps the selected destination's name */
.atlas[data-mode=city] .atlas-location{display:none}
.atlas-orange{width:28px;height:28px;flex:none;filter:drop-shadow(0 2px 2px #17394144)}
.atlas-team-list{position:absolute;left:12px;bottom:12px;display:flex;align-items:stretch;gap:0;max-width:calc(100% - 220px);padding:0;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--dash) var(--cream);z-index:3;touch-action:pan-x;box-sizing:border-box;border:4px solid var(--ink);border-radius:12px;background:var(--cream)}
#left-panel .atlas-sheet .atlas-team-list button{display:flex;flex:0 0 92px;flex-direction:column;align-items:center;gap:6px;min-width:0;min-height:0;padding:8px 4px;border:0;border-radius:0;background:none;box-shadow:none;text-align:center;color:var(--navy)}
#left-panel .atlas-sheet .atlas-team-list button+button{border-left:2px dashed var(--dash)}
#left-panel .atlas-sheet .atlas-team-list button:hover:not(:disabled),#left-panel .atlas-sheet .atlas-team-list [aria-pressed=true]{background:var(--cream2)}
#left-panel .atlas-sheet .atlas-team-list button:disabled{opacity:1;cursor:default;background:var(--cream2)}
.atlas-member-avatar{position:relative;display:block}
.atlas-team-list .atlas-portrait{width:46px;height:46px;box-sizing:border-box;border:2px solid var(--navy);border-radius:10px;background:#fff}
.atlas-team-list .is-self .atlas-portrait{background:#fff3cf}
.atlas-team-list .atlas-portrait canvas{width:70px;height:70px;top:-8px}
.atlas-portrait-placeholder{position:absolute;inset:0;width:100%;height:100%;fill:#c9b276}
.atlas-portrait:has(canvas[data-portrait]) .atlas-portrait-placeholder{display:none}
#left-panel .atlas-sheet .atlas-team-list [aria-pressed=true] .atlas-portrait{outline:2px solid var(--gold);outline-offset:2px}
.atlas-team-list button>span:last-child{display:grid;justify-items:center;gap:2px;min-width:0;width:100%}.atlas-team-list strong{display:flex;gap:3px;align-items:center;justify-content:center;max-width:100%;font-size:12px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.atlas-team-list strong small{color:var(--olive);font-size:9px;font-weight:400}.atlas-member-location{color:var(--olive);font-size:10px;line-height:1.3;overflow-wrap:anywhere}.atlas-team-list button:disabled .atlas-member-location{font-style:italic}.atlas-team-list .captain-star{width:11px;height:11px;flex:none}
.atlas-member-dot{position:absolute;right:-5px;bottom:-5px;width:12px;height:12px;box-sizing:border-box;border:2px solid #fff;border-radius:50%;background:#a8aaa3;box-shadow:0 0 0 1px var(--navy)}.atlas-member-dot.is-online{background:#3f8a4f}.atlas-member-dot.is-offline{background:#c84a4a}
.atlas-person{bottom:calc(var(--atlas-team-height,0px) + 28px)}
@media(max-width:660px){.atlas-location{top:10px;left:10px;font-size:22px;gap:6px}.atlas-orange{width:29px;height:29px}.atlas-team-list{left:8px;bottom:8px;max-width:calc(100% - 124px)}#left-panel .atlas-sheet .atlas-team-list button{flex-basis:72px;padding:5px 2px;gap:5px}.atlas-team-list .atlas-portrait{width:38px;height:38px;border-width:2px}.atlas-team-list .atlas-portrait canvas{width:60px;height:60px;top:-8px}.atlas-team-list strong{font-size:10px}.atlas-team-list strong small{display:none}.atlas-member-location{font-size:9px}.atlas-person{bottom:calc(var(--atlas-team-height,0px) + 20px)}}
