/* Atlas de Aetherion 2.1 — Layout cartografico expansivo e tres oceanos */
:root{--atlas-outline:#a99165;--atlas-sea:#24495c}
body{overflow-x:hidden}
header{position:relative;z-index:30;min-height:66px}
.layout{grid-template-columns:minmax(215px,250px) minmax(0,1fr) minmax(225px,270px);height:calc(100dvh - 68px);min-height:560px}
.layout>.sidebar,.layout>.detail{min-width:0;padding:16px}
.layout>.map-shell{min-width:0;min-height:0}
.map-shell{isolation:isolate;background:radial-gradient(ellipse at center,#4b7180 0%,#2c5367 58%,#163c53 100%)}
.map-shell:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.20;background-image:repeating-linear-gradient(0deg,transparent 0 70px,#bcd7cf18 71px 72px),repeating-linear-gradient(90deg,transparent 0 70px,#bcd7cf18 71px 72px)}
.map-shell svg{width:100%;height:100%;display:block;position:relative;z-index:1}
.map-shell .map-toolbar{z-index:6;top:12px;left:12px;right:12px;gap:5px}
.map-toolbar .pill{font-size:11px;padding:8px 10px;white-space:nowrap;background:#0d1925e8;border-color:#59667a}
.map-shell .zoom{z-index:7;bottom:58px;right:12px}
.map-shell .map-footer{z-index:5;bottom:11px;left:12px;font-size:11px}
.rose-v2{right:30px;top:76px;font-size:34px}
.ocean-v2{display:none!important}
.ocean-labels{user-select:none}
.ocean-label{font-family:Georgia,"Times New Roman",serif;font-size:16px;font-style:italic;letter-spacing:2px;text-anchor:middle;fill:#e4ebdf;stroke:#1c3e50a8;stroke-width:2.8px;paint-order:stroke fill;opacity:.86;cursor:default}
.ocean-label-sub{font-family:Georgia,serif;font-size:7.5px;letter-spacing:4px;text-anchor:middle;fill:#c1d5d4;opacity:.75;pointer-events:none}
.editor-active .ocean-label.ocean-draggable{cursor:move;fill:#fff2c7;stroke:#102838;stroke-width:3.5px}
.ocean-labels:not(.editing-oceans){pointer-events:none}
.ocean-labels.editing-oceans{pointer-events:visiblePainted}
.atlas-controls{position:absolute;z-index:15;top:62px;left:12px;display:flex;flex-wrap:wrap;align-items:center;gap:5px;max-width:calc(100% - 110px)}
.atlas-control{border:1px solid #8b795a;background:#142333e9;color:#f5e8d0;border-radius:6px;font:11px 'DM Sans',sans-serif;padding:7px 10px;cursor:pointer}
.atlas-control:hover,.atlas-control.active{background:#c9b17f;color:#101821;border-color:#c9b17f}
.atlas-control:focus-visible{outline:2px solid #f4e0a8;outline-offset:2px}
.atlas-oceans-edit{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.atlas-oceans-edit label{font-size:10px;color:#eedcb7}
.atlas-oceans-edit select{font-size:11px;padding:6px;border:1px solid #a4906e;border-radius:5px;background:#162532;color:#fff}
.layout.atlas-sidebar-hidden{grid-template-columns:0 minmax(0,1fr) minmax(225px,270px)}
.layout.atlas-details-hidden{grid-template-columns:minmax(215px,250px) minmax(0,1fr) 0}
.layout.atlas-sidebar-hidden.atlas-details-hidden{grid-template-columns:0 minmax(0,1fr) 0}
.layout.atlas-sidebar-hidden>.sidebar,.layout.atlas-details-hidden>.detail{visibility:hidden;padding:0;overflow:hidden;border:0}
body.atlas-fullscreen .layout{position:fixed;inset:0;z-index:100;display:grid;height:100dvh;min-height:0;grid-template-columns:0 minmax(0,1fr) 0;background:#111a26}
body.atlas-fullscreen .layout>.sidebar,body.atlas-fullscreen .layout>.detail{visibility:hidden;padding:0;overflow:hidden;border:0}
body.atlas-fullscreen .layout>.map-shell{height:100dvh;min-height:0}
body.atlas-fullscreen header{visibility:hidden}
body.atlas-fullscreen .atlas-controls{top:12px;left:12px;max-width:calc(100% - 70px)}
body.atlas-fullscreen .map-toolbar{top:55px}
body.atlas-fullscreen .rose-v2{top:105px}
.atlas-status{position:absolute;right:12px;bottom:17px;z-index:8;font-size:10px;letter-spacing:.5px;color:#d9e5df;background:#152938d9;padding:6px 8px;border:1px solid #8d9da0;border-radius:5px}
@media(min-width:1550px){
 .layout{grid-template-columns:270px minmax(0,1fr) 295px}
 .layout.atlas-sidebar-hidden{grid-template-columns:0 minmax(0,1fr) 295px}
 .layout.atlas-details-hidden{grid-template-columns:270px minmax(0,1fr) 0}
 .map-toolbar .pill{font-size:12px;padding:9px 12px}
}
@media(max-width:1100px) and (min-width:761px){
 .layout{grid-template-columns:205px minmax(0,1fr) 225px}
 .layout.atlas-sidebar-hidden{grid-template-columns:0 minmax(0,1fr) 225px}
 .layout.atlas-details-hidden{grid-template-columns:205px minmax(0,1fr) 0}
 .map-toolbar .pill{font-size:10px;padding:6px 8px}
 .map-shell .map-toolbar{top:80px}
 .atlas-controls{top:12px}
}
@media(max-width:760px){
 .layout,.layout.atlas-sidebar-hidden,.layout.atlas-details-hidden,.layout.atlas-sidebar-hidden.atlas-details-hidden{display:flex;flex-direction:column;height:auto;min-height:0}
 .layout>.map-shell{order:1;height:min(70dvh,680px);min-height:440px}
 .layout>.sidebar,.layout>.detail{order:2;visibility:visible!important;padding:14px!important;overflow:visible!important}
 .layout.atlas-sidebar-hidden>.sidebar,.layout.atlas-details-hidden>.detail{display:none!important}
 .map-shell .map-toolbar{top:72px}
 .atlas-controls{top:8px;left:8px;max-width:calc(100% - 16px)}
 .atlas-control{padding:6px 7px;font-size:10px}
 .map-toolbar .pill{padding:6px 8px;font-size:10px}
 .rose-v2{top:132px;right:22px;font-size:25px}
 body.atlas-fullscreen .layout{display:grid;grid-template-columns:minmax(0,1fr)}
 body.atlas-fullscreen .layout>.map-shell{height:100dvh}
 body.atlas-fullscreen .layout>.sidebar,body.atlas-fullscreen .layout>.detail{display:none!important}
 body.atlas-fullscreen .map-toolbar{top:54px}
}
