/* Preventek / Mesa tecnica + paleta azul 2026. Shared, build-free UI foundation.
   Todos los colores vienen de variables (--pvk-*) definidas en core/design_system.php,
   que se carga ANTES que esta hoja. Ningun color se declara aqui en hex: si hace falta
   uno nuevo, se agrega en design_system.php, no en este archivo. */
.pvk-module-head,.pvk-workbench,.pvk-workbench *{box-sizing:border-box}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--pvk-accent);outline-offset:3px}
.pvk-module-head{background:var(--pvk-ink);color:#fff;border-radius:2px;padding:28px 32px;border-left:6px solid var(--pvk-accent);gap:24px;box-shadow:none;align-items:flex-start;min-width:0}
.pvk-module-head h1{font:700 30px/1.2 'Manrope',sans-serif;letter-spacing:-.04em;overflow-wrap:anywhere;margin:14px 0 8px}
.pvk-module-head p{font-size:16px;line-height:1.5;color:var(--pvk-ink-soft);max-width:760px}
.pvk-module-head a{display:inline-flex;align-items:center;min-height:44px;color:var(--pvk-ink-soft);font-size:14px}
.card{border-radius:3px;box-shadow:none;border-color:var(--pvk-line)}
.lbl{font-size:13px;text-transform:none;letter-spacing:0;line-height:1.45;color:var(--pvk-sub);font-weight:700;margin-bottom:8px}
.inp{min-height:46px;font-size:16px;line-height:1.4;border-radius:3px;border-color:var(--pvk-line-strong);padding:10px 12px;color:var(--pvk-ink);background:#fff}
.inp:focus{border-color:var(--pvk-accent);box-shadow:none;outline:2px solid var(--pvk-accent);outline-offset:1px}
.btn{min-height:46px;font-size:15px;border-radius:3px;padding:11px 20px;justify-content:center;white-space:normal;text-align:center}
.pill{border-radius:3px;font-size:12px;line-height:1.5}
.pvk-company{border-left:3px solid var(--pvk-accent);padding:18px 22px}
.pvk-company .text-sm{font-size:14px;line-height:1.6}.pvk-company a{min-height:44px;display:inline-flex;align-items:center}
.pvk-resources{position:relative;display:inline-block;color:inherit}
.pvk-resources summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;gap:8px}.pvk-resources summary::-webkit-details-marker{display:none}.pvk-resources summary:after{content:'+';font:18px/1 monospace}.pvk-resources[open] summary:after{content:'−'}
.pvk-resource-menu{position:absolute;top:100%;right:0;min-width:210px;background:var(--pvk-ink);border:1px solid var(--pvk-line-strong);padding:8px;z-index:90}
.pvk-resource-menu a{display:flex;align-items:center;min-height:44px;padding:10px 14px;color:#fff;text-decoration:none;font-size:14px}.pvk-resource-menu a:hover{background:rgba(255,255,255,.1)}
.pvnav .pvnav-in{max-width:1200px;min-height:72px}.pvnav .pvn-l,.pvn .pvn-l{min-height:44px;display:inline-flex;align-items:center;border-radius:2px;color:var(--pvk-ink-soft)}.pvnav .pvn-cta{border-radius:2px;min-height:44px;display:inline-flex;align-items:center}.pvnav .pvnav-l{overflow:visible;flex-wrap:wrap}.pvnav .pvu-b{min-width:44px;min-height:44px}.pvnav .pvu-p{border-radius:3px;box-shadow:none;border:1px solid var(--pvk-line-strong)}
/* Public layouts use the same ruled structure, without altering content or URLs. */
.pv .pv-w{max-width:1200px}.pv{--ink:var(--pvk-ink);--bg:var(--pvk-paper);--tx:var(--pvk-ink);--mut:var(--pvk-sub);--line:var(--pvk-line);--ac:var(--pvk-accent);--ac2:var(--pvk-accent-ink);--acs:var(--pvk-accent-soft)}
.pv .pv-hero{padding:64px 0 48px;border-bottom:1px solid var(--pvk-line-strong)}.pv .pv-hg{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:64px;align-items:start}
.pv .pv-hero h1{font-size:60px;line-height:1.03;letter-spacing:-.055em;max-width:740px}.pv .pv-hero p.s{font-size:18px;line-height:1.65;max-width:610px}
.pv .pv-output{background:var(--pvk-accent-soft);border:0;border-top:5px solid var(--pvk-ink);padding:26px 24px;margin-top:8px}.pv .pv-output h2{font-size:21px}.pv .pv-output div{grid-template-columns:1fr;gap:2px;padding:12px 0;border-color:var(--pvk-line)}.pv .pv-output dd{font-size:14px;line-height:1.5}.pv .pv-output dt{font-family:Consolas,monospace;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.pv .pv-btn{border-radius:2px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;box-shadow:none;transform:none}.pv .pv-btn:hover{transform:none}
.pv .pv-trust{border-left:2px solid var(--pvk-line-strong);padding-left:16px;font-size:14px}.pv .pv-trust svg{display:none}.pv .pv-sec{padding:48px 0}.pv .pv-k{font:600 12px/1.5 Consolas,monospace;color:var(--pvk-accent-ink);border-top:1px solid var(--pvk-line-strong);padding-top:12px;letter-spacing:.06em}.pv h2{letter-spacing:-.035em;line-height:1.2}
.pv .pv-docrow{padding:24px 0}.pv .pv-docrow p,.pv .pv-nom{font:13px/1.6 Consolas,monospace;color:var(--pvk-sub)}.pv .pv-steps{display:block;counter-reset:s}.pv .pv-steps li{position:relative;border:0;border-top:1px solid var(--pvk-line);background:transparent;border-radius:0;padding:22px 0 22px 64px}.pv .pv-steps li:before{position:absolute;left:0;top:24px;background:transparent;border-radius:0;font:24px/1 Consolas,monospace;content:'0' counter(s);color:var(--pvk-accent-ink)}.pv .pv-conf{display:block}.pv .pv-conf div{display:grid;grid-template-columns:1fr 2fr;gap:32px;border:0;border-top:1px solid var(--pvk-line);border-radius:0;background:transparent;padding:20px 0}.pv .pv-conf h3{margin:0}.pv .pv-res{grid-template-columns:1fr 1fr;gap:0 36px}.pv .pv-res a{border:0;border-top:1px solid var(--pvk-line-strong);border-radius:0;padding:20px 0;background:transparent}.pv .pv-faq{max-width:1200px}.pv .pv-faq details{border:0;border-bottom:1px solid var(--pvk-line-strong);border-radius:0;padding:0;background:transparent}.pv .pv-faq details p{max-width:800px}.pv .pv-close{text-align:left;border-top:1px solid var(--pvk-line-strong)}
.pv .pv-tb{font-size:16px}.pv .pv-tb th,.pv .pv-tb td{padding:20px 16px;line-height:1.5}.pv .pv-tb thead th{background:var(--pvk-ink);color:#fff;font-size:18px}.pv .pv-tb td:last-child{background:var(--pvk-accent-soft)}.pv .pv-tb tbody tr:first-child td{font-size:24px;font-weight:700}.pv .pv-pago div{grid-template-columns:1fr 2fr}
.pv .pv-rel{display:block;border-top:2px solid var(--pvk-ink)}.pv .pv-rel a{display:block;background:transparent;border:0;border-bottom:1px solid var(--pvk-line);border-radius:0;padding:22px 8px;box-shadow:none}.pv .pv-rel a:hover{background:var(--pvk-accent-soft)}
/* Workbench: tasks at the top, categories as a numbered index. */
.pvk-workbench{max-width:1120px;margin:28px auto 0;padding:0 24px}.pvk-workbench-inner{display:block;padding:20px 0 48px}.pvk-workbench-intro{border-top:5px solid var(--pvk-ink);padding:24px 0 18px;text-align:left;margin:0 0 16px}.pvk-workbench-intro h1{font-size:38px;font-weight:800;line-height:1.15;margin:0 0 12px;letter-spacing:-.04em}.pvk-workbench-intro p{margin:0;max-width:700px;color:var(--pvk-sub);font-size:16px}.pvk-workbench-intro .pvk-workbench-code{font:12px/1.4 Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--pvk-accent-ink);margin:0 0 12px}
.pvk-workbench-actions{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--pvk-line-strong);border-bottom:1px solid var(--pvk-line-strong);margin:8px 0 28px}.pvk-workbench-actions a{display:flex;align-items:center;gap:16px;color:var(--pvk-ink);text-decoration:none;padding:14px 22px;min-height:52px;border-right:1px solid var(--pvk-line);font-weight:650;font-size:14px}.pvk-workbench-actions a:first-child{background:var(--pvk-ink);color:#fff}.pvk-workbench-actions a:hover{background:var(--pvk-accent-soft);color:var(--pvk-ink)}
.pvk-workbench .category-grid{max-width:none;counter-reset:category;border-top:2px solid var(--pvk-ink)}.pvk-workbench .category-row{counter-increment:category;padding:22px 8px;gap:24px}.pvk-workbench .category-row:before{content:counter(category,decimal-leading-zero);font:18px/1.2 Consolas,monospace;color:var(--pvk-accent-ink);width:34px;flex-shrink:0}.pvk-workbench .category-row-icon{display:none}.pvk-workbench .category-row-title{font-size:22px;line-height:1.35}.pvk-workbench .category-row-desc{font-size:15px;line-height:1.5;display:block;overflow:visible}.pvk-workbench .category-row:hover{padding:22px 8px;background:var(--pvk-accent-soft)}.pvk-workbench .grid-seccion-tit{max-width:none;font-size:12px;color:var(--pvk-sub)}.module-row .module-row-title{font-size:15px;text-transform:none}.module-row .module-row-title-text{white-space:normal}.module-row .module-row-desc{font-size:14px;line-height:1.5}.module-row .module-row-icon{border-radius:2px}.pvk-nav .pvk-nav-link{min-height:44px;border-radius:2px;color:var(--pvk-ink-soft)}.pvk-nav .pvk-nav-icon-btn{min-width:44px;min-height:44px}.pvk-workbench .pvk-company-reminder{margin:0 0 20px;text-align:left;max-width:100%}.pvk-company-reminder a{border-radius:2px;min-height:44px;flex-wrap:wrap}
@media(max-width:820px){.pvnav .pvnav-l{width:100%;flex-wrap:wrap;gap:0}.pvnav .pvnav-in{padding:10px 16px}.pvnav .pvnav-logo img{height:30px}.pvnav .pvn-l{padding:10px 8px;font-size:13px}.pvnav .pvn-cta{font-size:12px;padding:10px}.pvk-module-head{padding:20px;flex-wrap:wrap}.pvk-module-head h1{font-size:26px}.pvk-company>div{flex-wrap:wrap}.pv .pv-hg{grid-template-columns:1fr;gap:24px}.pv .pv-hero h1{font-size:44px}.pv .pv-output{margin:0}.pv .pv-conf div{grid-template-columns:1fr;gap:8px}.pv .pv-res{grid-template-columns:1fr}.pv .pv-pago div{grid-template-columns:1fr;gap:8px}}
@media(max-width:480px){.pv .pv-hero{padding:32px 0}.pv .pv-hero h1{font-size:38px}.pv .pv-sec{padding:32px 0}.pv .pv-tb{font-size:14px}.pv .pv-tb th,.pv .pv-tb td{padding:12px 8px;overflow-wrap:anywhere}.pv .pv-tb tbody tr:first-child td{font-size:18px}.pvk-workbench{padding:0 16px}.pvk-workbench-intro h1{font-size:30px}.pvk-workbench-actions a{width:100%;border-right:0;border-bottom:1px solid var(--pvk-line)}.pvk-workbench .category-row{gap:12px}.pvk-workbench .category-row-title{font-size:19px}.pvk-workbench .category-row-desc{font-size:14px}.pvk-module-head h1{font-size:23px}.pvk-resource-menu{right:0;min-width:180px}}
@media(max-width:480px){.pvnav .pvnav-logo img{width:76px;height:auto}.pvnav .pvnav-r{gap:0}.pvnav .pvnav-r .pvn-l{font-size:12px;padding:8px 6px}.pvnav .pvnav-r .pvn-cta{font-size:11px;padding:8px}.pvnav .pvk-resource-menu{left:0;right:auto}}
@media(max-width:480px){.pv .pv-tb{table-layout:fixed}.pv .pv-tb th:first-child{width:35%}.pv .pv-tb th:nth-child(2){width:30%}.pv .pv-tb th:nth-child(3){width:35%}}
@media(prefers-reduced-motion:reduce){.pv *, .pvk-workbench *, .pvnav *{animation:none!important;transition:none!important}}
