/* CFB cinematic system. Scoped presentation; existing business handlers own state. */
.cfb-cinematic {
  --cfb-bg: #0b0e14; --cfb-panel: #141820; --cfb-panel-alt: #191e28;
  --cfb-text: #f1f3f7; --cfb-muted: #a3adbd; --cfb-line: #2b313d;
  --cfb-accent: #f5bc76; --cfb-secondary: #75d5cb;
  font-family: Inter, "Segoe UI", system-ui, sans-serif;
}
.cfb-cinematic[data-cfb-app="ticketing"] { --cfb-accent: #ff9688; }
.cfb-cinematic[data-cfb-app="compliance"] { --cfb-accent: #80daca; }
.cfb-cinematic[data-cfb-app="financial"] { --cfb-accent: #a5c1ff; }
.cfb-cinematic :where(.cfb-entry, .cfb-landing, .cfb-demo, .cfb-scene, .cfb-head) { box-sizing: border-box; }
.cfb-cinematic :where(.cfb-entry, .cfb-landing) * { box-sizing: border-box; }
.cfb-cinematic .cfb-entry, .cfb-cinematic .cfb-landing { color: var(--cfb-text); background: var(--cfb-bg); }
.cfb-cinematic .cfb-entry { min-height: 100dvh; padding: 0 max(24px, calc((100vw - 1240px) / 2)); }
.cfb-cinematic .cfb-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 96px; padding: 24px 0; border-bottom: 1px solid var(--cfb-line); }
.cfb-cinematic .cfb-wordmark { display: flex; align-items: center; gap: 12px; min-width: 0; text-decoration: none; color: var(--cfb-text); font-size: 13px; font-weight: 650; letter-spacing: -.01em; }
.cfb-cinematic .cfb-wordmark img { width: 42px; height: 42px; object-fit: contain; background: #fff; border-radius: 11px; padding: 5px; }
.cfb-cinematic .cfb-mark { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--cfb-line); border-radius: 11px; color: var(--cfb-accent); font-size: 25px; }
.cfb-cinematic .cfb-wordmark small { display: block; margin-top: 4px; font-size: 9px; letter-spacing: .16em; color: var(--cfb-muted); text-transform: uppercase; }
.cfb-cinematic .cfb-nav { display: flex; align-items: center; gap: 28px; }
.cfb-cinematic .cfb-nav a { color: var(--cfb-muted); text-decoration: none; font-size: 12px; }
.cfb-cinematic .cfb-nav a:hover { color: var(--cfb-text); }
.cfb-cinematic .cfb-kicker { display: flex; align-items: center; gap: 9px; color: var(--cfb-accent); font-size: 10px; letter-spacing: .17em; font-weight: 650; text-transform: uppercase; }
.cfb-cinematic .cfb-kicker::before { content: ""; width: 6px; height: 6px; background: currentColor; border-radius: 50%; box-shadow: 0 0 16px currentColor; }
.cfb-cinematic .cfb-entry-grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); align-items: center; gap: clamp(36px, 7vw, 112px); padding: 64px 0; }
.cfb-cinematic .cfb-entry-intro { min-width: 0; }
.cfb-cinematic .cfb-title { margin: 24px 0 20px; font-size: clamp(42px, 5.1vw, 70px); font-weight: 650; line-height: 1.06; letter-spacing: -.055em; color: var(--cfb-text); text-wrap: balance; }
.cfb-cinematic .cfb-title em { font-family: Georgia, serif; font-weight: 400; color: var(--cfb-accent); font-style: italic; }
.cfb-cinematic .cfb-description { max-width: 49ch; color: var(--cfb-muted); font-size: 14px; line-height: 1.8; margin: 0; }
.cfb-cinematic .cfb-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.cfb-cinematic .cfb-button { display: inline-flex; justify-content: center; align-items: center; gap: 18px; min-height: 46px; padding: 12px 22px; border: 1px solid var(--cfb-line); border-radius: 9px; color: var(--cfb-text); background: var(--cfb-panel); font: inherit; font-size: 12px; font-weight: 650; cursor: pointer; text-decoration: none; transition: background 180ms, transform 180ms; }
.cfb-cinematic .cfb-button--primary { background: var(--cfb-accent); border-color: var(--cfb-accent); color: #10151c; }
.cfb-cinematic .cfb-button:hover { transform: translateY(-2px); filter: brightness(1.08); }
.cfb-cinematic .cfb-button:active { transform: translateY(1px); }
.cfb-cinematic .cfb-scene { position: relative; height: 400px; overflow: hidden; isolation: isolate; border-radius: 28px; }
.cfb-cinematic .cfb-scene::before { content: ""; position: absolute; inset: 6%; background: radial-gradient(ellipse at center, color-mix(in srgb, var(--cfb-accent) 11%, transparent), transparent 65%); pointer-events: none; }
.cfb-cinematic .cfb-scene canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.cfb-cinematic .cfb-orbit-fallback { position: absolute; left: 50%; top: 48%; width: 43%; aspect-ratio: 1; transform: translate(-50%, -50%) rotate(-26deg); border: 1px solid color-mix(in srgb, var(--cfb-accent) 40%, transparent); border-radius: 50%; box-shadow: inset 0 0 45px color-mix(in srgb, var(--cfb-accent) 7%, transparent), 0 0 45px color-mix(in srgb, var(--cfb-accent) 5%, transparent); }
.cfb-cinematic .cfb-orbit-fallback::after { content: ""; position: absolute; inset: -12%; border: 1px solid color-mix(in srgb, var(--cfb-secondary) 24%, transparent); border-radius: 50%; transform: rotate(60deg) scaleX(.46); }
.cfb-cinematic .cfb-scene[data-rendered] .cfb-orbit-fallback { opacity: .2; }
.cfb-cinematic .cfb-floating { position: absolute; z-index: 2; width: 164px; padding: 15px 17px; background: color-mix(in srgb, var(--cfb-panel) 86%, transparent); backdrop-filter: blur(12px); border: 1px solid var(--cfb-line); border-radius: 13px; box-shadow: 0 18px 40px #0003; }
.cfb-cinematic .cfb-floating small { display: block; color: var(--cfb-muted); font-size: 9px; letter-spacing: .11em; text-transform: uppercase; margin-bottom: 7px; }
.cfb-cinematic .cfb-floating strong { color: var(--cfb-text); font-weight: 500; font-size: 13px; }
.cfb-cinematic .cfb-floating i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: var(--cfb-secondary); margin-right: 6px; }
.cfb-cinematic .cfb-floating--one { top: 14%; left: 4%; transform: rotate(-5deg); }
.cfb-cinematic .cfb-floating--two { top: 47%; right: 2%; transform: rotate(5deg); }
.cfb-cinematic .cfb-floating--three { bottom: 8%; left: 16%; transform: rotate(-3deg); }
.cfb-cinematic .cfb-scene-label { position: absolute; bottom: 0; right: 8px; font-size: 8px; letter-spacing: .17em; color: var(--cfb-muted); text-transform: uppercase; }
.cfb-cinematic .cfb-scene--compact { height: 280px; margin-top: 12px; }
.cfb-cinematic .cfb-scene--compact .cfb-floating { width: 144px; padding: 12px; }
.cfb-cinematic .cfb-demo { padding: 38px 0; border-top: 1px solid var(--cfb-line); }
.cfb-cinematic .cfb-section-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.cfb-cinematic .cfb-section-top h2 { margin: 8px 0 0; font-size: 25px; letter-spacing: -.035em; font-weight: 550; color: var(--cfb-text); }
.cfb-cinematic .cfb-demo-label { padding: 6px 10px; border: 1px solid var(--cfb-line); border-radius: 6px; color: var(--cfb-muted); font-size: 10px; white-space: nowrap; }
.cfb-cinematic .cfb-demo-steps { display: flex; border: 1px solid var(--cfb-line); border-radius: 12px; overflow: hidden; background: var(--cfb-panel); }
.cfb-cinematic .cfb-demo-step { flex: 1; text-align: left; padding: 17px 14px; background: transparent; border: 0; border-right: 1px solid var(--cfb-line); color: var(--cfb-muted); font: inherit; font-size: 12px; cursor: pointer; min-width: 0; transition: background 180ms, color 180ms; }
.cfb-cinematic .cfb-demo-step:last-child { border-right: 0; }
.cfb-cinematic .cfb-demo-step span { display: block; font-size: 9px; margin-bottom: 8px; color: inherit; opacity: .7; }
.cfb-cinematic .cfb-demo-step[aria-pressed="true"] { color: var(--cfb-accent); background: color-mix(in srgb, var(--cfb-accent) 8%, var(--cfb-panel)); }
.cfb-cinematic .cfb-demo-detail { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 16px; padding: 22px 24px; border: 1px solid var(--cfb-line); border-radius: 12px; background: var(--cfb-panel); }
.cfb-cinematic .cfb-demo-detail h3 { margin: 0 0 8px; font-size: 15px; color: var(--cfb-text); font-weight: 550; }
.cfb-cinematic .cfb-demo-detail p { margin: 0; font-size: 12px; line-height: 1.7; color: var(--cfb-muted); max-width: 80ch; }
.cfb-cinematic .cfb-demo-progress { display: flex; gap: 6px; margin-top: 15px; }
.cfb-cinematic .cfb-demo-progress span { width: 28px; height: 3px; border-radius: 2px; background: var(--cfb-line); }
.cfb-cinematic .cfb-demo-progress span[data-complete] { background: var(--cfb-accent); }
.cfb-cinematic .cfb-capabilities { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; padding: 32px 0 56px; }
.cfb-cinematic .cfb-capability { border: 1px solid var(--cfb-line); border-radius: 14px; padding: 28px; background: var(--cfb-panel); }
.cfb-cinematic .cfb-capability > span { font-size: 11px; color: var(--cfb-accent); }
.cfb-cinematic .cfb-capability h3 { font-size: 17px; font-weight: 550; margin: 28px 0 12px; color: var(--cfb-text); }
.cfb-cinematic .cfb-capability p { font-size: 12px; line-height: 1.8; color: var(--cfb-muted); margin: 0; }
.cfb-cinematic .cfb-closing { display: flex; justify-content: space-between; align-items: center; gap: 32px; padding: 48px 0; border-top: 1px solid var(--cfb-line); }
.cfb-cinematic .cfb-closing h2 { margin: 0; font-size: clamp(30px, 4vw, 50px); letter-spacing: -.045em; font-weight: 550; color: var(--cfb-text); }
.cfb-cinematic .cfb-foot { display: flex; justify-content: space-between; gap: 24px; border-top: 1px solid var(--cfb-line); padding: 24px 0 28px; color: var(--cfb-muted); font-size: 10px; letter-spacing: .025em; }
.cfb-cinematic :is(a, button, input, select, textarea):focus-visible { outline: 2px solid var(--cfb-accent); outline-offset: 4px; }
.cfb-cinematic .cfb-auth-tabs { display: flex; gap: 4px; padding: 4px; margin-bottom: 25px; border: 1px solid var(--cfb-line); border-radius: 9px; background: var(--cfb-bg); }
.cfb-cinematic .cfb-auth-tabs button { flex: 1; min-height: 40px; border: 0; border-radius: 6px; background: transparent; color: var(--cfb-muted); font: inherit; font-size: 12px; cursor: pointer; }
.cfb-cinematic .cfb-auth-tabs button[aria-pressed="true"] { background: var(--cfb-panel-alt); color: var(--cfb-text); }
.cfb-cinematic [hidden] { display: none !important; }
/* Main CRM: retain the existing appearance engine and custom overrides. */
html.crm-lumina[data-theme="dark"] { --bg: #0b0e14; --surface: #141820; --bg-card: #141820; --bg-elevated: #191e28; --border: #2b313d; --text: #f1f3f7; --muted: #a3adbd; --sidebar-bg: #0e1118; --table-header-bg: #191e28; --table-row-alt: #11151c; --table-hover: #1b2330; --body-gradient: none; }
html.crm-lumina[data-theme="dark"][data-accent="gold"] { --accent: #f5bc76; --accent-hover: #ffcb90; --text-on-accent: #10151c; }
html.crm-lumina[data-theme="dark"][data-accent="teal"] { --accent: #80daca; --accent-hover: #99e8db; --text-on-accent: #10151c; }
html.crm-lumina[data-theme="dark"][data-accent="navy"] { --accent: #a5c1ff; --accent-hover: #bbd0ff; --text-on-accent: #10151c; }
body.crm-lumina-page.cfb-cinematic { --cfb-bg: var(--bg); --cfb-panel: var(--surface); --cfb-panel-alt: var(--bg-elevated); --cfb-text: var(--text); --cfb-muted: var(--muted); --cfb-line: var(--border); --cfb-accent: var(--accent); }
body.crm-lumina-page.cfb-cinematic .cfb-landing { padding: 0 max(24px, calc((100vw - 1240px) / 2)); }
body.crm-lumina-page.cfb-cinematic .crm-side-brand { border-radius: 14px; }
body.crm-lumina-page.cfb-cinematic :is(.kpi-card, .meta-card, .modules, .report-op-block) { border-radius: 16px; box-shadow: none; }
body.crm-lumina-page.cfb-cinematic .topbar { border-bottom: 1px solid var(--border); }
body.crm-lumina-page.cfb-cinematic .crm-side-item.active { background: color-mix(in srgb, var(--accent) 9%, var(--surface)); }
body.crm-lumina-login.cfb-cinematic .lumina-login-intro h2 { font-size: clamp(40px, 4.3vw, 64px); font-weight: 550; }
body.crm-lumina-login.cfb-cinematic .lumina-network { display: none; }
body.crm-lumina-login.cfb-cinematic .login-box { box-shadow: none; border-radius: 20px; padding: 32px; }
body.crm-lumina-login.cfb-cinematic .passkey-btn--hero { background: var(--accent) !important; color: var(--text-on-accent) !important; box-shadow: none; }
body.crm-lumina-login.cfb-cinematic .scene { padding-top: 28px; }
body.crm-lumina-login.cfb-cinematic .cfb-scene { max-width: 470px; }
/* Financial reporting entry; existing theme selection and all records retained. */
body.cfb-cinematic[data-cfb-app="financial"] { --cfb-bg: var(--surface); --cfb-panel: var(--panel); --cfb-panel-alt: var(--panel-2); --cfb-text: var(--text); --cfb-muted: var(--muted); --cfb-line: var(--panel-border); }
body.cfb-cinematic[data-cfb-app="financial"][data-theme="midnight"] { --bg-top: #0b0e14; --bg-bottom: #0b0e14; --surface: #0b0e14; --panel: #141820; --panel-2: #191e28; --panel-border: #2b313d; --text: #f1f3f7; --muted: #a3adbd; }
.cfb-cinematic .auth-overlay.show { display: block; padding: 0; background: var(--cfb-bg); backdrop-filter: none; }
body.cfb-cinematic.auth-locked { overflow: hidden; }
.cfb-cinematic .auth-overlay .auth-card { width: 100%; max-height: none; overflow: visible; background: var(--cfb-panel); border: 1px solid var(--cfb-line); box-shadow: none; border-radius: 20px; padding: 30px; color: var(--cfb-text); }
.cfb-cinematic .auth-overlay .auth-card h2 { font-size: 25px; letter-spacing: -.025em; margin: 12px 0; }
.cfb-cinematic .auth-overlay .auth-brand-logo { width: 40px; height: 48px; margin: 0 auto 16px; }
.cfb-cinematic .auth-overlay :is(input, select) { background: var(--cfb-bg); color: var(--cfb-text); border: 1px solid var(--cfb-line); border-radius: 8px; min-height: 46px; }
.cfb-cinematic .auth-overlay .button { background: #a5c1ff; color: #10151c; border: 0; min-height: 46px; box-shadow: none; border-radius: 8px; }
.cfb-cinematic .auth-overlay .ghost-button { background: var(--cfb-panel-alt); color: var(--cfb-text); border-color: var(--cfb-line); }
.cfb-cinematic .auth-overlay .auth-message.neutral { color: var(--cfb-muted); font-size: 12px; line-height: 1.7; }
.cfb-cinematic .auth-overlay .auth-divider { margin-top: 10px; }
.cfb-cinematic .stat-card { border-radius: 14px; }
/* Branch compliance: remove competing holographic effects; retain all controls. */
body.cfb-cinematic[data-cfb-app="compliance"] { background: #0b0e14; animation: none; --bg-deep: #0b0e14; --bg-mid: #10141c; --panel: #141820; --line: #2b313d; --line-strong: #384252; --text: #f1f3f7; --muted: #a3adbd; --cyan: #80daca; --teal: #80daca; }
.cfb-cinematic #auth-page { display: block; padding: 0 max(24px, calc((100vw - 1240px) / 2)); background: var(--cfb-bg); color: var(--cfb-text); }
.cfb-cinematic #auth-page .auth-shell { max-width: none; grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); gap: 64px; padding-bottom: 32px; }
.cfb-cinematic #auth-page .cfb-head, .cfb-cinematic #auth-page .cfb-demo, .cfb-cinematic #auth-page .cfb-foot { grid-column: 1 / -1; }
.cfb-cinematic #auth-page .auth-art { background: none; padding: 0; min-height: 0; border: 0; box-shadow: none; overflow: visible; }
.cfb-cinematic #auth-page .auth-art::before { display: none; }
.cfb-cinematic #auth-page .auth-card { background: var(--cfb-panel); border: 1px solid var(--cfb-line); box-shadow: none; padding: 32px; border-radius: 20px; }
.cfb-cinematic #auth-page .auth-card h1 { color: var(--cfb-text); text-shadow: none; letter-spacing: -.025em; font-size: 26px; }
.cfb-cinematic #auth-page :is(input, select) { background: var(--cfb-bg); color: var(--cfb-text); border-color: var(--cfb-line); border-radius: 8px; min-height: 46px; }
.cfb-cinematic #auth-page .btn-primary { background: var(--cfb-accent); color: #10151c; box-shadow: none; border: 0; }
.cfb-cinematic #auth-page .btn-ghost { color: var(--cfb-accent); background: transparent; border-color: var(--cfb-line); }
.cfb-cinematic #auth-page .subtitle { color: var(--cfb-muted); letter-spacing: .12em; }
.cfb-cinematic #auth-page .auth-feature-list { margin-top: 8px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cfb-cinematic #auth-page .auth-feature-list li { padding: 8px 0; border: 0; background: none; letter-spacing: .03em; font-size: 9px; color: var(--cfb-muted); }
.cfb-cinematic[data-cfb-app="compliance"] :is(.sidebar-glass, .panel, .kpi-card, .modal-content) { background: #141820; box-shadow: none; border-color: #2b313d; border-radius: 14px; }
.cfb-cinematic[data-cfb-app="compliance"] :is(.sidebar-glass, .panel, .kpi-card)::before { animation: none; opacity: .05; }
/* Ticketing: scoped overrides for the existing Tailwind surfaces. */
.cfb-cinematic.cfb-ticketing { background: var(--cfb-bg); color: var(--cfb-text); }
.cfb-cinematic.cfb-ticketing::before, .cfb-cinematic.cfb-ticketing::after, .cfb-cinematic.cfb-ticketing .login-skyline { display: none; }
.cfb-cinematic.cfb-ticketing > header, .cfb-cinematic.cfb-ticketing > footer { background: var(--cfb-bg); border-color: var(--cfb-line); }
.cfb-cinematic.cfb-ticketing .login-hero-copy h1 { font-size: clamp(42px, 4.5vw, 64px); line-height: 1.05; font-weight: 600; letter-spacing: -.05em; }
.cfb-cinematic.cfb-ticketing .login-hero-copy h1 > span { color: var(--cfb-accent); background: none; font-family: Georgia, serif; font-weight: 400; font-style: italic; }
.cfb-cinematic.cfb-ticketing .login-hero-copy > p { font-size: 14px; line-height: 1.8; }
.cfb-cinematic.cfb-ticketing :is(.login-panel, .login-feature-card) { background: var(--cfb-panel); border-color: var(--cfb-line); box-shadow: none; }
.cfb-cinematic.cfb-ticketing .login-panel:hover { transform: none; box-shadow: none; }
.cfb-cinematic.cfb-ticketing .login-panel > div:first-child span { background: var(--cfb-accent); }
.cfb-cinematic.cfb-ticketing :is(input, select) { background: var(--cfb-bg); color: var(--cfb-text); border-color: var(--cfb-line); }
.cfb-cinematic.cfb-ticketing [class*="border-slate-200"], .cfb-cinematic.cfb-ticketing [class*="border-blue-100"], .cfb-cinematic.cfb-ticketing [class*="border-white"] { border-color: var(--cfb-line); }
.cfb-cinematic.cfb-ticketing :is([class*="text-blue-950"], [class*="text-slate-950"], [class*="text-slate-800"]) { color: var(--cfb-text); }
.cfb-cinematic.cfb-ticketing :is([class*="text-slate-500"], [class*="text-slate-600"]) { color: var(--cfb-muted); }
.cfb-cinematic.cfb-ticketing :is([class*="text-blue-700"], [class*="text-teal-700"]) { color: var(--cfb-accent); }
.cfb-cinematic.cfb-ticketing [class*="bg-white"] { background: var(--cfb-panel); }
.cfb-cinematic.cfb-ticketing :is(button[class*="bg-blue-700"], button[class*="bg-teal-600"]) { background: var(--cfb-accent); color: #10151c; box-shadow: none; }
.cfb-cinematic.cfb-ticketing .login-feature-card h3 { font-size: 16px; font-weight: 550; }
.cfb-cinematic.cfb-ticketing .cfb-scene { height: 250px; margin: 5px -12px 0; }
.cfb-cinematic.cfb-ticketing .cfb-floating { width: 146px; padding: 12px; }
.cfb-cinematic.cfb-ticketing .cfb-demo { margin-top: 48px; }
.cfb-ticketing-workspace { --cfb-accent: #ff9688; background: #0b0e14 !important; }
.cfb-ticketing-workspace :is(header, aside, [class*="bg-slate-900"]) { background-color: #141820; }
.cfb-ticketing-workspace [class*="border-slate-800"] { border-color: #2b313d; }
.cfb-ticketing-workspace table { font-variant-numeric: tabular-nums; }
.cfb-ticketing-workspace :is(input, select, textarea):focus-visible { outline: 2px solid #ff9688; outline-offset: 3px; }
@media (max-width: 900px) {
  .cfb-cinematic .cfb-entry-grid { gap: 32px; grid-template-columns: minmax(0, 1fr) minmax(310px, .9fr); padding: 42px 0; }
  .cfb-cinematic #auth-page .auth-shell { gap: 36px; grid-template-columns: minmax(0, 1fr) minmax(310px, .9fr); }
  .cfb-cinematic #auth-page .auth-art { display: block; }
  .cfb-cinematic .cfb-title { font-size: 45px; }
  .cfb-cinematic .cfb-floating { width: 135px; padding: 12px; }
  .cfb-cinematic .cfb-demo-step { padding: 14px 10px; font-size: 11px; }
}
@media (max-width: 700px) {
  .cfb-cinematic .cfb-head { min-height: 76px; padding: 20px 0; gap: 12px; }
  .cfb-cinematic .cfb-nav { gap: 16px; }
  .cfb-cinematic .cfb-head .cfb-nav { flex-shrink: 0; }
  .cfb-cinematic .cfb-head .cfb-nav a:not(.cfb-button) { display: none; }
  .cfb-cinematic .cfb-head .cfb-nav .cfb-button { white-space: nowrap; padding: 10px 16px; min-height: 42px; }
  .cfb-cinematic .cfb-wordmark small { max-width: 170px; font-size: 8px; line-height: 1.6; }
  .cfb-cinematic .cfb-nav a { font-size: 11px; }
  .cfb-cinematic .cfb-entry, body.crm-lumina-page.cfb-cinematic .cfb-landing, .cfb-cinematic #auth-page { padding-left: 20px; padding-right: 20px; }
  .cfb-cinematic .cfb-entry-grid, .cfb-cinematic #auth-page .auth-shell { grid-template-columns: minmax(0, 1fr); gap: 28px; padding-top: 28px; }
  .cfb-cinematic #auth-page .auth-shell { padding-top: 0; }
  .cfb-cinematic .cfb-title { font-size: 43px; margin-top: 18px; }
  .cfb-cinematic .cfb-scene { height: 280px; }
  .cfb-cinematic .cfb-entry-intro .cfb-scene--compact, .cfb-cinematic #auth-page .auth-art .cfb-scene { display: none; }
  .cfb-cinematic .cfb-description { font-size: 13px; }
  .cfb-cinematic .cfb-demo-steps { flex-wrap: wrap; }
  .cfb-cinematic .cfb-demo-step { flex-basis: 33.333%; border-bottom: 1px solid var(--cfb-line); min-height: 66px; }
  .cfb-cinematic .cfb-demo-detail { flex-direction: column; align-items: stretch; gap: 18px; padding: 20px; }
  .cfb-cinematic .cfb-capabilities { grid-template-columns: minmax(0, 1fr); }
  .cfb-cinematic .cfb-closing { align-items: flex-start; flex-direction: column; }
  .cfb-cinematic .cfb-foot { flex-wrap: wrap; }
  body.crm-lumina-login.cfb-cinematic .scene { display: flex; flex-direction: column; gap: 26px; padding-top: 12px; }
  body.crm-lumina-login.cfb-cinematic .lumina-login-intro { width: 100%; }
  body.crm-lumina-login.cfb-cinematic .lumina-login-intro h2 { font-size: 34px; margin: 12px 0; }
  body.crm-lumina-login.cfb-cinematic .lumina-login-intro .cfb-scene { display: none; }
  body.crm-lumina-login.cfb-cinematic .login-stage { width: 100%; }
  body.crm-lumina-login.cfb-cinematic .login-box { padding: 24px; }
  .cfb-cinematic.cfb-ticketing .login-hero-copy > .cfb-scene { display: none; }
  .cfb-cinematic.cfb-ticketing .login-hero-copy h1 { font-size: 42px; }
}
@media (prefers-reduced-motion: reduce) {
  .cfb-cinematic *, .cfb-cinematic *::before, .cfb-cinematic *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .cfb-cinematic .cfb-button:hover { transform: none; }
}
@media (forced-colors: active) { .cfb-cinematic :is(.cfb-floating, .cfb-demo-steps, .cfb-demo-detail, .cfb-capability, .auth-card) { border: 1px solid CanvasText; } }
