/* SECOND LOOK INVESTIGATION ATLAS v12.0 LAUNCH CANDIDATE */

:root{
    --atlas-gold:#d4af37;
    --atlas-gold-soft:#f5d76e;
    --atlas-bg:#050505;
    --atlas-panel:rgba(8,8,8,.62);
    --atlas-panel-strong:rgba(8,8,8,.86);
    --atlas-border:rgba(212,175,55,.32);
    --atlas-text:#ffffff;
    --atlas-muted:rgba(255,255,255,.72);
    --atlas-blue:#2f7cff;
}

#atlas-shell{
    position:relative;
    width:100%;
    height:calc(100vh - 110px);
    min-height:760px;
    background:#050505;
    overflow:hidden;
}

#atlas-map{
    position:absolute;
    inset:0;
    z-index:1;
    background:#050505;
    filter:brightness(1.18) contrast(1.06);
}

.leaflet-container{
    background:#050505;
    font-family:inherit;
}

.leaflet-control-attribution{display:none;}

#atlas-controls-toggle{
    position:absolute;
    top:24px;
    left:24px;
    z-index:9000;
    padding:13px 20px;
    border-radius:999px;
    border:1px solid rgba(212,175,55,.50);
    background:rgba(0,0,0,.72);
    color:var(--atlas-gold);
    font-weight:800;
    cursor:pointer;
    box-shadow:0 0 30px rgba(0,0,0,.55);
    backdrop-filter:blur(16px);
    transition:.22s ease;
}

#atlas-controls-toggle:hover{
    background:rgba(212,175,55,.14);
    transform:translateY(-1px);
}

#atlas-controls,
#atlas-drawer{
    position:absolute;
    z-index:8000;
    color:var(--atlas-text);
    background:var(--atlas-panel);
    border:1px solid var(--atlas-border);
    border-radius:18px;
    box-shadow:0 0 40px rgba(0,0,0,.58);
    backdrop-filter:blur(18px);
}

#atlas-controls{
    top:86px;
    left:24px;
    width:375px;
    max-height:calc(100vh - 160px);
    overflow:auto;
    padding:20px;
    transition:.32s ease;
}

#atlas-controls.collapsed{
    opacity:0;
    pointer-events:none;
    transform:translateX(-420px);
}

.atlas-kicker{
    color:var(--atlas-gold);
    font-size:12px;
    letter-spacing:.22em;
    margin-bottom:8px;
}

#atlas-brand h1{
    margin:0;
    color:#fff;
    font-size:32px;
    line-height:1.05;
}

#atlas-brand p{
    margin:8px 0 0;
    color:var(--atlas-muted);
}

#atlas-stats{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin:16px 0;
    padding:14px 0;
    border-top:1px solid rgba(255,255,255,.09);
    border-bottom:1px solid rgba(255,255,255,.09);
}

#atlas-stats span{
    display:flex;
    justify-content:space-between;
    color:var(--atlas-muted);
}

#atlas-stats strong{
    color:var(--atlas-gold);
    font-size:24px;
    line-height:1;
}

.atlas-control-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

#atlas-begin,
#atlas-reset,
#atlas-random{
    width:100%;
    padding:12px;
    border-radius:999px;
    border:1px solid rgba(212,175,55,.55);
    color:#111;
    font-weight:800;
    cursor:pointer;
    transition:.2s ease;
}

#atlas-begin{
    background:var(--atlas-gold);
}

#atlas-random{
    background:var(--atlas-blue);
    border-color:rgba(47,124,255,.85);
    color:#fff;
}

#atlas-reset{
    margin-top:14px;
    background:rgba(0,0,0,.65);
    color:var(--atlas-gold);
}

#atlas-begin:hover,
#atlas-reset:hover,
#atlas-random:hover{
    filter:brightness(1.1);
    transform:translateY(-1px);
}

.atlas-section-title{
    color:var(--atlas-gold);
    font-weight:800;
    margin:16px 0 10px;
}

.atlas-filter{
    width:100%;
    margin-bottom:8px;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.055);
    color:#fff;
    cursor:pointer;
    text-align:left;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    transition:.18s ease;
}

.atlas-filter.active,
.atlas-filter:hover{
    border-color:rgba(212,175,55,.65);
    color:var(--atlas-gold);
    background:rgba(212,175,55,.14);
}

.atlas-filter-count{
    min-width:30px;
    padding:3px 8px;
    border-radius:999px;
    background:rgba(212,175,55,.13);
    color:var(--atlas-gold);
    font-size:12px;
    text-align:center;
}

#atlas-search{
    width:100%;
    margin-top:8px;
    padding:12px;
    border-radius:12px;
    border:1px solid rgba(212,175,55,.35);
    background:#111;
    color:#fff;
}

.atlas-select-row{
    display:grid;
    grid-template-columns:82px 1fr;
    align-items:center;
    gap:10px;
    margin-top:10px;
}

.atlas-select-row label{
    color:var(--atlas-muted);
    font-size:13px;
}

.atlas-select-row select{
    width:100%;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(212,175,55,.26);
    background:#111;
    color:#fff;
}

#atlas-results-count{
    margin-top:14px;
    color:var(--atlas-muted);
    font-size:13px;
}

#atlas-legend{
    display:grid;
    gap:8px;
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.10);
    color:var(--atlas-muted);
    font-size:13px;
}

.legend-dot{
    display:inline-block;
    width:10px;
    height:10px;
    border-radius:50%;
    margin-right:8px;
    box-shadow:0 0 10px currentColor;
}

.legend-dot.ancient-world{background:#d4af37;color:#d4af37;}
.legend-dot.historical-investigations{background:#bf9450;color:#bf9450;}
.legend-dot.nature-and-science{background:#38c878;color:#38c878;}
.legend-dot.society{background:#d07a43;color:#d07a43;}
.legend-dot.technology-and-engineering{background:#67a8ff;color:#67a8ff;}

#atlas-tip{
    margin-top:12px;
    padding:12px;
    border-radius:14px;
    border:1px solid rgba(212,175,55,.18);
    background:rgba(212,175,55,.08);
    color:var(--atlas-muted);
    font-size:13px;
    line-height:1.35;
}

#atlas-drawer{
    top:24px;
    right:24px;
    width:430px;
    max-height:88vh;
    overflow:auto;
    padding:26px;
    background:var(--atlas-panel-strong);
    transform:translateX(480px);
    transition:.32s ease;
}

#atlas-drawer.open{
    transform:translateX(0);
}

#atlas-drawer-close{
    position:absolute;
    top:14px;
    right:16px;
    background:none;
    border:none;
    color:var(--atlas-gold);
    font-size:30px;
    cursor:pointer;
}

#atlas-drawer h2{
    color:#fff;
    margin:8px 0 12px;
    line-height:1.12;
    font-size:30px;
}

#atlas-drawer p{
    color:rgba(255,255,255,.82);
    line-height:1.5;
}

.atlas-drawer-id{
    color:var(--atlas-gold);
    letter-spacing:.14em;
    font-size:12px;
    font-weight:700;
}

.atlas-region-pill{
    display:inline-block;
    margin:0 0 12px;
    padding:5px 10px;
    border-radius:999px;
    background:rgba(212,175,55,.18);
    color:var(--atlas-gold);
    font-weight:700;
    font-size:12px;
}

.atlas-drawer-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin:16px 0;
}

.atlas-drawer-action{
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(212,175,55,.28);
    background:rgba(255,255,255,.045);
    color:#fff;
    text-align:left;
    cursor:pointer;
    transition:.18s ease;
}

.atlas-drawer-action:hover{
    border-color:rgba(212,175,55,.70);
    background:rgba(212,175,55,.12);
}

.atlas-details{
    width:100%;
    border-collapse:collapse;
    margin-top:16px;
    font-size:13px;
}

.atlas-details td{
    padding:7px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
    color:var(--atlas-muted);
}

.atlas-details td:first-child{
    color:var(--atlas-gold);
    width:35%;
}

.atlas-tags{
    margin-top:18px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.10);
}

.atlas-tags h3,
.atlas-related h3,
.atlas-explore-more h3{
    color:var(--atlas-gold);
    margin:0 0 10px;
    font-size:16px;
}

.atlas-tag{
    display:inline-block;
    padding:5px 10px;
    margin:4px 4px 4px 0;
    border-radius:999px;
    background:rgba(212,175,55,.15);
    color:var(--atlas-gold);
    cursor:pointer;
    border:1px solid rgba(212,175,55,.22);
    transition:.18s ease;
    font-size:12px;
}

.atlas-tag:hover{
    background:rgba(212,175,55,.35);
    transform:translateY(-1px);
}

.atlas-related,
.atlas-explore-more{
    margin-top:20px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.10);
}

.atlas-related-list,
.atlas-explore-list{
    display:grid;
    gap:8px;
}

.atlas-related-item,
.atlas-explore-item{
    width:100%;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(212,175,55,.28);
    background:rgba(255,255,255,.045);
    color:#fff;
    text-align:left;
    cursor:pointer;
    transition:.18s ease;
}

.atlas-related-item:hover,
.atlas-explore-item:hover{
    border-color:rgba(212,175,55,.70);
    background:rgba(212,175,55,.12);
}

.atlas-related-item span,
.atlas-explore-item span{
    display:block;
    color:var(--atlas-gold);
    font-size:11px;
    letter-spacing:.12em;
    margin-bottom:4px;
}

.atlas-related-item strong,
.atlas-explore-item strong{
    display:block;
    font-size:14px;
    line-height:1.25;
    font-weight:700;
}

.atlas-open-link{
    display:block;
    margin-top:18px;
    padding:13px;
    border-radius:999px;
    border:1px solid rgba(212,175,55,.55);
    color:var(--atlas-gold);
    background:rgba(212,175,55,.08);
    text-align:center;
    text-decoration:none;
    font-weight:800;
}

.atlas-open-link:hover{
    background:rgba(212,175,55,.14);
}

.atlas-empty{
    padding:16px;
    border:1px dashed rgba(212,175,55,.35);
    border-radius:14px;
    text-align:center;
    color:var(--atlas-muted);
}

.atlas-investigation-node{
    position:relative;
    width:18px;
    height:18px;
    border-radius:50%;
    border:2px solid #fff;
    background:currentColor;
    color:var(--atlas-gold);
    box-shadow:0 0 16px currentColor,0 0 34px currentColor;
    transition:.18s ease;
}

.atlas-investigation-node::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:34px;
    height:34px;
    transform:translate(-50%,-50%);
    border:1px solid currentColor;
    border-radius:50%;
    animation:atlasPulse 2.4s infinite;
}

.atlas-investigation-node.ancient-world{color:#d4af37;}
.atlas-investigation-node.historical-investigations{color:#bf9450;}
.atlas-investigation-node.nature-and-science{color:#38c878;}
.atlas-investigation-node.society{color:#d07a43;}
.atlas-investigation-node.technology-and-engineering{color:#67a8ff;}

.atlas-investigation-node.selected{
    transform:scale(1.34);
    box-shadow:
        0 0 0 5px rgba(255,255,255,.95),
        0 0 22px currentColor,
        0 0 52px currentColor,
        0 0 82px rgba(245,215,110,.7);
}

.atlas-investigation-node.related{
    transform:scale(1.22);
    box-shadow:
        0 0 0 4px rgba(245,215,110,.85),
        0 0 24px currentColor,
        0 0 56px currentColor,
        0 0 90px rgba(245,215,110,.65);
}

.atlas-investigation-node.related::after,
.atlas-investigation-node.selected::after{
    border-width:2px;
    animation-duration:1.4s;
}

@keyframes atlasPulse{
    from{opacity:.82;transform:translate(-50%,-50%) scale(.65);}
    to{opacity:0;transform:translate(-50%,-50%) scale(1.9);}
}

.leaflet-control-zoom a{
    background:#101010 !important;
    color:var(--atlas-gold) !important;
    border-color:rgba(212,175,55,.35) !important;
}

.leaflet-tooltip.atlas-tooltip{
    background:rgba(0,0,0,.88);
    color:#fff;
    border:1px solid rgba(212,175,55,.5);
    border-radius:8px;
    padding:7px 10px;
    box-shadow:0 0 24px rgba(0,0,0,.45);
}

@media(max-width:900px){
    #atlas-shell{height:calc(100vh - 85px);min-height:720px;}
    #atlas-controls-toggle{top:16px;left:16px;}
    #atlas-controls{top:74px;left:16px;width:calc(100vw - 32px);max-height:calc(100vh - 120px);}
    #atlas-drawer{left:16px;right:16px;width:auto;}
    .atlas-control-grid,.atlas-drawer-actions{grid-template-columns:1fr;}
}


/* ==========================================================
   v12.0 LAUNCH CANDIDATE EXPERIENCE
========================================================== */

.atlas-mode-switcher{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
}

.atlas-mode-button{
    width:100%;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.045);
    color:#fff;
    text-align:left;
    cursor:pointer;
    transition:.18s ease;
}

.atlas-mode-button.active,
.atlas-mode-button:hover{
    color:var(--atlas-gold);
    border-color:rgba(212,175,55,.65);
    background:rgba(212,175,55,.13);
}

.atlas-control-grid-bottom{
    margin-top:14px;
}

#atlas-start-expedition{
    width:100%;
    padding:12px;
    border-radius:999px;
    border:1px solid rgba(212,175,55,.55);
    background:rgba(212,175,55,.12);
    color:var(--atlas-gold);
    font-weight:800;
    cursor:pointer;
    transition:.2s ease;
}

#atlas-start-expedition:hover{
    background:rgba(212,175,55,.22);
    transform:translateY(-1px);
}

.atlas-filter-summary{
    margin-top:12px;
    padding:10px 12px;
    border-radius:12px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.08);
    color:var(--atlas-muted);
    font-size:12px;
    line-height:1.35;
}

#atlas-shell.atlas-mode-timeline #atlas-map{
    filter:brightness(1.22) contrast(1.08) sepia(.12);
}

#atlas-shell.atlas-mode-expedition #atlas-map{
    filter:brightness(1.24) contrast(1.1) saturate(1.08);
}

.atlas-recommended,
.atlas-explore-more{
    margin-top:20px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.10);
}

.atlas-recommended h3,
.atlas-explore-more h3{
    color:var(--atlas-gold);
    margin:0 0 10px;
    font-size:16px;
}

.atlas-nearby-item,
.atlas-period-item{
    width:100%;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(212,175,55,.28);
    background:rgba(255,255,255,.045);
    color:#fff;
    text-align:left;
    cursor:pointer;
    transition:.18s ease;
}

.atlas-nearby-item:hover,
.atlas-period-item:hover{
    border-color:rgba(212,175,55,.70);
    background:rgba(212,175,55,.12);
}

.atlas-nearby-item span,
.atlas-period-item span{
    display:block;
    color:var(--atlas-gold);
    font-size:11px;
    letter-spacing:.12em;
    margin-bottom:4px;
}

.atlas-nearby-item strong,
.atlas-period-item strong{
    display:block;
    font-size:14px;
    line-height:1.25;
    font-weight:700;
}

.atlas-expedition-banner{
    margin:0 0 18px;
    padding:14px;
    border-radius:16px;
    border:1px solid rgba(47,124,255,.55);
    background:linear-gradient(135deg, rgba(47,124,255,.20), rgba(212,175,55,.10));
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    align-items:center;
}

.atlas-expedition-banner span{
    display:block;
    color:rgba(255,255,255,.72);
    font-size:12px;
}

.atlas-expedition-banner strong{
    display:block;
    color:#fff;
    font-size:15px;
}

#atlas-expedition-next{
    padding:9px 12px;
    border-radius:999px;
    border:1px solid rgba(212,175,55,.50);
    background:rgba(0,0,0,.42);
    color:var(--atlas-gold);
    cursor:pointer;
    font-weight:800;
}

#atlas-expedition-start-here{
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(47,124,255,.60);
    background:rgba(47,124,255,.14);
    color:#fff;
    text-align:left;
    cursor:pointer;
    transition:.18s ease;
}

#atlas-expedition-start-here:hover{
    background:rgba(47,124,255,.24);
    border-color:rgba(47,124,255,.90);
}

.atlas-investigation-node.recommended{
    transform:scale(1.16);
    box-shadow:
        0 0 0 4px rgba(47,124,255,.75),
        0 0 22px currentColor,
        0 0 48px rgba(47,124,255,.60);
}

@media(max-width:900px){
    .atlas-mode-switcher{
        grid-template-columns:1fr;
    }

    .atlas-expedition-banner{
        grid-template-columns:1fr;
    }
}


/* ==========================================================
   v12.0 LAUNCH CANDIDATE POLISH
========================================================== */

#atlas-featured{
    width:100%;
    padding:12px;
    border-radius:999px;
    border:1px solid rgba(212,175,55,.65);
    color:#111;
    font-weight:800;
    cursor:pointer;
    transition:.2s ease;
    background:linear-gradient(135deg, #d4af37, #f5d76e);
}

#atlas-featured:hover,
#atlas-begin:hover,
#atlas-random:hover,
#atlas-reset:hover,
#atlas-start-expedition:hover{
    transform:translateY(-1px);
    filter:brightness(1.08);
}

#atlas-launch-note{
    margin-top:12px;
    padding:11px 12px;
    border-radius:14px;
    border:1px solid rgba(47,124,255,.24);
    background:rgba(47,124,255,.09);
    color:rgba(255,255,255,.70);
    font-size:12px;
    line-height:1.35;
}

.atlas-drawer-action[data-action="share"]{
    border-color:rgba(47,124,255,.45);
    background:rgba(47,124,255,.12);
}

.atlas-copy-status{
    margin-top:10px;
    color:rgba(255,255,255,.72);
    font-size:12px;
}

#atlas-toast{
    position:absolute;
    right:24px;
    bottom:24px;
    z-index:9500;
    opacity:0;
    pointer-events:none;
    transform:translateY(12px);
    transition:.25s ease;
    background:rgba(0,0,0,.82);
    color:#fff;
    border:1px solid rgba(212,175,55,.35);
    border-radius:999px;
    padding:12px 18px;
    box-shadow:0 0 30px rgba(0,0,0,.55);
    backdrop-filter:blur(16px);
}

#atlas-toast.show{
    opacity:1;
    transform:translateY(0);
}

#atlas-drawer .atlas-summary-label{
    margin-top:12px;
    color:var(--atlas-gold);
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

#atlas-shell .leaflet-control-zoom{
    box-shadow:0 0 24px rgba(0,0,0,.55);
}

@media(max-width:900px){
    #atlas-toast{
        left:16px;
        right:16px;
        bottom:16px;
        text-align:center;
    }
}


/* === Second Look Alley v18.1.1 lighting adjustments === */
:root{
  --sl-alley-global-brightness:1.12;
  --sl-alley-contrast:1.05;
  --sl-lantern-glow:0 0 18px rgba(255,214,140,.45),
                    0 0 40px rgba(255,214,140,.28),
                    0 0 80px rgba(255,214,140,.16);
}

.alley-master,
.alley-scene,
.sl-alley-scene{
  filter:brightness(var(--sl-alley-global-brightness)) contrast(var(--sl-alley-contrast));
}

.lantern,.alley-lantern,[data-lantern]{
  box-shadow:var(--sl-lantern-glow)!important;
}

.clock-face,.alley-clock-face{
  filter:contrast(1.18) brightness(.96);
}
