/* Gallery and viewer primitives; the shared site stylesheet owns the theme. */
.filters{display:flex;justify-content:space-between;align-items:center;gap:20px}
#filterButtons{display:flex;flex-wrap:wrap;gap:8px}.filters button{font:inherit;cursor:pointer}.filters button span{margin-left:8px}
.grid{display:grid}.card{min-width:0}.card[hidden]{display:none}.preview-button{position:relative;width:100%;display:block;border:0;text-align:left;cursor:pointer}.preview-button img{display:block;width:100%;height:auto}.preview-button::after{position:absolute}.card-meta{display:flex;justify-content:space-between;gap:16px}.card-meta h2{margin:0 0 8px}.card-meta p{margin:0}
.viewerbar{display:flex;align-items:center;height:72px;padding:12px 20px}.viewerbar>div:nth-child(2){flex:1;min-width:0}.viewerbar strong{display:block;font-size:13px}.viewerbar span{display:block;font-size:11px;margin-top:4px}.size-switch{display:flex}.viewerbody{height:calc(100% - 72px);display:grid;grid-template-columns:260px minmax(0,1fr)}.viewerbody aside{padding:30px 24px;overflow:auto}.viewerbody h2{font:32px/1.15 Georgia,serif;margin:20px 0 30px}.viewerbody dt{font-size:11px;letter-spacing:.6px;margin-top:24px}.viewerbody dd{font-size:14px;line-height:1.7;margin:8px 0}.note{font-size:12px;line-height:1.7;margin-top:30px}.stage{position:relative;display:flex;justify-content:center;align-items:flex-start;overflow:auto;padding:24px}iframe{width:600px;max-width:100%;height:100%;min-height:0;flex-shrink:1;border:0}dialog{width:calc(100vw - 40px);max-width:1320px}.viewer-status{position:absolute;inset:0;display:grid;place-content:center;font-size:14px;margin:0;background:#0d0f0b;z-index:1}.viewer-status[hidden]{display:none}.viewerbar a{font-size:11px}
@media(max-width:1000px){.viewerbody{grid-template-columns:210px minmax(0,1fr)}.viewerbody aside{padding:24px 18px}.stage{padding:16px}}
