/* Shared text flow for audience and operations pages. */
body{overflow-wrap:anywhere}
body:lang(ko){word-break:keep-all}
/* Chinese and Japanese wrap at natural character boundaries; Latin text at words. */
html:lang(zh-CN) :is(h1,h2,h3,p,li,.hero-question,.rail-blank,.rail-list strong){word-break:normal;line-break:strict}
html:lang(ja) :is(h1,h2,h3,p,li,.hero-question,.rail-blank,.rail-list strong){word-break:normal;line-break:strict}
html:lang(en) mark.mock::after{content:"Example"}
html:lang(zh-CN) mark.mock::after{content:"示例"}
html:lang(ja) mark.mock::after{content:"例"}
:is(h1,h2,h3){text-wrap:balance}
:is(main,article,section) :is(p,blockquote){text-wrap:pretty}

[data-preferences]{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
[data-preferences] button{min-height:44px;padding:.4rem .7rem;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:.8rem;cursor:pointer}
html[data-default-theme="dark"][data-theme="light"]{color-scheme:light;--bg:#f5f3ed;--ink:#26221e;--muted:#544c42;--line:#c8bcad;--accent:#95411d}
html[data-default-theme="dark"][data-theme="light"] :is(.primary,.panel .btn){color:white}
html[data-default-theme="dark"][data-theme="light"] :is(.screening-card,.panel){background:#fff9f0}
html[data-default-theme="dark"][data-theme="light"] .hero::before{opacity:.24}
html[data-default-theme="dark"][data-theme="light"] .hero-art figcaption{color:#fff7eb}
html[data-default-theme="dark"][data-theme="light"] :is(.hero-art figcaption span,#reel-caption small,.reel-controls button){color:#ffe5cf}
html[data-theme="dark"]:not([data-default-theme="dark"]){color-scheme:dark;--paper:#181815;--ink:#f8f4e8;--muted:#c0bbaf;--line:#514b40}
html[data-theme="dark"]:not([data-default-theme="dark"]) :is(.panel,.film-record,.ops-nav a,input:not([type=checkbox]),select,.secondary){background:#26231d;color:#f8f4e8}
html[data-theme="dark"]:not([data-default-theme="dark"]) :is(button,.action):not(.secondary):not([data-choice]):not([data-lang]){background:#ffc39b;color:#211a15}
html[data-theme="dark"]:not([data-default-theme="dark"]) .badge{background:#353228}
html[data-theme="dark"]:not([data-default-theme="dark"]) .ops-error{color:#ffb3a8}
[data-preferences]{gap:.15rem}
[data-preferences] button{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%}
[data-preferences] button:hover{background:color-mix(in srgb,currentColor 10%,transparent)}
[data-preferences]{position:relative}
#language-options:not([hidden]){display:grid;position:absolute;z-index:5;inset-block-start:100%;inset-inline-end:0;min-width:9rem;padding:.3rem;border:1px solid var(--line);border-radius:8px;background:var(--bg,var(--paper));color:var(--ink);box-shadow:0 8px 22px #0002}
#language-options button{display:block;width:100%;height:auto;text-align:start;padding:.45rem .65rem;border-radius:4px;background:transparent;color:inherit}
#language-options button[aria-pressed="true"]{font-weight:750;background:color-mix(in srgb,currentColor 11%,transparent)}

/* Brand orange for actions and emphasis, with a darker tone for text on white. */
:root{--rockcha-orange:#ef791c;--rockcha-orange-text:#a54806;--rockcha-ink:#242321}
html[data-default-theme="dark"][data-theme="light"]{--bg:#fff;--ink:var(--rockcha-ink);--accent:var(--rockcha-orange-text)}
html[data-default-theme="dark"][data-theme="dark"]{--accent:var(--rockcha-orange)}
html[data-theme="light"]:not([data-default-theme="dark"]){--paper:#fff;--ink:var(--rockcha-ink)}
html[data-theme] body .button.primary,
html[data-theme] .editorial-home .screening-hero .button.primary,
html[data-theme] body .panel .btn,
html[data-theme] body :is(.panel button,.form-card button,.film-record button):not(.secondary){
  background:var(--rockcha-orange);border-color:var(--rockcha-orange);color:var(--rockcha-ink)
}
.editorial-home :is(.info-page .label,.film-editorial-below .label,.demo-lineup>.label,.lineup-link,.gv-home-note a){color:var(--accent)}
.editorial-home .top nav a[aria-current="page"]{text-decoration-color:var(--accent);text-decoration-thickness:2px}
.editorial-home .screening-hero-main>.label{color:#ffd6b8}

header:has(>.header-tools){justify-content:flex-start;column-gap:clamp(.65rem,1.4vw,1.15rem);row-gap:.15rem}
header:has(>.header-tools)>nav{margin-inline-start:auto}
.header-tools{display:flex;align-items:center;gap:.35rem;white-space:nowrap;flex:none}
.header-tools .account-link{display:inline-flex;align-items:center;min-height:44px;padding-inline:.25rem}
.header-tools [data-preferences]{gap:0;flex-wrap:nowrap}
@media(max-width:800px){
  header:has(>.header-tools)>nav{order:3;flex-basis:100%;margin-inline-start:0}
  .header-tools{margin-inline-start:auto}
}

/* One-line menu on phones: it scrolls sideways instead of wrapping onto two or three rows. */
@media(max-width:800px){
  header:has(>.header-tools)>nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;white-space:nowrap;margin-inline:calc(-1 * var(--page-gutter));padding-inline:var(--page-gutter);flex-basis:calc(100% + 2 * var(--page-gutter))}
  header:has(>.header-tools)>nav::-webkit-scrollbar{display:none}
}

/* Messages after an action. A coloured edge plus plain wording, so the meaning never depends on colour alone. */
.form-error,.form-ok{margin:1rem 0;padding:.65rem .9rem;border-inline-start:3px solid #c2402d;background:color-mix(in srgb,#c2402d 9%,transparent);color:var(--ink);font-size:.93rem;line-height:1.6}
.form-ok{border-inline-start-color:var(--rockcha-orange);background:color-mix(in srgb,var(--rockcha-orange) 11%,transparent)}
.sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
