/* F19 / 19.11-r01. Approved art occupies its own frame; destinations never cover it.
   Scope only the world view. Do not recolour, stretch or redraw approved scenes. */
.world-scene[data-art-integration] { height:auto; min-height:0; max-height:none; box-sizing:border-box; }
.integrated-archipelago[data-art-integration] {
 display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:26px 12px;
 align-items:start; padding:28px 24px 36px; min-height:0; isolation:isolate;
}
.integrated-archipelago[data-art-integration] > .map-ocean { z-index:0; }
.integrated-archipelago[data-art-integration] > .world-landmark {
 position:relative; left:auto; top:auto; translate:none; width:100%; max-width:none;
 height:auto; min-height:0; padding:8px 6px; grid-column:span 2; align-self:start;
 display:flex; flex-direction:column; justify-content:flex-start; gap:6px;
 border-radius:22px; color:#244c40;
}
.integrated-archipelago[data-art-integration] > .world-landmark:nth-of-type(5) {grid-column:2 / span 2;}
.integrated-archipelago[data-art-integration] .landmark-visual {
 width:100%; max-width:none; height:auto; min-height:0; aspect-ratio:1000/760;
 display:flex; align-items:center; justify-content:center; flex:0 0 auto;
 transform:none; filter:none;
}
.integrated-archipelago[data-art-integration] .island-illustration {
 width:100%; height:auto; min-height:0; max-height:100%; display:block;
 object-fit:contain; overflow:visible;
}
.integrated-archipelago[data-art-integration] .landmark-plaque {
 position:static; margin:0; max-width:100%; white-space:normal; overflow-wrap:anywhere;
 font-size:16px; line-height:1.3; padding:9px 14px; box-sizing:border-box;
}
.integrated-archipelago[data-art-integration] .landmark-spark {display:none;}
.integrated-archipelago[data-art-integration] .map-compass {display:none;}
.integrated-archipelago[data-art-integration] .world-landmark:hover .landmark-visual,
.integrated-archipelago[data-art-integration] .world-landmark:active .landmark-visual {
 transform:none!important; filter:none!important;
}
.integrated-archipelago[data-art-integration] .world-landmark:hover .landmark-plaque {background:#fff4d3;}
.integrated-closeup[data-art-integration] {
 display:grid; grid-template-columns:minmax(0,1.75fr) minmax(250px,1fr); align-items:start;
 gap:16px; padding:20px; isolation:isolate;
}
.integrated-closeup[data-art-integration] .world-art-stage {
 position:relative; width:100%; min-width:0; display:grid; align-items:center;
 border-radius:24px; overflow:hidden; isolation:isolate;
}
.integrated-closeup[data-art-integration] .world-art-stage > .map-ocean {z-index:0;}
.integrated-closeup[data-art-integration] .world-art-stage .map-cloud,
.integrated-closeup[data-art-integration] .world-art-stage .map-sail,
.integrated-closeup[data-art-integration] .world-art-stage .sea-ripple {display:none;}
.integrated-closeup[data-art-integration] .themed-ground {
 position:relative; inset:auto; width:100%; height:auto; min-width:0; z-index:1;
 pointer-events:none; line-height:0;
}
.integrated-closeup[data-art-integration] .island-near-art {
 display:block; width:100%; height:auto; min-height:0; max-width:100%; object-fit:contain;
 overflow:visible;
}
.integrated-closeup[data-art-integration] .island-destinations {
 position:relative; display:grid; grid-template-columns:minmax(0,1fr); gap:12px;
 min-width:0; padding:6px; align-content:start; z-index:2;
}
.integrated-closeup[data-art-integration] .zone-hotspot {
 position:relative; left:auto; top:auto; translate:none; transform:none;
 width:100%; max-width:none; height:auto; min-height:98px; padding:12px;
 display:grid; grid-template-columns:82px minmax(0,1fr); gap:12px; align-items:center;
 justify-content:initial; text-align:left; border-radius:20px;
 background:#fff8e8!important; border:2px solid #afc6af!important;
 box-shadow:0 3px 0 #64897320!important;
}
.integrated-closeup[data-art-integration] .zone-hotspot .landmark-visual {
 position:relative; width:82px; height:66px; max-width:none; min-height:0; margin:0;
 display:flex; align-items:center; justify-content:center; flex:0 0 auto;
 filter:none; transform:none;
}
.integrated-closeup[data-art-integration] .zone-hotspot .play-thumbnail {
 width:100%; height:100%; min-width:0!important; max-width:100%; max-height:100%;
 border-radius:12px; filter:none; object-fit:contain; display:block;
}
.integrated-closeup[data-art-integration] .zone-hotspot .landmark-plaque {
 position:static; width:100%; max-width:100%; min-height:0; margin:0; padding:0;
 border:0; border-radius:0; background:transparent; box-shadow:none; transform:none;
 display:block; text-align:left; white-space:normal; overflow-wrap:anywhere;
 font-size:17px; line-height:1.38; color:#244c40;
}
.integrated-closeup[data-art-integration] .landmark-pedestal,
.integrated-closeup[data-art-integration] .landmark-spark {display:none;}
.integrated-closeup[data-art-integration] .zone-hotspot:hover {background:#fff0ca!important;border-color:#739c7b!important;}
.integrated-closeup[data-art-integration] .zone-hotspot:hover .landmark-visual,
.integrated-closeup[data-art-integration] .zone-hotspot:active .landmark-visual {transform:none!important;filter:none!important;}
.world-scene[data-art-integration] .world-landmark:focus-visible {outline:3px solid #235b69;outline-offset:2px;}
.world-scene[data-art-integration] .saved-mark {display:inline-block;margin-left:7px;vertical-align:middle;}
body.large-text .world-scene[data-art-integration] .landmark-plaque {font-size:20px;line-height:1.45;}
body.high-contrast .integrated-closeup[data-art-integration] .zone-hotspot {border-color:#315e45!important;background:#fff7df!important;}
body.high-contrast .world-scene[data-art-integration] .landmark-plaque {color:#163c2f;}
.home-sculpture svg[data-review-variant] {filter:none;object-fit:contain;}
@media(max-width:1000px) {
 .integrated-closeup[data-art-integration] {grid-template-columns:minmax(0,1fr);padding:16px;gap:12px;}
 .integrated-closeup[data-art-integration] .world-art-stage {max-width:680px;margin-inline:auto;}
 .integrated-closeup[data-art-integration] .island-destinations {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:680px) {
 .integrated-archipelago[data-art-integration] {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 8px;padding:18px 10px 24px;}
 .integrated-archipelago[data-art-integration] > .world-landmark,
 .integrated-archipelago[data-art-integration] > .world-landmark:nth-of-type(5) {grid-column:auto;padding:6px 2px;}
 .integrated-archipelago[data-art-integration] .landmark-plaque {font-size:15px;padding:8px 10px;}
 .integrated-closeup[data-art-integration] {padding:10px;border-radius:26px;}
 .integrated-closeup[data-art-integration] .island-destinations {grid-template-columns:1fr;gap:10px;padding:5px;}
 .integrated-closeup[data-art-integration] .zone-hotspot {grid-template-columns:70px minmax(0,1fr);gap:10px;min-height:86px;padding:10px;}
 .integrated-closeup[data-art-integration] .zone-hotspot .landmark-visual {width:70px;height:60px;}
 .integrated-closeup[data-art-integration] .zone-hotspot .landmark-plaque {font-size:16px;}
 body.large-text .integrated-closeup[data-art-integration] .zone-hotspot .landmark-plaque {font-size:20px;}
 body.large-text .integrated-archipelago[data-art-integration] .landmark-plaque {font-size:18px;}
}
@media(prefers-reduced-motion:reduce) {
 .world-scene[data-art-integration] .map-cloud,.world-scene[data-art-integration] .map-sail {animation:none!important;}
}
body.reduce-motion .world-scene[data-art-integration] .map-cloud,
body.reduce-motion .world-scene[data-art-integration] .map-sail {animation:none!important;}
/* Older viewport styles force percentage sizes with !important. Undo only for the
   integrated world; game boards and every non-world screen retain their policies. */
body[data-route="atlas"] .workspace {height:auto!important;min-height:var(--view-height,100dvh);}
body[data-route="atlas"] .main:has(>[data-art-integration]) {flex:none;}
.world-scene[data-art-integration] {flex:none!important;height:auto!important;min-height:0!important;max-height:none!important;}
.world-scene[data-art-integration] .world-landmark {left:auto!important;top:auto!important;width:100%!important;height:auto!important;}
.integrated-archipelago[data-art-integration] .island-illustration {height:auto!important;max-height:none!important;min-height:0!important;}
.world-scene[data-art-integration] .landmark-plaque {font-size:inherit;}
.integrated-archipelago[data-art-integration] .landmark-plaque {font-size:16px!important;padding:9px 14px!important;}
.integrated-closeup[data-art-integration] .zone-hotspot .landmark-plaque {font-size:17px!important;padding:0!important;}
body.large-text .world-scene[data-art-integration] .landmark-plaque {font-size:20px!important;}
@media(max-width:680px){.integrated-archipelago[data-art-integration] .landmark-plaque{font-size:15px!important;padding:8px 10px!important}.integrated-closeup[data-art-integration] .zone-hotspot .landmark-plaque{font-size:16px!important}body.large-text .world-scene[data-art-integration] .landmark-plaque{font-size:20px!important}}

/* Background presentation only: transparent on the ocean map, retained in close-up. */
[data-world-art-context="map"] svg.rutas-master-art > [data-rutas-sea="background"],
[data-world-art-context="map"] svg.observatorio-master-art > rect:first-child {fill:transparent;stroke:none;}
.world-scene[data-art-integration] .landmark-plaque {position:relative;}
.integrated-closeup[data-art-integration] .landmark-plaque::before,
.integrated-closeup[data-art-integration] .landmark-plaque::after {display:none;}
