/* Public homepage only. Authentication and application layouts retain their styles. */
#loginView.landing-refresh { background: radial-gradient(ellipse at 78% 12%, #132c413d, transparent 38%), #090f19; font-family: "Segoe UI", Arial, sans-serif; }
#loginView.landing-refresh .login-landing-shell { width: min(1280px, calc(100% - 64px)); }
#loginView.landing-refresh .login-landing-head { margin-top: 18px; border-radius: 14px; box-shadow: none; background: #0e1726ed; }
#loginView.landing-refresh .login-landing-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 50px; min-height: 640px; padding: 64px 0 72px; }
#loginView.landing-refresh .login-landing-copy h1 { font-size: clamp(38px, 4.2vw, 60px); line-height: 1.12; letter-spacing: -.045em; }
#loginView.landing-refresh .login-landing-copy h1 em { color: #79e0c3; background: none; -webkit-text-fill-color: currentColor; }
#loginView.landing-refresh .hero-tag-3d { color: #9fdccc; border-color: #36574f; background: #142623; box-shadow: none; font-size: 10px; }
#loginView.landing-refresh .badge-dot-live { background: #79e0c3; animation: none; box-shadow: none; }
#loginView.landing-refresh .login-landing-copy > p { color: #a8b7ca; }
#loginView.landing-refresh .login-landing-primary, #loginView.landing-refresh .login-landing-create { background: #79e0c3; color: #09251e; box-shadow: none; border: 1px solid #79e0c3; border-radius: 9px; }
#loginView.landing-refresh .login-landing-primary:hover, #loginView.landing-refresh .login-landing-create:hover { background: #a1eed9; transform: translateY(-1px); }
#loginView.landing-refresh .login-landing-secondary { border-radius: 9px; box-shadow: none; }
#loginView.landing-refresh .login-landing-actions { gap: 12px; flex-wrap: wrap; margin-bottom: 22px; }
#loginView.landing-refresh .login-landing-points { gap: 8px 16px; font-size: 11px; }
#loginView.landing-refresh .login-landing-copy > .landing-access-note { margin: 24px 0 0; font-size: 12px; color: #9aaac0; }
#loginView .landing-access-note button { padding: 4px 0; min-height: 32px; border: 0; background: none; color: #c9d8ea; font: inherit; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
#loginView .landing-workspace-preview { min-width: 0; margin: 0; border: 1px solid #304255; border-radius: 18px; overflow: hidden; background: #101b2b; box-shadow: 0 32px 80px #0005; transform: rotate(-1deg); }
#loginView .preview-window-bar { display: flex; align-items: center; gap: 14px; padding: 16px 20px; border-bottom: 1px solid #26374b; color: #a3b4c9; font-size: 10px; background: #142033; }
#loginView .preview-window-dots { letter-spacing: 3px; color: #65788f; white-space: nowrap; }
#loginView .preview-example { margin-left: auto; font-size: 8px; letter-spacing: .08em; color: #83b3a7; }
#loginView .preview-workspace-body { padding: 26px; }
#loginView .preview-workspace-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
#loginView .preview-eyebrow { color: #89a1bb; font-size: 9px; font-weight: 700; letter-spacing: .15em; }
#loginView .preview-workspace-heading h2 { margin: 8px 0 6px; font-size: clamp(18px, 1.8vw, 24px); letter-spacing: -.03em; color: #eff5ff; }
#loginView .preview-workspace-heading p { margin: 0; color: #9eafc4; font-size: 11px; }
#loginView .preview-date { flex-shrink: 0; border: 1px solid #314359; border-radius: 7px; padding: 7px 10px; color: #c0cfe0; font-size: 9px; }
#loginView .preview-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 24px 0; }
#loginView .preview-summary > div { border: 1px solid #2b3b50; border-radius: 10px; padding: 12px 14px; background: #172437; }
#loginView .preview-summary span { color: #b3c2d5; font-size: 10px; }
#loginView .preview-summary strong { display: flex; align-items: center; justify-content: space-between; margin-top: 9px; font-size: 27px; font-weight: 650; color: #f1f6ff; }
#loginView .preview-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
#loginView .preview-dot.amber { background: #edbf76; }
#loginView .preview-dot.blue { background: #86b8ff; }
#loginView .preview-dot.green { background: #79e0c3; }
#loginView .preview-orders-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding-bottom: 12px; font-size: 11px; color: #dae5f2; }
#loginView .preview-orders-heading > span { font-size: 9px; color: #9caec5; }
#loginView .preview-order { display: flex; align-items: center; gap: 12px; padding: 15px 0; border-top: 1px solid #25354a; }
#loginView .preview-device { display: grid; place-items: center; flex-shrink: 0; width: 34px; height: 38px; border: 1px solid #334962; border-radius: 8px; color: #90a6bf; font-size: 10px; }
#loginView .preview-order b { display: block; color: #e3edfa; font-size: 12px; }
#loginView .preview-order small { display: block; color: #9faec2; font-size: 10px; margin-top: 5px; }
#loginView .preview-status { margin-left: auto; flex-shrink: 0; border-radius: 6px; padding: 6px 8px; font-size: 9px; }
#loginView .preview-status.amber { background: #3b3023; color: #f0cb91; }
#loginView .preview-status.blue { background: #203653; color: #a3caff; }
#loginView .preview-status.green { background: #183d34; color: #8de3c9; }
#loginView .preview-update { display: flex; align-items: center; gap: 12px; padding: 14px; margin-top: 14px; background: #122e2a; border: 1px solid #275047; border-radius: 10px; }
#loginView .preview-update > span { color: #79e0c3; font-size: 20px; }
#loginView .preview-update b { display: block; color: #b5eadc; font-size: 11px; }
#loginView .preview-update small { display: block; color: #91b7ae; font-size: 10px; margin-top: 5px; }
#loginView .landing-workspace-preview figcaption { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 14px 20px; background: #0d1725; color: #a6b6cb; font-size: 9px; }
#loginView .landing-workspace-preview figcaption a { margin-left: auto; color: #aadfdf; text-decoration: none; padding: 5px 0; }
#loginView.landing-refresh .landing-metrics-strip { border-radius: 12px; background: #111b29; box-shadow: none; padding: 28px 12px; border: 1px solid #263649; }
#loginView.landing-refresh .metric-box { align-items: flex-start; text-align: left; padding: 0 20px; gap: 10px; }
#loginView.landing-refresh .metric-box strong { font-size: 18px; color: #e0eaf7; background: none; -webkit-text-fill-color: currentColor; }
#loginView.landing-refresh .metric-box span { font-size: 12px; line-height: 1.6; }
#loginView.landing-refresh .metric-box .landing-step-number { color: #79e0c3; font-size: 10px; letter-spacing: .08em; font-weight: 700; }
#loginView.landing-refresh .login-landing-section-head h2 { max-width: 700px; margin-left: auto; margin-right: auto; letter-spacing: -.035em; }
#loginView.landing-refresh .card-3d { background: #111c2b; border-color: #29394d; box-shadow: none; border-radius: 14px; transform: none !important; }
#loginView.landing-refresh .card-3d:hover { border-color: #527c77; }
#loginView.landing-refresh .card-3d-glare { display: none; }
#loginView.landing-refresh :is(a,button):focus-visible { outline: 2px solid #9cebd6; outline-offset: 4px; }
#loginView.landing-refresh [id] { scroll-margin-top: 120px; }
@media (max-width: 1080px) {
  #loginView.landing-refresh .login-landing-hero { grid-template-columns: 1fr; gap: 40px; padding: 40px 0; }
  #loginView.landing-refresh .login-landing-copy { text-align: center; max-width: 720px; margin: auto; }
  #loginView.landing-refresh .login-landing-copy h1 { font-size: clamp(38px, 6vw, 60px); }
  #loginView.landing-refresh .login-landing-copy > .landing-access-note { margin: 24px auto 0; }
  #loginView .landing-workspace-preview { width: min(100%, 680px); margin: auto; transform: none; }
}
@media (max-width: 600px) {
  #loginView.landing-refresh .login-landing-shell { width: calc(100% - 32px); }
  #loginView.landing-refresh .login-landing-head { margin-top: 4px; padding: 12px; border-radius: 12px; }
  #loginView.landing-refresh .login-landing-head nav { display: flex; flex-wrap: wrap; overflow: visible; gap: 8px; justify-content: center; }
  #loginView.landing-refresh .login-landing-head nav a { font-size: 10px; }
  #loginView.landing-refresh .login-landing-hero { padding: 26px 0 36px; gap: 30px; }
  #loginView.landing-refresh .login-landing-copy h1 { font-size: clamp(32px, 8.7vw, 46px); }
  #loginView.landing-refresh .login-landing-copy > p { font-size: 14px; }
  #loginView.landing-refresh .login-landing-actions > * { width: 100%; min-height: 48px; }
  #loginView .preview-window-bar { padding: 12px; gap: 8px; font-size: 8px; }
  #loginView .preview-window-dots { display: none; }
  #loginView .preview-example { font-size: 7px; }
  #loginView .preview-workspace-body { padding: 18px 14px; }
  #loginView .preview-date { display: none; }
  #loginView .preview-summary { gap: 7px; margin: 20px 0; }
  #loginView .preview-summary > div { padding: 10px; }
  #loginView .preview-summary strong { font-size: 24px; }
  #loginView .preview-order { gap: 8px; }
  #loginView .preview-device { display: none; }
  #loginView .landing-workspace-preview figcaption { padding: 12px 14px; }
  #loginView.landing-refresh .landing-metrics-strip { grid-template-columns: 1fr; gap: 0; padding: 4px 20px; }
  #loginView.landing-refresh .metric-box { padding: 20px 0; border: 0; border-bottom: 1px solid #29394d; }
  #loginView.landing-refresh .metric-box:last-child { border-bottom: 0; }
  #loginView.landing-refresh .cards-3d-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  #loginView.landing-refresh *, #loginView.landing-refresh *::before, #loginView.landing-refresh *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Página pública: leitura curta, comparação direta e controles acessíveis. */
#loginView .landing-menu-toggle { display: none; }
#loginView.landing-refresh [id] { scroll-margin-top: 24px; }
#loginView.landing-refresh .login-landing-copy > .landing-price-note { margin: 16px 0 0; font-size: 14px; line-height: 1.6; }
#loginView .landing-price-note a { color: #9cebd6; display: inline-block; padding: 8px 0; text-underline-offset: 3px; }
#loginView .landing-plan-included { padding: 20px 24px; margin: 24px 0 32px; border: 1px solid #36574f; border-radius: 14px; background: #11231f; color: #d8ede6; }
#loginView .landing-plan-included p { font-size: 15px; line-height: 1.7; margin: 8px 0; }
#loginView .landing-plan-included small { color: #b8c9c5; font-size: 13px; line-height: 1.5; }
#loginView.landing-refresh .landing-pricing-section { padding: 48px 0; margin-top: 12px; }
#loginView.landing-refresh .pricing-card-desc { min-height: 0; line-height: 1.7; }
#loginView.landing-refresh .pricing-features { margin: 20px 0; }
#loginView.landing-refresh .landing-pricing-footer-note p { max-width: 800px; font-size: 13px; line-height: 1.6; }
#loginView.landing-refresh .section-3d-features { padding: 40px 0; }
#loginView.landing-refresh .card-3d { padding: 22px; }
#loginView.landing-refresh .card-3d p { font-size: 14px; line-height: 1.6; }
#loginView.landing-refresh .landing-modules-section { padding: 0; margin: 24px 0 40px; }
#loginView .landing-modules-summary { padding: 20px; border: 1px solid #304255; border-radius: 12px; color: #e5efff; background: #111c2b; font-weight: 700; cursor: pointer; }
#loginView .landing-modules-summary span { display: block; margin: 8px 0 0 18px; font-size: 14px; line-height: 1.5; color: #a8b7ca; font-weight: 400; }
#loginView .landing-modules-section[open] .landing-modules-head { margin-top: 32px; }
#loginView summary:focus-visible { outline: 2px solid #9cebd6; outline-offset: 3px; }
#loginView .auth-password-field { display: grid; gap: 8px; min-width: 0; }
#loginView .auth-password-field > label { font-size: 12px; font-weight: 700; text-transform: uppercase; margin: 0; }
#loginView .auth-password-control { display: flex; align-items: stretch; gap: 8px; min-width: 0; }
#loginView .auth-password-control input { flex: 1; width: 0; min-width: 0; }
#loginView .auth-password-control button { flex: 0 0 auto; min-width: 72px; min-height: 44px; padding: 8px; border: 1px solid #3e526b; border-radius: 10px; background: #172438; color: #e5efff; font: inherit; font-size: 13px; cursor: pointer; }
#loginView .auth-recovery { margin-top: 16px; border-top: 1px solid #304255; padding-top: 8px; }
#loginView .auth-recovery summary { padding: 12px 0; min-height: 44px; box-sizing: border-box; color: #9cebd6; cursor: pointer; }
#loginView .auth-recovery p, #loginView .auth-recovery small { color: #b8c9df; font-size: 13px; line-height: 1.6; }
#loginView .auth-recovery a { display: inline-flex; align-items: center; min-height: 44px; color: #9cebd6; }
#loginView .auth-recovery small { display: block; margin-top: 8px; }
@media (max-width: 768px) {
  #loginView.landing-refresh .login-tour-heading,
  #loginView.landing-refresh .login-tour-footer { flex-direction: column; align-items: stretch; gap: 16px; }
  #loginView.landing-refresh .login-tour-demo-badge { align-self: flex-start; }
  #loginView.landing-refresh .login-tour-heading h2 { font-size: 28px; line-height: 1.2; }
  #loginView.landing-refresh .login-tour-heading p { max-width: none; font-size: 15px; }
  #loginView.landing-refresh .login-tour-footer p { max-width: none; width: 100%; font-size: 13px; line-height: 1.6; }
  #loginView.landing-refresh .login-tour { padding: 28px 0; }
  #loginView.landing-refresh .login-tour-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #loginView.landing-refresh .login-tour-tabs button { padding: 10px 8px; font-size: 13px; }
  #loginView.landing-refresh .login-landing-section-head h2 { font-size: 28px; line-height: 1.2; }
}
@media (max-width: 600px) {
  #loginView .login-card input:not([type="checkbox"]):not([type="radio"]) { font-size: 16px; }
  #loginView.landing-refresh .login-landing-head { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; padding: 8px !important; margin-top: 8px; }
  #loginView.landing-refresh .login-landing-logo { grid-column: 1; grid-row: 1; min-width: 0; gap: 6px; }
  #loginView.landing-refresh .login-landing-logo strong { font-size: 14px; }
  #loginView.landing-refresh .login-landing-logo .brand-mark { width: 28px; height: 28px; min-width: 28px; border-radius: 8px; }
  #loginView.landing-refresh .login-landing-head-actions { grid-column: 2; grid-row: 1; margin: 0; width: auto; }
  #loginView.landing-refresh .login-landing-head-actions .login-landing-create { display: none; }
  #loginView.landing-refresh .login-landing-enter { width: auto !important; min-width: 54px !important; min-height: 44px; padding: 8px !important; font-size: 13px !important; }
  #loginView.landing-enhanced .landing-menu-toggle { display: block; grid-column: 3; grid-row: 1; min-height: 44px; min-width: 54px; padding: 8px; border: 1px solid #3e526b; border-radius: 9px; background: #172438; color: #e5efff; font: inherit; font-size: 13px; cursor: pointer; }
  #loginView.landing-refresh .login-landing-head #landingMainNav { grid-column: 1 / -1; grid-row: 2; width: 100%; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  #loginView.landing-refresh.landing-enhanced:not(.landing-menu-open) .login-landing-head #landingMainNav { display: none; }
  #loginView.landing-refresh .login-landing-head #landingMainNav a { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px; box-sizing: border-box; font-size: 13px; color: #d3e0ef; }
  #loginView.landing-refresh .login-landing-hero { min-height: 0; padding: 24px 0; gap: 0; }
  #loginView.landing-refresh .login-landing-copy h1 { font-size: clamp(28px, 8vw, 42px); line-height: 1.14; margin: 18px 0; }
  #loginView.landing-refresh .login-landing-copy > p { font-size: 15px; line-height: 1.55; margin-bottom: 20px; }
  #loginView.landing-refresh .login-landing-actions { margin: 18px 0 12px; gap: 10px; }
  #loginView.landing-refresh .login-landing-copy > .landing-access-note { margin-top: 8px; }
  #loginView.landing-refresh .landing-workspace-preview { display: none; }
  #loginView.landing-refresh .section-3d-features { padding: 28px 0; }
  #loginView.landing-refresh .login-landing-section-head { margin-bottom: 20px; }
  #loginView.landing-refresh .cards-3d-grid { gap: 12px; }
  #loginView.landing-refresh .card-3d { padding: 18px; }
  #loginView.landing-refresh .card-3d-icon-wrap { width: 36px; height: 36px; margin-bottom: 12px; }
  #loginView.landing-refresh .card-3d h3 { font-size: 17px; margin-bottom: 8px; }
  #loginView.landing-refresh .card-3d-tag { display: none; }
  #loginView .landing-plan-included { padding: 16px; }
  #loginView.landing-refresh .login-landing-whatsapp { display: none; }
}
