/* Catalog first: choose a quiz, then choose how to play. */
.quiz-library-links{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 20px}.quiz-library-links a{padding:10px 16px;border:1px solid var(--line);border-radius:24px;text-decoration:none;color:var(--muted);font-size:14px}.quiz-library-links a[aria-current]{color:var(--text);background:var(--tint);border-color:var(--accent)}
.catalog-join{margin:0 0 18px;color:var(--muted);font-size:13px}.catalog-join summary{cursor:pointer;padding:10px 0}.catalog-tools{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,.5fr) minmax(120px,.6fr);gap:10px}.catalog-tools>*{min-width:0;width:100%}.catalog-tools select{max-width:100%;width:100%}.catalog-detail .catalog-start,.catalog-detail .catalog-together{display:block;width:100%;margin:10px 0;min-height:48px}.catalog-detail .catalog-start{background:var(--accent);color:#fff}.catalog-detail .catalog-mode-help,.catalog-unavailable p{font-size:13px;line-height:1.6;color:var(--muted)}.catalog-unavailable button{display:block;width:100%;margin:8px 0}.event-list .card .btn{display:inline-flex;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;margin:6px 0;color:var(--text)}
/* Labels stay whole. Smaller screens can slide the strip horizontally. */
#main .profile-sections{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;justify-content:flex-start;gap:4px}
#main .profile-sections button,#main .profile-sections>a{flex:1 0 auto;white-space:nowrap;word-break:normal;overflow-wrap:normal;min-width:max-content;padding:12px 16px}
#main .profile-sections::-webkit-scrollbar{display:none}
.album-library .album-cover{position:relative;isolation:isolate;display:block;overflow:hidden;padding:0;text-align:left}
.album-library .album-cover-image{display:block;aspect-ratio:4/3;width:100%}
.album-library .album-cover-caption{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:5px;padding:38px 15px 14px;background:linear-gradient(transparent,#080b15d9);color:#fff;pointer-events:none}
.album-library .album-cover-caption strong{color:#fff;font-size:15px;white-space:normal;overflow-wrap:anywhere;line-height:1.3}
.album-library .album-cover-caption small{color:#eee;font-size:12px}
.album-library .album-cover-image .album-cover-price{top:10px;bottom:auto}
/* A photograph fills the available viewer. Controls belong to its top bar. */
dialog.cyber-photo-viewer .cpv-toolbar{display:grid;grid-template-columns:44px 1fr 44px;gap:10px}
dialog.cyber-photo-viewer .cpv-toolbar button{position:static;inset:auto;transform:none;pointer-events:auto;width:44px;height:44px;margin:0}
dialog.cyber-photo-viewer .cpv-counter{text-align:center}
dialog.cyber-photo-viewer .cpv-stage{inset:0;touch-action:pinch-zoom}
dialog.cyber-photo-viewer.cpv-zoomed .cpv-stage{touch-action:pan-x pan-y pinch-zoom}
dialog.cyber-photo-viewer .cpv-footer{padding:22px 16px calc(18px + env(safe-area-inset-bottom))}
/* Preserve every pixel of diagrams; expand the illustration rather than crop it. */
@media(min-width:761px){
 #quiz-player .qp-playing .qp-question:has(.qp-media-open){grid-template-columns:minmax(0,1fr) minmax(220px,48%);padding:10px 16px;gap:12px}
 #quiz-player .qp-playing .qp-question .qp-media-open{display:block;background:#88888808}
 #quiz-player .qp-playing .qp-media-open span{position:absolute;right:8px;bottom:8px}
}
@media(max-width:760px){
 .catalog-tools{grid-template-columns:1fr 1fr}.catalog-tools input{grid-column:1/-1}
 #main .profile-sections button,#main .profile-sections>a{font-size:13px;padding:12px 14px}
 .album-library .album-covers:has(>.album-cover:only-child){grid-template-columns:1fr}
 .album-library .album-cover:only-child .album-cover-image{aspect-ratio:16/10}
 dialog.cyber-photo-viewer .cpv-prev,dialog.cyber-photo-viewer .cpv-next{display:none}
 #quiz-player .qp-playing .qp-question:has(.qp-media-open){justify-content:flex-start;gap:10px;padding:10px 0}
 #quiz-player .qp-playing .qp-question:has(.qp-media-open) h2{flex:0 1 auto;max-height:40%;font-size:clamp(17px,4.8vw,21px);margin:0}
 #quiz-player .qp-playing .qp-question .qp-media-open{order:-1;flex:1 1 0;display:block;min-height:48px;max-height:none;width:100%;height:auto;margin:0;padding:0;border-radius:15px;background:linear-gradient(135deg,#9c78fc14,#54a7df0a)}
 #quiz-player .qp-playing .qp-question .qp-media{height:100%;max-height:none;max-width:100%;width:100%;object-fit:contain;border-radius:12px}
 #quiz-player .qp-playing .qp-media-open span{position:absolute;right:8px;bottom:8px;padding:5px 8px;background:#111827d9;font-size:10px}
 #quiz-player .qp-playing .qp-question audio{height:34px;min-height:34px}
}
@media(max-width:760px) and (max-height:700px){#quiz-player .qp-playing .qp-question:has(.qp-media-open){gap:5px;padding:4px 0}#quiz-player .qp-playing .qp-question:has(.qp-media-open) h2{font-size:16px}}

@media(min-width:761px) and (max-height:820px){#quiz-player .qp-playing .qp-question:has(.qp-media-open) h2{font-size:20px;line-height:1.3}}
