/* Actualización visual de recursos públicos. No se aplica a Crear PAE. */
:root {
  --nnr-dark: #102038;
  --nnr-mint: #64ebd5;
  --nnr-line: #d8e6ea;
  --nnr-muted: #456075;
}

body.nn-page-sync .sitebar .inner {
  max-width: 1390px;
  width: calc(100% - 28px);
}
body.nn-page-sync .sitebar .brand { flex: 0 0 auto; }
body.nn-page-sync .nav.nn-nav-organized { gap: 5px 10px; }
body.nn-page-sync .nav.nn-nav-organized .nn-nav-resources a { padding: 7px 9px; }
@media (min-width: 1250px) {
  body.nn-page-sync .nav.nn-nav-organized .nn-nav-primary,
  body.nn-page-sync .nav.nn-nav-organized .nn-nav-resources { flex-wrap: nowrap; }
  body.nn-page-sync .nav.nn-nav-organized .nn-nav-group { gap: 5px; }
}

body.nn-page-sync .page-hero,
body.nn-page-sync .md-hero,
body.nn-page-sync .scale-public-hero,
body.nn-page-sync .install-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: radial-gradient(circle at 89% 13%, #155970 0, #102c47 28%, transparent 50%), var(--nnr-dark);
  color: #fff;
  border: 1px solid #284d63;
  border-radius: 30px;
  box-shadow: 0 25px 65px #11284925;
}
body.nn-page-sync .page-hero,
body.nn-page-sync .md-hero { padding: clamp(25px, 4vw, 42px); }
body.nn-page-sync .page-hero h1,
body.nn-page-sync .md-hero h1,
body.nn-page-sync .scale-public-hero h1,
body.nn-page-sync .install-copy h1 {
  color: #fff;
  font-size: clamp(32px, 3.8vw, 49px);
  line-height: 1.12;
  letter-spacing: -.035em;
  max-width: 900px;
}
body.nn-page-sync .page-hero p,
body.nn-page-sync .md-hero p,
body.nn-page-sync .scale-public-hero p,
body.nn-page-sync .install-copy p,
body.nn-page-sync .install-copy .install-note { color: #e1eef4; font-size: clamp(16px, 1.3vw, 18px); }
body.nn-page-sync .page-hero .eyebrow,
body.nn-page-sync .md-hero .eyebrow,
body.nn-page-sync .scale-public-hero .eyebrow,
body.nn-page-sync .install-hero .eyebrow {
  background: #ffffff16;
  border-color: #8bd8d2;
  color: #a4f7e8;
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.nn-page-sync .md-hero .danger-note {
  background: #ffffffeb;
  color: #243d52;
  border-radius: 15px;
  font-size: 15px;
  padding: 14px 17px;
}
body.nn-page-sync .scale-public-hero { padding: clamp(25px, 4vw, 42px); }
body.nn-page-sync .scale-metric {
  background: #ffffffef;
  border-color: #c7e9e4;
  color: #163346;
}
body.nn-page-sync .scale-public-hero .btn.dark,
body.nn-page-sync .install-actions .btn.dark {
  background: var(--nnr-mint);
  border-color: var(--nnr-mint);
  color: var(--nnr-dark);
}
body.nn-page-sync .scale-public-hero .btn:not(.dark),
body.nn-page-sync .install-actions .btn:not(.dark) {
  background: #ffffff16;
  border-color: #b4d9df;
  color: #fff;
}
body.nn-page-sync .install-hero .install-grid { min-height: 370px; }
body.nn-page-sync .install-hero .install-copy { padding: clamp(27px, 4vw, 48px); }
body.nn-page-sync .install-hero .app-showcase { min-height: 370px; }
body.nn-account-refresh .page-hero.auth-box { max-width: none; }
body.nn-account-refresh .account-tab {
  border-radius: 999px;
  background: #fff;
  border-color: #d8e6ea;
  color: #102038;
}
body.nn-account-refresh .account-tab.active,
body.nn-account-refresh .account-tab[aria-selected="true"] {
  background: #102038;
  border-color: #102038;
  color: #fff;
  box-shadow: 0 0 0 3px #64ebd555;
}
body.nn-account-refresh .account-view { border-radius: 25px; box-shadow: 0 15px 40px #10203312; }

body.nn-page-sync .nn-journey,
.nn-home-paths {
  margin: 18px 0 24px;
  padding: clamp(20px, 3vw, 28px);
  background: #fff;
  border: 1px solid var(--nnr-line);
  border-radius: 26px;
  box-shadow: 0 15px 40px #10203310;
}
.nn-journey-head { display: flex; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 17px; }
.nn-journey-kicker { color: #087b77; font: 800 12px/1.3 Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.nn-journey h2,
.nn-home-paths h2 { margin: 5px 0 0; font-size: clamp(23px, 2.7vw, 31px); line-height: 1.17; color: #102033; }
.nn-journey-head p { max-width: 47ch; margin: 0; color: var(--nnr-muted); font-size: 15px; line-height: 1.5; }
.nn-journey-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.nn-journey-link {
  display: block; min-width: 0; padding: 17px 18px;
  color: #102033; text-decoration: none;
  background: linear-gradient(140deg,#f5fafc,#f0fbf8);
  border: 1px solid #d8e6ea; border-radius: 19px;
  transition: transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.nn-journey-link .nn-journey-num { display: block; color: #087b77; font-weight: 900; font-size: 13px; margin-bottom: 5px; }
.nn-journey-link strong { display: block; font-size: 17px; line-height: 1.25; }
.nn-journey-link span:last-child { display: block; margin-top: 5px; color: #476076; font-size: 14px; line-height: 1.45; }
.nn-journey-link:hover,
.nn-journey-link:focus-visible { border-color: #25bba9; box-shadow: 0 12px 26px #0c7f771e; transform: translateY(-2px); }
.nn-journey-link:focus-visible { outline: 3px solid #158c89; outline-offset: 2px; }
.nn-journey-link:last-child { background: #102e43; border-color: #102e43; color: #fff; }
.nn-journey-link:last-child .nn-journey-num { color: #85efda; }
.nn-journey-link:last-child span:last-child { color: #d6e9ef; }
body.nn-page-sync [id] { scroll-margin-top: 170px; }

body.nn-page-sync .tag-box label {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 10px; margin: 3px 0;
  border: 1px solid #e0e9ed; border-radius: 11px;
  background: #f8fbfc; line-height: 1.32; cursor: pointer;
}
body.nn-page-sync .tag-box label:has(input:checked) { border-color: #17aaa0; background: #e6faf5; color: #0b554f; }
body.nn-page-sync .tag-box input { accent-color: #087f79; width: 17px; height: 17px; }
body.nn-page-sync .tag-box label:focus-within { outline: 2px solid #168d89; outline-offset: 1px; }
.nn-result-note { padding: 12px 15px; background: #f1faf9; color: #254756; border-left: 4px solid #0e9e94; border-radius: 10px; font-size: 15px; line-height: 1.55; }
body.nn-page-sync .md-tabs { top: 105px; }

.nn-tech-index { margin: 18px 0; padding: 19px; background: #fff; border: 1px solid var(--nnr-line); border-radius: 23px; }
.nn-tech-index h2 { margin: 0 0 5px; font-size: 24px; }
.nn-tech-index p { margin: 0 0 14px; color: var(--nnr-muted); }
.nn-tech-index div { display: flex; flex-wrap: wrap; gap: 8px; }
.nn-tech-index a { padding: 8px 12px; border: 1px solid #cce6e1; border-radius: 999px; background: #f1fbf8; color: #12394a; font-size: 14px; font-weight: 800; text-decoration: none; }
.nn-tech-index a:hover,.nn-tech-index a:focus-visible { background: #dbf8f0; border-color: #16a99a; }
.nn-home-paths { max-width: 1180px; margin: 10px auto 20px; }
.nn-home-paths .nn-journey-grid { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 17px; }
.nn-home-paths .nn-journey-link:last-child { background: linear-gradient(140deg,#f5fafc,#f0fbf8); border-color: #d8e6ea; color: #102033; }
.nn-home-paths .nn-journey-link:last-child .nn-journey-num { color: #087b77; }
.nn-home-paths .nn-journey-link:last-child span:last-child { color: #476076; }
.hero .hero-text h2 { font-size: clamp(36px,5vw,58px); line-height: 1.04; margin: 0 0 16px; letter-spacing: -1px; }

@media (max-width: 1249px) {
  body.nn-page-sync .md-tabs { top: 154px; }
}
@media (max-width: 980px) {
  .nn-journey-head { display: block; }
  .nn-journey-head p { margin-top: 9px; }
  .nn-home-paths .nn-journey-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  body.nn-page-sync .sitebar .inner { width: calc(100% - 20px); }
  body.nn-page-sync .nav.nn-nav-organized .nn-nav-group { flex-wrap: nowrap !important; }
  body.nn-page-sync .page-hero, body.nn-page-sync .md-hero,
  body.nn-page-sync .scale-public-hero { padding: 25px 21px; border-radius: 24px; }
  body.nn-page-sync .install-hero .install-grid { grid-template-columns: 1fr; }
  body.nn-page-sync .install-hero .app-showcase { min-height: 280px; }
  body.nn-page-sync .md-tabs { top: 0; position: relative; }
  body.nn-page-sync [id] { scroll-margin-top: 215px; }
  .nn-journey-grid { grid-template-columns: 1fr; }
  .nn-home-paths { margin: 12px; }
  .nn-home-paths .nn-journey-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .nn-journey-link { transition: none; }
}
