/* Shared LF art direction: typography, pictograms, surfaces, photos and charts. */
:root[data-theme]{
 --lf-cyan:#086f7d;--lf-rose:#a84078;--lf-gold:#93610e;--lf-on-accent:#fff;
 --lf-surface:linear-gradient(140deg,#ffffff,#f6f9fc);--lf-edge:#bccbd7;
 --lf-shadow:0 8px 24px #26374b0a,inset 0 1px 0 #fff;
 --lf-login-bg:linear-gradient(130deg,#18283b,#293346);--lf-login-text:#f4f7fc;--lf-login-edge:#425771;--lf-login-accent:#a1e9ed;
 --lf-metal-top:#243747;--lf-metal-mid:#3d5466;--lf-metal-cut:#162b3b;--lf-metal-bottom:#456079;--lf-metal-shadow:#ffffffb3;
 --bg:#edf2f6;--panel:#fbfcfe;--panel2:#e8eef5;--text:#182839;--muted:#536274;--line:#b9c8d655;
 --glass:#f9fbfdeb;--glass-inner:#fffffff0;--glass-edge:#c8d5e0;--glass-ink:var(--text);--glass-muted:var(--muted);
 --caption-glass:linear-gradient(130deg,#ffffffee,#f0f5fbe6);--caption-edge:#fff9;--caption-text:var(--text);--caption-sub:var(--muted);
 --glass-ambient:radial-gradient(ellipse at 95% 0,#a4e0e81c,transparent 36%),radial-gradient(ellipse at 5% 55%,#ebaccc10,transparent 35%);
 --caption-depth:inset 0 1px 0 #fff9,0 4px 16px #182c4714;
}
:root[data-theme=dark]{
 --lf-cyan:#88e1e8;--lf-rose:#f1a4cf;--lf-gold:#e6bf77;--lf-on-accent:#102432;
 --lf-surface:linear-gradient(140deg,#202a37,#161e2b);--lf-edge:#435364;
 --lf-shadow:0 8px 24px #0000001c,inset 0 1px 0 #ffffff16;
 --lf-login-bg:linear-gradient(130deg,#323b4d,#242b3d);--lf-login-edge:#75839b;--lf-login-text:#fff;--lf-login-accent:#f1a4cf;
 --lf-metal-top:#f8fcff;--lf-metal-mid:#bbd8e7;--lf-metal-cut:#7f9bb5;--lf-metal-bottom:#e5f1ff;--lf-metal-shadow:#0b0e17;
 --bg:#101722;--panel:#1c2633;--panel2:#273342;--text:#f0f5fa;--muted:#bbc8d5;--line:#bbcede30;
 --glass:#1c2633ed;--glass-inner:#263240f2;--glass-edge:#40515f;--glass-ink:var(--text);--glass-muted:var(--muted);
 --caption-glass:linear-gradient(130deg,#233140f5,#162232ed);--caption-edge:#d4e7f545;--caption-text:#f4f8fc;--caption-sub:#c4d0de;
 --glass-ambient:radial-gradient(ellipse at 98% 0,#278a9b14,transparent 35%),radial-gradient(ellipse at 0 50%,#bb648a0b,transparent 40%);
 --caption-depth:inset 0 1px 0 #ffffff26,0 4px 16px #0002;
}
:root[data-theme] body{font-weight:500}
:root[data-theme] :is(h1,h2,h3){font-weight:750;line-height:1.18}
:root[data-theme] :is(.toolbar,.feature,.roadmap-card,.forum-card,.source-item,.exchange-panel,.community-board,.profile-panel,.community-notice,.questions details,.info-banner,.event-row,.social-panel,.social-post,.social-composer,.market-panel,.draft-panel,.finance-card,.finance-kpis article,.finance-rockstar,.guidance-strip,.community-live,.channel-public,.channel-entry,.channel-workspace,.channel-chat,.channel-voice,.channel-room-sidebar,.marketplace-filters,.product-card,.marketplace-empty,.marketplace-sellers,.studio-card,.studio-summary,.studio-map-panel,.studio-method,.history-stats,.history-end,.atlas-studies,.stream-stage,.stream-open-panel,.stream-share-panel,.social-phone,.profile-intro,.community-sidebar,.guide-coming,.release-atlas,.home-world-details,.lf-post,.lf-welcome,.lf-room-panel,.lf-team-card,.lf-member-card,.lf-membership,.lf-profile-editor,.member-editor,.member-card){
 border-radius:20px;border-color:var(--lf-edge);background:var(--lf-surface);color:var(--text);box-shadow:var(--lf-shadow);backdrop-filter:none;-webkit-backdrop-filter:none;
}
:root[data-theme] :is(.finance-card,.market-panel,.studio-summary,.history-end,.source-item){border-top:2px solid color-mix(in srgb,var(--lf-cyan) 55%,var(--lf-edge))}
:root[data-theme] :is(.lf-icon,.orbit-node svg,.menu-group-icon svg){stroke-width:1.75}
:root[data-theme] :is(.orbit-node,.orbit-tile-icon,.menu-group-icon){border-radius:12px 4px 12px 4px;border:1px solid color-mix(in srgb,var(--lf-cyan) 32%,transparent);background:var(--panel);color:var(--lf-cyan);box-shadow:inset 0 1px 0 #ffffff40}
:root[data-theme] .orbit-tile-icon{background:#f1faffed;color:#165a69;border-color:#dcffff9c;backdrop-filter:blur(8px)}
:root[data-theme] .menu-group:nth-child(even) .menu-group-icon{color:var(--lf-rose);border-color:color-mix(in srgb,var(--lf-rose) 32%,transparent)}
:root[data-theme] :is(.button,.button.primary,.button.secondary,.channels-page .primary,.channels-page .secondary){border-radius:12px 5px 12px 12px;font-weight:700;box-shadow:inset 0 1px #ffffff26;min-height:46px}
:root[data-theme] :is(.button.primary,.channels-page .primary){background:linear-gradient(125deg,#c1f5f0,#9fe0e9);color:#143540;border:1px solid #b5e5e9}
:root[data-theme] :is(.button.secondary,.channels-page .secondary){border:1px solid var(--lf-edge);background:var(--panel);color:var(--text)}
:root[data-theme] :is(.filter-pills button,.market-periods button,.activity-filter,.intel-shortcuts a,.finance-period button){border-radius:9px;font-weight:700;min-height:42px}
:root[data-theme] :is(.market-periods,.finance-period){background:var(--panel2);border:1px solid var(--lf-edge);border-radius:12px;padding:4px;max-width:100%;flex-wrap:wrap}
:root[data-theme] :is(.market-periods button,.finance-period button)[aria-pressed=true]{background:var(--lf-cyan);color:var(--lf-on-accent);box-shadow:0 2px 7px #0001}
:root[data-theme] :is(input,select,textarea){border:1px solid var(--lf-edge);border-radius:11px;background:var(--panel);box-shadow:inset 0 1px 2px #00000005}
:root[data-theme] :is(.drift-photo,.orbit-tile,.cast-card,.location-card,.gallery-card,.car-card,.photo-tile,.character-card,.intel-story-card,.film-banner,.video-card,.event-spotlight){border-radius:20px;border:1px solid var(--lf-edge);box-shadow:var(--lf-shadow);background-color:var(--panel);isolation:isolate}
:root[data-theme] :is(.gallery-card,.car-card,.intel-story-card){padding:6px}
:root[data-theme] :is(.gallery-image,.car-image){border-radius:15px}
:root[data-theme] .gallery-caption{border-radius:15px;min-height:86px;padding:14px 10px;margin-top:-22px}
:root[data-theme] .gallery-caption h3{font-weight:750}
:root[data-theme] .drift-photo:not(.gallery-drift) .drift-caption{border-radius:14px;min-height:76px;padding:12px 10px}
:root[data-theme] :is(.drift-caption>strong,.orbit-tile strong){font-weight:750}
:root[data-theme] :is(.car-body,.cast-card>div,.intel-story-card>div){border-radius:15px;padding-block:18px}
:root[data-theme] .orbit-tile strong{border-radius:12px;background:#162535e6;font-weight:750;line-height:1.25}
:root[data-theme] :is(.gallery-caption .save-icon,.photo-expand,.photo-cta,.orbit-tile-open){border-radius:11px}
:root[data-theme] :is(.finance-card,.studio-card,.product-card):hover{border-color:var(--lf-edge);box-shadow:var(--lf-shadow)}
:root[data-theme] :is(.gallery-card,.location-card,.orbit-tile):hover{border-color:var(--lf-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--lf-cyan) 15%,transparent),var(--lf-shadow)}
/* Semantic chart colors match the marks and legends. */
:root[data-theme] .finance-kpis article{border-radius:16px;border-top:2px solid var(--lf-cyan)}
:root[data-theme] .finance-kpis strong{font-family:var(--display);font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}
:root[data-theme] :is(.chart-axis,.market-chart svg text){fill:var(--muted);font-family:var(--font);font-size:14px;font-weight:600}
:root[data-theme] .chart-value{fill:var(--text);font-size:14px;font-weight:700;font-family:var(--font)}
:root[data-theme] :is(.chart-grid,.stock-grid){stroke:var(--line);stroke-dasharray:3 5;stroke-width:1}
:root[data-theme] .chart-bar-revenue{fill:var(--lf-cyan)}
:root[data-theme] .chart-bar-bookings{fill:var(--lf-rose)}
:root[data-theme] .chart-loss{fill:color-mix(in srgb,var(--lf-rose) 48%,var(--panel))}
:root[data-theme] .chart-loss-recent{fill:var(--lf-rose)}
:root[data-theme] .chart-projection{fill:color-mix(in srgb,var(--lf-gold) 8%,var(--panel))}
:root[data-theme] :is(.chart-actual,.market-line){stroke:var(--lf-cyan);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
:root[data-theme] :is(.chart-scenario,.chart-guidance-range){stroke:var(--lf-gold)}
:root[data-theme] .chart-actual-point{fill:var(--lf-cyan);stroke:var(--panel)}
:root[data-theme] .chart-scenario-point{fill:var(--panel);stroke:var(--lf-gold)}
:root[data-theme] .legend-revenue{background:var(--lf-cyan)}
:root[data-theme] .legend-bookings{background:var(--lf-rose)}
:root[data-theme] .legend-guidance{background:var(--lf-gold)}
:root[data-theme] .legend-scenario{background:repeating-linear-gradient(90deg,var(--lf-gold) 0 3px,transparent 3px 5px)}
:root[data-theme] #stockFill stop{stop-color:var(--lf-cyan)}
:root[data-theme] .stock-cross{stroke:var(--lf-cyan);stroke-dasharray:3 4}
:root[data-theme] .stock-dot{fill:var(--lf-cyan);stroke:var(--panel);stroke-width:2}
:root[data-theme] .market-tooltip{background:var(--panel);border:1px solid var(--lf-edge);color:var(--text);box-shadow:var(--lf-shadow);border-radius:12px}
:root[data-theme] .forecast-badge{border-radius:7px;color:var(--lf-gold)!important;background:color-mix(in srgb,var(--lf-gold) 10%,var(--panel))}
:root[data-theme] :is(#financeBars,#financeProfit,#forecastChart){overflow-x:auto}
:root[data-theme] .finance-chart{min-width:430px}
/* One branded sign-in card preserves the existing authentication flow. */
:root[data-theme] .member-account .member-login{position:relative;max-width:540px;padding:26px clamp(20px,4vw,38px) 30px;border:1px solid var(--lf-edge);border-radius:26px 8px 26px 26px;background:var(--lf-surface);box-shadow:0 20px 65px #10243712,inset 0 1px #ffffff38}
.member-auth-art{display:flex;align-items:end;justify-content:center;gap:4px;margin:-4px 0 12px;min-width:0}
.member-auth-art .member-brand{margin-bottom:12px;width:50px;height:50px;flex:0 0 50px;border-radius:14px;border-color:var(--lf-edge);background:var(--panel);box-shadow:0 4px 14px #15344412}
.member-auth-art .member-brand img{width:40px;height:40px;object-fit:contain}
.member-auth-panel .member-heading{margin-bottom:20px}
.member-brand-name{font-family:'Lilita One','Arial Black',sans-serif;font-size:1.125rem;font-weight:400;color:var(--lf-cyan);letter-spacing:.04em}
:root[data-theme] .member-auth-panel .member-heading h1{font-size:clamp(27px,4vw,36px);margin:6px 0 8px;line-height:1.2;font-weight:800}
.member-auth-panel .member-heading p{font-size:1rem;margin:0;line-height:1.5}
.member-auth-switch{display:grid;grid-template-columns:1fr 1fr;padding:4px;gap:4px;border:1px solid var(--lf-edge);border-radius:13px;background:var(--panel2);margin-bottom:20px}
.member-auth-switch button{min-width:0;min-height:44px;border:0;border-radius:9px;padding:10px 8px;background:transparent;color:var(--muted);font:700 1rem/1.3 var(--font);cursor:pointer;overflow-wrap:anywhere}
.member-auth-switch button[aria-pressed=true]{background:var(--panel);color:var(--text);box-shadow:0 2px 6px #10243712,inset 0 -2px var(--lf-cyan)}
.member-auth-panel .member-field{margin:16px 0;gap:7px;font-weight:700}
.member-auth-panel .member-field input{min-height:50px;background:var(--panel);border:1px solid var(--lf-edge);font-weight:500}
.member-auth-panel .member-field input:focus-visible{outline:2px solid var(--lf-cyan);outline-offset:2px}
.member-auth-panel .member-remember{font-size:.875rem;line-height:1.5;margin:16px 0;align-items:start}
.member-auth-panel .member-remember input{margin-top:2px;accent-color:var(--lf-cyan)}
:root[data-theme] .member-account #firebaseForm>.button.primary{background:var(--lf-login-bg);color:var(--lf-login-text);border:1px solid var(--lf-login-edge);border-radius:12px;box-shadow:inset 0 1px #ffffff38,0 5px 12px #10243714;font-weight:700;min-height:52px}
.member-auth-panel .member-auth-actions{justify-content:center;margin:4px 0 12px}
.member-auth-panel .member-auth-actions:empty{display:none}
.member-auth-panel .member-auth-actions button{color:var(--lf-cyan);font-weight:700;font-size:.875rem;min-height:40px}
.member-auth-panel [data-auth-status]:empty{display:none}
.member-auth-panel [data-auth-providers]:not(:empty){border-top:1px solid var(--line);padding-top:18px;margin-top:14px;gap:10px}
/* Provider marks retain their brand colors and equal prominence in both themes. */
:root[data-theme] .member-account .member-social-button[data-firebase-provider]{display:grid;grid-template-columns:20px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:52px;width:100%;padding:12px 18px;border:1px solid #747775;border-radius:12px;background:#fff;color:#1f1f1f;font:600 1rem/1.4 var(--font);letter-spacing:normal;text-transform:none;box-shadow:none;text-shadow:none}
.member-social-button img{width:20px;height:20px;object-fit:contain;display:block}
.member-social-button span{min-width:0;overflow-wrap:anywhere}
:root[data-theme] .member-account .member-social-apple[data-firebase-provider]{background:#000;color:#fff;border-color:#747775}
:root[data-theme=dark] .member-account .member-social-google[data-firebase-provider]{background:#131314;color:#e3e3e3;border-color:#8e918f}
:root[data-theme] .member-account .member-social-button[data-firebase-provider]:hover:not(:disabled){box-shadow:0 0 0 2px var(--lf-cyan);transform:none}
.member-social-button:focus-visible{outline:3px solid var(--lf-cyan);outline-offset:3px}
.member-social-button:disabled{opacity:.65;cursor:wait}
.member-auth-panel [data-provider-status]{font-size:.875rem;margin:12px 0 0}
.member-auth-panel [data-provider-status]:empty{display:none}
.member-auth-panel .member-privacy{margin-top:16px;padding-top:16px;padding-bottom:0}
.member-auth-panel .member-privacy summary{font-weight:700;min-height:32px;line-height:1.5}
@media(max-width:600px){:root[data-theme] :is(.toolbar,.finance-card,.stream-open-panel,.stream-share-panel){border-radius:16px}.member-auth-panel .member-auth-switch button{font-size:.9375rem}:root[data-theme] .member-account .member-login{padding-top:20px}.home-watch .home-file-icon{border-radius:12px 4px 12px 4px}}
@media(forced-colors:active){.lf-future-wordmark>span{background:none;-webkit-text-fill-color:CanvasText;filter:none}}

/* The account form owns the heading while a visitor is signed out. */
:root[data-theme] .lf-profile-page:has(.member-auth-panel){max-width:900px;padding-top:clamp(18px,3vw,42px)}
.lf-profile-page:has(.member-auth-panel)>.lf-forum-heading{display:none}
:root[data-theme] .lf-profile-page:has(.member-auth-panel) #lfPrivateAccount{padding:0;border:0;background:none;box-shadow:none;margin:0}
.lf-profile-page:has(.member-auth-panel) #lfPrivateAccount>summary,.lf-profile-page:has(.member-auth-panel) #lfPrivateAccount>.lf-back{display:none}
.lf-profile-page:has(.member-auth-panel) .member-account{margin-bottom:24px}
