/* site.css — TodoCálculo · estilos compartidos (navegación, catálogo, páginas de contenido) */
.header-inner{display:flex;align-items:center;gap:.75rem}
.site-nav{display:flex;gap:.2rem;margin-left:auto;align-items:center}
.site-nav a{padding:.4rem .75rem;border-radius:999px;color:var(--text-muted);text-decoration:none;font-weight:600;font-size:.92rem;white-space:nowrap;transition:background .15s,color .15s}
.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--accent);background:var(--accent-soft)}
.site-nav + .theme-toggle{margin-left:.25rem}
@media (max-width:820px){
  .header-inner{flex-wrap:wrap;row-gap:.35rem}
  .header-inner .theme-toggle{margin-left:auto}
  .site-nav{order:3;width:100%;margin:0 -.25rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:.45rem}
  .site-nav::-webkit-scrollbar{display:none}
}
.footer-links{flex-wrap:wrap;row-gap:.35rem}

/* Catálogo */
.cat-section{margin:2.75rem 0 0;scroll-margin-top:5rem}
.cat-section > h2{font-size:1.35rem;margin:0 0 .35rem}
.cat-section > p{color:var(--text-muted);margin:0 0 1rem;max-width:62ch}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.9rem}
.tool-link{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius,14px);background:var(--surface);color:var(--text);text-decoration:none;transition:border-color .15s,transform .15s}
.tool-link:hover{border-color:var(--accent);transform:translateY(-2px)}
.tool-link h3{font-size:1.05rem;margin:0}
.tool-link p{margin:0;color:var(--text-muted);font-size:.93rem;line-height:1.5}
.tool-link .go{margin-top:auto;padding-top:.35rem;color:var(--accent);font-weight:700;font-size:.9rem}
.tag-new{display:inline-block;margin-left:.4rem;padding:.05rem .45rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:700;vertical-align:middle}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1rem 0 0}
.pillars > div{padding:1rem 1.1rem;border-radius:var(--radius,14px);background:var(--surface-2)}
.pillars h3{font-size:1rem;margin:0 0 .3rem}
.pillars p{margin:0;font-size:.93rem;color:var(--text-muted)}

/* Páginas de contenido */
.prose{max-width:72ch;padding-top:2rem;padding-bottom:3rem}
.prose h1{font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.15;margin:0 0 .5rem}
.prose .lead{color:var(--text-muted);font-size:1.08rem;margin:0 0 1.5rem}
.prose h2{font-size:1.3rem;margin:2rem 0 .5rem}
.prose h3{font-size:1.05rem;margin:1.4rem 0 .35rem}
.prose p,.prose li{margin:0 0 .75rem}
.prose ul,.prose ol{padding-left:1.25rem;margin:0 0 1rem}
.prose a{color:var(--accent)}
.prose table{width:100%;border-collapse:collapse;margin:.5rem 0 1.25rem;font-size:.92rem}
.prose th,.prose td{text-align:left;padding:.55rem .6rem;border-bottom:1px solid var(--border);vertical-align:top}
.prose th{font-weight:700;background:var(--surface-2)}
.prose .table-scroll{overflow-x:auto}
.prose .updated{font-size:.88rem;color:var(--text-muted)}
.prose code{font-family:var(--mono,monospace);font-size:.88em;background:var(--surface-2);padding:.05rem .3rem;border-radius:4px}
.contact-card{padding:1.25rem 1.3rem;border:1px solid var(--border);border-radius:var(--radius,14px);background:var(--surface);margin:1rem 0 1.5rem}
.contact-card a.mail{font-size:1.2rem;font-weight:700}
.btn-plain{display:inline-block;margin-top:.5rem;padding:.55rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}
.btn-plain:hover{border-color:var(--accent)}

/* Bloque 2: tablas de referencia, ejemplos, fuentes, relacionadas */
.updated-line{margin-top:.6rem;font-size:.85rem;color:var(--text-muted)}
.updated-line a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.ref-wrap{margin-top:1rem;overflow-x:auto;border:1px solid var(--border);border-radius:12px}
.ref-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:420px}
.ref-table th,.ref-table td{padding:.55rem .75rem;text-align:right;white-space:nowrap;border-bottom:1px solid var(--border)}
.ref-table th:first-child,.ref-table td:first-child{text-align:left}
.ref-table thead th{background:var(--surface-2);font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}
.ref-table td{font-family:var(--mono);color:var(--text)}
.ref-table tbody tr:last-child td{border-bottom:0}
.ref-note{font-size:.82rem!important}
.example{margin-top:1rem;padding:1.1rem 1.2rem;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:12px;background:var(--surface)}
.example h3{font-size:1.02rem;margin:0}
.example ol{margin:.6rem 0 0;padding-left:1.2rem;color:var(--text-muted)}
.example li{margin-top:.35rem}
.example li strong{color:var(--text)}
.example .result{margin-top:.7rem;font-weight:700;color:var(--text)}
.sources{margin-top:.75rem;padding-left:1.2rem;color:var(--text-muted)}
.sources li{margin-top:.4rem}
.sources a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.related{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem;margin-top:1rem}

/* Nuevas calculadoras */
.seg-toggle{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.seg-toggle label{position:relative}
.seg-toggle input{position:absolute;opacity:0;pointer-events:none}
.seg-toggle span{display:inline-block;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border);color:var(--text-muted);font-weight:700;font-size:.88rem;cursor:pointer}
.seg-toggle input:checked + span{background:var(--accent);border-color:var(--accent);color:#fff}
.seg-toggle input:focus-visible + span{outline:2px solid var(--focus);outline-offset:2px}
.input-suffix select{border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-weight:700;width:100%;min-width:0}
.input-suffix select option{background:var(--surface);color:var(--text)}
.ic-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--surface-2)}
.ic-bar span:first-child{background:var(--accent)}
.ic-bar span:last-child{background:#d9a441}
.ic-dot-a{background:var(--accent)}.ic-dot-b{background:#d9a441}

.check-row{display:flex;gap:.5rem;align-items:flex-start;margin-top:.9rem;font-size:.88rem;color:var(--text-muted)}
.check-row input{margin-top:.25rem;accent-color:var(--accent)}
.eur-box{margin-top:1.5rem;padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius,14px);background:var(--surface)}
.eur-box h2{font-size:1.15rem;margin:0 0 .35rem}
.eur-box > p{color:var(--text-muted);font-size:.92rem;margin:0 0 1rem}
.eur-table td.up{color:var(--danger)}.eur-table td.down{color:var(--accent)}
