/* The Atlas section: a small, made-up copy of the app's map. */
.atlas{margin-top:56px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);border:1px solid var(--line);border-radius:22px;background:rgba(10,13,15,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;box-shadow:0 40px 120px -40px rgba(45,212,212,.18)}
.atlas-stage{position:relative;min-width:0;height:clamp(440px,64vh,600px);overflow:hidden;isolation:isolate;
  background:radial-gradient(120% 90% at 50% 38%,#0a0d17 0%,#06070d 55%,#020306 100%)}
.atlas-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab;outline:none}
.atlas-stage.on canvas{touch-action:none}
.atlas-stage canvas.point{cursor:pointer}
.atlas-stage canvas.drag{cursor:grabbing}
.atlas-stage canvas:focus-visible + .atlas-glass{box-shadow:inset 0 0 0 2px var(--noor),inset 0 0 90px rgba(0,0,0,.5)}
.atlas-glass{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.1) 0 1px,transparent 1px 3px);box-shadow:inset 0 0 90px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.03)}
.atlas-wait{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);pointer-events:none}
.atlas-top,.atlas-bottom{position:absolute;left:12px;right:12px;display:flex;align-items:center;gap:10px;pointer-events:none}
.atlas-top{top:12px;justify-content:space-between}
.atlas-bottom{bottom:12px;justify-content:space-between}
.atlas-top > *,.atlas-bottom > button{pointer-events:auto}
.atlas-chip{display:inline-flex;align-items:center;gap:8px;min-width:0;padding:6px 10px;border-radius:6px;background:rgba(0,0,0,.5);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#dfe6ee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none!important}
.atlas-chip i{flex:none;width:7px;height:7px;border-radius:50%;background:var(--dot,var(--noor))}
.atlas-zoom{display:flex;gap:4px;margin-left:auto}
.atlas-zoom button,.atlas-go{appearance:none;border:1px solid rgba(205,235,235,.14);background:rgba(8,10,14,.72);color:var(--fg);cursor:pointer;transition:border-color .2s,background .2s}
.atlas-zoom button{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;padding:0}
.atlas-zoom button:hover,.atlas-go:hover{border-color:rgba(45,212,212,.55);background:rgba(18,26,30,.85)}
.atlas-zoom svg{width:15px;height:15px}
.atlas-go{white-space:nowrap;display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 14px;font:500 .86rem/1 var(--font-display)}
.atlas-go svg{width:15px;height:15px;color:#ffe6a8}
.atlas-hint{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#aab6bd;background:rgba(0,0,0,.45);padding:6px 10px;border-radius:6px;opacity:0;transition:opacity .4s ease;white-space:nowrap}
.atlas-hint.show{opacity:.85}

.atlas-card{position:relative;min-width:0;border-left:1px solid var(--line)}
.atlas-card-in{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:clamp(16px,2vw,22px);display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;scrollbar-color:rgba(205,235,235,.18) transparent}
.ac-pic{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000;flex:none;isolation:isolate}
.ac-pic video,.ac-pic .ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ac-pic::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.12) 0 1px,transparent 1px 3px);box-shadow:inset 0 0 40px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.05)}
.ac-pic .big{position:absolute;inset:0;display:grid;place-items:center;padding:0 16px;text-align:center;font-family:var(--font-mono);font-size:clamp(.9rem,1.6vw,1.15rem);letter-spacing:.24em;text-transform:uppercase;color:rgba(240,244,250,.88);text-shadow:0 1px 12px rgba(0,0,0,.6)}
.ac-pic .tag{position:absolute;left:10px;bottom:10px;z-index:1;padding:4px 8px;border-radius:5px;background:rgba(0,0,0,.55);font-family:var(--font-mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#e6edf0}
.ac-kick{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ac-name{font-size:var(--step-1);letter-spacing:-.02em;line-height:1.15;text-shadow:none}
.ac-meta{color:#c3cfce;font-size:.92rem;line-height:1.45;margin-top:-6px}
.ac-meta .g{color:var(--muted)}
.ac-count{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ac-actions{display:flex;flex-wrap:wrap;gap:8px}
.ac-actions .btn{padding:10px 16px;font-size:.9rem}
.ac-actions .btn svg{width:15px;height:15px}
.atlas-card h4{margin:4px 0 0;font:500 .7rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ac-list{list-style:none;margin:0;padding:0;display:grid}
.ac-list li{border-bottom:1px solid var(--line)}
.ac-list li:last-child{border-bottom:0}
.ac-row{appearance:none;background:none;border:0;color:inherit;font:inherit;text-align:left;width:100%;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 0;cursor:pointer;position:relative}
.ac-row:hover .t{color:var(--noor)}
.ac-row .th{width:64px;height:36px;border-radius:5px;overflow:hidden;background:#000;position:relative}
.ac-row .th img,.ac-row .th span{display:block;width:100%;height:100%;object-fit:cover}
.ac-row .t{display:block;font-size:.92rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s}
.ac-row small{display:block;color:var(--muted);font-size:.78rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-row .d{font-family:var(--font-mono);font-size:.7rem;color:var(--muted)}
.ac-row .bar{position:absolute;left:76px;right:0;bottom:2px;height:2px;background:rgba(255,255,255,.1);border-radius:1px;overflow:hidden;display:none}
.ac-row .bar i{display:block;height:100%;background:var(--noor);transform-origin:left;transform:scaleX(0)}
.ac-row.on .bar{display:block}
.ac-row.on .bar i{animation:ac-prog linear forwards}
.ac-row.on small{color:var(--noor)}
@keyframes ac-prog{to{transform:scaleX(1)}}
.ac-chips{display:flex;flex-wrap:wrap;gap:6px}
.ac-chips button{appearance:none;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--ink-3);color:var(--fg);border-radius:999px;padding:6px 11px;font:400 .84rem/1.2 var(--font-display);cursor:pointer;transition:border-color .2s}
.ac-chips button:hover{border-color:rgba(45,212,212,.55)}
.ac-chips i{width:7px;height:7px;border-radius:50%;flex:none}
.ac-people .ac-row{grid-template-columns:minmax(0,1fr) auto;padding:9px 0}
.ac-people .t img.sl{display:inline-block;width:22px;height:22px;border-radius:3px;margin-right:10px;vertical-align:-6px;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.ac-people .t i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:9px;vertical-align:1px}
.ac-stops{counter-reset:stop}
.ac-stops .ac-row{grid-template-columns:24px minmax(0,1fr);gap:10px;opacity:.45;transition:opacity .4s ease}
.ac-stops .ac-row.done{opacity:1}
.ac-stops .n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:.66rem;border:1px solid rgba(255,230,168,.45);color:#ffe6a8}
.ac-stops .ac-row.cur .n{background:#ffe6a8;color:#0a0c10;border-color:#ffe6a8}
.ac-empty{color:var(--muted);font-size:.95rem;line-height:1.5}

@media (max-width:1020px){
  .atlas{grid-template-columns:minmax(0,1fr)}
  .atlas-stage{height:clamp(380px,72vw,520px)}
  .atlas-card{border-left:0;border-top:1px solid var(--line)}
  .atlas-card-in{position:static;overflow:visible}
}
@media (max-width:560px){
  .atlas-stage{height:clamp(360px,110vw,460px)}
  .atlas-go{padding:8px 12px;font-size:.82rem}
  .atlas-hint{font-size:.6rem}
}
@media (prefers-reduced-motion:reduce){
  .atlas-hint,.ac-stops .ac-row{transition:none}
}

/* collabs */
.ac-collabs .ac-row small{color:#e9d9b4}
.ac-collabs .ac-row .d{color:#ffe6a8;font-size:.7rem}
.ac-actions .btn svg{width:16px;height:16px;color:#ffe6a8}

/* looks: Picture and You */
.atlas-looks{display:inline-flex;margin-left:auto;padding:3px;border-radius:999px;border:1px solid rgba(205,235,235,.14);background:rgba(8,10,14,.72);pointer-events:auto}
.atlas-looks button{appearance:none;border:0;background:transparent;color:#aeb9c0;font:500 .8rem/1 var(--font-display);padding:7px 12px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}
.atlas-looks button[aria-checked="true"]{background:rgba(255,230,168,.16);color:#ffe6a8}
.atlas-looks button:focus-visible{outline:2px solid var(--noor);outline-offset:1px}
.atlas-key{position:absolute;right:12px;bottom:58px;width:min(236px,calc(100% - 24px));padding:10px 12px;border-radius:12px;background:rgba(6,8,12,.86);border:1px solid rgba(205,235,235,.12);font-size:.78rem;line-height:1.4;color:#cfd8de;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.atlas-key[hidden]{display:none}
.atlas-key p{margin:0}
.atlas-key ul{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:7px}
.atlas-key li{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px}
.atlas-key li b{margin-left:6px;font:500 .7rem var(--font-mono);color:#8e9aa2}
.k-shape{display:flex;gap:3px;align-items:center}
.k-shape i{display:block;width:8px;height:8px;border-radius:50%}
.k-shape.gold i:nth-child(1){background:hsla(38,92%,82%,1);box-shadow:0 0 8px hsla(38,90%,70%,.7)}
.k-shape.gold i:nth-child(2){background:hsla(36,70%,72%,.88)}
.k-shape.gold i:nth-child(3){background:hsla(32,42%,64%,.62)}
.k-shape.blue i{background:hsla(186,78%,72%,.98);box-shadow:0 0 0 2px #06080c,0 0 0 3px hsla(186,80%,72%,.7)}
.k-shape.line i{width:28px;height:2px;border-radius:2px;background:rgba(255,236,196,.7)}
.k-foot{color:#8e9aa2;font-size:.72rem}
.k-foot button{appearance:none;border:0;background:none;padding:0;color:#ffe6a8;font:inherit;text-decoration:underline;cursor:pointer}
@media (max-width:560px){.atlas-key{bottom:54px;font-size:.74rem}.atlas-looks button{padding:6px 10px}}
