/* The scene catalog (scenes/, written by build_scenes.mjs). The pages are guide pages (site.css .guide, .dlg, .reg,
   .tbl, .facts, .gcards, .cta-box, .say); only what they add is here, in site.css's colour variables. */
.ai-label { display: flex; align-items: baseline; gap: 8px; margin-top: 10px; font-size: 14px; color: var(--ink-2); }
.ai-label b { flex: none; padding: 0 7px; border: 1px solid var(--rule); border-radius: 6px; background: var(--card); color: var(--ink); font-size: 12px; line-height: 1.6; }
.scenes .place { font-weight: 600; }
.scenes .cast dt { overflow-wrap: anywhere; }
.stages { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; counter-reset: stage; }
.stages li { counter-increment: stage; padding: 2px 12px; border-radius: 999px; background: var(--accent-soft); color: var(--ink); font-size: 14px; }
.stages li::before { content: counter(stage) " · "; color: var(--ink-2); }
.scenes section > .say { margin-top: 14px; }
.scenes .dlg .who { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.scenes .dlg .who .say button { min-height: 32px; padding: 0 10px; font-size: 12px; }
.scenes .hear { margin-top: 4px; font-size: 13px; color: var(--ink-2); }
.scenes .hear span { color: var(--ink); font-weight: 600; }
.scenes .turn { margin-top: 4px; }
.scenes .turn h3 { color: var(--me); }
.scenes .turn > p { margin-top: 8px; }
.scenes .turn .tw { margin-top: 12px; }
.scenes .turn .intent { background: var(--paper); }
.scenes .intent { padding: 10px 14px; border-left: 3px solid var(--me); background: var(--card); border-radius: 0 8px 8px 0; }
.scenes .sub { margin-top: 28px; font-size: 18px; }
.t-phr .c1 { width: 48%; }
.tbl .zh-l small { display: block; margin-top: 2px; font-size: 13px; }
.scenes .gcards { grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); }
.scenes .gcard a { height: 100%; }
.scene-list { list-style: none; margin: 10px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 0 24px; }
.scene-list li { padding: 8px 0; border-top: 1px solid var(--rule); font-size: 15px; line-height: 1.5; }
.scene-list small { display: block; font-size: 13px; color: var(--ink-2); }
/* 看一看 (scenes/player.js): the homepage's scene box (site.css .scene, .stage, .cap, .cue, .big-play) at the top of a scene page */
.scenes .watch { margin: 20px 0 24px; }
.scenes .big-play span { white-space: nowrap; }
.scenes .watch .cue h3 { margin: 0; }
.scenes .watch .cue .task b { color: var(--ink); }
.scenes .watch .levels li span.en { white-space: normal; font-size: 14px; font-weight: 400; color: var(--ink); } /* site.css keeps the tag (能说清 …) on one line, not the sentence */
.scenes .dlg .who .avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background: #efe6d8; flex: none; } /* drawn from the stage by build_scenes.mjs */
