/* PDF Viewer Styles for Laser-Grader */

.pdfcard {
  --bg: transparent; --fg:#0b1220; --muted:#5b6474; --card:#fff; --border:rgba(2,6,23,.08);
  --radius:12px; --accent:#2563eb;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:0 6px 20px rgba(0,0,0,.08);
  overflow:clip;
}
.pdfcard[data-theme="auto"] {
  --bg:#f7f7fb; --fg:#0b1220; --muted:#5b6474;
  --card:#fff; --border:rgba(2,6,23,.08);
  --accent:#2563eb;
}

.pdftoolbar {
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  background:linear-gradient(180deg, rgba(2,6,23,.03), rgba(2,6,23,0));
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  z-index:2;
}
.pdftoolbar .seg {
  display:inline-flex;
  border:1px solid var(--border);
  border-radius:10px;
  overflow:hidden;
  background:#fff;
}
.pdftoolbar .seg.right { margin-left:auto; }
.pdftoolbar .btn {
  appearance:none;
  border:0;
  background:transparent;
  color:var(--fg);
  padding:8px 10px;
  border-right:1px solid var(--border);
  cursor:pointer;
  transition:transform .12s ease, background .12s ease;
}
.pdftoolbar .btn:last-child { border-right:0; }
.pdftoolbar .btn:hover { background:rgba(2,6,23,.04); }
.pdftoolbar .btn:active { transform:translateY(1px); }
.pdftoolbar .info {
  font-variant-numeric:tabular-nums;
  color:var(--muted);
  padding:0 10px;
}

.pdfstage {
  position:relative;
  display:grid;
  place-items:center;
  background:var(--bg);
  min-height:80vh;
}

.pdfcanvas {
  background:#fff;
  border-radius:10px;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  will-change:transform,opacity;
}

.pdfstage .nav {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:48px;
  height:48px;
  border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.95);
  box-shadow:0 2px 12px rgba(0,0,0,.10);
  color:var(--fg);
  display:grid;
  place-items:center;
  cursor:pointer;
  transition: background .15s ease, transform .15s ease, opacity .15s ease, box-shadow .15s ease;
  opacity:.95;
}
.pdfstage .nav:hover {
  background:#fff;
  box-shadow:0 6px 20px rgba(0,0,0,.14);
  transform:translateY(-50%) scale(1.05);
  opacity:1;
}
.pdfstage .nav:active { transform:translateY(-50%) scale(.98); }
.pdfstage .nav-prev { left:10px; }
.pdfstage .nav-next { right:10px; }
.pdfstage .nav::after {
  content:"";
  position:absolute;
  inset:-14px;
  border-radius:999px;
}
@media (max-width:720px) {
  .pdfstage .nav { width:56px; height:56px; }
  .pdfstage .nav svg { width:22px; height:22px; }
}

/* PDF Fallback Iframe */
.pdf-fallback {
  width:100%;
  height:800px;
  border:0;
}

/* Download Button Wrapper */
.pdf-download {
  text-align:center;
  margin-top:2rem;
}
