:root{
  --bg:#f6f8f7;
  --surface:#ffffff;
  --surface-soft:#edf5f2;
  --text:#17282d;
  --muted:#637379;
  --brand:#123f55;
  --brand-deep:#0b3041;
  --brand-soft:#e9f0f3;
  --accent:#209a7d;
  --accent-deep:#14785f;
  --accent-soft:#e8f7f2;
  --warm:#d89438;
  --line:#dce5e3;
  --danger:#a53b45;
  --radius:18px;
  --radius-sm:12px;
  --shadow:0 20px 55px rgba(18,63,85,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.58;font-size:16px}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:min(1160px,calc(100% - 36px));margin-inline:auto}
.narrow{width:min(760px,100%)}
.site-header,.admin-top{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner,.admin-top-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;min-width:0}
.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--brand);display:grid;place-items:center;color:#fff;font-weight:900;position:relative;overflow:hidden;flex:0 0 auto}
.brand-mark:after{content:"";position:absolute;width:11px;height:11px;border-radius:50%;right:-2px;top:-2px;background:var(--accent)}
.brand-mark span{font-size:21px;line-height:1}
.brand-copy{min-width:0}
.brand strong,.brand small{display:block}.brand strong{font-size:15px;line-height:1.15}.brand small{font-size:11px;color:var(--muted);margin-top:3px;white-space:nowrap}
.nav{display:flex;align-items:center;gap:23px;font-size:14px;font-weight:720;color:#36545e}.nav a:hover{color:var(--brand)}
.nav-cta{background:var(--brand);color:#fff!important;border-radius:10px;padding:9px 14px}.nav-cta:hover{background:var(--brand-deep)}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:22px;height:2px;background:var(--brand);margin:4px 0;border-radius:3px}
.hero{padding:58px 0 42px;background:linear-gradient(180deg,#fff 0%,#f4f8f7 100%);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:58px;align-items:center}
.hero-copy-wrap{max-width:650px}
.eyebrow{display:inline-block;font-size:11px;font-weight:850;letter-spacing:.13em;color:var(--accent-deep);margin-bottom:10px;text-transform:uppercase}
h1,h2,h3{line-height:1.14;margin:0 0 14px;color:var(--text)}
h1{font-size:clamp(32px,4vw,48px);letter-spacing:-.04em;max-width:650px}
h2{font-size:clamp(25px,2.8vw,36px);letter-spacing:-.032em}
h3{font-size:19px;letter-spacing:-.015em}
.hero-copy{font-size:17px;color:var(--muted);max-width:650px;margin:0}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin:26px 0 22px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:12px 18px;font-size:14px;font-weight:800;cursor:pointer;transition:.2s ease}
.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-deep);transform:translateY(-1px)}
.secondary{background:#fff;border:1px solid var(--line);color:var(--brand)}.secondary:hover{border-color:#b9cfca;background:#fbfdfc}
.trust-row{display:flex;gap:16px;flex-wrap:wrap;color:#587076;font-size:12.5px}.trust-row b{color:var(--accent-deep);margin-right:3px}
.journey-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:var(--shadow)}
.journey-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line);gap:15px}.journey-head span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:800}.journey-head strong{font-size:13px;color:var(--brand)}
.journey-list{list-style:none;padding:8px 0 0;margin:0}.journey-list li{display:grid;grid-template-columns:38px 1fr;gap:13px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f0}.journey-list li>span{width:32px;height:32px;border-radius:10px;background:var(--accent-soft);color:var(--accent-deep);display:grid;place-items:center;font-size:11px;font-weight:900}.journey-list strong,.journey-list small{display:block}.journey-list strong{font-size:14px}.journey-list small{font-size:12px;color:var(--muted);margin-top:2px}.journey-note{font-size:11.5px;color:#52676e;background:var(--surface-soft);padding:11px 12px;border-radius:10px;margin-top:15px}
.quick-path{background:var(--brand);color:#fff}.path-row{min-height:48px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-size:11px;font-weight:850;letter-spacing:.06em}.path-row i{font-style:normal;color:#77cfb7}.path-row span{white-space:nowrap}
.section{padding:58px 0}.section.alt{background:#fff}.tools-section{background:#f8faf9}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:35px;align-items:end}.section-heading p,.section-copy,.feature-panel p,.card p,.article-list p,.faq p,.site-footer p{color:var(--muted)}.section-heading>p{margin:0 0 4px;font-size:14px}
.tool-groups{display:grid;gap:35px;margin-top:34px}.tool-group{display:grid;gap:15px}.group-label{display:flex;align-items:center;gap:11px}.group-label strong,.group-label small{display:block}.group-label strong{font-size:14px}.group-label small{font-size:12px;color:var(--muted);margin-top:1px}.group-icon{width:31px;height:31px;border-radius:9px;background:var(--brand-soft);display:grid;place-items:center;color:var(--brand);font-weight:900}
.cards{display:grid;gap:15px}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:19px;transition:.2s ease;display:flex;flex-direction:column;min-height:210px}.card:hover{border-color:#c3d7d2;transform:translateY(-2px);box-shadow:0 12px 30px rgba(18,63,85,.06)}.featured-card{border-top:3px solid var(--accent)}
.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.tool-number{font-size:11px;font-weight:900;color:var(--brand)}.status{font-size:10px;font-weight:850;color:var(--accent-deep);background:var(--accent-soft);border-radius:999px;padding:5px 8px}.card p{font-size:13.5px;margin:0 0 16px}.card-foot{margin-top:auto;padding-top:13px;border-top:1px solid #edf1f0;color:#577078;font-size:11.5px;font-weight:750;display:flex;justify-content:space-between;gap:8px}.card-foot span{color:var(--accent-deep);font-size:16px;line-height:1}
.feature-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:48px;align-items:center}.feature-copy>p{font-size:15px;max-width:650px}.feature-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.feature-points span{display:flex;align-items:center;gap:9px;background:var(--bg);border:1px solid var(--line);border-radius:11px;padding:11px;font-size:13px;font-weight:700}.feature-points b{font-size:10px;color:var(--accent-deep)}
.privacy-box{background:var(--brand);color:#fff;border-radius:20px;padding:25px}.privacy-box .privacy-icon{width:39px;height:39px;border-radius:11px;background:rgba(255,255,255,.12);display:grid;place-items:center;margin-bottom:16px;font-size:22px}.privacy-box strong{display:block;font-size:18px}.privacy-box p{color:#d9e5e8;font-size:13.5px}.privacy-box a{font-size:12px;font-weight:800;color:#8de1ca}
.article-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:28px}.article-list article{background:#fff;border:1px solid var(--line);padding:19px;border-radius:15px;display:grid;gap:8px}.article-list span{font-size:10px;font-weight:900;color:var(--accent-deep);letter-spacing:.08em}.article-list strong{font-size:15px}.article-list p{font-size:13px;margin:0}.article-list em{font-style:normal;font-size:10px;color:var(--muted);font-weight:800;margin-top:4px}
.faq{background:var(--surface-soft)}.faq-layout{display:grid;grid-template-columns:.65fr 1fr;gap:55px;align-items:start}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:0 0 10px}.faq summary{font-size:13.5px;font-weight:800;cursor:pointer}.faq details p{font-size:13px;margin-bottom:2px}.section-copy{font-size:14px}
.closing-cta{background:var(--brand-deep);color:#fff;padding:40px 0}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing-inner h2{color:#fff;max-width:700px;margin:0;font-size:clamp(24px,2.8vw,34px)}.eyebrow.light{color:#8de1ca}.light-btn{background:#fff;color:var(--brand-deep)}
.site-footer{background:#071f2a;color:#d9e5e8;padding:42px 0 18px}.footer-grid{display:grid;grid-template-columns:1.5fr .55fr .55fr;gap:38px}.footer-brand p{max-width:500px;font-size:12.5px}.footer-logo .brand-mark{background:#fff;color:var(--brand)}.footer-logo .brand-copy strong{color:#fff}.footer-logo .brand-copy small{color:#9fb7c0}.footer-links{display:grid;align-content:start;gap:7px;font-size:12.5px}.footer-links strong{font-size:12px;color:#fff;margin-bottom:4px}.footer-links a{color:#b9cbd1}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid #1c3a46;margin-top:28px;padding-top:16px;color:#8ea6ae;font-size:11px;display:flex;justify-content:space-between;gap:20px}
.legal-page,.error-page{min-height:62vh;padding:72px 0}.legal-page h1,.error-page h1{font-size:clamp(32px,5vw,46px)}.error-code{font-size:66px;font-weight:900;color:#c9d7d3}
.admin-body{background:#f5f7fb}.admin-main{padding:45px 0 70px}.admin-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.admin-heading h1,.auth-card h1{font-size:38px}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.admin-card{display:flex;gap:18px;background:#fff;border:1px solid var(--line);padding:22px;border-radius:18px}.admin-card>span{font-size:28px}.admin-card p{margin:4px 0 0;color:var(--muted)}.admin-card.disabled{opacity:.65}.status-panel,.settings-section{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.status-list{display:grid}.status-list span{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0}.ok{color:var(--accent-deep);font-style:normal;font-weight:800}.auth-wrap{min-height:70vh;display:grid;place-items:center}.auth-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow)}.form-stack,.settings-form{display:grid;gap:17px}label{display:grid;gap:7px;font-weight:750}input,textarea{width:100%;border:1px solid #cbd8e8;background:#fff;border-radius:11px;padding:12px 13px;color:var(--text);outline:none}input:focus,textarea:focus{border-color:#4f9684;box-shadow:0 0 0 3px rgba(32,154,125,.12)}label small,.form-stack small{color:var(--muted);font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:10px}.check input{width:auto}.alert{border-radius:12px;padding:13px 15px;margin:0 0 18px}.alert.error{background:#fff0f1;color:#7e2730;border:1px solid #f1c9cd}.alert.success{background:#eefaf5;color:#126244;border:1px solid #bfe3d3}.link-button{background:none;border:0;color:var(--brand);font-weight:800;cursor:pointer}
@media(max-width:900px){.hero-grid,.feature-panel{grid-template-columns:1fr}.hero-copy-wrap{max-width:720px}.journey-card{max-width:720px}.cards-3{grid-template-columns:1fr 1fr}.section-heading,.faq-layout{grid-template-columns:1fr}.section-heading{gap:10px}.footer-grid{grid-template-columns:1.2fr .6fr .6fr}.admin-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}
@media(max-width:720px){.header-inner{min-height:66px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:66px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:12px 18px 18px;flex-direction:column;align-items:stretch;gap:3px;box-shadow:0 16px 30px rgba(18,63,85,.08)}.nav.is-open{display:flex}.nav a{padding:10px 8px}.nav-cta{text-align:center;margin-top:5px}.hero{padding:42px 0 34px}.hero-grid{gap:30px}.path-row{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:0 18px}.cards-2,.cards-3,.article-list{grid-template-columns:1fr}.card{min-height:auto}.feature-points{grid-template-columns:1fr}.closing-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}}
@media(max-width:520px){.container{width:min(100% - 24px,1160px)}body{font-size:15px}.brand small{max-width:185px;overflow:hidden;text-overflow:ellipsis}.hero h1{font-size:31px}.hero-copy{font-size:15.5px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.trust-row{display:grid;gap:7px}.journey-card{padding:17px}.journey-head{align-items:flex-start;flex-direction:column;gap:3px}.section{padding:44px 0}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.admin-heading{align-items:flex-start;flex-direction:column}.admin-heading h1,.auth-card h1{font-size:30px}}

/* Fase 1 Visual 1.2 — buscador y catálogo ampliado */
.tool-finder{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}
.tool-finder>label{font-size:13px;font-weight:800;margin-bottom:9px;display:block}
.tool-search-row{display:flex;gap:9px}
.tool-search-row input{min-width:0;flex:1;padding:10px 12px;font-size:13px}
.tool-search-clear{border:1px solid var(--line);background:var(--surface-soft);color:var(--brand);border-radius:10px;padding:8px 12px;font-size:12px;font-weight:800;cursor:pointer}
.tool-filter-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.filter-chip{border:1px solid var(--line);background:#fff;color:#52676e;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer}
.filter-chip:hover,.filter-chip.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.tool-search-empty{margin:12px 0 0!important;padding:10px 12px;border-radius:10px;background:#fff7e9;color:#72501f!important;font-size:12px!important}
.tool-group.is-filter-empty{display:none}
.card[hidden]{display:none!important}
@media(max-width:560px){
  .tool-finder{padding:13px}
  .tool-search-row{align-items:stretch}
  .tool-search-clear{padding-inline:10px}
  .filter-chip{font-size:10.5px}
}


/* Fase 2 — Motor de herramientas */
.card-open{display:inline-flex;margin-top:12px;font-size:11.5px;font-weight:850;color:var(--brand);align-items:center;gap:5px}
.card-open:hover{color:var(--accent-deep)}
.tool-index-hero,.tool-page-head{background:linear-gradient(180deg,#fff 0%,#f4f8f7 100%);border-bottom:1px solid var(--line);padding:48px 0 34px}
.tool-index-hero h1,.tool-page-head h1{font-size:clamp(30px,3.8vw,44px)}
.tool-index-hero p,.tool-page-head p{color:var(--muted);font-size:15px;margin:0;max-width:760px}
.tool-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.tool-index-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px;min-height:220px;display:flex;flex-direction:column;transition:.2s ease}
.tool-index-card:hover{transform:translateY(-2px);border-color:#bfd3ce;box-shadow:0 12px 30px rgba(18,63,85,.06)}
.tool-index-card h2{font-size:18px;margin-bottom:9px}.tool-index-card p{font-size:13px;color:var(--muted);margin:0 0 14px}.tool-index-action{margin-top:auto;border-top:1px solid #edf1f0;padding-top:12px;font-size:11.5px;font-weight:850;color:var(--brand)}
.tool-back{display:inline-block;font-size:12px;font-weight:800;color:var(--brand);margin-bottom:22px}
.tool-title-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:42px;align-items:center}
.tool-state-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}.tool-state-card strong,.tool-state-card small{display:block}.tool-state-card strong{font-size:14px;margin:12px 0 4px}.tool-state-card small{font-size:11.5px;color:var(--muted);line-height:1.5}
.tool-work-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.tool-workspace,.side-box{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px}.workspace-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.workspace-head h2{font-size:25px}.local-badge{font-size:10px;font-weight:850;background:var(--accent-soft);color:var(--accent-deep);padding:6px 9px;border-radius:999px;white-space:nowrap}.workspace-intro{color:var(--muted);font-size:13px;margin-top:0}.tool-workspace textarea{resize:vertical;min-height:180px}.workspace-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:10px}.workspace-actions>span{font-size:11px;color:var(--muted)}.module-placeholder{margin-top:20px;background:var(--surface-soft);border:1px dashed #b8cfca;border-radius:13px;padding:15px}.module-placeholder strong{font-size:13px}.module-placeholder p{font-size:12px;color:var(--muted);margin:5px 0 0}.tool-side{display:grid;gap:13px}.side-box ul{margin:8px 0 0;padding-left:18px;color:var(--muted);font-size:12.5px}.side-box li+li{margin-top:6px}.privacy-mini{background:var(--brand);color:#fff}.privacy-mini p{color:#d7e5e8;font-size:12px;margin-bottom:0}.privacy-mini strong{font-size:14px}
@media(max-width:900px){.tool-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-title-grid,.tool-work-grid{grid-template-columns:1fr}.tool-state-card{max-width:620px}.tool-side{grid-template-columns:repeat(2,minmax(0,1fr))}.privacy-mini{grid-column:1/-1}}
@media(max-width:620px){.tool-index-grid,.tool-side{grid-template-columns:1fr}.tool-index-hero,.tool-page-head{padding:35px 0 26px}.workspace-head,.workspace-actions{align-items:flex-start;flex-direction:column}.tool-workspace,.side-box{padding:16px}}


/* =========================================================
   FASE 3 — CREADOR DE CV
   ========================================================= */
.tool-page[data-tool-page="crea-mi-cv"] .tool-work-grid{display:block}
.tool-page[data-tool-page="crea-mi-cv"] .tool-state-card strong{color:var(--accent-deep)}
.cv-workspace-wide{width:100%}
.cv-builder{display:grid;gap:18px}
.cv-builder-top{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.cv-builder-top h2{font-size:26px;margin-bottom:6px}
.cv-builder-top p{margin:0;color:var(--muted);font-size:13.5px;max-width:720px}
.cv-progress{display:flex;align-items:center;gap:12px;background:var(--surface-soft);border-radius:11px;padding:10px 12px}
.cv-progress-track{height:7px;background:#dce8e4;border-radius:999px;overflow:hidden;flex:1}
.cv-progress-track span{display:block;width:0;height:100%;background:var(--accent);transition:width .2s ease}
.cv-progress>span{font-size:11px;font-weight:800;color:var(--accent-deep);white-space:nowrap}
.cv-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,.76fr);gap:22px;align-items:start}
.cv-form{display:grid;gap:14px}
.cv-form-section{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}
.cv-section-title{display:flex;gap:11px;align-items:flex-start;margin-bottom:15px}
.cv-section-title>span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:11px;font-weight:900;flex:0 0 auto}
.cv-section-title h3{font-size:16px;margin:1px 0 3px}
.cv-section-title p{font-size:12px;color:var(--muted);margin:0}
.cv-form label{font-size:12.5px}
.cv-form input,.cv-form textarea{font-size:13px}
.cv-form label small{font-size:10.5px}
.compact-btn{padding:9px 12px;font-size:12px}
.cv-repeat-list{display:grid;gap:12px;margin-bottom:12px}
.cv-repeat-item{border:1px solid var(--line);background:#fbfcfc;border-radius:12px;padding:14px;display:grid;gap:12px}
.repeat-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.repeat-head strong{font-size:12px;color:var(--brand)}
.repeat-remove{border:0;background:transparent;color:var(--danger);font-size:11px;font-weight:800;cursor:pointer}
.cv-form-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.cv-form-actions>span{font-size:11px;color:var(--muted)}
.cv-form-actions>div{display:flex;gap:8px;flex-wrap:wrap}
.danger-outline{background:#fff;color:var(--danger);border:1px solid #e7c9cc}
.cv-preview-column{position:sticky;top:90px;display:grid;gap:9px}
.cv-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cv-preview-toolbar strong{font-size:13px}
.cv-paper{background:#fff;border:1px solid #dfe5e4;box-shadow:0 18px 45px rgba(18,63,85,.08);padding:34px;min-height:620px;color:#1c292d}
.cv-paper-head{border-bottom:2px solid var(--brand);padding-bottom:15px;margin-bottom:17px}
.cv-paper-head h2{font-size:27px;letter-spacing:-.025em;margin-bottom:3px;overflow-wrap:anywhere}
.cv-paper-head>strong{font-size:13px;color:var(--accent-deep)}
.cv-contact-line{display:flex;gap:6px 12px;flex-wrap:wrap;margin-top:9px;font-size:9.5px;color:#607176}
.cv-preview-section{margin-top:17px}
.cv-preview-section h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--brand);border-bottom:1px solid #dfe7e5;padding-bottom:5px;margin-bottom:8px}
.cv-preview-section p{font-size:10.5px;line-height:1.55;margin:0;white-space:pre-line}
.cv-preview-entry{margin-bottom:10px}
.cv-preview-entry:last-child{margin-bottom:0}
.cv-preview-entry-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.cv-preview-entry-head strong{font-size:10.5px}
.cv-preview-entry-head span{font-size:9px;color:#68787d;text-align:right}
.cv-preview-entry small{display:block;font-size:9.5px;color:#52676e;margin:1px 0 3px}
.cv-preview-entry p{font-size:10px}
.cv-skills-preview{display:flex;flex-wrap:wrap;gap:5px}
.cv-skills-preview span{font-size:9px;background:#eef5f2;border-radius:999px;padding:4px 7px}
.cv-preview-note{font-size:10.5px;color:var(--muted);text-align:center}
.cv-empty-note{font-size:10px;color:#849196;font-style:italic}
@media(max-width:980px){
  .cv-builder-layout{grid-template-columns:1fr}
  .cv-preview-column{position:static}
  .cv-paper{min-height:auto}
}
@media(max-width:650px){
  .cv-builder-top{display:grid}
  .cv-builder-top .local-badge{justify-self:start}
  .cv-form-section{padding:14px}
  .cv-paper{padding:22px 18px}
  .cv-form-actions{align-items:stretch}
  .cv-form-actions>div{display:grid;width:100%}
  .cv-form-actions .btn{width:100%}
  .cv-preview-toolbar{align-items:stretch;display:grid}
  .cv-preview-toolbar .btn{width:100%}
}
@media print{
  body.cv-print-mode *{visibility:hidden!important}
  body.cv-print-mode #cv-preview,
  body.cv-print-mode #cv-preview *{visibility:visible!important}
  body.cv-print-mode #cv-preview{position:absolute;left:0;top:0;width:100%;border:0;box-shadow:none;padding:12mm 14mm;margin:0;min-height:0}
  body.cv-print-mode .cv-paper-head h2{font-size:24pt}
  body.cv-print-mode .cv-preview-section p{font-size:10pt}
  body.cv-print-mode .cv-preview-entry-head strong{font-size:10pt}
  body.cv-print-mode .cv-preview-entry p{font-size:9.5pt}
  @page{size:A4;margin:0}
}


/* =========================================================
   FASE 4 — ¿ENCAJO EN ESTA VACANTE?
   ========================================================= */
.tool-page[data-tool-page="encajo-en-esta-vacante"] .tool-work-grid{display:block}
.match-workspace-wide{width:100%}
.match-tool{display:grid;gap:18px}
.match-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.match-intro h2{font-size:26px;margin-bottom:6px}
.match-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:800px}
.match-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.match-input-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.match-card-head{display:flex;gap:10px;align-items:flex-start;margin-bottom:13px}
.match-card-head>span{width:27px;height:27px;border-radius:9px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.match-card-head h3{font-size:15px;margin:1px 0 2px}
.match-card-head p{font-size:11.5px;color:var(--muted);margin:0}
.match-input-card label{font-size:12px;margin-bottom:6px}
.match-input-card textarea{font-size:12.5px;resize:vertical;min-height:250px}
.char-count{font-size:10px;color:var(--muted)}
.match-cv-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}
.text-action{border:0;background:transparent;color:var(--accent-deep);font-size:10.5px;font-weight:850;cursor:pointer;padding:4px 0}
.text-action:hover{text-decoration:underline}
.match-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.match-save-state{display:grid;gap:2px}
.local-save-check{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:750}
.local-save-check input{width:auto}
.match-save-state small{font-size:9.5px;color:var(--muted);padding-left:25px}
.match-action-buttons{display:flex;gap:8px;flex-wrap:wrap}
.match-alert{border:1px solid #efd1aa;background:#fff8ec;color:#76501e;border-radius:12px;padding:12px 14px;font-size:12px}
.match-results{display:grid;gap:14px;margin-top:7px}
.match-result-head{display:flex;align-items:end;justify-content:space-between;gap:24px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}
.match-result-head h2{font-size:22px;margin:0}
.match-score{text-align:right;min-width:130px}
.match-score strong{display:block;font-size:30px;line-height:1;color:var(--accent-deep)}
.match-score span{display:block;font-size:9.5px;color:var(--muted);margin-top:4px}
.match-meter{height:9px;background:#dfe9e6;border-radius:999px;overflow:hidden}
.match-meter span{display:block;height:100%;width:0;background:var(--accent);transition:width .35s ease}
.match-score-note{margin:0;font-size:11.5px;color:var(--muted)}
.match-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.result-panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}
.result-panel-title{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px}
.result-panel-title h3{font-size:14px;margin:0 0 2px}
.result-panel-title p{font-size:10.5px;color:var(--muted);margin:0}
.result-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.ok-icon{background:var(--accent-soft);color:var(--accent-deep)}
.warn-icon{background:#fff3df;color:#9a651a}
.word-icon{background:var(--brand-soft);color:var(--brand)}
.question-icon{background:#eef0fb;color:#4d5894}
.idea-icon{background:#e8f7f2;color:var(--accent-deep)}
.result-tags{display:flex;gap:6px;flex-wrap:wrap}
.result-tags span,.keyword-list span{font-size:10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-deep);padding:5px 8px;font-weight:750}
.result-tags.missing span{background:#fff4e4;color:#80571d}
.keyword-list{display:flex;gap:6px;flex-wrap:wrap}
.keyword-list span{background:var(--brand-soft);color:var(--brand)}
.keyword-list span b{margin-left:3px;font-size:8px;opacity:.7}
.question-list{margin:0;padding-left:19px;display:grid;gap:8px}
.question-list li{font-size:11.5px;line-height:1.45;color:#41575e}
.highlight-panel{border-left:3px solid var(--accent)}
.highlight-panel .result-panel-title{margin-bottom:0}
.highlight-panel .result-panel-title p{font-size:11.5px}
.match-disclaimer{background:#f2f5f4;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;gap:7px;font-size:10.5px;color:#5d6d72}
.match-disclaimer strong{color:var(--text)}
.match-empty{font-size:10.5px;color:var(--muted);font-style:italic}
@media(max-width:820px){
  .match-input-grid,.match-result-grid{grid-template-columns:1fr}
  .match-intro,.match-result-head{display:grid}
  .match-score{text-align:left}
}
@media(max-width:620px){
  .match-actions{display:grid}
  .match-action-buttons{display:grid}
  .match-action-buttons .btn{width:100%}
  .match-cv-actions{align-items:flex-start;display:grid}
  .match-result-head h2{font-size:20px}
  .match-disclaimer{display:block}
}


/* =========================================================
   FASE 5 — ADAPTA MI CV
   ========================================================= */
.tool-page[data-tool-page="adapta-mi-cv"] .tool-work-grid{display:block}
.adapt-workspace-wide{width:100%}
.adapt-tool{display:grid;gap:18px}
.adapt-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.adapt-intro h2{font-size:26px;margin-bottom:6px}
.adapt-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:800px}
.adapt-rule{display:flex;gap:10px;align-items:flex-start;background:#fff8ec;border:1px solid #efd8b5;border-radius:12px;padding:12px 14px;font-size:11.5px;color:#6f5125}
.adapt-rule strong{color:#5c401a;white-space:nowrap}
.adapt-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.adapt-input-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.adapt-card-head{display:flex;gap:10px;align-items:flex-start;margin-bottom:13px}
.adapt-card-head>span{width:27px;height:27px;border-radius:9px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.adapt-card-head h3{font-size:15px;margin:1px 0 2px}
.adapt-card-head p{font-size:11.5px;color:var(--muted);margin:0}
.adapt-input-card label{font-size:12px}
.adapt-input-card textarea{font-size:12.5px;resize:vertical;min-height:245px}
.adapt-input-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px}
.adapt-input-actions small{font-size:10px;color:var(--muted)}
.adapt-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.adapt-actions>div:first-child{display:grid;gap:2px}
.adapt-actions>div:first-child>small{font-size:9.5px;color:var(--muted);padding-left:25px}
.adapt-buttons,.adapt-output-actions{display:flex;gap:8px;flex-wrap:wrap}
.adapt-results{display:grid;gap:14px}
.adapt-summary-head{display:flex;justify-content:space-between;align-items:end;gap:20px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}
.adapt-summary-head h2{font-size:22px;margin-bottom:4px}
.adapt-summary-head p{margin:0;color:var(--muted);font-size:11px}
.adapt-score-box{text-align:right}
.adapt-score-box strong{display:block;font-size:30px;line-height:1;color:var(--accent-deep)}
.adapt-score-box span{font-size:9.5px;color:var(--muted)}
.adapt-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.adapt-priority-panel,.adapt-output-panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}
.adapt-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px}
.adapt-panel-head h3{font-size:15px;margin:0 0 3px}
.adapt-panel-head p{margin:0;font-size:10.5px;color:var(--muted)}
.adapt-priority-list{display:grid;gap:8px}
.adapt-priority-item{display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:start;border:1px solid #e5ece9;background:#fbfdfc;border-radius:11px;padding:10px}
.adapt-priority-rank{width:25px;height:25px;border-radius:8px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-size:9px;font-weight:900}
.adapt-priority-text{font-size:11.5px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}
.adapt-priority-score{font-size:9px;color:var(--accent-deep);font-weight:800;white-space:nowrap}
.adapt-suggestions{margin:0;padding-left:18px;display:grid;gap:8px}
.adapt-suggestions li{font-size:11.5px;line-height:1.45;color:#41575e}
.adapt-output-panel textarea{font-size:12px;line-height:1.55;min-height:330px;background:#fbfcfc}
@media(max-width:820px){
  .adapt-input-grid,.adapt-grid{grid-template-columns:1fr}
  .adapt-intro,.adapt-summary-head{display:grid}
  .adapt-score-box{text-align:left}
}
@media(max-width:620px){
  .adapt-actions{display:grid}
  .adapt-buttons{display:grid}
  .adapt-buttons .btn{width:100%}
  .adapt-panel-head{display:grid}
  .adapt-output-actions{display:grid}
  .adapt-output-actions .btn{width:100%}
  .adapt-input-actions{display:grid;align-items:start}
  .adapt-priority-item{grid-template-columns:28px 1fr}
  .adapt-priority-score{grid-column:2}
}


/* =========================================================
   FASE 6 — EXPERIENCIA → HABILIDADES / LOGROS
   ========================================================= */
.tool-page[data-tool-page="experiencia-en-logros"] .tool-work-grid,
.tool-page[data-tool-page="experiencia-sin-titulo"] .tool-work-grid{display:block}
.exp-workspace-wide{width:100%}
.exp-tool{display:grid;gap:18px}
.exp-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.exp-intro h2{font-size:26px;margin-bottom:6px}
.exp-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:820px}
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.exp-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;display:grid;gap:13px}
.exp-card-head{display:flex;gap:10px;align-items:flex-start}
.exp-card-head>span{width:27px;height:27px;border-radius:9px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.exp-card-head h3{font-size:15px;margin:1px 0 2px}
.exp-card-head p{font-size:11.5px;color:var(--muted);margin:0}
.exp-card label{font-size:12px}
.exp-card input,.exp-card textarea{font-size:12.5px}
.exp-card label small{font-size:10px}
.exp-note{display:flex;gap:7px;align-items:flex-start;background:var(--surface-soft);border-radius:10px;padding:10px 11px;font-size:10.5px;color:#53696f}
.exp-note strong{color:var(--accent-deep);white-space:nowrap}
.exp-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.exp-actions>div:first-child{display:grid;gap:2px}
.exp-actions>div:first-child small{font-size:9.5px;color:var(--muted);padding-left:25px}
.exp-buttons,.exp-output-actions{display:flex;gap:8px;flex-wrap:wrap}
.exp-results{display:grid;gap:14px}
.exp-result-head{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}
.exp-result-head h2{font-size:22px;margin-bottom:4px}
.exp-result-head p{margin:0;color:var(--muted);font-size:11px}
.exp-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.exp-before{font-size:12px;line-height:1.55;white-space:pre-line;color:#43585f}
.exp-before ul{padding-left:18px;margin:0;display:grid;gap:6px}
.exp-result-grid textarea,#exp-output{font-size:12px;line-height:1.55;background:#fbfcfc}
.exp-output-actions{justify-content:flex-end}
.skills-confirm-box{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}
.skills-confirm-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.skills-confirm-head strong{font-size:13px}
.skills-confirm-head span{font-size:10px;color:var(--muted)}
.skills-confirm-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.skill-choice{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--line);border-radius:10px;padding:9px;background:#fbfdfc;font-size:11px;cursor:pointer}
.skill-choice input{width:auto;margin-top:2px}
.skill-choice.is-selected{border-color:#a8d9ca;background:var(--accent-soft)}
@media(max-width:850px){
  .exp-grid,.exp-result-grid{grid-template-columns:1fr}
  .skills-confirm-list{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .exp-intro,.exp-actions{display:grid}
  .exp-buttons,.exp-output-actions{display:grid}
  .exp-buttons .btn,.exp-output-actions .btn{width:100%}
  .skills-confirm-list{grid-template-columns:1fr}
  .exp-note{display:grid}
}


/* =========================================================
   FASE 7 — ENTRENADOR DE ENTREVISTAS
   ========================================================= */
.tool-page[data-tool-page="entrename-entrevista"] .tool-work-grid{display:block}
.interview-workspace-wide{width:100%}
.interview-tool{display:grid;gap:18px}
.interview-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.interview-intro h2{font-size:26px;margin-bottom:6px}
.interview-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:820px}
.interview-setup,.interview-session{display:grid;gap:15px}
.interview-setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.interview-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;display:grid;gap:13px}
.interview-card-head{display:flex;gap:10px;align-items:flex-start}
.interview-card-head>span{width:27px;height:27px;border-radius:9px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.interview-card-head h3{font-size:15px;margin:1px 0 2px}
.interview-card-head p{font-size:11.5px;color:var(--muted);margin:0}
.interview-card label{font-size:12px}
.interview-card input,.interview-card textarea{font-size:12.5px}
.interview-setup-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.interview-setup-actions>div{display:grid;gap:2px}
.interview-setup-actions small{font-size:9.5px;color:var(--muted);padding-left:25px}
.interview-session-top{display:flex;justify-content:space-between;gap:20px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.interview-session-top h2{font-size:22px;margin:0}
.interview-progress-box{min-width:210px}
.interview-progress-box strong{display:block;font-size:11px;margin-bottom:7px;text-align:right}
.interview-progress-track{height:7px;background:#dfe8e5;border-radius:999px;overflow:hidden}
.interview-progress-track span{display:block;height:100%;width:12.5%;background:var(--accent);transition:width .25s ease}
.interview-question-card{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:start;background:var(--brand);color:#fff;border-radius:17px;padding:20px}
.interview-question-number{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-weight:900;font-size:14px}
.interview-question-type{display:block;font-size:9.5px;text-transform:uppercase;letter-spacing:.09em;color:#94ddc9;font-weight:850;margin-bottom:5px}
.interview-question-card h3{color:#fff;font-size:19px;margin:0;line-height:1.35}
.interview-answer-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:start}
.interview-answer-card,.interview-side-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}
.interview-answer-card label{font-size:12px}
.interview-answer-card textarea{font-size:12.5px;min-height:220px}
.interview-answer-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-top:6px}
.interview-answer-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px}
.interview-side-card ul{margin:0;padding-left:18px;display:grid;gap:8px}
.interview-side-card li{font-size:11px;line-height:1.45;color:#465d64}
.interview-feedback{display:grid;gap:14px}
.interview-feedback-head{display:flex;justify-content:space-between;gap:18px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.interview-feedback-head h2{font-size:21px;margin:0}
.interview-feedback-score{font-size:12px;font-weight:850;color:var(--accent-deep);background:var(--accent-soft);border-radius:999px;padding:7px 10px}
.interview-feedback-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.interview-structure-panel{border-left:3px solid var(--accent)}
.interview-structure{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.interview-structure-step{border:1px solid var(--line);background:#fbfdfc;border-radius:10px;padding:9px}
.interview-structure-step b{display:block;font-size:10px;color:var(--brand);margin-bottom:3px}
.interview-structure-step span{font-size:10.5px;line-height:1.4;color:#53686f}
.interview-next-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.interview-finish{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;text-align:center}
.interview-finish h2{font-size:24px}
.interview-finish p{font-size:12px;color:var(--muted);max-width:700px;margin:0 auto 15px}
.interview-finish-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
@media(max-width:850px){
  .interview-setup-grid,.interview-feedback-grid{grid-template-columns:1fr}
  .interview-answer-grid{grid-template-columns:1fr}
  .interview-structure{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .interview-intro,.interview-setup-actions,.interview-session-top,.interview-feedback-head{display:grid}
  .interview-progress-box{min-width:0}
  .interview-progress-box strong{text-align:left}
  .interview-question-card{grid-template-columns:40px 1fr;padding:16px}
  .interview-question-number{width:36px;height:36px}
  .interview-question-card h3{font-size:17px}
  .interview-answer-actions,.interview-next-actions,.interview-finish-actions{display:grid}
  .interview-answer-actions .btn,.interview-next-actions .btn,.interview-finish-actions .btn{width:100%}
  .interview-structure{grid-template-columns:1fr}
}


/* =========================================================
   FASE 8 — QUÉ RESPONDO
   ========================================================= */
.tool-page[data-tool-page="que-respondo"] .tool-work-grid{display:block}
.answer-workspace-wide{width:100%}
.answer-tool{display:grid;gap:18px}
.answer-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.answer-intro h2{font-size:26px;margin-bottom:6px}
.answer-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:820px}
.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.answer-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;display:grid;gap:13px}
.answer-card-head{display:flex;gap:10px;align-items:flex-start}
.answer-card-head>span{width:27px;height:27px;border-radius:9px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.answer-card-head h3{font-size:15px;margin:1px 0 2px}
.answer-card-head p{font-size:11.5px;color:var(--muted);margin:0}
.answer-card label{font-size:12px}
.answer-card input,.answer-card textarea,.answer-card select{font-size:12.5px}
.answer-safety-note{display:flex;gap:7px;align-items:flex-start;background:var(--surface-soft);border-radius:10px;padding:10px 11px;font-size:10.5px;color:#53696f}
.answer-safety-note strong{color:var(--accent-deep);white-space:nowrap}
.answer-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.answer-actions>div:first-child{display:grid;gap:2px}
.answer-actions>div:first-child small{font-size:9.5px;color:var(--muted);padding-left:25px}
.answer-buttons,.answer-output-buttons{display:flex;gap:8px;flex-wrap:wrap}
.answer-results{display:grid;gap:14px}
.answer-plan,.answer-output-panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.answer-plan h2{font-size:22px;margin-bottom:12px}
.answer-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.answer-step{border:1px solid var(--line);background:#fbfdfc;border-radius:10px;padding:10px}
.answer-step b{display:block;font-size:10px;color:var(--brand);margin-bottom:3px}
.answer-step span{font-size:10.5px;line-height:1.4;color:#53686f}
.answer-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.answer-output-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:12px}
.answer-output-head h3{font-size:15px;margin:0 0 3px}
.answer-output-head p{font-size:10.5px;color:var(--muted);margin:0}
.answer-output-panel textarea{font-size:12.5px;line-height:1.6;min-height:260px;background:#fbfcfc}
@media(max-width:850px){
  .answer-grid,.answer-result-grid{grid-template-columns:1fr}
  .answer-steps{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .answer-intro,.answer-actions,.answer-output-head{display:grid}
  .answer-buttons,.answer-output-buttons{display:grid}
  .answer-buttons .btn,.answer-output-buttons .btn{width:100%}
  .answer-steps{grid-template-columns:1fr}
  .answer-safety-note{display:grid}
}


/* =========================================================
   FASE 9 — ORGANIZADOR DE POSTULACIONES
   ========================================================= */
.tool-page[data-tool-page="organizador-postulaciones"] .tool-work-grid{display:block}
.tracker-workspace-wide{width:100%}
.tracker-tool{display:grid;gap:18px}
.tracker-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.tracker-intro h2{font-size:26px;margin-bottom:6px}
.tracker-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:820px}
.tracker-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.tracker-stats article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px 15px}
.tracker-stats strong{display:block;font-size:24px;color:var(--brand);line-height:1}
.tracker-stats span{display:block;font-size:10px;color:var(--muted);margin-top:5px}
.tracker-layout{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:15px;align-items:start}
.tracker-form-card,.tracker-list-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.tracker-card-head,.tracker-list-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.tracker-card-head h3,.tracker-list-head h3{font-size:16px;margin:0}
.tracker-form-card form{display:grid;gap:13px}
.tracker-form-card label{font-size:12px}
.tracker-form-card input,.tracker-form-card textarea,.tracker-form-card select,
.tracker-list-tools input,.tracker-list-tools select{font-size:12px}
.tracker-form-actions{display:flex;justify-content:flex-end;gap:8px}
.tracker-list-tools{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.tracker-list-tools input{width:190px}
.tracker-list-tools select{width:165px}
.tracker-empty{border:1px dashed var(--line);border-radius:12px;padding:24px;text-align:center;color:var(--muted);display:grid;gap:4px}
.tracker-empty strong{font-size:12px;color:var(--text)}
.tracker-empty span{font-size:10.5px}
.tracker-list{display:grid;gap:9px}
.tracker-item{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfdfc}
.tracker-item-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.tracker-item-title strong{display:block;font-size:13px}
.tracker-item-title span{display:block;font-size:10.5px;color:var(--muted);margin-top:2px}
.tracker-status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;white-space:nowrap;background:var(--brand-soft);color:var(--brand)}
.tracker-status[data-status="entrevista"]{background:#eef0fb;color:#4d5894}
.tracker-status[data-status="oferta"]{background:var(--accent-soft);color:var(--accent-deep)}
.tracker-status[data-status="descartado"]{background:#f5eeee;color:#8a5656}
.tracker-status[data-status="esperando"]{background:#fff4e4;color:#80571d}
.tracker-meta{display:flex;gap:8px 14px;flex-wrap:wrap;margin-top:9px;padding-top:8px;border-top:1px solid #edf1f0}
.tracker-meta span{font-size:9.5px;color:#5d7076}
.tracker-next{margin-top:8px;background:#f2f7f5;border-radius:9px;padding:8px 9px;font-size:10px;color:#476058}
.tracker-notes{margin-top:7px;font-size:10px;color:var(--muted);white-space:pre-line}
.tracker-item-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:9px}
.tracker-item-actions button{border:0;background:transparent;font-size:10px;font-weight:800;cursor:pointer;color:var(--brand)}
.tracker-item-actions button[data-delete]{color:var(--danger)}
.tracker-data-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.tracker-data-actions>div:first-child{display:grid;gap:2px}
.tracker-data-actions strong{font-size:11px}
.tracker-data-actions span{font-size:9.5px;color:var(--muted)}
.tracker-data-actions>div:last-child{display:flex;gap:7px;flex-wrap:wrap}
@media(max-width:900px){
  .tracker-layout{grid-template-columns:1fr}
}
@media(max-width:700px){
  .tracker-stats{grid-template-columns:1fr 1fr}
  .tracker-intro,.tracker-card-head,.tracker-list-head,.tracker-data-actions{display:grid}
  .tracker-list-tools{justify-content:stretch}
  .tracker-list-tools input,.tracker-list-tools select{width:100%}
  .tracker-form-actions,.tracker-data-actions>div:last-child{display:grid}
  .tracker-form-actions .btn,.tracker-data-actions .btn{width:100%}
}


/* =========================================================
   FASE 10 — COMPARADOR DE OFERTAS
   ========================================================= */
.tool-page[data-tool-page="comparador-ofertas"] .tool-work-grid{display:block}
.offer-workspace-wide{width:100%}
.offer-tool{display:grid;gap:18px}
.offer-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.offer-intro h2{font-size:26px;margin-bottom:6px}
.offer-intro p{margin:0;color:var(--muted);font-size:13.5px;max-width:820px}
.offer-criteria-card,.offer-list-card,.offer-table-card,.offer-insight-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.offer-card-head,.offer-list-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.offer-card-head h3,.offer-list-head h3{font-size:16px;margin:0}
.offer-card-head p{font-size:10.5px;color:var(--muted);margin:3px 0 0}
.offer-weight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.offer-weight-grid label{display:grid;grid-template-columns:145px 1fr 24px;gap:10px;align-items:center;font-size:11px}
.offer-weight-grid input{padding:0}
.offer-weight-grid span{font-size:10px;color:var(--brand);font-weight:850;text-align:center}
.offer-list{display:grid;gap:12px}
.offer-item{border:1px solid var(--line);background:#fbfdfc;border-radius:13px;padding:14px;display:grid;gap:12px}
.offer-item-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.offer-item-head strong{font-size:12px;color:var(--brand)}
.offer-item label{font-size:11.5px}
.offer-item input,.offer-item textarea,.offer-item select{font-size:12px}
.offer-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.offer-actions>div:first-child{display:grid;gap:2px}
.offer-actions>div:first-child small{font-size:9.5px;color:var(--muted);padding-left:25px}
.offer-buttons{display:flex;gap:8px;flex-wrap:wrap}
.offer-results{display:grid;gap:14px}
.offer-result-head{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.offer-result-head h2{font-size:22px;margin-bottom:4px}
.offer-result-head p{margin:0;color:var(--muted);font-size:11px}
.offer-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.offer-summary-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px}
.offer-summary-card strong{display:block;font-size:13px}
.offer-summary-card span{display:block;font-size:10px;color:var(--muted);margin-top:2px}
.offer-summary-card b{display:block;font-size:24px;color:var(--accent-deep);margin-top:8px}
.offer-summary-card small{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.offer-table-wrap{overflow:auto}
.offer-table{width:100%;border-collapse:collapse;min-width:760px}
.offer-table th,.offer-table td{border-bottom:1px solid #edf1f0;padding:9px 10px;text-align:left;font-size:10.5px;vertical-align:top}
.offer-table th{color:var(--brand);font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;background:#fbfdfc}
.offer-table td:first-child,.offer-table th:first-child{position:sticky;left:0;background:#fff;z-index:1}
.offer-insights{display:grid;gap:9px;margin-top:10px}
.offer-insight-item{border:1px solid var(--line);border-radius:11px;padding:10px;background:#fbfdfc}
.offer-insight-item strong{display:block;font-size:11.5px;color:var(--brand)}
.offer-insight-item p{font-size:10.5px;color:#53686f;margin:4px 0 0}
.offer-result-actions{display:flex;justify-content:flex-end}
@media(max-width:850px){
  .offer-summary-grid{grid-template-columns:1fr 1fr}
  .offer-weight-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .offer-intro,.offer-list-head,.offer-actions{display:grid}
  .offer-buttons{display:grid}
  .offer-buttons .btn{width:100%}
  .offer-summary-grid{grid-template-columns:1fr}
  .offer-weight-grid label{grid-template-columns:125px 1fr 24px}
}


/* =========================================================
   FASE 11 — GUÍAS SEO
   ========================================================= */
.guide-index-hero,.guide-head{padding:52px 0 38px;background:linear-gradient(180deg,#fff 0%,#f4f8f7 100%);border-bottom:1px solid var(--line)}
.guide-index-hero h1{font-size:clamp(30px,3.5vw,43px);max-width:780px}
.guide-index-hero p{font-size:15px;color:var(--muted);max-width:720px;margin:0}
.guide-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.guide-index-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;display:flex;flex-direction:column;min-height:220px}
.guide-category{font-size:9.5px;font-weight:900;color:var(--accent-deep);letter-spacing:.08em;text-transform:uppercase}
.guide-index-card h2{font-size:18px;margin:8px 0}
.guide-index-card h2 a:hover{color:var(--brand)}
.guide-index-card p{font-size:12.5px;color:var(--muted);margin:0 0 16px}
.guide-card-foot{margin-top:auto;border-top:1px solid #edf1f0;padding-top:10px;display:flex;justify-content:space-between;gap:12px;font-size:9.5px;color:var(--muted)}
.guide-card-foot a{font-weight:850;color:var(--accent-deep)}
.guide-home-link{font-style:normal;font-size:10px;color:var(--accent-deep);font-weight:850;margin-top:4px}
.guides-all{display:flex;justify-content:center;margin-top:18px}

.guide-head-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:42px;align-items:center}
.breadcrumb{display:flex;gap:7px;flex-wrap:wrap;align-items:center;font-size:9.5px;color:var(--muted);margin-bottom:14px}
.breadcrumb a:hover{color:var(--brand)}
.guide-head h1{font-size:clamp(30px,3.7vw,45px);max-width:820px}
.guide-deck{font-size:15px;line-height:1.55;color:var(--muted);max-width:800px}
.guide-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:9.5px;color:#7a898d;margin-top:13px}
.guide-tool-card{background:var(--brand);color:#fff;border-radius:17px;padding:19px}
.guide-tool-card .eyebrow{color:#8de1ca}
.guide-tool-card strong{display:block;font-size:16px}
.guide-tool-card p{font-size:11px;color:#d8e6e8}
.guide-tool-card .btn{width:100%;background:#fff;color:var(--brand-deep);padding:10px 12px;font-size:11.5px}

.guide-content-section{padding-top:44px}
.guide-layout{display:grid;grid-template-columns:minmax(0,760px) 250px;gap:48px;justify-content:center;align-items:start}
.guide-article{min-width:0}
.guide-intro{font-size:17px;line-height:1.65;color:#344b52;margin:0 0 28px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.guide-section{scroll-margin-top:90px;margin:0 0 30px}
.guide-section h2{font-size:23px;line-height:1.25;margin-bottom:11px}
.guide-section p{font-size:14px;line-height:1.72;color:#475c63;margin:0 0 12px}
.guide-section ul{margin:8px 0 12px;padding-left:20px;display:grid;gap:7px}
.guide-section li{font-size:13.5px;line-height:1.6;color:#475c63}
.guide-inline-cta{margin-top:34px;background:var(--surface-soft);border:1px solid #cee0da;border-radius:16px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.guide-inline-cta h2{font-size:19px;margin-bottom:3px}
.guide-inline-cta p{font-size:11.5px;color:var(--muted);margin:0}
.guide-inline-cta .btn{flex:0 0 auto;font-size:11.5px}

.guide-side{position:sticky;top:92px;display:grid;gap:11px}
.guide-side-box{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px}
.guide-side-box>strong{display:block;font-size:11.5px;margin-bottom:8px}
.guide-side-box ol{margin:0;padding-left:17px;display:grid;gap:7px}
.guide-side-box li,.guide-side-box a{font-size:9.8px;line-height:1.35;color:#5a6e74}
.guide-side-box a:hover{color:var(--brand)}
.guide-side-box.soft{background:var(--surface-soft)}
.guide-side-box.soft p{font-size:10px;line-height:1.5;color:#5a6e74;margin:0}

.guide-related{padding:38px 0 52px;background:#fff;border-top:1px solid var(--line)}
.guide-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.guide-related-card{border:1px solid var(--line);border-radius:13px;padding:14px;display:grid;gap:6px}
.guide-related-card span{font-size:9px;font-weight:900;color:var(--accent-deep)}
.guide-related-card strong{font-size:12.5px;line-height:1.35}
.guide-related-card small{font-size:9.5px;color:var(--muted)}
.guide-related-card:hover{border-color:#bcd4cd;background:#fbfdfc}

@media(max-width:900px){
  .guide-head-grid,.guide-layout{grid-template-columns:1fr}
  .guide-tool-card{max-width:560px}
  .guide-side{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .guide-index-grid,.guide-related-grid{grid-template-columns:1fr}
  .guide-side{grid-template-columns:1fr}
  .guide-inline-cta{display:grid}
  .guide-inline-cta .btn{width:100%}
  .guide-head{padding-top:36px}
  .guide-intro{font-size:15px}
  .guide-section h2{font-size:21px}
}


/* =========================================================
   FASE 12 — ADSENSE + LANZAMIENTO
   ========================================================= */
.ad-unit{margin:24px 0;padding:10px 0;min-height:90px;text-align:center;overflow:hidden}
.ad-label{display:block;font-size:8.5px;text-transform:uppercase;letter-spacing:.08em;color:#8a979b;margin-bottom:5px}
.contact-card{margin:24px 0;background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px}
.contact-card strong{display:block;font-size:13px}
.contact-email{display:inline-block;margin:7px 0;font-size:17px;font-weight:800;color:var(--brand)}
.contact-card p,.contact-note{font-size:12px;color:var(--muted)}
.legal-content{display:grid;gap:5px;margin-top:22px}
.legal-content h2{font-size:20px;margin:20px 0 4px}
.legal-content p{font-size:13.5px;line-height:1.72;color:#475c63;margin:0 0 8px}
.legal-content a{color:var(--accent-deep);font-weight:800}
.legal-updated{margin-top:28px;font-size:10px;color:var(--muted)}
.admin-info-box{margin-top:12px;border:1px solid var(--line);background:var(--surface-soft);border-radius:11px;padding:11px 13px}
.admin-info-box strong{display:block;font-size:11px;color:var(--brand)}
.admin-info-box p{margin:3px 0 0;font-size:10.5px;color:var(--muted)}
.settings-section textarea[name="ads_excluded_paths"]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}
@media(max-width:620px){
  .ad-unit{margin:18px 0}
}

/* FASE 13 - Prepara mi presentacion */
.presentation-workspace-wide{grid-column:1/-1}.presentation-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px;align-items:start}
.presentation-form,.presentation-result{border:1px solid var(--line);border-radius:15px;background:#fff;padding:18px}.form-section-title{display:flex;gap:10px;align-items:center;margin:4px 0 14px}
.form-section-title>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--brand);color:#fff;font-size:11px;font-weight:900}.form-section-title strong{display:block;font-size:13px}.form-section-title small{display:block;color:var(--muted);font-size:9.5px;margin-top:2px}
.presentation-form label{display:grid;gap:5px;font-size:10.5px;font-weight:800;margin-bottom:11px}.presentation-form input,.presentation-form textarea,.presentation-result textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;padding:10px 11px;font:inherit;font-size:12.5px;color:var(--text);resize:vertical}
.pres-contexts{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.pres-context{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:10.5px;font-weight:800;cursor:pointer}.pres-context.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.presentation-result{position:sticky;top:90px;background:var(--surface-soft)}.presentation-result h3{font-size:19px;margin:5px 0 2px}.result-hint{font-size:10.5px;color:var(--muted);margin:0 0 10px}.presentation-result textarea{background:#fff;line-height:1.6;min-height:220px}
.result-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.presentation-check{margin-top:15px;border-top:1px solid #dce7e3;padding-top:12px}.presentation-check strong{font-size:10.5px}.presentation-check ul{padding-left:17px;margin:7px 0 0;display:grid;gap:5px}.presentation-check li{font-size:9.8px;color:var(--muted);line-height:1.45}
@media(max-width:820px){.presentation-grid{grid-template-columns:1fr}.presentation-result{position:static}}@media(max-width:560px){.presentation-form,.presentation-result{padding:14px}.pres-contexts{display:grid;grid-template-columns:1fr}.pres-context{text-align:left}}


/* =========================================================
   FASE 14 — CARTA DE PRESENTACIÓN
   ========================================================= */
.cover-workspace-wide{grid-column:1/-1}
.cover-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:18px;align-items:start}
.cover-form,.cover-result{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}
.cover-form label{display:grid;gap:5px;font-size:10.5px;font-weight:800;margin-bottom:11px}
.cover-form input,.cover-form textarea,.cover-result textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;padding:10px 11px;font:inherit;font-size:12.5px;color:var(--text);resize:vertical}
.cover-tones{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}
.cover-tone{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-size:10.5px;font-weight:800;cursor:pointer}
.cover-tone.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.cover-actions{margin-top:8px}
.cover-result{position:sticky;top:90px;background:var(--surface-soft)}
.cover-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}
.cover-result-head h3{font-size:19px;margin:4px 0 0}
.cover-result-head>span{font-size:9px;color:var(--muted);white-space:nowrap}
.cover-result textarea{background:#fff;min-height:410px;line-height:1.65}
.cover-check{margin-top:15px;border-top:1px solid #dce7e3;padding-top:12px}
.cover-check strong{font-size:10.5px}
.cover-check ul{padding-left:17px;margin:7px 0 0;display:grid;gap:5px}
.cover-check li{font-size:9.8px;color:var(--muted);line-height:1.45}
@media(max-width:860px){
  .cover-layout{grid-template-columns:1fr}
  .cover-result{position:static}
}
@media(max-width:560px){
  .cover-form,.cover-result{padding:14px}
  .cover-tones{display:grid;grid-template-columns:1fr}
  .cover-tone{text-align:left}
  .cover-result-head{display:grid}
}


/* =========================================================
   FASE 15 — MENSAJES LABORALES
   ========================================================= */
.messages-workspace-wide{grid-column:1/-1}
.messages-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;align-items:start}
.messages-form,.messages-result{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}
.message-situations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px}
.message-situation{border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px 11px;text-align:left;cursor:pointer}
.message-situation strong{display:block;font-size:11px}.message-situation small{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.message-situation.is-active{border-color:#8bbdaf;background:var(--surface-soft);box-shadow:inset 3px 0 0 var(--brand)}
.messages-form label,.email-subject-wrap label{display:grid;gap:5px;font-size:10.5px;font-weight:800;margin-bottom:11px}
.messages-form input,.messages-form textarea,.messages-result input,.messages-result textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;padding:10px 11px;font:inherit;font-size:12.5px;color:var(--text);resize:vertical}
.message-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}
.option-label{display:block;font-size:9.5px;font-weight:900;margin-bottom:6px}
.message-pills{display:flex;gap:6px;flex-wrap:wrap}.message-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-size:9.8px;font-weight:800;cursor:pointer}.message-pill.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.messages-result{position:sticky;top:90px;background:var(--surface-soft)}
.messages-result-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.messages-result-head h3{font-size:19px;margin:4px 0 8px}.messages-result-head>span{font-size:9px;color:var(--muted)}
.messages-result textarea{background:#fff;min-height:300px;line-height:1.6}.email-subject-wrap{margin-bottom:8px}.message-check{border-top:1px solid #dce7e3;margin-top:15px;padding-top:12px}.message-check strong{font-size:10.5px}.message-check ul{padding-left:17px;margin:7px 0 0;display:grid;gap:5px}.message-check li{font-size:9.8px;color:var(--muted);line-height:1.45}
@media(max-width:850px){.messages-layout{grid-template-columns:1fr}.messages-result{position:static}}
@media(max-width:600px){.message-situations,.message-options{grid-template-columns:1fr}.messages-form,.messages-result{padding:14px}}


/* =========================================================
   FASE 16 — MI BÚSQUEDA DE EMPLEO
   ========================================================= */
.search-hub-hero{padding:46px 0 34px;background:linear-gradient(180deg,#fff 0%,#f3f8f6 100%);border-bottom:1px solid var(--line)}
.search-hub-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:34px;align-items:center}
.search-hub-hero h1{font-size:clamp(30px,3.6vw,44px);max-width:780px;margin-bottom:10px}
.search-hub-hero p{font-size:14px;line-height:1.55;color:var(--muted);max-width:760px;margin:0}
.search-hub-score{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px}
.search-hub-score strong{display:block;font-size:31px;color:var(--accent-deep);line-height:1}
.search-hub-score>span{font-size:9.5px;color:var(--muted);display:block;margin:5px 0 10px}
.hub-progress-track{height:8px;border-radius:999px;background:#dfe9e6;overflow:hidden}.hub-progress-track span{display:block;width:0;height:100%;background:var(--accent);transition:width .25s ease}

.hub-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.hub-summary-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px}
.hub-summary-card>span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:var(--muted)}
.hub-summary-card strong{display:block;font-size:20px;color:var(--brand);margin:5px 0 3px}
.hub-summary-card small{display:block;font-size:9.5px;line-height:1.4;color:var(--muted)}

.hub-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;align-items:start}
.hub-flow-card,.hub-side-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.hub-section-head{margin-bottom:14px}.hub-section-head h2{font-size:20px;margin:2px 0}.hub-section-head p{font-size:10.5px;color:var(--muted);margin:0}
.hub-flow{display:grid;gap:9px}.hub-step{display:grid;grid-template-columns:34px 1fr;gap:11px;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfdfc}
.hub-step-index{width:29px;height:29px;border-radius:9px;background:var(--brand-soft);display:grid;place-items:center;font-size:10px;font-weight:900;color:var(--brand)}
.hub-step-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.hub-step-top strong{font-size:12px}.hub-step-state{font-size:8.5px;border-radius:999px;background:#f1f3f2;color:#718085;padding:4px 7px;font-weight:850}
.hub-step-body p{font-size:10.5px;line-height:1.45;color:var(--muted);margin:4px 0 9px}.hub-step-actions{display:flex;gap:6px;flex-wrap:wrap}
.hub-step.is-complete{border-color:#b7dace;background:#f7fcfa}.hub-step.is-complete .hub-step-index{background:var(--accent);color:#fff}.hub-step.is-complete .hub-step-state{background:var(--accent-soft);color:var(--accent-deep)}
.hub-side{display:grid;gap:11px;position:sticky;top:88px}.hub-side-card h2{font-size:18px;margin:5px 0}.hub-side-card>p{font-size:10.5px;line-height:1.5;color:var(--muted);margin:0 0 12px}
.hub-side-card .btn{width:100%;font-size:11px}.hub-recent-jobs{display:grid;gap:7px;margin-top:10px}.hub-job-item{border:1px solid var(--line);border-radius:10px;padding:9px;background:#fbfdfc}
.hub-job-item strong,.hub-job-item span,.hub-job-item small{display:block}.hub-job-item strong{font-size:10.5px}.hub-job-item span{font-size:9.5px;color:var(--muted);margin-top:1px}.hub-job-item small{font-size:8.5px;color:#819095;margin-top:4px;text-transform:capitalize}
.hub-empty{font-size:10px;color:var(--muted);margin:6px 0}.hub-privacy-card{background:var(--surface-soft)}.hub-privacy-card strong{font-size:10.5px}.hub-privacy-card p{font-size:9.5px;margin-top:4px}

@media(max-width:900px){
  .hub-summary-grid{grid-template-columns:1fr 1fr}
  .hub-layout{grid-template-columns:1fr}
  .hub-side{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .search-hub-hero-grid{grid-template-columns:1fr}
  .search-hub-score{max-width:300px}
  .hub-summary-grid,.hub-side{grid-template-columns:1fr}
  .hub-step{grid-template-columns:30px 1fr;padding:10px}
  .hub-step-top{align-items:flex-start}
}


/* =========================================================
   FASE 17 — CENTRO DE OPORTUNIDAD
   ========================================================= */
.tracker-item-actions .tracker-center-link{font-size:10px;font-weight:850;color:var(--accent-deep);margin-right:auto}
.opportunity-hero{padding:35px 0 30px;background:linear-gradient(180deg,#fff 0%,#f3f8f6 100%);border-bottom:1px solid var(--line)}
.opportunity-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:28px;align-items:end;margin-top:15px}
.opportunity-hero h1{font-size:clamp(27px,3.2vw,40px);margin:0 0 5px}
.opportunity-hero p{font-size:12.5px;color:var(--muted);margin:0}
.opportunity-status-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.opportunity-status-box span{display:block;font-size:8.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}
.opportunity-status-box strong{display:block;font-size:15px;color:var(--brand);margin-top:4px}

.opportunity-error{max-width:650px;margin:20px auto;background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;text-align:center}
.opportunity-error strong{font-size:16px}.opportunity-error p{font-size:11px;color:var(--muted)}
.opportunity-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:16px;align-items:start}
.opportunity-main{display:grid;gap:14px}.opportunity-card,.opportunity-side-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.opportunity-card-head{display:flex;justify-content:space-between;gap:15px;align-items:start;margin-bottom:14px}
.opportunity-card-head h2{font-size:19px;margin:2px 0}.opportunity-card-head p{font-size:10px;color:var(--muted);margin:2px 0 0}
.opportunity-card-head>span{font-size:9px;color:var(--accent-deep);font-weight:800}
.opportunity-card label{display:grid;gap:5px;font-size:10.5px;font-weight:800;margin-bottom:11px}
.opportunity-card input,.opportunity-card textarea,.opportunity-card select{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;padding:10px 11px;font:inherit;font-size:12px;color:var(--text);resize:vertical}
.opp-vacancy-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:-5px 0 13px}
.opp-vacancy-actions span{font-size:8.5px;color:var(--muted)}
.opportunity-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.opportunity-action{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:start;border:1px solid var(--line);border-radius:11px;background:#fbfdfc;padding:10px;text-align:left;cursor:pointer}
.opportunity-action>span{width:27px;height:27px;border-radius:8px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-size:8.5px;font-weight:900}
.opportunity-action strong{display:block;font-size:10.5px}.opportunity-action small{display:block;font-size:8.8px;color:var(--muted);margin-top:2px;line-height:1.35}
.opportunity-action:hover{border-color:#9fcfc0;background:var(--surface-soft)}
.opportunity-side{display:grid;gap:11px;position:sticky;top:88px}
.opp-summary-list{margin:10px 0 0}.opp-summary-list>div{display:grid;grid-template-columns:80px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid #edf1f0}
.opp-summary-list>div:last-child{border-bottom:0}.opp-summary-list dt{font-size:8.8px;color:var(--muted)}.opp-summary-list dd{font-size:10px;font-weight:750;margin:0;text-align:right;overflow-wrap:anywhere}
.opportunity-side-card>strong{display:block;font-size:12px;margin-top:6px}.opportunity-side-card>p{font-size:9.5px;line-height:1.5;color:var(--muted)}
.opportunity-local-note{background:var(--surface-soft)}
@media(max-width:850px){
 .opportunity-layout{grid-template-columns:1fr}.opportunity-side{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .opportunity-hero-grid{grid-template-columns:1fr}.opportunity-status-box{max-width:260px}
 .opportunity-actions-grid,.opportunity-side{grid-template-columns:1fr}
 .opportunity-card{padding:14px}.opportunity-card-head{display:grid}
 .opp-vacancy-actions{align-items:flex-start;display:grid}
}


/* =========================================================
   FASE 18 — HISTORIAL POR OPORTUNIDAD
   ========================================================= */
.timeline-card{overflow:hidden}
.opp-event-form{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;padding:13px;margin-bottom:14px}
.opp-event-form label{display:grid;gap:5px;font-size:10.5px;font-weight:800;margin-bottom:10px}
.opp-event-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.opp-timeline-empty{border:1px dashed var(--line);border-radius:11px;padding:20px;text-align:center;display:grid;gap:4px}
.opp-timeline-empty strong{font-size:11px}.opp-timeline-empty span{font-size:9.5px;color:var(--muted)}
.opp-timeline{display:grid;gap:0;position:relative}
.opp-timeline:before{content:"";position:absolute;left:12px;top:7px;bottom:7px;width:2px;background:#e4ece9}
.opp-timeline-item{display:grid;grid-template-columns:26px 1fr;gap:10px;position:relative;padding:4px 0 14px}
.opp-timeline-item:last-child{padding-bottom:0}
.opp-timeline-marker{width:12px;height:12px;border-radius:50%;background:var(--brand);border:3px solid #fff;box-shadow:0 0 0 1px #cbdad5;margin:5px 0 0 7px;z-index:1}
.opp-timeline-item[data-event-type="entrevista"] .opp-timeline-marker{background:#5f68a6}
.opp-timeline-item[data-event-type="oferta"] .opp-timeline-marker{background:var(--accent)}
.opp-timeline-item[data-event-type="rechazo"] .opp-timeline-marker{background:#9b6666}
.opp-timeline-item[data-event-type="seguimiento"] .opp-timeline-marker{background:#c18934}
.opp-timeline-body{border:1px solid var(--line);border-radius:11px;padding:10px 11px;background:#fff}
.opp-timeline-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.opp-timeline-head>div{display:grid;gap:2px}
.opp-event-type{font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:900}
.opp-timeline-head strong{font-size:10.8px}
.opp-timeline-head time{font-size:8.5px;color:var(--muted);white-space:nowrap}
.opp-timeline-body p{font-size:10px;line-height:1.5;color:#556b71;margin:7px 0 0;white-space:pre-line}
.opp-timeline-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:7px}
.opp-timeline-actions button{border:0;background:transparent;font-size:8.8px;font-weight:800;cursor:pointer;color:var(--brand)}
.opp-timeline-actions button[data-event-delete]{color:var(--danger)}
@media(max-width:600px){
 .opp-timeline-head{display:grid}
 .opp-timeline-head time{white-space:normal}
 .opp-event-actions{display:grid}
 .opp-event-actions .btn{width:100%}
}


/* =========================================================
   FASE 19 — AGENDA Y ALERTAS LOCALES
   ========================================================= */
.hub-agenda-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;margin-bottom:16px}
.hub-agenda-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:13px}
.hub-agenda-head h2{font-size:19px;margin:2px 0}.hub-agenda-head p{font-size:10px;color:var(--muted);margin:2px 0 0}
.hub-agenda-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}
.hub-agenda-stats article{border:1px solid var(--line);border-radius:11px;background:#fbfdfc;padding:10px 11px}
.hub-agenda-stats strong{display:block;font-size:20px;color:var(--brand)}.hub-agenda-stats span{display:block;font-size:8.8px;color:var(--muted);margin-top:2px}
.hub-alert-empty{border:1px dashed var(--line);border-radius:11px;padding:18px;text-align:center;display:grid;gap:3px}
.hub-alert-empty strong{font-size:10.5px}.hub-alert-empty span{font-size:9px;color:var(--muted)}
.hub-alert-list{display:grid;gap:7px}
.hub-alert-item{display:grid;grid-template-columns:29px 1fr;gap:9px;border:1px solid var(--line);border-radius:11px;padding:10px;background:#fbfdfc}
.hub-alert-item:hover{border-color:#a9cec2;background:var(--surface-soft)}
.hub-alert-icon{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:900;font-size:10px}
.hub-alert-item[data-alert-type="overdue"]{border-left:3px solid #a36363}.hub-alert-item[data-alert-type="overdue"] .hub-alert-icon{background:#f8eded;color:#8f5252}
.hub-alert-item[data-alert-type="today"]{border-left:3px solid #c48a35}.hub-alert-item[data-alert-type="today"] .hub-alert-icon{background:#fff3df;color:#8a5d1d}
.hub-alert-item[data-alert-type="upcoming"]{border-left:3px solid var(--accent)}.hub-alert-item[data-alert-type="unplanned"]{border-left:3px solid #7f8f94}
.hub-alert-item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.hub-alert-item-head strong{font-size:10.5px}.hub-alert-item-head span{font-size:8px;border-radius:999px;background:#eef2f1;color:#68787d;padding:4px 6px;font-weight:850;white-space:nowrap}
.hub-alert-item small{display:block;font-size:8.8px;color:var(--muted);margin-top:1px}.hub-alert-item p{font-size:9.3px;line-height:1.4;color:#566a70;margin:4px 0 0}
.tracker-next{display:flex;flex-wrap:wrap;gap:4px}
@media(max-width:700px){
 .hub-agenda-head{display:grid}.hub-agenda-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
 .hub-agenda-stats{grid-template-columns:1fr}.hub-alert-item-head{display:grid}
}


/* =========================================================
   FASE 20 — RESPALDO INTEGRAL
   ========================================================= */
.hub-backup-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;margin-bottom:16px}
.hub-backup-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:13px}
.hub-backup-head h2{font-size:19px;margin:2px 0}
.hub-backup-head p{font-size:10px;color:var(--muted);margin:2px 0 0;max-width:700px}
.hub-backup-badge{font-size:8.5px;font-weight:850;color:var(--accent-deep);background:var(--accent-soft);border-radius:999px;padding:6px 8px;white-space:nowrap}
.hub-backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.hub-backup-grid article{border:1px solid var(--line);border-radius:11px;background:#fbfdfc;padding:12px}
.hub-backup-grid strong{display:block;font-size:11px}
.hub-backup-grid p{font-size:9.5px;line-height:1.45;color:var(--muted);min-height:42px;margin:5px 0 10px}
.hub-backup-preview{margin-top:11px;border:1px solid #b8d8ce;background:var(--surface-soft);border-radius:12px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) 250px auto;gap:12px;align-items:end}
.hub-backup-preview>div:first-child>strong{display:block;font-size:11px;margin-top:3px}
.hub-backup-preview>div:first-child p{font-size:9.3px;line-height:1.45;color:var(--muted);margin:4px 0 0}
.hub-backup-preview label{display:grid;gap:5px;font-size:9.5px;font-weight:800}
.hub-backup-preview select{width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 9px;font:inherit;font-size:10px;color:var(--text)}
.hub-backup-preview-actions{display:flex;gap:7px}
.hub-backup-status{display:flex;gap:6px;align-items:flex-start;margin-top:10px;padding-top:10px;border-top:1px solid #edf1f0;font-size:9.3px;color:var(--muted)}
.hub-backup-status strong{color:var(--text);white-space:nowrap}
.hub-backup-status[data-status="success"]{color:var(--accent-deep)}
.hub-backup-status[data-status="error"]{color:#8f5252}
@media(max-width:860px){
 .hub-backup-preview{grid-template-columns:1fr 1fr}
 .hub-backup-preview-actions{grid-column:1/-1;justify-content:flex-end}
}
@media(max-width:620px){
 .hub-backup-head,.hub-backup-grid,.hub-backup-preview{display:grid;grid-template-columns:1fr}
 .hub-backup-badge{justify-self:start}
 .hub-backup-grid p{min-height:0}
 .hub-backup-preview-actions{grid-column:auto;display:grid}
 .hub-backup-preview-actions .btn,.hub-backup-grid .btn{width:100%}
 .hub-backup-status{display:grid}
}


/* =========================================================
   FASE 21 — CENTRO DE DATOS Y PRIVACIDAD
   ========================================================= */
.hub-data-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;margin-bottom:16px}
.hub-data-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:13px}
.hub-data-head h2{font-size:19px;margin:2px 0}
.hub-data-head p{font-size:10px;color:var(--muted);margin:2px 0 0;max-width:760px}
.hub-storage-total{min-width:155px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);padding:11px 12px}
.hub-storage-total strong{display:block;font-size:20px;color:var(--brand)}
.hub-storage-total span{display:block;font-size:8.7px;color:var(--muted);margin-top:2px}
.hub-data-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}
.hub-data-summary article{border:1px solid var(--line);border-radius:11px;background:#fbfdfc;padding:10px}
.hub-data-summary strong{display:block;font-size:19px;color:var(--brand)}
.hub-data-summary span{display:block;font-size:8.7px;color:var(--muted);margin-top:2px}
.hub-data-list{display:grid;gap:7px}
.hub-data-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:11px;background:#fbfdfc}
.hub-data-info strong{display:block;font-size:10.8px}
.hub-data-info p{font-size:9.3px;line-height:1.4;color:var(--muted);margin:3px 0}
.hub-data-info span{display:block;font-size:8.5px;color:#7b8b90}
.hub-data-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.hub-data-empty{border:1px dashed var(--line);border-radius:11px;padding:18px;text-align:center;display:grid;gap:4px}
.hub-data-empty strong{font-size:10.5px}.hub-data-empty span{font-size:9px;color:var(--muted)}
.hub-data-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:12px;padding-top:11px;border-top:1px solid #edf1f0}
.hub-data-actions>div:first-child{display:grid;gap:2px}
.hub-data-actions>div:first-child strong{font-size:10px}.hub-data-actions>div:first-child span{font-size:8.8px;color:var(--muted)}
.hub-data-actions>div:last-child{display:flex;gap:7px;flex-wrap:wrap}
.hub-data-status{display:flex;gap:6px;align-items:flex-start;margin-top:10px;font-size:9.3px;color:var(--muted)}
.hub-data-status strong{white-space:nowrap;color:var(--text)}
.hub-data-status[data-status="success"]{color:var(--accent-deep)}
.hub-data-status[data-status="error"]{color:#8f5252}
@media(max-width:800px){
 .hub-data-head{display:grid}.hub-storage-total{max-width:220px}
 .hub-data-summary{grid-template-columns:1fr 1fr}
 .hub-data-row{grid-template-columns:1fr}
 .hub-data-row-actions{justify-content:flex-start}
}
@media(max-width:560px){
 .hub-data-summary{grid-template-columns:1fr}
 .hub-data-actions{display:grid}
 .hub-data-actions>div:last-child{display:grid}
 .hub-data-actions .btn{width:100%}
 .hub-data-status{display:grid}
}


/* =========================================================
   FASES 22–26 — MI BÚSQUEDA AVANZADA
   ========================================================= */
.search-subnav{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:64px;z-index:20}
.search-subnav-inner{display:flex;gap:4px;overflow:auto;padding-top:7px;padding-bottom:7px}
.search-subnav a{flex:0 0 auto;padding:7px 10px;border-radius:999px;font-size:9.5px;font-weight:850;color:var(--muted)}
.search-subnav a:hover,.search-subnav a.is-active{background:var(--brand-soft);color:var(--brand)}
.search-module-hero{padding:38px 0 28px;background:linear-gradient(180deg,#fff 0%,#f3f8f6 100%);border-bottom:1px solid var(--line)}
.search-module-hero h1{font-size:clamp(27px,3.3vw,40px);margin:4px 0 8px;max-width:850px}
.search-module-hero p{font-size:12.5px;line-height:1.55;color:var(--muted);max-width:820px;margin:0}
.module-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:13px}
.module-head h2{font-size:18px;margin:2px 0}.module-head p{font-size:9.7px;color:var(--muted);margin:2px 0 0}
.module-empty{border:1px dashed var(--line);border-radius:12px;padding:22px;text-align:center;display:grid;gap:4px}
.module-empty strong{font-size:11px}.module-empty span{font-size:9.5px;color:var(--muted)}
.module-side-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.module-side-card h2{font-size:17px;margin:5px 0}.module-side-card p,.module-side-card li{font-size:9.7px;line-height:1.5;color:var(--muted)}
.module-side-card ul{margin:8px 0 0;padding-left:17px;display:grid;gap:5px}.module-side-card.soft{background:var(--surface-soft)}

/* Overview command center */
.hub-command-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;margin-bottom:16px}
.hub-command-head h2{font-size:18px;margin:2px 0}.hub-command-head p{font-size:9.5px;color:var(--muted);margin:2px 0 12px}
.hub-command-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.hub-command-grid a{border:1px solid var(--line);border-radius:11px;background:#fbfdfc;padding:10px}
.hub-command-grid a:hover{border-color:#a8cdc1;background:var(--surface-soft)}
.hub-command-grid span{display:block;font-size:8px;font-weight:900;color:var(--accent-deep)}
.hub-command-grid strong{display:block;font-size:10.5px;margin:3px 0}.hub-command-grid small{font-size:8.7px;color:var(--muted)}

/* Phase 22 diagnostic */
.diagnostic-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}
.diagnostic-summary article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}
.diagnostic-summary strong{display:block;font-size:21px;color:var(--brand)}.diagnostic-summary span{font-size:8.8px;color:var(--muted)}
.diagnostic-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:15px;align-items:start}
.diagnostic-main{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px}
.diagnostic-list{display:grid;gap:8px}
.diagnostic-item{display:grid;grid-template-columns:30px 1fr;gap:9px;border:1px solid var(--line);border-radius:11px;padding:10px;background:#fbfdfc}
.diagnostic-marker{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-size:10px;font-weight:900}
.diagnostic-item[data-priority="high"]{border-left:3px solid #a36363}.diagnostic-item[data-priority="high"] .diagnostic-marker{background:#f8eded;color:#8f5252}
.diagnostic-item[data-priority="medium"]{border-left:3px solid #c48a35}.diagnostic-item[data-priority="ok"]{border-left:3px solid var(--accent)}
.diagnostic-item-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.diagnostic-item-top strong{font-size:10.7px}.diagnostic-item-top span{font-size:8px;border-radius:999px;background:#eef2f1;padding:4px 6px;color:var(--muted);font-weight:850}
.diagnostic-item p{font-size:9.5px;line-height:1.45;color:var(--muted);margin:4px 0}.diagnostic-side{display:grid;gap:10px;position:sticky;top:116px}

/* Phase 23 plan */
.plan-top{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}
.plan-progress-card{display:grid;grid-template-columns:90px 220px;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:13px;padding:11px 13px}
.plan-progress-card strong{display:block;font-size:21px;color:var(--accent-deep)}.plan-progress-card span{font-size:8.7px;color:var(--muted)}
.plan-top-actions{display:flex;gap:7px;flex-wrap:wrap}
.plan-add-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:12px}
.plan-add-card label{font-size:10px;font-weight:800}.plan-add-actions{display:flex;justify-content:flex-end;gap:7px;align-items:center;margin-top:8px}
.plan-add-actions select{border:1px solid var(--line);border-radius:9px;padding:8px 9px;background:#fff;font-size:10px}
.plan-board{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.plan-board>section{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;min-height:220px}
.plan-column-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.plan-column-head strong{font-size:11px}.plan-column-head span{font-size:8.5px;background:var(--brand-soft);color:var(--brand);padding:4px 7px;border-radius:999px;font-weight:850}
.plan-list{display:grid;gap:7px}.plan-task{display:grid;grid-template-columns:20px 1fr auto;gap:8px;align-items:start;border:1px solid var(--line);border-radius:10px;padding:9px;background:#fbfdfc}
.plan-task[data-priority="high"]{border-left:3px solid #a36363}.plan-task[data-priority="low"]{opacity:.85}
.plan-task input{margin-top:2px}.plan-task strong{display:block;font-size:9.8px}.plan-task span{display:block;font-size:8.4px;color:var(--muted);margin-top:3px}
.plan-task-actions{display:grid;justify-items:end;gap:3px}.plan-task-actions a,.plan-task-actions button{border:0;background:transparent;color:var(--brand);font-size:8.4px;font-weight:850;cursor:pointer;padding:1px}.plan-task-actions button{color:var(--danger)}

/* Phase 24 pipeline */
.pipeline-section{overflow:hidden}.pipeline-tools{display:flex;gap:8px;align-items:center;margin-bottom:12px}
.pipeline-tools input{min-width:260px;flex:1}.pipeline-tools select{min-width:120px}
.pipeline-tools input,.pipeline-tools select{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 10px;font-size:10.5px}
.pipeline-board{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:9px;overflow:auto;padding-bottom:8px}
.pipeline-column{background:#f5f8f7;border:1px solid var(--line);border-radius:12px;padding:9px;min-height:350px}
.pipeline-column-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.pipeline-column-head strong{font-size:9.5px}.pipeline-column-head span{font-size:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px 6px}
.pipeline-list{display:grid;gap:7px}.pipeline-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px}
.pipeline-card>strong,.pipeline-card>span,.pipeline-card>small{display:block}.pipeline-card>strong{font-size:9.8px}.pipeline-card>span{font-size:8.8px;color:var(--muted);margin-top:2px}.pipeline-card>small{font-size:8px;color:#7c8d92;margin-top:5px;line-height:1.35}
.pipeline-card-actions{display:flex;justify-content:space-between;gap:5px;margin-top:8px}.pipeline-card-actions button,.pipeline-card-actions a{border:0;background:var(--surface-soft);border-radius:7px;padding:5px 7px;font-size:8px;color:var(--brand);font-weight:850;cursor:pointer}

/* Phase 25 stats */
.stats-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}.stats-cards article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}.stats-cards span,.stats-cards small{display:block;font-size:8.7px;color:var(--muted)}.stats-cards strong{display:block;font-size:22px;color:var(--brand);margin:4px 0}
.stats-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stats-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.stats-bars{display:grid;gap:7px}.stats-bar-row{display:grid;grid-template-columns:120px 1fr 25px;gap:8px;align-items:center}.stats-bar-row>span{font-size:8.8px;color:var(--muted)}.stats-bar-row>strong{font-size:8.8px;text-align:right}.stats-bar-track{height:8px;border-radius:999px;background:#edf2f0;overflow:hidden}.stats-bar-track i{display:block;height:100%;background:var(--accent);border-radius:999px;min-width:2px}
.stats-months{height:170px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;align-items:end;padding-top:20px}.stats-month{height:100%;display:grid;grid-template-rows:18px 1fr 18px;justify-items:center;align-items:end}.stats-month strong,.stats-month span{font-size:8px}.stats-month span{text-transform:capitalize;color:var(--muted)}.stats-month i{display:block;width:24px;max-height:100%;background:var(--brand-soft);border-radius:6px 6px 2px 2px}
.stats-kv{margin:0}.stats-kv>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #edf1f0;padding:9px 0}.stats-kv>div:last-child{border-bottom:0}.stats-kv dt{font-size:9px;color:var(--muted)}.stats-kv dd{font-size:9.5px;font-weight:850;margin:0;text-align:right}.stats-insights{display:grid;gap:7px}.stats-insights p{border:1px solid var(--line);border-radius:9px;background:#fbfdfc;padding:9px;font-size:9.3px;line-height:1.45;color:#566a70;margin:0}

/* Phase 26 weekly review */
.review-period{display:flex;justify-content:center;gap:12px;align-items:center;margin-bottom:12px}.review-period>strong{min-width:220px;text-align:center;font-size:11px}
.review-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}.review-summary-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}.review-summary-grid strong{display:block;font-size:21px;color:var(--brand)}.review-summary-grid span{font-size:8.5px;color:var(--muted)}
.review-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px}.review-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.review-notes-card{grid-column:1/-1}
.review-activity,.review-next-actions{display:grid;gap:7px}.review-line,.review-next-item{border:1px solid var(--line);border-radius:9px;background:#fbfdfc;padding:9px}.review-line span{font-size:7.8px;text-transform:uppercase;font-weight:900;color:var(--accent-deep)}.review-line strong,.review-line small,.review-next-item strong,.review-next-item span,.review-next-item small{display:block}.review-line strong,.review-next-item strong{font-size:9.5px;margin-top:2px}.review-line small,.review-next-item small{font-size:8px;color:var(--muted);margin-top:3px}.review-next-item span{font-size:8.5px;color:#61747a;margin-top:2px}
.review-notes-card textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;padding:10px 11px;font:inherit;font-size:11.5px;line-height:1.55;resize:vertical}.review-actions{display:flex;justify-content:flex-end;gap:7px;align-items:center;margin-top:8px}.review-actions>span{margin-right:auto;font-size:8.7px;color:var(--muted)}

@media(max-width:900px){
 .hub-command-grid{grid-template-columns:repeat(3,1fr)}
 .diagnostic-layout{grid-template-columns:1fr}.diagnostic-side{position:static;grid-template-columns:1fr 1fr}
 .stats-layout{grid-template-columns:1fr}
}
@media(max-width:700px){
 .diagnostic-summary,.stats-cards,.review-summary-grid{grid-template-columns:1fr 1fr}
 .plan-top{display:grid}.plan-progress-card{grid-template-columns:80px 1fr}.plan-board,.review-layout{grid-template-columns:1fr}
 .review-notes-card{grid-column:auto}.pipeline-tools{display:grid}.pipeline-tools input{min-width:0;width:100%}
}
@media(max-width:520px){
 .search-subnav{top:58px}.hub-command-grid{grid-template-columns:1fr 1fr}
 .diagnostic-summary,.stats-cards,.review-summary-grid,.diagnostic-side{grid-template-columns:1fr}
 .module-head,.review-actions{display:grid}.plan-top-actions{display:grid}.plan-top-actions .btn,.review-actions .btn{width:100%}
 .plan-progress-card{grid-template-columns:1fr}.plan-task{grid-template-columns:20px 1fr}.plan-task-actions{grid-column:2;display:flex;justify-content:flex-start}
 .stats-bar-row{grid-template-columns:95px 1fr 22px}.review-period{display:grid}.review-period>strong{min-width:0}
}


/* =========================================================
   MACROENTREGA FASES 27–32
   ========================================================= */
.hub-command-grid-secondary{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:8px}
.macro-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:12px}
.macro-toolbar>div>strong,.macro-toolbar>div>span{display:block}.macro-toolbar>div>strong{font-size:12px}.macro-toolbar>div>span{font-size:8.8px;color:var(--muted);margin-top:2px}
.macro-toolbar-actions{display:flex;gap:7px;align-items:center}.macro-toolbar input,.macro-toolbar select,.decision-criteria select{border:1px solid var(--line);border-radius:9px;padding:8px 9px;background:#fff;font-size:9.5px}
.macro-form-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;margin-bottom:12px}.macro-form-card label{font-size:9.5px;font-weight:800}.macro-form-card input,.macro-form-card select,.macro-form-card textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#fbfcfc;padding:8px 9px;font:inherit;font-size:10px;margin-top:4px}.macro-form-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}
.macro-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.macro-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px}.macro-card-head{display:flex;justify-content:space-between;gap:8px}.macro-card-head strong,.macro-card-head span{display:block}.macro-card-head strong{font-size:10.5px}.macro-card-head span,.macro-card-head small{font-size:8.4px;color:var(--muted)}.macro-card p{font-size:9px;line-height:1.45;color:var(--muted);min-height:38px}.macro-card-actions{display:flex;flex-wrap:wrap;gap:5px}.macro-card-actions button,.document-actions button{border:0;border-radius:7px;padding:5px 7px;background:var(--surface-soft);color:var(--brand);font-size:8px;font-weight:850;cursor:pointer}.macro-card-actions button:last-child,.document-actions button:last-child{color:var(--danger)}
.document-list{display:grid;gap:8px}.document-item{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px}.document-item span,.document-item strong,.document-item small{display:block}.document-item span{font-size:7.5px;font-weight:900;color:var(--accent-deep)}.document-item strong{font-size:10px;margin:2px 0}.document-item small,.document-item p{font-size:8.4px;color:var(--muted);margin:0}.document-actions{display:flex;gap:5px;flex-wrap:wrap}
.checklist-panel{max-width:850px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px}.checklist-progress{display:grid;grid-template-columns:90px 1fr;gap:12px;align-items:center;margin-bottom:12px}.checklist-progress strong,.checklist-progress span{display:block}.checklist-progress strong{font-size:20px;color:var(--brand)}.checklist-progress span{font-size:8px;color:var(--muted)}.checklist-items{display:grid;gap:6px}.checklist-row{display:grid;grid-template-columns:20px 1fr auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:8px;font-size:9.5px}.checklist-row button{border:0;background:transparent;color:var(--danger);cursor:pointer}.checklist-custom{display:flex;gap:7px;margin-top:10px}.checklist-custom input{flex:1;border:1px solid var(--line);border-radius:9px;padding:8px 9px;font-size:9.5px}
.decision-criteria{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.criterion-chip{display:flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 7px 5px 10px}.criterion-chip span{font-size:8.7px;font-weight:850}.criterion-chip select{padding:4px 5px;border-radius:999px}.criterion-chip button{border:0;background:transparent;color:var(--danger);cursor:pointer}.decision-table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:13px}.decision-table{width:100%;border-collapse:collapse;min-width:780px}.decision-table th,.decision-table td{border-bottom:1px solid var(--line);padding:9px;text-align:center;font-size:8.8px}.decision-table th:first-child,.decision-table td:first-child{text-align:left}.decision-table td strong,.decision-table td small{display:block}.decision-table td small{color:var(--muted);font-size:7.8px}.decision-table select{border:1px solid var(--line);border-radius:7px;padding:5px;background:#fff;font-size:8.5px}.decision-note{margin-top:10px;background:var(--surface-soft);border-radius:10px;padding:10px}.decision-note strong{font-size:9px}.decision-note p{font-size:8.7px;color:var(--muted);margin:3px 0 0}
.dossier-sheet{max-width:900px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px}.dossier-sheet header{border-bottom:2px solid var(--brand);padding-bottom:12px}.dossier-sheet header span{font-size:8px;font-weight:900;color:var(--accent-deep)}.dossier-sheet h1{font-size:24px;margin:5px 0}.dossier-sheet header p{font-size:11px;color:var(--muted)}.dossier-sheet section{padding:14px 0;border-bottom:1px solid var(--line)}.dossier-sheet h2{font-size:13px;margin:0 0 8px}.dossier-sheet p,.dossier-sheet li,.dossier-sheet dt,.dossier-sheet dd{font-size:9.5px;line-height:1.5}.dossier-sheet dl{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dossier-sheet dl div{background:#f7faf9;border-radius:8px;padding:8px}.dossier-sheet dt{color:var(--muted)}.dossier-sheet dd{margin:2px 0 0;font-weight:800}
@media(max-width:900px){.hub-command-grid-secondary{grid-template-columns:repeat(3,1fr)}.macro-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.hub-command-grid-secondary,.macro-card-grid{grid-template-columns:1fr}.macro-toolbar,.macro-toolbar-actions,.document-item{display:grid}.macro-toolbar-actions input{width:100%}.checklist-progress{grid-template-columns:1fr}.dossier-sheet{padding:16px}.dossier-sheet dl{grid-template-columns:1fr}}
@media print{
 body *{visibility:hidden!important}.dossier-sheet,.dossier-sheet *{visibility:visible!important}.dossier-sheet{position:absolute;left:0;top:0;width:100%;max-width:none;border:0;padding:18mm;border-radius:0}.dossier-sheet header span{color:#333}.site-header,.search-subnav,.search-module-hero,.macro-toolbar,.site-footer{display:none!important}
}


/* =========================================================
   MACROENTREGA FASES 33–40 — CRECIMIENTO ORGÁNICO
   ========================================================= */
.guide-topic-nav{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}
.guide-topic-nav a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-size:9.5px;font-weight:850;color:var(--brand)}
.guide-topic-nav a span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;border-radius:999px;background:var(--brand-soft);font-size:8px}
.guide-feed-note,.guide-category-more{display:flex;justify-content:center;gap:8px;margin-top:18px;font-size:9.5px;color:var(--muted)}
.guide-feed-note a,.guide-category-more a{font-weight:850;color:var(--accent-deep)}
.category-crosslinks{margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}
.category-crosslinks>strong{display:block;font-size:10px;margin-bottom:8px}.category-crosslinks>div{display:flex;flex-wrap:wrap;gap:6px}
.category-crosslinks a{font-size:9px;border:1px solid var(--line);border-radius:999px;padding:6px 8px;background:#fff;color:var(--brand)}

.quick-public-tools{background:#fff}
.quick-tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.quick-tool-grid a{border:1px solid var(--line);border-radius:13px;padding:14px;background:#fbfdfc}
.quick-tool-grid a:hover{border-color:#a6cfc1;background:var(--surface-soft)}
.quick-tool-grid span{font-size:8px;font-weight:900;color:var(--accent-deep)}
.quick-tool-grid strong{display:block;font-size:12px;margin:4px 0}
.quick-tool-grid p{font-size:9.5px;line-height:1.45;color:var(--muted);margin:0}

.calc-workspace-wide{grid-column:1/-1}.public-calc{display:grid;gap:15px}
.calc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:14px;align-items:start}
.calc-form,.calc-result{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.calc-form label{font-size:10px;font-weight:800}.calc-form input,.calc-form select,.calc-result textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:#fbfcfc;padding:9px 10px;font:inherit;font-size:11px;margin-top:4px}
.calc-form .btn{margin-top:10px}.calc-result{background:var(--surface-soft)}
.calc-result h3{font-size:17px;margin:5px 0}.calc-result>p{font-size:9.5px;line-height:1.5;color:var(--muted)}
.calc-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.calc-result-grid article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px}
.calc-result-grid span{display:block;font-size:8.5px;color:var(--muted)}.calc-result-grid strong{display:block;font-size:18px;color:var(--brand);margin-top:3px}

.questions-tools{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:15px}
.questions-tools input{flex:1;max-width:560px;border:1px solid var(--line);border-radius:10px;padding:9px 11px;background:#fff;font-size:10.5px}
.questions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.question-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px;display:flex;flex-direction:column}
.question-card>span{font-size:7.8px;font-weight:900;color:var(--accent-deep)}
.question-card h2{font-size:13px;line-height:1.3;margin:5px 0}
.question-card p{font-size:9.5px;line-height:1.5;color:var(--muted);margin:0 0 10px}
.question-card>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:8px;border-top:1px solid #edf1f0}
.question-card a{font-size:8.5px;font-weight:850;color:var(--brand)}

@media(max-width:900px){
 .quick-tool-grid,.questions-grid{grid-template-columns:1fr 1fr}
 .calc-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
 .quick-tool-grid,.questions-grid,.calc-result-grid{grid-template-columns:1fr}
 .questions-tools{display:grid}.questions-tools input{width:100%;max-width:none}
}
