/*
 * UCIAL — Official Color System 2026
 * Definitive palette layer. Loaded after legacy/product styles so the whole
 * product shares one semantic color language without renaming technical APIs.
 */
:root{
  /* Official immutable palette */
  --ucial-color-brand:#007C78;
  --ucial-color-brand-bright:#00A89F;
  --ucial-color-accent-human:#FF6257;
  --ucial-color-midnight:#101417;
  --ucial-color-ink:#171B1D;
  --ucial-color-slate:#667176;
  --ucial-color-cloud:#F5F7F7;
  --ucial-color-white:#FFFFFF;
  --ucial-color-mist:#DDE3E3;
  --ucial-color-success:#16855B;
  --ucial-color-warning:#B26A00;
  --ucial-color-danger:#C9363E;

  /* RGB channels are only used to create transparent layers from the official palette. */
  --ucial-rgb-brand:0 124 120;
  --ucial-rgb-brand-bright:0 168 159;
  --ucial-rgb-coral:255 98 87;
  --ucial-rgb-midnight:16 20 23;
  --ucial-rgb-ink:23 27 29;
  --ucial-rgb-slate:102 113 118;
  --ucial-rgb-mist:221 227 227;
  --ucial-rgb-success:22 133 91;
  --ucial-rgb-warning:178 106 0;
  --ucial-rgb-danger:201 54 62;

  /* Semantic light theme */
  --ucial-bg:var(--ucial-color-cloud);
  --ucial-surface:var(--ucial-color-white);
  --ucial-surface-subtle:var(--ucial-color-cloud);
  --ucial-text:var(--ucial-color-ink);
  --ucial-text-secondary:var(--ucial-color-slate);
  --ucial-border:var(--ucial-color-mist);
  --ucial-primary:var(--ucial-color-brand);
  --ucial-primary-hover:var(--ucial-color-brand-bright);
  --ucial-human:var(--ucial-color-accent-human);
  --ucial-on-primary:var(--ucial-color-white);
  --ucial-on-bright:var(--ucial-color-midnight);
  --ucial-on-human:var(--ucial-color-midnight);
  --ucial-focus:var(--ucial-color-brand);
  --ucial-focus-glow:rgb(var(--ucial-rgb-brand-bright)/.24);
  --ucial-shadow-sm:0 4px 16px rgb(var(--ucial-rgb-midnight)/.06);
  --ucial-shadow-md:0 12px 34px rgb(var(--ucial-rgb-midnight)/.08);
  --ucial-shadow-lg:0 24px 70px rgb(var(--ucial-rgb-midnight)/.10);

  /* Compatibility bridge: old names now resolve to the definitive palette. */
  --teal:var(--ucial-primary)!important;
  --teal2:var(--ucial-primary-hover)!important;
  --bg:var(--ucial-bg)!important;
  --text:var(--ucial-text)!important;
  --muted:var(--ucial-text-secondary)!important;
  --card:var(--ucial-surface)!important;
  --surface:var(--ucial-surface)!important;
  --surface-2:var(--ucial-surface-subtle)!important;
  --border:var(--ucial-border)!important;
  --accent:var(--ucial-primary)!important;
  --danger:var(--ucial-color-danger)!important;
  --shadow:var(--ucial-shadow-md)!important;
  --line:var(--ucial-border)!important;
  --panel:var(--ucial-surface)!important;
  --primary:var(--ucial-primary)!important;
  --surface-alt:var(--ucial-surface-subtle)!important;

  --v16-bg:var(--ucial-bg)!important;
  --v16-bg-soft:var(--ucial-bg)!important;
  --v16-panel:var(--ucial-surface)!important;
  --v16-panel-solid:var(--ucial-surface)!important;
  --v16-text:var(--ucial-text)!important;
  --v16-muted:var(--ucial-text-secondary)!important;
  --v16-line:rgb(var(--ucial-rgb-mist)/.94)!important;
  --v16-primary:var(--ucial-primary)!important;
  --v16-primary-2:var(--ucial-primary-hover)!important;
  --v16-accent:var(--ucial-human)!important;
  --v16-success:var(--ucial-color-success)!important;
  --v16-glow:var(--ucial-shadow-lg)!important;

  --hf-blue:var(--ucial-primary)!important;
  --hf-cyan:var(--ucial-primary-hover)!important;
  --hf-ice:var(--ucial-color-mist)!important;
  --hf-deep:var(--ucial-bg)!important;
  --hf-surface:var(--ucial-surface)!important;
  --hf-text:var(--ucial-text)!important;
  --hf-muted:var(--ucial-text-secondary)!important;
  --hf-border:rgb(var(--ucial-rgb-mist)/.94)!important;

  --h-ivory:var(--ucial-bg)!important;
  --h-pearl:var(--ucial-surface)!important;
  --h-champagne:var(--ucial-color-mist)!important;
  --h-sage:rgb(var(--ucial-rgb-brand)/.10)!important;
  --h-mineral:var(--ucial-text-secondary)!important;
  --h-glacier:rgb(var(--ucial-rgb-brand-bright)/.13)!important;
  --h-crystal:var(--ucial-primary-hover)!important;
  --h-gold:var(--ucial-human)!important;
  --h-ink:var(--ucial-text)!important;
  --h-muted:var(--ucial-text-secondary)!important;
  --h-line:rgb(var(--ucial-rgb-mist)/.94)!important;
  --h-line-strong:rgb(var(--ucial-rgb-slate)/.34)!important;
  --h-shadow:var(--ucial-shadow-lg)!important;
  --h-shadow-soft:var(--ucial-shadow-sm)!important;
  --h-focus:0 0 0 3px var(--ucial-focus),0 0 0 6px var(--ucial-focus-glow)!important;

  --hucial-blue:var(--ucial-primary)!important;
  --hucial-cyan:var(--ucial-primary-hover)!important;
  --hucial-mint:var(--ucial-primary-hover)!important;
  --hucial-ink:var(--ucial-text)!important;
  --hucial-night:var(--ucial-color-midnight)!important;
  --hucial-surface:var(--ucial-surface)!important;
  --hucial-shadow:var(--ucial-shadow-lg)!important;
  --hucial-focus-ring:3px solid var(--ucial-focus)!important;

  /* Remaining legacy visual color families, normalized to the official palette. */
  --hucial-update-ink:var(--ucial-text)!important;
  --hucial-update-muted:var(--ucial-text-secondary)!important;
  --hucial-update-accent:var(--ucial-primary)!important;
  --hucial-update-accent-2:var(--ucial-primary-hover)!important;
  --hucial-update-line:rgb(var(--ucial-rgb-brand)/.30)!important;
  --ph-accent:var(--ucial-primary)!important;
  --ph-ink:var(--ucial-text)!important;
  --ph-card:var(--ucial-surface)!important;
  --signature-glow:rgb(var(--ucial-rgb-brand-bright)/.20)!important;
  --signature-gold:rgb(var(--ucial-rgb-coral)/.18)!important;
  --signature-pearl:rgb(255 255 255/.88)!important;
  --card-shine:rgb(255 255 255/.50)!important;
  --emotion-morning:var(--ucial-bg)!important;
  --emotion-afternoon:var(--ucial-bg)!important;
  --emotion-evening:var(--ucial-bg)!important;
  --emotion-glow:rgb(var(--ucial-rgb-brand-bright)/.12)!important;
  --emotion-gold:rgb(var(--ucial-rgb-coral)/.07)!important;
  --emotion-sage:rgb(var(--ucial-rgb-brand)/.08)!important;
  --emotion-surface:linear-gradient(145deg,rgb(255 255 255/.96),rgb(245 247 247/.90))!important;
  --emotion-canvas:radial-gradient(circle at 14% 4%,rgb(var(--ucial-rgb-brand-bright)/.075),transparent 34%),radial-gradient(circle at 88% 8%,rgb(var(--ucial-rgb-coral)/.035),transparent 29%)!important;
  --hucial-post-source-accent:var(--ucial-primary)!important;

  --lux-bg:var(--ucial-bg)!important;
  --lux-bg-soft:var(--ucial-bg)!important;
  --lux-surface:var(--ucial-surface)!important;
  --lux-surface-solid:var(--ucial-surface)!important;
  --lux-ink:var(--ucial-text)!important;
  --lux-muted:var(--ucial-text-secondary)!important;
  --lux-line:rgb(var(--ucial-rgb-mist)/.94)!important;
  --lux-gold:var(--ucial-primary)!important;
  --lux-gold-deep:var(--ucial-primary)!important;
  --lux-rose:rgb(var(--ucial-rgb-coral)/.10)!important;
  --lux-sage:rgb(var(--ucial-rgb-brand)/.09)!important;
  --lux-pearl:var(--ucial-bg)!important;
  --lux-shadow:var(--ucial-shadow-lg)!important;

  --read-ink:var(--ucial-text)!important;
  --read-text:var(--ucial-text)!important;
  --read-muted:var(--ucial-text-secondary)!important;
  --read-teal:var(--ucial-primary)!important;
  --read-teal-dark:var(--ucial-primary)!important;
  --read-gold:var(--ucial-human)!important;
  --read-line:var(--ucial-border)!important;
  --read-line-strong:rgb(var(--ucial-rgb-slate)/.44)!important;
  --read-surface:var(--ucial-surface)!important;
  --read-surface-soft:var(--ucial-bg)!important;
  --read-focus:var(--ucial-focus)!important;

  --flow-ink:var(--ucial-text)!important;
  --flow-muted:var(--ucial-text-secondary)!important;
  --flow-accent:var(--ucial-primary)!important;
  --flow-accent-soft:rgb(var(--ucial-rgb-brand)/.10)!important;
  --flow-line:var(--ucial-border)!important;
  --flow-glass:rgb(255 255 255/.92)!important;
  --flow-shadow:var(--ucial-shadow-md)!important;

  --sn-ink:var(--ucial-text)!important;
  --sn-muted:var(--ucial-text-secondary)!important;
  --sn-line:var(--ucial-border)!important;
  --sn-card:var(--ucial-surface)!important;
  --sn-accent:var(--ucial-primary-hover)!important;
  --sn-accent-dark:var(--ucial-primary)!important;
  --sn-soft:rgb(var(--ucial-rgb-brand)/.08)!important;
  --sn-shadow:var(--ucial-shadow-md)!important;

  --pages-ink:var(--ucial-text)!important;
  --pages-muted:var(--ucial-text-secondary)!important;
  --pages-line:var(--ucial-border)!important;
  --pages-accent:var(--ucial-primary)!important;
  --pages-soft:rgb(var(--ucial-rgb-brand)/.08)!important;
  --pages-ivory:var(--ucial-bg)!important;
  --pages-card:var(--ucial-surface)!important;

  --hucial-nav-accent:var(--ucial-primary)!important;
  --hucial-nav-accent-strong:var(--ucial-primary)!important;
  --hucial-nav-accent-soft:rgb(var(--ucial-rgb-brand)/.10)!important;
  --hucial-nav-ink:var(--ucial-text)!important;
  --hucial-nav-muted:var(--ucial-text-secondary)!important;
  --hucial-nav-line:var(--ucial-border)!important;

  --hv-bg:var(--ucial-bg)!important;
  --hv-surface:var(--ucial-surface)!important;
  --hv-surface-soft:var(--ucial-bg)!important;
  --hv-surface-accent:rgb(var(--ucial-rgb-brand)/.08)!important;
  --hv-surface-accent-2:rgb(var(--ucial-rgb-brand-bright)/.10)!important;
  --hv-ink:var(--ucial-text)!important;
  --hv-muted:var(--ucial-text-secondary)!important;
  --hv-accent:var(--ucial-primary-hover)!important;
  --hv-accent-strong:var(--ucial-primary)!important;
  --hv-border:var(--ucial-border)!important;
  --hv-border-soft:rgb(var(--ucial-rgb-mist)/.72)!important;
  --hv-gold:var(--ucial-human)!important;
  --hv-gold-border:rgb(var(--ucial-rgb-coral)/.30)!important;
  --hv-gold-bg:rgb(var(--ucial-rgb-coral)/.08)!important;
  --hv-danger:var(--ucial-color-danger)!important;
  --hv-danger-bg:rgb(var(--ucial-rgb-danger)/.08)!important;
  --hv-focus:0 0 0 3px var(--ucial-focus),0 0 0 6px var(--ucial-focus-glow)!important;

  --res-ink:var(--ucial-text)!important;
  --res-ink-2:var(--ucial-text-secondary)!important;
  --res-brand:var(--ucial-primary)!important;
  --res-brand-soft:rgb(var(--ucial-rgb-brand)/.10)!important;
  --res-paper:var(--ucial-surface)!important;
  --res-canvas:var(--ucial-bg)!important;
  --res-line:var(--ucial-border)!important;
  --res-gold:var(--ucial-human)!important;
  --res-gold-soft:rgb(var(--ucial-rgb-coral)/.10)!important;
  --res-danger:var(--ucial-color-danger)!important;

  --ac-ink:var(--ucial-text)!important;
  --ac-muted:var(--ucial-text-secondary)!important;
  --ac-line:var(--ucial-border)!important;
  --ac-teal:var(--ucial-primary)!important;
  --ac-teal-2:rgb(var(--ucial-rgb-brand-bright)/.14)!important;
  --ac-gold:var(--ucial-human)!important;
  --ac-danger:var(--ucial-color-danger)!important;
  --ac-panel:var(--ucial-surface)!important;

  --guest-v208-brand:var(--ucial-primary)!important;
  --guest-v208-brand-dark:var(--ucial-primary)!important;
  --guest-v208-ink:var(--ucial-text)!important;
  --guest-v208-muted:var(--ucial-text-secondary)!important;
  --guest-v208-line:var(--ucial-border)!important;
  --guest-v208-soft:rgb(var(--ucial-rgb-brand)/.08)!important;
  --guest-v208-warm:rgb(var(--ucial-rgb-coral)/.08)!important;

  --chat-ink:var(--ucial-text)!important;
  --chat-muted:var(--ucial-text-secondary)!important;
  --chat-line:var(--ucial-border)!important;
  --chat-soft:rgb(var(--ucial-rgb-brand)/.07)!important;
  --chat-aqua:var(--ucial-primary-hover)!important;
  --chat-aqua-deep:var(--ucial-primary)!important;
  --chat-gold:var(--ucial-human)!important;
  --chat-v168-accent:var(--ucial-primary)!important;
  --chat-v168-ink:var(--ucial-text)!important;
  --chat-v168-line:var(--ucial-border)!important;
  --chat173-accent:var(--ucial-primary-hover)!important;
  --chat173-accent-strong:var(--ucial-primary)!important;
  --chat173-ink:var(--ucial-text)!important;
  --chat173-muted:var(--ucial-text-secondary)!important;
  --chat173-line:var(--ucial-border)!important;
  --chat173-soft:rgb(var(--ucial-rgb-brand)/.08)!important;
  --chat177-accent:var(--ucial-primary-hover)!important;
  --chat177-accent-strong:var(--ucial-primary)!important;
  --chat177-ink:var(--ucial-text)!important;
  --chat177-muted:var(--ucial-text-secondary)!important;
  --chat177-line:var(--ucial-border)!important;

  --real-ink:var(--ucial-text)!important;
  --real-cert-navy:var(--ucial-color-midnight)!important;
  --real-cert-cyan:var(--ucial-primary-hover)!important;
  --real-cert-line:rgb(var(--ucial-rgb-brand)/.28)!important;

  --clips-ink:var(--ucial-color-white)!important;
  --clips-teal:var(--ucial-primary-hover)!important;
  --clips-teal-soft:var(--ucial-color-mist)!important;
  --clips-gold:var(--ucial-human)!important;
  --clips-glass:rgb(var(--ucial-rgb-midnight)/.80)!important;
  --clips-line:rgb(255 255 255/.18)!important;

  --live-ink:var(--ucial-text)!important;
  --live-muted:var(--ucial-text-secondary)!important;
  --live-line:var(--ucial-border)!important;
  --live-line-strong:rgb(var(--ucial-rgb-slate)/.38)!important;
  --live-crystal:var(--ucial-primary-hover)!important;
  --live-glacier:rgb(var(--ucial-rgb-brand-bright)/.12)!important;
  --live-sage:rgb(var(--ucial-rgb-brand)/.08)!important;
  --live-champagne:var(--ucial-color-mist)!important;
  --live-gold:var(--ucial-human)!important;
  --live-shadow:var(--ucial-shadow-lg)!important;
  --live-shadow-soft:var(--ucial-shadow-sm)!important;

  --hm-ink:var(--ucial-text)!important;
  --hm-ink-strong:var(--ucial-color-midnight)!important;
  --hm-muted:var(--ucial-text-secondary)!important;
  --hm-blue:var(--ucial-primary)!important;
  --hm-cyan:var(--ucial-primary-hover)!important;
  --hm-teal:var(--ucial-primary)!important;
  --hm-mint:var(--ucial-primary-hover)!important;
  --hm-surface:var(--ucial-surface)!important;
  --hm-surface-soft:var(--ucial-bg)!important;
  --hm-gold:var(--ucial-human)!important;
  --hm-danger:var(--ucial-color-danger)!important;
  --hm-line:var(--ucial-border)!important;
}

/* Explicit dark mode and system dark mode share Midnight as the single dark canvas. */
html[data-theme="dark"],
html:not([data-theme="light"]):where([data-theme="dark"]){
  color-scheme:dark;
  --ucial-bg:var(--ucial-color-midnight);
  --ucial-surface:var(--ucial-color-ink);
  --ucial-surface-subtle:rgb(255 255 255/.045);
  --ucial-text:var(--ucial-color-white);
  --ucial-text-secondary:var(--ucial-color-mist);
  --ucial-border:rgb(var(--ucial-rgb-mist)/.22);
  --ucial-primary:var(--ucial-color-brand-bright);
  --ucial-primary-hover:var(--ucial-color-brand);
  --ucial-on-primary:var(--ucial-color-midnight);
  --ucial-on-bright:var(--ucial-color-midnight);
  --ucial-focus:var(--ucial-color-brand-bright);
  --flow-glass:rgb(var(--ucial-rgb-midnight)/.94)!important;
  --clips-glass:rgb(var(--ucial-rgb-midnight)/.88)!important;
}
@media (prefers-color-scheme:dark){
  html:not([data-theme="light"]){
    color-scheme:dark;
    --ucial-bg:var(--ucial-color-midnight);
    --ucial-surface:var(--ucial-color-ink);
    --ucial-surface-subtle:rgb(255 255 255/.045);
    --ucial-text:var(--ucial-color-white);
    --ucial-text-secondary:var(--ucial-color-mist);
    --ucial-border:rgb(var(--ucial-rgb-mist)/.22);
    --ucial-primary:var(--ucial-color-brand-bright);
    --ucial-primary-hover:var(--ucial-color-brand);
    --ucial-on-primary:var(--ucial-color-midnight);
    --ucial-on-bright:var(--ucial-color-midnight);
    --ucial-focus:var(--ucial-color-brand-bright);
    --flow-glass:rgb(var(--ucial-rgb-midnight)/.94)!important;
  }
}

/* Component-local custom properties that legacy CSS defined below :root. */
.real-identity-page{--real-ink:var(--ucial-text)!important}
.real-certified-ui{--real-cert-navy:var(--ucial-color-midnight)!important;--real-cert-cyan:var(--ucial-primary-hover)!important;--real-cert-line:rgb(var(--ucial-rgb-brand)/.28)!important}
.admin-control{--ac-ink:var(--ucial-text)!important;--ac-muted:var(--ucial-text-secondary)!important;--ac-line:var(--ucial-border)!important;--ac-teal:var(--ucial-primary)!important;--ac-teal-2:rgb(var(--ucial-rgb-brand-bright)/.14)!important;--ac-gold:var(--ucial-human)!important;--ac-danger:var(--ucial-color-danger)!important;--ac-panel:var(--ucial-surface)!important}
body[data-route="message/index"],body[data-route="message/view"]{--chat-v168-accent:var(--ucial-primary)!important;--chat-v168-ink:var(--ucial-text)!important}
.page-lab-v209{--lab-accent:var(--ucial-primary)!important}

/* Foundation */
html{background:var(--ucial-bg)!important;color-scheme:light}
body{background:var(--ucial-bg)!important;color:var(--ucial-text)!important}
body,button,input,textarea,select{accent-color:var(--ucial-primary)}
::selection{background:rgb(var(--ucial-rgb-brand-bright)/.24);color:var(--ucial-text)}
a{color:var(--ucial-primary)}
a:hover{color:var(--ucial-primary-hover)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--ucial-focus)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 3px var(--ucial-focus-glow)!important;
}

/* Main shell: Cloud + White + Mist, with restrained shadows. */
.site-header,.app-header,.header-shell,.pages-site-header,.games-site-header{
  background:rgb(255 255 255/.94)!important;
  color:var(--ucial-text)!important;
  border-color:var(--ucial-border)!important;
  box-shadow:0 1px 0 var(--ucial-border),0 8px 26px rgb(var(--ucial-rgb-midnight)/.035)!important;
}
html[data-theme="dark"] :is(.site-header,.app-header,.header-shell,.pages-site-header,.games-site-header){background:rgb(var(--ucial-rgb-midnight)/.92)!important}
@media(prefers-color-scheme:dark){html:not([data-theme="light"]) :is(.site-header,.app-header,.header-shell,.pages-site-header,.games-site-header){background:rgb(var(--ucial-rgb-midnight)/.92)!important}}

.site-footer,.app-footer,.pages-site-footer,.games-site-footer,.footer-shell{
  background:var(--ucial-surface)!important;
  color:var(--ucial-text)!important;
  border-color:var(--ucial-border)!important;
}

/* Navigation: passive neutral, active Ucial Teal, counters Human Coral. */
:is(.site-header,.app-header,.pages-site-header,.games-site-header,.site-footer,.pages-site-footer,.games-site-footer) nav a{color:var(--ucial-text-secondary)!important}
:is(.site-header,.app-header,.pages-site-header,.games-site-header) nav a:hover,
:is(.site-header,.app-header,.pages-site-header,.games-site-header) nav a[aria-current="page"],
:is(.site-header,.app-header,.pages-site-header,.games-site-header) nav a.is-active{color:var(--ucial-primary)!important}
:is(.hf-shortcut-dock,.mobile-nav,.bottom-nav,.app-dock,.hucial-nav,.flow-bar) a[aria-current="page"],
:is(.hf-shortcut-dock,.mobile-nav,.bottom-nav,.app-dock,.hucial-nav,.flow-bar) .is-active{color:var(--ucial-primary)!important;border-color:rgb(var(--ucial-rgb-brand)/.28)!important}
:is(.notification-badge,.badge-count,.nav-badge,.unread-count,.counter-badge,.clips-badge,.market-notification-count){background:var(--ucial-human)!important;color:var(--ucial-on-human)!important;border-color:transparent!important}

/* Cards / panels / modals: neutral first, color only for meaning. */
:is(.card,.panel,.social-post,.composer-card,.home-section,.home-body,.privacy-panel,.trust-card,.social-sidebar,.modal-content,.dropdown-menu,.nav-category,.hucial-home-hub,.public-luxury-hero,.page-head,.page-card,.notification-card,.profile-card,.friend-card){
  background:var(--ucial-surface)!important;
  color:var(--ucial-text)!important;
  border-color:var(--ucial-border)!important;
  box-shadow:var(--ucial-shadow-sm)!important;
}
:is(.card,.panel,.social-post,.composer-card,.home-section,.home-body,.privacy-panel,.trust-card,.social-sidebar,.modal-content,.dropdown-menu,.nav-category,.hucial-home-hub,.public-luxury-hero,.page-head,.page-card,.notification-card,.profile-card,.friend-card) :is(p,small,.muted,.meta,.secondary-text){color:var(--ucial-text-secondary)}

/* Forms */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,select{
  background:var(--ucial-surface)!important;
  color:var(--ucial-text)!important;
  border-color:var(--ucial-border)!important;
}
input::placeholder,textarea::placeholder{color:var(--ucial-text-secondary)!important;opacity:.88}
input:disabled,textarea:disabled,select:disabled,button:disabled{opacity:.56}

/* Buttons. Bright Teal uses Midnight text because white on #00A89F is below WCAG AA. */
:is(.button,.primary-button,.btn-primary,.cta-primary,.market-btn-primary,.games-primary,.clips-primary,.admin-primary-link):not(.danger-button):not(.button-danger){
  background:var(--ucial-color-brand)!important;
  color:var(--ucial-color-white)!important;
  border-color:var(--ucial-color-brand)!important;
}
:is(.button,.primary-button,.btn-primary,.cta-primary,.market-btn-primary,.games-primary,.clips-primary,.admin-primary-link):not(.danger-button):not(.button-danger):hover{
  background:var(--ucial-color-brand-bright)!important;
  color:var(--ucial-color-midnight)!important;
  border-color:var(--ucial-color-brand-bright)!important;
}
:is(.secondary-button,.button.secondary,.btn-secondary,.market-btn:not(.market-btn-primary):not(.market-btn-danger),.games-secondary){
  background:var(--ucial-surface)!important;
  color:var(--ucial-primary)!important;
  border-color:var(--ucial-border)!important;
}
:is(.danger-button,.button-danger,.market-btn-danger,.real-text-danger){background:var(--ucial-color-danger)!important;color:var(--ucial-color-white)!important;border-color:var(--ucial-color-danger)!important}

/* System statuses keep functional meaning separate from brand. */
:is(.success,.alert-success,.status-success,.page-success,.status-ok){color:var(--ucial-color-success)!important;border-color:rgb(var(--ucial-rgb-success)/.30)!important;background:rgb(var(--ucial-rgb-success)/.09)!important}
:is(.warning,.alert-warning,.status-warning,.status-pending){color:#704200!important;border-color:rgb(var(--ucial-rgb-warning)/.32)!important;background:rgb(var(--ucial-rgb-warning)/.10)!important}
:is(.error,.alert-error,.status-error,.page-error,.status-failed){color:var(--ucial-color-danger)!important;border-color:rgb(var(--ucial-rgb-danger)/.30)!important;background:rgb(var(--ucial-rgb-danger)/.08)!important}

/* Home / registration / login */
body[data-route="home/index"],body[data-route="auth/login"],body[data-route="auth/register"]{background:var(--ucial-bg)!important}
:is(.public-home,.guest-home,.guest-v208,.auth-shell,.auth-card,.register-card,.login-card,.public-luxury-hero,.guest-v208-hero,.guest-v208-panel){color:var(--ucial-text)!important}
:is(.guest-v208-card,.guest-v208-panel,.auth-card,.register-card,.login-card){background:var(--ucial-surface)!important;border-color:var(--ucial-border)!important}
:is(.guest-v208-kicker,.eyebrow,.kicker){color:var(--ucial-primary)!important}

/* Fil d’actualité */
body[data-route^="social/"]{background:var(--ucial-bg)!important}
.social-post,.composer-card,.feed-card,.feed-shell article{background:var(--ucial-surface)!important;border-color:var(--ucial-border)!important;color:var(--ucial-text)!important}
.social-post :is(.post-meta,.post-time,.muted,small){color:var(--ucial-text-secondary)!important}
.social-post :is(.is-liked,.is-active,[aria-pressed="true"]):not(.danger-button){color:var(--ucial-primary)!important;border-color:rgb(var(--ucial-rgb-brand)/.25)!important}
.social-post :is(.reaction-count,.notification-dot,.new-count){background:var(--ucial-human)!important;color:var(--ucial-on-human)!important}
:is([data-feed-elevator],.feed-elevator,.feed-rail){background:rgb(255 255 255/.94)!important;border-color:var(--ucial-border)!important;color:var(--ucial-text)!important}

/* Messaging */
body[data-route="message/index"],body[data-route="message/view"]{background:var(--ucial-bg)!important;color:var(--ucial-text)!important}
:is(.chat-list,.conversation-list,.message-sidebar,.chat-panel,.message-panel,.thread-panel,.message-composer-card,.thread-header){background:var(--ucial-surface)!important;border-color:var(--ucial-border)!important;color:var(--ucial-text)!important}
:is(.message-bubble.is-me,.message-row.is-me .message-bubble,.bubble-me,.chat-bubble-me){background:var(--ucial-color-brand)!important;color:var(--ucial-color-white)!important;border-color:var(--ucial-color-brand)!important}
:is(.message-bubble:not(.is-me),.bubble-other,.chat-bubble-other){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important}
:is(.chat-unread,.message-unread,.conversation-unread) .unread-count{background:var(--ucial-human)!important;color:var(--ucial-on-human)!important}

/* Market */
.market-wrap{color:var(--ucial-text)!important}
:is(.market-hero,.market-dashboard-head,.market-form-head,.market-card,.market-detail,.market-form-section,.market-review-box,.market-owner-box,.market-report,.market-search){background:var(--ucial-surface)!important;border-color:var(--ucial-border)!important;box-shadow:var(--ucial-shadow-sm)!important}
.market-search{background:var(--ucial-bg)!important}
.market-kicker,.market-link-btn,.market-price,.market-price-large,.market-breadcrumb a{color:var(--ucial-primary)!important}
.market-step{background:var(--ucial-primary)!important;color:var(--ucial-on-primary)!important}
.market-categories a[aria-current="page"],.market-categories a:hover{border-color:rgb(var(--ucial-rgb-brand)/.42)!important;background:rgb(var(--ucial-rgb-brand)/.07)!important}
.market-status-published{background:rgb(var(--ucial-rgb-success)/.10)!important;color:var(--ucial-color-success)!important}
.market-status-reserved{background:rgb(var(--ucial-rgb-warning)/.11)!important;color:#704200!important}
.market-status-moderation{background:rgb(var(--ucial-rgb-coral)/.10)!important;color:#8C2D27!important}
.market-trust-strip>div{border-color:var(--ucial-primary)!important}

/* Clip: immersive Midnight, bright interactive teal, restrained Coral. */
body[data-route^="clips/"],.clips-app,.clips-shell,.clips-feed,.clip-card,.clip-stage{background:var(--ucial-color-midnight)!important;color:var(--ucial-color-white)!important}
:is(.clips-topbar,.clips-bottom-bar,.clips-menu,.clip-comments,.clips-panel){background:rgb(var(--ucial-rgb-midnight)/.90)!important;color:var(--ucial-color-white)!important;border-color:rgb(255 255 255/.16)!important}
:is(.clips-tabs a[aria-current="page"],.clips-tabs a.is-active,.clip-action.is-active,.clip-actions [aria-pressed="true"]){color:var(--ucial-color-brand-bright)!important}
:is(.clip-source-badge,.clip-new-badge,.clips-alert-dot){background:var(--ucial-human)!important;color:var(--ucial-on-human)!important}
.clips-page-header,.clips-admin-grid article,.clips-studio-list article{background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important}

/* Live: neutral by default; video stages are Midnight. */
:is(.live-video-stage,.live-player,.live-stage,.live-room-stage){background:var(--ucial-color-midnight)!important;color:var(--ucial-color-white)!important}
:is(.live-card,.live-panel,.live-room-card,.live-salon-card){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important}
:is(.live-indicator,.live-badge,.live-count-badge){background:var(--ucial-human)!important;color:var(--ucial-on-human)!important}
:is(.live-primary,.live-action.is-active,[data-live-action][aria-pressed="true"]){color:var(--ucial-primary)!important;border-color:rgb(var(--ucial-rgb-brand)/.30)!important}

/* Ucial Réel */
:is(.real-shell,.real-card,.real-panel,.real-identity-hero,.real-identity-link-card,.real-identity-accounts,.real-external-row){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important}
.real-profile-seal-card{background:var(--ucial-color-midnight)!important;color:var(--ucial-color-white)!important;border:1px solid rgb(var(--ucial-rgb-brand-bright)/.28)!important}
.real-profile-seal-card span{color:var(--ucial-color-brand-bright)!important}
.hucial-real-external-profile-item{background:rgb(var(--ucial-rgb-brand)/.06)!important;border-color:rgb(var(--ucial-rgb-brand)/.18)!important}
.hucial-real-external-check{background:var(--ucial-primary)!important;color:var(--ucial-on-primary)!important}
.real-identity-compact-note,.real-identity-protected-note{background:rgb(var(--ucial-rgb-warning)/.08)!important;border-color:rgb(var(--ucial-rgb-warning)/.24)!important}

/* Profiles / friends / notifications */
:is(.profile-shell,.profile-header,.profile-section,.friend-discovery-card,.friend-result,.notification-item,.notification-row){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important}
:is(.notification-item.is-unread,.notification-row.is-unread,[data-notification-unread="1"]){background:rgb(var(--ucial-rgb-brand)/.065)!important;border-color:rgb(var(--ucial-rgb-brand)/.20)!important}
:is(.friend-add,.friend-accept,.profile-primary-action){background:var(--ucial-primary)!important;color:var(--ucial-on-primary)!important;border-color:var(--ucial-primary)!important}

/* Ucial Pages */
.hucial-pages,.pages-shell{color:var(--ucial-text)!important}
:is(.pages-hero,.pages-section,.page-create-v209-form,.page-seo-live-panel,.page-lab-public-card,.page-lab-integrity,.page-lab-convert,.pages-seo-stat){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important;box-shadow:var(--ucial-shadow-sm)!important}
.page-create-v209-step>span,.page-seo-score-orb,.page-lab-public-card .page-avatar-large,.page-seo-view-tabs a[aria-current="page"]{background:var(--ucial-primary)!important;color:var(--ucial-on-primary)!important}
.page-lab-hero,.page-creator-link.page-lab-mode-note{background:rgb(var(--ucial-rgb-brand)/.07)!important;border-color:rgb(var(--ucial-rgb-brand)/.20)!important}
.page-seo-tips article{background:rgb(var(--ucial-rgb-brand)/.055)!important;border-color:rgb(var(--ucial-rgb-brand)/.13)!important}
.page-seo-checks article[data-status="ok"] .seo-dot{background:var(--ucial-color-success)!important}
.page-seo-checks article[data-status="pending"] .seo-dot{background:var(--ucial-text-secondary)!important}
.page-seo-checks .seo-dot{background:var(--ucial-color-warning)!important}

/* Games remains playful through shapes/content, not an unrelated palette. */
.hucial-games-standalone,.games-shell{background:var(--ucial-bg)!important;color:var(--ucial-text)!important}
:is(.games-hero,.match-hero,.games-platform-note,.games-recent,.match-game-card,.match-social-panel>section,.challenge-banner,.games-catalog,.match-level-path){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important;box-shadow:var(--ucial-shadow-sm)!important}
.games-kicker,.games-back{color:var(--ucial-primary)!important}
.game-chip,.level-node.is-current,.match-profile .match-rank,.challenge-score,.match-feed-share,.match-rematch,.circle-score-list .is-me{background:rgb(var(--ucial-rgb-brand)/.08)!important;color:var(--ucial-text)!important;border-color:rgb(var(--ucial-rgb-brand)/.24)!important}
.match-orb{background:radial-gradient(circle at 35% 25%,var(--ucial-color-brand-bright),var(--ucial-color-brand) 64%,var(--ucial-color-midnight))!important;box-shadow:0 18px 42px rgb(var(--ucial-rgb-brand)/.20)!important}
/* Board tiles may use functional differentiation for gameplay; active selection remains Ucial. */
.match-tile.is-selected{border-color:var(--ucial-primary)!important;outline-color:var(--ucial-primary-hover)!important}

/* Admin: disciplined neutral command center. */
body[data-route^="admin/"]{background:var(--ucial-bg)!important}
.admin-control{color:var(--ucial-text)!important}
:is(.admin-panel,.admin-kpi,.admin-record,.admin-feature-card,.admin-intel-alert,.admin-platform-signal,.admin-human-grid>section,.admin-human-details,.admin-safe-update,.admin-sitemap-zero-miss,.admin-human-observatory-v21526){background:var(--ucial-surface)!important;color:var(--ucial-text)!important;border-color:var(--ucial-border)!important;box-shadow:var(--ucial-shadow-sm)!important}
.admin-control :is(p,small,.admin-help,.admin-field-help){color:var(--ucial-text-secondary)!important}
.admin-control-nav a[aria-current="page"],.admin-human-periods a.is-active{background:var(--ucial-primary)!important;color:var(--ucial-on-primary)!important;border-color:var(--ucial-primary)!important}
.admin-alert-good,.signal-good{border-left-color:var(--ucial-color-success)!important}
.admin-alert-attention,.signal-watch,.severity-watch{border-left-color:var(--ucial-color-warning)!important}
.admin-alert-critical,.signal-critical,.severity-critical{border-left-color:var(--ucial-color-danger)!important}
.severity-action{border-left-color:var(--ucial-human)!important}

/* Brand usage: preserve the official geometry/assets; remove old blue/cyan decorative glows. */
.brand-lockup-official:focus-visible{outline-color:var(--ucial-focus)!important}
.brand-official-stack small{color:var(--ucial-text-secondary)!important}
.hucial-signature-logo,.footer-monogram img,.games-brand img{filter:drop-shadow(0 10px 24px rgb(var(--ucial-rgb-brand)/.16))!important}

/* Signature / ambient layers: retain motion and depth, remove legacy ivory/gold/blue color drift. */
.hucial-signature-splash{background:radial-gradient(circle at 50% 46%,rgb(var(--ucial-rgb-brand-bright)/.12),transparent 31%),linear-gradient(145deg,var(--ucial-color-white),var(--ucial-color-cloud) 62%,rgb(var(--ucial-rgb-brand)/.08))!important}
.hucial-signature-word{color:var(--ucial-text)!important}
.hucial-signature-tagline{color:var(--ucial-text-secondary)!important}
.hucial-signature-loader i{background:linear-gradient(145deg,var(--ucial-color-brand-bright),var(--ucial-color-brand))!important}
html[data-emotion-period="morning"],html[data-emotion-period="afternoon"],html[data-emotion-period="evening"]{--emotion-canvas:radial-gradient(circle at 14% 4%,rgb(var(--ucial-rgb-brand-bright)/.075),transparent 34%),radial-gradient(circle at 88% 8%,rgb(var(--ucial-rgb-coral)/.035),transparent 29%)!important}
body::before{background:var(--emotion-canvas),linear-gradient(180deg,rgb(255 255 255/.18),transparent 45%)!important}
html[data-theme="dark"]{--emotion-surface:linear-gradient(145deg,rgb(23 27 29/.92),rgb(16 20 23/.88))!important;--emotion-glow:rgb(var(--ucial-rgb-brand-bright)/.10)!important}

/* Responsive color stability: no product-specific palette swaps at breakpoints. */
@media(max-width:780px){
  :is(.site-header,.app-header,.pages-site-header,.games-site-header){border-color:var(--ucial-border)!important}
}

/* High contrast / forced-colors retain native accessibility semantics. */
@media(prefers-contrast:more){
  :root{--ucial-border:var(--ucial-color-slate);--ucial-focus:var(--ucial-color-brand)}
  html[data-theme="dark"]{--ucial-border:var(--ucial-color-mist);--ucial-focus:var(--ucial-color-brand-bright)}
}
@media(forced-colors:active){
  *{forced-color-adjust:auto}
  a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important}
}
