/* =========================================================
   UniSST V201 — Prime Video inspired institutional palette
   Escopo: UI do sistema (pública, autenticada, administração e player).
   A logo original NÃO é recolorida, filtrada ou substituída por esta folha.
   ========================================================= */
:root,
html[data-theme="dark"],
html[data-theme="light"]{
  --pv201-blue:#D4AF37;
  --pv201-cyan:#F2C94C;
  --pv201-orange:#FF9900;
  --pv201-black:#000000;
  --pv201-deep:#050505;
  --pv201-bg:#111111;
  --pv201-navbar:#0B0B0B;
  --pv201-surface:#151515;
  --pv201-card:#1B1B1B;
  --pv201-squid:#242424;
  --pv201-squid-2:#343434;
  --pv201-secondary:#303030;
  --pv201-border:#202020;
  --pv201-white:#FFFFFF;
  --pv201-muted:#A3A3A3;
  --pv201-muted-2:#666666;
  --pv201-blue-hover:#A67C00;
  --pv201-caption:#FFFF00;

  /* Compatibilidade com os tokens históricos já consumidos pelo sistema. */
  --bg:var(--pv201-bg)!important;
  --bg-deep:var(--pv201-deep)!important;
  --surface:var(--pv201-surface)!important;
  --surface-2:var(--pv201-card)!important;
  --surface-3:var(--pv201-squid)!important;
  --surface-hover:var(--pv201-squid-2)!important;
  --text:var(--pv201-white)!important;
  --muted:var(--pv201-muted)!important;
  --muted-2:var(--pv201-muted-2)!important;
  --line:var(--pv201-border)!important;
  --line-strong:var(--pv201-squid-2)!important;
  --accent:var(--pv201-blue)!important;
  --brand-primary:var(--pv201-blue)!important;
  --brand-accent:var(--pv201-cyan)!important;
  --success:var(--pv201-cyan)!important;
  --warning:var(--pv201-orange)!important;
  --danger:var(--pv201-orange)!important;

  --pv-bg:var(--pv201-bg)!important;
  --pv-bg-soft:var(--pv201-surface)!important;
  --pv-surface:var(--pv201-surface)!important;
  --pv-surface-2:var(--pv201-card)!important;
  --pv-surface-3:var(--pv201-squid)!important;
  --pv-surface-hover:var(--pv201-squid-2)!important;
  --pv-text:var(--pv201-white)!important;
  --pv-muted:var(--pv201-muted)!important;
  --pv-muted-2:var(--pv201-muted-2)!important;
  --pv-line:var(--pv201-border)!important;
  --pv-line-strong:var(--pv201-squid-2)!important;
  --pv-accent:var(--pv201-blue)!important;
  --pv-success:var(--pv201-cyan)!important;
  --pv-warning:var(--pv201-orange)!important;
  --pv-danger:var(--pv201-orange)!important;

  --ui174-line:var(--pv201-border)!important;
  --ui174-line-strong:var(--pv201-squid-2)!important;
  --ui174-surface:var(--pv201-navbar)!important;
  --ui174-surface-soft:var(--pv201-deep)!important;
  --ui174-field:var(--pv201-card)!important;
  --ui174-text:var(--pv201-white)!important;
  --ui174-muted:var(--pv201-muted)!important;
  --ui174-accent:var(--pv201-blue)!important;

  color-scheme:dark!important;
  background:var(--pv201-bg)!important;
}

html,body{background:var(--pv201-deep)!important;color:var(--pv201-white)!important;}
body.app-body{background:var(--pv201-bg)!important;color:var(--pv201-white)!important;}
body.public-body,body.player-body{background:var(--pv201-deep)!important;color:var(--pv201-white)!important;}

/* A logo institucional é tratada como ativo protegido: sem filter, blend ou recoloração. */
.brand-logo-img,
.stream-brand img,
.public-brand img{
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}

/* Cabeçalhos e navegação */
.prime-header,
.public-header,
.player-header,
.admin-context-nav,
.admin-context-inner,
.header-inner,
.public-header-inner{
  background:var(--pv201-navbar)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
}
.prime-nav a,
.public-nav a,
.admin-context-inner a,
.admin-tabs a,
nav a,
[role="tab"]{
  color:var(--pv201-white)!important;
}
.prime-nav a:hover,
.public-nav a:hover,
.admin-context-inner a:hover,
.admin-tabs a:hover,
[role="tab"]:hover{
  background:var(--pv201-secondary)!important;
  color:var(--pv201-white)!important;
}
.prime-nav a.active,
.public-nav a.active,
.admin-context-inner a.active,
.admin-tabs a.active,
[role="tab"][aria-selected="true"]{
  background:var(--pv201-secondary)!important;
  color:var(--pv201-white)!important;
  border-color:var(--pv201-blue)!important;
}

/* Estruturas e painéis genéricos */
.panel,
.section-panel,
.content-panel,
.dashboard-panel,
.admin-panel,
.form-panel,
.form-card,
.settings-card,
.profile-panel,
.profile-section,
.modal,
.dialog,
.popover,
.dropdown-menu,
.menu-panel,
.widget,
.table-wrap,
.data-table-wrap,
.empty-state,
details{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
}

/* Tipografia */
h1,h2,h3,h4,h5,h6,
strong,b,
label,
legend,
.title,
.section-title,
.page-title{
  color:var(--pv201-white)!important;
}
p,
small,
.meta,
.muted,
.help,
.hint,
.description,
.subtitle,
.eyebrow{
  color:var(--pv201-muted)!important;
}
::placeholder{color:var(--pv201-muted-2)!important;opacity:1!important}

/* Formulários: sempre legíveis no tema escuro. */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select,
textarea{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
  caret-color:var(--pv201-white)!important;
}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
select:focus,
textarea:focus{
  background:var(--pv201-squid)!important;
  border-color:var(--pv201-blue)!important;
  box-shadow:0 0 0 3px rgba(212,175,55,.24)!important;
  outline:0!important;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--pv201-white)!important;
  box-shadow:0 0 0 1000px var(--pv201-card) inset!important;
  caret-color:var(--pv201-white)!important;
}
select option{background:var(--pv201-card)!important;color:var(--pv201-white)!important}

/* Ações. Azul = ação principal; laranja = compra/assinatura/atenção. */
.primary-btn,
.btn-primary,
button.primary,
a.primary,
.public-signup,
.storefront-primary,
.preview-action.primary{
  background:var(--pv201-blue)!important;
  border-color:var(--pv201-blue)!important;
  color:var(--pv201-white)!important;
}
.primary-btn:hover,
.btn-primary:hover,
button.primary:hover,
a.primary:hover,
.public-signup:hover,
.storefront-primary:hover,
.preview-action.primary:hover{
  background:var(--pv201-blue-hover)!important;
  border-color:var(--pv201-blue-hover)!important;
  color:var(--pv201-white)!important;
}
.secondary-btn,
.btn-secondary,
.ghost-btn,
button.secondary,
a.secondary{
  background:var(--pv201-secondary)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
}
.secondary-btn:hover,
.btn-secondary:hover,
.ghost-btn:hover,
button.secondary:hover,
a.secondary:hover{
  background:var(--pv201-squid-2)!important;
  border-color:var(--pv201-blue)!important;
}
.danger-btn,
.btn-danger,
button.danger,
.purchase-btn,
.subscribe-btn,
.subscription-cta{
  background:var(--pv201-orange)!important;
  border-color:var(--pv201-orange)!important;
  color:var(--pv201-deep)!important;
}

/* Links e estados */
main a:not([class]),
.link,
.text-link{
  color:var(--pv201-cyan)!important;
}
:focus-visible{
  outline:2px solid var(--pv201-blue)!important;
  outline-offset:2px!important;
}
.success,.status-success,.badge-success,.notice-success{color:var(--pv201-cyan)!important}
.warning,.status-warning,.badge-warning,
.error,.danger,.status-danger,.badge-danger,.notice-error{color:var(--pv201-orange)!important}

/* Tabelas, divisores e caixas de dados */
table,
thead,
tbody,
tr,
th,
td{
  border-color:var(--pv201-border)!important;
}
th{
  background:var(--pv201-navbar)!important;
  color:var(--pv201-muted)!important;
}
td{color:var(--pv201-white)!important}
tbody tr:hover{background:var(--pv201-card)!important}
hr{border-color:var(--pv201-border)!important}

/* Scrollbars */
*{scrollbar-color:var(--pv201-muted-2) var(--pv201-deep)}
*::-webkit-scrollbar-track{background:var(--pv201-deep)}
*::-webkit-scrollbar-thumb{background:var(--pv201-muted-2);border-color:var(--pv201-deep)}
*::-webkit-scrollbar-thumb:hover{background:var(--pv201-blue)}

/* Player: progresso e controles dentro da mesma paleta. */
.player-body{
  --player-accent:var(--pv201-blue)!important;
  --player-bg:var(--pv201-deep)!important;
  --player-panel:var(--pv201-navbar)!important;
  --player-text:var(--pv201-white)!important;
}
.lesson-reference[data-enforce-watch="1"] .external-neutral-controls input[data-external-seek]{
  background:linear-gradient(90deg,var(--pv201-blue) 0 var(--progress,0%),var(--pv201-muted) var(--progress,0%) var(--watched-limit,0%),var(--pv201-muted-2) var(--watched-limit,0%) 100%)!important;
}
.player-subtitles,
.subtitle-overlay,
.video-caption{
  background:rgba(0,0,0,.75)!important;
  color:var(--pv201-white)!important;
}

/* =========================================================
   HOME V201 — fade/sombra HORIZONTAL como a referência:
   preto profundo entra da esquerda sobre a mídia e desaparece à direita.
   O gradiente é deliberadamente horizontal (90deg).
   ========================================================= */
body.public-home-v198 .uv198-hero{
  background:var(--pv201-deep)!important;
}
body.public-home-v198 .uv198-hero-copy{
  background:var(--pv201-deep)!important;
}
body.public-home-v198 .uv198-hero-visual{
  background:var(--pv201-deep)!important;
}
body.public-home-v198 .uv198-hero-copy:after{
  width:clamp(250px,24vw,430px)!important;
  right:clamp(-300px,-19vw,-210px)!important;
  background:linear-gradient(90deg,
    var(--pv201-deep) 0%,
    rgba(5,5,5,.98) 23%,
    rgba(5,5,5,.90) 43%,
    rgba(5,5,5,.62) 64%,
    rgba(5,5,5,.28) 82%,
    rgba(5,5,5,0) 100%)!important;
}
body.public-home-v198 .uv198-hero-fade{
  position:absolute!important;
  z-index:7!important;
  inset:0 auto 0 0!important;
  width:clamp(210px,31%,520px)!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,
    var(--pv201-deep) 0%,
    rgba(5,5,5,.96) 19%,
    rgba(5,5,5,.78) 43%,
    rgba(5,5,5,.44) 68%,
    rgba(5,5,5,.14) 86%,
    rgba(5,5,5,0) 100%)!important;
}
body.public-home-v198 .uv198-feature:before{
  background:linear-gradient(90deg,
    rgba(5,5,5,.54) 0%,
    rgba(5,5,5,.22) 22%,
    rgba(5,5,5,0) 48%),
    linear-gradient(0deg,rgba(5,5,5,.38),rgba(5,5,5,0) 36%)!important;
}
body.public-home-v198 .uv198-mega-menu{
  background:var(--pv201-squid)!important;
  color:var(--pv201-white)!important;
  border-color:var(--pv201-border)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.62)!important;
}
body.public-home-v198 .uv198-join{
  background:var(--pv201-blue)!important;
  color:var(--pv201-white)!important;
}
body.public-home-v198 .uv198-join:hover{background:var(--pv201-blue-hover)!important}
body.public-home-v198 .uv198-public-rails{
  background:linear-gradient(180deg,var(--pv201-deep) 0,var(--pv201-bg) 92px,var(--pv201-bg) 100%)!important;
}

@media(max-width:760px){
  body.public-home-v198 .uv198-hero-copy:after{display:none!important}
  body.public-home-v198 .uv198-hero-fade{
    inset:0 auto 0 0!important;
    width:48%!important;
    height:100%!important;
    background:linear-gradient(90deg,var(--pv201-deep) 0%,rgba(5,5,5,.82) 42%,rgba(5,5,5,0) 100%)!important;
  }
}

/* Estados sem cores paralelas: todos convergem para azul/ciano/laranja e fundos institucionais. */
.alert.success,.notice-success,.status-success,.badge-success,.approved,.is-success,.status-active,.is-active{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-cyan)!important;
  color:var(--pv201-white)!important;
}
.alert.error,.notice-error,.status-danger,.badge-danger,.danger,.premium-danger,.video-error,.error{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-orange)!important;
  color:var(--pv201-white)!important;
}
.status-warning,.badge-warning,.warning,.pending,.is-pending,.pending-label,.approval-pending-pill,.pending_payment{
  background:var(--pv201-squid)!important;
  border-color:var(--pv201-orange)!important;
  color:var(--pv201-white)!important;
}
.inactive{background:var(--pv201-secondary)!important;border-color:var(--pv201-border)!important;color:var(--pv201-muted)!important}
::selection{background:var(--pv201-blue)!important;color:var(--pv201-white)!important}

/* V201 strict final cascade — reforça a paleta contra regras legadas mais específicas. */
body.prime-palette-v201 .panel,
body.prime-palette-v201 .section-panel,
body.prime-palette-v201 .content-panel,
body.prime-palette-v201 .dashboard-panel,
body.prime-palette-v201 .admin-panel,
body.prime-palette-v201 .form-panel,
body.prime-palette-v201 .form-card,
body.prime-palette-v201 .settings-card,
body.prime-palette-v201 .profile-panel,
body.prime-palette-v201 .profile-section,
body.prime-palette-v201 .modal,
body.prime-palette-v201 .dialog,
body.prime-palette-v201 .popover,
body.prime-palette-v201 .dropdown-menu,
body.prime-palette-v201 .menu-panel,
body.prime-palette-v201 .widget,
body.prime-palette-v201 .table-wrap,
body.prime-palette-v201 .data-table-wrap,
body.prime-palette-v201 .empty-state{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.prime-palette-v201 select,
body.prime-palette-v201 textarea{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
body.prime-palette-v201 select:focus,
body.prime-palette-v201 textarea:focus{
  background:var(--pv201-squid)!important;
  border-color:var(--pv201-blue)!important;
  box-shadow:0 0 0 3px rgba(212,175,55,.24)!important;
}
body.prime-palette-v201 .primary-btn,
body.prime-palette-v201 .btn-primary,
body.prime-palette-v201 button.primary,
body.prime-palette-v201 a.primary,
body.prime-palette-v201 .public-signup,
body.prime-palette-v201 .storefront-primary,
body.prime-palette-v201 .preview-action.primary{
  background:var(--pv201-blue)!important;
  border-color:var(--pv201-blue)!important;
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 .secondary-btn,
body.prime-palette-v201 .btn-secondary,
body.prime-palette-v201 .ghost-btn,
body.prime-palette-v201 button.secondary,
body.prime-palette-v201 a.secondary{
  background:var(--pv201-secondary)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 .danger-btn,
body.prime-palette-v201 .btn-danger,
body.prime-palette-v201 button.danger,
body.prime-palette-v201 .purchase-btn,
body.prime-palette-v201 .subscribe-btn,
body.prime-palette-v201 .subscription-cta{
  background:var(--pv201-orange)!important;
  border-color:var(--pv201-orange)!important;
  color:var(--pv201-deep)!important;
}
body.prime-palette-v201 .alert.success,
body.prime-palette-v201 .notice-success,
body.prime-palette-v201 .status-success,
body.prime-palette-v201 .badge-success,
body.prime-palette-v201 .approved,
body.prime-palette-v201 .is-success,
body.prime-palette-v201 .status-active,
body.prime-palette-v201 .is-active{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-cyan)!important;
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 .alert.error,
body.prime-palette-v201 .notice-error,
body.prime-palette-v201 .status-danger,
body.prime-palette-v201 .badge-danger,
body.prime-palette-v201 .danger,
body.prime-palette-v201 .premium-danger,
body.prime-palette-v201 .video-error,
body.prime-palette-v201 .error{
  background:var(--pv201-card)!important;
  border-color:var(--pv201-orange)!important;
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 .status-warning,
body.prime-palette-v201 .badge-warning,
body.prime-palette-v201 .warning,
body.prime-palette-v201 .pending,
body.prime-palette-v201 .is-pending,
body.prime-palette-v201 .pending-label,
body.prime-palette-v201 .approval-pending-pill,
body.prime-palette-v201 .pending_payment{
  background:var(--pv201-squid)!important;
  border-color:var(--pv201-orange)!important;
  color:var(--pv201-white)!important;
}


/* =========================================================
   V201 FINAL — normalização visual do sistema inteiro.
   A folha é carregada por último; regras antigas podem continuar no histórico,
   mas a interface renderizada converge para esta paleta institucional.
   Não alcança os seletores protegidos de cards/rails.
   ========================================================= */
body.prime-palette-v201 .app-main,
body.prime-palette-v201 .app-content,
body.prime-palette-v201 .page-shell,
body.prime-palette-v201 main{
  color:var(--pv201-white)!important;
}
body.prime-palette-v201 .app-main,
body.prime-palette-v201 .app-content{background:var(--pv201-bg)!important;}
body.prime-palette-v201 .prime-header,
body.prime-palette-v201 .public-header,
body.prime-palette-v201 .admin-context-nav,
body.prime-palette-v201 .admin-context-inner{
  background:var(--pv201-navbar)!important;
  border-color:var(--pv201-border)!important;
}
body.prime-palette-v201 :is(.menu-popover,.profile-popover,.account-menu,.notification-popover,.admin-nav-popover-v174,.admin-nav-popover-portal-v189){
  background:var(--pv201-surface)!important;
  border-color:var(--pv201-border)!important;
  color:var(--pv201-white)!important;
  box-shadow:0 20px 55px rgba(0,0,0,.58)!important;
}
body.prime-palette-v201 :is(.menu-popover,.profile-popover,.account-menu,.notification-popover,.admin-nav-popover-v174,.admin-nav-popover-portal-v189) a:hover{
  background:var(--pv201-secondary)!important;color:var(--pv201-white)!important;
}

/* Perfil profissional V196 — mesma linguagem visual, sem alterar sua estrutura. */
body.member-professional-context-v196{
  --mp196-bg:var(--pv201-bg)!important;
  --mp196-card:var(--pv201-card)!important;
  --mp196-card-2:var(--pv201-squid)!important;
  --mp196-border:var(--pv201-border)!important;
  --mp196-muted:var(--pv201-muted)!important;
  --mp196-text:var(--pv201-white)!important;
  --mp196-accent:var(--pv201-cyan)!important;
}
body.member-professional-context-v196 :is(.mpv196-hero,.mpv196-card,.mpv196-side-card,.mpv196-editor,.mpv196-popover,.mpv196-complete-pill,.mpv196-state){
  background:var(--pv201-card)!important;border-color:var(--pv201-border)!important;color:var(--pv201-white)!important;
}
body.member-professional-context-v196 .mpv196-cover{
  background:linear-gradient(120deg,var(--pv201-squid) 0%,var(--pv201-card) 46%,var(--pv201-bg) 100%)!important;
}
body.member-professional-context-v196 :is(.mpv196-section-nav,.mpv196-resume-system,.mpv196-request,.mpv196-highlight,.mpv196-project,.mpv196-language,.mpv196-license){
  background:var(--pv201-surface)!important;border-color:var(--pv201-border)!important;
}
body.member-professional-context-v196 .mpv196-status{background:var(--pv201-surface)!important;border-color:var(--pv201-cyan)!important;color:var(--pv201-cyan)!important;}
body.member-professional-context-v196 .mpv196-public-url button,
body.member-professional-context-v196 .mpv196-editor>summary span:last-child{color:var(--pv201-cyan)!important;}
body.member-professional-context-v196 .mpv196-avatar-edit{background:var(--pv201-secondary)!important;color:var(--pv201-white)!important;border-color:var(--pv201-card)!important;}

/* Cartão Fidelidade V197. */
body.prime-palette-v201 :is(.loyalty-hero-v197,.loyalty-admin-hero-v197,.loyalty-panel-v197,.loyalty-admin-panel-v197,.loyalty-admin-preview-v197,.loyalty-admin-stats-v197>div){
  background:var(--pv201-card)!important;border-color:var(--pv201-border)!important;color:var(--pv201-white)!important;
}
body.prime-palette-v201 .loyalty-card-v197,
body.prime-palette-v201 .company-card-v197,
body.prime-palette-v201 .mini-loyalty-card-v197{
  background:linear-gradient(135deg,var(--pv201-surface),var(--pv201-card) 58%,var(--pv201-bg))!important;
  border-color:var(--pv201-border)!important;
}
body.prime-palette-v201 .loyalty-mark-v197>span{background:var(--pv201-orange)!important;color:var(--pv201-deep)!important;box-shadow:none!important;}
body.prime-palette-v201 .loyalty-ring-v197{background:conic-gradient(var(--pv201-cyan) var(--progress),var(--pv201-secondary) 0)!important;}
body.prime-palette-v201 .loyalty-ring-v197:after{background:var(--pv201-surface)!important;}
body.prime-palette-v201 :is(.loyalty-progress-v197>i b,.loyalty-table-progress-v197 i b,.mini-loyalty-card-v197 i b){background:var(--pv201-cyan)!important;}
body.prime-palette-v201 :is(.loyalty-timeline-v197 i,.loyalty-event-icon-v197){background:var(--pv201-cyan)!important;box-shadow:none!important;}
body.prime-palette-v201 .loyalty-chip-v197.available{background:var(--pv201-surface)!important;color:var(--pv201-cyan)!important;border:1px solid var(--pv201-cyan)!important;}
body.prime-palette-v201 .loyalty-chip-v197.reserved{background:var(--pv201-surface)!important;color:var(--pv201-blue)!important;border:1px solid var(--pv201-blue)!important;}

/* Plano Anual V200: azul para ação, laranja exclusivamente para compra/atenção. */
body.prime-palette-v201 .sub200-shell{color:var(--pv201-white)!important;}
body.prime-palette-v201 :is(.sub200-hero,.sub200-admin-hero,.sub200-card,.sub200-grid>article,.sub200-panel,.sub200-kpis article,.sub200-license-grid article,.sub200-rule-list>div){
  background:var(--pv201-card)!important;border-color:var(--pv201-border)!important;color:var(--pv201-white)!important;
}
body.prime-palette-v201 .sub200-hero:after{background:radial-gradient(circle,rgba(212,175,55,.22) 0%,rgba(212,175,55,0) 68%)!important;}
body.prime-palette-v201 .sub200-eyebrow{color:var(--pv201-cyan)!important;}
body.prime-palette-v201 .sub200-primary{background:var(--pv201-blue)!important;color:var(--pv201-white)!important;}
body.prime-palette-v201 .sub200-primary:hover{background:var(--pv201-blue-hover)!important;}
body.prime-palette-v201 .sub200-secondary{background:var(--pv201-secondary)!important;color:var(--pv201-white)!important;}
body.prime-palette-v201 .sub200-danger{background:var(--pv201-orange)!important;color:var(--pv201-deep)!important;}
body.prime-palette-v201 .sub200-card-mark span{background:var(--pv201-blue)!important;color:var(--pv201-white)!important;}
body.prime-palette-v201 :is(.sub200-status.active,.sub200-status.available){background:var(--pv201-surface)!important;color:var(--pv201-cyan)!important;border:1px solid var(--pv201-cyan)!important;}
body.prime-palette-v201 :is(.sub200-status.pending_payment,.sub200-status.pending,.sub200-status.cancelled,.sub200-status.reversal_due){background:var(--pv201-surface)!important;color:var(--pv201-orange)!important;border:1px solid var(--pv201-orange)!important;}
body.prime-palette-v201 :is(.sub200-alert){background:var(--pv201-surface)!important;border-color:var(--pv201-orange)!important;color:var(--pv201-white)!important;}

/* Aprendizado / suporte / prontidão de produção. */
body.learning-context-v193 :is(.learning-hero-main,.learning-goal-card,.learning-summary-grid>*,.learning-section-block,.learning-recovery-panel-v193,.rank-career-card-v139),
body.prime-palette-v201 :is(.support-heading-status-v189,.support-ticket-v189,.support-empty-v189,.production-readiness-item-v190,.production-readiness-summary-v190 span){
  background:var(--pv201-card)!important;border-color:var(--pv201-border)!important;color:var(--pv201-white)!important;
}
body.learning-context-v193 .learning-hub-nav,
body.member-professional-context-v196 .mpv196-section-nav{background:rgba(11,11,11,.96)!important;border-color:var(--pv201-border)!important;}
body.learning-context-v194 .learning-patents-v194{background:var(--pv201-card)!important;border-color:var(--pv201-border)!important;}
body.learning-context-v194 .learning-patent-v194{background:var(--pv201-surface)!important;border-color:var(--pv201-border)!important;}
body.learning-context-v194 .learning-patent-v194.is-current{border-color:var(--pv201-blue)!important;box-shadow:0 0 0 1px var(--pv201-blue)!important;}
body.prime-palette-v201 .production-readiness-summary-v190 .ok,
body.prime-palette-v201 .production-readiness-item-v190>i{color:var(--pv201-cyan)!important;background:var(--pv201-cyan)!important;}
body.prime-palette-v201 .production-readiness-summary-v190 .warn,
body.prime-palette-v201 .production-readiness-summary-v190 .bad,
body.prime-palette-v201 .production-readiness-item-v190.pending>i,
body.prime-palette-v201 .production-readiness-item-v190.fail>i{color:var(--pv201-orange)!important;background:var(--pv201-orange)!important;}

/* HOME V201 FINAL — composição lateral com banners horizontais recentes. */
body.public-home-v201 .uv198-hero{background:var(--pv201-black)!important;}
body.public-home-v201 .uv198-hero-copy{background:var(--pv201-black)!important;}
body.public-home-v201 .uv198-hero-visual{background:var(--pv201-black)!important;}
body.public-home-v201 .uv198-mosaic{
  position:absolute!important;z-index:4!important;inset:0 auto 0 0!important;
  width:35.5%!important;padding:0 5px 0 0!important;gap:5px!important;
  display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(5,minmax(0,1fr))!important;
  overflow:hidden!important;background:var(--pv201-black)!important;
}
body.public-home-v201 .uv198-mosaic-card{
  min-width:0!important;min-height:0!important;border:0!important;border-radius:5px!important;
  background-image:var(--uv198-card-image),var(--uv199-card-fallback)!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  filter:none!important;box-shadow:0 0 0 1px rgba(255,255,255,.025),0 8px 24px rgba(0,0,0,.20)!important;
}
body.public-home-v201 .uv198-mosaic-card span{display:none!important;}
body.public-home-v201 .uv198-feature{
  inset:0 0 0 35.5%!important;
  background-image:var(--uv198-feature-image)!important;
  background-size:cover!important;background-position:center 13%!important;background-repeat:no-repeat!important;
  filter:none!important;
}
body.public-home-v201 .uv198-feature:before{
  background:linear-gradient(90deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.14) 18%,rgba(0,0,0,0) 42%),
             linear-gradient(0deg,rgba(5,5,5,.34) 0%,rgba(5,5,5,0) 30%)!important;
}
body.public-home-v201 .uv198-hero-fade{
  z-index:8!important;inset:0 auto 0 0!important;width:48%!important;height:100%!important;
  background:linear-gradient(90deg,
    var(--pv201-black) 0%,var(--pv201-black) 12%,rgba(0,0,0,.98) 24%,rgba(0,0,0,.91) 38%,rgba(0,0,0,.66) 57%,rgba(0,0,0,.34) 76%,rgba(0,0,0,0) 100%)!important;
  filter:none!important;
}
/* Borda orgânica sutil do fade, inspirada na transição observada na referência. */
body.public-home-v201 .uv198-hero-fade:after{
  content:"";position:absolute;inset:0 -28px 0 auto;width:82px;pointer-events:none;opacity:.92;
  background:
    radial-gradient(ellipse 50px 92px at 0 8%,rgba(0,0,0,.72) 0 58%,rgba(0,0,0,0) 66%),
    radial-gradient(ellipse 55px 120px at 0 29%,rgba(0,0,0,.58) 0 58%,rgba(0,0,0,0) 67%),
    radial-gradient(ellipse 48px 105px at 0 51%,rgba(0,0,0,.70) 0 58%,rgba(0,0,0,0) 67%),
    radial-gradient(ellipse 58px 126px at 0 74%,rgba(0,0,0,.56) 0 58%,rgba(0,0,0,0) 67%),
    radial-gradient(ellipse 48px 94px at 0 94%,rgba(0,0,0,.68) 0 58%,rgba(0,0,0,0) 67%);
}
body.public-home-v201 .uv198-hero-copy:after{
  width:clamp(300px,27vw,480px)!important;right:clamp(-345px,-21vw,-230px)!important;
  background:linear-gradient(90deg,var(--pv201-black) 0%,rgba(0,0,0,.98) 31%,rgba(0,0,0,.68) 62%,rgba(0,0,0,0) 100%)!important;
}
body.public-home-v201 .uv198-header,
body.public-home-v201 .uv198-header-inner{background:var(--pv201-deep)!important;}
body.public-home-v201 .uv198-mega-menu{background:var(--pv201-squid)!important;border-color:var(--pv201-border)!important;}
body.public-home-v201 .uv198-public-rails{background:linear-gradient(180deg,var(--pv201-black) 0,var(--pv201-deep) 82px,var(--pv201-deep) 100%)!important;}

@media(max-width:760px){
  body.public-home-v201 .uv198-mosaic{width:44%!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;}
  body.public-home-v201 .uv198-mosaic-card:nth-child(n+4){display:none!important;}
  body.public-home-v201 .uv198-feature{left:44%!important;background-position:center 9%!important;}
  body.public-home-v201 .uv198-hero-fade{width:58%!important;background:linear-gradient(90deg,var(--pv201-black) 0%,rgba(0,0,0,.92) 34%,rgba(0,0,0,.40) 70%,rgba(0,0,0,0) 100%)!important;}
  body.public-home-v201 .uv198-hero-fade:after{display:none!important;}
}
