/* Nova-Terra — App styles (consume tokens.css) */
@import url('https://fonts.googleapis.com/css2?family=Lexend:wght@300;400;500;600;700&family=Source+Sans+3:wght@300;400;500;600;700&display=swap');

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--font-body);color:var(--fg);background:var(--bg);
  line-height:1.6;-webkit-font-smoothing:antialiased;font-size:16px;
}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.15;font-weight:600;color:var(--fg);margin:0 0 .5em}
a{color:var(--primary);text-decoration:none;transition:color var(--dur) var(--ease)}
a:hover{color:var(--primary-700)}
img{max-width:100%}
:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:6px}
.container{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.eyebrow{font-family:var(--font-head);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:600;color:var(--accent)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:600;
  background:var(--accent);color:var(--on-accent);padding:12px 22px;border-radius:var(--radius-sm);
  border:0;cursor:pointer;font-size:.98rem;transition:transform var(--dur) var(--ease),background var(--dur) var(--ease),box-shadow var(--dur) var(--ease);box-shadow:var(--shadow-sm)}
.btn:hover{background:var(--accent-hover);color:var(--on-accent);text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow)}
.btn:active{transform:translateY(0)}
.btn.ghost{background:transparent;color:var(--nav-fg-strong);border:1px solid rgba(255,255,255,.35);box-shadow:none}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
.btn.secondary{background:var(--primary);color:var(--on-primary)}
.btn.secondary:hover{background:var(--primary-700);color:var(--on-primary)}
.btn.small{padding:8px 14px;font-size:.88rem}

/* Header / nav */
.site-header{position:sticky;top:0;z-index:40;background:var(--nav-bg);color:var(--nav-fg);box-shadow:var(--shadow-sm)}
.site-header .container{display:flex;align-items:center;gap:22px;min-height:66px}
.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:700;color:var(--nav-fg-strong);font-size:1.1rem;letter-spacing:.02em}
.brand:hover{color:var(--nav-fg-strong);text-decoration:none}
.brand .mark{width:30px;height:30px}
.nav{display:flex;gap:20px;align-items:center;margin-left:auto}
.nav a{color:var(--nav-fg);font-size:.95rem;font-weight:500}
.nav a:hover{color:var(--nav-fg-strong)}
.nav .search{display:flex;align-items:center;background:rgba(255,255,255,.1);border-radius:999px;padding:4px 6px 4px 12px}
.nav .search input{border:0;background:transparent;color:#fff;padding:5px 6px;font-size:.9rem;outline:none;width:130px}
.nav .search input::placeholder{color:rgba(255,255,255,.6)}
.nav .search button{border:0;background:transparent;color:#fff;cursor:pointer;display:inline-flex;padding:4px}
.nav-toggle{display:none;margin-left:auto;background:transparent;border:0;color:#fff;cursor:pointer;padding:8px}

/* Hero */
.hero{position:relative;color:#fff;background:linear-gradient(135deg,var(--hero-from),var(--hero-to));overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 90% at 85% 10%,rgba(96,165,250,.25),transparent 60%);pointer-events:none}
.hero .container{position:relative;padding:88px 22px 72px}
.hero h1{font-size:clamp(2rem,4.6vw,3.3rem);color:#fff;max-width:16ch;font-weight:700}
.hero p{font-size:clamp(1.05rem,2vw,1.3rem);color:#D7E3FB;max-width:56ch;margin:.4em 0 1.6em}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}

/* Pillars strip */
.pillars{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.pillars .p{display:inline-flex;align-items:center;gap:8px;color:#CFE0FF;font-family:var(--font-head);font-weight:500;font-size:.9rem;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:7px 14px;border-radius:999px}
.pillars .arrow{color:rgba(255,255,255,.4)}

/* Sections */
.section{padding:64px 0}
.section.alt{background:var(--surface)}
.section-head{max-width:640px;margin-bottom:34px}
.section-head h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.section-head p{color:var(--fg-muted);font-size:1.05rem;margin:.2em 0 0}

/* Gateway "Soy un..." */
.gateway{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.gw{display:block;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:22px;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);box-shadow:var(--shadow-sm)}
.gw:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--primary);text-decoration:none}
.gw .ic{width:40px;height:40px;color:var(--primary);margin-bottom:12px}
.gw h3{font-size:1.15rem;margin-bottom:4px;color:var(--fg)}
.gw p{color:var(--fg-muted);font-size:.94rem;margin:0}
.gw .go{display:inline-flex;align-items:center;gap:6px;margin-top:12px;color:var(--accent);font-weight:600;font-family:var(--font-head);font-size:.9rem}

/* Company grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:20px}
.card{display:block;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);text-decoration:none}
.card .bar{height:6px}
.card .body{padding:20px}
.card .logo-chip{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;color:#fff;font-size:1.1rem;margin-bottom:12px}
.card h3{margin:0 0 6px;font-size:1.2rem;color:var(--fg)}
.card p{margin:0;color:var(--fg-muted);font-size:.95rem}
.badge{display:inline-block;font-size:.72rem;padding:3px 10px;border-radius:999px;background:var(--muted);color:var(--primary);font-weight:600;margin-bottom:10px}

/* Trust strip */
.trust{display:flex;flex-wrap:wrap;gap:14px 40px;align-items:center;justify-content:space-between}
.trust .stat{display:flex;flex-direction:column}
.trust .stat b{font-family:var(--font-head);font-size:2rem;color:var(--fg);font-variant-numeric:tabular-nums;line-height:1}
.trust .stat span{color:var(--fg-muted);font-size:.9rem;margin-top:4px}

/* News */
.news-item{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px;margin-bottom:14px;transition:box-shadow var(--dur) var(--ease)}
.news-item:hover{box-shadow:var(--shadow)}
.news-item h3{margin:0 0 6px;font-size:1.15rem}
.news-item .meta{color:var(--fg-subtle);font-size:.85rem;font-family:var(--font-head)}
.news-item p{margin:.4em 0 0;color:var(--fg-muted)}

/* Projects */
.stage-badge{display:inline-block;font-family:var(--font-head);font-size:.72rem;font-weight:600;padding:3px 10px;border-radius:999px;margin-bottom:10px;background:var(--muted);color:var(--primary)}
.stage-idea{background:#EEF2FF;color:#4338CA}
.stage-validation{background:#ECFEFF;color:#0E7490}
.stage-planning{background:#F0F9FF;color:#0369A1}
.stage-execution{background:#EFF6FF;color:#1D4ED8}
.stage-tracking{background:#F0FDF4;color:#15803D}
.stage-scaling{background:#FEFCE8;color:#A16207}
.stage-finished{background:#DCFCE7;color:#0B6E4F}
.stage-archived{background:#F1F5F9;color:#64748B}
.stage-track{display:flex;flex-wrap:wrap;gap:6px 4px;align-items:flex-start;border:1px solid var(--border-soft);background:var(--surface);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}
.stage-step{flex:1;min-width:84px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;position:relative;opacity:.5}
.stage-step .dotp{width:16px;height:16px;border-radius:50%;background:var(--border);border:3px solid var(--surface);box-shadow:0 0 0 2px var(--border)}
.stage-step .lbl{font-family:var(--font-head);font-size:.78rem;color:var(--fg-muted);font-weight:500}
.stage-step.done{opacity:1}
.stage-step.done .dotp{background:var(--primary);box-shadow:0 0 0 2px var(--primary)}
.stage-step.current{opacity:1}
.stage-step.current .dotp{background:var(--accent);box-shadow:0 0 0 3px var(--accent)}
.stage-step.current .lbl{color:var(--fg);font-weight:700}

/* News detail */
.news-hero{color:#fff;background:linear-gradient(135deg,var(--hero-from),var(--hero-to));padding:52px 0 46px}
.news-hero h1{font-size:clamp(1.7rem,3.4vw,2.5rem);color:#fff;max-width:22ch}
.news-hero .lead-excerpt{font-size:1.15rem;color:#D7E3FB;max-width:60ch;margin:.4em 0 0}

/* Business unit detail */
.crumbs{font-family:var(--font-head);font-size:.85rem;color:rgba(255,255,255,.75);margin-bottom:22px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.crumbs a{color:rgba(255,255,255,.9)}
.crumbs strong{color:#fff;font-weight:600}
.bu-layout{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start}
.bu-aside{position:sticky;top:88px}
.side-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm)}
.side-card .dot{display:inline-block;width:14px;height:14px;border-radius:50%;margin-bottom:10px}
.side-card h3{font-size:1.1rem;margin-bottom:14px}
.facts{margin:0 0 16px}
.facts>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-soft);font-size:.92rem}
.facts>div:last-child{border-bottom:0}
.facts dt{color:var(--fg-subtle);margin:0}
.facts dd{margin:0;color:var(--fg);font-weight:500;text-align:right}
@media (max-width:900px){.bu-layout{grid-template-columns:1fr}.bu-aside{position:static}}
.bu-hero{position:relative;color:#fff;padding:56px 0 52px;overflow:hidden}
.bu-hero .container{position:relative}
.bu-hero .logo-chip{width:74px;height:74px;border-radius:18px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;font-size:2rem;margin-bottom:18px;backdrop-filter:blur(4px)}
.bu-hero img.logo{max-height:88px;margin-bottom:18px;background:rgba(8,12,26,.32);padding:14px 20px;border-radius:16px;backdrop-filter:blur(5px);box-shadow:0 6px 20px rgba(0,0,0,.18)}
.bu-hero h1{font-size:clamp(2rem,4vw,2.9rem);color:#fff;margin-bottom:.2em}
.bu-hero .tag{font-size:1.2rem;color:rgba(255,255,255,.9);max-width:52ch}
.prose{max-width:70ch;font-size:1.08rem;color:var(--fg)}
.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--fg-muted);font-family:var(--font-head);font-weight:500;margin-top:28px}

/* Corporate */
.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:40px}
.value-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm)}
.value-card .ic{width:42px;height:42px;color:var(--accent);margin-bottom:14px}
.value-card h2{font-size:1.25rem}
.value-card p{color:var(--fg-muted);margin:0}
.cta-band{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  background:linear-gradient(135deg,var(--hero-from),var(--hero-to));color:#fff;border-radius:var(--radius-lg);padding:30px 32px}
.cta-band h3{color:#fff;margin-bottom:4px;font-size:1.3rem}
.cta-band p{margin:0;color:#D7E3FB}

/* Footer */
.site-footer{background:var(--nav-bg);color:var(--nav-fg);padding:44px 0 28px;margin-top:20px}
.site-footer .cols{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1fr;gap:30px;margin-bottom:28px}
@media (min-width:641px) and (max-width:1000px){.site-footer .cols{grid-template-columns:1fr 1fr 1fr}}
.site-footer .foot-brand{grid-row:span 1}
.site-footer .foot-social{display:flex;gap:10px;margin-top:16px}
.site-footer .foot-social a{display:grid;place-items:center;width:38px;height:38px;padding:0;border-radius:10px;border:1px solid rgba(255,255,255,.16);color:var(--nav-fg)}
.site-footer .foot-social a:hover{color:#0a0f1e;background:linear-gradient(135deg,#F2C066,#E3A94A);border-color:transparent}
.site-footer h4{color:#fff;font-size:.95rem;text-transform:uppercase;letter-spacing:.08em}
.site-footer a{display:block;color:var(--nav-fg);padding:4px 0;font-size:.92rem}
.site-footer a:hover{color:#fff}
.site-footer .legal{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:.86rem;color:rgba(220,230,250,.7);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* Contact form */
.notice-ok{background:#DCFCE7;color:#0B6E4F;border:1px solid #86EFAC;border-radius:var(--radius);padding:16px 18px;margin-bottom:22px}
.field .err{display:block;color:var(--danger);font-size:.84rem;margin-top:5px}
.field input:invalid,.field textarea:invalid{box-shadow:none}

/* Search page */
.search-box{display:flex;gap:10px;max-width:520px;margin-bottom:28px}
.search-box input{flex:1;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:var(--font-body);background:var(--surface);color:var(--fg)}

/* ===== Admin (token-driven) ===== */
.admin-wrap{display:flex;min-height:100vh}
.admin-side{width:238px;background:var(--nav-bg);color:var(--nav-fg);padding:22px 16px}
.admin-side .brand{margin-bottom:22px}
.admin-side a{display:flex;align-items:center;gap:10px;color:var(--nav-fg);padding:10px 12px;border-radius:var(--radius-sm);margin-bottom:3px;font-weight:500;font-size:.95rem}
.admin-side a:hover{background:rgba(255,255,255,.09);color:#fff;text-decoration:none}
.admin-side .nav-badge{margin-left:auto;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700;border-radius:999px;padding:1px 8px;font-family:var(--font-head)}
.admin-main{flex:1;padding:32px 38px;background:var(--bg)}
.admin-main h1{font-size:1.7rem}
.table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.table th,.table td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--border-soft);font-size:.93rem}
.table th{background:var(--surface-2);color:var(--fg-muted);font-family:var(--font-head);font-weight:600}
.table tr:last-child td{border-bottom:0}
.pill{font-size:.74rem;padding:3px 10px;border-radius:999px;font-weight:600;font-family:var(--font-head)}
.pill.published{background:#DCFCE7;color:#0B6E4F}
.pill.draft{background:#FEF3C7;color:#92400E}
.pill.archived{background:var(--muted);color:var(--fg-subtle)}
.form-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:26px;max-width:720px;box-shadow:var(--shadow-sm)}
.img-field{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.img-field>div:last-child{flex:1;min-width:200px}
.img-prev{width:150px;height:100px;border-radius:10px;overflow:hidden;border:1px solid var(--border-soft);background:#0e1728;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.img-prev img{width:100%;height:100%;object-fit:contain;display:block}
.img-prev.empty{color:var(--fg-subtle,#7788a6);font-size:.8rem;text-align:center;padding:8px}
.field{margin-bottom:18px}
.field label{display:block;font-family:var(--font-head);font-weight:600;margin-bottom:6px;font-size:.9rem;color:var(--fg)}
.field input,.field textarea,.field select{width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.96rem;font-family:var(--font-body);background:var(--surface);color:var(--fg)}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px rgba(30,58,138,.15)}
.field textarea{min-height:130px;resize:vertical}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* Dashboard ejecutivo */
.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:22px 0}
.kpi{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.kpi:hover{transform:translateY(-3px);box-shadow:var(--shadow);text-decoration:none}
.kpi-num{font-family:var(--font-head);font-size:2.1rem;font-weight:700;color:var(--fg);line-height:1;font-variant-numeric:tabular-nums}
.kpi-label{font-family:var(--font-head);font-weight:600;color:var(--fg);font-size:.92rem;margin-top:6px}
.kpi-sub{color:var(--fg-subtle);font-size:.82rem}
.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm)}
.panel.wide{grid-column:1 / -1}
.panel h2{font-size:1.1rem;margin-bottom:16px}
.meter{margin-bottom:14px}
.meter-head{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:5px;font-family:var(--font-head)}
.meter-head b{font-variant-numeric:tabular-nums}
.meter-bar{height:9px;background:var(--muted);border-radius:999px;overflow:hidden}
.meter-bar span{display:block;height:100%;background:var(--primary);border-radius:999px}
.meter-bar.alt span{background:var(--accent)}
.activity{list-style:none;margin:0;padding:0}
.activity li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-soft)}
.activity li:last-child{border-bottom:0}
.activity .dotc{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.activity .act-main{flex:1;font-size:.93rem}
.activity .act-time{color:var(--fg-subtle);font-size:.82rem;font-variant-numeric:tabular-nums}
@media (max-width:820px){.dash-grid{grid-template-columns:1fr}}

/* Login */
.login-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--hero-from),var(--hero-to));padding:20px}
.login-card{background:var(--surface);padding:36px;border-radius:var(--radius-lg);width:360px;box-shadow:var(--shadow-lg)}
.login-card h1{font-size:1.4rem;margin-bottom:2px}
.login-card .sub{color:var(--fg-muted);margin:0 0 20px;font-size:.95rem}
.alert{background:#FEE2E2;color:#B02525;padding:11px 13px;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:16px}

/* Utilities */
.stack-sm>*+*{margin-top:8px}
.muted{color:var(--fg-muted)}
.reveal{opacity:0;transform:translateY(14px);animation:reveal .5s var(--ease) forwards}
.reveal.d1{animation-delay:.06s}.reveal.d2{animation-delay:.12s}.reveal.d3{animation-delay:.18s}
@keyframes reveal{to{opacity:1;transform:none}}

@media (max-width:820px){
  .nav{position:fixed;inset:66px 0 auto 0;background:var(--nav-bg);flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 20px;display:none;box-shadow:var(--shadow)}
  .nav.open{display:flex}
  .nav a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav .search{margin-top:12px}
  .nav .search input{width:100%}
  .nav-toggle{display:inline-flex}
  .row2{grid-template-columns:1fr}
  .site-footer .cols{grid-template-columns:1fr}
  .admin-side{width:70px}
  .admin-side .label{display:none}
}
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* ============================================================
   CMS PREMIUM — tema oscuro navy + oro (scoped a body.admin)
   ============================================================ */
body.admin{
  --primary:#C9A24B; --primary-600:#D9B65A; --primary-700:#B8891F;
  --accent:#E3A94A; --accent-hover:#F2C066; --on-accent:#14203c;
  --bg:#0A1020; --surface:#111c34; --surface-2:#0E1728;
  --fg:#EAF0FB; --fg-muted:#9DAECB; --fg-subtle:#7788A6;
  --muted:#17223b; --border:#26334f; --border-soft:#1c2740;
  --nav-bg:#070C1A; --nav-fg:#B9C6E2; --nav-fg-strong:#ffffff;
  --shadow-sm:0 1px 2px rgba(0,0,0,.4);
  --shadow:0 12px 34px rgba(0,0,0,.45);
  --shadow-lg:0 24px 60px rgba(0,0,0,.55);
  background:var(--bg); color:var(--fg);
}
body.admin .admin-side{border-right:1px solid var(--border-soft)}
body.admin .admin-side a{color:#C4D0EA}
body.admin .admin-side a:hover{background:rgba(227,169,74,.12);color:#fff}
body.admin .admin-side .brand .label{color:#fff;letter-spacing:.04em}
body.admin .admin-main h1,body.admin .admin-main h2{color:#fff}
body.admin a{color:var(--gold-2,#F2C066)}
/* Botones dorados de marca */
body.admin .btn:not(.secondary):not(.ghost){background:linear-gradient(180deg,#F2C066,#E3A94A);color:#14203c;box-shadow:0 8px 22px rgba(227,169,74,.22)}
body.admin .btn:not(.secondary):not(.ghost):hover{filter:brightness(1.05);color:#14203c}
body.admin .btn.secondary{background:var(--surface);color:var(--fg);border:1px solid var(--border)}
/* Inputs con foco dorado */
body.admin .field input,body.admin .field textarea,body.admin .field select{background:#0e1729;border-color:#26334f;color:var(--fg)}
body.admin .field input:focus,body.admin .field textarea:focus,body.admin .field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(227,169,74,.18)}
/* Tabla premium */
body.admin .table{border:1px solid var(--border-soft)}
body.admin .table th{background:#0e1729;color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:.76rem}
body.admin .table tr:hover td{background:rgba(255,255,255,.025)}
/* Form-card con acento superior sutil */
body.admin .form-card{background:var(--surface);border:1px solid var(--border-soft)}

/* Accesibilidad: saltar al contenido (visible solo al enfocar con teclado) */
.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:#E3A94A;color:#14203c;padding:10px 16px;border-radius:0 0 10px 0;font-weight:700;font-family:var(--font-head)}
.skip-link:focus{left:0}

/* Panel ejecutivo — Salud del contenido (Digital Twin) */
.health{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:2px}
.health li{display:flex;align-items:center;gap:10px;padding:9px 6px;border-bottom:1px solid var(--border-soft)}
.health li:last-child{border-bottom:0}
.hdot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
.hdot.warn{background:#D97706;box-shadow:0 0 0 3px rgba(217,119,6,.15)}
.health-lbl{color:var(--fg);font-weight:500;text-decoration:none}
.health-lbl:hover{color:var(--primary)}
.health-cta{margin-left:auto;color:var(--fg-subtle);font-size:.82rem;white-space:nowrap}
.health li:hover .health-cta{color:var(--primary)}
.kl-health{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-soft);font-size:.86rem;color:var(--fg-muted)}
.kl-health strong{color:var(--fg);font-variant-numeric:tabular-nums}

/* Utilidad a11y: contenido solo para lectores de pantalla (encabezados de estructura). */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Pestañas del CMS (CSS puro, sin JS — hasta 4 pestañas atab-1..4 / pane-1..4). */
.atab-r{position:absolute;width:0;height:0;opacity:0;pointer-events:none}
.atabs{display:flex;gap:4px;border-bottom:1px solid #2a3350;margin:18px 0 24px;flex-wrap:wrap}
.atabs label{padding:11px 20px;cursor:pointer;color:#8ea0c4;font-weight:600;font-size:.98rem;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:8px 8px 0 0}
.atabs label:hover{color:#fff;background:rgba(255,255,255,.03)}
.atab-pane{display:none}
#atab-1:checked~.atabs label[for=atab-1],#atab-2:checked~.atabs label[for=atab-2],
#atab-3:checked~.atabs label[for=atab-3],#atab-4:checked~.atabs label[for=atab-4]{color:#fff;border-bottom-color:var(--accent,#c9a24b)}
#atab-1:checked~.pane-1,#atab-2:checked~.pane-2,#atab-3:checked~.pane-3,#atab-4:checked~.pane-4{display:block}
