.campus-player-overlay.yearbook-reader-active {
  background: radial-gradient(ellipse at 50% 5%, rgba(255,255,255,.065), transparent 62%), var(--campus-player-bg, #101426);
  grid-template-rows: auto auto minmax(0,1fr);
}
.yearbook-control-dock {
  border-top: 1px solid rgba(255,255,255,.09);
  border-bottom: 1px solid rgba(255,255,255,.09);
  background: rgba(7,12,25,.68);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  padding: 14px clamp(16px,2.5vw,40px) 10px;
  color: #f5f2ec;
}
.yearbook-control-dock[hidden], .yearbook-continuation[hidden] { display:none !important; }
.yearbook-session-label { align-items:center; display:flex; gap:12px; min-width:135px; }
.yearbook-session-label i { background:var(--campus-player-accent,#e9c56d); border-radius:50%; height:8px; width:8px; box-shadow:0 0 0 5px rgba(255,255,255,.045); }
.yearbook-session-label strong { display:block; font-size:clamp(18px,1.4vw,25px); letter-spacing:-.035em; font-weight:650; }
.yearbook-session-label small { display:block; font-size:12px; color:#bdc5d2; margin-top:3px; }
.yearbook-controls { display:flex; flex:1; flex-wrap:wrap; align-items:center; gap:8px; justify-content:flex-end; }
.yearbook-control-dock button, .yearbook-control-dock select, .yearbook-continuation button {
  min-height:48px; min-width:48px; border:1px solid rgba(255,255,255,.17); border-radius:12px;
  color:#f8f5ef; background:#252d40; padding:11px 15px; font:inherit; font-size:14px; font-weight:550;
  box-shadow:0 3px 12px rgba(0,0,0,.08); cursor:pointer;
}
.yearbook-control-dock button:hover, .yearbook-control-dock select:hover { background:#34415a; }
.yearbook-control-dock button[aria-pressed="true"] { border-color:var(--campus-player-accent,#e9c56d); color:var(--campus-player-accent,#e9c56d); }
.yearbook-control-dock button:focus-visible, .yearbook-control-dock select:focus-visible,
.yearbook-continuation button:focus-visible { outline:3px solid #83d9ee; outline-offset:4px; }
.yearbook-control-dock button:disabled { opacity:.4; cursor:default; }
.yearbook-control-dock .yearbook-done, .yearbook-continuation [data-yearbook-accept] {
  background:#f1d68d; border-color:#f1d68d; color:#161c2b; font-weight:750;
}
.yearbook-select { display:flex; align-items:center; gap:7px; font-size:12px; color:#bdc5d2; }
.yearbook-select select { max-width:240px; background:#202839; }
.yearbook-zoom-buttons, .yearbook-view-switch { display:flex; gap:3px; }
.yearbook-zoom-buttons button { padding:10px 12px; }
.yearbook-reader-notice { flex-basis:100%; font-size:12px; min-height:18px; color:#d4dbe5; letter-spacing:.015em; }
.yearbook-reader-notice button { margin-left:8px; min-height:44px; }
.yearbook-reader { --yearbook-zoom:1; }
.yearbook-reader.yearbook-is-zoomed .yearbook-page-viewport { display:block; overflow:auto; touch-action:pan-x pan-y; padding:18px; }
.yearbook-reader.yearbook-is-zoomed .yearbook-page-book {
  width:calc(100% * var(--yearbook-zoom)); max-width:none; max-height:none; margin:0;
}
.yearbook-reader.yearbook-is-zoomed .yearbook-page-canvas img { max-height:none; }
.yearbook-reader.yearbook-single-page .yearbook-page-book { grid-template-columns:minmax(0,1fr); max-width:800px; }
.yearbook-reader.yearbook-single-page .yearbook-page-book.is-open .yearbook-page-canvas.right { display:none; }
.yearbook-reader.yearbook-single-page .yearbook-page-book.is-open::after { display:none; }
.yearbook-reader.yearbook-single-page.yearbook-is-zoomed .yearbook-page-book { max-width:none; }
.yearbook-reader .yearbook-page-canvas img { max-height:calc(100vh - 185px); }
.yearbook-reader .yearbook-page-book { margin:auto; }
.yearbook-reader .yearbook-page-error { flex-direction:column; gap:12px; padding:28px; background:#ece8df; }
.yearbook-page-error button { min-height:48px; padding:10px 20px; border:1px solid #69768b; border-radius:10px; color:#162238; background:#fff; }
.yearbook-continuation {
  position:fixed; inset:0; z-index:85; background:rgba(4,9,22,.96);
  display:flex; justify-content:center; align-items:center; padding:24px;
}
.yearbook-continuation-card { width:min(650px,100%); text-align:center; border:1px solid #35415a; border-radius:28px; background:linear-gradient(140deg,#202d47,#111b2e); padding:clamp(28px,5vw,72px); box-shadow:0 24px 90px rgba(0,0,0,.35); }
.yearbook-overline { color:#ecd38e; text-transform:uppercase; font-size:12px; letter-spacing:.17em; font-weight:700; }
.yearbook-continuation-card h1 { font-size:clamp(48px,7vw,92px); letter-spacing:-.05em; margin:22px 0; line-height:1; }
.yearbook-continuation-card p { color:#d0d9e7; font-size:19px; line-height:1.6; margin:0 0 26px; }
.yearbook-continuation-card>div { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; }
.yearbook-continuation-card small { display:block; color:#bac7da; margin-top:24px; line-height:1.5; }
.yearbook-search-results { background:#19243a; }
.yearbook-search-results button { min-height:56px; }
/* Premium studio proofing: clear draft/live separation and complete editorial work. */
.yearbook-review-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:16px 0; padding:14px; border-radius:12px; background:#f0f4fa; }
.yearbook-review-toolbar label { display:flex; align-items:center; gap:8px; margin:0; }
.yearbook-publication-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; border:1px solid #dbe3ef; border-radius:16px; padding:24px; background:#f7f9fc; margin:20px 0; }
.yearbook-publication-form h4, .yearbook-publication-form p, .yearbook-publication-form .wide { grid-column:1/-1; }
.yearbook-publication-form h4 { margin:0; font-size:20px; letter-spacing:-.025em; }
.yearbook-publication-form p { margin:0; color:#536379; font-size:14px; }
.yearbook-page-review-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px; }
.yearbook-page-review-grid article { border:1px solid #dbe3ef; border-radius:14px; padding:12px; background:white; }
.yearbook-page-review-grid img { display:block; width:100%; height:225px; object-fit:contain; background:#edf1f7; border-radius:8px; }
.yearbook-page-review-grid form { display:grid; gap:8px; margin-top:12px; }
.yearbook-page-review-grid small { color:#61718a; }
.yearbook-wall-studio { border:1px solid #dbe3ef; background:linear-gradient(135deg,#f8fbff,#eef3fa); border-radius:20px; padding:24px; margin:22px 0; }
.yearbook-wall-studio h3 { letter-spacing:-.035em; }
.yearbook-wall-preview { display:flex; gap:12px; overflow:auto; padding:15px 0; }
.yearbook-wall-screen { min-width:160px; background:#17243d; color:#f5f7fc; border:4px solid #314564; border-radius:12px; padding:18px; text-align:center; aspect-ratio:16/10; display:flex; flex-direction:column; justify-content:center; }
.yearbook-wall-screen strong { font-size:26px; letter-spacing:-.03em; }
.yearbook-wall-screen small { display:block; color:#c3d1e8; margin-top:6px; }
@media(max-width:900px) {
  .yearbook-control-dock { padding:10px 14px; gap:10px; }
  .yearbook-controls { justify-content:flex-start; }
  .yearbook-section-select { display:none; }
  .yearbook-control-dock button, .yearbook-control-dock select { font-size:13px; }
  .yearbook-session-label { min-width:auto; }
  .yearbook-reader .yearbook-page-canvas img { max-height:calc(100vh - 235px); }
}
@media(max-width:600px) {
  .yearbook-control-dock { max-height:220px; overflow:auto; }
  .yearbook-controls { flex-basis:100%; }
  .yearbook-select select { max-width:165px; }
  .yearbook-publication-form { grid-template-columns:1fr; padding:16px; }
  .yearbook-reader .yearbook-page-arrow { display:flex; position:absolute; z-index:20; bottom:12px; background:#28354c; }
  .yearbook-reader .yearbook-page-arrow.previous { left:14px; }
  .yearbook-reader .yearbook-page-arrow.next { right:14px; }
  .yearbook-continuation-card p { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .yearbook-control-dock *, .yearbook-continuation *, .yearbook-reader * { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

.yearbook-pdf-studio .yearbook-name-review small, .yearbook-pdf-studio .yearbook-pipeline-copy small,
.yearbook-pdf-studio .yearbook-pipeline-facts span, .yearbook-pdf-studio .yearbook-overflow-note,
.yearbook-pdf-studio .yearbook-import-step small, .yearbook-pdf-studio .yearbook-import-card label > small,
.yearbook-pdf-studio .yearbook-import-options small { color:#4d5c74; }

.yearbook-publication-form > label { display:grid; gap:6px; align-content:start; min-width:0; }
.yearbook-publication-form > label:has(input[type="checkbox"]) { display:flex; align-items:center; gap:10px; }
.yearbook-publication-form input[type="checkbox"] { min-height:20px; width:20px; flex:0 0 20px; }
.yearbook-pdf-studio .yearbook-name-review form { grid-template-columns:minmax(150px,1fr) auto auto auto; }
.yearbook-pdf-studio .yearbook-name-review form button { min-height:48px; grid-row:auto; }
@media(max-width:600px) {
  .yearbook-pdf-studio .yearbook-name-review form { grid-template-columns:minmax(0,1fr); }
  .yearbook-pdf-studio .yearbook-name-review form > label,
  .yearbook-pdf-studio .yearbook-name-review form > button { grid-column:1; grid-row:auto; width:100%; }
}

[data-campus-add-item][hidden] { display:none !important; }
