/*
Theme Name: Dativix
Theme URI: https://dativix.com
Author: Jahiko
Description: Hub de herramientas gratuitas online. Mobile-first, optimizado para SEO y AdSense/Adsterra.
Version: 1.3.0
Requires at least: 6.0
Requires PHP: 8.0
License: Privado
Text Domain: dativix
*/
:root {
  --color-primary:#534AB7;--color-primary-light:#EEEDFE;--color-primary-mid:#7F77DD;--color-primary-dark:#3C3489;
  --color-bg:#F8F8FA;--color-surface:#FFFFFF;--color-border:rgba(0,0,0,0.08);--color-border-md:rgba(0,0,0,0.14);
  --color-text:#18181B;--color-text-2:#52525B;--color-text-3:#A1A1AA;
  --img-bg:#E6F1FB;--img-accent:#185FA5;--txt-bg:#EEEDFE;--txt-accent:#534AB7;
  --mus-bg:#E1F5EE;--mus-accent:#0F6E56;--cal-bg:#FAECE7;--cal-accent:#993C1D;
  --gen-bg:#F1EFE8;--gen-accent:#5F5E5A;--fam-bg:#FBEAF0;--fam-accent:#993556;
  --pdf-bg:#FAEEDA;--pdf-accent:#854F0B;--dev-bg:#EEEDFE;--dev-accent:#3C3489;
  --radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:24px;
  --font:'DM Sans',system-ui,sans-serif;--shadow-hover:0 4px 14px rgba(83,74,183,0.13);
  --transition:0.17s ease;--container:960px;--gutter:20px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{font-family:var(--font);background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
button{font-family:var(--font);cursor:pointer;border:none;background:none;}
input,textarea,select{font-family:var(--font);}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter);}
.site-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100;}
.navbar{display:flex;align-items:center;height:56px;}
.nav-logo{font-size:20px;font-weight:700;letter-spacing:-.03em;flex-shrink:0;margin-right:24px;}
.nav-logo span{color:var(--color-primary);}
.nav-links{display:flex;gap:2px;flex:1;overflow:hidden;}
.nav-links a{font-size:13px;color:var(--color-text-2);padding:6px 10px;border-radius:var(--radius-md);transition:background var(--transition),color var(--transition);white-space:nowrap;}
.nav-links a:hover,.nav-links a.active{background:var(--color-primary-light);color:var(--color-primary);}
.nav-search{display:flex;align-items:center;gap:8px;background:var(--color-bg);border:1px solid var(--color-border-md);border-radius:var(--radius-xl);padding:7px 14px;width:185px;margin-left:auto;flex-shrink:0;transition:border-color var(--transition),box-shadow var(--transition);}
.nav-search:focus-within{border-color:var(--color-primary-mid);box-shadow:0 0 0 3px rgba(83,74,183,0.1);}
.nav-search svg{flex-shrink:0;opacity:.35;width:14px;height:14px;}
.nav-search input{border:none;background:transparent;font-size:13px;color:var(--color-text);outline:none;width:100%;}
.nav-search input::placeholder{color:var(--color-text-3);}
.nav-toggle{display:none;flex-direction:column;gap:5px;padding:8px;margin-left:auto;border-radius:var(--radius-sm);}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:transform var(--transition),opacity var(--transition);}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.open span:nth-child(2){opacity:0;}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-mobile{display:none;flex-direction:column;background:var(--color-surface);border-top:1px solid var(--color-border);padding:10px var(--gutter) 16px;gap:2px;}
.nav-mobile.open{display:flex;}
.nav-mobile a{font-size:15px;color:var(--color-text-2);padding:10px 12px;border-radius:var(--radius-md);transition:background var(--transition);}
.nav-mobile a:hover{background:var(--color-bg);}
.nav-mobile-search{margin-top:8px;display:flex;align-items:center;gap:8px;background:var(--color-bg);border:1px solid var(--color-border-md);border-radius:var(--radius-xl);padding:9px 14px;}
.nav-mobile-search input{border:none;background:transparent;font-size:14px;color:var(--color-text);outline:none;width:100%;}
.hero{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:48px var(--gutter) 40px;text-align:center;}
.hero h1{font-size:clamp(22px,5vw,36px);font-weight:700;letter-spacing:-.03em;line-height:1.2;margin-bottom:10px;}
.hero h1 span{color:var(--color-primary);}
.hero p{font-size:15px;color:var(--color-text-2);margin-bottom:24px;}
.hero-search{display:flex;align-items:center;max-width:460px;margin:0 auto;background:var(--color-surface);border:1.5px solid var(--color-border-md);border-radius:var(--radius-xl);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition);}
.hero-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(83,74,183,0.1);}
.hero-search input{flex:1;border:none;background:transparent;font-size:15px;color:var(--color-text);outline:none;padding:12px 18px;}
.hero-search input::placeholder{color:var(--color-text-3);}
.hero-search button{background:var(--color-primary);color:#fff;font-size:14px;font-weight:600;padding:12px 22px;transition:background var(--transition);white-space:nowrap;}
.hero-search button:hover{background:var(--color-primary-dark);}
.ad-zone{width:100%;min-height:90px;background:transparent;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.home-sections{padding:32px 0 48px;display:flex;flex-direction:column;gap:40px;}
.section-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.section-icon{width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.section-icon svg{width:17px;height:17px;}
.section-title{font-size:17px;font-weight:600;letter-spacing:-.01em;}
.section-ver{margin-left:auto;font-size:13px;color:var(--color-primary);font-weight:500;transition:opacity var(--transition);}
.section-ver:hover{opacity:.7;}
.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:12px;}
.tool-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:8px;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);}
.tool-card:hover{border-color:var(--color-primary-mid);box-shadow:var(--shadow-hover);transform:translateY(-2px);}
.tool-card-icon{width:38px;height:38px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;}
.tool-card-icon svg{width:18px;height:18px;}
.tool-card-name{font-size:14px;font-weight:600;color:var(--color-text);line-height:1.3;}
.tool-card-desc{font-size:12px;color:var(--color-text-2);line-height:1.4;}
.tool-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 7px;border-radius:20px;background:var(--color-bg);color:var(--color-text-3);border:1px solid var(--color-border-md);margin-top:2px;align-self:flex-start;}
.tool-page-hero{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:32px var(--gutter) 28px;}
.tool-page-hero h1{font-size:clamp(20px,4vw,28px);font-weight:700;letter-spacing:-.02em;margin-bottom:6px;}
.tool-page-hero p{font-size:15px;color:var(--color-text-2);max-width:600px;}
.tool-page-body{padding:28px 0 48px;display:flex;flex-direction:column;gap:24px;}
.tool-widget-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;}
.tool-seo-text{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px 28px;}
.tool-seo-text h2{font-size:18px;font-weight:600;margin-bottom:10px;letter-spacing:-.01em;}
.tool-seo-text h3{font-size:15px;font-weight:600;margin:20px 0 8px;}
.tool-seo-text p{font-size:14px;color:var(--color-text-2);line-height:1.7;margin-bottom:10px;}
.tool-seo-text p:last-child{margin-bottom:0;}
.tool-seo-text a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;}
.related-tools-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-3);margin-bottom:12px;}
.breadcrumb{padding:12px 0 0;font-size:13px;color:var(--color-text-3);display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.breadcrumb a{color:var(--color-text-2);transition:color var(--transition);}
.breadcrumb a:hover{color:var(--color-primary);}
.category-hero{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:36px var(--gutter) 32px;}
.category-hero-inner{display:flex;align-items:center;gap:16px;}
.category-hero-icon{width:52px;height:52px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.category-hero-icon svg{width:26px;height:26px;}
.category-hero h1{font-size:clamp(20px,4vw,28px);font-weight:700;letter-spacing:-.02em;margin-bottom:4px;}
.category-hero p{font-size:14px;color:var(--color-text-2);}
.category-tools{padding:32px 0 48px;}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:32px 0 48px;}
.blog-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition);}
.blog-card:hover{border-color:var(--color-border-md);box-shadow:0 4px 12px rgba(0,0,0,0.06);}
.blog-card-img{aspect-ratio:16/9;background:var(--color-bg);overflow:hidden;}
.blog-card-img img{width:100%;height:100%;object-fit:cover;}
.blog-card-body{padding:16px;}
.blog-card-cat{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin-bottom:5px;}
.blog-card-title{font-size:15px;font-weight:600;line-height:1.3;margin-bottom:8px;}
.blog-card-excerpt{font-size:13px;color:var(--color-text-2);line-height:1.5;}
.site-footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding:40px 0 0;margin-top:16px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;padding-bottom:32px;}
.footer-brand .nav-logo{display:block;margin-bottom:10px;}
.footer-brand p{font-size:13px;color:var(--color-text-2);line-height:1.6;max-width:210px;}
.footer-col h4{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-3);margin-bottom:12px;}
.footer-col a{display:block;font-size:14px;color:var(--color-text-2);margin-bottom:8px;transition:color var(--transition);}
.footer-col a:hover{color:var(--color-primary);}
.footer-bottom{border-top:1px solid var(--color-border);padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.footer-bottom p{font-size:12px;color:var(--color-text-3);}
.legal-page{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:32px 36px;max-width:720px;margin:32px auto 48px;}
.legal-page h1{font-size:24px;font-weight:700;margin-bottom:6px;letter-spacing:-.02em;}
.legal-page .updated{font-size:13px;color:var(--color-text-3);margin-bottom:28px;}
.legal-page h2{font-size:16px;font-weight:600;margin:24px 0 8px;}
.legal-page p,.legal-page li{font-size:14px;color:var(--color-text-2);line-height:1.7;margin-bottom:8px;}
.legal-page ul{padding-left:20px;list-style:disc;}
.post-content h2{font-size:20px;font-weight:600;color:var(--color-text);margin:32px 0 12px;letter-spacing:-.01em;}
.post-content h3{font-size:16px;font-weight:600;color:var(--color-text);margin:24px 0 8px;}
.post-content p{margin-bottom:16px;font-size:15px;color:var(--color-text-2);line-height:1.8;}
.post-content ul,.post-content ol{padding-left:22px;margin-bottom:16px;}
.post-content ul{list-style:disc;}.post-content ol{list-style:decimal;}
.post-content li{margin-bottom:6px;font-size:15px;color:var(--color-text-2);line-height:1.7;}
.post-content a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;}
.post-content strong{font-weight:600;color:var(--color-text);}
.post-content code{font-family:monospace;background:var(--color-bg);padding:2px 6px;border-radius:4px;font-size:13px;}
.post-content blockquote{border-left:3px solid var(--color-primary);padding-left:16px;margin:20px 0;color:var(--color-text-2);font-style:italic;}
@media(max-width:768px){
  :root{--gutter:16px;}
  .nav-links,.nav-search{display:none;}
  .nav-toggle{display:flex;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;}
  .footer-brand{grid-column:1/-1;}
  .footer-bottom{flex-direction:column;text-align:center;gap:4px;}
  .tools-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px;}
  .hero{padding:32px var(--gutter) 28px;}
  .category-hero-inner{flex-direction:column;align-items:flex-start;}
}
@media(max-width:480px){
  .tools-grid{grid-template-columns:1fr 1fr;gap:10px;}
  .tool-card{padding:13px;}
  .blog-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .legal-page{padding:20px 16px;margin:16px auto 32px;}
  .tool-seo-text{padding:18px;}
  .tool-widget-wrap{padding:16px;}
  .hero h1{font-size:22px;}
}
