/* case atlas rail — same geometry as the field guide, warmer accent so the two
   rails are never confused for one another */
#t-atlas{
  appearance:none;font:inherit;font-size:12px;text-transform:lowercase;
  color:var(--ink);background:transparent;border:1px solid var(--contour);
  border-radius:2px;padding:5px 9px;margin-top:6px;cursor:pointer;
  width:100%;text-align:left;letter-spacing:.01em;
}
#t-atlas:hover{background:rgba(200,130,92,.14);color:#fff;border-color:#C8825C}
#t-atlas:focus-visible{outline:1.5px solid #fff;outline-offset:2px}
#t-atlas .hint{color:var(--faint);font-size:10.5px}

body.atlas-open #panel{transform:translateX(calc(min(430px,39vw) + 4px))}

#atlas{
  position:fixed;top:0;left:0;bottom:0;z-index:30;
  width:min(430px,39vw);
  background:var(--panel);backdrop-filter:blur(9px);
  border-right:1px solid var(--line);color:var(--ink);
  display:flex;flex-direction:column;
  transform:translateX(-100%);visibility:hidden;
  transition:transform .26s ease,visibility 0s linear .26s;
}
#atlas.in{transform:translateX(0);visibility:visible;transition-delay:0s,0s}
#atlas-close{
  flex:none;font:inherit;font-size:12px;text-transform:lowercase;letter-spacing:.02em;
  color:var(--mid);background:transparent;border:0;border-bottom:1px solid var(--line);
  padding:14px 20px;cursor:pointer;text-align:left;
}
#atlas-close:hover{color:#fff}
#atlas-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:20px 20px 60px}

.a-intro{border-bottom:1px solid var(--line);padding-bottom:16px}
.a-lede{margin:0 0 8px;font-size:15px;line-height:1.35;color:#fff;font-weight:600;text-transform:lowercase}
.a-sub{margin:0 0 10px;font-size:12px;line-height:1.6;color:var(--mid);text-transform:lowercase}
.a-hint{margin:0;font-family:var(--mono);font-size:10px;letter-spacing:.05em;color:#C8825C;text-transform:lowercase}

.a-mv{padding-top:26px}
.a-mh{display:grid;grid-template-columns:26px 1fr;gap:0 10px;align-items:start;margin-bottom:14px}
.a-mn{font-family:var(--mono);font-size:10px;color:#C8825C;padding-top:4px;letter-spacing:.08em}
.a-mh h3{margin:0 0 4px;font-size:16px;font-weight:600;color:#fff;text-transform:lowercase;line-height:1.2}
.a-epi{margin:0;font-size:11.5px;line-height:1.55;color:var(--mid);text-transform:lowercase}

.ap{margin:0 0 16px;cursor:pointer;border:1px solid transparent;padding:5px;border-radius:2px;
  transition:border-color .16s ease,background .16s ease}
.ap:hover,.ap.on{border-color:#C8825C;background:rgba(200,130,92,.1)}
.ap:focus-visible{outline:1.5px solid #fff;outline-offset:1px}
.ap img{display:block;width:100%;height:auto;background:#11151b}
.ap figcaption{padding-top:7px}
.ap-h{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.ap-n{font-family:var(--mono);font-size:10px;color:#C8825C;flex:none}
.ap-h b{font-size:12.5px;color:#fff;font-weight:600;text-transform:lowercase}
.ap-d{font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;color:var(--contour);margin-left:auto;flex:none}
.ap-s{display:block;margin-top:3px;font-family:var(--mono);font-size:9px;color:var(--faint);letter-spacing:.02em}
.ap-note{display:block;margin-top:5px;font-size:11.5px;line-height:1.5;color:var(--mid)}
.ap-tr{display:block;margin-top:6px;font-size:11.5px;line-height:1.5;color:var(--ink);
  border-left:2px solid #9BC784;padding-left:8px}
.ap-tr b{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;
  text-transform:uppercase;color:#9BC784;margin-bottom:2px}
.ap-diagram img{opacity:.85}
.ap-diagram .ap-d{color:var(--faint)}

.a-foot{margin:30px 0 0;padding-top:14px;border-top:1px solid var(--line);
  font-size:10.5px;line-height:1.65;color:var(--faint);text-transform:lowercase}
.a-foot b{color:#9BC784}
.a-err{font-size:12px;color:var(--mid)}

@media (max-width:760px){
  #atlas{width:min(340px,86vw)}
  body.atlas-open #panel{transform:translateX(0);opacity:0;pointer-events:none}
}
@media (prefers-reduced-motion:reduce){#atlas{transition:none}}
