:root{--navy:#0F2744;--blue:#1D5FA8;--blue-pale:#EBF3FC;--gold:#B8922A;--gold-l:#F5E6C4;--text:#0A1628;--text-m:#3D5068;--text-mu:#6B7F96;--border:#D4DDE8;--border-l:#EAF0F6;--bg:#F4F7FB;--card:#fff;--ok:#0D6B3A;--warn:#92510C;--bad:#8B1A1A}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Source Serif 4',Georgia,serif;background:var(--bg);color:var(--text);min-height:100vh}
nav{position:fixed;top:0;left:0;right:0;height:56px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:0 20px;z-index:50}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none}.logo-mark{width:28px;height:28px;background:var(--gold);border-radius:6px;display:flex;align-items:center;justify-content:center;font:800 13px Sora,sans-serif;color:var(--navy)}
.logo-text{font:700 15px Sora,sans-serif;color:#fff}.nav-r{display:flex;gap:14px;align-items:center}.nav-r a{color:rgba(255,255,255,.7);font:12px Sora,sans-serif;text-decoration:none}
.lb{background:none;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.7);font:600 11px Sora,sans-serif;padding:4px 8px;border-radius:5px;cursor:pointer}.lb.active{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.page{max-width:1100px;margin:0 auto;padding:80px 20px 40px}
.ph{font:700 26px Sora,sans-serif;color:var(--navy);margin-bottom:6px}.psub{color:var(--text-m);margin-bottom:22px;line-height:1.6}
.ph-badge{display:inline-block;font:700 10px Sora,sans-serif;letter-spacing:.8px;color:var(--warn);background:#FEF3E2;border:1px solid #F1D3A6;border-radius:10px;padding:3px 9px;margin-bottom:10px}
.copy-ph{background:#FFF8E1;border:1px dashed #E0B44C;border-radius:4px;padding:1px 5px;font-family:Sora,sans-serif;font-size:.85em;color:#7A5A00}
.layout{display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:start}
.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px}
.fl{display:block;font:700 11px Sora,sans-serif;color:var(--navy);margin:14px 0 6px;letter-spacing:.2px}.fl:first-child{margin-top:0}
select,input[type=email],input[type=text]{width:100%;padding:9px 10px;border:1.5px solid var(--border);border-radius:8px;font:13px Sora,sans-serif;background:#fff;color:var(--text)}
.upload-zone{border:1.5px dashed var(--border);border-radius:8px;padding:18px;text-align:center;cursor:pointer;background:var(--bg);font:11px Sora,sans-serif;color:var(--text-mu)}
.upload-zone:hover,.upload-zone.drag{border-color:var(--blue);background:var(--blue-pale)}
.note{font-size:11.5px;color:var(--text-mu);line-height:1.55;margin-top:8px}.note a{color:var(--blue)}
.btn{display:block;width:100%;margin-top:16px;padding:12px;border:none;border-radius:9px;background:var(--navy);color:#fff;font:700 13px Sora,sans-serif;cursor:pointer}.btn:disabled{opacity:.5;cursor:not-allowed}
.btn.gold{background:var(--gold);color:var(--navy)}.btn.ghost{background:#fff;color:var(--navy);border:1.5px solid var(--border)}
.credits{font:12px Sora,sans-serif;color:var(--text-m);margin-bottom:6px}.credits b{color:var(--ok)}
.r-empty{text-align:center;color:var(--text-mu);padding:50px 20px;font-size:14px;line-height:1.7}
.chk{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-l)}.chk:last-child{border-bottom:none}
.st{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:700 12px Sora,sans-serif;color:#fff}
.st.ok{background:var(--ok)}.st.miss{background:var(--bad)}.st.unc{background:var(--warn)}.st.na{background:var(--text-mu)}
.chk-t{font:600 13px Sora,sans-serif;color:var(--navy)}.chk-d{font-size:13px;color:var(--text-m);line-height:1.55;margin-top:2px}
.ref{display:inline-flex;gap:5px;align-items:center;margin:5px 5px 0 0;padding:2px 4px 2px 8px;border:1px solid var(--border);border-radius:12px;font:10.5px Sora,sans-serif;color:var(--text)}
.ref a,.ref button{font:10px Sora,sans-serif;border:none;background:var(--bg);border-radius:9px;padding:1px 7px;color:var(--blue);cursor:pointer;text-decoration:none}
.sum{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 14px}.pill{font:600 11px Sora,sans-serif;padding:4px 10px;border-radius:12px;border:1px solid var(--border)}
.disc{margin-top:16px;padding:12px;border-radius:8px;background:var(--bg);font-size:12px;color:var(--text-m);line-height:1.55}
.r-hd{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.r-hd h2{font:700 16px Sora,sans-serif;color:var(--navy)}
.tools{display:flex;gap:6px}.tool{font:11px Sora,sans-serif;padding:5px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);cursor:pointer;color:var(--text-m)}
.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite;margin:40px auto 10px}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.rv{opacity:0;animation:fadeUp .35s ease forwards}
footer{max-width:1100px;margin:30px auto 24px;padding:16px 20px;border-top:1px solid var(--border);font:11px/1.6 Sora,sans-serif;color:var(--text-mu)}
.q{padding:14px 0;border-bottom:1px solid var(--border-l)}.q:last-child{border-bottom:none}.q-t{font:600 13px Sora,sans-serif;color:var(--navy);margin-bottom:8px}
.opts{display:flex;flex-wrap:wrap;gap:6px}.opt{padding:7px 11px;border:1.5px solid var(--border);border-radius:18px;background:#fff;font:12px Sora,sans-serif;color:var(--text);cursor:pointer}.opt.on{border-color:var(--gold);background:var(--gold-l);font-weight:600}
.prog{height:5px;background:var(--border-l);border-radius:3px;margin:4px 0 4px;overflow:hidden}.prog i{display:block;height:100%;background:var(--gold);transition:width .3s}
.dl{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-l)}.dl-d{font:700 13px Sora,sans-serif;color:var(--navy)}
.badge{display:inline-block;font:700 9.5px Sora,sans-serif;letter-spacing:.4px;padding:2px 7px;border-radius:8px;margin-left:6px;vertical-align:middle;text-transform:uppercase}
.b-law{background:#E8F5EE;color:var(--ok)}.b-past{background:var(--blue-pale);color:var(--blue)}.b-prop{background:#FEF3E2;color:var(--warn)}
.cl{list-style:none}.cl li{padding:7px 0 7px 26px;position:relative;font-size:13.5px;line-height:1.55;color:var(--text-m)}.cl li::before{content:'☐';position:absolute;left:2px;color:var(--gold);font-size:15px}
.src{font:10.5px Sora,sans-serif;color:var(--text-mu);margin-top:3px}.src a{color:var(--blue)}
@media(max-width:860px){.layout{grid-template-columns:1fr}.page{padding:70px 12px 30px}select,input{font-size:16px!important}.dl{grid-template-columns:1fr;gap:2px}.nav-r a{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1}}
/* páginas SEO */
.seo{max-width:760px}.seo h2{font:700 20px Sora,sans-serif;margin:28px 0 10px}.seo p,.seo li{font-size:16px;line-height:1.7}.seo .lead{font-size:18px}.seo .upd{font:12px Sora,sans-serif;color:var(--text-m)}
.seo .bl{padding-left:20px}.seo .warn{background:#fff6e5;border-left:3px solid var(--warn);padding:8px 12px;font-size:14px}
.faq{border-bottom:1px solid rgba(0,0,0,.08);padding:10px 0}.faq summary{font:600 15px Sora,sans-serif;cursor:pointer}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.cta-row .btn{width:auto;text-decoration:none;padding:12px 18px}.vida{margin-top:24px;padding:16px;border-radius:10px;background:rgba(0,0,0,.03)}
