/* Atlas Checker — extends css/style.css + css/3d-turntable.css (same palette / glass panels) */

.ac-drop { padding: 18px 14px; }
.ac-drop .drop-title { font-size: .95rem; }
.ac-drop .drop-subtitle { font-size: .8rem; }

.ac-viewport { min-height: 460px; padding: 0; overflow: hidden; }
.ac-viewport.bg-checker {
  background-color: #1b2233;
  background-image:
    linear-gradient(45deg, #2a3246 25%, transparent 25%),
    linear-gradient(-45deg, #2a3246 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, #2a3246 75%),
    linear-gradient(-45deg, transparent 75%, #2a3246 75%);
  background-size: 20px 20px;
  background-position: 0 0, 0 10px, 10px -10px, -10px 0;
}
.ac-viewport.bg-space { background: radial-gradient(circle at 30% 20%, #16203a, #05070d 70%); }
.ac-viewport.bg-black { background: #000; }
.ac-viewport.bg-light { background: #d9dee8; }
.ac-canvas { display: block; width: 100%; height: 520px; cursor: default; }
.ac-viewport.atlas-mode .ac-canvas { cursor: pointer; }
.ac-view-label {
  position: absolute; left: 10px; top: 8px;
  font-size: .74rem; font-weight: 700; color: #8ec5ff;
  pointer-events: none; text-shadow: 0 1px 2px #000;
}
.ac-viewport.bg-light .ac-view-label { color: #1d4f91; text-shadow: none; }

.ac-zoom { width: 110px; }
.ac-transport { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ac-frame-label { font-variant-numeric: tabular-nums; min-width: 120px; text-align: right; }

/* ---- sequences ---- */
.ac-seq-list { display: flex; flex-direction: column; gap: 6px; max-height: 340px; overflow-y: auto; }
.ac-seq {
  display: block; width: 100%; text-align: left;
  padding: 7px 10px;
  border-radius: 12px;
  border: 1px solid var(--card-border);
  background: rgba(0, 0, 0, .2);
  color: var(--text);
  font-size: .8rem;
}
.ac-seq:hover { border-color: rgba(88, 166, 255, .5); }
.ac-seq.active { border-color: rgba(88, 166, 255, .9); background: rgba(88, 166, 255, .16); }
.ac-seq-name { font-weight: 800; word-break: break-all; }
.ac-seq-meta { color: var(--muted); font-size: .72rem; }
.ac-badge { display: inline-block; padding: 0 7px; border-radius: 999px; font-size: .68rem; font-weight: 800; margin-left: 4px; }
.ac-badge.ok { background: rgba(110, 231, 161, .18); color: #6ee7a1; }
.ac-badge.warn { background: rgba(255, 212, 121, .18); color: #ffd479; }
.ac-badge.err { background: rgba(255, 123, 123, .25); color: #ff9b9b; }

/* ---- issues ---- */
.ac-issues { max-height: 360px; overflow-y: auto; }
.ac-issues li { padding: 3px 0; border-bottom: 1px solid rgba(255, 255, 255, .06); word-break: break-word; }
.ac-issues li:last-child { border-bottom: 0; }
.ac-issues .info { color: #8ec5ff; }
.ac-issues a { color: inherit; text-decoration: underline dotted; cursor: pointer; }

/* ---- filmstrip ---- */
.ac-filmstrip { display: flex; gap: 6px; overflow-x: auto; padding: 4px 2px 10px; }
.ac-thumb {
  flex: none; width: 76px; padding: 3px;
  border-radius: 10px;
  border: 1px solid var(--card-border);
  background: rgba(0, 0, 0, .25);
  color: var(--muted);
  font-size: .68rem; text-align: center;
  cursor: pointer; position: relative;
}
.ac-thumb canvas { width: 68px; height: 68px; display: block; margin: 0 auto 2px; border-radius: 6px; }
.ac-thumb.active { border-color: var(--accent); color: var(--text); background: rgba(88, 166, 255, .18); }
.ac-thumb.warn { border-color: rgba(255, 212, 121, .7); }
.ac-thumb.err { border-color: rgba(255, 123, 123, .9); }
.ac-thumb .ac-dot { position: absolute; top: 4px; right: 5px; width: 8px; height: 8px; border-radius: 50%; }
.ac-thumb.warn .ac-dot { background: #ffd479; }
.ac-thumb.err .ac-dot { background: #ff7b7b; }

.ac-frame-info table { width: 100%; }
.ac-frame-info td { padding: 1px 6px 1px 0; vertical-align: top; }
.ac-frame-info td:first-child { color: var(--muted); white-space: nowrap; }
