/* QSL V11 - encabezado exacto de Certificados + cuerpo visual de la versión anterior */
:root{
  --verde:#073f2c;
  --verde2:#0f6b50;
  --turq:#159c9a;
  --amarillo:#d8d85b;
  --fondo:#f3f5f3;
  --texto:#20392f;
  --borde:#dce5df;
  --green:#075748;
  --green2:#087d62;
  --deep:#124d47;
  --lime:#d7e900;
  --bg:#eef5f5;
  --card:#fff;
  --muted:#667f7c;
  --line:#dce8e6;
  --shadow:0 7px 22px rgba(22,70,68,.10);
}
:root{--green:#075748;--green2:#087d62;--deep:#124d47;--lime:#d7e900;--bg:#eef5f5;--card:#fff;--muted:#667f7c;--line:#dce8e6;--shadow:0 7px 22px rgba(22,70,68,.10)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#eef5f5 0,#f8fbfb 55%,#edf4f4 100%);color:var(--deep)}
a{color:inherit}

/* MISMA CABECERA VISUAL DEL SISTEMA CERTIFICADOS */
.site-header{position:relative;min-height:185px;overflow:hidden;background:var(--green);color:#fff;border-bottom:4px solid var(--lime)}
.site-header:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,67,54,.98) 0%,rgba(3,67,54,.94) 32%,rgba(3,67,54,.55) 58%,rgba(3,67,54,.12) 100%),url("assets/header-scenery-clean.jpg") center right/cover no-repeat}
.header-inner{position:relative;z-index:1;min-height:185px;max-width:1280px;margin:auto;padding:22px 30px;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:18px;min-width:0}
.brand-logo{width:92px!important;height:92px!important;max-width:92px!important;max-height:92px!important;min-width:92px!important;min-height:92px!important;flex:0 0 92px!important;border-radius:50%;overflow:hidden;background:#fff;border:3px solid var(--lime);box-shadow:0 2px 12px rgba(0,0,0,.25);object-fit:contain!important}
.brand-copy{padding-left:2px}
.brand .club{font-size:31px;font-weight:800;color:#fff;line-height:1.1}
.brand h1{margin:5px 0 0;font-size:18px;font-weight:400;line-height:1.1;color:#e1efec}
.back-site{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:10px 17px;border:2px solid var(--lime);border-radius:25px;background:rgba(0,71,58,.82);color:#fff;text-decoration:none;font-weight:700;white-space:nowrap}
.back-site:hover{background:var(--green2)}


/* BARRA Y CONTENIDO: versión anterior que preferiste */

.public-nav{
  height:43px;
  background:var(--turq);
  border:0;
  box-shadow:inset 0 -1px rgba(0,0,0,.08);
}
.nav-inner{
  max-width:1400px;
  height:43px;
  margin:auto;
  padding:0 48px;
  display:flex;
  align-items:center;
}
.public-nav a{
  display:inline-flex;
  align-items:center;
  height:43px;
  padding:0 17px;
  color:#fff;
  font-weight:800;
  font-size:14px;
  border-bottom:3px solid transparent;
}
.public-nav a.active{
  border-bottom-color:var(--amarillo);
}

/* CONTENIDO MÁS ANCHO */
.wrap{
  width:100%;
  max-width:1250px;
  margin:0 auto;
  padding:32px 24px 48px;
}
.search-card,.qsl-view-card{
  width:100%;
  background:#fff;
  border:1px solid var(--borde);
  border-radius:14px;
  padding:28px 32px;
  box-shadow:0 4px 16px rgba(18,63,37,.06);
  margin-bottom:24px;
}
.section-title{
  margin:0 0 18px;
  color:var(--verde);
  font-size:23px;
}
.section-title small{
  display:block;
  margin-top:5px;
  color:#69776f;
  font-size:14px;
  font-weight:400;
}
.search-row{
  display:flex;
  gap:14px;
  align-items:end;
}
.field{flex:1}
.field label{
  display:block;
  font-weight:700;
  font-size:13px;
  margin-bottom:7px;
  color:#456052;
}
.field input{
  width:100%;
  padding:14px;
  border:1px solid #cdd9d0;
  border-radius:9px;
  font-size:17px;
  text-transform:uppercase;
  outline:none;
}
.btn-main{
  border:0;
  background:var(--turq);
  color:#fff;
  border-radius:9px;
  padding:14px 21px;
  font-weight:800;
  font-size:15px;
  cursor:pointer;
  white-space:nowrap;
}
.btn-main:hover{background:#117e7c}

.results-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  margin:28px 0 14px;
}
.results-head h3{
  margin:0;
  color:var(--verde);
  font-size:21px;
}
.count-pill{
  background:#e8f1ea;
  color:var(--verde2);
  font-weight:800;
  border-radius:999px;
  padding:7px 12px;
  font-size:13px;
}
.qsl-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:16px;
}
.qsl-card{
  background:#fff;
  border:1px solid var(--borde);
  border-radius:14px;
  padding:19px;
  box-shadow:0 4px 14px rgba(18,63,37,.06);
  border-left:4px solid #aebd51;
}
.qsl-card h4{margin:0;color:var(--verde);font-size:19px}
.qsl-card .date{font-size:13px;color:#66766d;margin-top:4px}
.qsl-card .meta{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin:16px 0;
}
.meta-item{background:#f4f7f5;border-radius:8px;padding:8px;text-align:center}
.meta-item b{display:block;font-size:15px;color:var(--verde)}
.meta-item span{font-size:11px;color:#718078}
.qsl-card .view{
  display:block;
  text-align:center;
  background:var(--verde2);
  color:#fff;
  padding:10px;
  border-radius:8px;
  font-weight:800;
}
.empty{
  padding:26px;
  text-align:center;
  color:#68766e;
  background:#f7faf8;
  border:1px dashed #cbd8cf;
  border-radius:12px;
}
.back-link{text-align:center;margin-top:22px}
.back-link a{font-weight:700}

.qsl-view-card{text-align:center}
.qsl-view-card h2{margin:0 0 5px;color:var(--verde);font-size:24px}
.qsl-view-card .subtitle{color:#69776f;margin:0 0 18px}
.qsl-canvas{
  max-width:100%;
  height:auto;
  border:1px solid #d6ded8;
  border-radius:8px;
  box-shadow:0 6px 18px rgba(0,0,0,.14);
}
.view-actions{
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
}
.download-btn{
  border:0;
  background:var(--verde2);
  color:#fff;
  border-radius:9px;
  padding:11px 19px;
  font-weight:800;
  cursor:pointer;
}
.back-btn{
  display:inline-block;
  background:#edf2ee;
  color:var(--verde);
  border:1px solid #d2ddd5;
  border-radius:9px;
  padding:11px 19px;
  font-weight:800;
}
.small-note{font-size:12px;color:#758078;margin-top:11px}

.footer{
  background:#075f62;
  color:#e4f2f1;
  padding:17px 20px;
}
.footer-inner{
  max-width:1250px;
  margin:auto;
  display:flex;
  justify-content:space-between;
  gap:15px;
  align-items:center;
  font-size:13px;
}
.footer .tag{color:#e5e94f;font-weight:800}

@media(max-width:700px){
  .site-header{min-height:112px}
  .header-inner{
    height:112px;
    padding:14px 14px;
    gap:10px;
  }
  .brand{gap:9px}
  .brand-logo{
    width:54px!important;
    height:54px!important;
    max-width:54px!important;
    max-height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
    flex-basis:54px!important;
  }
  .brand-copy{padding-left:10px}
  .brand .club{font-size:19px}
  .brand h1{font-size:17px}
  .back-site{padding:7px 9px;font-size:11px}
  .nav-inner{padding:0 8px}
  .public-nav a{font-size:12px;padding:0 11px}
  .wrap{padding:22px 12px 32px}
  .search-card,.qsl-view-card{padding:20px}
  .search-row{flex-direction:column;align-items:stretch}
  .btn-main{width:100%}
  .footer-inner{flex-direction:column;text-align:center}
}
