
:root{
  --ink:#0f1e2d;
  --ink-2:#2c3b49;
  --muted:#6e7b86;
  --brand:#15324a;
  --brand-2:#1f4e6e;
  --accent:#2f8bb7;
  --accent-soft:#e8f4fa;
  --surface:#ffffff;
  --surface-2:#f6f9fb;
  --line:#dce5eb;
  --success:#1f9d63;
  --warning:#d99b22;
  --danger:#c43d3d;
  --shadow-sm:0 8px 24px rgba(17,44,66,.07);
  --shadow-md:0 18px 48px rgba(17,44,66,.11);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at top left,rgba(47,139,183,.08),transparent 30%),
    linear-gradient(180deg,#fbfdfe 0%,#f1f5f8 100%);
  line-height:1.55;
}
a{color:var(--brand-2);text-decoration:none}
a:hover{text-decoration:none;color:var(--accent)}
h1,h2,h3{letter-spacing:-.025em}
p{margin-top:.3em}
button,input,select,textarea{font:inherit}
.topbar{
  position:sticky;top:0;z-index:50;
  display:flex;justify-content:space-between;align-items:center;
  gap:20px;
  padding:14px max(20px,calc((100vw - 1180px)/2));
  background:rgba(21,50,74,.96);
  backdrop-filter:blur(16px);
  color:#fff;
  box-shadow:0 10px 28px rgba(15,34,52,.18);
}
.brand{
  display:flex;align-items:center;gap:10px;
  font-weight:850;font-size:1.08rem;color:#fff!important
}
.brand::before{
  content:"";width:34px;height:34px;border-radius:10px;
  background:linear-gradient(135deg,#58b7dc,#2f8bb7);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24)
}
.topbar nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.topbar nav>a{
  color:#eef7fb;padding:9px 12px;border-radius:10px;font-weight:650;font-size:.92rem
}
.topbar nav>a:hover{background:rgba(255,255,255,.1)}
.user-chip{
  background:rgba(255,255,255,.11);
  color:#fff;
  border:1px solid rgba(255,255,255,.13);
  padding:8px 12px;border-radius:999px;font-size:.87rem
}
.container{max-width:1180px;margin:0 auto;padding:30px 20px 72px}
footer{
  border-top:1px solid var(--line);
  background:rgba(255,255,255,.7);
  text-align:center;color:#788791;padding:28px 20px
}
.footer-admin-link{display:inline-block;margin-top:2px;color:#98a4ad;font-size:.74rem;opacity:.72}
.footer-admin-link:hover{opacity:1;color:var(--brand)}
.card,.auth-card,.wizard-main,.dash-card,.continue-card,.gestor-login-card{
  background:rgba(255,255,255,.96);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
}
.card{padding:24px;margin-bottom:18px}
.card:hover{box-shadow:var(--shadow-md)}
.button,button{
  display:inline-flex;align-items:center;justify-content:center;
  gap:8px;border:0;border-radius:12px;
  padding:11px 17px;background:linear-gradient(135deg,var(--brand),var(--brand-2));
  color:#fff!important;font-weight:760;cursor:pointer;
  box-shadow:0 8px 18px rgba(21,50,74,.18);
  transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease
}
.button:hover,button:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(21,50,74,.24)}
.secondary{background:#eef3f6!important;color:var(--ink)!important;box-shadow:none!important}
.danger-button{background:linear-gradient(135deg,#b82f2f,#d24d4d)}
.small{padding:8px 11px;font-size:.84rem}
.large{padding:14px 20px;font-size:1rem}
.full{width:100%}
label{display:block;font-weight:720;margin:15px 0 7px;color:var(--ink-2)}
input,select,textarea{
  width:100%;padding:12px 13px;margin-top:6px;
  border:1px solid #cbd7df;border-radius:12px;background:#fff;color:var(--ink);
  outline:none;transition:border-color .15s,box-shadow .15s
}
input:focus,select:focus,textarea:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 4px rgba(47,139,183,.12)
}
textarea{resize:vertical}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.thirds{grid-template-columns:repeat(3,1fr)}
.check{display:flex;align-items:center;gap:10px}
.check input{width:auto;margin:0}
.alert{padding:13px 15px;border-radius:12px;border:1px solid transparent;margin-bottom:16px}
.success{background:#e8f7ef;border-color:#bfe6d1}
.warning{background:#fff6df;border-color:#eedca5}
.danger{background:#fdecec;border-color:#efc1c1}
.muted{color:var(--muted)}
.eyebrow{
  font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--accent);font-weight:850
}
.pill{
  display:inline-flex;align-items:center;
  background:var(--accent-soft);color:var(--brand-2);
  padding:7px 11px;border-radius:999px;font-size:.74rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em
}
.hero{
  position:relative;overflow:hidden;
  padding:68px 0 42px;max-width:none
}
.hero::after{
  content:"";position:absolute;right:-80px;top:10px;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle,rgba(47,139,183,.18),rgba(47,139,183,0) 68%);
  pointer-events:none
}
.hero>div{max-width:790px;position:relative;z-index:1}
.hero h1{
  font-size:clamp(2.7rem,6vw,5.2rem);
  line-height:1.01;margin:.14em 0 .18em;color:var(--ink)
}
.hero p{font-size:1.12rem;color:var(--muted);max-width:720px}
.search{
  display:flex;gap:10px;background:#fff;padding:10px;border-radius:16px;
  border:1px solid var(--line);box-shadow:var(--shadow-sm);margin:18px 0 30px
}
.search input{border:0;box-shadow:none;margin:0;background:transparent}
.jobs{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}
.job-card{display:flex;flex-direction:column;min-height:260px;transition:transform .18s ease}
.job-card:hover{transform:translateY(-3px)}
.job-card h2{margin:.35em 0;font-size:1.35rem}
.job-card p{color:var(--muted)}
.job-card .button{margin-top:auto;align-self:flex-start}
.salary{font-size:1.25rem;font-weight:850}
.badge{display:inline-block;background:#edf2f5;padding:5px 9px;border-radius:999px;font-size:.8rem}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px}
table{border-collapse:collapse;width:100%;min-width:820px}
th,td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line)}
th{background:#f7fafc;color:#566776;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
.risk{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:7px}
.green{background:#2fbf71}.yellow{background:#e2b12f}.orange{background:#e57d2f}.red{background:#d44343}
.inline{display:flex;gap:8px;align-items:center}
.inline select{margin:0}
.narrow{max-width:540px;margin:38px auto}
.auth-layout{
  min-height:calc(100vh - 180px);
  display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center;padding:48px 0
}
.auth-copy h1{
  font-size:clamp(2.8rem,5vw,5rem);
  line-height:1.02;margin:.25em 0;color:var(--ink)
}
.auth-copy>p{font-size:1.12rem;color:var(--muted);max-width:650px}
.benefit-list{display:grid;gap:12px;margin-top:30px}
.benefit-list>div{
  display:grid;grid-template-columns:180px 1fr;gap:18px;
  padding:16px 0;border-bottom:1px solid var(--line)
}
.benefit-list span{color:var(--muted)}
.auth-card{padding:32px}
.auth-card h2{font-size:2rem;margin:.2em 0}
.auth-foot{text-align:center;margin-top:18px}
.onboarding-shell{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start}
.wizard-sidebar{
  position:sticky;top:90px;
  color:#fff;border-radius:22px;padding:26px;
  background:
    linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,0)),
    linear-gradient(145deg,var(--brand),#0d2335);
  min-height:650px;box-shadow:var(--shadow-md)
}
.wizard-sidebar p,.wizard-sidebar small{color:#c9d6df}
.wizard-brand h2{margin:.55em 0 .2em}
.wizard-steps{list-style:none;padding:0;margin:28px 0}
.wizard-steps li{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:13px 0;opacity:.5}
.wizard-steps li.active,.wizard-steps li.done{opacity:1}
.wizard-steps li>span{
  width:31px;height:31px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.11);font-weight:800
}
.wizard-steps li.active>span{background:#fff;color:var(--brand)}
.wizard-steps li.done>span{background:#3fbd7b}
.wizard-steps strong,.wizard-steps small{display:block}
.wizard-steps small{font-size:.75rem;margin-top:2px}
.text-link{color:#fff!important;text-decoration:underline}
.wizard-main{padding:34px}
.wizard-topline{display:flex;justify-content:space-between;gap:30px}
.wizard-topline h1{font-size:2.45rem;margin:.1em 0}
.save-state{
  font-size:.8rem;color:#376548;background:#e9f7ee;
  padding:9px 12px;border-radius:999px;white-space:nowrap
}
.progress{height:11px;background:#dce7ed;border-radius:999px;overflow:hidden}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#65b9d5)}
.slim{height:8px;margin:18px 0 28px}
.wizard-panel{max-width:780px}
.wizard-actions{
  display:flex;justify-content:space-between;gap:12px;
  margin-top:28px;padding-top:22px;border-top:1px solid var(--line)
}
.surface-check{background:var(--surface-2);padding:14px;border-radius:12px}
.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.choice-card{margin:0!important}
.choice-card input{position:absolute;opacity:0}
.choice-card span{
  display:block;padding:14px;border:1px solid var(--line);border-radius:12px;
  text-align:center;cursor:pointer;background:#fff
}
.choice-card input:checked+span{
  border-color:var(--accent);background:var(--accent-soft);color:var(--brand-2);font-weight:850
}
.optional-note{background:#fff8df;border:1px solid #f0df9a;padding:14px;border-radius:12px}
.field-help{font-size:.84rem;color:var(--muted)}
.review-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
.review-card>div{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.review-card span,.review-card strong{display:block}
.review-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.dashboard-hero{
  display:flex;justify-content:space-between;gap:28px;align-items:center;
  padding:36px 0 26px
}
.dashboard-hero h1{font-size:clamp(2.4rem,4vw,4rem);margin:.18em 0}
.dashboard-hero p{color:var(--muted)}
.dashboard-score{
  width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;
  background:conic-gradient(var(--accent) 0 68%,#e1ebf0 68% 100%);
  position:relative
}
.dashboard-score::before{
  content:"";position:absolute;inset:12px;background:#fff;border-radius:50%
}
.dashboard-score strong,.dashboard-score span{position:relative;z-index:1}
.dashboard-score strong{font-size:2rem}.dashboard-score span{font-size:.74rem;color:var(--muted)}
.continue-card{
  display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding:26px 28px;margin-bottom:24px;color:#fff;
  background:linear-gradient(135deg,var(--brand),var(--brand-2))
}
.continue-card p{color:#d8e5ec}
.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dash-card{padding:23px;min-height:220px;display:flex;flex-direction:column;transition:transform .18s ease}
.dash-card:hover{transform:translateY(-3px)}
.dash-icon{font-size:.75rem;font-weight:850;color:var(--accent);letter-spacing:.1em}
.dash-card h3{font-size:1.3rem;margin:24px 0 8px}
.dash-card p{color:var(--muted)}
.dash-card a{margin-top:auto;font-weight:800}
.gestor-login-shell{min-height:calc(100vh - 185px);display:grid;place-items:center;padding:48px 0}
.gestor-login-card{width:min(100%,480px);padding:34px}
.gestor-login-card h1{font-size:2.15rem;margin:.35em 0}
.gestor-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0}
.gestor-header h1{font-size:clamp(2.3rem,4vw,4rem);margin:.2em 0}
.gestor-header p{color:var(--muted)}
.gestor-stats .dash-card{min-height:155px}
.gestor-stats .dash-card h3{font-size:2.5rem;margin:18px 0 0}
.gestor-grid{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:start;margin-top:22px}
.gestor-menu{
  position:sticky;top:90px;display:grid;
  background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:10px;box-shadow:var(--shadow-sm)
}
.gestor-menu a{padding:12px 13px;border-radius:10px;color:var(--ink)}
.gestor-menu a.active,.gestor-menu a:hover{background:var(--accent-soft);color:var(--brand-2)}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.section-heading h2{margin:.2em 0 1em}
.stats{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:24px}
.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;min-width:165px;box-shadow:var(--shadow-sm)}
.stat strong{display:block;font-size:2rem}
@media(max-width:980px){
  .auth-layout,.onboarding-shell{grid-template-columns:1fr}
  .wizard-sidebar{position:static;min-height:auto}
  .wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .dashboard-grid{grid-template-columns:repeat(2,1fr)}
  .gestor-grid{grid-template-columns:1fr}
  .gestor-menu{position:static;grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .topbar{position:static;align-items:flex-start;flex-direction:column}
  .topbar nav{font-size:.9rem}
  .container{padding-top:20px}
  .hero{padding-top:34px}
  .form-grid,.thirds,.grid-2{grid-template-columns:1fr}
  .auth-layout{gap:26px;padding-top:18px}
  .benefit-list>div{grid-template-columns:1fr;gap:4px}
  .wizard-main{padding:22px}
  .wizard-steps{grid-template-columns:1fr 1fr}
  .wizard-topline{display:block}
  .save-state{display:inline-block;margin-top:10px}
  .choice-grid{grid-template-columns:1fr 1fr}
  .review-card{grid-template-columns:1fr}
  .dashboard-hero,.continue-card,.gestor-header{align-items:flex-start;flex-direction:column}
  .dashboard-score{width:115px;height:115px}
  .dashboard-grid{grid-template-columns:1fr}
  .search{flex-direction:column}
  .gestor-menu{grid-template-columns:1fr}
  .section-heading{align-items:flex-start;flex-direction:column}
}

/* V7 — interfaz multiplataforma */
.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav-shell{max-width:1220px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.site-header .brand{display:flex;align-items:center;gap:11px;color:var(--ink)!important}
.brand-mark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand),var(--accent));color:#fff;font-size:.78rem;letter-spacing:.04em;box-shadow:0 8px 20px rgba(21,50,74,.2)}
.brand-copy{display:grid;line-height:1.05}.brand-copy strong{font-size:.98rem}.brand-copy small{font-size:.68rem;color:var(--muted);margin-top:4px;font-weight:600}
.main-nav{display:flex;align-items:center;gap:22px;flex:1;justify-content:flex-end}
.nav-primary,.nav-account{display:flex;align-items:center;gap:8px}
.main-nav a{padding:9px 11px;border-radius:10px;font-size:.9rem;font-weight:700;color:var(--ink-2)}
.main-nav a:hover{background:var(--surface-2);color:var(--brand-2)}
.profile-link{background:var(--accent-soft)!important;color:var(--brand-2)!important}
.nav-cta{background:var(--brand)!important;color:#fff!important;padding-inline:15px!important}
.account-chip{display:flex!important;align-items:center;gap:9px;border:1px solid var(--line);padding:5px 9px 5px 5px!important;background:#fff}
.account-chip .avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff}
.account-chip span:last-child{display:grid;line-height:1.05}.account-chip strong{font-size:.8rem}.account-chip small{font-size:.65rem;color:var(--muted);margin-top:3px}
.logout-link{color:var(--muted)!important}
.nav-toggle{display:none;background:transparent!important;color:var(--ink)!important;box-shadow:none!important;padding:8px;border:1px solid var(--line)}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:3px}.nav-toggle b{font-size:.72rem;margin-left:5px}

.home-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:38px;align-items:center;padding:64px 0 48px}
.hero-content{max-width:760px}.hero-kicker{display:inline-flex;padding:7px 11px;border-radius:999px;background:var(--accent-soft);color:var(--brand-2);font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.home-hero h1{font-size:clamp(3rem,6vw,5.7rem);line-height:.98;margin:.22em 0;letter-spacing:-.055em}
.home-hero .hero-content>p{font-size:1.15rem;color:var(--muted);max-width:680px}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin:26px 0}
.trust-row{display:flex;gap:22px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.83rem}.trust-row b{color:var(--accent);margin-right:5px}
.hero-panel{background:linear-gradient(155deg,#173b57,#102738);color:#fff;border-radius:26px;padding:28px;box-shadow:0 28px 70px rgba(16,39,56,.24);position:relative;overflow:hidden}
.hero-panel::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-60px;top:-60px;background:rgba(80,180,220,.15)}
.panel-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#9fc7dc;font-weight:800}
.profile-preview{display:flex;align-items:center;gap:13px;margin:24px 0;padding:15px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:16px}
.preview-avatar{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#fff;color:var(--brand);font-weight:900}
.profile-preview div:last-child{display:grid}.profile-preview small{color:#c5d5df}
.hero-panel ul{padding-left:20px;color:#d7e3ea}.hero-panel li{margin:10px 0}.hero-panel>a{color:#fff;font-weight:800;position:relative;z-index:1}

.search-section{margin:12px 0 30px}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-intro h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:.12em 0}.section-intro>p{color:var(--muted)}
.search-modern{padding:9px}.search-field{display:flex;align-items:center;gap:8px;flex:1;padding-left:10px}.search-field>span{font-size:1.4rem;color:var(--accent)}.search-field input{padding-left:4px}
.empty-state{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #b9cbd6;border-radius:22px;padding:50px 24px;box-shadow:var(--shadow-sm)}
.empty-icon{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;margin:0 auto 14px;background:var(--accent-soft);color:var(--accent);font-size:2rem}.empty-state h2{margin:.25em 0}.empty-state p{max-width:620px;margin:0 auto 22px;color:var(--muted)}
.job-card{border-radius:20px}.job-meta{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.job-meta span{background:var(--surface-2);border:1px solid var(--line);padding:5px 8px;border-radius:999px;font-size:.74rem;color:var(--ink-2)}
.job-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.job-card-foot small{color:var(--muted)}.text-arrow{font-weight:800}
.site-footer{background:#102738;color:#d4e0e7;border-top:0;text-align:left}.footer-shell{max-width:1220px;margin:0 auto;padding:34px 20px;display:flex;justify-content:space-between;gap:30px}.site-footer p{color:#9fb3bf}.footer-links{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.site-footer a{color:#dce8ee}.site-footer .footer-admin-link{color:#839aa7}

@media(max-width:1020px){
  .nav-toggle{display:flex;align-items:center}
  .main-nav{display:none;position:absolute;left:20px;right:20px;top:72px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-md);align-items:stretch}
  .main-nav.is-open{display:grid}
  .nav-primary,.nav-account{display:grid;gap:4px}.nav-account{padding-top:10px;border-top:1px solid var(--line)}
  .main-nav a{padding:12px}.account-chip{justify-content:flex-start}
  .home-hero{grid-template-columns:1fr;padding-top:42px}.hero-panel{max-width:680px}
}
@media(max-width:680px){
  .nav-shell{padding-inline:14px}.brand-copy small{display:none}.brand-mark{width:36px;height:36px}
  .main-nav{left:12px;right:12px;top:66px}
  .home-hero{padding:32px 0}.home-hero h1{font-size:clamp(2.6rem,14vw,4rem)}
  .hero-panel{padding:22px}.trust-row{display:grid;gap:8px}
  .section-intro{align-items:flex-start;flex-direction:column}.section-intro>p{margin-top:0}
  .search-modern{display:grid}.search-field{min-width:0}.search-modern button{width:100%}
  .footer-shell{flex-direction:column}.footer-links{display:grid}
  .job-card-foot{align-items:flex-start;flex-direction:column}
}

/* V7.2 — buscador primero y portada compacta */
.profile-alert{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:6px 0 22px;padding:17px 18px;border:1px solid #f0d69a;border-radius:16px;background:linear-gradient(135deg,#fff9e8,#fffdf7);box-shadow:var(--shadow-sm)}
.profile-alert-copy{display:flex;align-items:center;gap:13px}.profile-alert-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f3b742;color:#fff;font-weight:900;font-size:1.15rem;flex:0 0 auto}
.profile-alert strong{display:block;font-size:1rem}.profile-alert p{margin:3px 0 0;color:#7b6840;font-size:.88rem}
.search-first{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow-md);margin:18px 0 20px}
.search-first-head{display:flex;justify-content:space-between;align-items:end;gap:24px}.search-first h1{font-size:clamp(2.2rem,4.8vw,4.1rem);line-height:1.02;margin:.13em 0 .12em;letter-spacing:-.045em}.search-first-head p{color:var(--muted);font-size:1rem}
.vacancy-count{min-width:135px;text-align:right;padding:10px 0}.vacancy-count strong{display:block;font-size:2rem;color:var(--brand)}.vacancy-count span{display:block;color:var(--muted);font-size:.78rem}
.search-primary{margin:22px 0 10px;border:1px solid #c9d8e1;box-shadow:none;background:var(--surface-2)}.search-primary input{font-size:1rem}
.search-assist{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:.84rem;color:var(--muted);padding-top:4px}.search-assist a{font-weight:800}
.compact-value{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:22px 26px;margin-bottom:30px;background:linear-gradient(135deg,#f4f9fc,#edf5f8);border:1px solid var(--line);border-radius:18px}
.compact-value>div:first-child{max-width:760px}.compact-value h2{font-size:clamp(1.45rem,2.5vw,2.2rem);margin:.25em 0}.compact-value p{color:var(--muted);margin-bottom:0}.compact-actions{flex:0 0 auto}
@media(max-width:760px){.profile-alert{align-items:flex-start;flex-direction:column}.profile-alert .button{width:100%}.search-first{padding:22px 18px}.search-first-head{align-items:flex-start;flex-direction:column}.vacancy-count{text-align:left;padding:0}.compact-value{align-items:flex-start;flex-direction:column}.compact-actions,.compact-actions .button{width:100%}}

/* V8 — Integraciones */
.integration-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}
.integration-status{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:var(--shadow-sm)}
.integration-status>span{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.integration-status.connected>span{background:#e6f7ee;color:#167747}.integration-status.pending>span{background:#eef2f5;color:#71808b}
.integration-status h3{margin:15px 0 4px}.integration-status p{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}
.integration-form{display:grid;gap:16px}.integration-section{margin:0}.integration-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.integration-section-head>div:first-child{display:flex;gap:14px}.integration-section-head h2{margin:0}.integration-section-head p{margin:3px 0;color:var(--muted)}
.integration-logo{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;color:#fff;font-weight:900;flex:0 0 auto}.analytics-logo{background:linear-gradient(135deg,#ee8c22,#f6b245)}.ads-logo{background:linear-gradient(135deg,#3776d6,#62a1ee)}.tag-logo{background:linear-gradient(135deg,#4285f4,#175fc5)}.verify-logo{background:linear-gradient(135deg,#27a96b,#56c98c)}
.switch{display:flex;align-items:center;gap:9px;margin:2px 0;white-space:nowrap}.switch input{position:absolute;opacity:0}.switch span{width:44px;height:25px;border-radius:999px;background:#cfd9df;position:relative;transition:.2s}.switch span::after{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0002;transition:.2s}.switch input:checked+span{background:var(--success)}.switch input:checked+span::after{transform:translateX(19px)}
.sticky-save{position:sticky;bottom:16px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(16,39,56,.96);color:#fff;border-radius:17px;padding:16px 18px;box-shadow:0 16px 40px rgba(16,39,56,.28);backdrop-filter:blur(12px)}.sticky-save div{display:grid}.sticky-save span{color:#b9cbd5;font-size:.82rem}
.integration-links div{display:flex;gap:10px;flex-wrap:wrap}
.ad-placement{max-width:1180px;margin:18px auto;padding:12px 20px;text-align:center;min-height:70px}.ad-label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:5px}
.jobs>.ad-placement{grid-column:1/-1;width:100%;padding:12px 0}
.consent-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:100;max-width:980px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:22px;background:rgba(16,39,56,.98);color:#fff;border-radius:18px;padding:18px 20px;box-shadow:0 20px 60px rgba(8,25,38,.35)}.consent-banner[hidden]{display:none}.consent-banner p{margin:3px 0 0;color:#c6d5de;font-size:.86rem}.consent-actions{display:flex;gap:8px;flex:0 0 auto}
@media(max-width:850px){.integration-status-grid{grid-template-columns:1fr}.integration-section-head{flex-direction:column}.sticky-save,.consent-banner{align-items:flex-start;flex-direction:column}.sticky-save .button,.consent-actions,.consent-actions button{width:100%}.consent-actions{display:grid;grid-template-columns:1fr 1fr}}

/* V8.3 — Captcha del módulo Usuarios */
.captcha-box{
  margin-top:22px;padding:16px 18px;
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  border:1px solid #c9dce7;border-radius:15px;
  background:linear-gradient(135deg,#f4fafc,#edf6fa)
}
.captcha-copy{display:flex;align-items:center;gap:12px}
.captcha-copy strong{display:block}.captcha-copy p{margin:2px 0 0;color:var(--muted);font-size:.84rem}
.captcha-icon{
  width:38px;height:38px;border-radius:12px;display:grid;place-items:center;
  background:var(--brand);color:#fff;font-weight:900;flex:0 0 auto
}
.captcha-challenge{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.captcha-question{font-size:1.2rem;font-weight:850;white-space:nowrap}
.captcha-challenge input{width:90px;margin:0;text-align:center;font-size:1.1rem;font-weight:800}
@media(max-width:680px){
  .captcha-box{align-items:flex-start;flex-direction:column}
  .captcha-challenge{width:100%}
  .captcha-challenge input{flex:1}
}

/* V9 — Centro de Monetización */
.monetization-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:24px}
.monetization-summary{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px;box-shadow:var(--shadow-sm)}
.monetization-summary>div{display:grid}.monetization-summary small{color:var(--muted);text-transform:uppercase;font-size:.68rem;letter-spacing:.08em}.monetization-summary strong{font-size:1.35rem;margin:4px 0}.monetization-summary p{color:var(--muted);font-size:.82rem;margin:0}
.status-dot{width:14px;height:14px;border-radius:50%;margin-top:5px;flex:0 0 auto}.status-dot.on{background:#2ab56e;box-shadow:0 0 0 5px #e4f6ed}.status-dot.off{background:#a9b5bd;box-shadow:0 0 0 5px #eff3f5}
.summary-number{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--accent-soft);color:var(--brand-2);font-size:1.25rem;font-weight:900;flex:0 0 auto}
.monetization-tools{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:24px}
.monetization-tool{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow-sm);color:var(--ink)}
.monetization-tool.active:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.monetization-tool.disabled{opacity:.58}.monetization-tool p{margin:3px 0;color:var(--muted);font-size:.84rem}.monetization-tool>b{font-size:.8rem;color:var(--brand-2)}
.tool-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;font-weight:900}
.monetization-note{background:linear-gradient(135deg,#f7fbfd,#edf5f8)}
.adsense-safety{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:22px}.adsense-safety>div{display:grid;grid-template-columns:20px 1fr;column-gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow-sm)}.adsense-safety p{grid-column:2;margin:3px 0;color:var(--muted);font-size:.84rem}
.placement-logo{background:linear-gradient(135deg,#6f7bda,#9b78d9)}
@media(max-width:850px){.monetization-overview,.adsense-safety{grid-template-columns:1fr}.monetization-tools{grid-template-columns:1fr}}
@media(max-width:560px){.monetization-tool{grid-template-columns:44px 1fr}.monetization-tool>b{grid-column:2}}

/* V10 — Estadísticas y vista previa publicitaria */
.statistics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:24px}
.statistics-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px;box-shadow:var(--shadow-sm);display:grid}
.statistics-card small{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:850}.statistics-card strong{font-size:2.35rem;margin:8px 0 2px}.statistics-card span{color:var(--muted);font-size:.83rem}
.statistics-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.statistics-note{background:linear-gradient(135deg,#f8fbfd,#eef5f8)}
.admin-ad-notice,.preview-explanation{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff9e8;border:1px solid #efd99f;border-radius:16px;padding:18px 20px;margin-bottom:20px}.admin-ad-notice p,.preview-explanation p{margin:4px 0 0;color:#756442}
.ad-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ad-preview{min-height:180px;background:repeating-linear-gradient(135deg,#f4f7f9,#f4f7f9 12px,#eef2f5 12px,#eef2f5 24px);border:2px dashed #b8c6cf;border-radius:18px;padding:20px;display:grid;place-content:center;text-align:center}.ad-preview>span{font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.ad-preview>div{font-size:1.2rem;font-weight:850;margin:8px 0}.ad-preview small{color:var(--muted)}
@media(max-width:900px){.statistics-grid{grid-template-columns:repeat(2,1fr)}.statistics-layout,.ad-preview-grid{grid-template-columns:1fr}}
@media(max-width:600px){.statistics-grid{grid-template-columns:1fr}.admin-ad-notice,.preview-explanation{align-items:flex-start;flex-direction:column}.admin-ad-notice .button{width:100%}}

/* V11 — Comunicaciones */
.communication-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.communication-overview article{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:var(--shadow-sm);display:grid}.communication-overview small{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:850}.communication-overview strong{font-size:1.55rem;margin:6px 0}.communication-overview span{color:var(--muted);font-size:.82rem}
.communication-tools{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:24px}.communication-tools a{display:grid;grid-template-columns:48px 1fr;column-gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow-sm);color:var(--ink)}.communication-tools a>span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;font-weight:900;grid-row:1/4}.communication-tools strong{font-size:1.08rem}.communication-tools p{margin:4px 0;color:var(--muted);font-size:.84rem}.anti-spam-note{background:linear-gradient(135deg,#f4faf7,#eef7f2)}
.mail-logo{background:linear-gradient(135deg,#1e8b63,#48b78a)}.inline-test{display:flex;gap:10px}.inline-test input{margin:0}.template-layout{display:grid;grid-template-columns:240px 1fr;gap:20px}.template-menu{display:grid;align-content:start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:var(--shadow-sm)}.template-menu a{padding:12px;border-radius:10px;display:grid;color:var(--ink)}.template-menu a.active{background:var(--accent-soft)}.template-menu small{color:var(--muted);font-size:.72rem}.verification-shell{min-height:60vh;display:grid;place-items:center}.verification-card{max-width:560px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--shadow-md)}.verification-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:0 auto 14px;color:#fff;font-size:1.6rem;font-weight:900}.success-icon{background:var(--success)}.error-icon{background:var(--danger)}
@media(max-width:900px){.communication-overview{grid-template-columns:repeat(2,1fr)}.template-layout{grid-template-columns:1fr}}@media(max-width:650px){.communication-overview,.communication-tools{grid-template-columns:1fr}.inline-test{flex-direction:column}}

/* V12 — GSK y Comercialización */
.commercial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}
.commercial-card{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow-sm)}
.commercial-card.disabled{opacity:.62}.commercial-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;font-weight:900;font-size:1.15rem}
.commercial-card small{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:850}.commercial-card h2{margin:3px 0}.commercial-card p{margin:0;color:var(--muted);font-size:.85rem}.commercial-card>b{font-size:.76rem;color:var(--brand-2)}
.commercialization-note{background:linear-gradient(135deg,#f8fbfd,#eef5f8)}
@media(max-width:820px){.commercial-grid{grid-template-columns:1fr}}
@media(max-width:560px){.commercial-card{grid-template-columns:48px 1fr}.commercial-card>b{grid-column:2}}

/* V13 — Tipos de perfil, organizaciones y administración de vacantes */
.profile-type-panel{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:20px;box-shadow:var(--shadow-sm)}
.profile-type-panel h2{margin:.15em 0}.profile-type-panel p{color:var(--muted);margin:0}.profile-switches{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.profile-switches form{margin:0}.profile-switches button:disabled{opacity:1;cursor:default}
.organization-status{display:flex;align-items:center;gap:22px;background:linear-gradient(135deg,#f5fafc,#edf5f8);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:22px}.organization-score{width:105px;height:105px;border-radius:50%;display:grid;place-content:center;text-align:center;background:#fff;border:9px solid #dce9ef;border-top-color:var(--accent);flex:0 0 auto}.organization-score strong{font-size:1.55rem}.organization-score span{font-size:.68rem;color:var(--muted)}
.submit-validation-card{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff}.submit-validation-card p{color:#d5e2e9}
.admin-search-bar{display:grid;grid-template-columns:minmax(260px,1fr) 190px 160px auto;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;margin-bottom:20px;box-shadow:var(--shadow-sm)}.admin-search-bar input,.admin-search-bar select{margin:0}
.organization-review-card{padding:22px}.organization-review-head{display:flex;justify-content:space-between;gap:20px}.organization-review-head h2{margin:.35em 0}.trust-meter{min-width:90px;text-align:center;background:var(--surface-2);border-radius:14px;padding:12px}.trust-meter strong{display:block;font-size:1.8rem}.trust-meter span{font-size:.72rem;color:var(--muted)}
.organization-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.organization-facts span{background:var(--surface-2);border-radius:11px;padding:11px;font-size:.84rem}.organization-facts b{display:block;font-size:.66rem;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}
.organization-decision{border-top:1px solid var(--line);padding-top:14px}
.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;background:#edf2f5}.status-verified,.status-published{background:#e4f6ed;color:#177348}.status-pending,.status-under_review{background:#fff3d7;color:#8d6719}.status-observed{background:#fff0dd;color:#a15d1b}.status-rejected,.status-suspended{background:#fde7e7;color:#a52d2d}.status-draft,.status-closed{background:#edf1f4;color:#64737e}
.vacancy-admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.vacancy-admin-stats article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow-sm)}.vacancy-admin-stats strong{display:block;font-size:2rem}.vacancy-admin-stats span{color:var(--muted)}
.vacancy-admin-table td small{display:block;color:var(--muted);margin-top:3px}.vacancy-control-form{min-width:260px}.vacancy-control-form input{margin:0 0 8px}.vacancy-actions{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:900px){.profile-type-panel,.organization-status,.submit-validation-card{align-items:flex-start;flex-direction:column}.profile-switches{justify-content:flex-start}.admin-search-bar{grid-template-columns:1fr 1fr}.organization-facts{grid-template-columns:1fr 1fr}.vacancy-admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.admin-search-bar,.organization-facts,.vacancy-admin-stats{grid-template-columns:1fr}.profile-switches,.profile-switches form,.profile-switches button,.profile-switches a{width:100%}}
.merit-badge{background:#e8f4ff;color:#124a75}.trust-panel{margin-bottom:1.5rem}.trust-panel h1{display:flex;align-items:center;gap:.6rem}.risk.red{background:#b42318}.risk.orange{background:#f79009}.risk.yellow{background:#fdb022}.risk.green{background:#12b76a}

/* Publicaciones y blog · v2.1 */
.compact-hero{padding-bottom:1rem}.publication-categories{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0 1.5rem}.publication-categories a{background:#fff;border:1px solid #d8e1e8;border-radius:999px;padding:.55rem .9rem;text-decoration:none}.publication-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:2rem}.publication-card h2{font-size:1.3rem}.publication-card h2 a{text-decoration:none;color:inherit}.publication-meta{color:#667684}.publication-lead{font-size:1.18rem;line-height:1.7;color:#30485e}.publication-body{font-size:1.05rem;line-height:1.85;white-space:normal}.publication-hero{width:100%;max-height:520px;object-fit:cover;border-radius:14px;margin:1rem 0}.sponsored-disclosure{background:#fff6d8;border:1px solid #ead087;padding:.8rem 1rem;border-radius:10px;margin-bottom:1rem}.pill.sponsored{background:#fff0b8;color:#6b4b00}.publication-editor-form fieldset{border:1px solid #d8e1e8;border-radius:12px;padding:1rem;margin:1rem 0}.publication-editor-form legend{font-weight:800;padding:0 .4rem}.publication-editor-form textarea{width:100%;box-sizing:border-box}.link-button{border:0;background:none;padding:0;color:#a52626;text-decoration:underline;cursor:pointer;font:inherit}.publications-admin-grid{align-items:start}

/* Inicio 3.1: vacantes y publicaciones */
.home-opportunities,.jobs-section,.home-publications{margin-top:2rem}.featured-jobs-grid,.empty-opportunity-grid,.home-publication-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.empty-opportunity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-job-card{position:relative}.featured-job-card .pill{margin-bottom:.75rem}.empty-action-card{text-align:center;padding:2rem}.empty-action-card .empty-icon{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#eaf6fc;color:#1689bc;font-size:1.6rem;margin-bottom:.8rem}.home-publications{padding:1.5rem;border:1px solid #d9e6ee;border-radius:24px;background:linear-gradient(135deg,#f8fcfe,#eef8fc)}.home-publication-grid .publication-card{height:100%}.publication-card h3{margin:.35rem 0 .65rem;font-size:1.25rem}.publication-card h3 a{color:inherit;text-decoration:none}.publication-card h3 a:hover{text-decoration:underline}
@media(max-width:900px){.featured-jobs-grid,.home-publication-grid{grid-template-columns:1fr 1fr}.empty-opportunity-grid{grid-template-columns:1fr}}
@media(max-width:640px){.featured-jobs-grid,.home-publication-grid{grid-template-columns:1fr}.home-publications{padding:1rem}}

/* OchoCinco 3.2 · menú de cuenta y administración de usuarios */
.account-menu{position:relative;display:inline-flex;align-items:center}
.account-menu-toggle{cursor:pointer;font:inherit;text-align:left}
.account-menu-toggle .account-chevron{margin-left:6px;color:var(--muted,#687889);font-size:18px;line-height:1}
.account-dropdown{position:absolute;right:0;top:calc(100% + 10px);z-index:120;width:280px;padding:10px;background:#fff;border:1px solid #d5e1e9;border-radius:16px;box-shadow:0 18px 45px rgba(20,48,70,.16)}
.account-dropdown[hidden]{display:none!important}
.account-dropdown-head{padding:10px 12px 12px;display:flex;flex-direction:column;border-bottom:1px solid #e4ebf0;margin-bottom:6px}
.account-dropdown-head strong{color:#15283a}.account-dropdown-head small{color:#6b7b89;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-dropdown a{display:block;padding:10px 12px;border-radius:10px;color:#21384d;text-decoration:none}
.account-dropdown a:hover,.account-dropdown a:focus{background:#eaf5fb;color:#15567b}
.account-dropdown .account-admin-link{font-weight:800;color:#164d6c}
.account-dropdown-separator{height:1px;background:#e4ebf0;margin:6px 4px}
.large-avatar{width:54px;height:54px;font-size:22px}
.user-admin-layout{align-items:start}.user-admin-content{min-width:0;display:grid;gap:22px}
.user-admin-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.user-detail-summary{display:flex;align-items:center;gap:14px;padding:14px 0 20px}
.user-detail-summary>div{display:flex;flex-direction:column;flex:1}.user-detail-summary small{color:#6b7b89}
.status-badge{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}
.status-badge.active{background:#e7f7ee;color:#176b3b}.status-badge.suspended{background:#fff0ec;color:#a43c2d}
.form-grid.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.user-context-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.user-context-grid>div{padding:12px;border:1px solid #dce6ed;border-radius:12px;background:#f8fbfd;display:flex;flex-direction:column;gap:4px}
.user-context-grid span{font-size:12px;color:#6b7b89;text-transform:uppercase;letter-spacing:.04em}.user-context-grid strong{font-size:14px}
.password-reset-box{margin-top:20px;border-top:1px solid #e0e8ee;padding-top:16px}.password-reset-box summary{cursor:pointer;font-weight:800}
.inline-admin-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:14px}
.admin-filters{display:grid;grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(140px,1fr) auto auto;align-items:end;gap:12px;margin:18px 0}
.users-table td:first-child strong,.users-table td:first-child small{display:block}.users-table td:first-child small{color:#6b7b89;margin-top:3px}.button.small{padding:7px 10px;font-size:13px}
.pagination{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.pagination a{display:inline-flex;min-width:36px;height:36px;align-items:center;justify-content:center;border:1px solid #d5e1e9;border-radius:9px;text-decoration:none}.pagination a.active{background:#174f70;color:#fff;border-color:#174f70}
@media(max-width:1050px){.user-admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.user-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filters{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.account-menu{width:100%}.account-menu-toggle{width:100%}.account-dropdown{position:static;width:100%;margin-top:8px;box-shadow:none}.form-grid.two-cols,.user-context-grid,.inline-admin-form,.admin-filters{grid-template-columns:1fr}.user-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.user-detail-summary{flex-wrap:wrap}.user-detail-summary .status-badge{margin-left:68px}}

/* OchoCinco 3.2.1 · menú de cuenta nativo y resistente a fallos JS */
details.account-menu{position:relative;display:inline-flex;align-items:center}
details.account-menu>summary{list-style:none}
details.account-menu>summary::-webkit-details-marker{display:none}
.account-menu-toggle{min-width:230px;max-width:320px;user-select:none}
.account-menu-toggle .account-identity{display:flex!important;flex-direction:column;min-width:0;line-height:1.08;flex:1}
.account-menu-toggle .account-identity strong,.account-menu-toggle .account-identity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-menu-toggle .account-chevron{display:block!important;flex:0 0 auto;margin-left:auto;transition:transform .18s ease}
details.account-menu[open] .account-chevron{transform:rotate(180deg)}
details.account-menu:not([open])>.account-dropdown{display:none!important}
details.account-menu[open]>.account-dropdown{display:block!important}
@media(max-width:760px){.account-menu-toggle{min-width:0;max-width:none}.account-menu-toggle .account-identity{display:flex!important}}

/* OchoCinco 3.5: menú de usuario compacto */
.account-dropdown.account-dropdown-compact {
  min-width: 190px;
  padding: 8px;
}
.account-dropdown.account-dropdown-compact a {
  display: block;
  width: 100%;
  margin: 0;
  padding: 11px 12px;
  border-radius: 10px;
  white-space: nowrap;
}
.account-dropdown.account-dropdown-compact a + a {
  margin-top: 4px;
}

/* OchoCinco 3.5 · Perfil de Usuario */
.profile-welcome{font-size:clamp(1.65rem,2.6vw,2.45rem)!important;line-height:1.08}
.dashboard-hero{align-items:flex-start;flex-wrap:wrap}
.profile-quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.profile-photo-panel{display:flex;gap:14px;align-items:flex-start;max-width:390px}
.profile-photo-frame{width:96px;aspect-ratio:3/4;border:1px dashed var(--line);border-radius:12px;overflow:hidden;background:var(--surface-2);display:grid;place-items:center;color:var(--muted);flex:0 0 auto}
.profile-photo-frame img{width:100%;height:100%;object-fit:cover}
.profile-photo-form{display:grid;gap:7px;min-width:210px}
.profile-photo-form label{margin:0;font-size:.84rem}.profile-photo-form input{font-size:.78rem;padding:8px}.profile-photo-form small{font-size:.72rem;color:var(--muted);line-height:1.35}
.button.disabled,.disabled-link{opacity:.55;cursor:not-allowed;pointer-events:none}
.module-disabled{opacity:.72}.module-disabled:hover{transform:none}.disabled-link{margin-top:auto;font-weight:800}
@media(max-width:760px){.profile-photo-panel{order:3;width:100%;max-width:none}.dashboard-score{width:112px;height:112px}.profile-photo-form{min-width:0;flex:1}}
