/* Round 1: contrast, shared colors, type roles. Preserve character colors and strong card outlines. */
:root{--line:#bed4e0;--panel:#eaf7fd;--small:14px;--body:16px}
.video-figure video{color:#fff;background:var(--ink)}
.shot-card figure,.video-caption,.sequence-caption,.video-guide,.prompt,.section-browse,.video-pending{background:var(--panel)}
.video-guide,.video-pending{color:var(--ink);border-color:var(--line)}
.image-open>span{background:var(--ink);color:white}
.brand,.brand-mark,.edition,.note-label,.intro-note p,.eyebrow,.section-count,.section-description,.card-meta,.tag,.basic-mark,.english,.use-case,.button,.category-nav a,.category-nav a span,.browse-links a,.browse-links a span,.hint,.video-caption p,.video-actions label,.sequence-caption,.character-use-note,.learning-note p,.method-grid p,.step,footer,.copy-notice,.section-browse summary,.still-comparison summary,.card-controls summary{font-size:var(--small)}
.lead,.definition,.prompt{font-size:var(--body)}
summary{min-height:44px;padding:8px 0;font-size:var(--small)}
.video-actions input[type=checkbox]{width:24px;height:24px;accent-color:var(--blue)}
.card-description,.card-controls,.section-heading>div{min-width:0}
/* Round 2: three radius roles and remaining duplicates. */
.tag,.image-open>span,.button,.category-nav a,.browse-links a,.brand-mark,.use-case,.prompt,.video-draft,.copy-notice,dialog textarea{border-radius:9px}
.intro-note{border-radius:0 18px 18px 0}
.section-browse,.video-guide,.video-pending,.method-section,dialog{border-radius:18px}
.section-count{border-radius:999px}
.video-guide,.video-guide>span{font-size:var(--small)}
.video-draft,.video-draft strong{color:#655121}
/* Round 3: reading and navigation. */
.video-actions .button,.image-open>span{font-size:14px}
h1 span{display:inline-block}
.intro{padding:32px 0 24px}.intro .lead{max-width:42em}
.library-finder{margin-bottom:16px;scroll-margin-top:20px}
.library-finder label{display:block;font-weight:700;font-size:16px;margin-bottom:8px}
.library-finder label span{font-size:14px;font-weight:400;color:var(--muted);margin-left:8px}
.search-row{display:flex;gap:8px;max-width:720px}
.search-row input,.mobile-category select{font:inherit;color:var(--ink);background:white;border:1px solid #7898ac;border-radius:9px;min-width:0;min-height:48px;padding:10px 12px}
.search-row input{flex:1;width:100%}.search-row input::placeholder{color:var(--muted)}
.search-row input:focus-visible,.mobile-category select:focus-visible{outline:3px solid #c66c18;outline-offset:3px}
.mobile-category,.mobile-only{display:none}
.video-guide{margin:0 0 16px;padding:12px 16px}
.card-browse{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--line);background:var(--panel)}
.card-browse .button{font-size:14px;font-weight:400}
.empty-results{padding:28px;border:1px solid var(--line);border-radius:18px;background:white;margin-bottom:32px}
.button:active{transform:translateY(1px)}
p{word-break:auto-phrase;overflow-wrap:anywhere}
.prompt{word-break:normal}
@media(max-width:720px){
 .intro{padding:20px 0 16px}.intro .lead{font-size:14px}.intro h1{font-size:28px}
 .library-finder{margin:0 0 12px}.library-finder label{margin-bottom:6px}
 .mobile-category{display:block;margin-top:12px}.mobile-category select{width:100%}
 .mobile-category label{font-size:14px}.category-nav{display:none}.mobile-only{display:initial}
 .video-guide{padding:10px 12px;margin-bottom:12px}.selection-status{margin-bottom:20px}
 .card-browse{padding:12px}.card-browse .button{flex:1;padding:10px 8px;font-size:14px}
 .header-inner{padding:12px 18px}.edition{font-size:14px}.brand{font-size:14px}
 .card-meta{gap:8px}.sequence-caption{font-size:14px}
}
