/* Juvenc design system. See DESIGN.md. Fonts and identity are bundled locally. */
/* Latin retains the official outlines, metrics and shaping. The full originals
   cover the exclusive complement; existing fallbacks still cover other scripts. */
@font-face{font-family:Inter;src:url('fonts/Inter/Inter-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0250-02FF,U+0370-1DFF,U+1F00-1FFF,U+2070-209F,U+20D0-20FF,U+2150-218F,U+2200-FEFE,U+FF00-FFFC,U+FFFE-10FFFF}
@font-face{font-family:Inter;src:url('fonts/Inter/Inter-Regular-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-024F,U+0300-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF,U+FEFF,U+FFFD}
@font-face{font-family:Inter;src:url('fonts/Inter/Inter-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0250-02FF,U+0370-1DFF,U+1F00-1FFF,U+2070-209F,U+20D0-20FF,U+2150-218F,U+2200-FEFE,U+FF00-FFFC,U+FFFE-10FFFF}
@font-face{font-family:Inter;src:url('fonts/Inter/Inter-Medium-latin.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0000-024F,U+0300-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF,U+FEFF,U+FFFD}
@font-face{font-family:Inter;src:url('fonts/Inter/Inter-SemiBold.woff2') format('woff2');font-weight:600 900;font-style:normal;font-display:swap;unicode-range:U+0250-02FF,U+0370-1DFF,U+1F00-1FFF,U+2070-209F,U+20D0-20FF,U+2150-218F,U+2200-FEFE,U+FF00-FFFC,U+FFFE-10FFFF}
@font-face{font-family:Inter;src:url('fonts/Inter/Inter-SemiBold-latin.woff2') format('woff2');font-weight:600 900;font-style:normal;font-display:swap;unicode-range:U+0000-024F,U+0300-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito Sans';src:url('fonts/Nunito-Sans/NunitoSans-ExtraBold.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap;unicode-range:U+0250-02FF,U+0370-1DFF,U+1F00-1FFF,U+2070-209F,U+20D0-20FF,U+2150-218F,U+2200-FEFE,U+FF00-FFFC,U+FFFE-10FFFF}
@font-face{font-family:'Nunito Sans';src:url('fonts/Nunito-Sans/NunitoSans-ExtraBold-latin.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap;unicode-range:U+0000-024F,U+0300-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito Sans';src:url('fonts/Nunito-Sans/NunitoSans-Black.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap;unicode-range:U+0250-02FF,U+0370-1DFF,U+1F00-1FFF,U+2070-209F,U+20D0-20FF,U+2150-218F,U+2200-FEFE,U+FF00-FFFC,U+FFFE-10FFFF}
@font-face{font-family:'Nunito Sans';src:url('fonts/Nunito-Sans/NunitoSans-Black-latin.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap;unicode-range:U+0000-024F,U+0300-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF,U+FEFF,U+FFFD}
:root {
  --juvenc-lima:#d4f871; --juvenc-carvao:#111714; --juvenc-marfim:#f5f3ec;
  --juvenc-musgo:#294638; --juvenc-nevoa:#adb8af;
  --font-sans-primary:Inter;
  --font-display:'Nunito Sans',var(--font-sans);
}
:root.platform-windows:not(.windows-fluxer-sans) {--font-sans-primary:Inter}
.theme-dark,.theme-light {
  --brand-primary:hsl(76,calc(90.6040268456% * var(--saturation-factor,1)),70.7843137255%);
  --brand-primary-fill:var(--juvenc-carvao);
  --text-on-brand-primary:var(--juvenc-carvao);
  --brand-primary-shade:var(--juvenc-musgo);
  --brand-primary-pressed:#bddf60;
  --brand-primary-light:#e3fba6;
  --brand-primary-light-fill:var(--juvenc-carvao);
  --text-on-brand-primary-light:var(--juvenc-carvao);
}
/* Leave semantic colors, font sizes, monospace and user contrast controls intact. */
.theme-dark {
  --brand-primary-foreground:var(--juvenc-lima);
  --background-primary:var(--juvenc-carvao);
  --background-secondary:#18211b;
  --background-secondary-alt:#141c17;
  --background-tertiary:#0c120e;
  --text-primary:var(--juvenc-marfim);
  --text-secondary:var(--juvenc-nevoa);
}
.theme-light {
  --brand-primary-foreground:var(--juvenc-musgo);
  --background-primary:var(--juvenc-marfim);
  --background-secondary:#ebece4;
  --background-secondary-alt:#e1e6dc;
  --background-tertiary:#d9e1d5;
  --text-primary:var(--juvenc-carvao);
  --text-secondary:var(--juvenc-musgo);
}
h1,h2,h3,[role='heading'] {font-family:var(--font-display);font-weight:800}
html:is(.theme-dark,.theme-light) body :is(h1,h2,h3,[role='heading']),
html.auth-page body :is(h1,h2,h3,[role='heading']) {font-family:var(--font-display);font-weight:800}
/* Preserve a clear typing state without continuous motion in reading areas. */
html.reduced-motion body [class*='Typing.module__dot'] {animation:none!important;opacity:1!important}
@media(prefers-reduced-motion:reduce) {
  html body [class*='Typing.module__dot'] {animation:none!important;opacity:1!important}
}
#juvenc-desktop-download {font-family:Inter,var(--font-sans);background:var(--juvenc-carvao);color:var(--juvenc-marfim);border-color:var(--juvenc-musgo)}
#juvenc-desktop-download a {background:var(--juvenc-lima);color:var(--juvenc-carvao)}
#juvenc-desktop-download .juvenc-wordmark {display:block;width:96px;height:auto}
/* The avatar remains legible in both themes; wordmarks use the official monochrome variant. */
.theme-light img[src$='/brand/wordmark-verde.svg'] {content:url('wordmark-preta.svg')}
.theme-light img[src$='/brand/logo-verde.svg'] {content:url('logo-preta.svg')}
html.auth-page :is([data-flx='app.auth-layout.auth-layout-content.character-background'],[data-flx='app.auth-layout.auth-layout-content.mobile-container']) {background:var(--background-primary)}
html.auth-page :is([data-flx='app.auth-layout.auth-layout-content.character-background'],[data-flx='app.auth-layout.auth-layout-content.mobile-container'])::before {
  content:'';position:absolute;inset:0;background:url('pattern.svg') center/260px;
  width:100%;height:100%;border-radius:0;box-shadow:none;filter:none;
  opacity:.035;animation:none;pointer-events:none;
}
html.auth-page :is([data-flx='app.auth-layout.auth-layout-content.character-background'],[data-flx='app.auth-layout.auth-layout-content.mobile-container'])::after {display:none}
:is([data-flx='auth.flow.auth-card-container.div--4'],[data-flx='app.auth-layout.auth-layout-content.main-content'])::before {
  content:'';display:block;flex-shrink:0;width:100%;height:80px;margin:0 auto 28px;
  background:url('logo-verde.svg') center/contain no-repeat;
}
.theme-light :is([data-flx='auth.flow.auth-card-container.div--4'],[data-flx='app.auth-layout.auth-layout-content.main-content'])::before {background-image:url('logo-preta.svg')}
@media(max-width:480px) {
  :is([data-flx='auth.flow.auth-card-container.div--4'],[data-flx='app.auth-layout.auth-layout-content.main-content'])::before {height:60px;margin-bottom:24px}
}
