/*
Theme Name: GrupoRadar
Theme URI: https://gruporadar.com
Author: GrupoRadar
Description: Directorio mundial de grupos y canales de Telegram y Signal. Al activarlo crea las categorías, los grupos verificados, las guías y las páginas legales. Incluye formulario de contacto, formulario para publicar grupos con revisión y soporte para Google AdSense.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gruporadar
*/

/* Layout: directorio tipo radar — cabecera con buscador, chips de categoría, rejilla de fichas, guías y páginas legales */
:root{
  --bg:#F2F5F7; --surface:#FFFFFF; --ink:#12202A; --muted:#5A6B77; --line:#D8E0E6;
  --accent:#0B7F70; --accent-soft:#DDF1EE; --on-accent:#FFFFFF; --signal:#3A5BD9; --tg:#1E88C7; --warn:#B7791F;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
}
@media (prefers-color-scheme: dark){
  :root{--bg:#0E161C;--surface:#16222B;--ink:#E6EEF2;--muted:#93A6B3;--line:#263540;
    --accent:#3CC4B0;--accent-soft:#12332F;--on-accent:#0E161C;--signal:#8EA4FF;--tg:#5DB8EE;--warn:#E3B061;color-scheme:dark}
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--body)}
img{max-width:100%;height:auto}
a{color:var(--accent)}
.wrap{max-width:1120px;margin:0 auto;padding-inline:16px}
.narrow{max-width:760px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Cabecera */
.site-header{border-bottom:1px solid var(--line);background:var(--surface)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;padding-block:14px;flex-wrap:wrap}
.logo{font:800 1.35rem var(--display);letter-spacing:-.02em;display:flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none}
.logo svg{flex:none}
.menu{display:flex;gap:6px 18px;list-style:none;margin:0;padding:0;flex-wrap:wrap;font-weight:500}
.menu a{color:var(--muted);text-decoration:none}
.menu a:hover,.menu a[aria-current="page"]{color:var(--ink)}

/* Portada */
.hero{padding-block:40px 28px}
.hero h1{font:800 clamp(2rem,5.5vw,3.4rem)/1.05 var(--display);letter-spacing:-.03em;margin:0 0 12px;text-wrap:balance;max-width:18ch}
.hero p{color:var(--muted);max-width:60ch;margin:0 0 22px;font-size:1.08rem}
.search{display:flex;gap:8px;flex-wrap:wrap}
.search input,.search select{font:inherit;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
.search input[type=search]{flex:1 1 240px;min-width:0}
.search select{flex:0 1 170px}
.btn{display:inline-flex;align-items:center;justify-content:center;font:600 1rem var(--body);padding:12px 20px;border-radius:10px;border:0;background:var(--accent);color:var(--on-accent);cursor:pointer;text-decoration:none}
.btn-soft{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}
.stats{display:flex;gap:28px;margin-top:22px;flex-wrap:wrap;font:500 .85rem var(--mono);color:var(--muted)}
.stats b{color:var(--ink);font-size:1.05rem;display:block;font-variant-numeric:tabular-nums}
.chips{display:flex;gap:8px;overflow-x:auto;padding-block:6px 14px;scrollbar-width:thin}
.chip{flex:none;font:500 .92rem var(--body);padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none}
.chip.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.section-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:30px 0 12px;flex-wrap:wrap}
.section-h h2,.section-h h1{font:800 1.6rem var(--display);letter-spacing:-.02em;margin:0}
.section-h span,.section-h a{color:var(--muted);font:500 .85rem var(--mono)}

/* Fichas de grupo */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.plat{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:6px}
.plat.telegram{color:var(--tg);background:color-mix(in srgb,var(--tg) 14%,transparent)}
.plat.signal{color:var(--signal);background:color-mix(in srgb,var(--signal) 14%,transparent)}
.kind{font:500 .72rem var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.card h3{font:600 1.1rem var(--display);margin:0;letter-spacing:-.01em}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{color:var(--accent)}
.card p{margin:0;color:var(--muted);font-size:.94rem}
.meta{display:flex;gap:6px 14px;font:500 .8rem var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap}
.card .btn{margin-top:auto;padding:10px;font-size:.92rem}
.empty{grid-column:1/-1;padding:30px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}

/* Categorías */
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.cat{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-weight:600;color:var(--ink);text-decoration:none}
.cat:hover{border-color:var(--accent)}
.cat small{font:500 .78rem var(--mono);color:var(--muted)}

/* Guías */
.guides{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.guide{padding:18px;border-top:3px solid var(--accent);background:var(--surface);border-radius:0 0 10px 10px}
.guide h3{font:600 1.12rem var(--display);margin:0 0 6px;text-wrap:balance}
.guide h3 a{color:var(--ink);text-decoration:none}
.guide h3 a:hover{color:var(--accent)}
.guide p{margin:0;color:var(--muted);font-size:.94rem}
.guide .rt{font:500 .75rem var(--mono);color:var(--muted);display:block;margin-top:10px}

/* Filtros de archivo */
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.filters select,.filters input{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink)}
.filters input{flex:1 1 200px;min-width:0}
.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.pagination .page-numbers{padding:8px 13px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);text-decoration:none;font:500 .9rem var(--mono)}
.pagination .current{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* Artículos y páginas */
.entry{padding-block:34px 10px}
.entry-header h1{font:800 clamp(1.8rem,4.5vw,2.8rem)/1.1 var(--display);letter-spacing:-.025em;margin:0 0 10px;text-wrap:balance}
.entry-meta{font:500 .82rem var(--mono);color:var(--muted);margin-bottom:22px}
.entry-content{font-size:1.05rem}
.entry-content h2{font:700 1.45rem/1.25 var(--display);margin:34px 0 10px;letter-spacing:-.015em;text-wrap:balance}
.entry-content h3{font:600 1.15rem var(--display);margin:24px 0 8px}
.entry-content p,.entry-content li{max-width:68ch}
.entry-content li{margin-bottom:6px}
.entry-content blockquote{margin:20px 0;padding:12px 18px;border-left:3px solid var(--accent);background:var(--surface);color:var(--muted)}
.breadcrumbs{font:500 .8rem var(--mono);color:var(--muted);padding-top:20px}
.breadcrumbs a{color:var(--muted)}

/* Ficha individual */
.group-hero{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;gap:14px;margin-top:18px}
.group-hero h1{font:800 clamp(1.7rem,4vw,2.4rem)/1.1 var(--display);margin:0;letter-spacing:-.02em}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0}
.facts div{border-top:1px solid var(--line);padding-top:8px}
.facts dt{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.facts dd{margin:2px 0 0;font-weight:600;font-variant-numeric:tabular-nums}
.note{font-size:.88rem;color:var(--muted)}

/* Formularios */
.form{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px}
.form label{display:flex;flex-direction:column;gap:6px;font-weight:500;font-size:.92rem;min-width:0}
.form input,.form select,.form textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);width:100%}
.form .full{grid-column:1/-1}
.form .rules{font-size:.85rem;color:var(--muted);margin:0}
.form .btn{justify-self:start}
.form .hp{position:absolute;left:-9999px}
.alert{padding:12px 16px;border-radius:10px;margin-bottom:14px;font-weight:600}
.alert.ok{background:var(--accent-soft);color:var(--accent)}
.alert.err{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}
@media (max-width:620px){.form{grid-template-columns:1fr}}

/* Anuncios */
.ad-slot{margin-block:22px;text-align:center;min-height:1px}
.ad-label{display:block;font:500 .68rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:4px}

/* Pie */
.site-footer{margin-top:52px;border-top:1px solid var(--line);background:var(--surface);padding-block:30px;color:var(--muted);font-size:.9rem}
.foot{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px}
.foot h4{font:600 .78rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink);margin:0 0 8px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.foot a{color:var(--muted);text-decoration:none}
.foot a:hover{color:var(--ink)}
.copy{margin-top:22px;font:500 .78rem var(--mono)}
@media (prefers-reduced-motion:no-preference){.card{transition:transform .15s,border-color .15s}.card:hover{transform:translateY(-2px);border-color:var(--accent)}}
