/* ==========================================================
   STUDIOBOARD — V14.1 / SAUCE RESTORED
   Override visual seguro sobre o PATCH 14.
   Objetivos: recuperar personalidade/imersão, manter vídeos reais,
   preservar legibilidade e corrigir contraste no tema claro.
   ========================================================== */

/* ---------- BASE / MOVIMENTO LEVE ---------- */
body.site-polish-v141 {
  position: relative;
  isolation: isolate;
  overflow-x: clip;
}
.site-polish-v141 .site-progress {
  display: block !important;
  position: fixed;
  inset: 0 0 auto;
  z-index: 500;
  height: 2px;
  pointer-events: none;
  background: transparent;
}
.site-polish-v141 .site-progress > span {
  display: block;
  width: 100%; height: 100%;
  transform: scaleX(0); transform-origin: left center;
  background: linear-gradient(90deg, #46c6ff 0%, #4d87ff 48%, #8a5cff 100%);
  box-shadow: 0 0 18px rgba(78,140,255,.42);
}
/* Glow leve sem nós fixos, blur gigante ou tracking por cursor. */
body.site-polish-v141::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 84% 18%, rgba(62,134,255,.08), transparent 34%),
    radial-gradient(circle at 12% 62%, rgba(123,85,255,.05), transparent 30%);
}

/* ---------- HEADER ---------- */
.site-polish-v141 .clean-header {
  background: color-mix(in srgb, var(--sb-bg) 86%, transparent) !important;
  border-bottom-color: color-mix(in srgb, var(--sb-line) 82%, transparent) !important;
  box-shadow: 0 12px 36px rgba(0,0,0,.08) !important;
}
.site-polish-v141 .clean-header::after {
  content: "";
  position: absolute; left: 0; right: 0; bottom: -1px; height: 1px;
  background: linear-gradient(90deg, transparent 5%, rgba(66,190,255,.5) 30%, rgba(82,112,255,.66) 58%, rgba(139,83,255,.46) 82%, transparent 96%);
  opacity: .52;
}
.site-polish-v141 .brand-copy strong { letter-spacing: -.025em; }

/* ---------- HERO: O MOLHO VOLTA, SEM FINGIR UI ---------- */
.site-polish-v141 .v141-hero {
  position: relative;
  min-height: min(900px, 92vh);
  padding: 158px 0 116px;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 43%, rgba(70,121,255,.17), transparent 29%),
    radial-gradient(circle at 93% 15%, rgba(137,82,255,.10), transparent 27%),
    linear-gradient(135deg, color-mix(in srgb, var(--sb-bg) 96%, #111f35 4%), var(--sb-bg));
}
.site-polish-v141 .v141-hero::after {
  content: "";
  position: absolute; left: 0; right: 0; bottom: 0; height: 3px;
  background: linear-gradient(90deg, transparent 4%, #4cc8ff 18%, #4d83ff 52%, #8d5bff 78%, transparent 96%);
  opacity: .9;
}
.site-polish-v141 .v141-hero-grid {
  position: absolute; inset: 0;
  pointer-events: none;
  opacity: .24;
  background-image:
    linear-gradient(color-mix(in srgb, var(--sb-line) 66%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--sb-line) 66%, transparent) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, #000 0%, rgba(0,0,0,.82) 72%, transparent 100%);
}
.site-polish-v141 .v141-ruler {
  position: absolute; z-index: 1; top: 104px; left: 3.5vw; right: 3.5vw;
  display: flex; justify-content: space-between;
  color: var(--sb-muted-2);
  font: 700 11px/1 "Segoe UI", Arial, sans-serif;
  letter-spacing: .08em;
  opacity: .76;
}
.site-polish-v141 .v141-ruler::after {
  content: ""; position: absolute; left: 0; right: 0; top: 24px; height: 1px;
  background: linear-gradient(90deg, transparent, var(--sb-line), transparent);
}
.site-polish-v141 .v141-coordinate {
  position: absolute; z-index: 1;
  color: var(--sb-muted-2);
  font: 700 11px/1 "Segoe UI", Arial, sans-serif;
  letter-spacing: .12em;
  opacity: .72;
}
.site-polish-v141 .v141-coordinate-a { left: 24px; bottom: 54px; transform: rotate(-90deg); transform-origin: left bottom; }
.site-polish-v141 .v141-coordinate-b { right: 30px; bottom: 28px; }
.site-polish-v141 .v141-hero .clean-hero-grid { position: relative; z-index: 2; grid-template-columns: minmax(410px,.8fr) minmax(540px,1.2fr); }
.site-polish-v141 .v141-live-label { display: flex; align-items: center; gap: 10px; letter-spacing: .08em; text-transform: uppercase; }
.site-polish-v141 .v141-live-label > span { width: 8px; height: 8px; border-radius: 50%; background: #59df98; box-shadow: 0 0 0 5px rgba(89,223,152,.08), 0 0 18px rgba(89,223,152,.36); }
.site-polish-v141 .v141-hero h1 { max-width: 700px; font-size: clamp(58px, 6.7vw, 104px); line-height: .86; letter-spacing: -.068em; }
.site-polish-v141 .v141-hero h1 em { color: transparent; -webkit-text-stroke: 1.25px var(--sb-accent); text-shadow: 0 0 30px rgba(78,140,255,.14); }
.site-polish-v141 .v141-hero .clean-hero-lead { max-width: 610px; font-size: clamp(17px,1.3vw,20px); line-height: 1.65; }
.site-polish-v141 .v141-stage-wrap { position: relative; padding: 30px 0 34px; }
.site-polish-v141 .v141-stage-label { margin: 0 0 10px; color: var(--sb-muted-2); font-size: 12px; font-weight: 750; letter-spacing: .07em; }
.site-polish-v141 .v141-stage-label span { color: #62d59a; }
.site-polish-v141 .clean-product-demo.hero-demo {
  position: relative;
  overflow: visible;
  border: 1px solid color-mix(in srgb, var(--sb-accent) 34%, var(--sb-line));
  background: #0b121c;
  box-shadow: 0 32px 90px rgba(0,0,0,.35), 0 0 0 8px rgba(70,125,255,.025), 0 0 72px rgba(73,100,255,.11);
  transform: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.site-polish-v141 .clean-product-demo.hero-demo::before,
.site-polish-v141 .clean-product-demo.hero-demo::after {
  content: ""; position: absolute; z-index: 3; width: 38px; height: 38px; pointer-events: none;
}
.site-polish-v141 .clean-product-demo.hero-demo::before { left: -1px; top: -1px; border-left: 2px solid #55c8ff; border-top: 2px solid #55c8ff; }
.site-polish-v141 .clean-product-demo.hero-demo::after { right: -1px; bottom: -1px; border-right: 2px solid #8b63ff; border-bottom: 2px solid #8b63ff; }
.site-polish-v141 .v141-window-bar { height: 34px; display: flex; align-items: center; justify-content: space-between; padding: 0 12px; border-bottom: 1px solid rgba(144,170,204,.16); background: #111b29; color: #aab6c7; font-size: 11px; font-weight: 650; }
.site-polish-v141 .v141-window-bar span { display: flex; gap: 6px; }.site-polish-v141 .v141-window-bar i { width: 7px; height: 7px; border-radius: 50%; background: #334255; }
.site-polish-v141 .v141-stage-scan { position: absolute; inset: 34px 0 0; pointer-events: none; background: linear-gradient(105deg, transparent 35%, rgba(94,183,255,.045) 50%, transparent 64%); }
.site-polish-v141 .v141-stage-meta { display: flex; justify-content: flex-end; gap: 10px; margin-top: 12px; color: var(--sb-muted-2); font-size: 12px; font-weight: 700; letter-spacing: .05em; }
.site-polish-v141 .v141-stage-meta b { color: var(--sb-accent); }
.site-polish-v141 .v141-scroll-cue { position: absolute; z-index: 4; left: 50%; bottom: 24px; transform: translateX(-50%); display: flex; align-items: center; gap: 12px; color: var(--sb-muted-2); text-decoration: none; font-size: 12px; font-weight: 700; letter-spacing: .07em; }
.site-polish-v141 .v141-scroll-cue b { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--sb-line-strong); border-radius: 50%; color: var(--sb-accent); font-size: 16px; }
.site-polish-v141 .v141-scroll-cue:hover { color: var(--sb-text-strong); }

/* ---------- FAIXA DE FLUXO ---------- */
.site-polish-v141 .v141-command-strip { overflow: hidden; border-bottom: 1px solid var(--sb-line); background: color-mix(in srgb, var(--sb-surface) 82%, transparent); }
.site-polish-v141 .v141-command-strip > div { min-height: 64px; width: min(calc(100% - 48px),1180px); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: var(--sb-muted); font-size: 13px; font-weight: 750; letter-spacing: .035em; }
.site-polish-v141 .v141-command-strip b { color: var(--sb-accent); font-size: 16px; }

/* ---------- CONTEÚDO: CLEAN, MAS COM DIREÇÃO DE ARTE ---------- */
.site-polish-v141 .v141-flow-intro { position: relative; padding: 120px 0 54px; }
.site-polish-v141 .v141-flow-intro::before { content: "FLOW / REAL PRODUCT"; display: block; width: min(calc(100% - 48px),1180px); margin: 0 auto 26px; color: var(--sb-muted-2); font-size: 12px; font-weight: 750; letter-spacing: .1em; }
.site-polish-v141 .v141-flow-intro .clean-flow-heading h2 { max-width: 920px; font-size: clamp(48px,5.8vw,78px); }
.site-polish-v141 .v141-features { position: relative; }
.site-polish-v141 .v141-features .clean-feature-row { position: relative; min-height: 640px; padding: 104px 0; gap: clamp(54px,8vw,110px); }
.site-polish-v141 .v141-features .clean-feature-row::before { content: attr(data-feature-index); position: absolute; top: 54px; right: 0; color: color-mix(in srgb, var(--sb-text-strong) 7%, transparent); font-size: clamp(92px,12vw,180px); font-weight: 800; line-height: 1; letter-spacing: -.08em; pointer-events: none; }
.site-polish-v141 .v141-features .clean-feature-row.is-reversed::before { right: auto; left: 0; }
.site-polish-v141 .v141-features .clean-feature-copy { position: relative; z-index: 2; }
.site-polish-v141 .v141-features .clean-feature-copy h2 { font-size: clamp(40px,4.7vw,66px); line-height: 1.0; }
.site-polish-v141 .v141-features .clean-feature-copy > p:not(.clean-eyebrow) { font-size: 18px; line-height: 1.7; }
.site-polish-v141 .v141-features .clean-feature-copy ul { font-size: 16px; }
.site-polish-v141 .v141-feature-media { position: relative; z-index: 2; min-height: 390px; border-color: color-mix(in srgb, var(--sb-accent) 26%, var(--sb-line)); box-shadow: 0 26px 70px rgba(0,0,0,.18), 0 0 0 1px rgba(76,137,255,.025); }
.site-polish-v141 .v141-feature-media::before { content: ""; position: absolute; z-index: 3; inset: 0; pointer-events: none; background: linear-gradient(135deg, rgba(74,164,255,.05), transparent 35%, transparent 68%, rgba(136,87,255,.06)); }
.site-polish-v141 .v141-feature-media::after { content: ""; position: absolute; z-index: 4; top: -1px; left: -1px; width: 46px; height: 46px; border-left: 2px solid var(--sb-accent); border-top: 2px solid var(--sb-accent); pointer-events: none; }
.site-polish-v141 .v141-feature-media img { min-height: 390px; transition: transform .45s ease, filter .45s ease; }
.site-polish-v141 .v141-feature-media:hover img { transform: scale(1.025); }
.site-polish-v141 .v141-media-tag { position: absolute; z-index: 5; left: 16px; bottom: 16px; padding: 8px 10px; border: 1px solid rgba(142,173,215,.22); background: rgba(7,13,21,.82); color: #dce9f8; font-size: 12px; font-weight: 750; letter-spacing: .055em; backdrop-filter: blur(8px); }
.site-polish-v141 .v141-summary { position: relative; overflow: hidden; background: linear-gradient(135deg, color-mix(in srgb, var(--sb-surface) 96%, #345da0 4%), var(--sb-surface)) !important; }
.site-polish-v141 .v141-summary::before { content: ""; position: absolute; width: 520px; height: 520px; right: -180px; top: -260px; border: 1px solid color-mix(in srgb, var(--sb-accent) 24%, transparent); border-radius: 50%; box-shadow: inset 0 0 0 70px color-mix(in srgb, var(--sb-accent-2) 2%, transparent); }

/* ---------- PLANOS / CONTA / SUPORTE: DEVOLVE PROFUNDIDADE ---------- */
.site-polish-v141 .plans-section { position: relative; background: linear-gradient(180deg, var(--sb-bg-soft), var(--sb-bg)) !important; }
.site-polish-v141 .plan-card { box-shadow: 0 18px 46px rgba(0,0,0,.12) !important; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important; }
.site-polish-v141 .plan-card:hover { transform: translateY(-4px) !important; border-color: var(--sb-line-strong) !important; box-shadow: 0 24px 60px rgba(0,0,0,.18) !important; }
.site-polish-v141 .plan-card.is-featured { background: linear-gradient(180deg, color-mix(in srgb, var(--sb-accent-soft) 42%, var(--sb-surface)), var(--sb-surface) 30%) !important; border-color: color-mix(in srgb, var(--sb-accent-2) 45%, var(--sb-line)) !important; }
.site-polish-v141 .plan-select { display: flex !important; align-items: center !important; justify-content: space-between !important; min-height: 50px; padding: 0 18px !important; }
.site-polish-v141 .xp-account-actions a,
.site-polish-v141 .xp-support-links a,
.site-polish-v141 .faq-list details { box-shadow: 0 12px 30px rgba(0,0,0,.07) !important; }













/* ---------- CONTA / PERFIL: PROFUNDIDADE SEM PAINEL CINZA PESADO ---------- */
.account-page .account-main,
.account-page .account-context { position: relative; }
.account-page .account-section{ box-shadow: 0 14px 38px rgba(0,0,0,.08) !important; }

.account-page .summary-item{ background: color-mix(in srgb,var(--sb-surface-2) 92%,var(--sb-accent-soft) 8%) !important; }

/* ---------- CONTRASTE DO TEMA CLARO: SEM TEXTO BRANCO SOBRE FUNDO CLARO ---------- */
html[data-theme="light"] body { color: #233247 !important; }
html[data-theme="light"] .site-header,
html[data-theme="light"] .flow-header,
html[data-theme="light"] .legal-header { background: rgba(247,250,253,.92) !important; }
html[data-theme="light"] .brand-copy strong,
html[data-theme="light"] .brand-studio,
html[data-theme="light"] .site-nav a:hover,
html[data-theme="light"] .site-nav a:focus-visible,
html[data-theme="light"] .site-nav a.is-active,
html[data-theme="light"] .flow-nav a:hover,
html[data-theme="light"] .legal-nav a:hover,
html[data-theme="light"] .legal-nav a[aria-current="page"] { color: #132136 !important; }
html[data-theme="light"] .button-secondary,
html[data-theme="light"] .site-clean-v14 .button-secondary {
  background: #ffffff !important;
  color: #1c2d43 !important;
  border-color: #b9c9dc !important;
}
html[data-theme="light"] .button-secondary:hover { background: #eef4fb !important; color: #102137 !important; border-color: #7eaae8 !important; }
html[data-theme="light"] .plan-card,
html[data-theme="light"] .subscribe-panel,
html[data-theme="light"] .guarantee-strip,
html[data-theme="light"] .xp-account-actions a,
html[data-theme="light"] .xp-support-links a,
html[data-theme="light"] .faq-list details { background: #fff !important; color: #26374d !important; }
html[data-theme="light"] .plan-card h3,
html[data-theme="light"] .plan-price strong,
html[data-theme="light"] .subscribe-context h3,
html[data-theme="light"] .xp-account-actions strong,
html[data-theme="light"] .xp-support-links strong,
html[data-theme="light"] .faq-list summary,
html[data-theme="light"] .faq-list details[open] summary { color: #132136 !important; }
html[data-theme="light"] .plan-select { color: #17314e !important; background: #f8fbff !important; border-color: #a9bfda !important; }
html[data-theme="light"] .plan-card:hover .plan-select,
html[data-theme="light"] .plan-card:focus-visible .plan-select,
html[data-theme="light"] .plan-card.selected .plan-select { color: #0d3563 !important; background: #eaf3ff !important; border-color: #659ce6 !important; }
html[data-theme="light"] .plan-card.is-featured::after,
html[data-theme="light"] .button-primary,
html[data-theme="light"] .subscribe-button { color: #fff !important; }
html[data-theme="light"] .selected-plan-info,
html[data-theme="light"] .subscribe-form input { background: #fff !important; color: #1b2c42 !important; }
html[data-theme="light"] .legal-consent,
html[data-theme="light"] .legal-consent span,
html[data-theme="light"] .legal-consent a { color: #42556e !important; }
html[data-theme="light"] .site-footer,
html[data-theme="light"] .site-footer a { color: #42556e !important; }
html[data-theme="light"] .footer-brand .brand-copy strong { color: #132136 !important; }
html[data-theme="light"] .v141-hero { background: radial-gradient(circle at 78% 43%,rgba(55,116,224,.14),transparent 31%),radial-gradient(circle at 92% 14%,rgba(112,75,230,.08),transparent 25%),linear-gradient(135deg,#f8fbff,#eef4fa); }
html[data-theme="light"] .v141-hero-grid { opacity: .34; }
html[data-theme="light"] .clean-product-demo.hero-demo { background: #101923; border-color: #9bb7dc; box-shadow: 0 30px 75px rgba(48,70,100,.19),0 0 0 8px rgba(57,109,220,.025); }
html[data-theme="light"] .v141-media-tag { background: rgba(18,29,43,.9); color: #f4f8fd; }
html[data-theme="light"] .v141-command-strip { background: rgba(255,255,255,.76); }









html[data-theme="light"] .account-page .card,
html[data-theme="light"] .account-page .account-section,
html[data-theme="light"] .account-page .summary-item,
html[data-theme="light"] .account-page .machine-line,
html[data-theme="light"] .account-page .history-row,
html[data-theme="light"] .account-page .training-card,
html[data-theme="light"] .account-page .guarantee-box{ background: #fff !important; color: #26374d !important; border-color: #d3deeb !important; }
html[data-theme="light"] .account-page h1,
html[data-theme="light"] .account-page h2,
html[data-theme="light"] .account-page h3,
html[data-theme="light"] .account-page strong,
html[data-theme="light"] .account-page .summary-item strong,
html[data-theme="light"] .account-page .machine-name,
html[data-theme="light"] .account-page .training-card strong { color: #132136 !important; }
html[data-theme="light"] .account-page p,
html[data-theme="light"] .account-page span,
html[data-theme="light"] .account-page small,
html[data-theme="light"] .account-page li,
html[data-theme="light"] .account-page label { color: #53667e; }
html[data-theme="light"] .account-page .account-nav-button,
html[data-theme="light"] .account-page .account-small-button { background: #fff !important; color: #475d76 !important; border-color: #cbd8e7 !important; }
html[data-theme="light"] .account-page .account-nav-button.active,
html[data-theme="light"] .account-page .account-nav-button:hover,
html[data-theme="light"] .account-page .account-small-button:hover:not(:disabled) { background: #eaf3ff !important; color: #153658 !important; border-color: #78a8e9 !important; }
html[data-theme="light"] .account-page .btn { background: #2f73e8 !important; color: #fff !important; border-color: #2f73e8 !important; }
html[data-theme="light"] .account-page .btn:hover:not(:disabled) { background: #225fca !important; color: #fff !important; }
html[data-theme="light"] .account-page .status-chip { background: #edf7f1 !important; color: #14633c !important; border-color: #a8d8bd !important; }
html[data-theme="light"] .account-page .status-chip.status-pending { background: #fff7e8 !important; color: #805214 !important; border-color: #e4c784 !important; }
html[data-theme="light"] .account-page .status-chip.status-inactive { background: #fff0f0 !important; color: #923b45 !important; border-color: #e3afb5 !important; }
html[data-theme="light"] .account-page .logout-button,
html[data-theme="light"] .account-page .account-back,
html[data-theme="light"] .account-page .forgot-link { color: #45617f !important; }
html[data-theme="light"] .account-page .logout-button:hover,
html[data-theme="light"] .account-page .account-back:hover,
html[data-theme="light"] .account-page .forgot-link:hover { color: #173a61 !important; }
html[data-theme="light"] .legal-page,
html[data-theme="light"] .legal-page p,
html[data-theme="light"] .legal-page li { color: #42566f !important; }
html[data-theme="light"] .legal-page h1,
html[data-theme="light"] .legal-page h2,
html[data-theme="light"] .legal-page h3 { color: #132136 !important; }

/* ---------- TIPOGRAFIA: SEM MICROTEXTOS ---------- */
.site-polish-v141 .clean-eyebrow{ font-size: 13px !important; line-height: 1.35; }
.site-polish-v141 .plan-topline,
.site-polish-v141 .plan-topline b,
.site-polish-v141 .plan-highlight,
.site-polish-v141 .plan-select{ font-size: 12px !important; }
.site-polish-v141 .site-nav a { font-size: 13px !important; }

/* ---------- RESPONSIVO ---------- */
@media (max-width: 1100px) {
  .site-polish-v141 .v141-hero .clean-hero-grid { grid-template-columns: 1fr; }
  .site-polish-v141 .v141-hero { min-height: auto; }
  .site-polish-v141 .v141-stage-wrap { max-width: 860px; }
  .site-polish-v141 .v141-coordinate { display: none; }
  .site-polish-v141 .v141-features .clean-feature-row { min-height: 0; }
}
@media (max-width: 760px) {
  .site-polish-v141 .v141-hero { padding: 126px 0 90px; }
  .site-polish-v141 .v141-ruler { display: none; }
  .site-polish-v141 .v141-hero h1 { font-size: clamp(50px,14vw,74px); }
  .site-polish-v141 .v141-scroll-cue { display: none; }
  .site-polish-v141 .v141-command-strip > div { min-height: 56px; width: max-content; padding: 0 20px; gap: 14px; font-size: 12px; }
  .site-polish-v141 .v141-features .clean-feature-row { padding: 72px 0; }
  .site-polish-v141 .v141-features .clean-feature-row::before { top: 26px; font-size: 92px; }
  .site-polish-v141 .v141-feature-media,
  .site-polish-v141 .v141-feature-media img { min-height: 240px; }
  .site-polish-v141 .v141-media-tag { left: 10px; bottom: 10px; font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .site-polish-v141 .v141-ambient i { filter: blur(70px); }
  .site-polish-v141 .clean-product-demo.hero-demo,
  .site-polish-v141 .v141-feature-media img { transform: none !important; transition: none !important; }
}
