:root{
  --orange:#F9A30A; --orange-d:#905400; --orange-soft:#FEEED1;
  --ink:#111317; --text:#4a4d55; --muted:#7a7d85; --line:#e8e8ea;
  --bg:#ffffff; --bg2:#f6f6f4; --dark:#0d1015; --radius:12px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',system-ui,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
svg.i{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:14px;font-weight:700;font-size:14px;border-radius:999px;padding:12px 14px 12px 26px;transition:.2s;white-space:nowrap;cursor:pointer;border:0;font-family:inherit}
.btn-o{background:var(--orange);color:#fff;box-shadow:0 8px 20px rgba(249,163,10,.3)}
.btn-o:hover{background:var(--orange-d);transform:translateY(-1px)}
.btn-o .ar{width:26px;height:26px;border-radius:50%;border:1.6px solid rgba(255,255,255,.85);display:grid;place-items:center;font-size:14px}
.btn-line{background:#fff;color:var(--ink);border:1.6px solid var(--ink)}
.btn-line .ar{width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:13px}
.btn-pill{background:#fff;border:1.4px solid #cfd0d4;color:var(--ink);font-size:12.5px;padding:7px 7px 7px 20px;gap:12px}
.btn-pill .ar{width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:13px}
.btn-pill:hover{border-color:var(--ink)}
.circ{width:30px;height:30px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:14px;flex:none}

.eyebrow{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange)}
h2.ttl{font-size:clamp(28px,3.3vw,40px);font-weight:800;line-height:1.08;letter-spacing:-.02em}
.sub{color:var(--text);font-size:15px;line-height:1.45;margin-top:10px;max-width:460px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}

/* ---------- Header ---------- */
header{position:absolute;top:0;left:0;right:0;z-index:20}
.nav{display:flex;align-items:center;justify-content:space-between;height:96px}
.logo{display:flex;flex-direction:column;align-items:center;line-height:1}
.logo svg{width:62px;height:34px;margin-bottom:2px}
.logo b{font-style:italic;font-weight:900;font-size:25px;letter-spacing:-.01em;color:var(--ink)}
.logo small{font-style:italic;font-weight:800;font-size:9.5px;letter-spacing:.06em;margin-top:2px}
.menu{display:flex;gap:34px;font-size:13.5px;font-weight:600}
.menu a{position:relative;padding:6px 0}
.menu a.on{color:var(--ink)}
.menu a.on::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--orange);border-radius:2px}
.menu a:hover{color:var(--orange)}
.burger{display:none;background:none;border:0;font-size:26px;cursor:pointer}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:610px;overflow:hidden;background:#f4f6f8}
.hero-img{position:absolute;inset:0 0 0 auto;width:62%;background:url(../img/hero.webp) center/cover no-repeat}
.hero-img::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f4f6f8 0%,rgba(244,246,248,.9) 12%,rgba(244,246,248,0) 40%)}
.hero::after{content:"";position:absolute;left:-60px;bottom:-30px;width:240px;height:260px;background:radial-gradient(ellipse at 30% 70%,rgba(64,120,60,.55),transparent 65%);filter:blur(4px);opacity:.6}
.hero .wrap{position:relative;z-index:2;padding-top:140px;padding-bottom:70px}
.hero .eyebrow{font-size:15px;font-weight:500;text-transform:uppercase;color:var(--ink);letter-spacing:.02em}
.hero h1{font-size:clamp(40px,5.4vw,66px);font-weight:800;line-height:1.02;letter-spacing:-.03em;max-width:560px}
.hero h1 span{color:var(--orange)}
.hero p{font-size:16px;line-height:1.45;color:#3c3f46;max-width:390px;margin:24px 0 28px}
.hero .ctas{display:flex;gap:16px;flex-wrap:wrap}

/* ---------- Features strip ---------- */
.features{border-bottom:1px solid var(--line);background:#fff}
.features .wrap{display:grid;grid-template-columns:repeat(6,1fr);padding-top:22px;padding-bottom:22px}
.feat{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;font-size:12.5px;font-weight:600;line-height:1.3;padding:4px 10px;border-right:1px solid var(--line)}
.feat:last-child{border-right:0}
.feat svg{width:38px;height:38px;stroke:var(--ink);stroke-width:1.4}
.feat:first-child svg{stroke:var(--orange)}

/* ---------- Historia ---------- */
.story{background:var(--bg2);padding:16px 0}
.story .wrap{display:grid;grid-template-columns:1fr 1.32fr .58fr;gap:34px;align-items:center;padding-top:0;padding-bottom:0}
.story h2{margin-bottom:14px}
.story p{color:var(--text);font-size:14.5px;line-height:1.48;margin-bottom:26px}
.gal{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gal img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.gal .big{grid-column:1/3;aspect-ratio:334/107}
.gal .sm{aspect-ratio:170/95}
.stats{display:flex;flex-direction:column;gap:30px}
.stat{display:flex;gap:16px;align-items:center}
.stat .ic{width:46px;height:46px;border-radius:50%;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;font-size:22px;flex:none}
.stat b{display:block;font-size:24px;font-weight:800}
.stat small{font-size:13px;color:var(--muted)}

/* ---------- Cards ---------- */
.section{padding:44px 0 20px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 2px 14px rgba(15,20,30,.07);transition:.25s}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(15,20,30,.12)}
.card img{width:100%;aspect-ratio:168/86;object-fit:cover}
.card .bd{padding:16px 18px 20px}
.card .hd{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}
.card h3{font-size:16px;font-weight:700;line-height:1.15}
.card p{font-size:13px;line-height:1.38;color:var(--muted)}
.pro img{aspect-ratio:170/104}
.pro .hd{margin-bottom:2px}
.pro .role{font-size:13px;color:var(--text);margin-bottom:12px}
.pro ul{list-style:none;font-size:12.5px;color:var(--muted);line-height:1.6}
.pro li{display:flex;gap:8px;align-items:center}
.pro li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange);flex:none}

/* ---------- Sponsors ---------- */
.spons{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.spon{height:62px;background:#fff;border-radius:4px;box-shadow:0 2px 10px rgba(15,20,30,.06);display:grid;place-items:center;font-weight:800;font-size:14px;letter-spacing:.08em;color:#b3b5bb;text-transform:uppercase}

/* ---------- Comunidad ---------- */
.comm{display:grid;grid-template-columns:1.6fr 1fr .92fr;margin-top:36px;background:var(--bg2);position:relative}
.comm-img{background:url(../img/com.webp) center/cover;min-height:300px}
.comm-box{background:linear-gradient(160deg,#1c222b,#0d1015);color:#fff;padding:24px 28px 26px;margin:0 0 -26px -0px;border-radius:0 0 10px 0;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.comm-box .eyebrow{color:#cfd2d8}
.comm-box h2{font-size:clamp(24px,2.5vw,32px);line-height:1.12;margin-bottom:16px;font-weight:700}
.comm-box p{font-size:14px;line-height:1.45;color:#d9dbe0;margin-bottom:20px}
.comm-box .btn{align-self:flex-start}
.comm-list{padding:22px 22px;display:flex;flex-direction:column;gap:22px;justify-content:center;background:#fff;margin:0 0 30px 0;box-shadow:0 6px 20px rgba(15,20,30,.06)}
.cl{display:flex;gap:14px;align-items:flex-start}
.cl .sq{width:40px;height:40px;border-radius:8px;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:20px;flex:none}
.cl b{display:block;font-size:13px;font-weight:700;margin-bottom:3px}
.cl small{font-size:12px;color:var(--text);line-height:1.35;display:block}

/* ---------- Testimonios ---------- */
.testi{position:relative;padding:40px 0 30px;overflow:hidden}
.testi-bg{position:absolute;right:0;top:0;bottom:0;width:42%;background:url(../img/rk.webp) left center/cover}
.testi-bg::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.4) 25%,transparent 50%)}
.testi .wrap{position:relative;z-index:2}
.slider{display:flex;align-items:center;gap:20px;margin-top:20px}
.arrow{width:46px;height:46px;border-radius:50%;background:#fff;border:1.6px solid #ccc;display:grid;place-items:center;cursor:pointer;font-size:20px;color:var(--ink);flex:none;transition:.2s}
.arrow:hover{border-color:var(--ink)}
.quote{background:#fff;border-radius:6px;box-shadow:0 4px 22px rgba(15,20,30,.09);padding:24px 30px;display:flex;gap:26px;align-items:center;max-width:720px;flex:1;min-height:150px}
.quote img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex:none}
.quote q{font-size:15px;line-height:1.45;color:#2b2e35;display:block;margin-bottom:12px;quotes:"\201C" "\201D"}
.qf{display:flex;align-items:center;gap:24px}
.stars{color:var(--orange);font-size:22px;letter-spacing:4px}
.qf b{font-size:13px;display:block}
.qf small{font-size:12px;color:var(--muted)}

/* ---------- Novedades ---------- */
.news{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.nw{position:relative;border-radius:4px;overflow:hidden;height:130px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;padding:14px 16px;color:#fff;transition:.25s}
.nw::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.15) 60%,rgba(0,0,0,0))}
.nw:hover{transform:translateY(-3px)}
.nw *{position:relative}
.tag{align-self:flex-start;background:var(--orange);font-size:10.5px;font-weight:700;text-transform:uppercase;padding:4px 12px;border-radius:999px;margin-bottom:6px}
.nw h4{font-size:15px;font-weight:700;line-height:1.15}

/* ---------- Contacto ---------- */
.contact .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.contact .sub{max-width:430px}
.ci{display:flex;gap:16px;align-items:center;margin-top:18px}
.ci .circ{width:40px;height:40px;font-size:18px}
.ci b{font-size:14.5px;display:block}
.ci small{font-size:13px;color:var(--text)}
.ci u{font-size:13px;color:var(--text)}
form{background:#fff;border-radius:8px;box-shadow:0 4px 24px rgba(15,20,30,.08);padding:24px}
form h3{font-size:20px;font-weight:700;margin-bottom:14px}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
input,select,textarea{width:100%;font-family:inherit;font-size:13px;border:1px solid #dcdde0;border-radius:4px;padding:11px 12px;color:var(--ink);background:#fff;outline:none;transition:.2s}
input:focus,select:focus,textarea:focus{border-color:var(--orange)}
select{color:var(--muted);appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center/12px no-repeat #fff}
textarea{height:66px;resize:vertical;margin-bottom:16px}
.ok{display:none;margin-top:12px;font-size:13px;color:#1a7f37;font-weight:600}

/* ---------- Footer ---------- */
footer{background:var(--dark);color:#fff;margin-top:36px;position:relative;overflow:hidden}
footer::after{content:"";position:absolute;right:-40px;bottom:-60px;width:260px;height:200px;background:repeating-radial-gradient(circle at 100% 100%,transparent 0 10px,rgba(249,163,10,.25) 10px 11px);opacity:.7}
footer .wrap{display:grid;grid-template-columns:1.1fr 1.4fr 1fr 1fr 1.1fr .9fr;gap:24px;padding-top:34px;padding-bottom:34px;align-items:start;position:relative;z-index:1}
footer .logo b,footer .logo small{color:#fff}
footer .tagline{font-size:13px;line-height:1.45;color:#cdd0d6;align-self:center;max-width:220px}
footer h5{font-size:13px;font-weight:700;margin-bottom:10px}
footer ul{list-style:none;font-size:12px;color:#c3c6cc;line-height:1.55}
footer ul a:hover{color:var(--orange)}
.soc{display:flex;gap:10px;align-self:center;justify-content:flex-end}
.soc a{width:34px;height:34px;border-radius:50%;border:1.4px solid #fff;display:grid;place-items:center;font-size:16px;transition:.2s}
.soc a:hover{background:var(--orange);border-color:var(--orange)}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .story .wrap{grid-template-columns:1fr 1.3fr}
  .stats{grid-column:1/3;flex-direction:row;justify-content:space-around;padding:20px 0}
  .comm{grid-template-columns:1fr 1fr}
  .comm-img{grid-column:1/3}
  .comm-box{margin:0}
  .comm-list{margin:0}
  footer .wrap{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:860px){
  .wrap{padding:0 16px}
  .menu{display:none}
  .menu.open{display:flex;flex-direction:column;position:absolute;top:84px;left:16px;right:16px;background:#fff;padding:18px 20px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.15);gap:14px}
  .burger{display:block}
  
  .hero-img{width:100%;opacity:.35}
  .hero-img::before{display:none}
  .features .wrap{grid-template-columns:repeat(3,1fr);row-gap:20px}
  .feat:nth-child(3){border-right:0}
  .story .wrap,.contact .wrap{grid-template-columns:1fr;gap:26px}
  .story{padding:36px 0}
  .stats{grid-column:auto;flex-wrap:wrap;gap:20px}
  .grid4,.spons{grid-template-columns:1fr 1fr}
  .spons{grid-template-columns:repeat(3,1fr)}
  .sec-head{flex-direction:column;align-items:flex-start}
  .comm{grid-template-columns:1fr}
  .comm-img{grid-column:auto;min-height:220px}
  .testi-bg{width:100%;opacity:.15}
  .quote{flex-direction:column;text-align:center;padding:22px}
  .qf{flex-direction:column;gap:6px}
  .slider .arrow{display:none}
  .news{grid-template-columns:1fr}
  footer .wrap{grid-template-columns:1fr 1fr}
  .soc{justify-content:flex-start}
}
@media (max-width:480px){
  .grid4{grid-template-columns:1fr}
  .fg{grid-template-columns:1fr}
  .features .wrap{grid-template-columns:1fr 1fr}
  .feat{border-right:0!important}
}

/* =========================================================
   MULTIPÁGINA — componentes compartidos
   ========================================================= */
header.solid{position:sticky;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);box-shadow:0 1px 0 var(--line)}
header.solid .nav{height:84px}
.nav-r{display:flex;align-items:center;gap:12px}
.cart-btn{position:relative;width:46px;height:46px;border-radius:50%;border:1.4px solid #d5d6da;background:#fff;display:grid;place-items:center;font-size:20px;cursor:pointer;color:var(--ink);transition:.2s}
.cart-btn:hover{border-color:var(--ink)}
.cart-btn .n{position:absolute;top:-4px;right:-4px;background:var(--orange);color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;padding:0 5px;border-radius:10px;display:none;place-items:center}
.cart-btn .n.on{display:grid}

/* Page hero */
.phero{position:relative;color:#fff;background:#111 center/cover no-repeat;overflow:hidden}
.phero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,16,.92) 0%,rgba(10,12,16,.72) 45%,rgba(10,12,16,.25) 100%)}
.phero::after{content:"";position:absolute;right:-60px;bottom:-80px;width:300px;height:220px;background:repeating-radial-gradient(circle at 100% 100%,transparent 0 12px,rgba(249,163,10,.35) 12px 13px);opacity:.7}
.phero .wrap{position:relative;z-index:2;padding-top:64px;padding-bottom:60px}
.crumbs{font-size:12.5px;color:#c9ccd2;margin-bottom:18px;display:flex;gap:8px}
.crumbs a:hover{color:var(--orange)}
.phero .eyebrow{color:#e3e5e9}
.phero h1{font-size:clamp(34px,4.4vw,54px);font-weight:800;line-height:1.04;letter-spacing:-.025em;max-width:640px}
.phero h1 span{color:var(--orange)}
.phero p{font-size:16px;line-height:1.5;color:#d9dbe0;max-width:520px;margin-top:16px}
.phero .ctas{margin-top:26px;display:flex;gap:14px;flex-wrap:wrap}

/* Chips & tabs */
.chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{font-family:inherit;font-size:13px;font-weight:600;padding:9px 18px;border-radius:999px;border:1.4px solid #d5d6da;background:#fff;color:var(--ink);cursor:pointer;transition:.2s}
.chip:hover{border-color:var(--ink)}
.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.panel{background:#fff;border-radius:10px;box-shadow:0 4px 22px rgba(15,20,30,.07);padding:24px}
.muted{color:var(--muted)}
.tag-s{display:inline-block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:4px 10px;border-radius:999px;background:var(--orange-soft);color:var(--orange-d)}
.tag-s.dark{background:var(--ink);color:#fff}
.tag-s.green{background:#e3f5e8;color:#1a7f37}
.tag-s.gray{background:#eceef1;color:#5b5f68}

/* CTA band */
.band{background:linear-gradient(120deg,#1c222b,#0d1015);color:#fff;border-radius:14px;padding:36px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px;position:relative;overflow:hidden}
.band::after{content:"";position:absolute;right:-50px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(249,163,10,.45),transparent 70%)}
.band h3{font-size:clamp(22px,2.4vw,30px);font-weight:800;line-height:1.15}
.band p{color:#cfd2d8;font-size:14.5px;margin-top:8px}
.band .btn{position:relative;z-index:1}

/* Modal */
.modal{position:fixed;inset:0;z-index:100;background:rgba(10,12,16,.6);display:none;align-items:center;justify-content:center;padding:16px}
.modal.on{display:flex;animation:fade .2s}
.mbox{background:#fff;border-radius:14px;max-width:460px;width:100%;padding:30px 28px;position:relative;max-height:90vh;overflow:auto;animation:pop .25s}
.mx{position:absolute;top:12px;right:14px;background:none;border:0;font-size:26px;cursor:pointer;color:var(--muted);line-height:1}
.mbox h3{font-size:22px;font-weight:800;margin-bottom:8px}
.mbox p{font-size:14px;color:var(--text);line-height:1.5}
.mbox .fg{margin-top:14px}
.mbox label{display:block;font-size:12px;font-weight:600;margin:12px 0 6px}
.okic{width:60px;height:60px;border-radius:50%;background:#e3f5e8;color:#1a7f37;display:grid;place-items:center;font-size:30px;margin-bottom:14px}
.code{display:inline-block;margin-top:14px;font-weight:800;letter-spacing:.12em;background:var(--bg2);padding:8px 14px;border-radius:6px}
@keyframes fade{from{opacity:0}}
@keyframes pop{from{transform:translateY(12px) scale(.98);opacity:0}}

/* Cart drawer */
.drawer-bg{position:fixed;inset:0;background:rgba(10,12,16,.5);z-index:90;opacity:0;pointer-events:none;transition:.25s}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(400px,100%);background:#fff;z-index:91;transform:translateX(100%);transition:.3s;display:flex;flex-direction:column}
body.cart-open .drawer{transform:none}
body.cart-open .drawer-bg{opacity:1;pointer-events:auto}
.dr-h{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}
.dr-h h3{font-size:19px;font-weight:800}
.dr-b{flex:1;overflow:auto;padding:8px 24px}
.dr-f{border-top:1px solid var(--line);padding:20px 24px}
.ci-row{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}
.ci-art{width:62px;height:62px;border-radius:8px;background:var(--bg2);flex:none;display:grid;place-items:center;overflow:hidden}
.ci-art svg{width:56px;height:56px}
.ci-row .nm{font-size:13.5px;font-weight:700;line-height:1.25}
.ci-row .pr{font-size:13px;color:var(--muted);margin-top:3px}
.qty{display:flex;align-items:center;gap:8px;margin-top:8px}
.qty button{width:26px;height:26px;border-radius:50%;border:1.3px solid #d5d6da;background:#fff;cursor:pointer;font-size:14px;line-height:1;font-family:inherit}
.qty span{font-size:13px;font-weight:700;min-width:16px;text-align:center}
.rm{margin-left:auto;background:none;border:0;color:var(--muted);cursor:pointer;font-size:12px;text-decoration:underline;font-family:inherit;align-self:flex-start}
.tot{display:flex;justify-content:space-between;font-size:14px;margin-bottom:6px}
.tot.big{font-size:18px;font-weight:800;margin:10px 0 16px}
.empty{text-align:center;padding:60px 10px;color:var(--muted);font-size:14px}
.empty .big{font-size:44px;margin-bottom:10px}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120px);background:var(--ink);color:#fff;font-size:13.5px;font-weight:600;padding:12px 20px;border-radius:999px;z-index:120;transition:.3s;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.toast.on{transform:translate(-50%,0)}

/* =========================================================
   RESERVAS
   ========================================================= */
.res{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}
.res>*{min-width:0}
.step{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;margin:0 0 14px}
.step b{width:28px;height:28px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:13px}
.days{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin}
.day{flex:none;width:76px;padding:12px 0;border-radius:10px;border:1.4px solid #d5d6da;background:#fff;text-align:center;cursor:pointer;font-family:inherit;transition:.2s}
.day small{display:block;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--muted)}
.day strong{display:block;font-size:22px;font-weight:800;margin:2px 0}
.day:hover{border-color:var(--ink)}
.day.on{background:var(--orange);border-color:var(--orange);color:#fff}
.day.on small{color:#fff}
.slots-wrap{overflow-x:auto;border-radius:10px;border:1px solid var(--line);background:#fff}
table.slots{border-collapse:collapse;width:100%;min-width:820px}
.slots th,.slots td{padding:8px 6px;text-align:center;border-bottom:1px solid var(--line)}
.slots thead th{font-size:12px;font-weight:700;color:var(--muted);background:var(--bg2)}
.slots tbody th{text-align:left;padding:12px 14px;min-width:150px;background:#fff;position:sticky;left:0;z-index:1;border-right:1px solid var(--line)}
.slots tbody th b{display:block;font-size:13.5px}
.slots tbody th small{font-size:11.5px;color:var(--muted);font-weight:500}
.slot{width:100%;min-width:62px;padding:10px 0;border-radius:6px;border:1.3px solid #cfe9d6;background:#f2fbf4;color:#1a7f37;font-family:inherit;font-weight:700;font-size:12px;cursor:pointer;transition:.15s}
.slot:hover{border-color:#1a7f37}
.slot.busy{background:repeating-linear-gradient(45deg,#f1f2f4 0 6px,#e8e9ec 6px 12px);border-color:#e3e4e7;color:#a5a8ae;cursor:not-allowed;text-decoration:line-through}
.slot.sel{background:var(--orange);border-color:var(--orange);color:#fff}
.legend{display:flex;gap:20px;font-size:12px;color:var(--muted);margin-top:12px;flex-wrap:wrap}
.legend span{display:flex;align-items:center;gap:8px}
.legend i{width:16px;height:16px;border-radius:4px;display:inline-block}
.sum{position:sticky;top:104px}
.sum h3{font-size:19px;font-weight:800;margin-bottom:16px}
.sum dl{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;font-size:13.5px;padding-bottom:16px;border-bottom:1px dashed #d5d6da;margin-bottom:16px}
.sum dt{color:var(--muted)}
.sum dd{text-align:right;font-weight:700}
.sum .total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}
.sum .total strong{font-size:26px;font-weight:800}
.sum input{margin-bottom:10px}
.sum .btn{width:100%;justify-content:center}
.sum .btn[disabled]{opacity:.45;pointer-events:none}
.sum .note{font-size:11.5px;color:var(--muted);margin-top:12px;line-height:1.45;text-align:center}
.rates{width:100%;border-collapse:collapse;font-size:14px}
.rates th,.rates td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}
.rates th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}
.rates td:last-child{font-weight:800;text-align:right}
.ibox{display:flex;gap:14px;align-items:flex-start}
.ibox .sq{width:44px;height:44px;border-radius:10px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;font-size:22px;flex:none}
.ibox b{display:block;font-size:14.5px;margin-bottom:4px}
.ibox p{font-size:13px;color:var(--text);line-height:1.45}

/* =========================================================
   PROFESORES Y CLASES
   ========================================================= */
.coach{display:grid;grid-template-columns:220px 1fr;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 22px rgba(15,20,30,.07)}
.coach img{width:100%;height:100%;object-fit:cover;min-height:240px}
.coach .bd{padding:22px 24px;display:flex;flex-direction:column}
.coach h3{font-size:20px;font-weight:800}
.coach .role{font-size:13px;color:var(--orange-d);font-weight:700;margin:4px 0 10px}
.coach p{font-size:13.5px;color:var(--text);line-height:1.5}
.coach .tags{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}
.coach .meta{font-size:12.5px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-bottom:16px}
.coach .btn{align-self:flex-start;margin-top:auto}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ctype{padding:26px 24px}
.ctype .sq{width:50px;height:50px;border-radius:12px;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:24px;margin-bottom:16px}
.ctype h4{font-size:17px;font-weight:800;margin-bottom:8px}
.ctype p{font-size:13.5px;color:var(--text);line-height:1.45;margin-bottom:14px}
.ctype ul{list-style:none;font-size:12.5px;color:var(--muted);line-height:1.8;border-top:1px solid var(--line);padding-top:12px}
.ctype li b{color:var(--ink)}
.levels{display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:16px}
.levels::before{content:"";position:absolute;top:24px;left:12%;right:12%;height:3px;background:linear-gradient(90deg,var(--orange-soft),var(--orange))}
.lv{text-align:center;position:relative}
.lv .dot{width:50px;height:50px;border-radius:50%;background:#fff;border:3px solid var(--orange);display:grid;place-items:center;margin:0 auto 14px;font-weight:800;color:var(--orange)}
.lv:last-child .dot{background:var(--orange);color:#fff}
.lv b{display:block;font-size:15px;margin-bottom:6px}
.lv p{font-size:12.5px;color:var(--text);line-height:1.45;max-width:220px;margin:0 auto}
.plan{padding:30px 26px;display:flex;flex-direction:column;position:relative;border:1.5px solid transparent}
.plan.hot{border-color:var(--orange);transform:translateY(-8px)}
.plan .badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--orange);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;padding:5px 14px;border-radius:999px;white-space:nowrap}
.plan h4{font-size:16px;font-weight:800}
.plan .desc{font-size:13px;color:var(--muted);margin-top:4px}
.plan .price{font-size:36px;font-weight:800;margin:18px 0 2px;letter-spacing:-.02em}
.plan .price small{font-size:13px;font-weight:600;color:var(--muted)}
.plan ul{list-style:none;font-size:13.5px;line-height:2;margin:16px 0 22px;color:var(--text)}
.plan li::before{content:"✓";color:var(--orange);font-weight:800;margin-right:10px}
.plan .btn{margin-top:auto;justify-content:center}
.faq details{background:#fff;border-radius:10px;box-shadow:0 2px 12px rgba(15,20,30,.06);margin-bottom:12px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:700;font-size:15px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;color:var(--orange);font-weight:600;transition:.2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 22px 20px;font-size:14px;color:var(--text);line-height:1.55}

/* =========================================================
   TORNEOS Y NOVEDADES
   ========================================================= */
.feat-t{display:grid;grid-template-columns:1.05fr 1fr;background:linear-gradient(140deg,#1c222b,#0d1015);color:#fff;border-radius:14px;overflow:hidden}
.feat-t .im{background:center/cover;min-height:340px;position:relative}
.feat-t .im .tag{position:absolute;top:18px;left:18px}
.feat-t .bd{padding:34px 36px}
.feat-t h3{font-size:clamp(26px,2.8vw,36px);font-weight:800;line-height:1.08;margin:10px 0 12px}
.feat-t p{color:#cfd2d8;font-size:14px;line-height:1.5}
.tmeta{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:20px 0}
.tmeta div{font-size:12px;color:#a9adb5}
.tmeta b{display:block;color:#fff;font-size:14px;margin-top:2px}
.count{display:flex;gap:10px;margin:6px 0 24px}
.count div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:10px 0;width:70px;text-align:center}
.count b{display:block;font-size:24px;font-weight:800;color:var(--orange)}
.count small{font-size:10.5px;text-transform:uppercase;color:#a9adb5;letter-spacing:.05em}
.cal{display:flex;flex-direction:column;gap:12px}
.ev{display:grid;grid-template-columns:76px 1.6fr 1fr 1fr auto;gap:20px;align-items:center;background:#fff;border-radius:10px;padding:16px 20px;box-shadow:0 2px 14px rgba(15,20,30,.06);transition:.2s}
.ev:hover{box-shadow:0 8px 24px rgba(15,20,30,.1)}
.date{text-align:center;border-radius:10px;background:var(--bg2);padding:8px 0}
.date b{display:block;font-size:24px;font-weight:800;line-height:1}
.date small{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--orange-d)}
.ev h4{font-size:15.5px;font-weight:800;margin-bottom:4px}
.ev .sm{font-size:12.5px;color:var(--muted)}
.bar{height:6px;background:#eceef1;border-radius:3px;overflow:hidden;margin-top:6px}
.bar i{display:block;height:100%;background:var(--orange);border-radius:3px}
.results{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 14px rgba(15,20,30,.06)}
.results th,.results td{padding:14px 18px;text-align:left;font-size:13.5px;border-bottom:1px solid var(--line)}
.results th{background:var(--bg2);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.results td:first-child{font-weight:800}
.results .tr{font-size:16px;margin-right:6px}
.ncard{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 14px rgba(15,20,30,.07);transition:.25s;display:flex;flex-direction:column}
.ncard:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(15,20,30,.12)}
.ncard img{width:100%;aspect-ratio:16/9;object-fit:cover}
.ncard .bd{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.ncard .top{display:flex;justify-content:space-between;align-items:center}
.ncard .top small{font-size:12px;color:var(--muted)}
.ncard h4{font-size:16.5px;font-weight:800;line-height:1.25}
.ncard p{font-size:13.5px;color:var(--text);line-height:1.5}
.ncard .more{margin-top:auto;font-size:13px;font-weight:700;color:var(--orange-d);display:flex;align-items:center;gap:6px}

/* =========================================================
   TIENDA
   ========================================================= */
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.toolbar select{width:auto;min-width:190px;font-weight:600;color:var(--ink);border-radius:999px;padding:10px 38px 10px 18px;border:1.4px solid #d5d6da}
.prod{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 14px rgba(15,20,30,.07);display:flex;flex-direction:column;transition:.25s}
.prod:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(15,20,30,.12)}
.prod .art{aspect-ratio:1/1;background:radial-gradient(circle at 50% 40%,#fff 0%,#f1f2f0 70%);display:grid;place-items:center;position:relative}
.prod .art svg{width:72%;height:72%;transition:.3s}
.prod:hover .art svg{transform:scale(1.05) rotate(-2deg)}
.prod .art .tag-s{position:absolute;top:14px;left:14px}
.prod .bd{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.prod .cat{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.prod h4{font-size:15px;font-weight:800;line-height:1.25;margin:4px 0 12px}
.prod .row{display:flex;justify-content:space-between;align-items:center;margin-top:auto;gap:10px}
.prod .pr{font-size:18px;font-weight:800}
.prod .pr s{display:block;font-size:12px;font-weight:600;color:var(--muted)}
.add{width:42px;height:42px;border-radius:50%;border:0;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:20px;cursor:pointer;transition:.2s;flex:none}
.add:hover{background:var(--orange-d);transform:scale(1.06)}
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

/* ---------- Responsive multipágina ---------- */
@media (max-width:1024px){
  .res{grid-template-columns:1fr}
  .sum{position:static}
  .grid3{grid-template-columns:1fr 1fr}
  .coach{grid-template-columns:180px 1fr}
  .ev{grid-template-columns:70px 1fr auto;row-gap:10px}
  .ev .c3,.ev .c4{grid-column:2/3}
  .ev .btn{grid-column:3;grid-row:1/4}
}
@media (max-width:860px){
  .nav-r .btn-o{display:none}
  .grid2,.perks{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .plan.hot{transform:none}
  .levels{grid-template-columns:1fr 1fr;row-gap:28px}
  .levels::before{display:none}
  .feat-t{grid-template-columns:1fr}
  .feat-t .im{min-height:220px}
  .feat-t .bd{padding:26px 22px}
  .band{flex-direction:column;align-items:flex-start;padding:28px 24px}
  .phero .wrap{padding-top:44px;padding-bottom:44px}
  .ev{grid-template-columns:62px 1fr;padding:16px}
  .ev .c3,.ev .c4,.ev .btn{grid-column:1/3;grid-row:auto}
  .ev .btn{justify-self:start}
}
@media (max-width:560px){
  .coach{grid-template-columns:1fr}
  .coach img{min-height:0;aspect-ratio:16/10}
  .tmeta{grid-template-columns:1fr 1fr}
  .count div{width:62px}
  .toolbar select{width:100%}
  .results th:nth-child(4),.results td:nth-child(4){display:none}
  .results th,.results td{padding:12px 10px;font-size:12.5px}
}

/* ajustes */
.toast{opacity:0;visibility:hidden}
.toast.on{opacity:1;visibility:visible}
.sum form,.mbox form{background:none;box-shadow:none;padding:0}
.slots th,.slots td{padding:7px 3px}
.slots tbody th{min-width:140px;padding:12px}
table.slots{min-width:760px}
.slot{min-width:52px;font-size:11.5px;padding:10px 0}
.slot.busy{text-decoration:none}
.phero{background-position:center right}
.ev{grid-template-columns:76px 1.6fr 1fr 1fr 150px}
.ev > :last-child{justify-self:end}
@media (max-width:1024px){.ev{grid-template-columns:70px 1fr auto}}
@media (max-width:860px){.ev{grid-template-columns:62px 1fr}.ev > :last-child{justify-self:start}}
.menu.open a.on::after{right:auto;width:28px}

/* =========================================================
   V3 — El club, Socios y mejoras generales
   ========================================================= */
:focus-visible{outline:3px solid rgba(249,163,10,.6);outline-offset:2px}
.menu{gap:26px}

/* Header que se fija al bajar (landing) */
header.fixed{position:fixed;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);box-shadow:0 4px 20px rgba(15,20,30,.08);animation:slideDown .3s}
header.fixed .nav{height:76px}
@keyframes slideDown{from{transform:translateY(-100%)}}

/* Animación al scrollear */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* WhatsApp flotante */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:80;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;font-size:28px;box-shadow:0 10px 26px rgba(37,211,102,.45);transition:.25s}
.wa-float:hover{transform:scale(1.08)}
.wa-float::after{content:"¿Consultas? Escribinos";position:absolute;right:70px;white-space:nowrap;background:var(--ink);color:#fff;font-size:12.5px;font-weight:600;padding:8px 14px;border-radius:999px;opacity:0;transform:translateX(6px);transition:.25s;pointer-events:none}
.wa-float:hover::after{opacity:1;transform:none}
.wa-float svg.i{stroke-width:1.6}

/* KPIs */
.kpis{background:var(--ink);color:#fff}
.kpis .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-top:30px;padding-bottom:30px}
.kpis .wrap>div{text-align:center;border-right:1px solid rgba(255,255,255,.12);padding:4px 10px}
.kpis .wrap>div:last-child{border-right:0}
.kpis b{display:block;font-size:clamp(28px,3.4vw,40px);font-weight:800;color:var(--orange)}
.kpis span{font-size:13px;color:#c3c6cc}

/* Timeline */
.timeline{list-style:none;position:relative;padding-left:4px}
.timeline::before{content:"";position:absolute;left:31px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--orange),var(--orange-soft))}
.timeline li{display:flex;gap:20px;margin-bottom:22px;position:relative}
.timeline li>b{flex:none;width:56px;height:30px;border-radius:999px;background:var(--orange);color:#fff;font-size:12.5px;display:grid;place-items:center;position:relative;z-index:1}
.timeline h4{font-size:15.5px;font-weight:800;margin:4px 0 4px}
.timeline p{font-size:13.5px;color:var(--text);line-height:1.5}

/* Galería + visor */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:12px}
.gallery button{border:0;padding:0;border-radius:8px;overflow:hidden;cursor:zoom-in;background:#ddd;position:relative}
.gallery .g-wide{grid-column:span 2}
.gallery img{width:100%;height:100%;object-fit:cover;transition:.4s}
.gallery button:hover img{transform:scale(1.06)}
.gallery button::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.3),transparent 50%);opacity:0;transition:.3s}
.gallery button:hover::after{opacity:1}
.lightbox{position:fixed;inset:0;z-index:110;background:rgba(8,10,14,.93);display:none;align-items:center;justify-content:center;padding:60px 70px}
.lightbox.on{display:flex;animation:fade .2s}
.lightbox img{max-width:100%;max-height:100%;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb-x{position:absolute;top:16px;right:22px;background:none;border:0;color:#fff;font-size:38px;cursor:pointer}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08);color:#fff;font-size:22px;display:grid;place-items:center;cursor:pointer}
.lb-nav:hover{background:var(--orange);border-color:var(--orange)}
.lb-nav.prev{left:16px}.lb-nav.next{right:16px}
.lb-cap{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#cfd2d8;font-size:13px}

/* Ubicación */
.visit{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:stretch}
.map{border-radius:10px;overflow:hidden;min-height:380px;box-shadow:0 4px 22px rgba(15,20,30,.07);background:var(--bg2)}
.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}

/* Socios */
.billing{display:flex;align-items:center;justify-content:center;gap:14px;font-size:14px;font-weight:700}
.billing .lbl{cursor:pointer;color:var(--muted);transition:.2s}
.billing .lbl.on{color:var(--ink)}
.billing em{font-style:normal;font-size:11px;background:#e3f5e8;color:#1a7f37;padding:3px 8px;border-radius:999px;margin-left:4px}
.switch{width:54px;height:30px;border-radius:999px;border:0;background:#d5d6da;position:relative;cursor:pointer;transition:.25s}
.switch i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:.25s}
.switch.on{background:var(--orange)}
.switch.on i{left:27px}
.plan .annual{font-size:12px;color:#1a7f37;font-weight:700;min-height:16px}
.compare td:not(:first-child),.compare th:not(:first-child){text-align:center}
.compare td:first-child{font-weight:600}
.compare th:last-child,.compare td:last-child{background:#fff7f0}
.compare .sum-row td{font-weight:800;font-size:15px;border-top:2px solid var(--ink)}

@media (max-width:1024px){
  .menu{gap:18px;font-size:13px}
  .gallery{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:860px){
  .kpis .wrap{grid-template-columns:1fr 1fr;row-gap:20px}
  .kpis .wrap>div:nth-child(2){border-right:0}
  .gallery{grid-template-columns:1fr 1fr;grid-auto-rows:150px}
  .visit{grid-template-columns:1fr}
  .lightbox{padding:60px 12px}
  .lb-nav{top:auto;bottom:14px;transform:none}
  .wa-float{width:52px;height:52px;right:16px;bottom:16px}
  .wa-float::after{display:none}
}

/* =========================================================
   V4 — Mi cuenta, Ranking y Tablón
   ========================================================= */
.av{display:inline-grid;place-items:center;border-radius:50%;color:#fff;font-weight:800;flex:none;letter-spacing:.02em}
.acc-btn{width:46px;height:46px;border-radius:50%;border:1.4px solid #d5d6da;background:#fff;display:grid;place-items:center;font-size:20px;color:var(--ink);transition:.2s}
.acc-btn:hover,.acc-btn.on{border-color:var(--ink)}
.acc-in{width:38px;height:38px;border-radius:50%;background:var(--orange);color:#fff;font-size:13px;font-weight:800;display:grid;place-items:center}

/* Dropdown Comunidad */
.dd{position:relative}
.dd>button{background:none;border:0;font:inherit;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;padding:6px 0;color:var(--ink)}
.dd>button svg{font-size:14px;transition:.2s}
.dd.on>button{position:relative}
.dd.on>button::after{content:"";position:absolute;left:0;right:18px;bottom:-4px;height:2px;background:var(--orange);border-radius:2px}
.dd-m{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%,6px);background:#fff;border-radius:12px;box-shadow:0 14px 40px rgba(15,20,30,.16);padding:8px;min-width:250px;opacity:0;visibility:hidden;transition:.2s;z-index:30}
.dd-m::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.dd-m a{display:block;padding:10px 12px;border-radius:8px}
.dd-m a:hover{background:var(--bg2)}
.dd-m b{display:block;font-size:13.5px}
.dd-m small{font-size:12px;color:var(--muted);font-weight:500}
.dd:hover .dd-m,.dd.open .dd-m{opacity:1;visibility:visible;transform:translate(-50%,0)}
.dd:hover>button svg,.dd.open>button svg{transform:rotate(180deg)}
@media (max-width:860px){
  .menu.open .dd>button{display:none}
  .menu.open .dd-m{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0;min-width:0}
  .menu.open .dd-m a{padding:0;border-radius:0}
  .menu.open .dd-m a:hover{background:none}
  .menu.open .dd-m b{font-weight:600}
  .menu.open .dd-m small{display:none}
  .menu.open .dd-m a+a{margin-top:14px}
}

/* ---------- Mi cuenta ---------- */
.login{max-width:440px;margin:0 auto;text-align:center}
.login .panel{text-align:left;padding:30px}
.login h2{margin-bottom:8px}
.login label{display:block;font-size:12px;font-weight:600;margin:14px 0 6px}
.login .btn{width:100%;justify-content:center;margin-top:18px}
.login .demo{font-size:12.5px;color:var(--muted);text-align:center;margin-top:14px}
.prof{display:flex;align-items:center;gap:22px;background:linear-gradient(130deg,#1c222b,#0d1015);color:#fff;border-radius:14px;padding:26px 30px;position:relative;overflow:hidden;flex-wrap:wrap}
.prof::after{content:"";position:absolute;right:-60px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(249,163,10,.4),transparent 70%)}
.prof h2{font-size:26px;font-weight:800}
.prof p{color:#cfd2d8;font-size:13.5px;margin-top:4px}
.prof .chips{margin-top:12px}
.prof .tag-s{background:rgba(255,255,255,.1);color:#fff}
.prof .tag-s.o{background:var(--orange)}
.prof .out{margin-left:auto;position:relative;z-index:1;background:none;border:1.4px solid rgba(255,255,255,.4);color:#fff;font:inherit;font-size:13px;font-weight:700;padding:10px 18px;border-radius:999px;cursor:pointer}
.prof .out:hover{border-color:#fff}
.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin:28px 0 24px;overflow-x:auto}
.tab{background:none;border:0;font:inherit;font-size:14px;font-weight:700;color:var(--muted);padding:12px 16px;cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1px;white-space:nowrap;display:flex;gap:8px;align-items:center}
.tab:hover{color:var(--ink)}
.tab.on{color:var(--ink);border-bottom-color:var(--orange)}
.tab .cnt{background:var(--orange);color:#fff;font-size:11px;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;padding:0 5px}
.pane{display:none}.pane.on{display:block;animation:fade .25s}
.kgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
.kpi{padding:20px 22px}
.kpi small{font-size:12px;color:var(--muted);font-weight:600}
.kpi b{display:block;font-size:30px;font-weight:800;margin:4px 0 2px;letter-spacing:-.02em}
.kpi span{font-size:12px;color:#1a7f37;font-weight:700}
.dash{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;align-items:start}
.panel h3.pt{font-size:16px;font-weight:800;margin-bottom:4px}
.panel .ps{font-size:12.5px;color:var(--muted);margin-bottom:16px}
.chart{position:relative}
.chart svg{width:100%;height:auto;display:block;overflow:visible}
.chart .grid line{stroke:#ececee}
.chart .ax text{font-size:11px;fill:#8a8d94;font-family:inherit}
.chart rect.bar{fill:var(--orange);transition:opacity .15s}
.chart rect.bar.cur{fill:var(--ink)}
.chart .hit{fill:transparent;cursor:pointer}
.chart .hit:hover+rect.bar,.chart g:hover rect.bar{opacity:.8}
.tip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;font-size:12px;padding:7px 10px;border-radius:6px;white-space:nowrap;transform:translate(-50%,-110%);opacity:0;transition:opacity .12s}
.tip b{font-weight:800}
.tip.on{opacity:1}
.next{border-left:4px solid var(--orange)}
.next .when{font-size:22px;font-weight:800;margin:6px 0 2px}
.bk{display:grid;grid-template-columns:64px 1fr auto;gap:18px;align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 14px rgba(15,20,30,.06);padding:16px 20px;margin-bottom:12px}
.bk h4{font-size:15px;font-weight:800}
.bk .sm{font-size:12.5px;color:var(--muted);margin-top:2px}
.bk .acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.mini{font:inherit;font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:999px;border:1.3px solid #d5d6da;background:#fff;cursor:pointer;color:var(--ink);display:inline-flex;align-items:center;gap:6px}
.mini:hover{border-color:var(--ink)}
.mini.danger{color:#b42318}
.mini.danger:hover{border-color:#b42318}
.mini.wa{background:#25D366;border-color:#25D366;color:#fff}
.res-w{color:#1a7f37;font-weight:800}.res-l{color:#b42318;font-weight:800}
.wl{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;font-size:11px;font-weight:800;color:#fff}
.wl.w{background:#1a7f37}.wl.l{background:#b42318}
.fee{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.fee .status{display:flex;align-items:center;gap:10px;font-weight:800;color:#1a7f37;font-size:15px}
.fee .status i{width:10px;height:10px;border-radius:50%;background:#1a7f37;box-shadow:0 0 0 4px #e3f5e8}
.fee .big{font-size:36px;font-weight:800;margin:10px 0 2px;letter-spacing:-.02em}
.fee .row2{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.mp{background:#009ee3;box-shadow:0 8px 20px rgba(0,158,227,.3)}
.mp:hover{background:#0087c2}

/* ---------- Ranking ---------- */
.podium{display:grid;grid-template-columns:1fr 1.12fr 1fr;gap:16px;align-items:end;max-width:820px;margin:0 auto 36px}
.pod{background:#fff;border-radius:12px;box-shadow:0 4px 22px rgba(15,20,30,.08);text-align:center;padding:22px 16px 0;overflow:hidden;position:relative}
.pod .av{margin:0 auto 10px;box-shadow:0 0 0 4px #fff,0 0 0 6px var(--line)}
.pod.p1 .av{box-shadow:0 0 0 4px #fff,0 0 0 7px var(--orange)}
.pod .crown{font-size:24px;display:block;margin-bottom:4px}
.pod b{display:block;font-size:15px}
.pod small{font-size:12px;color:var(--muted)}
.pod .pts{font-size:26px;font-weight:800;color:var(--orange-d);margin:8px 0 14px}
.pod .base{background:var(--ink);color:#fff;font-weight:800;font-size:28px;padding:10px 0}
.pod.p1 .base{background:var(--orange);padding:22px 0}
.pod.p2 .base{padding:14px 0}
.rk-tools{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.rk-tools input{max-width:280px;border-radius:999px;padding:10px 18px}
table.rank{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 14px rgba(15,20,30,.06);min-width:720px}
.rank th{background:var(--bg2);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:12px 14px;text-align:center}
.rank td{padding:12px 14px;border-bottom:1px solid var(--line);font-size:13.5px;text-align:center}
.rank th:nth-child(3),.rank td:nth-child(3){text-align:left}
.rank .pos{font-weight:800;font-size:15px;width:44px}
.rank .mv{font-size:11.5px;font-weight:800;width:44px}
.mv.up{color:#1a7f37}.mv.dn{color:#b42318}.mv.eq{color:#a5a8ae}
.rank .pl{display:flex;align-items:center;gap:12px}
.rank .pl b{display:block;font-size:14px}
.rank .pl small{font-size:11.5px;color:var(--muted)}
.rank .pts{font-weight:800;font-size:16px}
.rank tr.me td{background:#fff7f0}
.rank tr.me .pl b::after{content:"Vos";margin-left:8px;font-size:10px;background:var(--orange);color:#fff;padding:2px 8px;border-radius:999px;vertical-align:2px}
.rank tr.top td:first-child{color:var(--orange-d)}
.pct{display:flex;align-items:center;gap:8px;justify-content:center}
.pct .bar{width:70px;margin:0}
.streak{display:inline-flex;gap:3px}
.streak i{width:9px;height:9px;border-radius:50%}
.streak i.w{background:#1a7f37}.streak i.l{background:#e0a4a0}
.rules{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.rule{padding:20px;text-align:center}
.rule b{display:block;font-size:30px;font-weight:800;color:var(--orange-d)}
.rule.neg b{color:#b42318}
.rule span{font-size:13px;font-weight:700}
.rule p{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.4}
.match{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.match:last-child{border-bottom:0}
.match .t{font-weight:700}
.match .t.win::before{content:"🏆 ";font-size:12px}
.match .t:last-child{text-align:right}
.match .sc{font-weight:800;background:var(--bg2);padding:6px 12px;border-radius:6px;font-size:12.5px;white-space:nowrap}

/* ---------- Tablón ---------- */
.board{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;align-items:start}
.bfilters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}
.bfilters select{width:auto;border-radius:999px;padding:9px 36px 9px 16px;font-weight:600;color:var(--ink);border:1.4px solid #d5d6da}
.posts{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.post{background:#fff;border-radius:12px;box-shadow:0 2px 14px rgba(15,20,30,.07);padding:20px;display:flex;flex-direction:column;gap:14px;transition:.25s;border:1.5px solid transparent}
.post:hover{box-shadow:0 10px 26px rgba(15,20,30,.11)}
.post.mine{border-color:var(--orange)}
.post .top{display:flex;gap:12px;align-items:center}
.post .top b{display:block;font-size:14.5px}
.post .top small{font-size:12px;color:var(--muted)}
.post .top .tag-s{margin-left:auto;flex:none}
.post .when{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;font-weight:700}
.post .when span{display:flex;align-items:center;gap:6px}
.post .when svg{color:var(--orange)}
.post p{font-size:13.5px;color:var(--text);line-height:1.5}
.post .foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);flex-wrap:wrap}
.spots{display:flex;gap:5px;align-items:center;margin-right:auto;font-size:12px;color:var(--muted);font-weight:600}
.spots i{width:22px;height:22px;border-radius:50%;background:var(--ink);display:inline-block}
.spots i.free{background:#fff;border:2px dashed #c7c9ce}
.spots i.you{background:var(--orange)}
.spots em{font-style:normal;margin-left:6px}
.post .btn{padding:9px 10px 9px 18px;font-size:13px;gap:10px}
.post .btn .ar{width:24px;height:24px}
.joined{background:#e3f5e8!important;color:#1a7f37!important;box-shadow:none!important;pointer-events:none}
.side .panel{margin-bottom:18px}
.side h3{font-size:16px;font-weight:800;margin-bottom:14px}
.how{list-style:none;counter-reset:s}
.how li{counter-increment:s;display:flex;gap:12px;font-size:13px;color:var(--text);line-height:1.45;margin-bottom:14px}
.how li::before{content:counter(s);width:26px;height:26px;border-radius:50%;background:var(--orange-soft);color:var(--orange-d);font-weight:800;display:grid;place-items:center;flex:none}
.how li b{color:var(--ink)}
.empty-b{grid-column:1/-1;text-align:center;padding:50px 20px;color:var(--muted);background:#fff;border-radius:12px}

@media (max-width:1024px){
  .kgrid{grid-template-columns:1fr 1fr}
  .dash,.fee{grid-template-columns:1fr}
  .board{grid-template-columns:1fr}
  .rules{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .nav-r{gap:8px}
  .acc-btn,.cart-btn{width:42px;height:42px}
  .posts{grid-template-columns:1fr}
  .podium{gap:8px}
  .pod{padding:16px 8px 0}
  .pod .pts{font-size:20px}
  .bk{grid-template-columns:56px 1fr}
  .bk .acts{grid-column:1/3;justify-content:flex-start}
  .prof{padding:22px}
  .prof .out{margin-left:0}
}
@media (max-width:480px){
  .kgrid{grid-template-columns:1fr 1fr;gap:10px}
  .kpi{padding:16px}
  .kpi b{font-size:24px}
  .pod b{font-size:12.5px}
  .pod small{display:none}
}
@media (max-width:1180px) and (min-width:861px){
  .wrap.nav{padding:0 24px}
  .menu{gap:16px;font-size:12.5px}
  .nav-r{gap:8px}
  .nav-r .btn-o{padding:11px 16px;font-size:13px}
  .nav-r .btn-o .ar{display:none}
  .acc-btn,.cart-btn{width:42px;height:42px}
  .logo b{font-size:21px}
}
@media (max-width:1000px) and (min-width:861px){
  .menu{display:none}
  .menu.open{display:flex;flex-direction:column;position:absolute;top:84px;right:24px;width:280px;background:#fff;padding:18px 20px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.15);gap:14px;font-size:14px}
  .menu.open .dd>button{display:none}
  .menu.open .dd-m{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0;min-width:0}
  .menu.open .dd-m a{padding:0}
  .menu.open .dd-m small{display:none}
  .menu.open .dd-m b{font-weight:600}
  .menu.open .dd-m a+a{margin-top:14px}
  .burger{display:block}
}
.menu a,.dd>button,.logo b,.logo small{white-space:nowrap}
.rank .mv{white-space:nowrap}
/* Legales */
.legal{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start}
.legal-nav{position:sticky;top:104px;display:flex;flex-direction:column;gap:4px;background:var(--bg2);border-radius:10px;padding:10px}
.legal-nav a{padding:10px 14px;border-radius:8px;font-size:13.5px;font-weight:700}
.legal-nav a:hover{background:#fff;color:var(--orange-d)}
.legal-body article{padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.legal-body article:last-child{border-bottom:0}
.legal-body h2{font-size:26px;font-weight:800;margin-bottom:14px}
.legal-body h3{font-size:16px;font-weight:800;margin:22px 0 8px}
.legal-body p,.legal-body li{font-size:14.5px;color:var(--text);line-height:1.65;max-width:720px}
.legal-body p+p{margin-top:10px}
.legal-body ul{padding-left:20px}
@media (max-width:860px){.legal{grid-template-columns:1fr;gap:20px}.legal-nav{position:static;flex-direction:row;overflow-x:auto}.legal-nav a{white-space:nowrap}}
/* anclas bajo el header fijo */
section[id],[id].section{scroll-margin-top:90px}
.quote .av{flex:none}
.slot.past{background:#f6f6f7;border-color:#efeff1;color:#c3c5ca}
@media (max-width:600px){
  table.rank{min-width:0}
  .rank th:nth-child(2),.rank td:nth-child(2),.rank th:nth-child(5),.rank td:nth-child(5),.rank th:nth-child(6),.rank td:nth-child(6),.rank th:nth-child(7),.rank td:nth-child(7){display:none}
  .rank th,.rank td{padding:10px 8px}
  .rank .pl{gap:8px}
  .rank .pl .av{width:30px!important;height:30px!important;font-size:11px!important}
}
@media (max-width:860px){
  .hero-img{opacity:1}
  .hero-img::before{display:block;background:linear-gradient(180deg,rgba(244,246,248,.92) 0%,rgba(244,246,248,.82) 60%,rgba(244,246,248,.55) 100%)}
}
.slots thead th:first-child{position:sticky;left:0;z-index:2;background:var(--bg2);border-right:1px solid var(--line)}
/* Barra inferior del pie */
.foot-bar{border-top:1px solid rgba(255,255,255,.1);position:relative;z-index:1}
.foot-bar .wrap{display:flex!important;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding-top:18px!important;padding-bottom:18px!important;font-size:12.5px;color:#9aa0a8}
.foot-bar .credit{margin-left:auto}
.foot-bar a{color:#fff;font-weight:700;border-bottom:1px solid var(--orange);transition:.2s}
.foot-bar a:hover{color:var(--orange)}
@media (max-width:600px){.foot-bar .wrap{flex-direction:column;align-items:flex-start;padding-bottom:84px!important}.foot-bar .credit{margin-left:0}}
/* Hero: foto un poco menos luminosa */
.hero-img{background:linear-gradient(rgba(12,16,22,.16),rgba(12,16,22,.16)),url(../img/hero.webp) center/cover no-repeat}

/* =========================================================
   Menú flotante de ancho completo
   ========================================================= */
header,header.solid,header.fixed{position:fixed;top:0;left:0;right:0;z-index:60;animation:none}
header .wrap.nav{max-width:none;padding:0 clamp(16px,3vw,48px)}
header.solid,header.fixed{background:rgba(255,255,255,.9);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);box-shadow:0 1px 0 rgba(15,20,30,.06),0 8px 24px rgba(15,20,30,.06)}
header{transition:background .3s,box-shadow .3s}
header .nav{transition:height .3s}
header.solid .nav,header.fixed .nav{height:78px}
header.solid + main{padding-top:78px}
.sum{top:98px}
.legal-nav{top:98px}
section[id],[id].section,.legal-body article{scroll-margin-top:96px}
@media (max-width:1180px) and (min-width:861px){header .wrap.nav{padding:0 24px}}
@media (max-width:860px){
  header.solid .nav,header.fixed .nav{height:68px}
  header.solid + main{padding-top:68px}
  .menu.open{top:72px}
}
header.solid .logo svg,header.fixed .logo svg{width:52px;height:28px;margin-bottom:1px}header.solid .logo b,header.fixed .logo b{font-size:22px}header.solid .logo small,header.fixed .logo small{font-size:8.5px}
.menu.open .dd-m{display:flex;flex-direction:column;gap:14px}.menu.open .dd-m a+a{margin-top:0}
/* Hero: fundido blanco más corto */
@media (min-width:861px){
  .hero-img{width:60%}
  .hero-img::before{background:linear-gradient(90deg,#f4f6f8 0%,rgba(244,246,248,.75) 6%,rgba(244,246,248,.25) 14%,rgba(244,246,248,0) 22%)}
}
header:not(.solid):not(.fixed){background:linear-gradient(180deg,rgba(244,246,248,.8) 0%,rgba(244,246,248,.45) 60%,rgba(244,246,248,0) 100%)}
/* Fotos de profesores (retratos) */
.pro img{object-fit:cover;object-position:center 14%}
.coach img{object-position:center 18%}
/* Fotos de servicios */
.card img.srv2{object-position:center 28%}
.card img.srv3{object-position:center 40%}
.card img.srv4{object-position:center 35%}
.card img.srv3{object-position:center 12%}
.card img.srv4{object-position:center 20%}
/* Secciones más anchas */
.wrap{max-width:1400px}
@media (min-width:1300px){.wrap{padding-left:56px;padding-right:56px}}
.podium{max-width:900px}
.grid4{gap:20px}
/* Nuestra historia: fotos reales del club */
.gal img.hist1{object-position:30% 50%}
.gal img.hist2{object-position:center 62%}
.gal img.hist3{object-position:center 60%}

/* =========================================================
   MARCA: amarillo El Tunel + negro
   (el amarillo va de fondo con texto negro; para texto sobre
   blanco se usa el dorado oscuro --orange-d, que sí contrasta)
   ========================================================= */
:root{--orange:#F9A30A;--orange-d:#905400;--orange-soft:#FEEED1;--yellow-hover:#E89005}

/* Texto negro sobre fondos amarillos */
.btn-o,.circ,.cl .sq,.cart-btn .n,.step b,.day.on,.day.on small,.slot.sel,.ctype .sq,.lv:last-child .dot,
.plan .badge,.add,.timeline li>b,.acc-in,.tab .cnt,.pod.p1 .base,.tag,.prof .tag-s.o,.spots i.you,
.rank tr.me .pl b::after,.lb-nav:hover,.soc a:hover,.switch.on i{color:var(--ink)}
.btn-o{box-shadow:0 8px 20px rgba(249,163,10,.35)}
.btn-o:hover,.add:hover{background:var(--yellow-hover);color:var(--ink)}
.btn-o .ar{border-color:rgba(17,19,23,.75)}
.soc a:hover{border-color:var(--orange)}
.band .btn-o,.comm-box .btn-o,.feat-t .btn-o{box-shadow:0 8px 24px rgba(249,163,10,.25)}

/* Titular del hero: negro con resaltado amarillo, como el cartel */
.hero h1 span{color:var(--ink);background:none;position:relative;z-index:0;white-space:nowrap}
.hero h1 span::after{content:'';position:absolute;left:-2%;right:-2%;bottom:-.04em;height:.2em;z-index:-1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 20' preserveAspectRatio='none'%3E%3Cpath d='M3 13 C 60 5, 140 4, 297 9 L 296 15 C 180 11, 90 13, 5 18 Z' fill='%23F9A30A'/%3E%3C/svg%3E") center/100% 100% no-repeat}

/* Acentos de texto/íconos sobre blanco: dorado oscuro legible */
.menu a:hover,.dd>button:hover{color:var(--orange-d)}
.stat .ic,.ibox .sq,.lv .dot,.plan li::before,.faq summary::after,.post .when svg,.feat:first-child svg{color:var(--orange-d);stroke:currentColor}
.feat:first-child svg{stroke:var(--orange-d)}
.lv .dot{border-color:var(--orange)}
.stars{color:#F7A41F}
.menu a.on::after,.dd.on>button::after{height:3px}
.pro li::before,.eyebrow::before{background:var(--orange);box-shadow:0 0 0 1px rgba(144,84,0,.25)}

/* Barras de progreso: negro sobre gris (el amarillo no contrasta con el fondo claro) */
.bar i{background:var(--ink)}
.chart g:hover .bar{opacity:1!important;fill:var(--orange)}

/* Acentos sobre fondo oscuro siguen en amarillo */
.phero h1 span,.count b,.kpis b,footer ul a:hover,.foot-bar a:hover,.crumbs a:hover{color:var(--orange)}
:focus-visible{outline-color:rgba(144,84,0,.7)}
.comm-img{background:url(../img/com.webp) center 42%/cover no-repeat}
/* Testimonios: puntos y fotos */
.q-dots{display:flex;gap:8px;margin-top:18px;padding-left:66px}
.q-dots button{width:9px;height:9px;border-radius:999px;border:0;background:#cfd1d6;cursor:pointer;padding:0;transition:.25s}
.q-dots button.on{width:26px;background:var(--ink)}
.quote img{background:#f4f6f8;object-position:center top}
@media (max-width:860px){.q-dots{justify-content:center;padding-left:0}}
/* Testimonios: puntos y fotos */
.q-dots{display:flex;gap:8px;margin-top:18px;padding-left:66px}
.q-dots button{width:9px;height:9px;border-radius:999px;border:0;background:#cfd1d6;cursor:pointer;padding:0;transition:.25s}
.q-dots button.on{width:26px;background:var(--ink)}
.quote img{background:#f4f6f8;object-position:center top}
@media (max-width:860px){.q-dots{justify-content:center;padding-left:0}}
/* Tienda: productos con foto */
.prod .art img{width:84%;height:84%;object-fit:contain;mix-blend-mode:multiply;transition:.3s}
.prod:hover .art img{transform:scale(1.05)}
.ci-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}

/* =========================================================
   Detalle de producto
   ========================================================= */
.prod .art{position:relative;overflow:hidden}
.prod .peek{position:absolute;left:50%;bottom:14px;transform:translate(-50%,8px);background:var(--ink);color:#fff;font-size:12px;font-weight:700;padding:7px 14px;border-radius:999px;opacity:0;transition:.25s;white-space:nowrap}
.prod:hover .peek{opacity:1;transform:translate(-50%,0)}
.prod h4 a:hover{color:var(--orange-d)}
a.prod{color:inherit}
a.add{text-decoration:none}
.ci-art{display:grid}
.ci-row a.nm{display:block}
.ci-row a.nm:hover{color:var(--orange-d)}
.pd-wrap{padding-top:36px}
.pd-crumbs{color:var(--muted);margin-bottom:22px;flex-wrap:wrap}
.pd-crumbs a:hover{color:var(--orange-d)!important}
.pd{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:start}
.pd-media{position:sticky;top:100px}
.pd-img{position:relative;aspect-ratio:1/1;border-radius:14px;background:radial-gradient(circle at 50% 40%,#fff 0%,#f1f2f0 72%);overflow:hidden;display:grid;place-items:center;cursor:zoom-in;box-shadow:0 4px 22px rgba(15,20,30,.06)}
.pd-img img{width:82%;height:82%;object-fit:contain;mix-blend-mode:multiply;transition:transform .15s ease-out}
.pd-img .tag-s{position:absolute;top:18px;left:18px;z-index:1;font-size:12px;padding:6px 14px}
.pd-hint{font-size:12px;color:var(--muted);text-align:center;margin-top:10px}
.pd-brand{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.pd-info h1{font-size:clamp(28px,3vw,40px);font-weight:800;line-height:1.1;letter-spacing:-.02em;margin:8px 0 16px}
.pd-price{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.pd-price>span:first-child{font-size:34px;font-weight:800;letter-spacing:-.02em}
.pd-price s{font-size:17px;color:var(--muted);font-weight:600}
.pd-cuotas{font-size:13.5px;color:var(--text);margin:8px 0 20px}
.pd-desc{font-size:15px;color:var(--text);line-height:1.6;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pd-opt{margin-top:20px}
.pd-lbl{font-size:13.5px;color:var(--text);margin-bottom:10px}
.pd-lbl b{color:var(--ink)}
.pd-opts{display:flex;gap:8px;flex-wrap:wrap}
.pd-o{font:inherit;font-size:13.5px;font-weight:700;min-width:52px;padding:10px 14px;border-radius:8px;border:1.4px solid #d5d6da;background:#fff;cursor:pointer;color:var(--ink);transition:.15s}
.pd-o:hover{border-color:var(--ink)}
.pd-o.on{background:var(--ink);border-color:var(--ink);color:#fff}
.pd-o:disabled{color:#b8bbc1;background:repeating-linear-gradient(135deg,#fff 0 6px,#f3f4f6 6px 12px);cursor:not-allowed;text-decoration:line-through}
.pd-buy{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.pd-qty{display:flex;align-items:center;border:1.4px solid #d5d6da;border-radius:999px;padding:4px}
.pd-qty button{width:40px;height:40px;border-radius:50%;border:0;background:none;font-size:20px;cursor:pointer;color:var(--ink)}
.pd-qty button:hover{background:var(--bg2)}
.pd-qty span{min-width:30px;text-align:center;font-weight:800;font-size:16px}
.pd-buy .btn-o{flex:1;justify-content:center;padding:14px 16px 14px 26px;font-size:15px;min-width:220px}
.pd-wa{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:12px;padding:13px;border-radius:999px;border:1.4px solid #25D366;color:#128c4a;font-weight:700;font-size:14px;transition:.2s}
.pd-wa:hover{background:#25D366;color:#fff}
.pd-wa svg{font-size:18px}
.pd-stock{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;color:#1a7f37;margin-top:18px}
.pd-stock i{width:9px;height:9px;border-radius:50%;background:#1a7f37;box-shadow:0 0 0 4px #e3f5e8}
.pd-stock.low{color:#b54708}
.pd-stock.low i{background:#f79009;box-shadow:0 0 0 4px #fef0c7}
.pd-perks{list-style:none;margin-top:22px;background:var(--bg2);border-radius:12px;padding:6px 18px}
.pd-perks li{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.pd-perks li:last-child{border-bottom:0}
.pd-perks svg{font-size:22px;color:var(--orange-d);flex:none}
.pd-perks b{display:block;font-size:13.5px}
.pd-perks span{font-size:12.5px;color:var(--muted)}
.pd-tabs{margin-top:48px}
.pd-specs{max-width:720px;background:#fff;border-radius:10px;box-shadow:0 2px 14px rgba(15,20,30,.06)}
.pd-specs td:first-child{color:var(--muted);font-weight:600;width:40%}
.pd-specs td:last-child{text-align:left}
@media (max-width:960px){
  .pd{grid-template-columns:1fr;gap:26px}
  .pd-media{position:static}
  .pd-img{max-width:520px;margin:0 auto;width:100%}
  .pd-hint{display:none}
}
@media (max-width:480px){.pd-buy .btn-o{min-width:0}}
.stat .ic{background:var(--orange);color:var(--ink)}.stat .ic svg{stroke:var(--ink)}

/* =========================================================
   Torneos (competencias.html)
   ========================================================= */
.tstats{background:var(--ink);color:#fff}
.tstats .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-top:22px;padding-bottom:22px}
.tstats .wrap>div{text-align:center;border-right:1px solid rgba(255,255,255,.12)}
.tstats .wrap>div:last-child{border-right:0}
.tstats b{display:block;font-size:clamp(24px,2.6vw,32px);font-weight:800;color:var(--orange)}
.tstats span{font-size:12.5px;color:#c3c6cc}
.ttabs{margin-top:0}
.live-dot{width:8px;height:8px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 0 rgba(229,72,77,.6);animation:pulse 1.6s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
.tag-s.live{background:#fde8e8;color:#c42b30}
.live-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}
/* Cuadro */
.bracket-wrap{overflow-x:auto;padding-bottom:8px}
.bracket{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr)) minmax(170px,.7fr);gap:34px;min-width:900px}
.bcol{display:flex;flex-direction:column}
.bh{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px;text-align:center}
.bms{flex:1;display:flex;flex-direction:column;justify-content:space-around;gap:14px}
.bm{border:1.4px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;position:relative}
.bcol:not(.champ):not(.c2) .bm::after{content:"";position:absolute;right:-36px;top:50%;width:34px;height:2px;background:#dcdde0}
.c2 .bm::after{content:"";position:absolute;right:-36px;top:50%;width:34px;height:2px;background:#dcdde0}
.bm.live{border-color:#e5484d;box-shadow:0 0 0 3px rgba(229,72,77,.1)}
.bm.pend{border-style:dashed}
.bt{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:600}
.bt+.bt{border-top:1px solid var(--line)}
.bt.win{background:var(--ink);color:#fff}
.bt.win svg{color:var(--orange);font-size:15px}
.bt.lose{color:#9aa0a8}
.bt.tbd{color:#b8bbc1;font-style:italic;font-weight:500}
.bf{font-size:11.5px;color:var(--muted);padding:7px 12px;background:var(--bg2);display:flex;justify-content:space-between;gap:8px}
.bf b{color:var(--ink)}
.livetxt{color:#e5484d;font-weight:800;animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.45}}
.cup{border-radius:12px;background:linear-gradient(150deg,#1c222b,#0d1015);color:#fff;text-align:center;padding:24px 14px}
.cup svg{font-size:40px;color:var(--orange);stroke-width:1.4}
.cup span{display:block;font-size:12.5px;color:#c3c6cc;margin-top:8px}
/* Partidos de hoy */
.tm{display:grid;grid-template-columns:70px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.tm:last-child{border-bottom:0}
.tm-when b{display:block;font-size:15px}
.tm-when small,.tm-teams small{font-size:11.5px;color:var(--muted)}
.tm-teams div{font-size:13.5px;font-weight:600;line-height:1.5}
.tm-score{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px}
.sets{display:flex;gap:4px}
.sets span{width:24px;height:22px;border-radius:5px;background:var(--bg2);display:grid;place-items:center;font-weight:800;font-size:12.5px}
.tm.live .sets span:last-child{background:var(--orange)}
.zone th{text-align:center!important}
.zone td{text-align:center!important;font-weight:600!important;font-size:13px}
.zone td:first-child,.zone th:first-child{text-align:left!important}
.zone tr.q td:first-child{box-shadow:inset 3px 0 0 var(--orange)}
.zone td:last-child{font-weight:800!important}
/* Próximos */
.nx{display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:start}
.nx-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.nx h4{font-size:17px;font-weight:800}
.nx .sm{font-size:12.5px;color:var(--muted);margin-top:4px}
.nx-cupo{margin:14px 0}
.nx-cupo span{font-size:12px;color:var(--muted);display:block;margin-top:6px}
.nx-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.nx-foot .btn{padding:9px 10px 9px 18px;font-size:13px}
/* Jugados */
.pt-card{background:#fff;border-radius:12px;box-shadow:0 2px 14px rgba(15,20,30,.06);margin-bottom:14px;overflow:hidden}
.pt-card summary{list-style:none;display:grid;grid-template-columns:110px 1fr auto 30px;gap:18px;align-items:center;padding:14px 20px 14px 14px;cursor:pointer}
.pt-card summary::-webkit-details-marker{display:none}
.pt-img{height:72px;border-radius:8px;background:center/cover}
.pt-h small{font-size:12px;color:var(--muted)}
.pt-h h4{font-size:17px;font-weight:800;margin:2px 0}
.pt-h .sm{font-size:12.5px;color:var(--muted)}
.pt-champ{text-align:right}
.pt-champ small{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.pt-champ b{font-size:14px}
.pt-tog::after{content:"+";font-size:24px;color:var(--orange-d);font-weight:600;display:block;transition:.2s;text-align:center}
.pt-card[open] .pt-tog::after{transform:rotate(45deg)}
/* Campeones */
.ttl-row{display:grid;grid-template-columns:28px 42px 1fr auto;gap:14px;align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 14px rgba(15,20,30,.06);padding:12px 16px;margin-bottom:10px}
.ttl-row .pos{font-weight:800;font-size:16px;text-align:center}
.ttl-row:first-child .pos{color:var(--orange-d)}
.tr-b b{display:block;font-size:14px}
.tr-b small{font-size:11.5px;color:var(--muted)}
.tr-b .bar{margin-top:6px}
.tr-n{font-size:24px;font-weight:800;text-align:center;line-height:1}
.tr-n small{display:block;font-size:10.5px;font-weight:600;color:var(--muted)}
.recs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.recs>div{background:var(--bg2);border-radius:10px;padding:14px}
.recs b{display:block;font-size:24px;font-weight:800}
.recs span{font-size:12.5px;font-weight:600;line-height:1.3;display:block;margin-top:2px}
.recs small{font-weight:500;color:var(--muted)}
@media (max-width:860px){
  .tstats .wrap{grid-template-columns:1fr 1fr;row-gap:16px}
  .tstats .wrap>div:nth-child(2){border-right:0}
  .pt-card summary{grid-template-columns:72px 1fr 24px;gap:12px}
  .pt-img{height:56px}
  .pt-champ{grid-column:2/3;text-align:left}
  .pt-tog{grid-row:1;grid-column:3}
  .nx{grid-template-columns:56px 1fr}
}
.bm{overflow:visible}
.bm>.bt:first-child{border-radius:9px 9px 0 0}
.bm>.bf{border-radius:0 0 9px 9px}
.bt.win{position:relative}
.swipe-hint{display:none;font-size:12px;font-weight:700;color:var(--orange-d);margin-bottom:10px}
@media (max-width:860px){
  .swipe-hint{display:block}
  .bracket{grid-template-columns:repeat(3,200px) 150px;gap:30px;min-width:0}
  .ttabs{scrollbar-width:none}
}
#p-en-curso .grid2>*{min-width:0}
@media (max-width:480px){
  .tm{grid-template-columns:52px minmax(0,1fr) auto;gap:10px}
  .zone th,.zone td{padding:10px 6px!important}
  .ttl-row{grid-template-columns:22px 36px minmax(0,1fr) auto;gap:10px;padding:10px 12px}
}
/* Galería El club: fotos reales */
.gallery{grid-auto-rows:200px}
.gallery .g-tall{grid-row:span 2}
.gallery .g-wide{grid-column:span 2}
@media (max-width:1024px){.gallery{grid-template-columns:repeat(4,1fr)}}
@media (max-width:860px){.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:150px}}
/* Cuadro: ganador en verde, perdedor apagado */
.bt.win{background:#1f8f4e;color:#fff;font-weight:800}
.bt.lose{color:#a9adb5;background:#fafafa}
.bt.lose span{text-decoration:line-through;text-decoration-color:#cfd1d6}
.wtag{display:inline-flex;align-items:center;gap:4px;font-style:normal;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:rgba(255,255,255,.2);padding:3px 8px 3px 6px;border-radius:999px;white-space:nowrap}
.wtag svg{font-size:13px;stroke:#fff;stroke-width:3}
.bm:has(.bt.win){border-color:#bfe5cd}
.nw.nw-inv{background-position:center 32%}
.nw.nw-inv{background-position:center 47%}
/* Cuadro: conectores dibujados con SVG */
.bracket{position:relative}
.bcol .bm::after,.c2 .bm::after{display:none!important}
.blines{position:absolute;left:0;top:0;pointer-events:none;overflow:visible;z-index:0}
.blines .bl{fill:none;stroke:#d3d5da;stroke-width:2;stroke-linejoin:round}
.blines .bl.won{stroke:#1f8f4e}
.bcol{position:relative;z-index:1}
.phero.ph-club{background-position:center 55%}
/* Cabecera Profesores: foto a la derecha, fundida con el fondo oscuro */
.phero.ph-prof{background:linear-gradient(90deg,#0d1015 0%,#0d1015 36%,rgba(13,16,21,0) 56%),url(../img/prof-hero.webp) right center/auto 100% no-repeat #0d1015}
.phero.ph-prof::before{background:linear-gradient(90deg,rgba(10,12,16,.55) 0%,rgba(10,12,16,.15) 50%,rgba(10,12,16,0) 100%)}
@media (max-width:860px){
  .phero.ph-prof{background:url(../img/prof-hero.webp) 60% center/cover no-repeat}
  .phero.ph-prof::before{background:linear-gradient(90deg,rgba(10,12,16,.9),rgba(10,12,16,.6))}
}
.phero.ph-prof{background:url(../img/prof-hero.webp) right center/auto 100% no-repeat #0d1015}
@media (max-width:860px){.phero.ph-prof{background:url(../img/prof-hero.webp) 70% center/cover no-repeat #0d1015}}
.levels .lv,.levels .reveal{opacity:1!important;transform:none!important;transition:none!important}
/* Fotos reales: encuadres */
.hero-img{background:linear-gradient(rgba(12,16,22,.08),rgba(12,16,22,.08)),url(../img/hero.webp) center 38%/cover no-repeat}
.testi-bg{background-position:center 40%}
.phero{background-position:center 45%}
.testi-bg{background:url(../img/real2.webp) center 35%/cover no-repeat}
.hero-img{background-position:center 30%}
/* Hero: el blanco de la izquierda al 50% (la foto se ve detrás) */
@media (min-width:861px){
  .hero-img{width:100%}
  .hero-img::before{background:linear-gradient(90deg,rgba(244,246,248,.5) 0%,rgba(244,246,248,.5) 38%,rgba(244,246,248,0) 58%)}
  .hero::after{display:none}
}
@media (min-width:861px){.hero p,.hero .eyebrow{color:#16191e;font-weight:500;text-shadow:0 0 14px rgba(255,255,255,.95),0 0 3px rgba(255,255,255,.9)}}
@media (min-width:861px){.hero-img::before{background:linear-gradient(90deg,rgba(244,246,248,.75) 0%,rgba(244,246,248,.75) 38%,rgba(244,246,248,0) 60%)}}
.feat:first-child svg{stroke:var(--ink)!important;color:var(--ink)}

/* =========================================================
   Ajustes para celulares (revisión de toques y legibilidad)
   ========================================================= */
@media (max-width:860px){
  .burger{width:44px;height:44px;display:grid;place-items:center;font-size:26px;margin-right:-8px}
  .tag-s,.tag,.wtag,.count small{font-size:11px}
  .mini{min-height:40px;padding:9px 14px}
  .post .foot{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
  .post .foot .spots{grid-column:1/-1;margin-right:0}
  .post .foot .btn,.post .foot .joined{justify-content:center}
  .post .foot>:last-child{grid-column:2}
  .post .foot>.mini.wa{grid-column:1;justify-self:start}
  .post .foot>.mini.wa+.btn{grid-column:2}
  .legal-nav{flex-wrap:wrap;overflow:visible}
  .wa-float{width:50px;height:50px;font-size:24px;right:14px;bottom:14px}
  .foot-bar a,.pd-crumbs a,.legal-body a{padding:4px 0;display:inline-block}
  /* Tienda: dos productos por fila */
  #grid.grid4,#pd-related.grid4{grid-template-columns:1fr 1fr;gap:12px}
  .prod .bd{padding:12px 12px 14px}
  .prod h4{font-size:13.5px;margin:4px 0 10px}
  .prod h4 a{display:block;padding:2px 0}
  .prod .cat{font-size:10.5px}
  .prod .pr{font-size:15.5px}
  .prod .pr s{font-size:11px}
  .add{width:40px;height:40px}
  .prod .art .tag-s{top:10px;left:10px}
  .prod .peek{display:none}
  .toolbar{gap:12px}
}
@media (max-width:360px){
  #grid.grid4,#pd-related.grid4{gap:10px}
  .prod .pr{font-size:14.5px}
}
@media (max-width:860px){
  .menu.open{max-height:calc(100vh - 90px);overflow-y:auto}
  .toast{top:84px;bottom:auto;transform:translate(-50%,-20px);max-width:calc(100vw - 32px);text-align:center;font-size:13px;border-radius:14px}
  .toast.on{transform:translate(-50%,0)}
  body.cart-open .toast{top:76px;z-index:130}
  .lightbox .lb-cap{bottom:76px}
}
@media (max-width:1000px){
  .menu.open .dd,.menu.open .dd-m{display:contents}
  .menu.open .dd-m a{padding:6px 0;margin:0!important}
  .menu.open a{padding:6px 0}
}
body.cart-open .toast{display:none}

/* Logo oficial */
.logo-img{height:56px;width:auto;display:block}
header.solid .logo-img,header.fixed .logo-img{height:48px}
.logo-img.foot{height:74px}
@media (max-width:860px){.logo-img{height:44px}header.solid .logo-img,header.fixed .logo-img{height:40px}.logo-img.foot{height:62px}}

/* Hero: fachada del club */
.hero-img{width:100%!important;background:url(../img/fachada.webp) 62% center/cover no-repeat!important;opacity:1!important}
@media (min-width:861px){
  .hero-img::before{display:block;background:linear-gradient(90deg,rgba(246,247,249,.92) 0%,rgba(246,247,249,.85) 30%,rgba(246,247,249,.35) 46%,rgba(246,247,249,0) 58%)!important}
}
@media (max-width:860px){
  .hero-img{background-position:58% center!important}
  .hero-img::before{display:block;background:linear-gradient(180deg,rgba(246,247,249,.9),rgba(246,247,249,.78))!important}
}
header:not(.solid):not(.fixed){background:linear-gradient(180deg,rgba(246,247,249,.9) 0%,rgba(246,247,249,.55) 65%,rgba(246,247,249,0) 100%)}
@media (min-width:861px){
  .hero{background:#f6f7f9}
  .hero-img{width:64%!important;left:auto!important;right:0;background:url(../img/fachada.webp) 62% 40%/cover no-repeat!important}
  .hero-img::before{background:linear-gradient(90deg,#f6f7f9 0%,rgba(246,247,249,.75) 8%,rgba(246,247,249,0) 22%)!important}
}
@media (min-width:1600px){.hero-img{background-size:cover!important;background-position:60% 40%!important}}
/* Marca: naranja del logo oficial */
:root{--orange:#F9A30A;--orange-d:#905400;--orange-soft:#FEEED1;--yellow-hover:#E89005}

/* =========================================================
   Íconos: todos como en el home → círculo/cuadro naranja + ícono negro
   ========================================================= */
.stat .ic,.ibox .sq,.cl .sq,.ctype .sq,.circ,.ci .circ,.step b,.acc-in,.pd-perks li>svg{background:var(--orange)!important;color:var(--ink)!important}
.stat .ic svg,.ibox .sq svg,.cl .sq svg,.ctype .sq svg,.circ svg,.step b svg{stroke:var(--ink)!important;color:var(--ink)!important}
/* Beneficios del producto: ícono dentro de un círculo naranja */
.pd-perks li>svg{box-sizing:content-box;width:20px;height:20px;padding:10px;border-radius:50%;stroke:var(--ink)!important;font-size:inherit}
/* Pasos "Cómo funciona" del tablón y fechas de la línea de tiempo */
.how li::before{background:var(--orange);color:var(--ink)}
.timeline li>b{background:var(--orange);color:var(--ink)}
/* Iconos sueltos de metadatos (horario de profes, fecha/hora del tablón) */
.coach .meta svg,.post .when svg{color:var(--ink);background:var(--orange);border-radius:50%;padding:4px;box-sizing:content-box;width:12px;height:12px;stroke-width:2.2}
.feat svg{box-sizing:content-box;width:30px!important;height:30px!important;padding:12px;border-radius:50%;background:var(--orange);stroke:var(--ink)!important;color:var(--ink)!important;stroke-width:1.6!important}
@media (max-width:860px){.feat svg{width:26px!important;height:26px!important;padding:10px}}
/* Barras de progreso: naranja de marca; cupo completo en verde */
.bar{background:#eceef1}
.bar i{background:var(--orange)!important}
.ev .bar i[style*="width:100%"],.nx-cupo .bar i[style*="width:100%"]{background:#1f8f4e!important}
/* Franja de íconos del home: vuelven a ser íconos simples en negro, sin círculo */
.feat svg{width:38px!important;height:38px!important;padding:0;border-radius:0;background:none;stroke:var(--ink)!important;color:var(--ink)!important;stroke-width:1.4!important}
@media (max-width:860px){.feat svg{width:34px!important;height:34px!important;padding:0}}

/* =========================================================
   Agenda de clases por profesor
   ========================================================= */
.mbox.wide{max-width:820px;padding:26px 26px 22px}
.next-free{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--text);margin:-6px 0 16px}
.next-free:empty{display:none}
.next-free i{width:8px;height:8px;border-radius:50%;background:#1f8f4e;box-shadow:0 0 0 3px #e3f5e8;flex:none}
.next-free b{color:var(--ink)}
.next-free span{color:var(--muted)}
.ag-head{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding-right:30px}
.ag-head img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:center 20%;box-shadow:0 0 0 3px var(--orange)}
.ag-head h3{font-size:21px;margin:0}
.ag-head small{font-size:12.5px;color:var(--muted)}
.ag-k{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.ag-coaches{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.ag-c{display:flex;align-items:center;gap:8px;font:inherit;font-size:13px;font-weight:700;padding:5px 14px 5px 5px;border-radius:999px;border:1.4px solid #d5d6da;background:#fff;cursor:pointer;color:var(--ink)}
.ag-c img{width:28px;height:28px;border-radius:50%;object-fit:cover;object-position:center 20%}
.ag-c:hover{border-color:var(--ink)}
.ag-c.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ag-week{display:flex;align-items:center;justify-content:space-between;background:var(--bg2);border-radius:10px;padding:6px;margin-bottom:10px}
.ag-week b{font-size:14px}
.ag-nav{width:38px;height:38px;border-radius:50%;border:0;background:#fff;display:grid;place-items:center;cursor:pointer;font-size:18px;color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.ag-nav:disabled{opacity:.35;cursor:default}
.ag-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:14px}
.ag-d{font:inherit;border:1.4px solid #d5d6da;background:#fff;border-radius:10px;padding:8px 2px;cursor:pointer;text-align:center;color:var(--ink);transition:.15s}
.ag-d small{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;color:var(--muted)}
.ag-d strong{display:block;font-size:19px;font-weight:800;line-height:1.2}
.ag-d em{display:block;font-style:normal;font-size:10.5px;font-weight:600;color:#1f8f4e}
.ag-d:hover{border-color:var(--ink)}
.ag-d.on{background:var(--orange);border-color:var(--orange)}
.ag-d.on small,.ag-d.on em{color:var(--ink)}
.ag-d.off{background:var(--bg2);border-color:transparent;cursor:default;opacity:.6}
.ag-d.off em{color:var(--muted)}
.ag-filters{margin-bottom:12px}
.ag-filters .chip{padding:7px 14px;font-size:12.5px}
.ag-slots{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;padding-right:4px}
.ag-s{display:grid;grid-template-columns:76px 1fr auto;gap:14px;align-items:center;text-align:left;font:inherit;background:#fff;border:1.4px solid var(--line);border-radius:10px;padding:12px 14px;cursor:pointer;color:var(--ink);transition:.15s}
.ag-s:hover{border-color:var(--orange)}
.ag-s.on{border-color:var(--orange);background:#fff8ec;box-shadow:0 0 0 3px rgba(249,163,10,.2)}
.ag-s.dis{cursor:default;background:#fafafa}
.ag-s.dis:hover{border-color:var(--line)}
.ag-s.dis .ag-time,.ag-s.dis .ag-info{opacity:.5}
.ag-time b{display:block;font-size:18px;font-weight:800}
.ag-time small{font-size:11.5px;color:var(--muted)}
.ag-info b{display:block;font-size:14px;margin:3px 0 2px}
.ag-info small{font-size:12px;color:var(--muted)}
.ag-type{display:inline-block;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:var(--orange-soft);color:var(--orange-d)}
.ag-type.t-ind{background:#e9eef7;color:#2a3a55}
.ag-type.t-men{background:#e3f5e8;color:#1a7f37}
.ag-type.t-cli{background:#f3e8ff;color:#6b3fa0}
.ag-cap{display:flex;flex-direction:column;align-items:flex-end;gap:5px;text-align:right}
.ag-dots{display:flex;gap:3px}
.ag-dots i{width:12px;height:12px;border-radius:50%;border:1.6px dashed #c7c9ce}
.ag-dots i.tk{background:var(--ink);border:0}
.ag-dots i.you{background:var(--orange);border:0}
.ag-st{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}
.ag-st.a-ok{color:#1f8f4e}
.ag-st.a-last{color:#c2410c}
.ag-st.a-full{color:#9aa0a8}
.ag-st.a-mine{color:var(--orange-d)}
.ag-empty{text-align:center;color:var(--muted);font-size:14px;padding:30px 10px;background:var(--bg2);border-radius:10px}
.ag-sum{margin-top:14px;border-top:1px solid var(--line);padding-top:14px;background:none!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important}
.ag-hint{font-size:13px;color:var(--muted);text-align:center;margin:0}
.ag-sum-top{display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--bg2);border-radius:10px;padding:12px 14px;margin-bottom:12px}
.ag-sum-top b{display:block;font-size:14px;margin:2px 0}
.ag-sum-top small{font-size:12px;color:var(--muted)}
.ag-sum-top strong{font-size:20px;font-weight:800;white-space:nowrap}
.ag-sum .fg{margin-bottom:10px}
.ag-sum .btn{width:100%;justify-content:center}
.ag-note{font-size:11.5px;color:var(--muted);text-align:center;margin-top:8px}
@media (max-width:600px){
  .modal{padding:0;align-items:flex-end}
  .mbox.wide{max-height:94vh;border-radius:16px 16px 0 0;padding:20px 14px 16px}
  .ag-head img{width:46px;height:46px}
  .ag-days{gap:4px}
  .ag-d{padding:6px 0;border-radius:8px}
  .ag-d strong{font-size:16px}
  .ag-d em{font-size:9.5px}
  .ag-s{grid-template-columns:58px 1fr;gap:10px;padding:10px 12px}
  .ag-cap{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;border-top:1px dashed var(--line);padding-top:8px}
  .ag-time b{font-size:16px}
  .ag-slots{max-height:none;overflow:visible}
  .ag-sum .fg{grid-template-columns:1fr}
}
.ag-past{font-size:12px;color:var(--muted);text-align:center;margin:4px 0 0}
/* Categoría de cada clase */
.ag-filters{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.ag-catsel{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--muted)}
.ag-catsel select{width:auto;min-width:130px;border-radius:999px;padding:8px 34px 8px 14px;font-weight:700;color:var(--ink);border:1.4px solid #d5d6da;font-size:12.5px}
.ag-cat{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:var(--ink);color:#fff}
.ag-cat.free{background:#eceef1;color:#5b5f68}
@media (max-width:600px){.ag-catsel{width:100%;justify-content:space-between}.ag-catsel select{flex:1}}
.visit .ci b a{color:inherit}.visit .ci b a:hover{color:var(--orange-d)}

/* =========================================================
   Sponsors (nuevo diseño)
   ========================================================= */
.spx{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f4f6fa 100%);padding:70px 0 64px;margin-top:20px}
.spx-photo{position:absolute;top:0;right:0;width:46%;height:78%;background:url(../img/spons-foto.webp) 30% center/cover no-repeat;
  -webkit-mask-image:radial-gradient(ellipse 100% 120% at 100% 30%,#000 62%,transparent 63%);mask-image:radial-gradient(ellipse 100% 120% at 100% 30%,#000 62%,transparent 63%)}
.spx-photo::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 100% 120% at 100% 30%,transparent 61%,rgba(249,163,10,.55) 62%,transparent 63.2%)}
.spx-in{position:relative;z-index:1}
.spx-top{display:flex;align-items:center;gap:40px;min-height:300px}
.spx-txt{max-width:560px}
.spx h2{font-size:clamp(34px,4vw,56px);font-weight:800;line-height:1.04;letter-spacing:-.025em;margin:6px 0 16px}
.spx h2 span{color:var(--orange)}
.spx-txt p{font-size:16px;line-height:1.6;color:var(--text)}
.spx-cta{background:#fff;box-shadow:0 8px 24px rgba(15,20,30,.08);padding:10px 10px 10px 26px;font-size:14px}
.spx-cta .ar{width:38px;height:38px}
.spx-car{display:flex;align-items:center;gap:18px;margin-top:30px}
.spx-track{flex:1;display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:10px 4px 16px}
.spx-track::-webkit-scrollbar{display:none}
.spx-logo{flex:0 0 calc((100% - 5*18px)/6);min-width:150px;height:130px;background:#fff;border-radius:12px;box-shadow:0 6px 22px rgba(15,20,30,.07);display:grid;place-items:center;scroll-snap-align:start;transition:.25s}
.spx-logo:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(15,20,30,.12)}
.spx-logo img{max-width:62%;max-height:54px;width:auto;height:auto;object-fit:contain;opacity:.92}
.spx-arr{flex:none;width:58px;height:58px;border-radius:50%;border:0;background:#fff;box-shadow:0 6px 20px rgba(15,20,30,.1);display:grid;place-items:center;font-size:22px;color:var(--ink);cursor:pointer;transition:.2s}
.spx-arr:hover{background:var(--orange)}
.spx-arr:disabled{opacity:.35;cursor:default;background:#fff}
@media (max-width:1024px){
  .spx-photo{width:52%;height:62%;opacity:.95}
  .spx-top{flex-direction:column;align-items:flex-start;gap:22px;min-height:0;max-width:52%}
}
@media (max-width:860px){
  .spx{padding:0 0 44px}
  .spx-photo{position:relative;width:100%;height:220px;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}
  .spx-photo::before{display:none}
  .spx-top{max-width:none;margin-top:-10px}
  .spx-car{gap:10px;margin-top:22px}
  .spx-arr{width:44px;height:44px;font-size:18px}
  .spx-logo{flex-basis:calc((100% - 18px)/2);min-width:0;height:100px}
  .spx-logo img{max-height:40px}
}
.spx-viewport{flex:1;overflow:hidden;padding:10px 4px 16px;margin:-10px -4px -16px}
.spx-track{overflow:visible;scroll-snap-type:none;padding:0;will-change:transform}
.spx-track{display:flex;gap:18px}.spx-track .spx-logo{flex:0 0 calc((min(100vw,1400px) - 2*56px - 2*58px - 2*18px - 5*18px)/6)}@media (max-width:1300px){.spx-track .spx-logo{flex-basis:calc((100vw - 2*40px - 2*58px - 2*18px - 5*18px)/6)}}@media (max-width:1024px){.spx-track .spx-logo{flex-basis:calc((100vw - 2*40px - 2*58px - 2*18px - 3*18px)/4)}}@media (max-width:860px){.spx-track .spx-logo{flex-basis:calc((100vw - 2*16px - 2*44px - 2*10px - 18px)/2)}}
/* Sponsors más compacto */
.spx{padding:40px 0 34px;margin-top:10px}
.spx-photo{height:72%}
.spx-top{min-height:0;gap:32px}
.spx h2{font-size:clamp(28px,2.9vw,42px);margin:4px 0 10px}
.spx-txt p{font-size:15px}
.spx-car{margin-top:24px}
.spx-logo{height:92px}
.spx-logo img{max-height:40px}
.spx-arr{width:48px;height:48px;font-size:19px}
.spx-track .spx-logo{flex-basis:calc((min(100vw,1400px) - 2*56px - 2*48px - 2*18px - 5*18px)/6)}
@media (max-width:1300px){.spx-track .spx-logo{flex-basis:calc((100vw - 2*40px - 2*48px - 2*18px - 5*18px)/6)}}
@media (max-width:1024px){.spx-track .spx-logo{flex-basis:calc((100vw - 2*40px - 2*48px - 2*18px - 3*18px)/4)}}
@media (max-width:860px){
  .spx{padding:0 0 30px}
  .spx-photo{height:150px}
  .spx-arr{width:40px;height:40px;font-size:17px}
  .spx-logo{height:76px}
  .spx-logo img{max-height:32px}
  .spx-track .spx-logo{flex-basis:calc((100vw - 2*16px - 2*40px - 2*10px - 18px)/2)}
}
@media (min-width:861px){.spx-photo{height:76%;background-position:30% 78%}}
@media (max-width:860px){.spx-top{gap:16px}.spx-txt p{font-size:14px}.spx-cta{padding:8px 8px 8px 22px}}
/* Home: fondos intercalados gris / blanco (se ajusta solo al agregar secciones) */
:root{--alt:#f4f5f7}
main > section{margin-top:0;margin-bottom:0}
body:has(.hero) main > section:nth-of-type(even){background:#fff}
body:has(.hero) main > section:nth-of-type(odd):not(.hero){background:var(--alt)}
main > #novedades{padding-top:56px;padding-bottom:56px}main > #contacto{padding-top:56px}
.comm-box{margin:0;border-radius:0}.comm-list{margin:0}
.comm-box{box-shadow:none}
.hero .btn-line{padding-left:30px;padding-right:30px}
/* Galería de zonas */
.zg{min-width:0}
.zg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.zg-nav{display:flex;gap:8px;flex:none}
.zg-arr{width:38px;height:38px;border-radius:50%;border:1px solid #e3e5ea;background:#fff;display:grid;place-items:center;cursor:pointer;transition:.2s;color:var(--ink)}
.zg-arr .i{width:16px;height:16px}
.zg-arr:hover:not(:disabled){background:var(--orange);border-color:var(--orange)}
.zg-arr:disabled{opacity:.35;cursor:default}
.zg-pills{display:flex;gap:6px;margin:14px 0 4px;flex-wrap:wrap}
.zg-pill{border:1px solid #e3e5ea;background:#fff;border-radius:99px;padding:6px 14px;font:600 12.5px/1 inherit;font-family:inherit;color:var(--text);cursor:pointer;transition:.2s}
.zg-pill.on{background:var(--ink);border-color:var(--ink);color:#fff}
.zg-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.zg-track::-webkit-scrollbar{display:none}
.zg-slide{flex:0 0 100%;scroll-snap-align:start;min-width:0}
@media (max-width:600px){.zg-pills{flex-wrap:nowrap;gap:5px}.zg-pill{padding:6px 10px;font-size:12px;flex:1;text-align:center}}
.tabs{overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.tabs::-webkit-scrollbar{display:none}

/* ================= Turnos libres hoy (inicio) ================= */
.hoy{padding:34px 0 36px}
.hoy-in{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:20px 34px;align-items:center}
.hoy-h .eyebrow{gap:8px}
.hoy-h h2{font-size:clamp(24px,2.4vw,32px);font-weight:800;letter-spacing:-.02em;margin:4px 0 6px}
.hoy-h p{font-size:13.5px;color:var(--text);line-height:1.5}
.hoy-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.hs{display:flex;flex-direction:column;gap:2px;background:#fff;border:1.3px solid #e6e7ea;border-radius:10px;padding:12px 14px;transition:.2s;box-shadow:0 2px 10px rgba(15,20,30,.04)}
.hs b{font-size:19px;font-weight:800;letter-spacing:-.01em}
.hs small{font-size:11.5px;color:var(--muted);font-weight:600}
.hs em{font-style:normal;font-size:12px;font-weight:700;color:#1a7f37;margin-top:4px}
.hs:hover{border-color:var(--orange);transform:translateY(-2px);box-shadow:0 8px 20px rgba(249,163,10,.18)}
.hs.more{justify-content:center;background:var(--ink);border-color:var(--ink);color:#fff}
.hs.more small{color:#cfd2d8}
.hoy-cta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px}
.hoy-fix{font-size:13.5px;color:var(--text)}
.hoy-fix b{color:var(--orange-d)}
@media (max-width:860px){.hoy-in{grid-template-columns:1fr}.hoy-slots{grid-template-columns:repeat(3,1fr);gap:8px}.hs{padding:10px}.hs b{font-size:17px}}
@media (max-width:420px){.hoy-slots{grid-template-columns:repeat(2,1fr)}}

/* Aviso de lluvia */
.rainbar{display:flex;gap:14px;align-items:flex-start;background:#e9f1fb;border:1px solid #c4d6ef;border-radius:12px;padding:14px 18px;margin-bottom:20px}
.rb-ic{font-size:24px;line-height:1}
.rainbar b{display:block;font-size:14px;color:#1d3d6b}
.rainbar span{font-size:13px;color:#3d5677;line-height:1.5}
.slot.rain{background:#e9f1fb;border-color:#c4d6ef;color:#3d6aa8;text-decoration:none}
.slot.own{background:#111317;border-color:#111317;color:#fff;text-decoration:none;cursor:default}

/* Instagram */
.igs{padding:56px 0}
.ig-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.ig{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;display:block;background:#ddd}
.ig img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ig span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;background:rgba(17,19,23,.45);color:#fff;font-weight:700;font-size:14px;opacity:0;transition:.25s}
.ig span .i{width:18px;height:18px;fill:#fff;stroke:#fff}
.ig:hover img{transform:scale(1.06)}.ig:hover span{opacity:1}
@media (max-width:860px){.ig-grid{grid-template-columns:repeat(3,1fr);gap:6px}}

/* ================= Reservas: turno fijo ================= */
.seg{display:grid;grid-template-columns:1fr 1fr;background:var(--alt);border-radius:999px;padding:4px;margin:4px 0 16px}
.seg button{border:0;background:transparent;border-radius:999px;padding:9px 6px;font:inherit;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer;transition:.2s}
.seg button.on{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(15,20,30,.1)}
.fixbox{margin:4px 0 14px}
.fixbox label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:6px}
.fixbox select{width:100%}
.fixinfo{margin-top:12px;font-size:12.5px;color:var(--text);line-height:1.5}
.fx-ok{margin-bottom:8px}
.fx-ok b{color:#1a7f37}
.fx-dates{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.fx-dates span{font-size:11.5px;font-weight:700;background:#e3f5e8;color:#1a7f37;border-radius:6px;padding:4px 8px}
.fx-dates span.no{background:#f1f2f4;color:#a5a8ae;text-decoration:line-through}

/* Mi cuenta: turnos fijos */
.fxc{margin-bottom:14px}
.fxc.off{opacity:.6}
.fxc-h{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.fxc-h h4{font-size:16px;font-weight:800}
.fxc-b{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin:16px 0;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fxc-b small{display:block;font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.fxc-b b{display:block;font-size:14px}
.fxc-a{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:640px){.fxc-h{grid-template-columns:auto 1fr}.fxc-h .tag-s{grid-column:2;justify-self:start}.fxc-b{grid-template-columns:1fr}}

/* ================= Inscripción a torneos ================= */
.eform label{display:block}
.ecats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px}
.ecat{position:relative;cursor:pointer}
.ecat input{position:absolute;opacity:0}
.ecat > span{display:block;border:1.5px solid #e3e5ea;border-radius:10px;padding:10px 12px;transition:.2s}
.ecat b{display:block;font-size:13.5px}
.ecat small{font-size:11.5px;color:var(--muted);font-weight:600}
.ecat input:checked + span{border-color:var(--orange);background:var(--orange-soft)}
.ecat input:focus-visible + span{outline:2px solid var(--orange-d);outline-offset:2px}
.ecat.full{cursor:not-allowed;opacity:.5}
.ebar{display:block;height:4px;border-radius:4px;background:#eceef1;margin-top:8px;overflow:hidden}
.ebar i{display:block;height:100%;background:var(--orange);border-radius:4px}
.ecupo{font-size:13px;margin:4px 0 0}
.echk{display:flex!important;align-items:center;gap:8px;font-size:13px;margin:10px 0 2px;cursor:pointer;font-weight:500!important;color:var(--text)!important}
.echk input{width:auto;margin:0}
.epay{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.epay label{position:relative;cursor:pointer;margin:0}
.epay input{position:absolute;opacity:0}
.epay span{display:block;text-align:center;border:1.5px solid #e3e5ea;border-radius:8px;padding:9px 4px;font-size:12.5px;font-weight:700;transition:.2s}
.epay input:checked + span{border-color:var(--ink);background:var(--ink);color:#fff}
.epay input:focus-visible + span{outline:2px solid var(--orange-d);outline-offset:2px}
.etot{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-size:14px}
.prim-cats{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.prim-cats span{font-size:12px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 10px;color:var(--text)}
.prim-cats span b{color:var(--orange-d)}
.prim-cats span.full{opacity:.5}
@media (max-width:520px){.ecats{grid-template-columns:1fr}.epay span{font-size:11.5px}}

/* ================= Panel del club ================= */
.adm{background:var(--alt);min-height:80vh}
.adm-top{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:22px;flex-wrap:wrap}
.adm-demo{max-width:420px;background:#fff;border-left:4px solid var(--orange);border-radius:8px;padding:12px 16px;font-size:12.5px;color:var(--text);line-height:1.5;box-shadow:0 2px 12px rgba(15,20,30,.05)}
.adm-demo b{display:block;color:var(--ink);font-size:13px}
.adm-k .kpi b em{font-style:normal;font-size:16px;color:var(--muted);font-weight:700}
.adm-k .kpi span{color:var(--text);font-weight:600}
.adm-grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:20px;margin-top:20px}
.adm-grid.g2{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.adm-grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.adm-ph{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}
.occ{border-collapse:separate;border-spacing:4px;width:100%;min-width:860px}
.occ thead th{font-size:11.5px;color:var(--muted);font-weight:700;padding:4px 0}
.occ tbody th{text-align:left;padding:0 10px 0 4px;white-space:nowrap}
.occ tbody th b{display:block;font-size:13px}.occ tbody th small{font-size:11px;color:var(--muted)}
.oc{width:100%;height:52px;border-radius:7px;border:1.3px solid transparent;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:2px 4px;transition:.15s;overflow:hidden}
.oc b{font-size:11px;font-weight:700;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.oc small{font-size:10px;opacity:.8;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.oc.res{background:#2b3240;color:#fff}
.oc.fix{background:var(--orange);color:#111317}
.oc.free{background:#e9f6ee;border-color:#bfe3cb;color:#1a7f37;font-weight:700}
.oc.free:hover{border-color:#1a7f37}
.oc.rain{background:#e6eef9;border-color:#c4d6ef;color:#3d6aa8;cursor:default}
.oc.gone{background:#f1f2f4;color:#b5b8be;cursor:default}
.oc.res:hover,.oc.fix:hover{filter:brightness(1.12)}
.sw{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;font-weight:600;background:var(--alt);border-radius:999px;padding:6px 14px 6px 6px}
.sw input{position:absolute;opacity:0}
.sw-t{width:40px;height:22px;border-radius:999px;background:#c9ccd2;position:relative;transition:.2s;flex:none}
.sw-t::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.sw input:checked + .sw-t{background:#3d6aa8}
.sw input:checked + .sw-t::after{left:21px}
.sw input:focus-visible + .sw-t{outline:2px solid var(--orange-d);outline-offset:2px}
.an{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}
.an:last-child{border-bottom:0}
.an > div{flex:1;min-width:0}
.an b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.an small{font-size:11.5px;color:var(--muted)}
.an-t{font-weight:800;font-size:14px;width:46px;flex:none}
.an-av{flex:none;display:flex}
.mbar{width:60px;height:6px;border-radius:6px;background:#eceef1;overflow:hidden;flex:none !important}
.mbar i{display:block;height:100%;background:var(--orange);border-radius:6px}
.at{padding:10px 0;border-bottom:1px solid var(--line)}
.at:last-of-type{border-bottom:0}
.at-h{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:8px}
.at-h .muted{font-size:12px}
.at-r{display:grid;grid-template-columns:110px 1fr 44px;gap:10px;align-items:center;font-size:12.5px;margin:6px 0}
.at-r .bar{height:7px;border-radius:7px;background:#eceef1;overflow:hidden}
.at-r .bar i{display:block;height:100%;background:var(--orange);border-radius:7px}
.at-r .bar.full i{background:#1f8f4e}
.at-r b{text-align:right;font-size:12px}
.chart .bv{font-size:11px;font-weight:700;fill:var(--ink)}
.adm-det{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;text-align:left}
.adm-det div{background:var(--alt);border-radius:8px;padding:10px 14px}
.adm-det small{display:block;font-size:11.5px;color:var(--muted);font-weight:600}
.adm-det b{font-size:16px}
@media (max-width:1024px){.adm-grid,.adm-grid.g2{grid-template-columns:1fr}.adm-grid.g3{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.adm-grid.g3{grid-template-columns:1fr}.adm-demo{max-width:none}.sw{font-size:12px}}

/* ================= Eventos ================= */
.evt{text-align:left;border:0;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:.2s}
.evt b{font-size:16px}
.evt p{font-size:13px;color:var(--text);line-height:1.5}
.evt:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,20,30,.1)}
.packs{align-items:stretch}
.pack{position:relative;display:flex;flex-direction:column;padding:28px}
.pack h3{font-size:20px;font-weight:800}
.pk-for{font-size:13px;color:var(--muted);margin-top:2px}
.pk-pr{margin:16px 0}
.pk-pr small{display:block;font-size:12px;color:var(--muted)}
.pk-pr b{font-size:30px;font-weight:800;letter-spacing:-.02em}
.pack ul{list-style:none;display:flex;flex-direction:column;gap:9px;font-size:13.5px;margin-bottom:22px;flex:1}
.pack li{padding-left:22px;position:relative}
.pack li::before{content:"✓";position:absolute;left:0;color:#1a7f37;font-weight:800}
.pack .btn{align-self:flex-start}
.pack.top{border:2px solid var(--orange);box-shadow:0 14px 34px rgba(249,163,10,.16)}
.pk-tag{position:absolute;top:-12px;left:28px;background:var(--orange);color:#111317;font-size:11.5px;font-weight:800;border-radius:999px;padding:4px 12px}
.ev-pics{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}
.ev-pics img{width:100%;height:150px;object-fit:cover;border-radius:10px}
.evform label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:12px 0 6px}
.evform .epay label{margin:0}
.evform input,.evform select,.evform textarea{width:100%}
@media (max-width:860px){.ev-pics img{height:110px}}

/* ================= 404 ================= */
.nf{text-align:center;padding:90px 0 100px;background:var(--alt)}
.nf-ball{font-size:64px;animation:nfb 1.4s ease-in-out infinite}
@keyframes nfb{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}
@media (prefers-reduced-motion:reduce){.nf-ball{animation:none}}
.nf h1{font-size:clamp(36px,5vw,60px);font-weight:800;letter-spacing:-.03em;line-height:1.05;margin:8px 0 14px}
.nf h1 span{color:var(--orange)}
.nf p{color:var(--text);max-width:440px;margin:0 auto 24px}
.nf-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:30px;font-size:13.5px;font-weight:700}
.nf-links a{color:var(--orange-d)}
.adm .panel{min-width:0}
.occ-wrap{max-width:100%}
.occ{min-width:900px}
.hoy-h .eyebrow::before{display:none}
.hoy-cta{justify-content:flex-start;gap:14px 28px}
.sw{position:relative}.sw input,.ecat input,.epay input{width:1px;height:1px;padding:0;margin:0;border:0;pointer-events:none}
.occ tbody th,.occ thead th:first-child{position:sticky;left:0;background:#fff;z-index:1}
.fxc-h .sq,.evt .sq{width:44px;height:44px;border-radius:10px;background:var(--orange);color:var(--ink);display:grid;place-items:center;flex:none}
.fxc-h .sq svg,.evt .sq svg{stroke:var(--ink);width:22px;height:22px}
.fxc .sm{font-size:12.5px;color:var(--muted)}
.ecats .ecat{margin:0}
.eform .ecats{margin-top:6px}
body:has(.nf) footer,body:has(.adm) footer{margin-top:0}
/* Popup de inscripción compacto (entra sin scroll) */
.mbox.enr{max-width:680px;padding:24px 26px 22px}
.mbox.enr h3{font-size:21px;margin-bottom:2px}
.mbox.enr > #mbody > p{font-size:13.5px}
.mbox.enr label{margin:12px 0 5px}
.mbox.enr .ecats{grid-template-columns:repeat(var(--n),1fr);gap:8px}
.mbox.enr .ecat{margin:0}
.mbox.enr .ecat > span{padding:8px 10px}
.mbox.enr .ecat b{font-size:13px}
.mbox.enr .ebar{margin-top:6px}
.erow{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.erow.e2{grid-template-columns:.85fr 1.15fr}
.mbox.enr input:not([type=radio]):not([type=checkbox]),.mbox.enr select{padding:10px 12px}
.mbox.enr .echk{margin:10px 0 0}
.mbox.enr .epay label{margin:0}
.mbox.enr .epay span{padding:11px 4px;font-size:12px}
.efoot{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.efoot > div{display:flex;flex-direction:column;font-size:12.5px}
.efoot b{font-size:18px}
.efoot b small{font-size:12px;font-weight:600;color:var(--muted)}
@media (max-width:640px){.mbox.enr .ecats{grid-template-columns:1fr 1fr}.erow,.erow.e2{grid-template-columns:1fr}.efoot{flex-direction:column;align-items:stretch}.efoot .btn{justify-content:center}}
/* Anuncio del club (se activa desde el Panel) */
.annc{background:var(--ink);color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 44px;position:relative;text-align:center;line-height:1.4}
.annc a{color:var(--orange);text-decoration:underline;margin-left:6px}
.annc button{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:0;color:#fff;font-size:20px;cursor:pointer;line-height:1;padding:4px}

/* ================= Panel: ingreso + estructura con menú lateral ================= */
.adm{background:var(--alt);min-height:calc(100vh - 80px)}
body.adm-in footer,body.adm-in .wa-float{display:none}
.adm-login{display:grid;place-items:center;padding:70px 16px 90px}
.adm-login form{width:100%;max-width:400px;padding:34px 32px;text-align:center}
.adm-logo{height:56px;margin:0 auto 14px;display:block}
.adm-login h2{font-size:26px;font-weight:800;letter-spacing:-.02em}
.adm-login p{font-size:14px;color:var(--text);margin:4px 0 14px}
.adm-login label{text-align:left}
.adm-login .btn{width:100%;justify-content:center;margin-top:16px}
.adm-login .btn-line{margin-top:10px}
.adm-login small{display:block;margin-top:12px;font-size:12px;color:var(--muted)}
.adm-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 80px)}
.adm-side{background:#111317;color:#cfd2d8;padding:22px 14px;display:flex;flex-direction:column;gap:18px;position:sticky;top:80px;height:calc(100vh - 80px);overflow:auto}
.adm-brand{padding:0 10px}
.adm-brand b{display:block;color:#fff;font-size:16px}
.adm-brand small{font-size:12px;color:#8b9099}
#adm-nav{display:flex;flex-direction:column;gap:2px}
#adm-nav button{display:flex;align-items:center;gap:12px;background:none;border:0;color:#cfd2d8;font:inherit;font-size:13.5px;font-weight:600;padding:10px 12px;border-radius:8px;cursor:pointer;text-align:left;transition:.15s}
#adm-nav button .i{width:18px;height:18px;stroke:currentColor;flex:none}
#adm-nav button:hover{background:#1d2129;color:#fff}
#adm-nav button.on{background:var(--orange);color:#111317}
.adm-side-f{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:0 10px;font-size:13px}
.adm-side-f a{color:var(--orange)}
.adm-side-f button{background:none;border:0;color:#8b9099;font:inherit;text-align:left;padding:0;cursor:pointer}
.adm-side-f button:hover{color:#fff}
.adm-main{padding:28px 32px 50px;min-width:0}
.adm-main .adm-top{margin-bottom:20px;align-items:flex-start}
.adm-main h1{font-size:clamp(24px,2.6vw,32px);font-weight:800;letter-spacing:-.02em}
.adm-v{display:none}
.adm-v.on{display:block;animation:pop .2s}
.adm-v > .panel:first-child,.adm-v > .kgrid:first-child{margin-top:0}
.adm-days{margin-bottom:16px}
.adm-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.adm-bar p{font-size:13.5px;max-width:640px}
.adm-bar a,.adm-v .ps a{color:var(--orange-d);font-weight:700}
.adm-reset{margin-top:36px;text-align:center}
.adm-form .fg2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.adm-form .sp2{grid-column:1/-1}
.adm-form label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:12px 0 5px}
.adm-form > .btn{margin-top:18px}
.adm-form .sw{margin:0}
/* Torneos */
.at-row{display:grid;grid-template-columns:64px 1fr auto;gap:18px;align-items:center;margin-bottom:12px;padding:16px 20px}
.at-h1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.at-h1 h4{font-size:16px;font-weight:800;margin-right:4px}
.at-b .sm{font-size:12.5px;color:var(--muted);margin:4px 0 8px}
.at-bar{height:6px;border-radius:6px;background:#eceef1;overflow:hidden;max-width:360px}
.at-bar i{display:block;height:100%;background:var(--orange);border-radius:6px}
.at-row .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cat-ed{display:flex;flex-direction:column;gap:8px}
.cr{display:grid;grid-template-columns:1fr 92px 92px 34px;gap:8px;align-items:end}
.cr label{margin:0!important}
.cr small{display:block;font-size:10.5px;color:var(--muted);font-weight:700;margin-bottom:3px}
.cr .rm{height:40px;border:1px solid #e3e5ea;background:#fff;border-radius:8px;font-size:18px;cursor:pointer;color:#c4292f}
.imgpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:6px;max-height:170px;overflow:auto;padding:2px}
.imgpick label{margin:0!important;position:relative;cursor:pointer}
.imgpick input{position:absolute;opacity:0;width:1px;height:1px}
.imgpick img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;border:3px solid transparent;display:block}
.imgpick input:checked + img{border-color:var(--orange)}
.imgpick input:focus-visible + img{outline:2px solid var(--orange-d)}
.mbox.wide .adm-form .efoot{position:sticky;bottom:-22px;background:#fff;padding-bottom:6px}
/* Novedades */
.adm-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.nc{padding:0;overflow:hidden}
.nc img{width:100%;height:150px;object-fit:cover;display:block}
.nc > div{padding:14px 16px 16px}
.nc small{font-size:11.5px;color:var(--muted);margin-left:8px}
.nc h4{font-size:15px;font-weight:800;margin:8px 0 4px}
.nc p{font-size:12.5px;color:var(--text);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px}
.nc .acts{display:flex;gap:6px}
/* Profesores */
.c-days{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 16px;font-size:13px;font-weight:700}
.c-days > span{margin-right:6px}
.dchk{position:relative;cursor:pointer}
.dchk input{position:absolute;opacity:0;width:1px;height:1px}
.dchk span{display:block;padding:7px 12px;border-radius:999px;border:1.4px solid #e3e5ea;font-size:12.5px;background:#fff}
.dchk input:checked + span{background:var(--ink);border-color:var(--ink);color:#fff}
.dchk input:focus-visible + span{outline:2px solid var(--orange-d)}
.adm-t td{vertical-align:middle;font-size:13px}
/* Tienda */
.pp{display:flex;align-items:center;gap:10px;min-width:220px}
.pp img{width:44px;height:44px;border-radius:8px;object-fit:cover;flex:none;background:#f1f2f4}
.pp b{display:block;font-size:13px}
.pp small{font-size:11.5px;color:var(--muted)}
#p-list input[type=number]{width:110px;padding:8px 10px}
#p-list input.low{border-color:#e5a03a;background:#fff8ec}
#p-list select{min-width:0;width:140px;padding:8px 30px 8px 12px;font-size:12.5px}
#p-list tr.off td:not(:last-child){opacity:.45}
/* Busco pareja */
.bp{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;margin-bottom:10px;padding:16px 18px}
.bp b{font-size:14px}
.bp small{display:block;font-size:12px;color:var(--muted);margin:3px 0 6px}
.bp p{font-size:13px;color:var(--text)}
.bp.off{opacity:.5}
/* Anuncio */
.annc-prev{margin-top:14px}
.annc-prev small{display:block;font-size:11.5px;color:var(--muted);font-weight:700;margin-bottom:6px}
/* Sponsors */
.sp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.spc{display:flex;flex-direction:column;align-items:center;gap:14px;cursor:pointer;padding:22px}
.spc img{height:46px;max-width:70%;object-fit:contain}
.spc > span{display:flex;align-items:center;justify-content:space-between;width:100%}
.spc.off img{opacity:.3;filter:grayscale(1)}
@media (max-width:900px){
  .adm-shell{grid-template-columns:1fr}
  .adm-side{position:sticky;top:60px;height:auto;flex-direction:row;align-items:center;padding:8px 10px;gap:8px;z-index:5;overflow-x:auto;scrollbar-width:none}
  .adm-side::-webkit-scrollbar{display:none}
  .adm-brand,.adm-side-f{display:none}
  #adm-nav{flex-direction:row;gap:4px}
  #adm-nav button{white-space:nowrap;padding:8px 12px;font-size:12.5px}
  .adm-main{padding:20px 16px 40px}
  .adm-main .adm-top{flex-direction:column}
  .at-row{grid-template-columns:56px 1fr}
  .at-row .acts{grid-column:1/-1;justify-content:flex-start}
  .adm-form .fg2{grid-template-columns:1fr}
  .cr{grid-template-columns:1fr 70px 70px 34px}
  .bp{grid-template-columns:auto 1fr}.bp .mini{grid-column:2;justify-self:start}
}
.adm-login[hidden],.adm-shell[hidden]{display:none!important}
.adm-login form label{display:block;text-align:left;font-size:12px;font-weight:700;color:var(--muted);margin:14px 0 5px}
.cr .rm{width:36px;height:42px;padding:0;display:grid;place-items:center;line-height:1}
.cr input{height:42px}
.adm-shell{background:linear-gradient(90deg,#111317 240px,transparent 240px)}
#p-list .sw input:checked + .sw-t,.spc .sw input:checked + .sw-t,#f-annc .sw input:checked + .sw-t{background:#1f8f4e}
@media (max-width:900px){.adm-shell{background:none}}
.adm-form label.sw{display:inline-flex;margin:12px 0 4px;font-size:13px;color:var(--ink)}

/* ================= Panel de profesores ================= */
.pf-link{text-align:center;font-size:13.5px;color:var(--muted);margin-top:16px}
.pf-link a{color:var(--orange-d);font-weight:700}
.pf-pick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:6px 0 4px}
.pf-c{position:relative;cursor:pointer;margin:0!important}
.pf-c input{position:absolute;opacity:0;width:1px;height:1px}
.pf-c span{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border:2px solid #e6e7ea;border-radius:12px;transition:.15s}
.pf-c img{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:top}
.pf-c b{font-size:12.5px;color:var(--ink)}
.pf-c input:checked + span{border-color:var(--orange);background:var(--orange-soft)}
.pf-c input:focus-visible + span{outline:2px solid var(--orange-d);outline-offset:2px}
.pf-me{display:flex;align-items:center;gap:10px}
.pf-me img{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:top;flex:none}
.pf-wk{display:flex;align-items:center;gap:10px}
.pf-wk b{font-size:15px;min-width:120px;text-align:center}
.pf-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.pfd{background:#fff;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:6px;min-height:160px;box-shadow:0 2px 10px rgba(15,20,30,.04)}
.pfd.today{box-shadow:0 0 0 2px var(--orange)}
.pfd.past{opacity:.55}
.pfd-h{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:2px 2px 4px;border-bottom:1px solid var(--line)}
.pfd-h span{font-size:10.5px;font-weight:800;background:var(--orange);color:#111317;border-radius:999px;padding:2px 8px}
.pfd-off{font-size:12px;color:var(--muted);text-align:center;padding:18px 4px;border:1.5px dashed #dfe1e5;border-radius:8px;margin-top:4px}
.pfs{text-align:left;border:0;border-left:4px solid var(--orange);background:#fff8ec;border-radius:7px;padding:7px 8px;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:1px;transition:.15s}
.pfs b{font-size:13px}
.pfs span{font-size:11.5px;font-weight:600;line-height:1.25;color:var(--ink)}
.pfs small{font-size:10.5px;color:var(--text)}
.pfs.full{border-left-color:#1f8f4e;background:#e9f6ee}
.pfs.empty{border-left-color:#c9ccd2;background:#f4f5f7}
.pfs.cx{border-left-color:#c4292f;background:#fdeceb;text-decoration:line-through;opacity:.8}
.pfs.gone{opacity:.6}
.pfs:hover{filter:brightness(.97)}
.pf-search{max-width:260px;border-radius:999px!important;padding:9px 16px!important}
.pf-al{border:1px solid var(--line);border-radius:10px;padding:6px 12px;margin-top:14px;max-height:300px;overflow:auto}
.pf-al-h{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px}
.pf-al-h small{color:var(--muted)}
.pf-a{display:flex!important;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line);cursor:pointer;margin:0!important;font-weight:400!important}
.pf-a input{width:18px;height:18px;margin:0;accent-color:#1f8f4e;flex:none}
.pf-a b{display:block;font-size:13px;color:var(--ink)}
.pf-a small{font-size:11.5px;color:var(--muted)}
.pf-a em,.pf-web{font-style:normal;font-size:10px;font-weight:800;background:var(--orange-soft);color:var(--orange-d);border-radius:4px;padding:1px 5px;margin-left:4px}
.pf-act{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.danger-l{color:#c4292f!important;border-color:#f0c7c5!important}
.pf-cx{background:#fdeceb;color:#8a1f1a;border-radius:8px;padding:12px 14px;font-size:13px;margin-top:12px}
@media (max-width:1100px){.pf-week{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:640px){.pf-week{grid-template-columns:1fr 1fr}.pf-pick{grid-template-columns:repeat(2,1fr)}.pfd{min-height:0}}
@media (max-width:900px){.adm-side .pf-me{display:none}.pfd.past{display:none}}
/* Panel: profesores */
.co-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}
.co{display:flex;flex-direction:column;gap:14px}
.co.off{opacity:.6}
.co-h{display:flex;gap:14px;align-items:center}
.co-h img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:top;flex:none}
.co-h h4{font-size:16px;font-weight:800}
.co-h small{display:block;font-size:12.5px;color:var(--muted);margin:2px 0 6px}
.co-b{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.co-b small{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.co-b b{display:block;font-size:13px}
.co-b span{font-size:12px;color:var(--muted);word-break:break-word}
.co .acts{display:flex;gap:6px;flex-wrap:wrap}
.ip-none span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;aspect-ratio:4/3;border:3px solid transparent;border-radius:6px;background:#f4f5f7}
.ip-none small{font-size:10.5px;color:var(--muted)}
.ip-none input:checked + span{border-color:var(--orange)}
.coach-av{display:grid;place-items:center;background:linear-gradient(135deg,#2b3240,#111317);color:var(--orange);font-size:56px;font-weight:800;min-height:260px}
.co-b > div{min-width:0}.co-b span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal}
.kgrid[hidden]{display:none}

/* ================= Nuevas funciones: alumnos, profes y club ================= */
/* Aviso en el ícono de cuenta */
.acc-btn{position:relative}
.acc-dot{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;background:#e5484d;color:#fff;font-size:10.5px;font-weight:800;display:grid;place-items:center;padding:0 4px;border:2px solid #fff}
.tab .cnt.red{background:#e5484d;color:#fff}
/* Profesores: espera y packs */
.ag-s.wlb{cursor:pointer;opacity:1}
.ag-s.wlb .a-full u{text-decoration:underline;color:var(--orange-d)}
.ag-pack{display:flex!important;align-items:center;gap:8px;background:var(--orange-soft);border-radius:8px;padding:10px 12px;margin:0 0 10px;font-size:13px;cursor:pointer}
.ag-pack input{width:18px;height:18px;margin:0;accent-color:var(--orange-d)}
.pk-mine{background:var(--ink);color:#fff;border-radius:12px;padding:16px 20px;margin-bottom:18px;display:grid;grid-template-columns:auto 1fr;gap:4px 18px;align-items:center}
.pk-mine span{font-size:13px;color:#cfd2d8}
.pk-mine .bar{grid-column:1/-1;height:6px;background:#2b3240;border-radius:6px;overflow:hidden;margin-top:6px}
.pk-mine .bar i{display:block;height:100%;background:var(--orange)}
#packs .pk-pr small{display:block}
/* Panel de profes: notas, espera, liquidación */
.pf-row{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line)}
.pf-row .pf-a{flex:1;border-top:0}
.pf-a em.pk{background:#e3f5e8;color:#1a7f37}
.pf-note{padding:4px 0 12px 42px}
.pf-note textarea{width:100%;height:64px;font-size:13px}
.pf-note-f{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0 4px;flex-wrap:wrap}
.pf-note-f .btn{padding:8px 16px;font-size:12.5px}
.seg.sm{margin:0;display:inline-grid;grid-template-columns:repeat(3,auto)}
.seg.sm button{padding:6px 12px;font-size:12px}
.pf-wl{background:#fffaf0}
.pf-n{width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;flex:none}
.liq-me{background:var(--ink)!important;color:#fff}
.liq-me small{color:#cfd2d8!important}.liq-me span{color:var(--orange)!important}
/* Mi cuenta */
.note{margin-bottom:12px;padding:16px 18px}
.note-h{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.note-h > div{flex:1}.note-h b{display:block;font-size:13.5px}.note-h small{font-size:12px;color:var(--muted)}
.note p{font-size:13.5px;line-height:1.55;color:var(--text)}
.pk-card small{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.pk-card > b{display:block;font-size:16px;margin-top:4px}
.pk-big{font-size:42px;font-weight:800;letter-spacing:-.02em;margin:10px 0 4px}
.pk-big span{font-size:15px;color:var(--muted);font-weight:600;margin-left:6px}
.pk-card .bar{height:8px;border-radius:8px;background:#eceef1;overflow:hidden;margin-bottom:8px}
.pk-card .bar i{display:block;height:100%;background:var(--orange)}
.lvl-track{display:flex;gap:4px;margin-top:12px;flex-wrap:wrap}
.lvl-track span{flex:1;min-width:58px;text-align:center;font-size:11px;font-weight:700;padding:8px 2px;border-radius:6px;background:#f1f2f4;color:var(--muted)}
.lvl-track span.on{background:var(--orange);color:#111317}
.pay-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;background:var(--orange-soft);border-radius:12px;padding:14px 18px;margin-bottom:16px;font-weight:700;font-size:14px;flex-wrap:wrap}
.rcpt{text-align:center}
.rcpt dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;text-align:left;margin:18px 0;font-size:13.5px}
.rcpt dt{color:var(--muted)}
.rcpt .btn{margin-top:10px}
.ntf{display:flex;align-items:center;gap:14px;margin-bottom:10px;padding:14px 18px;color:inherit;position:relative}
.ntf.new{box-shadow:0 0 0 2px var(--orange-soft),0 4px 18px rgba(15,20,30,.06)}
.ntf.warn{border-left:4px solid #e5a03a}
.ntf-ic{font-size:22px;width:40px;height:40px;border-radius:10px;background:#f4f5f7;display:grid;place-items:center;flex:none}
.ntf b{display:block;font-size:14px}.ntf small{font-size:12.5px;color:var(--muted)}
.ntf-dot{width:9px;height:9px;border-radius:50%;background:#e5484d;margin-left:auto;flex:none}
.ntf-ch{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.forme{position:absolute;top:14px;right:14px}
.post{position:relative}
/* Panel del club */
.rb{display:grid;grid-template-columns:120px 1fr 100px;gap:4px 12px;align-items:center;padding:6px 0;font-size:13px}
.rb small{grid-column:3;font-size:11px;color:var(--orange-d);text-align:right;margin-top:-4px}
.rb b{text-align:right;font-size:13px}
.rb-bar{height:10px;border-radius:6px;background:#eceef1;overflow:hidden;display:flex}
.rb-bar i{display:block;height:100%;background:var(--ink)}
.rb-bar i.pd{background:var(--orange)}
.rb-bar i:first-child{border-radius:6px 0 0 6px}
.cj-close{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.cj-ok{background:#e3f5e8;color:#1a7f37;border-radius:8px;padding:12px 14px;font-size:13px;font-weight:700}
.lq-pct{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}
.lq-pct input{width:76px;padding:8px 10px}
.cl-sel{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--ink);color:#fff;border-radius:12px;padding:10px 12px 10px 18px;margin-bottom:12px;font-weight:700;font-size:14px}
.cl-sel[hidden]{display:none}
.cl-n{display:flex;align-items:center;gap:10px;background:none;border:0;font:inherit;cursor:pointer;text-align:left;padding:0}
.cl-n b{display:block;font-size:13px}.cl-n small{font-size:11.5px;color:var(--muted)}
.cl-n:hover b{color:var(--orange-d)}
.cl-old{color:#c4292f;font-weight:700}
.adm-t input[type=checkbox]{width:17px;height:17px;accent-color:var(--orange-d)}
.cl-head{display:flex;align-items:center;gap:14px}
.cl-head h3{margin:0}
#cl-cat{min-width:180px}
.ms-tpl{display:flex;gap:6px;flex-wrap:wrap}
.ms-prev{margin:14px 0 4px;background:#e7ddd3;border-radius:10px;padding:12px}
.ms-prev small{display:block;font-size:11.5px;font-weight:700;color:#5b5f68;margin-bottom:8px}
.bubble{background:#fff;border-radius:0 10px 10px 10px;padding:10px 12px;font-size:13.5px;line-height:1.45;max-width:90%;white-space:pre-wrap;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.an small + small{display:block}
.hm-wrap{overflow-x:auto}
.hm{border-collapse:separate;border-spacing:3px;width:100%;min-width:760px}
.hm th{font-size:11.5px;color:var(--muted);font-weight:700;padding:4px}
.hm tbody th{text-align:left;width:44px}
.hm td{text-align:center;font-size:11.5px;font-weight:700;border-radius:6px;height:40px;position:relative}
.hm td i{display:block;font-style:normal;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#905400}
.hm-leg{display:flex;align-items:center;gap:10px;justify-content:flex-end;font-size:12px;color:var(--muted);margin-top:10px}
.hm-leg > i{width:140px;height:10px;border-radius:5px;background:linear-gradient(90deg,rgb(254,238,209),rgb(144,84,10))}
.tr-live{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;border:2px solid #fde2e2;flex-wrap:wrap}
.tr-live h4{font-size:17px;font-weight:800;margin:6px 0 2px}
.tr-live .sm{font-size:12.5px;color:var(--muted);max-width:620px}
.tr-live .sm a{color:var(--orange-d);font-weight:700}
.rs-h4{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:16px 0 8px}
.rs{display:grid;grid-template-columns:1fr 130px auto 150px 34px;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px}
.rs-t{display:flex;flex-direction:column;gap:4px}
.rs-w{display:flex!important;align-items:center;gap:8px;margin:0!important;font-size:13px!important;font-weight:600!important;color:var(--ink)!important;cursor:pointer}
.rs-w input{width:16px;height:16px;margin:0;accent-color:#1f8f4e}
.rs-w input:checked + span{color:#1f8f4e;font-weight:800}
.rs-w input:checked + span::after{content:" · ganó"}
.rs-l{display:flex!important;align-items:center;gap:6px;margin:0!important;font-size:12px!important;white-space:nowrap}
.rs-l input{width:16px;height:16px;margin:0;accent-color:#e5484d}
.rs input.rs-s,.rs input.rs-h{padding:8px 10px;font-size:12.5px}
.rs-x{height:34px;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer}
.cup.won{background:#e3f5e8}
.cup.won b{display:block;color:#1a7f37;font-size:14px}
@media (max-width:760px){.rs{grid-template-columns:1fr 1fr}.rs-t{grid-column:1/-1}.rb{grid-template-columns:96px 1fr 84px}}
@media print{header,footer,.adm-side,.adm-bar .btn,.wa-float,.adm-demo,.toast,.modal .mx,#adm-nav{display:none!important}.adm-shell{display:block;background:none}.adm-v:not(.on){display:none}.panel{box-shadow:none;border:1px solid #ddd}}
.kg3{grid-template-columns:repeat(3,1fr)}@media (max-width:760px){.kg3{grid-template-columns:1fr}}.adm-main .kgrid .kpi{min-width:0}
#u-rows select{min-width:180px}
.slot.trn{background:#fff3dc;border-color:#f3d39a;color:#905400;text-decoration:none}
[hidden]{display:none!important}
/* ================= Organizador de torneos ================= */
.org-b{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}
.og-head{display:flex;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.og-head > div{flex:1;min-width:200px}
.og-head h2{font-size:22px;font-weight:800}
.og-head p{font-size:13px}
.og-cats{margin-bottom:16px}
.og-steps{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:0 0 18px;padding:0;counter-reset:s}
.og-steps button{width:100%;display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #e3e5ea;border-radius:10px;padding:10px 12px;font:inherit;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer;text-align:left}
.og-steps b{width:24px;height:24px;border-radius:50%;background:#eceef1;display:grid;place-items:center;font-size:12px;flex:none;color:var(--ink)}
.og-steps li.dn button{color:var(--ink)}
.og-steps li.dn b{background:#1f8f4e;color:#fff}
.og-steps li.on button{border-color:var(--orange);color:var(--ink);background:var(--orange-soft)}
.og-steps li.on b{background:var(--orange)}
.og-next{display:flex;justify-content:flex-end;margin-top:18px}
.og-warn{background:#fff3dc;color:#7a4a00;border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:12px}
.og-empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:46px 16px;color:var(--muted);font-size:13.5px}
.og-empty b{color:var(--ink);font-size:16px}
.og-in{border:1px solid transparent!important;background:transparent!important;padding:6px 8px!important;font-weight:600;max-width:260px}
.og-in:hover,.og-in:focus{border-color:#dcdde0!important;background:#fff!important}
.og-seed{width:34px;height:34px;border-radius:50%;border:1.5px solid #e3e5ea;background:#fff;color:#c9ccd2;font-size:16px;cursor:pointer}
.og-seed.on{background:var(--orange);border-color:var(--orange);color:#111317}
.og-pairs select{min-width:230px;padding:8px 30px 8px 12px;font-size:12.5px;border-radius:8px}
.og-add{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.og-add input{flex:1;min-width:200px}
.og-fmt{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.og-f{display:flex!important;flex-direction:column;gap:2px;border:1.5px solid #e3e5ea;border-radius:10px;padding:12px 14px 12px 40px;position:relative;cursor:pointer;margin:0!important}
.og-f input{position:absolute;left:14px;top:15px;width:16px;height:16px;margin:0;accent-color:var(--orange-d)}
.og-f b{font-size:14px;color:var(--ink)}.og-f span{font-size:12.5px;color:var(--text);font-weight:400}
.og-f.on{border-color:var(--orange);background:var(--orange-soft)}
.og-lbl{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:14px 0 6px}
.og-sug{margin-top:14px;background:#f4f5f7;border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.5}
.og-cap{margin-top:14px;font-size:12.5px;color:var(--muted)}
.og-zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.og-z{background:#f7f8fa;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px;min-height:120px}
.og-z h4{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:2px}
.og-chip{display:flex;flex-direction:column;background:#fff;border:1.5px solid #e3e5ea;border-radius:8px;padding:9px 12px;font:inherit;font-size:13px;font-weight:700;text-align:left;cursor:pointer;color:var(--ink)}
.og-chip small{font-size:10.5px;color:var(--muted);font-weight:600;margin:2px 0}
.og-chip.seed{border-color:var(--orange)}
.og-chip.sel{background:var(--ink);color:#fff;border-color:var(--ink)}
.og-chip.bye{color:var(--muted);font-weight:500;border-style:dashed}
.og-chip.hid{opacity:0;transform:scale(.8)}
.og-chip.pop{animation:ogpop .35s ease}
@keyframes ogpop{0%{opacity:0;transform:translateY(-14px) scale(.9)}70%{transform:translateY(2px) scale(1.03)}100%{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.og-chip.pop{animation:none}.og-chip.hid{opacity:1;transform:none}}
.og-day{font-size:14px;margin:18px 0 8px}
.og-fx{display:grid;gap:6px;overflow-x:auto;align-items:stretch}
.og-ct{font-size:12px;color:var(--muted);text-align:center}
.og-t{font-size:13px;font-weight:800;align-self:center}
.og-m{border-radius:8px;padding:7px 9px;background:#f4f5f7;font-size:12px;min-height:46px;display:flex;flex-direction:column;justify-content:center}
.og-m small{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.og-m span{font-weight:700;line-height:1.3}
.og-m span small{text-transform:none;font-weight:500;letter-spacing:0;margin:0 3px}
.og-m.mine{background:var(--orange-soft);border-left:3px solid var(--orange)}
.og-m.free{color:#b5b8be;align-items:center;font-weight:600;background:#fafbfc;border:1px dashed #e3e5ea}
.og-zr{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px}
.og-tb{margin-bottom:12px}
.og-ms{display:flex;flex-direction:column;gap:6px}
.og-r{display:grid;grid-template-columns:110px 1fr 92px 1fr;gap:8px;align-items:center;font-size:12.5px;padding:6px 0;border-top:1px solid var(--line)}
.og-rw{font-size:11px;color:var(--muted)}
.og-rn{font-weight:600}.og-rn.r{text-align:right}
.og-rn.w{color:#1f8f4e;font-weight:800}
.og-r input{padding:7px 8px;font-size:12.5px;text-align:center}
.og-kob{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;flex-wrap:wrap}
.og-kob b{display:block;font-size:15px}.og-kob span{font-size:13px;color:var(--muted)}
.og-ko{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:14px;overflow-x:auto;padding-bottom:6px}
.og-kr{display:flex;flex-direction:column;justify-content:space-around;gap:10px}
.og-kr h4{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.og-km{background:#f7f8fa;border-radius:10px;padding:8px 10px}
.og-km .og-r{grid-template-columns:1fr 84px 1fr;border:0;padding:2px 0}
.og-km .og-r .og-rw{display:none}
.og-km > small{font-size:10.5px;color:var(--muted);font-weight:700}
.og-km.bye{opacity:.7}
.og-km.bye span{font-weight:700;font-size:13px;display:block}
.og-champ{background:#f4f5f7;border-radius:12px;padding:18px;text-align:center;font-size:28px}
.og-champ b{display:block;font-size:14px;margin-top:6px}
.og-champ.on{background:#e3f5e8;color:#1a7f37}
.og-ko.pub .og-km{background:#fff;border:1px solid var(--line)}
.fxk{font-size:13px;font-weight:600;padding:3px 0}
.fxk.w{color:#1f8f4e;font-weight:800}
.fxk.w::after{content:" ✓"}
.fx-zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:20px}
.fx-m{display:grid;grid-template-columns:120px 110px 1fr 90px 1fr;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:13px}
.fx-w{font-size:11.5px;color:var(--muted);display:flex;flex-direction:column}
.fx-w b{font-size:14px;color:var(--ink)}
.fx-l{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--orange-d)}
.fx-p{font-weight:600}.fx-p.r{text-align:right}.fx-p.w{color:#1f8f4e;font-weight:800}
.fx-s{text-align:center;font-weight:800;background:#f4f5f7;border-radius:6px;padding:5px 4px;font-size:12px}
@media (max-width:900px){.og-steps{grid-template-columns:repeat(3,1fr)}.og-zr{grid-template-columns:1fr}.og-r{grid-template-columns:1fr 80px 1fr}.og-r .og-rw{grid-column:1/-1}.fx-m{grid-template-columns:90px 1fr 70px 1fr}.fx-l{display:none}}
@media (max-width:560px){.og-steps{grid-template-columns:repeat(2,1fr)}.og-steps button{font-size:12px;padding:8px}.fx-m{grid-template-columns:1fr 64px 1fr}.fx-w{grid-column:1/-1;flex-direction:row;gap:8px}}
.og-km > small{display:block;margin-bottom:2px}.og-km > .muted{display:block;font-size:13px}
.fx-zones{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.fx-zones .panel{min-width:0;overflow-x:auto}@media (max-width:560px){.fx-zones{grid-template-columns:1fr}}
#og-pub:checked + .sw-t{background:#1f8f4e}
.oc.maint{background:repeating-linear-gradient(45deg,#f4f5f7 0 6px,#eceef1 6px 12px);color:#8b9099;cursor:default}
/* Panel: canchas */
.ct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}
.ct{display:flex;flex-direction:column;gap:14px}
.ct.off{opacity:.6}
.ct-h{display:flex;align-items:center;gap:12px}
.ct-h > div:nth-child(2){flex:1}
.ct-h h4{font-size:16px;font-weight:800}
.ct-h small{font-size:12.5px;color:var(--muted);text-transform:none}
.ct-ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:22px;flex:none;background:#e6eef9;color:#2a4f86}
.ct-ic.descubierta{background:#fff3dc;color:#905400}
.ct-mt{display:flex;flex-direction:column;gap:6px}
.ct-mt > div{display:flex;justify-content:space-between;align-items:center;gap:8px;background:#fff3dc;border-radius:8px;padding:6px 6px 6px 10px;font-size:12.5px;color:#7a4a00}
.ct .acts{display:flex;gap:6px;flex-wrap:wrap}
.ibox p b{display:inline;font-size:inherit;margin:0}
/* Cuadros grandes (16avos) */
.bracket.r4{grid-template-columns:repeat(4,minmax(200px,1fr)) minmax(160px,.7fr);min-width:1100px}
.bracket.r5{grid-template-columns:repeat(5,minmax(190px,1fr)) minmax(150px,.7fr);min-width:1240px;gap:28px}
.bracket.big .bms{gap:8px}
.bracket.big .bt{padding:5px 10px;font-size:12px}
.bracket.big .bf{padding:3px 10px;font-size:11px}
.bracket.big .bm{border-radius:8px}
.bracket.big .wtag{font-size:9.5px}
@media (max-width:900px){.bracket.r5{grid-template-columns:repeat(5,180px) 140px;min-width:0;gap:24px}.bracket.r4{grid-template-columns:repeat(4,190px) 140px;min-width:0}}
.zg.nozones .zg-pills,.zg.nozones .zg-nav{display:none}
.zg-none{display:flex;flex-direction:column;gap:6px;padding:26px 6px;font-size:13.5px;color:var(--text);line-height:1.5}
.zg-none b{color:var(--ink);font-size:15px}
.zg.nozones > p.muted{display:none}
.pk-ft{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:6px}.pk-add{border:2px dashed #dfe1e5!important;background:transparent!important;box-shadow:none!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font:inherit;color:var(--muted);cursor:pointer;min-height:200px}.pk-add b{font-size:30px;color:var(--orange-d)}.pk-add:hover{border-color:var(--orange)!important;color:var(--ink)}
.co-b span{white-space:normal;overflow:visible}.co-b span.em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sp-word{font-size:22px;font-weight:900;letter-spacing:-.02em;text-transform:uppercase;height:46px;display:flex;align-items:center}.sp-new{border:2px dashed #dfe1e5!important;background:transparent!important;box-shadow:none!important;font:inherit;color:var(--muted);justify-content:center;min-height:140px}.sp-new b{font-size:28px;color:var(--orange-d)}.sp-txt{font-size:20px;font-weight:900;letter-spacing:-.02em;text-transform:uppercase;color:#2b3240}
.nav-g{display:block;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#6b7079;padding:12px 12px 4px}.nav-g:first-child{padding-top:0}@media (max-width:900px){.nav-g{display:none}}#adm-nav{gap:1px}#adm-nav button{padding:8px 12px}
.pp img{object-position:top}

/* ===== Panel: subir imágenes, sponsors, logo e identidad, páginas ===== */
.ip-up{border:2px dashed #cfd2d8;background:#fafafb;border-radius:8px;aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;font:inherit;color:var(--ink);padding:0}
.ip-up:hover{border-color:var(--orange);background:var(--orange-soft)}
.ip-up .i{width:18px;height:18px;color:var(--orange-d)}.ip-up small{font-size:11px;font-weight:700}
.spc > span.sp-im{height:52px;justify-content:center}
.spc .sp-im img{height:46px;max-width:100%}
.spc > span.sp-acts{justify-content:center;gap:6px;flex-wrap:wrap}
.sp-txt.has-img .sp-nm{display:none}.sp-txt img{max-width:100%;max-height:48px}.sp-nm{font-style:normal}
.spf-logo{display:flex;align-items:center;gap:14px;border:1px solid var(--line,#e6e7ea);border-radius:10px;padding:10px 14px}
.spf-logo .sp-im{width:120px;height:52px;display:flex;align-items:center;justify-content:center}.spf-logo img{max-height:46px;max-width:120px}.spf-logo .sp-word{font-size:12px;color:var(--muted);height:auto}
.pp-im{position:relative;border:0;padding:0;background:none;cursor:pointer;flex:none;border-radius:8px;overflow:hidden;line-height:0}
.pp-im span{position:absolute;inset:auto 0 0;background:rgba(17,19,23,.72);color:#fff;font-size:9.5px;font-weight:700;line-height:1.6;opacity:0;transition:.15s}
.pp-im:hover span,.pp-im:focus-visible span{opacity:1}
/* identidad */
.br-logos{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px}
.br-lg>small{display:block;font-weight:800;font-size:13px;color:var(--ink)}.br-lg>span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}
.br-prev{height:96px;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:14px;border:1px solid #e6e7ea}
.br-prev.light{background:#fff;background-image:linear-gradient(45deg,#f4f5f7 25%,transparent 25%,transparent 75%,#f4f5f7 75%),linear-gradient(45deg,#f4f5f7 25%,transparent 25%,transparent 75%,#f4f5f7 75%);background-size:16px 16px;background-position:0 0,8px 8px}
.br-prev.dark{background:#111317;border-color:#111317}
.br-prev img{max-height:62px;max-width:90%;object-fit:contain}
.br-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.br-fav{display:flex;align-items:center;gap:14px;margin-top:18px;padding:14px;border:1px solid #e6e7ea;border-radius:12px;flex-wrap:wrap}
.br-fav>div:nth-child(2){flex:1;min-width:180px}.br-fav b{display:block;font-size:13.5px}.br-fav span{font-size:12px;color:var(--muted)}.br-fav .br-acts{margin:0}
.br-favi{width:48px;height:48px;border-radius:10px;border:1px solid #e6e7ea;display:flex;align-items:center;justify-content:center;background:#fff}.br-favi img{width:32px;height:32px;object-fit:contain}
.br-colors{display:flex;gap:8px;flex-wrap:wrap}
.br-c{display:flex!important;flex-direction:column;align-items:center;gap:5px;border:0;background:none;cursor:pointer;font:inherit;padding:0;margin:0!important;width:58px}
.br-c i{width:40px;height:40px;border-radius:50%;background:var(--c,conic-gradient(red,yellow,lime,cyan,blue,magenta,red));box-shadow:0 0 0 2px #fff,0 0 0 3px #dcdee2;position:relative;overflow:hidden;display:block}
.br-c.on i{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ink)}
.br-c small{font-size:11px;font-weight:600;color:var(--muted)}.br-c.on small{color:var(--ink);font-weight:800}
.br-c input{position:absolute;inset:-8px;width:60px!important;height:60px;opacity:0;cursor:pointer;padding:0;border:0}
.br-side{align-self:start;position:sticky;top:16px}
.br-mock{--acc:#F9A30A;border-radius:12px;overflow:hidden;border:1px solid #e6e7ea;margin-top:6px;font-size:12px}
.bm-top{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border-bottom:1px solid #eee}.bm-top img{height:26px;max-width:110px;object-fit:contain;margin-right:auto}
.bm-top i{width:34px;height:6px;border-radius:4px;background:#e6e7ea}
.bm-btn{background:var(--acc);color:#fff;font-weight:800;padding:7px 12px;border-radius:999px;font-size:11px;white-space:nowrap}
.bm-hero{background:linear-gradient(135deg,#1b1e24,#2b3038);color:#fff;padding:26px 18px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.bm-hero small{color:var(--acc);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.bm-hero b{font-size:22px;line-height:1.1}.bm-hero b span{color:var(--acc)}
.bm-foot{background:#111317;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border-top:3px solid var(--acc)}.bm-foot img{height:24px;max-width:110px;object-fit:contain}.bm-foot small{color:#9aa0aa;font-size:10.5px}
.br-tab{display:flex;align-items:center;gap:8px;margin-top:14px;background:#eef0f3;border-radius:10px 10px 0 0;padding:9px 12px;max-width:260px;font-size:12px}.br-tab img{width:16px;height:16px;object-fit:contain}.br-tab span{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.br-tab b{color:var(--muted);font-weight:400}
/* páginas y secciones */
.pg-chips{margin-bottom:18px}
.pg-chips .chip i{font-style:normal;background:var(--orange);color:#fff;border-radius:999px;font-size:10.5px;padding:1px 7px;margin-left:7px}
.pg-wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.pg-live{display:none}
@media (min-width:1280px){.pg-wrap{grid-template-columns:minmax(0,1fr) minmax(360px,.85fr)}.pg-live{display:block;position:sticky;top:16px}}
.pg-live-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.pg-live-h b{font-size:13px}.pg-live-h small{font-size:11.5px;color:var(--muted)}
.pg-frame{height:calc(100vh - 150px);min-height:420px;border-radius:12px;overflow:hidden;border:1px solid #e1e3e7;background:#fff;box-shadow:0 10px 30px rgba(15,20,30,.08)}
.pg-frame iframe{width:1280px;border:0;transform-origin:0 0;display:block}
.pgs{padding:0!important;margin-bottom:10px;overflow:hidden}
.pgs.off{background:#fafafb}.pgs.off .pgs-l b{color:var(--muted)}
.pgs-h{display:flex;align-items:center;gap:10px;padding-right:16px}
.pgs-t{flex:1;min-width:0;display:flex;align-items:center;gap:12px;border:0;background:none;font:inherit;text-align:left;padding:14px 16px;cursor:pointer;color:var(--ink)}
.pgs-t .n{width:28px;height:28px;border-radius:50%;background:#f1f2f4;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}
.pgs.open .pgs-t .n{background:var(--orange);color:#fff}
.pgs-l{flex:1;min-width:0}.pgs-l b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pgs-l small{font-size:12px;color:var(--muted)}
.pgs-l em,.pgf label em{font-style:normal;color:var(--orange-d);font-weight:700}.pgs-l em.g{color:#8a6d00}
.pgs-t .ch{width:16px;height:16px;transition:.2s;color:var(--muted);flex:none}.pgs.open .pgs-t .ch{transform:rotate(180deg)}
.pgs-b{border-top:1px solid #eceef1;padding:16px 18px 18px}
.pg-tip{font-size:12px;color:var(--muted);background:#f7f8fa;border-radius:8px;padding:8px 12px;margin:0 0 14px}.pg-tip code{background:#fff;border:1px solid #e3e5e9;border-radius:4px;padding:0 4px;font-size:11.5px}
.pgf-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.pgf{grid-column:span 1;min-width:0}.pgf:has(textarea),.pgf.pgi{grid-column:1/-1}
.pgf label{display:flex;gap:8px;align-items:baseline;font-size:12px;font-weight:700;color:var(--muted);margin:0 0 5px;text-transform:none}
.pgf label small{font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pgf input,.pgf textarea{width:100%;font:inherit;font-size:14px;border:1.4px solid #dcdfe4;border-radius:8px;padding:9px 12px;resize:vertical;line-height:1.45;background:#fff}
.pgf input:focus,.pgf textarea:focus{outline:0;border-color:var(--orange)}
.pgi-r{display:flex;gap:14px;align-items:center}
.pgi-r img{width:150px;aspect-ratio:16/10;object-fit:cover;border-radius:8px;background:#f1f2f4;flex:none;border:1px solid #e6e7ea}
.pgi-a{display:flex;flex-wrap:wrap;gap:6px}.pgi-a .mini .i{width:13px;height:13px;margin-right:4px;vertical-align:-2px}
.pgs-f{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}
.imgpick.gal{max-height:60vh;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.imgpick.gal button{border:0;padding:0;background:none;cursor:pointer;border-radius:8px;overflow:hidden}.imgpick.gal button:hover img{border-color:var(--orange)}
@media (max-width:700px){.br-logos{grid-template-columns:1fr}.pgf-g{grid-template-columns:1fr}.pgi-r{flex-direction:column;align-items:flex-start}.pgi-r img{width:100%}.br-side{position:static}}
.pgs .sw input:checked + .sw-t{background:#1f8f4e}

/* ===== Tienda: panel ===== */
.sh-tabs{margin:0 0 18px}
.sh-tabs .tab i{font-style:normal;background:var(--orange);color:#fff;font-size:11px;border-radius:999px;padding:1px 7px}
.sh-pane{display:none}.sh-pane.on{display:block}
.kpi-b{font:inherit;text-align:left;cursor:pointer;border:0;transition:.15s}.kpi-b:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(15,20,30,.09)}
.kpi-b.warn span{color:#b54708}
.sh-paused{grid-column:1/-1;background:#fff4e5;border:1px solid #f9d7a6;border-radius:12px;padding:12px 16px;font-size:13.5px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sh-paused .mini{margin-left:auto}
.sh-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.sh-bar input[type=search],.sh-bar select{font:inherit;font-size:13.5px;border:1.3px solid #d5d6da;border-radius:999px;padding:9px 16px;background:#fff;width:auto}
.sh-bar input[type=search]{flex:1 1 220px;min-width:180px}
.sh-bar .chips{gap:6px;flex:1 1 100%;order:3}.sh-bar .chip{padding:7px 13px;font-size:12.5px}.chip em{font-style:normal;opacity:.6;margin-left:3px;font-weight:600}
.sh-acts{display:flex;gap:8px;margin-left:auto}
.spr{display:grid;grid-template-columns:76px minmax(0,1fr) 130px 150px auto auto;gap:16px;align-items:center;padding:12px 16px!important;margin-bottom:8px}
.spr.off{background:#fafafb}.spr.off .spr-im img{opacity:.45}
.spr-im{position:relative;width:76px;height:76px;border:1px solid #eceef1;border-radius:10px;background:#f6f7f8;padding:0;cursor:pointer;overflow:hidden}
.spr-im img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.spr-im span{position:absolute;left:4px;bottom:4px;background:rgba(17,19,23,.78);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px}
.spr-b{min-width:0}.spr-b b{display:block;font-size:14.5px;line-height:1.25}.spr-b small{font-size:12px;color:var(--muted)}
.spr-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.spr-tags .tag-s{font-size:9.5px;padding:3px 8px}
.spr-f small{display:block;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:4px}
.spr-f input{font:inherit;font-size:14px;font-weight:700;border:1.3px solid #dcdfe4;border-radius:8px;padding:7px 10px;width:100%}
.stp{display:flex;align-items:center;border:1.3px solid #dcdfe4;border-radius:8px;overflow:hidden;background:#fff}
.stp button{border:0;background:#f4f5f7;width:34px;height:36px;font-size:17px;cursor:pointer;font-weight:700;flex:none}.stp button:hover{background:#e9ebee}
.stp input{border:0!important;border-radius:0!important;text-align:center;padding:7px 2px!important;min-width:0;-moz-appearance:textfield}.stp input::-webkit-inner-spin-button{display:none}
.spr-st.low small{color:#b54708}.spr-st.low .stp{border-color:#f5b971}
.spr-st.out small{color:#c42b30}.spr-st.out .stp{border-color:#efa3a5;background:#fff5f5}
.spr .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.spr .sw input:checked + .sw-t,.cp .sw input:checked + .sw-t,.cfg-row .sw input:checked + .sw-t,.pf-vr .sw input:checked + .sw-t{background:#1f8f4e}
@media (max-width:1180px){.spr{grid-template-columns:64px minmax(0,1fr) 120px 140px auto}.spr-im{width:64px;height:64px}.spr .acts{grid-column:2/-1;justify-content:flex-start}}
@media (max-width:640px){.spr{grid-template-columns:64px 1fr 1fr;gap:10px 12px}.spr-b{grid-column:2/-1}.spr-im{grid-row:span 1}.spr-f:first-of-type{grid-column:1/3}.spr .sw{justify-self:end}.spr .acts{grid-column:1/-1}.sh-acts{width:100%;margin:0}.sh-acts .btn{flex:1;justify-content:center}.sh-bar select{flex:1}}
@media (max-width:640px){.spr > .spr-f:nth-of-type(1){grid-column:1/3}}
/* editor de producto */
.mbox.xwide{max-width:900px}
.pf-sec{padding:16px 0;border-top:1px solid #eceef1}.pf-sec:first-child{border-top:0;padding-top:4px}
.pf-sec h4{font-size:15px;margin:0}
.pf-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.pf-h small{font-size:12px;color:var(--muted)}.pf-h .echk{margin:0}
.pf-sec > h4{margin-bottom:2px}
.pf-pics{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;border-radius:12px;transition:.15s}
.pf-pics.drop{outline:2px dashed var(--orange);outline-offset:4px;background:var(--orange-soft)}
.pf-pic{position:relative;aspect-ratio:1/1;border-radius:10px;border:1px solid #e3e5e9;background:#f6f7f8;overflow:hidden;cursor:grab}
.pf-pic img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;pointer-events:none}
.pf-pic:first-child{border:2px solid var(--orange)}
.pf-pic.drag{opacity:.4}.pf-pic.over{outline:2px solid var(--ink)}
.pf-main{position:absolute;top:6px;left:6px;background:var(--orange);color:#fff;font-size:10px;font-weight:800;padding:2px 8px;border-radius:999px}
.pf-pa{position:absolute;inset:auto 0 0;display:flex;justify-content:center;gap:4px;padding:6px;background:linear-gradient(transparent,rgba(17,19,23,.55));opacity:0;transition:.15s}
.pf-pic:hover .pf-pa,.pf-pic:focus-within .pf-pa{opacity:1}
@media (hover:none){.pf-pa{opacity:1}}
.pf-pa button{width:28px;height:28px;border-radius:50%;border:0;background:#fff;font-size:14px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.pf-pa button.x{background:#c42b30;color:#fff}
.pf-up{aspect-ratio:1/1;border:2px dashed #cfd2d8;border-radius:10px;background:#fafafb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:inherit;cursor:pointer;color:var(--ink)}
.pf-up:hover{border-color:var(--orange);background:var(--orange-soft)}.pf-up .i{width:22px;height:22px;color:var(--orange-d)}.pf-up b{font-size:12.5px}.pf-up small{font-size:11px;color:var(--muted)}
.adm-form .fg4{display:grid;grid-template-columns:repeat(4,1fr);gap:0 12px}
.pf-vhint{font-size:12px;color:var(--muted);align-self:end;padding-bottom:10px}
.pf-vrows{display:flex;flex-direction:column;gap:8px}
.pf-vr{display:grid;grid-template-columns:1fr 170px auto 36px;gap:8px;align-items:center}
.pf-vr .sw{margin:0!important;display:flex;align-items:center;gap:8px}.pf-vr .sw-l{font-size:12px;font-weight:600;color:var(--muted)}
.pf-vr .mini,.pf-sr .mini{padding:0;width:34px;height:34px;justify-content:center}
.pf-vadd{display:flex;gap:8px;margin-top:10px}.pf-vadd input{flex:1}
.pf-sr{display:grid;grid-template-columns:180px 1fr 36px;gap:8px;margin-bottom:8px}
@media (max-width:640px){.adm-form .fg4{grid-template-columns:1fr 1fr}.pf-vr{grid-template-columns:1fr 1fr 36px}.pf-vr .sw{grid-column:1/3;grid-row:2}.pf-sr{grid-template-columns:1fr 1fr 36px}.pf-pics{grid-template-columns:repeat(3,1fr)}}
.bk-pct{display:flex;gap:6px;align-items:center}.bk-pct select{flex:1}.bk-pct input{width:80px!important}.bk-pct span{font-weight:800}
.bk-prev{margin-top:14px}.bk-prev table{width:100%}
/* pedidos */
.tag-s.so-new{background:var(--orange);color:#fff}.tag-s.so-prep{background:#e6effc;color:#1d5bbf}.tag-s.so-green{background:#e3f5e8;color:#1a7f37}.tag-s.so-gray{background:#eceef1;color:#5b5f68}.tag-s.so-red{background:#fde8e8;color:#c42b30}
.so{padding:18px 20px!important;margin-bottom:12px}
.so.so-nuevo{border-left:4px solid var(--orange)}.so.so-cancelado{opacity:.7}
.so-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.so-h b{font-size:15px;letter-spacing:.02em}.so-h small{display:block;font-size:12px;color:var(--muted);margin-top:2px}.so-h em{font-style:normal;color:var(--orange-d);font-weight:700}
.so-b{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;margin-top:14px}
.so-it{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:6px 0;font-size:13.5px}.so-it img,.so-ph{width:44px;height:44px;border-radius:8px;background:#f4f5f7;object-fit:contain;mix-blend-mode:multiply;display:flex;align-items:center;justify-content:center}
.so-side{border-left:1px solid #eceef1;padding-left:20px;display:flex;flex-direction:column;gap:12px}
.so-cli small{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.so-cli b{display:block;font-size:14px}.so-cli span{font-size:12.5px;color:var(--muted)}
.so-tot div{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);padding:2px 0}.so-tot .big{color:var(--ink);font-size:14px;border-top:1px solid #eceef1;padding-top:6px;margin-top:4px}.so-tot .big b{font-size:17px}
.so-steps{display:flex;margin:16px 0 4px;counter-reset:s}
.so-steps span{flex:1;position:relative;font-size:11.5px;font-weight:600;color:#9aa0aa;padding-top:16px;text-align:center}
.so-steps span::before{content:'';position:absolute;top:4px;left:0;right:0;height:3px;background:#e6e8eb}
.so-steps span::after{content:'';position:absolute;top:0;left:50%;width:11px;height:11px;margin-left:-5.5px;border-radius:50%;background:#e6e8eb}
.so-steps span.on{color:var(--ink)}.so-steps span.on::before,.so-steps span.on::after{background:#1f8f4e}
.so-f{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}.so-f .btn{padding:10px 18px;font-size:13.5px}.so-f .danger{margin-left:auto}
@media (max-width:760px){.so-b{grid-template-columns:1fr}.so-side{border-left:0;padding-left:0;border-top:1px solid #eceef1;padding-top:12px}.so-steps span{font-size:10px}.so-f .btn{flex:1 1 100%;justify-content:center}.so-f .danger{margin-left:0}}
/* cupones y configuración */
.cp{display:grid;grid-template-columns:auto minmax(0,1fr) auto 34px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eceef1}
.cp.off .cp-c{opacity:.45}
.cp-c{font-family:ui-monospace,Menlo,monospace;font-weight:800;font-size:13px;letter-spacing:.05em;background:var(--orange-soft);color:var(--orange-d);border:1.5px dashed var(--orange);border-radius:8px;padding:6px 10px}
.cp-b b{display:block;font-size:13.5px}.cp-b small{font-size:12px;color:var(--muted)}
.cp .mini{padding:0;width:32px;height:32px;justify-content:center}
.sh-cfgf{max-width:760px}
.cfg-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:4px 0 10px}.cfg-row b{display:block;font-size:15px}.cfg-row span{font-size:12.5px;color:var(--muted)}
.cfg-pays{display:flex;gap:18px;flex-wrap:wrap}
/* ===== Tienda: sitio ===== */
.cpn{display:flex;gap:8px;margin-bottom:12px}.cpn input{flex:1;font:inherit;font-size:13px;border:1.3px solid #d5d6da;border-radius:999px;padding:9px 14px;min-width:0;text-transform:uppercase}.cpn input::placeholder{text-transform:none}
.cpn button{font:inherit;font-size:13px;font-weight:700;border:0;background:var(--ink);color:#fff;border-radius:999px;padding:0 16px;cursor:pointer}
.cpn-x{border:0;background:none;color:var(--muted);text-decoration:underline;font:inherit;font-size:11.5px;cursor:pointer;padding:0 0 0 4px}
.dr-f .disc{color:#1a7f37;font-weight:700}
.dr-note{font-size:12px;color:var(--muted);margin:2px 0 12px;min-height:0}.dr-note:empty{display:none}.dr-note .closed{color:#b54708;font-weight:700}
#dr-go:disabled,#pd-add:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.cof label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:12px 0 5px}
.cof .fg{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cof-pay{display:flex;flex-direction:column;gap:8px}
.cof-pay label{margin:0;display:flex;gap:10px;align-items:center;border:1.4px solid #dcdfe4;border-radius:10px;padding:10px 14px;cursor:pointer;color:var(--ink);font-weight:500}
.cof-pay label:has(input:checked){border-color:var(--orange);background:var(--orange-soft)}
.cof-pay input{width:auto;margin:0;accent-color:var(--orange-d)}
.cof-pay b{display:block;font-size:14px}.cof-pay small{font-size:12px;color:var(--muted)}
.cof-sum{margin-top:14px;background:#f7f8fa;border-radius:10px;padding:10px 14px}.cof-sum div{display:flex;justify-content:space-between;font-size:13px;padding:3px 0}.cof-sum .big{font-size:15px;border-top:1px solid #e6e8eb;margin-top:4px;padding-top:8px}.cof-sum .pay-off span:last-child{color:#1a7f37;font-weight:700}
@media (max-width:520px){.cof .fg{grid-template-columns:1fr}}
.shop-closed{background:#fff4e5;border:1px solid #f9d7a6;border-radius:12px;padding:14px 18px;margin-bottom:20px;display:flex;gap:10px;flex-wrap:wrap;font-size:14px}.shop-closed b{color:#b54708}
.prod.out .art img{opacity:.5;filter:grayscale(.6)}
.prod .art img.alt{position:absolute;inset:8%;width:84%;height:84%;opacity:0;transition:.3s}
.prod .art:hover img.alt{opacity:1}.prod .art:hover img.alt ~ .peek{z-index:2}
.pd-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.92);box-shadow:0 4px 14px rgba(15,20,30,.12);font-size:22px;font-weight:700;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.pd-nav.prev{left:12px}.pd-nav.next{right:12px}
.pd-cnt{position:absolute;bottom:12px;right:12px;background:rgba(17,19,23,.72);color:#fff;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;z-index:2}
.pd-img .tag-s{z-index:2}
.pd-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;scrollbar-width:none}
.pd-thumbs button{flex:0 0 76px;height:76px;border-radius:10px;border:2px solid transparent;background:#f4f5f3;padding:0;cursor:pointer;overflow:hidden}
.pd-thumbs button.on{border-color:var(--orange)}.pd-thumbs img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pd-stock.out{color:#c42b30}.pd-stock.out i{background:#c42b30;box-shadow:0 0 0 4px #fde8e8}
.pd-notify{margin-top:20px}
.pd-closed{font-size:13px;color:#b54708;font-weight:700;margin-top:10px}
/* Turnos reservados para clases */
.slot.cls{background:#eef0fb;border-color:#cdd3f3;color:#4450a8;text-decoration:none}
.oc.cls{background:#eef0fb;border-color:#cdd3f3;color:#3a4596}.oc.cls b{color:#2c3680}.oc.cls:hover{filter:brightness(.97)}
/* Editor de canchas y horarios del profe */
.bk-ed{margin-top:18px;border-top:1px solid #eceef1;padding-top:14px}
.bk-h label{margin:0 0 2px!important;color:var(--ink)!important;font-size:14px!important}.bk-h small{font-size:12px;color:var(--muted);display:block}
.bk-courts{margin:12px 0 10px;gap:6px}.bk-courts .chip{padding:7px 13px;font-size:12.5px}.bk-courts .chip em{font-style:normal;background:var(--orange);color:#fff;border-radius:999px;padding:0 6px;margin-left:4px;font-size:10.5px}
.bk-wrap{overflow-x:auto}
.bk-grid{display:grid;grid-template-columns:52px repeat(7,minmax(46px,1fr));gap:4px;min-width:420px;touch-action:none;user-select:none}
.bk-grid>b{font-size:11.5px;text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:2px 0}
.bk-grid>small{font-size:11.5px;color:var(--muted);font-weight:600;display:flex;align-items:center}
.bkc{height:30px;border-radius:6px;border:1.3px solid #e1e4e8;background:#fff;cursor:pointer;font:inherit;font-size:11px;font-weight:800;color:#fff;padding:0;transition:background .1s}
.bkc:hover:not(:disabled){border-color:var(--orange)}
.bkc.on{background:var(--orange);border-color:var(--orange)}
.bkc.oth{background:#eef0fb;border-color:#cdd3f3;color:#4450a8;cursor:not-allowed;font-size:10px}
.bkc.fx{background:repeating-linear-gradient(45deg,#f4f5f7 0 5px,#eceef1 5px 10px);color:#8b9099;cursor:not-allowed;font-size:9.5px}
.bk-foot{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-top:10px;flex-wrap:wrap}
.bk-sum{font-size:12.5px;flex:1;min-width:220px}.bk-sum span{color:var(--muted)}
.bk-tools{display:flex;gap:6px;flex-wrap:wrap}
.co-bk{font-size:13px!important;line-height:1.35;font-weight:700}
/* Panel del profe: canchas asignadas */
.pf-bk{margin-bottom:16px}
.pf-bk-h{display:flex;gap:12px;align-items:center}.pf-bk-ic{font-size:22px}.pf-bk-h b{display:block;font-size:15px}.pf-bk-h small{font-size:12.5px;color:var(--muted)}
.pf-bk-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:14px}
.pf-bk-days>div{background:#f7f8fa;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px;min-width:0}.pf-bk-days>div.none{opacity:.55}
.pf-bk-days b{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.pf-bk-days span{font-size:12.5px;font-weight:700;line-height:1.3}.pf-bk-days em{display:block;font-style:normal;font-weight:600;font-size:11px;color:var(--orange-d)}
.pf-bk-none{margin-top:12px;background:#fff4e5;border:1px solid #f9d7a6;border-radius:10px;padding:12px 14px;font-size:13.5px;color:#8a4b00}
@media (max-width:760px){.pf-bk-days{grid-template-columns:repeat(2,1fr)}}
.dchk.dis{opacity:.4;cursor:not-allowed}
.tag-s.pf-out{background:#fde8e8;color:#c42b30}
.sf-fit{margin-top:14px;font-size:13px}.sf-ok{color:#1a7f37;font-weight:700}.sf-ok span{color:#b54708;font-weight:600}.sf-no{color:#c42b30;font-weight:700}
.sf-starts{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.sf-starts small{font-size:12px;color:var(--muted);margin-right:4px}
.sf-starts button{font:inherit;font-size:12px;font-weight:700;border:1.3px solid #dcdfe4;background:#fff;border-radius:999px;padding:4px 10px;cursor:pointer}.sf-starts button.on,.sf-starts button:hover{border-color:var(--orange);background:var(--orange-soft)}
#c-add:disabled{opacity:.45;cursor:not-allowed}
@media (max-width:520px){.bk-grid{grid-template-columns:40px repeat(7,minmax(0,1fr));gap:3px;min-width:0}.bk-grid>b{font-size:10px;letter-spacing:0}.bk-grid>small{font-size:10px}.bkc{height:28px;font-size:10px}.bkc.oth,.bkc.fx{font-size:8.5px}}

/* ===== Reservas y tarifas (panel) ===== */
.rv-top{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.rv-nav{display:flex;gap:6px;align-items:center}.rv-nav .mini{height:38px;min-width:38px;justify-content:center}
.rv-nav input{font:inherit;font-size:13.5px;border:1.3px solid #d5d6da;border-radius:999px;padding:7px 14px;background:#fff;width:auto}
.rv-mode{margin:0;width:180px}
.rv-search{position:relative;flex:1 1 260px;min-width:220px}
.rv-search input{width:100%;font:inherit;font-size:13.5px;border:1.3px solid #d5d6da;border-radius:999px;padding:9px 16px;background:#fff}
.rv-res{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border-radius:12px;box-shadow:0 18px 40px rgba(15,20,30,.18);border:1px solid #e6e7ea;z-index:30;max-height:360px;overflow:auto;padding:6px}
.rv-res button{display:grid;grid-template-columns:1fr auto;gap:2px 10px;width:100%;text-align:left;border:0;background:none;font:inherit;padding:9px 12px;border-radius:8px;cursor:pointer}
.rv-res button:hover{background:var(--alt)}.rv-res b{font-size:13.5px}.rv-res span{font-size:12px;color:var(--muted);grid-column:1}.rv-res em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;font-size:11px;font-weight:700;color:var(--orange-d)}
.rv-res em.ok{color:#1a7f37}.rv-res em.ns{color:#c42b30}.rv-res p,.rv-res small{font-size:13px;color:var(--muted);padding:10px 12px;margin:0;display:block}
.rv-k{margin:14px 0 16px}
.rv-acts{display:flex;gap:8px;flex-wrap:wrap}#rv-rain.on{background:#e6eef9;border-color:#9cb9e3;color:#2b5a99}
.rv-courts{margin:0 0 12px;gap:6px}.rv-courts .chip{padding:7px 13px;font-size:12.5px}
.occ.wk thead th{white-space:nowrap}.occ thead th.hol{color:var(--orange-d)}
.oc.ns{background:#fde8e8!important;border-color:#f3b7b9!important;color:#a8282d!important}
.oc.pst{opacity:.75}
.oc.maint{cursor:pointer}
.rd-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.rd-h p{margin-top:2px}
.rd-det{grid-template-columns:repeat(3,1fr)}.rd-det b{font-size:17px}.rd-det span{display:block;font-size:11.5px;color:var(--muted);margin-top:2px}
.rd-det b.g{color:#1f8f4e}.rd-det b.o{color:var(--orange-d)}.rd-det b.r{color:#c42b30}
.rd-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:18px}.rd-acts .btn{padding:10px 18px;font-size:13.5px}.rd-acts .danger{margin-left:auto}
.rd-form{margin-top:16px;padding:16px;border-radius:12px;background:var(--alt)}.rd-form label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:8px 0 5px}
.rd-form input,.rd-form select{width:100%;font:inherit;font-size:14px;border:1.3px solid #dcdfe4;border-radius:8px;padding:8px 10px;background:#fff}
.rd-pm{display:flex;gap:6px;flex-wrap:wrap}.rd-pm label{margin:0!important;cursor:pointer}.rd-pm input{position:absolute;opacity:0;width:1px}
.rd-pm span{display:inline-block;border:1.3px solid #dcdfe4;background:#fff;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700;color:var(--ink)}.rd-pm input:checked+span{border-color:var(--orange);background:var(--orange-soft)}
.fg3{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0 10px}
.nr-sum{margin-top:14px;background:var(--alt);border-radius:10px;padding:10px 14px;font-size:13.5px}.nr-sum .o{color:#b54708;font-size:12.5px}
.bl-warn:not(:empty),.pol-warn{margin-top:12px;background:#fff4e5;border:1px solid #f9d7a6;border-radius:10px;padding:10px 14px;font-size:12.5px;color:#7a4300}
.rn-aff{margin-top:12px;background:var(--alt);border-radius:10px;padding:10px 14px;font-size:13px;max-height:220px;overflow:auto}.rn-aff>b{display:block;margin-bottom:6px}
.rn-aff div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 0;border-top:1px solid #e6e8eb}.rn-aff .mini{padding:5px 9px;min-height:0}
.rv-rainrow{background:#e6eef9;border-radius:10px;padding:8px 10px!important}
/* tarifas */
.rt-panel{margin-top:20px}.rt-tabs{margin:-6px 0 18px}
.rt-pane{display:none}.rt-pane.on{display:block}
.rt-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}
.rt-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #eceef1}
.rt-row b{display:block;font-size:14px}.rt-row small{font-size:12px;color:var(--muted);display:block}.rt-row small select{width:auto;display:inline-block;padding:3px 6px;font-size:12px;margin:0 2px}
.rt-row.sm{padding:8px 0}
.rt-pr{display:flex!important;align-items:center;gap:4px;font-weight:800;margin:0!important;color:var(--ink)!important;font-size:14px!important;flex:none}
.rt-pr input{width:120px!important;font-weight:800;text-align:right;font-size:15px!important;padding:8px 10px!important}.rt-pr.pct input{width:80px!important}
.rt-sw{margin:0!important}.rt-sw .sw-l b{font-size:14px}
.rt-rng{display:flex;gap:6px;align-items:center;margin-top:6px}.rt-rng select{width:auto!important;padding:5px 8px!important;font-size:12.5px!important}.rt-rng span{font-size:12px;color:var(--muted)}
.rt-valley.off .rt-rng,.rt-valley.off .rt-pr{opacity:.4}
.rt-valley .sw input:checked + .sw-t{background:#1f8f4e}
.rt-h{font-size:14px;margin:20px 0 2px}.rt-sub{font-size:12.5px;color:var(--muted);margin:0 0 8px}
.rtp{display:grid;gap:3px;font-size:10.5px}.rtp b{text-align:center;color:var(--muted);font-size:10.5px;text-transform:uppercase}.rtp small{color:var(--muted);font-weight:600;display:flex;align-items:center}
.rtp i{font-style:normal;text-align:center;border-radius:5px;padding:5px 0;font-weight:800;font-size:10.5px}
.k-day{background:#eef0f3;color:#3a404b}.k-valley{background:#e3f5e8;color:#1a7f37}.k-night{background:#2b3240;color:#fff}.k-weekend{background:var(--orange-soft);color:var(--orange-d)}
.rtp-leg{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:10px;font-size:12px}.rtp-leg span{display:flex;align-items:center;gap:6px}.rtp-leg i{width:12px;height:12px;border-radius:3px;display:inline-block}
.sch-prev{margin-top:12px}.sch-prev table{width:100%}
.pol-g{max-width:760px}
.pol-tl{margin-top:16px}.pol-tl small{font-size:12px;color:var(--muted);font-weight:700}.pol-tl div{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.pol-tl span{background:var(--alt);border-radius:6px;padding:4px 8px;font-size:12px;font-weight:700}
@media (max-width:900px){.rt-grid{grid-template-columns:1fr}.rd-det{grid-template-columns:1fr 1fr}.rd-acts .danger{margin-left:0}.fg3{grid-template-columns:1fr 1fr}.rv-mode{width:100%}.rv-nav{flex:1}.rv-nav input{flex:1}}
@media (max-width:520px){.rt-pr input{width:96px!important}.rd-det{grid-template-columns:1fr}.rt-row{flex-wrap:wrap}}
/* ===== Reservas (sitio) ===== */
.r-dep{background:var(--orange-soft);border-radius:10px;padding:10px 12px;font-size:13px;margin:-4px 0 12px;color:var(--ink)}
.rt-next{margin:10px 14px 12px;background:#fff4e5;border:1px solid #f9d7a6;border-radius:10px;padding:10px 12px;font-size:13px;color:#7a4300}
.rates .tag-s{font-size:9.5px;padding:2px 7px;margin-left:4px;vertical-align:1px}
.rt-pane.adm-form,.rt-pane .adm-form{background:none;box-shadow:none;padding:0;border:0}
.rt-row small select{padding-right:22px!important}
.rd-warn{margin-top:14px;background:#fde8e8;border:1px solid #f3b7b9;border-radius:10px;padding:9px 14px;font-size:13px;color:#8d2226}
.tag-s.ns-r{background:#fde8e8;color:#c42b30}
.an.an-ns small{color:#8d2226}
.lc-a{display:flex;gap:6px;flex-wrap:wrap}

/* ===== Caja y cobros ===== */
.cj-top{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.cj-rng{gap:6px}.cj-rng .chip{padding:8px 14px;font-size:12.5px}
.cj-cust{display:flex;gap:6px;align-items:center}.cj-cust input{font:inherit;font-size:13px;border:1.3px solid #d5d6da;border-radius:999px;padding:7px 12px;width:auto}.cj-cust span{font-size:12px;color:var(--muted)}
.cj-acts{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}.cj-acts .btn{padding:10px 18px;font-size:13.5px}
.sh-bar{display:flex;align-items:center;gap:14px;background:#e9f6ee;border:1px solid #bfe3cb;border-radius:14px;padding:12px 16px;margin-bottom:16px;flex-wrap:wrap}
.sh-bar.off{background:#fff4e5;border-color:#f9d7a6}.sh-ic{font-size:20px}.sh-bar>div{flex:1;min-width:220px}.sh-bar b{display:block;font-size:14.5px}.sh-bar small{font-size:12.5px;color:var(--text)}
.sh-bar .btn{padding:10px 18px;font-size:13.5px}
.kpi span.up{color:#1a7f37}.kpi span.dn{color:#c42b30}
.mp-v{text-align:right}.mp-v b{display:block}.mp-v small{font-size:11px;color:var(--muted)}
.mp-tot{margin-top:10px;border-top:1px solid #eceef1;padding-top:8px}.mp-tot div{display:flex;justify-content:space-between;font-size:13px;padding:3px 0}.mp-tot b{font-size:15px}
.cj-exp-b{display:flex;gap:8px;flex-wrap:wrap}
.mv-f{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:4px 0 12px}.mv-f .chips{gap:6px}.mv-f .chip{padding:7px 13px;font-size:12.5px}
.mv-f select,.mv-f input{font:inherit;font-size:13px;border:1.3px solid #d5d6da;border-radius:999px;padding:8px 14px;background:#fff;width:auto}.mv-f input{flex:1;min-width:180px}
.mv-t td{font-size:13px;vertical-align:middle}.mv-t td b{font-weight:600}.mv-a{text-align:right;font-weight:800;white-space:nowrap}
.mv-t tr.in .mv-a{color:#1a7f37}.mv-t tr.out .mv-a{color:#c42b30}
.mv-r{font-size:11.5px;background:var(--alt);border-radius:6px;padding:2px 7px;white-space:nowrap}
.mv-t .sw input:checked + .sw-t{background:#1f8f4e}
.mv-more{text-align:center;margin-top:10px}
.rc-f{gap:6px;margin:0 0 8px}.rc-f .chip{padding:6px 12px;font-size:12px}
.rc-row b{font-size:13.5px}.rc-row .mini.wa{padding:7px 9px}
.sh-row b{font-size:13.5px}
.ac-g{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px;margin-top:6px}
.ac-r{display:grid!important;grid-template-columns:80px 1fr 90px;align-items:center;gap:8px;margin:0!important;color:var(--ink)!important;font-size:13px!important}
.ac-r input{padding:7px 10px!important}.ac-r em{font-style:normal;text-align:right;font-weight:700;font-size:12.5px;color:var(--muted)}
.ac-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.ac-sum div{background:var(--alt);border-radius:10px;padding:10px 12px}.ac-sum span{display:block;font-size:11.5px;color:var(--muted);font-weight:700}.ac-sum b{font-size:17px}
.ac-sum .neg{background:#fde8e8}.ac-sum .neg b{color:#c42b30}.ac-sum .pos{background:#fff4e5}.ac-sum .ok b{color:#1f8f4e}
.qk-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:12px 0}
.qk{position:relative;border:1.4px solid #dcdfe4;background:#fff;border-radius:12px;padding:12px;text-align:left;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:2px}
.qk:hover{border-color:var(--orange)}.qk.on{border-color:var(--orange);background:var(--orange-soft)}.qk b{font-size:13.5px}.qk span{font-size:12.5px;color:var(--muted)}
.qk em{position:absolute;top:-8px;right:-8px;background:var(--orange);color:#fff;font-style:normal;font-weight:800;font-size:12px;border-radius:999px;min-width:24px;height:24px;display:flex;align-items:center;justify-content:center}
.qk-free{display:grid;grid-template-columns:1fr 120px 150px auto;gap:8px}.qk-free .btn{padding:9px 16px;font-size:13px}
.qk-list{margin:12px 0 4px;background:var(--alt);border-radius:10px;padding:10px 14px}.qk-list div{display:flex;justify-content:space-between;font-size:13px;padding:2px 0}.qk-list .t{border-top:1px solid #e3e5e9;margin-top:4px;padding-top:6px;font-size:15px}
#sl-go:disabled{opacity:.5}
.cg-r{display:grid;grid-template-columns:1fr 110px 150px 34px;gap:8px;margin-bottom:8px}.cg-r .mini{padding:0;width:34px;height:34px;justify-content:center}
.lq-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lq-top select{font:inherit;font-size:13px;border:1.3px solid #d5d6da;border-radius:999px;padding:7px 12px;width:auto}
.lq-det td{background:#fafafb}.lq-dw{padding:6px 4px}.lq-dw table{width:100%;font-size:12.5px}
@media (max-width:760px){.cj-acts{margin-left:0;width:100%}.cj-acts .btn{flex:1;justify-content:center}.ac-g{grid-template-columns:1fr}.qk-free{grid-template-columns:1fr 1fr}.qk-free select{grid-column:1/-1}.cg-r{grid-template-columns:1fr 90px 34px}.cg-r select{grid-column:1/3}}
.ac-sum .zero b{color:#1f8f4e}
.qk-m{border:1.3px solid #d5d6da;background:#fff;border-radius:50%;width:22px;height:22px;line-height:1;font-weight:800;cursor:pointer;margin-right:8px;padding:0}
/* Paginado */
.pgr-w:empty{display:none}
.pgr{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid #eceef1;font-size:12.5px;color:var(--muted)}
.pgr-b{display:flex;gap:4px;align-items:center}
.pgr-b button{min-width:32px;height:32px;border-radius:8px;border:1.3px solid #dcdfe4;background:#fff;font:inherit;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;padding:0 8px}
.pgr-b button:hover:not(:disabled){border-color:var(--orange)}.pgr-b button.on{background:var(--ink);border-color:var(--ink);color:#fff}.pgr-b button:disabled{opacity:.35;cursor:default}
.pgr-d{padding:0 4px}.pgr-s{display:flex!important;align-items:center;gap:6px;margin:0!important;font-size:12.5px!important;font-weight:500!important;color:var(--muted)!important}
.pgr-s select{width:auto!important;padding:4px 8px!important;border-radius:8px!important;font-size:12.5px!important;border:1.3px solid #dcdfe4}
@media (max-width:640px){.pgr{justify-content:center}.pgr-i{width:100%;text-align:center}}
.pgr-s select{min-width:64px;padding-right:22px!important}
/* Mostrador: productos */
.qk-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.qk-top input{flex:1 1 200px;font:inherit;font-size:13.5px;border:1.3px solid #d5d6da;border-radius:999px;padding:9px 16px}
.qk-cats{gap:6px}.qk-cats .chip{padding:7px 13px;font-size:12.5px}
.qk-g{max-height:300px;overflow:auto;padding:8px 8px 4px 2px}
.qk span i{font-style:normal;color:#b54708;font-weight:700}.qk:disabled{opacity:.45;cursor:not-allowed}
.qk-more{margin:4px 0 0}.qk-more summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--orange-d);padding:6px 0}.qk-more .qk-free{margin-top:6px}
.pi-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}.pi-top input[type=search]{flex:1 1 180px;font:inherit;font-size:13px;border:1.3px solid #d5d6da;border-radius:999px;padding:8px 14px}
.pi-top .chips{gap:6px}.pi-top .chip{padding:6px 11px;font-size:12px}.pi-top .chip em{font-style:normal;opacity:.6}
.pi-up{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}.pi-up input{width:64px;font:inherit;font-size:13px;border:1.3px solid #d5d6da;border-radius:8px;padding:5px 8px}
.pi-h,.pi-r{display:grid;grid-template-columns:minmax(0,1fr) 130px 110px 80px 56px 34px;gap:8px;align-items:center}
.pi-h{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:0 2px 6px;border-bottom:1px solid #eceef1}
#pi-list{max-height:46vh;overflow:auto;padding:6px 2px}
.pi-r{padding:5px 0}.pi-r.off input,.pi-r.off select{opacity:.5}
.pi-r input,.pi-r select{font:inherit;font-size:13px;border:1.3px solid #dcdfe4;border-radius:8px;padding:7px 9px;width:100%;background:#fff}.pi-r input.low{border-color:#f5b971;background:#fff8ee}
.pi-r .sw{margin:0!important}.pi-r .sw input:checked + .sw-t{background:#1f8f4e}.pi-r .mini{padding:0;width:34px;height:34px;justify-content:center}
@media (max-width:640px){.pi-h{display:none}.pi-r{grid-template-columns:1fr 1fr 34px;border-bottom:1px solid #eceef1;padding:8px 0}.pi-r [data-n]{grid-column:1/-1}}
.pi-r .sw input{position:absolute;opacity:0;width:1px!important;height:1px;padding:0!important;border:0!important}
.pi-r select{color:var(--ink)}
.pi-r .sw{padding:0;background:none;display:flex;justify-content:center}.pi-r .sw-t{display:block;width:40px!important;height:22px!important}
.pi-h,.pi-r{grid-template-columns:minmax(0,1fr) 130px 110px 80px 60px 34px}
.qk-free2{display:grid;grid-template-columns:160px minmax(0,1fr) 70px 110px auto;gap:8px;align-items:end;margin-top:6px}
.qk-free2:has(.qf-n:not([hidden])){grid-template-columns:160px 150px minmax(0,1fr) 70px 110px auto}
.qk-free2 label{margin:0 0 4px!important}.qk-free2 .btn{padding:10px 16px;font-size:13px;height:42px}
.qk-free2 input[readonly]{background:var(--alt);color:var(--muted)}
@media (max-width:760px){.qk-free2,.qk-free2:has(.qf-n:not([hidden])){grid-template-columns:1fr 1fr}.qk-free2 .qf-p,.qk-free2 .qf-n{grid-column:1/-1}.qk-free2 .btn{grid-column:1/-1}}
/* ---------- Clientes v2 ---------- */
.cl-tools{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 14px}
.cl-tools .btn{padding:9px 16px;font-size:13px}
.cl-dupb em{font-style:normal;background:var(--orange);color:#fff;border-radius:999px;padding:1px 8px;margin-left:4px;font-size:11.5px}
.th-s{background:none;border:0;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;white-space:nowrap}
.th-s:hover,.th-s.on{color:var(--orange-d)}
.th-s.on::after{content:attr(data-dir);margin-left:4px}
.cl-nw{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase;background:#e3f5e8;color:#1a7f37;border-radius:999px;padding:2px 7px;margin-left:4px;vertical-align:1px}
.cl-debt{color:#c4292f;font-weight:700;white-space:nowrap}
.cl-cred{color:#1a7f37;font-weight:700;white-space:nowrap}
.tag-s.cl-ut{background:#eef0ff;color:#3a3f9a}
.cl-tgs{white-space:normal;max-width:240px}
tr.cl-opt .cl-n b{color:var(--muted)}
.bd-row .bd-d{display:flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:var(--orange-soft);color:var(--orange-d);font-size:10.5px;text-transform:uppercase;font-weight:700;flex:none}
.bd-row .bd-d b{font-size:18px;line-height:1}
.bd-row.bd-today .bd-d{background:var(--orange);color:#fff}
.bd-row{align-items:center}
.rt-cols{display:flex;align-items:flex-end;gap:10px;height:150px;padding-top:6px}
.rt-cols>div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:3px;font-size:12px}
.rt-cols small{color:var(--muted);text-transform:uppercase;font-size:10.5px;font-weight:700}
.rt-bar{display:flex;flex-direction:column;justify-content:flex-end;width:100%;max-width:44px;min-height:3px;background:var(--orange-soft);border-radius:8px 8px 3px 3px;overflow:hidden}
.rt-bar i{display:block;background:var(--orange)}
.rt-lg{display:flex;gap:16px;font-size:12px;color:var(--muted);margin:10px 0 0}
.rt-lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.rt-lg i.a{background:var(--orange-soft)}.rt-lg i.b{background:var(--orange)}
.src-r{display:grid;grid-template-columns:130px 1fr 30px 82px;align-items:center;gap:10px;font-size:13px;padding:5px 0}
.src-r .pbar{height:8px;background:#eef0f3;border-radius:99px;overflow:hidden}
.src-r .pbar i{display:block;height:100%;background:var(--ink);border-radius:99px}
.src-r b{text-align:right}.src-r small{color:var(--muted);font-size:11.5px}
.rt-once{margin-top:14px;background:var(--orange-soft);border-radius:12px;padding:10px 14px;align-items:center}
.cl-ct{font-size:13px;color:var(--muted);margin:2px 0 0}
.cl-tg{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:6px}
.cl-head{align-items:flex-start}
.cf-k{grid-template-columns:repeat(4,1fr)!important;margin:16px 0}
.cf-k .kpi b{font-size:21px}
.cf-tabs{margin-bottom:12px}
.cf-tabs .cnt{background:#c4292f;color:#fff}
.cl-tl{position:relative;padding-left:4px}
.tl-i{display:flex;gap:12px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line)}
.tl-i:last-child{border-bottom:0}
.tl-ic{width:30px;height:30px;border-radius:50%;background:#f3f4f6;display:grid;place-items:center;font-size:14px;flex:none}
.tl-i b{display:block;font-size:13.5px}.tl-i small{display:block;font-size:12px;color:var(--muted)}
.tl-i.r b{color:#8d2226}.tl-i.r .tl-ic{background:#fde8e8}
.tl-i.g .tl-ic{background:#e3f5e8}
.cc-sum{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.cc-sum>div{background:#f6f7f9;border-radius:12px;padding:10px 14px}
.cc-sum small{display:block;font-size:11.5px;color:var(--muted);text-transform:uppercase;font-weight:700}
.cc-sum b{font-size:22px}.cc-sum b.r{color:#c4292f}.cc-sum b.g{color:#1a7f37}
.cl-tagp{display:flex;gap:6px;flex-wrap:wrap}
.cl-tagp .chip{font-size:12.5px;padding:6px 12px}
.dp-g{padding:12px 14px;margin-bottom:10px}
.dp-o{display:flex!important;gap:10px;align-items:flex-start;padding:6px 0;cursor:pointer;font-weight:500!important}
.dp-o input{width:auto;margin-top:3px}
.dp-o b{display:block;font-size:13.5px}.dp-o small{font-size:12px;color:var(--muted)}
.ci-sum{display:flex;gap:6px;margin:14px 0 8px}
.ci-t tr.dup td{color:var(--muted)}.ci-t tr.bad td{color:#c4292f}
.ms-skip{display:block;color:var(--orange-d)!important;margin-top:2px}
.rd-cnote{margin-top:12px;background:#eef0ff;border:1px solid #d6d9fb;border-radius:10px;padding:9px 14px;font-size:13px;color:#2c3070}
.rd-cnote span{display:flex;gap:5px;flex-wrap:wrap}
.rd-cnote em,.rd-cn em{font-style:normal;font-size:10.5px;font-weight:800;text-transform:uppercase;background:#fff;border-radius:999px;padding:2px 8px;margin-right:4px}
.rd-cnote p{margin:4px 0 0}
.rd-warn.info{background:#eef0ff;border-color:#d6d9fb;color:#2c3070}
.rd-cn{display:block;margin-top:4px}
@media (max-width:700px){.cf-k{grid-template-columns:1fr 1fr!important}.src-r{grid-template-columns:100px 1fr 26px}.src-r small{display:none}}
.cl-tools{align-items:center}
.cl-tools select{width:auto;min-width:0;padding:9px 34px 9px 14px;border-radius:999px;font-size:13px}
.cl-tools .pf-search{width:230px}
.cl-sp{flex:1}
@media (max-width:700px){.cl-tools select,.cl-tools .pf-search{flex:1 1 100%;max-width:none;width:100%}.cl-sp{display:none}}
/* ---------- Mensajes v2 ---------- */
.ms-nav{margin-bottom:14px}
.ms-nav .cnt{background:#c4292f;color:#fff}
.ms-pb{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:10px;align-items:center}
.ms-pb.sch{background:#f6f7f9}
.ms-fil{margin-top:10px;font-size:13px}
.ms-fil summary{cursor:pointer;font-weight:700;color:var(--orange-d)}
.ms-fil .fg2{margin-top:8px}
.ms-cnt{margin:12px 0 2px;font-size:13.5px}
.ms-cnt .mini{margin-left:8px}
.ms-cnt small{display:block;margin-top:3px}
.ms-rl{max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:6px 10px;margin-top:8px}
.ms-ri{display:flex!important;gap:8px;align-items:center;padding:4px 0;font-weight:500!important;font-size:13px;cursor:pointer}
.ms-ri input{width:auto;margin:0}.ms-ri small{color:var(--muted)}
.ms-chs{display:flex;flex-direction:column;gap:0}
.ms-chs .echk{margin:4px 0}
.ms-vars{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:6px}
.ms-vars .chip,.ms-tpl .chip{font-size:12px;padding:5px 11px}
.ms-tsave{border-style:dashed!important}
#ms-cpw select{width:auto;margin:4px 0 6px}
#ms-when{margin-top:4px;max-width:260px}
.ms-side{align-self:start;position:sticky;top:90px}
.ms-prev[hidden],.ms-eprev[hidden]{display:none}
.ms-eprev{margin-top:14px}
.ms-eprev>small{display:block;font-size:11.5px;font-weight:700;color:#5b5f68;margin-bottom:8px}
.em-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;font-size:13.5px}
.em-h{background:var(--ink);padding:14px 18px;color:#fff}
.em-h img{height:34px;width:auto;display:block;filter:brightness(0) invert(1)}
.em-s{font-weight:800;font-size:15px;padding:14px 18px 4px}
.em-b{padding:4px 18px 16px;white-space:pre-wrap;line-height:1.5}
.em-f{border-top:1px solid var(--line);padding:10px 18px;font-size:11.5px;color:var(--muted)}
.qr-bar{height:8px;background:#eef0f3;border-radius:99px;overflow:hidden;margin-top:12px}
.qr-bar i{display:block;height:100%;background:var(--orange);border-radius:99px}
.qr-st{font-size:13px;margin:6px 0 12px}
.qr-cur{padding:14px 16px}
.qr-cur .cl-head b{display:block}.qr-cur .cl-head small{font-size:12px;color:var(--muted)}
.qr-a{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;align-items:center}
.qr-all{margin-top:12px;font-size:13px}.qr-all summary{cursor:pointer;font-weight:700}
.qr-i{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}
.qr-i span{flex:1}.qr-i>em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--muted)}
.qr-i.sent>em{color:#1a7f37}.qr-i.skip>em{color:#c4292f}
.md-l{max-height:240px;overflow:auto}
.ma-sum{background:var(--orange-soft);border-radius:12px;padding:10px 14px;margin-bottom:8px}
.ma-r{align-items:center}.ma-r.off b,.ma-r.off small{opacity:.55}
.ma-r .ma-t{font-style:italic}
.ma-r .sw{flex:none}
.mh-r{width:100%;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;font:inherit;cursor:pointer;color:inherit}
.mh-r:hover b{color:var(--orange-d)}
@media (max-width:900px){.ms-side{position:static}}
.ms-nav .cnt{display:inline-block;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:800;line-height:1.5;margin-left:4px}
.ms-nav .cnt[hidden]{display:none}
/* ---------- Reportes v2 ---------- */
.rp-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:6px}
.rp-bar .btn{padding:9px 16px;font-size:13px}
.rp-cus{display:flex;gap:6px;align-items:center;font-size:13px}
.rp-cus input{width:auto;padding:8px 12px;border-radius:999px;font-size:13px}
.rp-sub{font-size:13px;color:var(--muted);margin:4px 0 14px}
.rp-k{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
.rp-k strong{display:block;font-size:22px;font-weight:800;letter-spacing:-.02em;margin:4px 0 2px;white-space:nowrap}
.rp-d{font-size:12px;font-weight:700;color:var(--muted)}
.rp-d.up{color:#1a7f37}.rp-d.dn{color:#c4292f}
.rp-goal{display:flex;gap:18px;align-items:flex-start;margin-bottom:16px}
.rp-goal .an{flex:1;border:0;align-items:center}
.rg-g{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.rg-h{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;margin-bottom:6px}
.rg-h span{color:var(--muted);font-weight:600}
.rg-bar{position:relative;height:12px;background:#eef0f3;border-radius:99px;overflow:visible}
.rg-bar i{display:block;height:100%;background:var(--orange);border-radius:99px}
.rg-bar em{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);border-radius:2px}
.rp-goal small{display:block;font-size:12.5px;color:var(--text);margin-top:7px}
.rp-goal small .o{color:#c4292f;font-weight:700}
.ev-c{display:flex;gap:8px;align-items:flex-end;height:220px;padding-top:10px}
.ev-m{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;gap:4px;min-width:0}
.ev-b{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px}
.ev-b i{display:block;width:40%;max-width:18px;min-height:2px;border-radius:4px 4px 0 0}
.ev-b i.in{background:var(--orange)}.ev-b i.out{background:#5b5f68}
.ev-m small{font-size:10.5px;text-transform:uppercase;font-weight:700;color:var(--muted)}
.ev-m b{font-size:11.5px;font-weight:700}.ev-m b.neg{color:#c4292f}
.ev-m.cur small{color:var(--ink)}
.rt-lg i.c{background:#5b5f68}
.rp-tot{display:flex;justify-content:space-between;font-size:13.5px;padding:8px 0 0;border-top:1px solid var(--line);margin-top:8px}
.rp-t td small{font-size:11.5px}
.rp-occ{display:inline-block;width:60px;height:6px;background:#eef0f3;border-radius:99px;overflow:hidden;margin-right:8px;vertical-align:middle}
.rp-occ i{display:block;height:100%;background:var(--orange)}
.rp-note{font-size:13px;color:var(--text);margin:10px 0 0}
.rp-mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.rp-mini>div{background:#f6f7f9;border-radius:12px;padding:10px 14px}
.rp-mini small{display:block;font-size:11.5px;color:var(--muted);font-weight:700}
.rp-mini b{display:block;font-size:20px;margin:2px 0}
.rp-mini span{display:block;font-size:12px;color:var(--text);margin-top:2px}
.rp-mini .mini{margin-top:4px}
.rp-top{align-items:center}.rp-top>b{margin-left:auto}
.pm-dows{display:flex;gap:4px 14px;flex-wrap:wrap}
.pm-r{align-items:center}
@media print{.rp-bar{display:none}}
.rp-k{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))!important}
.rp-k strong{font-size:20px}
.rp-t{box-shadow:none}
.rp-t th,.rp-t td{padding:10px 8px!important;font-size:13px}
.rp-t th{font-size:10.5px!important}
.rp-t td b{white-space:nowrap}
.rp-t td:not(:first-child){white-space:nowrap}
@media (max-width:700px){.ev-c{gap:3px;height:180px}.ev-m b{display:none}.ev-m small{font-size:9px}.rt-lg span:last-child{display:none}}
/* ---------- Tarifas por grupos y franjas ---------- */
.rg-card{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:12px;background:#fff}
.rg-top{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.rg-name{flex:1;font-weight:800;font-size:15px!important;border:0!important;border-bottom:1px dashed #d5d8de!important;border-radius:0!important;padding:4px 2px!important;background:none!important}
.rg-days{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin-bottom:6px}
.rg-days .chip{padding:5px 10px;font-size:12px}
.rg-hol{margin:0 0 0 8px!important;font-size:12px!important}
.rg-band{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto 24px;gap:6px 10px;align-items:center;padding:9px 0;border-top:1px solid #eceef1}
.rg-when{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:13px;font-weight:700}
.rg-when select{width:auto!important;padding:4px 8px!important;font-size:13px!important;margin:0!important}
.rg-to{color:var(--muted);font-weight:600;font-size:12.5px}
.rg-fix{color:var(--ink)}
.rg-bn{padding:7px 10px!important;font-size:13px!important;margin:0!important}
.rg-band .rt-pr input{width:104px}
.rg-x{border:0;background:#f1f2f4;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:15px;line-height:1;color:#5b5f68}
.rg-x:hover{background:#fde8e8;color:#c4292f}
.rg-tt{grid-column:1/-1;font-size:11.5px;color:var(--muted);margin-top:-2px}
.rg-tt .o{color:#c4292f;font-weight:700}
.rtp-no{background:#fde8e8;color:#c4292f}
@media (max-width:520px){.rg-band{grid-template-columns:1fr auto 24px}.rg-bn{grid-column:1/-1;order:3}}
.rg-when select{padding:4px 28px 4px 10px!important;min-width:88px}
.rd-st{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:999px;vertical-align:1px}
.rd-st.live{background:#e3f5e8;color:#1a7f37}.rd-st.done{background:#eceef1;color:#5b5f68}
.rd-past{font-size:12.5px;color:var(--muted);margin:10px 0 0}
.rg-when{display:grid!important;grid-template-columns:auto auto;justify-content:start;gap:5px 8px}
.rg-when>span{font-size:12.5px;color:var(--muted);font-weight:700}
.rg-when .rg-fix{color:var(--ink);font-size:13px;padding:4px 0}
.rg-when select{min-width:110px}
/* ---------- Reglas jerárquicas, grupos de canchas, precio dinámico ---------- */
.rt-how{background:#f6f7f9;border-radius:12px;padding:10px 14px;font-size:12.5px;line-height:1.5;margin-bottom:12px;display:flex;flex-direction:column;gap:4px}
.lv{display:inline-block;font-style:normal;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:999px}
.lv-all{background:#eceef1;color:#3a404b}.lv-grp,.lv-list{background:#e6efff;color:#2448a8}.lv-court{background:var(--orange-soft);color:var(--orange-d)}
.rg-card.rgl-grp,.rg-card.rgl-list{border-left:4px solid #8aa7ec}.rg-card.rgl-court{border-left:4px solid var(--orange)}.rg-card.rgl-all{border-left:4px solid #c9cdd4}
.rg-card.rg-new{box-shadow:0 0 0 3px var(--orange-soft)}
.rg-lv{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex:none}
.rg-row{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:12px;align-items:start;margin-bottom:6px}
.rg-lbl{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:2px 0 4px}
.rg-sc{width:100%!important;padding:7px 10px!important;font-size:13px!important}
.rg-when{grid-template-columns:auto auto!important}
.rt-side{position:sticky;top:90px;align-self:start}
.rt-pvc{margin-bottom:10px}.rt-pvc .chip{font-size:12px;padding:5px 11px}
.rtw{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.rtw>div{display:flex;flex-direction:column;gap:3px;min-height:420px}
.rtw b{font-size:10.5px;text-transform:uppercase;color:var(--muted);text-align:center}
.rtw-src{font-size:9.5px;text-align:center;color:var(--muted);font-weight:700;text-transform:uppercase}
.rtw i{font-style:normal;border-radius:5px;padding:3px 2px;font-size:10.5px;font-weight:800;text-align:center;display:flex;flex-direction:column;justify-content:center;flex-basis:0;min-height:24px}
.rtw i em{font-style:normal;font-weight:600;font-size:9.5px;opacity:.8}
.nr-opts{display:flex;flex-direction:column;gap:6px;margin-top:12px;max-height:60vh;overflow:auto}
.nr-opts .an{width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;cursor:pointer;font:inherit}
.nr-opts .an:hover{border-color:var(--orange)}
.dyn-b{display:flex;flex-direction:column;gap:8px}
.dyn-r{display:flex;gap:12px;align-items:flex-start;background:#f6f7f9;border-radius:12px;padding:10px 12px}
.dyn-r b{display:block;font-size:13.5px}.dyn-r small{font-size:12.5px;color:var(--text)}
.dyn-r select{width:auto!important;display:inline-block;padding:2px 24px 2px 8px!important;font-size:12.5px!important;margin:0 2px!important}
.r-dyn{text-align:right;margin-top:4px}
.ct-cgs{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0 0}
.ct-rules{margin-top:10px;border-top:1px solid var(--line);padding-top:8px;display:flex;flex-direction:column;gap:5px}
.ct-rule{display:flex;gap:8px;align-items:center;font-size:12.5px}
.ct-rules .mini{align-self:flex-start;margin-top:4px}
.cgl-r{align-items:center}
.cg-cs{display:flex;flex-wrap:wrap;gap:4px 16px;margin:6px 0}
.occ.irr{table-layout:fixed;min-width:0}
.occ td.oc-gap{background:repeating-linear-gradient(45deg,#f6f7f9,#f6f7f9 4px,#eef0f3 4px,#eef0f3 8px);border-radius:8px}
table.slots.irr{table-layout:fixed;min-width:0}
table.slots td.gap{background:#f6f7f9}
.bkc-no{display:block;background:#f6f7f9;border-radius:6px}
@media (max-width:900px){.rg-row{grid-template-columns:1fr}.rt-side{position:static}.rtw>div{min-height:300px}}
.cgl-r>div:first-child{flex:1;min-width:0}.cgl-r .lc-a{flex:none;flex-wrap:nowrap}
.rg-cl{margin-top:6px}.rg-cl .chip{font-size:12px;padding:5px 10px}
@media (max-width:700px){.cgl-r{flex-wrap:wrap}.cgl-r>div:first-child{flex:1 1 100%}.cgl-r .lc-a{flex-wrap:wrap}}
.cg-all{flex:1 1 100%;display:flex;gap:6px;margin-bottom:4px}
.rt-dirtybar{position:sticky;bottom:12px;z-index:5;display:flex;gap:10px;align-items:center;background:var(--ink);color:#fff;border-radius:14px;padding:10px 12px 10px 18px;margin:14px 0 0;box-shadow:0 8px 24px rgba(15,20,30,.25);font-weight:700;font-size:14px}
.rt-dirtybar span{flex:1}
.rt-dirtybar .btn-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.rt-dirtybar[hidden]{display:none}
.rt-acts{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 6px}
.danger-l{color:#c4292f!important}
.nr-mode{margin-top:10px}
.rg-closed{font-size:13px;font-weight:700;color:var(--muted);padding:0 10px;align-self:center}
.rtw i u{text-decoration:none;font-size:9px;font-weight:700;opacity:.85}
.rt-pvx{background:#fff4e0;border:1px solid #f5d49a;border-radius:10px;padding:8px 12px;font-size:12.5px;margin-bottom:10px;color:#6b4a10}
.rtw>div{min-height:0}
.rtw i{flex:none!important;min-height:0;overflow:hidden;line-height:1.15;gap:1px;padding:2px}
.rtw i em{font-size:9.5px}
.occ .oc{position:relative}
.oc-du{position:absolute;top:3px;right:4px;font-style:normal;font-size:9px;font-weight:800;line-height:1;padding:2px 4px;border-radius:5px;background:rgba(255,255,255,.75);color:#3a404b;letter-spacing:-.01em}
.oc-du.du60{background:#e6efff;color:#2448a8}.oc-du.du90{background:#fff1d6;color:#8a5a00}.oc-du.du120{background:#f3e3ff;color:#6b2a9a}
.oc.gone .oc-du,.oc.rain .oc-du{opacity:.5}
.lg-du{display:inline-flex;gap:4px;align-items:center}
.lg-du .oc-du{position:static}
.slot{position:relative}.slot .oc-du{top:2px;right:3px}

.rt-how .rt-hrs{display:block;margin-top:6px;font-size:12.5px}.rt-how .rt-hrs a{font-weight:600;text-decoration:underline;cursor:pointer}
#pol-hrs-go{font-weight:600;text-decoration:underline}

.oc b,.oc small{display:block;width:0;min-width:100%;text-align:center}

.occ.g30{min-width:0;max-width:none}
.occ.g30 thead th.h30{text-align:left;padding:4px 0 4px 2px;border-left:1.5px solid #e3e6eb;font-size:11px;white-space:nowrap}
.occ.g30 thead th.hh{color:#b3b8c2;font-weight:600;border-left-style:dashed;font-size:10px}
.occ.g30 thead th.now{color:var(--orange-d);border-left-color:var(--orange)}
.occ.g30 tbody th small{white-space:normal;display:block;max-width:120px;line-height:1.25}

.sch-prev tr.sch-g td{background:#f7f8fa;padding-top:10px;padding-bottom:6px}.sch-prev tr.sch-g small{color:var(--muted);font-size:11.5px;font-weight:500}
.sch-in{display:flex;align-items:center;gap:4px;max-width:130px}.sch-in span{font-weight:700;font-size:13px}.sch-in input{width:100%;padding:6px 8px;font-weight:700;font-size:13.5px;border:1.3px solid var(--line,#e3e6eb);border-radius:8px}
.sch-in input[data-man]{border-color:var(--orange);background:#fff8ec}

.rt-filt{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 12px}.rt-filt .rf-l{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-right:4px}
.rt-filt .chip small{opacity:.6;font-weight:600;margin-left:2px}
.rf-note{font-size:12.5px;color:var(--muted);margin:-4px 0 12px}.rf-note a,.rf-empty a{color:var(--orange-d);font-weight:600;text-decoration:underline}
.rf-empty{border:1.5px dashed #e3a1a1;background:#fff6f6;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.rf-empty span{font-size:13px;color:var(--muted)}.rf-empty div{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:4px}

.pol-cli{background:#f7f8fa;border-radius:12px;padding:12px 14px;margin-top:6px}.pol-cli small,.pol-tl small{display:block;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.pol-cli p{display:flex;gap:10px;margin:6px 0;font-size:13.5px;line-height:1.45}.pol-cli i{font-style:normal;flex:none}
.pol-cs{display:flex;flex-wrap:wrap;gap:6px}.pol-cs span{background:#f1f2f5;border-radius:8px;padding:5px 9px;font-size:12.5px}.pol-tl a{color:var(--orange-d);text-decoration:underline;text-transform:none}
#f-pol select:disabled{opacity:.5}
.u-l{color:var(--orange-d);text-decoration:underline;font-weight:600}
/* ---- Grilla de canchas: diseño nuevo ---- */
.occ-ph{align-items:center}.occ-ph>.occ-tt{flex:1;min-width:220px}
.occ-ic{width:52px;height:52px;border-radius:50%;background:#123a5c;color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 6px 16px rgba(18,58,92,.25)}
.occ-ph h3.pt{font-size:22px;letter-spacing:-.02em;margin-bottom:2px}
.occ-ph .rv-acts .mini{padding:9px 14px;border-radius:12px;font-weight:700;background:#fff;border:1.3px solid #e6e8ec;box-shadow:0 2px 6px rgba(17,19,23,.04)}
.occ{border-spacing:4px 6px}
.occ thead th{background:#f4f5f7;box-shadow:4px 0 0 #f4f5f7;padding:10px 0 10px 6px!important;color:#5b6270;font-size:12.5px}
.occ thead th:first-child{border-radius:12px 0 0 12px;background:#f4f5f7;padding-left:14px!important;color:#2a2f38;font-size:13px}
.occ thead th:last-child{border-radius:0 12px 12px 0;box-shadow:none}
.occ.g30 thead th.h30{border-left:none;font-size:12.5px}
.occ.g30 thead th.hf{color:#151a22;font-weight:800}
.occ.g30 thead th.hh{color:#8d939e;font-weight:600;font-size:12px}
.occ.g30 thead th.now{color:#fff;background:#123a5c;border-radius:8px}
.occ tbody th{padding:0 6px 0 0}
.oc-ct{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:var(--oc-h,62px);background:#fff;border:0;border-radius:10px;padding:0 6px 0 10px;cursor:pointer;text-align:left;font:inherit}
.oc-ct:hover{background:#f6f7f9}.oc-ct b{display:block;font-size:14.5px;color:#151a22}.oc-ct small{display:block;font-size:11.5px;color:#6b717c;white-space:normal;line-height:1.25}
.oc-ct i{font-style:normal;font-size:22px;color:#9aa0aa;line-height:1}
.oc{height:var(--oc-h,62px);border-radius:10px;flex-direction:row;justify-content:flex-start;gap:8px;padding:6px 8px;container-type:inline-size;text-align:left;box-shadow:0 1px 2px rgba(17,19,23,.06)}
.oc .oc-tx{display:flex;flex-direction:column;min-width:0;flex:1;gap:1px}
.oc .oc-tx b,.oc .oc-tx small{width:auto;min-width:0;max-width:100%;text-align:left;display:block}
.oc .oc-tx b{font-size:12.5px;padding-right:20px}.oc .oc-tx small{font-size:11px;opacity:.85}
.oc-av{width:28px;height:28px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;letter-spacing:.02em}
.av-web{background:#2f66e8}.av-wa{background:#1f9a55}.av-ot{background:#5c6576}.av-fx{background:#8a5a00;color:#fff3d6}.av-cls{background:#fff;font-size:14px}
@container (max-width:104px){.oc-av{display:none}.oc{gap:0}}
@container (max-width:70px){.oc .oc-tx b{padding-right:0}.oc .oc-du{display:none}}
.oc.res{background:#18233d;color:#fff}
.oc.fix{background:#f7c548;color:#2a1e00}.oc.fix small{opacity:.8}
.oc.free{background:#e8f7ee;border:1.3px solid #bfe6cd;color:#16803c;justify-content:center;box-shadow:none}
.oc.free .oc-tx{align-items:center;flex:none}.oc.free .oc-tx small{font-size:12.5px;font-weight:800;opacity:1;text-align:center}
.oc.free .oc-add{display:none}.oc.free:hover{background:#d7f1e1;border-color:#16803c}.oc.free:hover .oc-fl{display:none}.oc.free:hover .oc-add{display:block}
.oc.gone{background:#f1f2f4;border:1.3px dashed #d5d8de;color:#9097a3;justify-content:center;box-shadow:none}
.oc.gone .oc-tx{align-items:center;flex:none}.oc.gone .oc-tx small{font-size:11px;font-weight:600;text-align:center}
.oc.gone .oc-du{opacity:.45}
.oc.cls{background:#eceffd;border:1.3px solid #cdd3f3;color:#3a4596}
.oc.rain{background:#e6eef9;border:1.3px solid #c4d6ef;color:#3d6aa8;justify-content:center}.oc.rain .oc-tx{align-items:center;flex:none}
.oc.maint{background:repeating-linear-gradient(45deg,#f4f5f7 0 6px,#e9ebef 6px 12px);color:#6b717c;justify-content:center;box-shadow:none}.oc.maint .oc-tx{align-items:center;flex:none}
.oc.ns{background:#fde8e8!important;border:1.3px solid #f3b7b9!important;color:#a8282d!important}.oc.ns .oc-av{background:#e05a5f}
.oc.pst:not(.ns){opacity:.62}
.oc.live{box-shadow:0 0 0 2px #22c55e,0 4px 12px rgba(34,197,94,.25)}
.oc-live{font-style:normal;color:#5ee08f;font-weight:700}.oc.fix .oc-live{color:#0f7a35}
.occ td.oc-gap{background:repeating-linear-gradient(45deg,#f7f8fa 0 5px,#eef0f3 5px 10px);border-radius:10px}
.oc-du{top:5px;right:6px;font-size:9.5px;padding:2px 5px;border-radius:6px}
.oc.res .oc-du{background:#fff;color:#18233d}.oc.res .oc-du.du60{background:#dbe7ff;color:#1d3f9a}.oc.res .oc-du.du120{background:#efdcff;color:#5d2290}
.occ-leg{align-items:center;gap:10px 18px;padding-top:12px;border-top:1px solid #eef0f3;margin-top:12px!important;font-size:12.5px;color:#4a505b}
.occ-leg i{width:18px;height:18px;border-radius:5px}
.lg-res{background:#18233d}.lg-live{background:#18233d;box-shadow:0 0 0 2px #22c55e}.lg-fix{background:#f7c548}.lg-free{background:#e8f7ee;border:1.3px solid #bfe6cd}
.lg-gone{background:#f1f2f4;border:1.3px dashed #c9cdd4}.lg-cls{background:#eceffd;border:1.3px solid #cdd3f3}.lg-ns{background:#fde8e8;border:1.3px solid #f3b7b9}
.lg-rain{background:#e6eef9;border:1.3px solid #c4d6ef}.lg-blk{background:repeating-linear-gradient(45deg,#f4f5f7 0 3px,#dfe1e5 3px 6px)}
.occ-leg .lg-du{margin-left:auto;padding-left:16px;border-left:1px solid #e6e8ec;gap:6px}
.occ-leg .lg-du .oc-du{font-size:11px;padding:3px 7px}
@media (max-width:700px){.occ-ic{width:40px;height:40px}.occ-ph h3.pt{font-size:18px}.occ-leg .lg-du{margin-left:0;border-left:0;padding-left:0}}
.occ tbody th{box-shadow:4px 0 0 #fff;z-index:2}
@media (max-width:700px){.occ.g30 col:first-child{width:104px!important}.oc-ct{padding:0 2px 0 6px}.oc-ct i{display:none}.oc-ct b{font-size:13px}.oc-ct small{font-size:10.5px}}
.occ.wk thead th:first-child,.occ.wk tbody th{width:64px}.occ.wk tbody th b{font-size:13px;padding-left:6px}

/* Pantalla completa de la grilla */
.fs-nav{display:none;align-items:center;gap:6px;margin-right:6px}.fs-clock{font-weight:800;font-size:18px;margin-left:8px;color:#123a5c;font-variant-numeric:tabular-nums}
.fs-btn{display:inline-flex;align-items:center;gap:6px}
body.occ-fs{overflow:hidden}
body.occ-fs .occ-panel{position:fixed;inset:0;z-index:900;margin:0;border-radius:0;overflow:auto;padding:18px 22px;display:flex;flex-direction:column}
body.occ-fs .occ-panel .occ-wrap{overflow:auto;flex:1 1 auto;min-height:0;max-height:none}
body.occ-fs .fs-nav{display:inline-flex}
body.occ-fs .occ-ph{margin-bottom:10px}
body.occ-fs #occ{table-layout:fixed;min-width:0}
body.occ-fs .occ.g30 thead th.hh{font-size:10px}
body.occ-fs .occ.g30 thead th{font-size:11.5px}
body.occ-fs .fs-btn{background:#123a5c!important;color:#fff!important;border-color:#123a5c!important}
body.occ-fs #modal,body.occ-fs .modal,body.occ-fs .toast,body.occ-fs #toast{z-index:1000}
body.occ-fs .oc .oc-tx b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2}
body.occ-fs .oc .oc-tx b{font-size:13px}body.occ-fs .oc .oc-tx small{font-size:11.5px}

/* Encabezado de la grilla siempre visible */
.occ-wrap{overflow:auto;max-height:calc(100vh - 110px);overscroll-behavior:contain}
.occ thead th{position:sticky;top:0;z-index:3}
.occ thead th:first-child{left:0;z-index:4}
.occ thead tr:first-child th{box-shadow:4px 0 0 #f4f5f7,0 -6px 0 #fff}
.occ thead th:last-child{box-shadow:0 -6px 0 #fff}
.occ.g30 thead th.now{z-index:3}
.rv-courts{align-items:center}.rv-all{display:inline-flex;align-items:center;gap:4px;background:#123a5c!important;color:#fff!important;border-color:#123a5c!important}
.rv-all:hover{filter:brightness(1.15)}.rv-sep{width:1px;height:22px;background:#e3e6eb;margin:0 4px}
/* Clientes: barra de filtros compacta */
.cl-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-4px 0 6px}
.cl-search{flex:1 1 320px;max-width:460px;display:flex;align-items:center;gap:8px;background:#fff;border:1.3px solid var(--line,#e3e6eb);border-radius:999px;padding:0 14px;color:#8b919c}
.cl-search:focus-within{border-color:var(--orange)}
.cl-search input{border:0!important;outline:0;background:transparent;padding:10px 0!important;font-size:13.5px;width:100%;box-shadow:none!important}
.cl-bar .btn{padding:9px 16px;font-size:13px}
.cl-fbtn{display:inline-flex;align-items:center;gap:6px}.cl-fbtn.on{border-color:var(--ink);background:#f4f5f7}
.cl-fbtn em{font-style:normal;background:var(--orange);color:#111;border-radius:999px;font-size:11px;font-weight:800;min-width:18px;height:18px;display:inline-grid;place-items:center;padding:0 5px}
.cl-more{font-size:18px;line-height:1;padding:7px 13px!important}
.cl-pop-w{position:relative}
.cl-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:40;background:#fff;border:1px solid #e6e8ec;border-radius:14px;box-shadow:0 14px 34px rgba(17,19,23,.14);padding:14px;min-width:240px;display:flex;flex-direction:column;gap:6px}
.cl-pop[hidden]{display:none}
.cl-pop label{font-size:12px;font-weight:700;color:var(--muted);margin-top:4px}
.cl-pop select{width:100%;border-radius:10px;padding:9px 12px;font-size:13px}
.cl-pop .mini{align-self:flex-start;margin-top:6px}
.cl-menu{padding:6px;min-width:200px;gap:2px}
#cl-mpop{left:auto;right:0}
.cl-menu button{display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;background:none;border:0;border-radius:9px;padding:9px 12px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;color:var(--ink)}
.cl-menu button:hover,.cl-menu button.on{background:#f4f5f7}.cl-menu button span{color:var(--muted);font-weight:700;font-size:12px}
.cl-tabs{display:flex;align-items:center;gap:4px;border-bottom:1.5px solid #eceef1;margin:6px 0 14px;flex-wrap:wrap}
.cl-tab{background:none;border:0;border-bottom:2.5px solid transparent;margin-bottom:-1.5px;padding:10px 12px;font:inherit;font-size:14px;font-weight:700;color:#6b717c;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.cl-tab span{background:#eef0f3;color:#4a505b;border-radius:999px;font-size:11.5px;padding:1px 8px}
.cl-tab i{font-style:normal;font-size:11px}
.cl-tab:hover{color:var(--ink)}.cl-tab.on{color:var(--ink);border-bottom-color:var(--orange)}.cl-tab.on span{background:var(--ink);color:#fff}
.cl-act{display:flex;gap:6px;flex-wrap:wrap;margin:-6px 0 14px}
.cl-act button{background:#fff4e0;border:1px solid #f6d49a;color:#7a4b00;border-radius:999px;padding:5px 12px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.cl-act .cl-clr{background:none;border-color:transparent;color:var(--muted);text-decoration:underline}
#cl-kpis .kpi-b{cursor:pointer;text-align:left;transition:.15s}#cl-kpis .kpi-b:hover{box-shadow:0 6px 18px rgba(17,19,23,.08);transform:translateY(-1px)}
@media (max-width:700px){.cl-search{flex-basis:100%;max-width:none}.cl-sp{display:none}}
.cl-search{flex:1 1 220px}@media (max-width:700px){.cl-tab{padding:9px 9px;font-size:13.5px}.cl-tabs{gap:0}}
/* ---- Kit de barras limpias (todas las vistas del panel) ---- */
.uk-tabs{display:flex;align-items:center;gap:2px;flex-wrap:wrap;border-bottom:1.5px solid #eceef1;margin-bottom:14px;background:none;padding:0}
.uk-tabs>.cl-tab,.uk-tabs .uk-more{background:none!important;border:0!important;border-bottom:2.5px solid transparent!important;border-radius:0!important;margin:0 0 -1.5px!important;padding:10px 12px!important;font:inherit;font-size:14px!important;font-weight:700!important;color:#6b717c!important;box-shadow:none!important;display:inline-flex;align-items:center;gap:6px;height:auto;cursor:pointer}
.uk-tabs>.cl-tab:hover,.uk-tabs .uk-more:hover{color:var(--ink)!important}
.uk-tabs>.cl-tab.on,.uk-tabs .uk-more.on{color:var(--ink)!important;border-bottom-color:var(--orange)!important}
.uk-tabs .cl-tab .cnt,.uk-tabs .cl-tab em,.uk-tabs .uk-more .cnt,.uk-tabs .uk-more em{font-style:normal;background:#eef0f3;color:#4a505b;border-radius:999px;font-size:11.5px;padding:1px 8px;margin:0}
.uk-tabs .cl-tab.on .cnt,.uk-tabs .cl-tab.on em,.uk-tabs .uk-more.on .cnt,.uk-tabs .uk-more.on em{background:var(--ink);color:#fff}
.uk-tabs .uk-more i{font-style:normal;font-size:11px}
.cl-menu>.uk-mi,.cl-menu>button.uk-mi{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:9px 12px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer;white-space:nowrap}
.cl-menu>.uk-mi:hover,.cl-menu>.uk-mi.on{background:#f4f5f7}
.cl-menu>.uk-mi .cnt,.cl-menu>.uk-mi em{font-style:normal;color:var(--muted);font-weight:700;font-size:12px;background:none}
.cl-menu>.uk-mi[hidden]{display:none}
.uk-r{left:auto!important;right:0}
.uk-dots{font-size:18px!important;line-height:1!important;padding:7px 13px!important;letter-spacing:1px}
.uk-pw .cl-fbtn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;font-size:13px}
.uk-pw .cl-fbtn em{font-style:normal;background:var(--orange);color:#111;border-radius:999px;font-size:11px;font-weight:800;min-width:18px;height:18px;display:inline-grid;place-items:center;padding:0 5px}
.uk-pw .cl-fbtn em[hidden]{display:none}
.uk-act{margin:8px 0 12px}
/* Caja y reportes: barra en un renglón */
.cj-top{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}.cj-top .uk-tabs{margin:0;flex:1 1 auto}
.cj-acts{display:flex;align-items:center;gap:8px;margin-left:auto}
.rp-bar{align-items:flex-end}.rp-bar .uk-tabs{margin:0}
.mv-f{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mv-f .cl-search{flex:0 1 300px}.mv-f .uk-tabs{margin:0;border:0}
.sh-bar .cl-search{flex:1 1 240px;max-width:380px}.sh-bar .uk-tabs{flex-basis:100%;order:5;margin:4px 0 0}
.sh-bar .sh-acts{display:flex;gap:8px;align-items:center}
/* Encabezados con descripción + botón: botón normal, sin ocupar tanto */
.adm-bar{align-items:center}.adm-bar .btn-o{padding:10px 18px;font-size:13.5px;box-shadow:0 4px 12px rgba(245,158,11,.25)}.adm-bar .btn-o .ar{display:none}
/* Reservas: días más compactos */
.adm-days .day{padding:7px 0 6px;min-width:62px}.adm-days .day strong{font-size:19px}.adm-days .day small{font-size:10.5px}
.rv-search .cl-search{max-width:none;width:100%}
.sh-bar .sh-acts{margin-left:auto}
.adm-bar .cl-search{flex:0 1 300px}
/* Ventanas: barra de scroll finita y discreta + aviso «Hay más abajo» */
.mbox{scrollbar-width:thin;scrollbar-color:#cfd3da transparent}
.mbox::-webkit-scrollbar{width:8px}.mbox::-webkit-scrollbar-track{background:transparent;margin:14px 0}.mbox::-webkit-scrollbar-thumb{background:#cfd3da;border-radius:8px;border:2px solid #fff}.mbox::-webkit-scrollbar-button{display:none;height:0}
.m-more{position:sticky;bottom:-30px;height:0;margin:0 -28px;pointer-events:none;z-index:5;opacity:0;transition:opacity .2s}
.mbox.has-more .m-more{opacity:1}
.m-more::before{content:'';position:absolute;left:0;right:0;bottom:calc(30px + var(--mm-off,0px));height:64px;background:linear-gradient(rgba(255,255,255,0),#fff 85%)}
.m-more button{position:absolute;left:50%;bottom:calc(40px + var(--mm-off,0px));transform:translateX(-50%);pointer-events:auto;border:0;background:var(--ink);color:#fff;font:inherit;font-size:12.5px;font-weight:700;padding:7px 14px;border-radius:999px;box-shadow:0 6px 16px rgba(17,19,23,.25);cursor:pointer;display:flex;gap:6px;align-items:center;white-space:nowrap}
.m-more button span{animation:mmore 1.4s ease-in-out infinite}
@keyframes mmore{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
.mbox:not(.has-more) .m-more button{pointer-events:none}
/* Listas con scroll dentro de una ventana: barra finita y discreta */
.mbox .qk-g,.mbox [style*="overflow"]{scrollbar-width:thin;scrollbar-color:#d7dae0 transparent}
.mbox .qk-g::-webkit-scrollbar{width:6px}.mbox .qk-g::-webkit-scrollbar-thumb{background:#d7dae0;border-radius:6px}.mbox .qk-g::-webkit-scrollbar-track{background:transparent}
.mbox .qk-g::-webkit-scrollbar-button{display:none}
#fr-d{width:auto;border-radius:10px;padding:8px 12px}.fr-r .tag-s{margin:0}
/* Acuerdo del profe */
.deal-f{margin-top:18px;border-top:1px solid #eceef1;padding-top:14px}.deal-f>label{font-weight:700}
.deal-o{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:6px 0 10px}
.deal-o label{margin:0;cursor:pointer}.deal-o input{position:absolute;opacity:0;pointer-events:none}
.deal-o span{display:block;border:1.5px solid #e3e6eb;border-radius:12px;padding:10px 12px;height:100%;transition:.15s}.deal-o b{display:block;font-size:13.5px}.deal-o small{display:block;font-size:11.5px;color:var(--muted);font-weight:500;margin-top:2px;line-height:1.35}
.deal-o input:checked+span{border-color:var(--orange);background:#fff8ec;box-shadow:0 0 0 1px var(--orange)}
.deal-v [hidden]{display:none}
.co-deal{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0;margin:-4px 0 12px;font-size:13px}.co-deal small{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;width:100%}.co-deal span{font-weight:700}
.lq-deal{color:var(--orange-d);text-decoration:underline dotted}
@media (max-width:700px){.deal-o{grid-template-columns:1fr}}
.og-hold{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:6px 0 10px}.og-hold label{margin:0;cursor:pointer}.og-hold input{position:absolute;opacity:0;pointer-events:none}
.og-hold span{display:block;border:1.5px solid #e3e6eb;border-radius:12px;padding:9px 11px;height:100%}.og-hold b{display:block;font-size:13px}.og-hold small{display:block;font-size:11.5px;color:var(--muted);line-height:1.35;margin-top:2px}
.og-hold input:checked+span{border-color:var(--orange);background:#fff8ec;box-shadow:0 0 0 1px var(--orange)}
.og-cf{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:12px}
tr.og-out td{background:#fff4f4}tr.og-out .og-in{text-decoration:line-through;color:#a8282d}
@media (max-width:700px){.og-hold{grid-template-columns:1fr}}
.mt-list{margin-top:10px;display:flex;flex-direction:column;gap:4px}.mt-list>small{font-size:11.5px;color:var(--muted);font-weight:600}
.mt-r{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-size:12.5px;background:#f7f8fa;border-radius:8px;padding:6px 10px}
.mt-r em{font-style:normal;font-weight:700;color:var(--muted);white-space:nowrap}.mt-r.won em{color:#1a7f37}.mt-r.lost em{color:#a8282d}
@media (max-width:700px){.mt-r{grid-template-columns:1fr}}
.at-hold{color:#1a7f37;font-weight:700}.at-drop{color:#c4292f;font-weight:700}
/* Días y horarios del torneo */
.tsch-rows{display:flex;flex-direction:column;gap:6px;margin-top:4px}
.tsr{display:grid;grid-template-columns:90px 1fr auto 1fr auto;gap:8px;align-items:center;background:#f7f8fa;border-radius:10px;padding:6px 10px}
.tsr b{font-size:13px}.tsr select{padding:7px 10px;border-radius:8px;font-size:13px}.tsr span{font-size:12px;color:var(--muted)}.tsr .echk{margin:0;font-size:12.5px;white-space:nowrap}
.tsr.off select{opacity:.4;pointer-events:none}.tsr.off b{color:var(--muted);text-decoration:line-through}
@media (max-width:700px){.tsr{grid-template-columns:1fr 1fr;}.tsr b{grid-column:1/-1}.tsr>span{display:none}}
.og-dur{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.og-dur label{margin:0}.og-dur small{display:block;font-size:11.5px;color:var(--muted);font-weight:600;margin-bottom:4px}.og-dur select{width:100%;padding:8px 10px;border-radius:9px}
.og-fx2{display:grid;gap:10px;overflow-x:auto;padding-bottom:6px}.og-col{display:flex;flex-direction:column;gap:6px;min-width:0}.og-col .og-ct{background:#f4f5f7;border-radius:8px;padding:6px 10px;font-size:12.5px}
.og-fx2 .og-m em{display:block;font-style:normal;font-weight:800;font-size:12px;color:var(--ink)}
.og-day small{color:var(--muted);font-weight:600;font-size:12px}
.og-live{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1.5px solid #ffd79a;background:#fffaf0;margin-bottom:16px}.og-live b{display:block}.og-live span{font-size:13px;color:var(--text)}.og-live .o{display:inline;color:var(--orange-d)}
.og-lv{display:inline-block;margin-left:6px;border:1px solid #d9dce2;background:#fff;border-radius:999px;font:inherit;font-size:11px;font-weight:700;padding:2px 8px;cursor:pointer}.og-lv.on{background:#e8f7ee;border-color:#22c55e;color:#16803c}
.og-rw s{color:var(--muted);font-weight:500;margin-left:3px}
@media (max-width:700px){.og-dur{grid-template-columns:1fr}.og-live{flex-direction:column;align-items:flex-start}}
.oc.res.trn{background:#4b2a7a;color:#fff}.av-trn{background:#fff;font-size:14px}.lg-trn{background:#4b2a7a}
.oc.res.trn .oc-du{background:#efe3ff;color:#4b2a7a}
.ins-out{opacity:.55}.ins-out b{text-decoration:line-through}
.og-cp{margin-left:10px;transform:scale(.85);transform-origin:right center}
.at-go{background:none;border:0;padding:0;font:inherit;cursor:pointer}.at-go u{text-underline-offset:2px}.at-go:hover u{color:#0f5a26}
.og-scount{align-self:center;font-weight:800;font-size:13px;padding:6px 12px;border-radius:999px;background:#fff4dc;color:#8a5a00;white-space:nowrap}.og-scount.full{background:#e9f7ee;color:#1a7f37}
.og-snote{margin:0 0 14px}.og-seed:disabled{opacity:.35;cursor:not-allowed}
.og-chip.spin{min-width:var(--w);color:var(--muted);border-style:dashed;animation:ogspin .14s linear infinite alternate}
@keyframes ogspin{from{transform:translateY(-1px)}to{transform:translateY(1px)}}
.og-draw.rolling .og-z h4::after{content:' · sorteando…';color:var(--orange);font-weight:700;text-transform:none;letter-spacing:0}
.mini.fe-on{background:#fff4dc;border-color:var(--orange);color:#8a5a00}.mini[data-fe]:disabled{opacity:.4;cursor:not-allowed}
.og-fill{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 4px;padding:10px 12px;border:1.5px dashed #e3e5ea;border-radius:10px;font-size:13px;color:var(--muted)}.og-fill span{font-weight:700;margin-right:4px}.og-fill .mini:disabled{opacity:.4;cursor:not-allowed}
.og-test{font-style:normal;font-size:10.5px;font-weight:700;background:#eef0f4;color:#5b6170;border-radius:999px;padding:2px 7px;margin-left:4px}
.zone tr.qm td:first-child{box-shadow:inset 3px 0 0 #f6cf7d}
.og-qinfo{font-size:13px;margin:0 0 12px}
.og-adv{margin-top:6px}.og-adv .og-f span b{color:var(--ink)}
.og-chip.no{opacity:.4;cursor:not-allowed;border-style:dashed}
.og-tb-cfg{margin-top:14px}.og-tb-cfg select{width:100%}
.og-sec{margin-bottom:16px}.og-sec td:nth-child(n+3),.og-sec th:nth-child(n+3){text-align:center}
.og-sec td:nth-child(2),.og-sec th:nth-child(2){text-align:left}
.cr-real{display:flex;align-items:center;height:42px;padding:0 12px;border-radius:8px;background:#f4f5f7;font-weight:700;color:var(--ink);cursor:help}
.cr-web{display:block;font-style:normal;font-size:11px;color:#1a7f37;font-weight:700;margin-top:2px}
.og-hcnt{display:flex;gap:8px;flex-wrap:wrap;align-self:center}.og-cupo{background:#eef0f4;color:#3c4150}.og-cupo.full{background:#fdecec;color:#b42318}
.tr-acts{display:flex;gap:8px;flex-wrap:wrap}.tr-live[hidden]{display:none}
.btn.danger,.btn-line.danger{color:#c4292f;border-color:#f3c2c4}.btn.danger-b{background:#c4292f;color:#fff;border-color:#c4292f;box-shadow:none}
.cx-list{margin:8px 0 10px 18px;font-size:14px;line-height:1.6}
.tag-s.red{background:#fdecec;color:#b42318}
.q-ini{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:var(--orange);color:#111317;font-weight:800;font-size:22px}
.fig-calc{margin-top:14px;background:#f4f5f7;border-radius:10px;padding:12px 14px;font-size:13px;display:flex;flex-direction:column;gap:3px}.fig-calc small{color:var(--muted);font-size:12px}
.fig-ovr{margin-top:12px;font-size:13.5px}.fig-ovr summary{cursor:pointer;font-weight:700}
.q-add{margin-top:14px;border-top:1px solid #eef0f4;padding-top:14px}
.og-m.dg{cursor:grab}.og-m.dg:active{cursor:grabbing}.og-m.lock{opacity:.75}
.og-m.sel{outline:2px solid var(--ink);outline-offset:1px;opacity:.55}
.og-m.swap{outline:1.5px dashed #9aa0aa;outline-offset:1px}
.og-m.ghost{background:#f2fbf5;border:1.5px dashed #6cc58e;color:#1a7f37;cursor:pointer;min-height:40px}.og-m.ghost em{color:#1a7f37!important}.og-m.ghost span{font-weight:700}
.og-m.ghost.warn{background:#fff8e8;border-color:#f0c060;color:#8a5a00}.og-m.ghost.warn em{color:#8a5a00!important}
.og-m.over{outline:2.5px solid var(--orange)!important;outline-offset:1px}
.og-mvh{font-size:13px;background:#f4f5f7;border-radius:8px;padding:9px 12px;margin:4px 0 6px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.og-mvh.on{background:#fff4dc}
/* Tienda: buscador de paletas, quiz, avisos y encargos */
.pf-find{background:#fff;border:1px solid #eceef2;border-radius:14px;padding:16px 18px;margin:0 0 18px}.pf-find .pf-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.pf-find .pf-h span{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted)}
.pf-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 18px}.pf-r small{display:block;font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}.pf-r .chips{gap:6px}.pf-r .chip{padding:6px 12px;font-size:12.5px}
.pf-help{font-size:12px;color:var(--muted);margin:10px 0 0}.pf-none{grid-column:1/-1;display:flex;flex-direction:column;gap:4px}
.pd-attrs{display:flex;gap:4px;flex-wrap:wrap;margin:2px 0 6px}.pd-attrs span{font-size:10.5px;font-weight:700;background:#f4f5f7;border-radius:999px;padding:2px 7px;color:#4a4f5a}
.prod .add.notify{font-size:15px}
.shop-bands{display:grid;gap:14px}.band.alt{background:#f4f5f7}.band.alt h3,.band.alt p{color:var(--ink)}
.qz h3{margin:4px 0 14px}.qz-ops{display:grid;gap:8px;margin-bottom:12px}.qz-o{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px;border:1.5px solid #e3e5ea;background:#fff;border-radius:12px;padding:12px 14px;font:inherit;cursor:pointer}.qz-o:hover{border-color:var(--orange);background:#fffaf0}.qz-o b{font-size:15px}.qz-o span{font-size:13px;color:var(--muted)}
.qz-r{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;border:1px solid #eceef2;border-radius:12px;padding:10px;margin-bottom:8px;color:inherit;text-decoration:none}.qz-r:hover{border-color:var(--orange)}.qz-r img{width:72px;height:72px;object-fit:cover;border-radius:8px}.qz-r small{font-size:11.5px;color:var(--orange-d,#b86e00);font-weight:700}.qz-r b{display:block;font-size:14.5px}.qz-r span{display:block;font-size:12.5px;color:var(--muted)}.qz-r em{font-style:normal;font-weight:800;font-size:13px}
.qz-tip{font-size:13px;background:#f4f5f7;border-radius:10px;padding:10px 12px;margin-top:6px}
.wf-opts{display:grid;gap:8px;margin:8px 0 12px}.wf-opts .og-f{cursor:pointer}
.pd-so{font-size:12.5px;color:var(--muted);margin:8px 0 0}.pd-so .lnk{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--ink);text-decoration:underline;cursor:pointer}
.wt-acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.wt-e .tag-s{margin-top:4px;display:inline-block}.an.wt-old{opacity:.6}
.pf-ptip{font-size:12.5px;background:#fff8e8;border-radius:8px;padding:8px 10px;margin:0 0 8px}
.ev-sw{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.ev-sw b{display:block;font-size:15px}.ev-sw span{font-size:13px;color:var(--muted)}
.ev-off{opacity:.45;pointer-events:none;filter:grayscale(.4)}
/* Ranking */
.rk-bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:22px}.rk-bar input{max-width:260px;flex:1 1 200px}
.rk-podium{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:end;margin-bottom:22px}.rk-podium:empty{display:none}
.rk-pd{display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff;border:1px solid #eceef2;border-radius:16px;padding:18px 12px 0;font:inherit;cursor:pointer;color:var(--ink);overflow:hidden}
.rk-pd b{font-size:15px;text-align:center}.rk-pd small{font-size:12px;color:var(--muted)}.rk-pd .rk-pts{font-weight:800;font-size:14px;color:var(--orange-d,#b86e00)}
.rk-step{display:block;width:100%;margin-top:10px;background:#f4f5f7;font-weight:900;font-size:26px;padding:10px 0;text-align:center}
.rk-pd.p1 .rk-step{background:var(--orange);color:#111317;padding:22px 0}.rk-pd.p2 .rk-step{padding:14px 0}.rk-pd:hover{border-color:var(--orange)}
.rk-tbl-w{padding:6px 10px;overflow-x:auto}.rk-tbl{min-width:560px}.rk-tbl tbody tr{cursor:pointer}.rk-tbl tbody tr:hover{background:#fafbfc}.rk-tbl .c{text-align:center}.rk-tbl .r{text-align:right}
.rk-pos{font-weight:800;width:36px}.rk-pl{display:flex;align-items:center;gap:10px}.rk-ph{border-radius:50%;object-fit:cover}
.rk-d{font-size:11px;font-weight:800}.rk-d.up{color:#1a7f37}.rk-d.dn{color:#c4292f}.rk-d.eq{color:#b5b8be}.rk-d.new{color:#8a5a00;background:#fff4dc;border-radius:999px;padding:2px 6px;font-size:9.5px}
.rk-empty{padding:16px;font-size:14px}
.rk-info{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.rk-pr{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f1f3;font-size:14px}.rk-pr:last-child{border:0}
.rk-prof .rk-ph-h{display:flex;gap:14px;align-items:center;margin-bottom:14px}.rk-prof h3{margin:0}
.rk-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));gap:8px;margin-bottom:12px}.rk-k div{background:#f4f5f7;border-radius:10px;padding:10px;text-align:center}.rk-k b{display:block;font-size:20px}.rk-k small{font-size:11.5px;color:var(--muted)}
.rk-pt{font-size:13.5px;margin:0 0 10px}.rk-h{margin:14px 0 6px;font-size:14px}.rk-hist div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f0f1f3;font-size:14px}.rk-hist small{display:block;font-size:12px;color:var(--muted)}.rk-hist b{color:#1a7f37}
@media (max-width:700px){.rk-info{grid-template-columns:1fr}.rk-podium{gap:8px}.rk-pd{padding:12px 6px 0}.rk-pd b{font-size:12.5px}}
@media (min-width:861px) and (max-width:1140px){.menu{gap:12px!important;font-size:12.5px!important}.nav .logo-img{max-width:112px}.nav-r{gap:8px}.nav-r .btn-o{padding-left:14px;padding-right:14px}}
.og-add input{flex:1 1 200px}.og-plh{font-size:12.5px;color:var(--muted);margin:8px 0 0}
.og-pl{display:block;background:none;border:0;padding:2px 0 0;font:inherit;font-size:11.5px;color:#4a4f5a;cursor:pointer;text-align:left}.og-pl:hover{color:var(--ink);text-decoration:underline}.og-pl.none{color:#b86e00;font-weight:700}
.jg-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.jg-tools input{flex:1 1 220px;max-width:320px}.jg-sug{margin-bottom:16px;border:1.5px solid #fde3a7}.jg-adj{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.jg-adj input{flex:1 1 120px}
.pf-rk{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;background:#f4f5f7;border-radius:10px;padding:12px 14px;margin:14px 0}.pf-rk b{font-size:14px}.pf-rk span{display:block;font-size:12.5px;color:var(--muted)}.pf-rk span b{font-size:12.5px;color:var(--ink)}
.jg-tools select{flex:0 1 240px;width:auto}.jg-tools .mini{align-self:center}
@media (min-width:1141px) and (max-width:1400px){.menu{gap:20px!important}}
.wa-float[hidden],.soc a[hidden],.ci[hidden],a[hidden]{display:none!important}
/* Quincho */
.qn-packs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:6px}.qn-packs label{display:block;cursor:pointer}.qn-packs input{position:absolute;opacity:0}.qn-packs span{display:flex;flex-direction:column;border:1.5px solid #e3e5ea;border-radius:10px;padding:9px 11px}.qn-packs b{font-size:13.5px}.qn-packs small{font-size:12px;color:var(--muted)}.qn-packs input:checked+span{border-color:var(--orange);background:#fff8ec}
.qn-starts{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}.qs{border:1.5px solid #e3e5ea;background:#fff;border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.qs.on{background:var(--ink);color:#fff;border-color:var(--ink)}.qs.busy{background:#f4f5f7;color:#b5b8be;text-decoration:line-through;cursor:not-allowed}
.qn-sum{background:#f4f5f7;border-radius:10px;padding:10px 12px;font-size:13px;margin-top:10px;display:flex;flex-direction:column;gap:2px}.qn-sum span{color:var(--muted)}
.ev-courts h3,.ev-courts p{color:var(--ink)}
.rv-space{margin-bottom:14px;max-width:260px}#v-reservas.qn-mode>:not(.rv-space):not(#qn-wrap){display:none!important}
.qn-pend{margin:16px 0;border:1.5px solid #fde3a7}
.qn-week{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:8px;overflow-x:auto;margin-top:6px}.qn-day>b{display:block;font-size:12.5px;margin-bottom:6px}.qn-day.today>b{color:var(--orange-d,#b86e00)}
.qn-tl{position:relative;height:380px;background:#f6f7f9;border-radius:10px}.qn-free{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;color:#b5b8be;font-weight:700}
.qn-b{position:absolute;left:4px;right:4px;border:0;border-radius:8px;padding:6px 7px;text-align:left;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:1px;overflow:hidden;background:#e9f7ee;border-left:3px solid #1a7f37}.qn-b em{font-style:normal;font-weight:800;font-size:11.5px}.qn-b span{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qn-b small{font-size:10.5px;color:var(--muted)}
.qn-b.pendiente{background:#fff4dc;border-left-color:var(--orange)}.qn-b.realizada{background:#eef0f4;border-left-color:#9aa0aa}
/* ---------- Sponsors ---------- */
.nav-n{font-style:normal;margin-left:auto;background:var(--orange);color:#111317;font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px}.nav-n:empty{display:none}
#adm-nav button.on .nav-n{background:#111317;color:#fff}
.sh-tabs .tab i:empty{display:none}
.sp-pane{display:none}.sp-pane.on{display:block}
#sp-kpis{margin-bottom:18px}
.spk-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.spk{display:flex;flex-direction:column;gap:8px;padding:18px}
.spk.off .sp-im img{opacity:.35;filter:grayscale(1)}
.spk-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.spk-top .sp-im{height:52px;display:flex;align-items:center}.spk-top .sp-im img{max-height:46px;max-width:150px;object-fit:contain}.spk-top .sp-word{font-size:18px;height:auto}
.spk .sw input:checked + .sw-t{background:#1f8f4e}
.spk-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:4px}.spk-h b{font-size:16px;margin-right:2px}
.spk-plan{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:#eceef1;color:#5b5f68}
.spk-plan.p0{background:#fbecc4;color:#8a5d00}.spk-plan.p1{background:#e7e9ee;color:#4a505b}.spk-plan.p2{background:#f4e1d2;color:#8a4b1f}
.sps{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:3px 8px;border-radius:999px;background:#eceef1;color:#5b5f68}
.sps.ok{background:#e3f5e8;color:#1a7f37}.sps.w{background:var(--orange-soft);color:var(--orange-d)}.sps.x{background:#fde4e4;color:#b42328}
.spk-l{font-size:13px;color:var(--muted);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spk-l a{color:var(--orange-d);font-weight:600}
.spk .acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:6px}
.spk.sp-new{align-items:center;justify-content:center;min-height:180px;cursor:pointer;gap:6px}.spk.sp-new b{font-size:30px;line-height:1}
.sp-al{margin-bottom:18px;padding:18px 20px}.sp-al .pt{margin-bottom:6px}
.sp-al-r{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.sp-al-r:first-of-type{border-top:0}
.sp-al-r > div:nth-child(2){flex:1;display:flex;flex-direction:column;min-width:0}.sp-al-r small{color:var(--muted);font-size:12.5px}
.sp-al-r .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.sp-al-i{width:10px;height:10px;border-radius:50%;flex:none;background:var(--orange)}.sp-al-i.x{background:#d23a3f}
.sp-sec{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line)}
.chk{display:flex!important;align-items:center;gap:8px;font-weight:600;font-size:13.5px;cursor:pointer;text-transform:none!important;letter-spacing:0!important}.chk input{width:auto!important;margin:0}
.sp-pays{display:flex;flex-direction:column;max-height:180px;overflow:auto;margin-top:6px}
.sp-pays > div{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}.sp-pays span{flex:1}
.sp-plist{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}
.sp-pl .efoot small{font-size:12px}.sp-plc{display:flex;flex-direction:column;gap:6px;margin:4px 0 8px}
.sp-ld{display:flex;justify-content:space-between;gap:14px;padding:16px 18px;margin-bottom:10px}.sp-ld.new{border-left:4px solid var(--orange)}
.sp-ld > div:first-child{display:flex;flex-direction:column;gap:3px}.sp-ld small{color:var(--muted);font-size:12.5px}.sp-ld p{margin:4px 0 0;font-size:13.5px}
.sp-ld .acts{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;max-width:300px}
@media (max-width:700px){.sp-ld,.sp-al-r{flex-direction:column;align-items:stretch}.sp-al-r .acts,.sp-ld .acts{justify-content:flex-start;max-width:none}.sp-plist{grid-template-columns:1fr}}
/* Sponsors en el sitio */
.foot-sp{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.1)}
footer .foot-sp .wrap{display:flex;align-items:center;gap:26px;padding-top:18px;padding-bottom:18px;flex-wrap:wrap}
.foot-sp small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#8b9099}
.fsp-row{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.fsp-row .sp-txt img{max-height:28px;max-width:110px;filter:brightness(0) invert(1);opacity:.65;transition:.2s}.fsp-row a:hover img{opacity:1}
.fsp-row .sp-nm{color:#cfd2d8;font-weight:800;text-transform:uppercase;font-size:14px}
.sp-strip{margin-top:44px;padding:22px 26px;border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;background:#fff}
.sp-strip small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.ssp-row{display:flex;align-items:center;gap:34px;flex-wrap:wrap}
.ssp-row .sp-txt img{max-height:34px;max-width:120px;filter:grayscale(1);opacity:.75;transition:.2s}.ssp-row a:hover img{filter:none;opacity:1}
.ssp-row .sp-nm{font-weight:900;text-transform:uppercase;font-size:16px;color:var(--ink)}
.ssp-row.big{gap:22px}.ssp-row.big .sp-txt{background:#fff;border-radius:12px;box-shadow:0 6px 22px rgba(15,20,30,.07);width:170px;height:100px;display:grid;place-items:center}.ssp-row.big .sp-txt img{max-height:44px;filter:none;opacity:.92}
.spx-logo .sp-txt{display:grid;place-items:center;width:100%;height:100%}.spx-logo .sp-txt img{max-width:62%;max-height:54px}
.spx-logo .sp-nm{font-weight:900;text-transform:uppercase;font-size:18px;color:var(--ink);letter-spacing:-.01em}
.sp-steps{display:flex;flex-direction:column;gap:16px;margin-top:8px}
.sp-steps > div{display:flex;gap:14px;align-items:flex-start}.sp-steps b{flex:none;width:34px;height:34px;border-radius:50%;background:var(--orange);color:#111317;display:grid;place-items:center;font-weight:900}
.sp-steps span{display:flex;flex-direction:column;color:var(--muted);font-size:14.5px}.sp-steps strong{color:var(--ink);font-size:16px}
.spw .evt{cursor:default}
@media (max-width:700px){.ssp-row.big .sp-txt{width:calc(50% - 11px)}.sp-strip{padding:18px}}
@media (max-width:700px){.sp-al-i{display:none}}
/* Agenda del quincho: todas las horas */
.qn-week{grid-template-columns:44px repeat(7,minmax(110px,1fr))}
.qn-hrs .qn-tl{background:none}.qn-hrs span{position:absolute;right:6px;transform:translateY(-50%);font-size:11px;font-weight:700;color:#9aa0aa}.qn-hrs span:first-child{transform:none}
.qn-tl{height:auto}
.qn-slot{position:absolute;left:0;right:0;border:0;border-top:1px solid #e6e8ec;background:transparent;font:inherit;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.qn-slot:first-child{border-top:0}
.qn-slot span{font-size:11px;font-weight:700;color:var(--orange-d,#b86e00);opacity:0;transition:.15s}
.qn-slot:not(:disabled):hover{background:#fff4dc}.qn-slot:not(:disabled):hover span{opacity:1}
.qn-slot:disabled{cursor:default}.qn-slot.past{background:repeating-linear-gradient(135deg,#eef0f3 0 6px,#f6f7f9 6px 12px)}
.qn-b{z-index:1;margin-top:1px}
.qn-hrs span,.qn-hrs span:first-child{transform:translateY(3px)}
/* ---------- Página del profe ---------- */
.cph{position:relative;color:#fff;background:linear-gradient(120deg,#151a22,#0b0d11);overflow:hidden}
.cph::after{content:"";position:absolute;right:-60px;bottom:-80px;width:320px;height:240px;background:repeating-radial-gradient(circle at 100% 100%,transparent 0 12px,rgba(249,163,10,.35) 12px 13px);opacity:.7}
.cph-in{position:relative;z-index:1;padding-top:30px;padding-bottom:56px}
.cph .crumbs{margin-bottom:26px}.cph .crumbs a,.cph .crumbs span{color:#aeb3bb}
.cph-g{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:center}
.cph-ph img,.cph-ph .coach-av{width:300px;height:340px;object-fit:cover;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.45);display:grid;place-items:center;font-size:64px;background:#2a303b}
.cph .eyebrow{color:var(--orange)}
.cph h1{font-size:clamp(34px,4.4vw,54px);font-weight:800;line-height:1.04;letter-spacing:-.025em;margin:6px 0 14px}
.cph .tags{display:flex;gap:6px;flex-wrap:wrap}
.cph-k{display:flex;gap:34px;margin:24px 0 26px;flex-wrap:wrap}.cph-k b{display:block;font-size:30px;font-weight:800;color:var(--orange)}.cph-k small{color:#aeb3bb;font-size:12.5px}
.cph .ctas{display:flex;gap:10px;flex-wrap:wrap}
.btn-wa{background:#22c35e;color:#fff;border:0}.btn-wa .i{width:18px;height:18px;stroke:#fff}
.btn-line.light{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}.btn-line.light .i{width:16px;height:16px;stroke:#fff}
.cph-none{padding:40px 0}.cph-none p{color:#cfd2d8;margin:10px 0 22px}
.cp-sec{padding:64px 0}.cp-sec.alt{background:var(--bg2,#f5f6f8)}
.cp-about{display:grid;grid-template-columns:1.3fr 1fr;gap:44px;align-items:start}
.cp-q{font-size:clamp(20px,2.2vw,26px);font-weight:800;line-height:1.3;letter-spacing:-.01em;margin:0 0 22px;border-left:4px solid var(--orange);padding-left:18px}
.cp-bio{font-size:15.5px;line-height:1.65;color:var(--text);margin:8px 0 16px}
.cp-types{display:flex;gap:6px;flex-wrap:wrap}.cp-types span{background:var(--orange-soft);color:var(--orange-d);font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px}
.cp-hrs{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:13.5px;margin-top:14px}.cp-hrs .i{width:16px;height:16px}
.cp-ach ul{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:12px}.cp-ach li{display:flex;gap:10px;font-size:14.5px;line-height:1.45}.cp-ach .i{width:18px;height:18px;flex:none;stroke:var(--orange-d);margin-top:1px}
.cp-next{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cp-sl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;text-align:left;border:0;font:inherit;cursor:pointer;padding:16px;transition:.2s;align-items:center}
.cp-sl:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,20,30,.1)}
.cp-d{display:flex;flex-direction:column;align-items:center;background:var(--ink);color:#fff;border-radius:10px;padding:8px 12px;min-width:70px}.cp-d b{font-size:13px}.cp-d small{color:var(--orange);font-weight:800;font-size:15px}
.cp-i{display:flex;flex-direction:column;gap:2px;min-width:0}.cp-i small{color:var(--muted);font-size:12.5px}.cp-i .ag-type{align-self:flex-start}
.cp-f{grid-column:1/-1;font-size:12px;font-weight:700;color:#1a7f37}
.cp-pk .cp-desc{font-size:13px;color:var(--text);margin:-4px 0 10px;line-height:1.45}
.cp-who{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--muted);margin-bottom:10px}.cp-who img{width:26px;height:26px;border-radius:50%;object-fit:cover}
.pk-mines{display:flex;flex-direction:column;gap:0}
.vid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vid{position:relative;border:0;padding:0;border-radius:14px;overflow:hidden;aspect-ratio:16/10;background:#111317;cursor:pointer;font:inherit;color:#fff;text-align:left}
.vid img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:.3s}.vid:hover img{opacity:1;transform:scale(1.03)}
.vid-ph{position:absolute;inset:0;display:grid;place-items:center;font-weight:900;font-size:22px;letter-spacing:-.02em;background:linear-gradient(135deg,#2a1f3d,#8a2a6b 55%,#e8833a)}.vid.vk-yt .vid-ph{background:linear-gradient(135deg,#1b1b1b,#c4302b)}.vid.vk-tt .vid-ph{background:linear-gradient(135deg,#111,#25f4ee 140%)}.vid.vk-vm .vid-ph{background:linear-gradient(135deg,#0f2a3d,#1ab7ea)}
.vid-play{position:absolute;left:50%;top:44%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(249,163,10,.95);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.vid-play::after{content:"";position:absolute;left:23px;top:18px;border-left:17px solid #111317;border-top:11px solid transparent;border-bottom:11px solid transparent}
.vid-cap{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.8));display:flex;flex-direction:column}.vid-cap b{font-size:14px}.vid-cap small{font-size:11.5px;color:#cfd2d8}
.vid-box{padding:14px!important}.vid-m{aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden}.vid-m.vert{aspect-ratio:9/16;max-height:78vh;margin:0 auto;width:min(100%,calc(78vh * 9 / 16))}.vid-m iframe{width:100%;height:100%;border:0}
.vid-t{margin:10px 2px 0;font-weight:700}
.cp-pics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.cp-pic{border:0;padding:0;border-radius:12px;overflow:hidden;aspect-ratio:1;cursor:zoom-in;background:#eee}.cp-pic img{width:100%;height:100%;object-fit:cover;transition:.3s}.cp-pic:hover img{transform:scale(1.04)}
.cp-lb img{width:100%;max-height:74vh;object-fit:contain;border-radius:10px;background:#111}.cp-lb-n{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:10px;font-weight:700}
.cp-more{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cp-o{display:flex;align-items:center;gap:14px;padding:14px;transition:.2s}.cp-o:hover{transform:translateY(-3px)}.cp-o img{width:64px;height:64px;border-radius:12px;object-fit:cover}.cp-o span{display:flex;flex-direction:column}.cp-o small{color:var(--muted);font-size:12.5px}
.coach h3 a{color:inherit}.coach h3 a:hover{color:var(--orange-d)}
.coach-ph{display:block;height:100%}
.coach-pl{font-size:12.5px;color:var(--muted);margin:-6px 0 14px}.coach-pl b{color:var(--ink)}
.coach-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
@media (max-width:900px){.cph-g{grid-template-columns:1fr;gap:26px}.cph-ph img,.cph-ph .coach-av{width:180px;height:200px}.cp-about{grid-template-columns:1fr}.cp-next,.vid-grid,.cp-more{grid-template-columns:1fr 1fr}.cp-pics{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.cp-next,.vid-grid,.cp-more{grid-template-columns:1fr}.cp-pics{grid-template-columns:1fr 1fr}.cph-k{gap:22px}.cph .ctas .btn{width:100%;justify-content:center}}
/* Editor de la página del profe */
.cpe-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.cpe-tabs{margin:0;flex:1}
.cpe-tabs .tab i{font-style:normal;background:#e6e8ec;color:#5b5f68;font-size:11px;border-radius:999px;padding:1px 7px}.cpe-tabs .tab i.w{background:var(--orange);color:#fff}.cpe-tabs .tab i:empty{display:none}
.cpe-see{padding:9px 16px;font-size:13px}
.cpe-f{max-width:760px}.cpe-on{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.cpe-ph{display:flex;align-items:center;gap:14px;margin-bottom:12px}.cpe-ph img,.cpe-ph .av{width:72px;height:72px;border-radius:14px;object-fit:cover}
.cpe-vadd{max-width:760px;margin-bottom:18px}
.cpe-vids{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.cpe-v{display:flex;flex-direction:column;gap:8px}.cpe-va{display:flex;gap:6px}.cpe-va input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:6px 10px;font:inherit;font-size:13px}
.cpe-pics{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.cpe-p{display:flex;flex-direction:column;gap:6px}.cpe-p img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.cpe-p div{display:flex;gap:6px}
.cpe-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.cpe-pl{padding:16px 18px;display:flex;flex-direction:column;gap:6px}.cpe-pl.off{opacity:.65}
.cpe-plh{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.cpe-plh b{font-size:15.5px}
.cpe-pld{font-size:13px;color:var(--text);margin:0}.cpe-why{font-size:12.5px;margin:0;padding:7px 10px;border-radius:8px;background:#f4f5f7}.cpe-why.w{background:var(--orange-soft);color:var(--orange-d)}.cpe-why.x{background:#fde4e4;color:#b42328}
.cpe-pl .acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:6px}
.mini.ok{background:#1f8f4e;color:#fff;border-color:#1f8f4e}
.co-pg{display:flex;align-items:center;gap:10px;font-size:12.5px;padding:10px 0;border-top:1px solid var(--line)}.co-pg small{color:var(--muted);font-weight:700;text-transform:uppercase;font-size:10.5px;letter-spacing:.05em}.co-pg span{flex:1}.co-pg .w{color:var(--orange-d)}
.cp-ap{border:1.5px solid #fde3a7}
.qn-packs label{position:relative}.qn-packs input{left:0;top:0;width:1px;height:1px}
@media (min-width:1141px) and (max-width:1280px){.menu{gap:15px!important;font-size:13px!important}.nav-r .btn-o{padding-left:18px;padding-right:18px}}
/* ---------- Novedad: ventana con galería ---------- */
.mbox.nwm{max-width:1000px;padding:0;overflow:hidden auto}
.mbox.nwm>.mx,.mbox.nwm .mx{z-index:5;background:rgba(255,255,255,.92);border-radius:50%;width:36px;height:36px;top:12px;right:12px}
.nwv{display:grid;grid-template-columns:1.25fr 1fr;min-height:420px}
.nwv-g{background:#0d0f13;display:flex;flex-direction:column;min-width:0}
.nwv-main{position:relative;flex:1;min-height:340px;display:grid;place-items:center;cursor:zoom-in;overflow:hidden}
.nwv-main img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.nwv-main.zoom{cursor:zoom-out}.nwv-main.zoom img{object-fit:contain}
.nwv-main img.in{animation:nwfade .35s ease}@keyframes nwfade{from{opacity:.25}to{opacity:1}}
.nwv-ar{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.9);display:grid;place-items:center;cursor:pointer;z-index:2;box-shadow:0 4px 14px rgba(0,0,0,.25);transition:.2s}
.nwv-ar:hover{background:var(--orange)}.nwv-ar .i{width:18px;height:18px}.nwv-ar.prev{left:12px}.nwv-ar.next{right:12px}
.nwv-n{position:absolute;left:12px;bottom:12px;background:rgba(0,0,0,.6);color:#fff;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;z-index:2}
.nwv-th{display:flex;gap:8px;padding:10px;overflow-x:auto;scrollbar-width:thin;background:#0d0f13}
.nwv-th button{flex:none;width:72px;height:52px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;opacity:.55;transition:.2s;background:#222}
.nwv-th button.on{border-color:var(--orange);opacity:1}.nwv-th button:hover{opacity:1}.nwv-th img{width:100%;height:100%;object-fit:cover}
.nwv-t{padding:30px 30px 24px;display:flex;flex-direction:column;gap:12px;max-height:86vh;overflow:auto}
.nwv-top{display:flex;justify-content:space-between;align-items:center;padding-right:34px}
.nwv-t h3{font-size:clamp(22px,2.4vw,28px);line-height:1.15;letter-spacing:-.02em}
.nwv-t p{font-size:14.5px;line-height:1.6;color:var(--text);margin:0}.nwv-t .nwv-lead{font-weight:600;color:var(--ink)}
.nwv-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.nwv-cta:empty{display:none}
.nwv-sh{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--muted);font-weight:700;padding-top:14px;border-top:1px solid var(--line);margin-top:auto}
.nwv-sh a{width:34px;height:34px;border-radius:50%;background:#22c35e;display:grid;place-items:center}.nwv-sh a .i{width:17px;height:17px;stroke:#fff}
.nwv-sh button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 12px;font:inherit;font-size:12.5px;cursor:pointer}.nwv-sh button:hover{border-color:var(--ink)}
.nwv-nav{display:flex;justify-content:space-between;gap:10px}.nwv-nav button{border:0;background:none;font:inherit;font-weight:700;font-size:13px;color:var(--orange-d);cursor:pointer;padding:4px 0}.nwv-nav button:disabled{color:#c3c6cc;cursor:default}
.nc-im{position:relative;display:block}.nc-k{position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.65);color:#fff;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:999px}.nc-k.v{right:auto;left:10px}
@media (max-width:820px){.nwv{grid-template-columns:1fr}.nwv-main{min-height:0;aspect-ratio:4/3}.nwv-t{max-height:none;padding:22px 18px 18px}.mbox.nwm{max-height:94vh}}
.ng-ed{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.ng-i{position:relative;width:92px;height:68px;border-radius:8px;overflow:hidden}.ng-i img{width:100%;height:100%;object-fit:cover}
.ng-i button{position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.65);color:#fff;cursor:pointer;line-height:1}
.ng-add{width:92px;height:68px;border:2px dashed #d5d8de;border-radius:8px;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;font:inherit;font-size:11.5px;color:var(--muted)}.ng-add b{font-size:20px;line-height:1}
/* ---------- Resumen de torneo jugado ---------- */
.trh{position:relative;color:#fff;background:#111 center/cover no-repeat;overflow:hidden}
.trh::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,16,.94) 0%,rgba(10,12,16,.78) 50%,rgba(10,12,16,.35) 100%)}
.trh-in{position:relative;z-index:1;padding-top:30px;padding-bottom:56px}
.trh .crumbs{margin-bottom:24px}.trh .crumbs a,.trh .crumbs span{color:#aeb3bb}.trh .eyebrow{color:#e3e5e9}
.trh h1{font-size:clamp(34px,4.6vw,56px);font-weight:800;line-height:1.04;letter-spacing:-.025em;margin:8px 0 6px;max-width:760px}
.trh-k{display:flex;gap:34px;margin:22px 0 26px;flex-wrap:wrap}.trh-k b{display:block;font-size:30px;font-weight:800;color:var(--orange)}.trh-k small{color:#c4c8cf;font-size:12.5px}
.trh .ctas{display:flex;gap:10px;flex-wrap:wrap}
.tr-sec{padding:60px 0}.tr-sec.alt{background:var(--bg2,#f5f6f8)}
.tr-champs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.tr-ch{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 18px;gap:2px;position:relative;overflow:hidden}
.tr-ch::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--orange)}
.tr-cat{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--orange-d);background:var(--orange-soft);padding:4px 10px;border-radius:999px;margin-bottom:8px}
.tr-cup{font-size:34px;line-height:1.2}.tr-ch>b{font-size:17px}.tr-ch>small{color:var(--muted);font-size:12px}
.tr-sub{margin-top:12px;padding-top:10px;border-top:1px dashed var(--line);width:100%;display:flex;flex-direction:column;font-size:13.5px}.tr-sub small{color:var(--muted);font-size:11.5px}
.tr-fin{margin-top:10px;font-size:12.5px;color:var(--muted)}.tr-fin b{color:var(--ink)}
.tr-story{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}.tr-story p{font-size:15px;line-height:1.7;color:var(--text);margin:0 0 12px}.tr-story p.lead{font-size:17px;font-weight:600;color:var(--ink)}
.tr-story:has(> div:only-child){grid-template-columns:1fr;max-width:820px}
.tr-pics{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:170px;gap:10px}
.tr-pic{border:0;padding:0;border-radius:12px;overflow:hidden;cursor:zoom-in;background:#eee}.tr-pic.big{grid-column:span 2;grid-row:span 2}.tr-pic img{width:100%;height:100%;object-fit:cover;transition:.35s}.tr-pic:hover img{transform:scale(1.04)}
.tr-br-w{overflow-x:auto}.tr-br{display:flex;gap:26px;min-width:max-content;padding:6px 2px 4px}
.tr-col{display:flex;flex-direction:column;min-width:200px}.tr-rh{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}
.tr-ms{display:flex;flex-direction:column;justify-content:space-around;flex:1;gap:12px}
.trm{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;font-size:13px}.trm>div{display:flex;justify-content:space-between;padding:7px 10px}.trm>div+div{border-top:1px solid var(--line)}
.trm .w{font-weight:800;color:var(--ink)}.trm .l{color:var(--muted)}.trm small{display:block;background:#f4f5f7;padding:4px 10px;font-weight:700;font-size:12px;color:var(--ink)}.trm.bye{opacity:.6}
.tr-col.champ{min-width:170px}.tr-cw{background:var(--ink);color:#fff;border-radius:12px;padding:16px;text-align:center;font-size:26px;display:flex;flex-direction:column;gap:6px}.tr-cw b{font-size:14px}
.tr-zh{font-size:18px;margin:26px 0 12px}.tr-zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.tr-z{padding:16px}.tr-zl{display:block;margin-bottom:8px}.tr-zm{margin-top:10px;display:flex;flex-direction:column;gap:4px;font-size:12.5px}.tr-zm div{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.tr-zm div span:last-child{text-align:right}.tr-zm .w{font-weight:800}.tr-zm small{background:#f4f5f7;border-radius:6px;padding:2px 6px;font-weight:700}
.tr-more{margin-top:36px}.tr-ol{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}
.tr-o{display:flex;gap:12px;padding:12px;align-items:center;transition:.2s}.tr-o:hover{transform:translateY(-3px)}.tr-o>span{width:84px;height:64px;border-radius:10px;background:center/cover;flex:none}.tr-o div{display:flex;flex-direction:column;gap:2px}.tr-o small{color:var(--muted);font-size:12px}.tr-o em{font-style:normal;font-size:12.5px;color:var(--orange-d);font-weight:700}
.pt-more{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}
.pt-ph{display:flex;gap:6px;align-items:center}.pt-ph img{width:64px;height:48px;border-radius:8px;object-fit:cover}.pt-ph span{font-size:12.5px;font-weight:700;color:var(--muted);margin-left:4px}
.glv{background:#0d0f13}.glv .nwv-main{min-height:0;height:min(74vh,640px)}.glv .nwv-main img{object-fit:contain}.glv-t{color:#cfd2d8;padding:0 14px 12px;margin:0;font-size:13px;font-weight:600}
.mbox.glm{max-width:1100px}
.tp-w{margin-top:20px}.tp-r{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid var(--line)}.tp-r:first-child{border-top:0}
.tp-im{width:76px;height:56px;border-radius:8px;background:center/cover;flex:none}.tp-r>div:nth-child(2){flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.tp-r small{font-size:12.5px}.tp-r .acts{display:flex;gap:6px;flex-wrap:wrap}
.ng-i .ng-st{right:auto;left:3px;color:#ffd166}.ng-i.cov{outline:3px solid var(--orange)}
@media (max-width:900px){.tr-story{grid-template-columns:1fr}.tr-pics{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px}.tr-ol{grid-template-columns:1fr}}
@media (max-width:600px){.tp-r{flex-wrap:wrap}.trh .ctas .btn{width:100%;justify-content:center}}

.trm>div{display:flex!important;justify-content:space-between;gap:8px}.trm{display:block!important}
@media (max-width:600px){.tr-champs{grid-template-columns:1fr 1fr;gap:10px}.tr-ch{padding:16px 10px}.tr-ch>b{font-size:14.5px}.tr-sub{font-size:12px}}
.pack.cp-pk{border:2px solid var(--orange);box-shadow:0 14px 34px rgba(249,163,10,.12)}
/* ---------- Busco pareja: armado de turnos ---------- */
.post.urg{border:2px solid #e5484d;box-shadow:0 10px 28px rgba(229,72,77,.12)}
.post.clubp{border:2px solid var(--orange)}
.post.isfull{opacity:.72}
.post.flash{animation:bpflash 1.6s ease 2}@keyframes bpflash{50%{box-shadow:0 0 0 6px rgba(249,163,10,.45)}}
.bp-urg{display:inline-flex;align-self:flex-start;background:#fdecec;color:#b42318;font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px}
.bp-ok{color:#1a7f37;font-weight:700}.bp-ok .i{stroke:#1a7f37}.bp-no{color:var(--orange-d);font-weight:700}.bp-no .i{stroke:var(--orange-d)}
.bp-club{width:44px;height:44px;border-radius:50%;background:#111317;display:grid;place-items:center;flex:none}.bp-club img{width:34px;height:auto}.bp-club.sm{width:40px;height:40px}
.bp-acts{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.bp-forme{background:#e3f5e8;color:#14532d;border-radius:12px;padding:12px 16px;margin-bottom:14px;display:flex;flex-direction:column;gap:2px}.bp-forme span{font-size:13px}
.al-it{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.al-it span{display:flex;flex-direction:column}.al-it small{color:var(--muted);font-size:12px}
.al-days{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 10px}.al-days label{cursor:pointer}.al-days input{position:absolute;opacity:0}.al-days span{display:block;border:1.5px solid #e3e5ea;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:700}.al-days input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.pf-n,.pf-c{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 12px}.pf-c{grid-template-columns:1fr 1fr}
.pf-n label,.pf-c label{cursor:pointer;position:relative}.pf-n input,.pf-c input{position:absolute;opacity:0;left:0;top:0;width:1px;height:1px}
.pf-n span,.pf-c span{display:flex;flex-direction:column;border:1.5px solid #e3e5ea;border-radius:10px;padding:9px 11px;height:100%}.pf-n small,.pf-c small{color:var(--muted);font-size:12px}
.pf-n input:checked+span,.pf-c input:checked+span{border-color:var(--orange);background:#fff7e6}.pf-c input:disabled+span{opacity:.5;cursor:not-allowed}
.fn-l{display:flex;flex-direction:column;gap:10px;margin-top:12px}.fn-r{display:grid;grid-template-columns:60px 1fr;gap:10px;align-items:center}.fn-r>div{display:flex;gap:6px;flex-wrap:wrap}
.bk-mf{display:block;margin-top:14px;font-weight:800;color:var(--orange-d)}
.bg-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.bg-r{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:9px 12px}.bg-r span{flex:1;font-size:12.5px;color:var(--muted)}.bg-r b{white-space:nowrap}
.bp .acts{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.post.isfull{opacity:1;background:#fafafa}.post.isfull .when,.post.isfull>p{opacity:.65}
.bg-r .mini{white-space:nowrap}
.bp-lock{font-size:12.5px;font-weight:700;color:var(--muted);background:#f1f2f4;border-radius:999px;padding:8px 12px;cursor:help}
.bp-lv{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bp-inv{font-size:12px;font-weight:700;color:var(--orange-d)}
.bp-forme.inv{background:#fff4dc;color:#7a4b00}.bp-forme.inv a{color:var(--orange-d);font-weight:700}
.pf-cat{display:flex;flex-direction:column;gap:2px;background:#f4f5f7;border-radius:10px;padding:10px 12px;margin:4px 0 12px}.pf-cat span{font-size:12px;color:var(--muted);font-weight:700}.pf-cat b{font-size:16px}.pf-cat small{font-size:12px;color:var(--muted)}
.bp-invd{display:block;font-size:12px;color:var(--orange-d);font-weight:700;margin-top:2px}
.bi-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.bi-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 14px;max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:10px;margin:8px 0 12px}
.bi-r{font-weight:600!important}.bi-r small{color:var(--muted);font-weight:500;margin-left:auto;font-size:11.5px}
.bi-wa{margin-top:12px;text-align:left}.bi-wa summary{cursor:pointer;font-weight:700;font-size:13px}.bi-wa a{margin:6px 6px 0 0;display:inline-flex}
small.req{font-size:10.5px;font-weight:800;color:#b42318;text-transform:uppercase;letter-spacing:.04em;margin-left:4px}
.cl-nc{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#fff4dc;border:1.5px solid #fde3a7;border-radius:12px;padding:12px 16px;margin-bottom:12px;font-size:13.5px;flex-wrap:wrap}
.nc-l{display:flex;flex-direction:column;max-height:50vh;overflow:auto}.nc-r{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.nc-r span{display:flex;flex-direction:column}.nc-r small{color:var(--muted);font-size:12px}.nc-r select{max-width:200px}
.r-catok{font-size:13px;margin:2px 0 10px;color:var(--muted)}.r-catok b{color:var(--ink)}.r-catl{display:block;font-size:12.5px;font-weight:700;margin:2px 0 4px}#r-cat select{width:100%;margin-bottom:10px}
@media (min-width:861px) and (max-width:1280px){.nav-r .btn-o .ar{display:none}.nav-r .btn-o{padding-left:16px!important;padding-right:16px!important}}@media (min-width:861px) and (max-width:1140px){.menu{gap:10px!important;font-size:12px!important}}
.cr select[data-n]{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit;background:#fff}
.cat-ft{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px}.cat-ft small{font-size:12px}
.ecat.no span{opacity:.5;background:repeating-linear-gradient(135deg,#f6f7f9 0 6px,#fff 6px 12px)}.ecat.no{cursor:not-allowed}
.e-why{background:#fdecec;color:#b42318;border-radius:8px;padding:8px 12px;font-size:13px;margin:6px 0 4px}
.e-mycat{margin:6px 0 0;font-weight:800;font-size:15px}.e-mycat small{font-weight:500;color:var(--muted);font-size:12px}
.e-up{font-size:12px;font-weight:700;color:#1a7f37}
.eform select{width:100%;border:1.5px solid #e3e5ea;border-radius:10px;padding:10px 12px;font:inherit;background:#fff}
/* ---------- Módulos y vista simple del panel ---------- */
.adm-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.adm-mode{display:inline-flex;background:#eceef1;border-radius:999px;padding:3px}.adm-mode button{border:0;background:none;font:inherit;font-size:12.5px;font-weight:700;padding:7px 14px;border-radius:999px;cursor:pointer;color:var(--muted)}.adm-mode button.on{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(0,0,0,.08)}
.qk-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 18px}
.qk-b{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;border:0;background:#fff;border-radius:14px;padding:16px 18px;box-shadow:0 2px 14px rgba(15,20,30,.06);cursor:pointer;font:inherit;transition:.2s}
.qk-b:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(15,20,30,.1)}.qk-b span{font-size:26px;line-height:1.1}.qk-b b{font-size:15px;margin-top:4px}.qk-b small{color:var(--muted);font-size:12.5px}
body.adm-simple .qk-bar:not([hidden]) ~ .kgrid{margin-top:0}
.md-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.md{display:flex;flex-direction:column;gap:6px;padding:18px}.md.off{opacity:.7;background:#fafafa}
.md-h{display:flex;align-items:center;gap:10px}.md-h b{flex:1;font-size:15.5px}.md-ic{font-size:24px}
.md p{font-size:13px;color:var(--text);margin:0;line-height:1.5}.md small{font-size:12px}
.md .sw input:checked + .sw-t{background:#1f8f4e}
/* Categorías de cada torneo a simple vista */
.tccs{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;align-items:center}
.tcc{font-size:11.5px;font-weight:600;line-height:1;padding:5px 9px;border-radius:999px;background:#eef1f4;color:#3a4049;white-space:nowrap}
.tcc.me{background:#e5f5ec;color:#1f7a45;box-shadow:inset 0 0 0 1px #b9e3cb}
.tcc.full{text-decoration:line-through;opacity:.55}
.tcc.more{background:none;color:var(--muted,#7a808a);padding-left:2px}
.tcc-no{font-size:12px;color:#a2501c;font-weight:500}
.prim-cats span.me{background:#e5f5ec;border-color:#b9e3cb;color:#1f7a45;font-weight:600}
/* OpenPadel: bloqueo y avisos del abono de la plataforma */
.opg{position:fixed;inset:0;z-index:9999;background:rgba(13,16,21,.86);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}
.opg-b{background:#fff;border-radius:18px;max-width:520px;width:100%;padding:34px 30px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.opg-b h2{font-size:22px;color:#111317;margin:12px 0 8px;line-height:1.25}
.opg-b p{color:#4a4d55;font-size:15px}
.opg-ic{width:56px;height:56px;border-radius:50%;background:#FEEED1;color:#905400;display:inline-grid;place-items:center;font-size:24px;font-weight:800}
.opg-b .btn{margin-top:18px}
.opg-pay{display:grid;gap:6px;margin-top:18px;text-align:left}
.opg-pay div{display:flex;justify-content:space-between;gap:12px;background:#f6f6f4;border-radius:10px;padding:9px 12px;font-size:13.5px}
.opg-pay small{color:#7a7d85}.opg-pay b{text-align:right;overflow-wrap:anywhere;color:#111317}
.opg-demo{display:block;margin-top:18px;font-size:12.5px;color:#7a7d85;text-decoration:underline}
.opg-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:11px 18px;font-size:13.5px;background:#FDE7E5;color:#7d1a12;border-bottom:1px solid #f6c9c4}
.opg-bar.prueba{background:#E5EEFD;color:#173F8F;border-color:#c9d9f7}
.opg-bar button{font:inherit;font-weight:700;background:#fff;border:1px solid currentColor;color:inherit;border-radius:8px;padding:5px 12px;cursor:pointer}
.md.lock{background:#f6f6f4}.md-lk{margin-left:auto;font-size:16px}
/* Abono OpenPadel (panel del club) */
.opa{display:flex;flex-direction:column;gap:18px}
.opa-h{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.opa-h>div{background:#f6f6f4;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:2px;line-height:1.3}
.opa-h small{color:#7a7d85;font-size:12px;font-weight:600}
.opa-h b{font-size:22px;color:#111317}
.opa-h span{font-size:12.5px;color:#7a7d85}
.opa-h .tag-s{align-self:flex-start;margin-top:4px}
.opa-n{background:#FEEED1;color:#7a4b00;border-radius:12px;padding:12px 16px;font-weight:600;font-size:14px}
.opa-g{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.opa-d{margin-top:12px;font-size:13px;color:#4a4d55}
.opa-l{display:flex;flex-direction:column}
.opa-l>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #eee;flex-wrap:wrap}
.opa-l>div:first-child{border-top:0}
.opa-l span:first-child{display:flex;flex-direction:column;line-height:1.3}
.opa-l small{color:#7a7d85;font-size:12px}
.opa-l em{width:100%;font-size:12.5px;color:#b42318;font-style:normal}
.opf label{display:block;font-size:13px;font-weight:600;margin:12px 0 6px}
.opf input,.opf select{width:100%}
.opf-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.opf-e{display:block;color:#b42318;font-size:12.5px;margin-top:4px}
.opg-up{margin-top:16px}
.opg-b .btn-wa{margin-top:10px}
.opg-sent{margin-top:16px;background:#e7f6ec;color:#14532d;border-radius:10px;padding:12px;font-weight:600;font-size:14px}
@media (max-width:760px){.opa-h,.opa-g,.opf-g{grid-template-columns:1fr}}
/* OpenPadel en el panel del club: pestañas, soporte y novedades */
.opt-tabs{margin-bottom:16px}
.opt-tabs .chip em{font-style:normal;background:#ef4444;color:#fff;border-radius:99px;padding:0 7px;font-size:11px;margin-left:4px}
.ops-h{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.ops-l{display:flex;flex-direction:column;margin-top:14px}
.ops-l button{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 6px;border:0;border-top:1px solid #eee;background:none;text-align:left;cursor:pointer;font:inherit;border-radius:8px}
.ops-l button:first-child{border-top:0}
.ops-l button:hover{background:#f6f6f4}
.ops-l span:first-child{display:flex;flex-direction:column;line-height:1.35}
.ops-l small{color:#7a7d85;font-size:12px}
.opt-v{display:flex;flex-direction:column;gap:10px;margin:14px 0;max-height:44vh;overflow-y:auto}
.opt-v>div{max-width:85%;border-radius:14px;padding:10px 14px;background:#f6f6f4;align-self:flex-start}
.opt-v>div.club{align-self:flex-end;background:#FEEED1}
.opt-v p{font-size:14px;white-space:pre-wrap}.opt-v small{font-size:11.5px;color:#7a7d85}
.opn-l{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.opn,.opn-i{display:flex;gap:12px;align-items:flex-start;border-radius:12px;padding:12px 16px;background:#EEF4FF;border:1px solid #D5E3FD}
.opn.mantenimiento,.opn-i.mantenimiento{background:#FFF8E6;border-color:#FCE7B2}
.opn.importante,.opn-i.importante{background:#FFF0F0;border-color:#F9D3D0}
.opn>span,.opn-i>span{font-size:20px;line-height:1.2}
.opn div,.opn-i div{flex:1;min-width:0}
.opn p,.opn-i p{font-size:13.5px;color:#4a4d55;margin-top:2px}
.opn small{font-size:11.5px;color:#7a7d85}
.opn{margin:0 0 14px}
.opn button{font:inherit;font-weight:700;font-size:13px;background:#fff;border:1px solid #d5d8de;border-radius:9px;padding:6px 14px;cursor:pointer;align-self:center;white-space:nowrap}
/* ===== Primer ingreso de un club nuevo (asistente) ===== */
body.onb-on{overflow:hidden}
.onb{position:fixed;inset:0;z-index:9000;background:linear-gradient(160deg,#f6f6f4,#fff3e0);overflow-y:auto;padding:28px 16px}
.onb-box{max-width:760px;margin:0 auto;background:#fff;border-radius:22px;padding:30px 34px;box-shadow:0 20px 60px rgba(17,19,23,.1)}
.onb-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.onb-top small{font-size:12px;font-weight:700;color:var(--orange-d);text-transform:uppercase;letter-spacing:.06em}
.onb-top h2{font-size:28px;line-height:1.15;margin:4px 0 6px}
.onb-top p{color:#4a4d55}
.onb-later{font:inherit;font-weight:600;font-size:13.5px;color:#7a7d85;background:none;border:0;cursor:pointer;text-decoration:underline;white-space:nowrap;padding-top:6px}
.onb-st{list-style:none;display:flex;gap:6px;margin:20px 0 22px;padding:0}
.onb-st li{flex:1;display:flex;flex-direction:column;gap:6px;font-size:11.5px;font-weight:600;color:#9a9da5}
.onb-st i{height:5px;border-radius:99px;background:#eee}
.onb-st li.done i{background:var(--orange-soft)}.onb-st li.on i{background:var(--orange)}.onb-st li.on{color:#111317}
.onb-lead{color:#4a4d55;margin-bottom:6px}
#onb-f label{display:block;font-size:13px;font-weight:700;color:#111317;margin:16px 0 6px}
#onb-f input:not([type=checkbox]):not([type=radio]):not([type=color]),#onb-f select,#onb-f textarea{width:100%;height:46px;border:1.5px solid #e6e6e8;border-radius:12px;padding:0 14px;font:inherit;font-size:15px;background:#fff}
#onb-f textarea{height:auto;padding:10px 14px}
#onb-f input:focus,#onb-f select:focus,#onb-f textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft)}
#onb-f small{font-size:12px;color:#7a7d85}
.onb-g2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.onb-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 14px}
.onb-logo{display:flex;align-items:center;gap:14px}
.onb-logo img{width:150px;height:56px;object-fit:contain;background:#f6f6f4;border-radius:10px;padding:6px}
.onb-logo>div{display:flex;flex-direction:column;gap:6px}
#onb-f .onb-up{margin:0;font-size:13px;height:38px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0 14px}
.onb-cols{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.onb-cols button{width:30px;height:30px;border-radius:50%;border:0;cursor:pointer;box-shadow:inset 0 0 0 2px rgba(255,255,255,.5)}
.onb-cols button.on{outline:2px solid #111317;outline-offset:2px}
#onb-f .onb-cols input[type=color]{width:34px;height:34px;padding:0;border:0;border-radius:50%;cursor:pointer;background:none}
.onb-pics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
#onb-f .onb-pics label{margin:0;position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16/10;cursor:pointer;border:3px solid transparent}
#onb-f .onb-pics label.on{border-color:var(--orange)}
.onb-pics img{width:100%;height:100%;object-fit:cover;display:block}
.onb-pics input{position:absolute;opacity:0}
#onb-f .onb-pic-up{display:grid;place-items:center;background:#f6f6f4;color:#4a4d55;font-size:13px;border:2px dashed #ddd}
.onb-courts{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.onb-ct{display:grid;grid-template-columns:28px 1.3fr 1fr 1fr auto 32px;gap:8px;align-items:center;background:#f8f8f6;border-radius:12px;padding:8px 10px}
.onb-ct>b{width:26px;height:26px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:13px}
#onb-f .onb-ct input:not([type=checkbox]),#onb-f .onb-ct select{height:40px;font-size:14px}
#onb-f .onb-ct .ck{margin:0;display:flex;align-items:center;gap:6px;font-weight:600;font-size:13px}
.onb-x{width:30px;height:30px;border-radius:8px;border:0;background:#fff;font-size:18px;cursor:pointer;color:#7a7d85}
.onb-prev{margin-top:16px;background:#f8f8f6;border-radius:12px;padding:12px 14px;font-size:13.5px;color:#4a4d55;line-height:1.6}
.onb-m{display:flex;align-items:center;border:1.5px solid #e6e6e8;border-radius:12px;overflow:hidden;background:#fff}
.onb-m span{padding-left:14px;font-weight:800}
#onb-f .onb-m input{border:0!important;box-shadow:none!important;font-weight:700}
.onb-a{display:flex;justify-content:space-between;align-items:center;margin-top:26px;padding-top:18px;border-top:1px solid #eee}
.onb-done{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.onb-ok{width:64px;height:64px;border-radius:50%;background:#e7f6ec;color:#16a34a;font-size:30px;font-weight:800;display:grid;place-items:center}
.onb-done h3{font-size:24px}
.onb-site{display:flex;align-items:center;gap:14px;background:#f8f8f6;border-radius:14px;padding:12px 16px;width:100%;max-width:520px;text-align:left}
.onb-site img{width:110px;height:40px;object-fit:contain}
.onb-site div{flex:1;display:flex;flex-direction:column}
.onb-site small{color:#7a7d85}
.onb-nx{display:flex;flex-direction:column;gap:6px;width:100%;max-width:520px;text-align:left;margin-top:8px}
.onb-nx button{font:inherit;text-align:left;background:#fff;border:1px solid #eee;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:600}
.onb-nx button:hover{border-color:var(--orange)}
.onb-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff7e6;border:1px solid #fde3b0;border-radius:14px;padding:14px 18px;margin:0 0 16px}
.onb-bar div{display:flex;flex-direction:column}
.onb-bar span{font-size:13.5px;color:#4a4d55}
/* Club de la demo y sitio en preparación */
.op-demo{position:fixed;left:14px;bottom:14px;z-index:8000;background:#0E1A3A;color:#c9d0db;font-size:12.5px;padding:9px 14px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);max-width:calc(100vw - 100px)}
.op-demo b{color:#fff}
.op-demo a{color:#FFB48A;font-weight:700;margin-left:12px;text-decoration:underline}
.op-soon{position:fixed;inset:0;z-index:9500;background:linear-gradient(160deg,#fff,#f6f6f4);display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}
.op-soon>div{max-width:460px;display:flex;flex-direction:column;align-items:center;gap:14px}
.op-soon img{max-width:240px;max-height:90px;object-fit:contain}
.op-soon h1{font-size:40px}
.op-soon p{color:#4a4d55;font-size:16px}
.op-soon-d{font-size:12.5px;color:#7a7d85;text-decoration:underline;margin-top:10px}
@media (max-width:700px){.onb-box{padding:22px 18px}.onb-g2,.onb-g3{grid-template-columns:1fr}.onb-pics{grid-template-columns:repeat(2,1fr)}.onb-ct{grid-template-columns:28px 1fr 1fr;}.onb-ct .ck,.onb-ct .onb-x{grid-column:auto}.onb-st span{display:none}.onb-top h2{font-size:22px}}
#onb-f select{color:#111317}
@media (max-width:700px){
  .onb-ct{grid-template-columns:28px 1fr 1fr 32px;gap:8px}
  .onb-ct>b{grid-column:1;grid-row:1}
  .onb-ct>input{grid-column:2/4;grid-row:1}
  .onb-ct>.onb-x{grid-column:4;grid-row:1}
  .onb-ct>select[data-f=type]{grid-column:2;grid-row:2}
  .onb-ct>select[data-f=surface]{grid-column:3;grid-row:2}
  .onb-ct>.ck{grid-column:4;grid-row:2;font-size:0!important}
  .onb-ct>.ck::after{content:'💡';font-size:15px}
}

/* ===================== Centro de ayuda ===================== */
.hlp{--hl:var(--orange);color:var(--text)}
.hlp-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:20px 32px;flex-wrap:wrap;margin-bottom:22px}
.hlp-hd h2{font-size:24px;font-weight:800;color:var(--ink);margin:0 0 4px;letter-spacing:-.01em}
.hlp-hd p{margin:0;color:var(--muted);max-width:620px;font-size:14.5px;line-height:1.5}
.hlp-s{position:relative;flex:0 1 380px;min-width:0;display:block}
.hlp-s svg{position:absolute;left:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round}
.hlp-s input{width:100%;box-sizing:border-box;font:inherit;font-size:14.5px;padding:12px 14px 12px 42px;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);outline:0;transition:border-color .15s}
.hlp-s input:focus{border-color:var(--hl)}
.hlp-g{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}
.hlp-idx{position:sticky;top:100px;display:flex;flex-direction:column;gap:2px;background:var(--bg2);border-radius:12px;padding:8px}
.hlp-idx a{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;color:var(--ink);font-size:13.5px;font-weight:600;text-decoration:none;line-height:1.25}
.hlp-idx a:hover{background:#fff}
.hlp-idx i,.hlp-sec h3 i{font-style:normal;width:22px;text-align:center;flex:none}
.hlp-sec{margin-bottom:26px;scroll-margin-top:100px}
.hlp-a{scroll-margin-top:100px}
.hlp-sec h3{display:flex;gap:8px;align-items:center;font-size:17px;font-weight:800;color:var(--ink);margin:0 0 10px}
.hlp-a{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;transition:box-shadow .15s}
.hlp-a[open]{box-shadow:0 6px 22px rgba(15,20,30,.07);border-color:#dcdde0}
.hlp-a summary{list-style:none;cursor:pointer;padding:14px 44px 14px 16px;font-weight:700;color:var(--ink);font-size:14.5px;position:relative;line-height:1.35}
.hlp-a summary::-webkit-details-marker{display:none}
.hlp-a summary::after{content:'';position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-70%) rotate(45deg);transition:transform .15s}
.hlp-a[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.hlp-b{padding:0 18px 16px;font-size:14px;line-height:1.6}
.hlp-b p{margin:0 0 10px}
.hlp-b b{color:var(--ink)}
.hlp-ol,.hlp-ul{margin:0 0 12px;padding:0}
.hlp-ol{counter-reset:h;list-style:none}
.hlp-ol li{counter-increment:h;position:relative;padding:3px 0 3px 34px;margin-bottom:4px}
.hlp-ol li::before{content:counter(h);position:absolute;left:0;top:3px;width:23px;height:23px;border-radius:50%;background:var(--orange-soft);color:var(--orange-d);font-weight:800;font-size:12px;display:grid;place-items:center}
.hlp-ul{padding-left:20px}.hlp-ul li{margin-bottom:5px}
.hlp-tip{background:#f1f7ff;border-left:3px solid #4a8be0;border-radius:0 8px 8px 0;padding:10px 12px;font-size:13.5px}
.hlp-tip b:first-child{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#2f6fbf;margin-bottom:2px}
.hlp-tip.warn{background:#fff7e8;border-color:var(--orange)}.hlp-tip.warn b:first-child{color:var(--orange-d)}
.hlp-none{color:var(--muted);padding:10px 0 20px}
.hlp-ct{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;background:var(--bg2);border-radius:12px;padding:18px 20px;margin-top:10px}
.hlp-ct b{color:var(--ink);font-size:15px;width:100%}.hlp-ct span{flex:1 1 260px;font-size:14px;color:var(--text)}
.hlp-ct .btn{padding:10px 18px;font-size:13.5px}
.hlp-np{display:none}
.hlp-who{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:640px;margin:0 0 30px}
.hlp-who button{font:inherit;text-align:left;cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:3px;transition:border-color .15s,box-shadow .15s}
.hlp-who button b{color:var(--ink);font-size:15px}.hlp-who button small{color:var(--muted);font-size:12.5px}
.hlp-who button.on{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft)}
.adm-tr{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hlp-q{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:12.5px;font-weight:700;color:var(--ink);cursor:pointer}
.hlp-q:hover{border-color:var(--orange)}.hlp-q .i{width:16px;height:16px}
@media (max-width:860px){
  .hlp-g{grid-template-columns:1fr;gap:14px}
  .hlp-idx{position:static;flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:6px}
  .hlp-idx a{white-space:nowrap;flex:none;background:#fff}
  .hlp-s{flex-basis:100%}
}
@media (max-width:520px){.hlp-who{grid-template-columns:1fr}.hlp-hd h2{font-size:21px}}
/* La ayuda se consulta en línea: no se imprime ni se guarda como PDF desde el navegador */
@media print{.hlp>*:not(.hlp-np){display:none!important}.hlp-np{display:block!important;font-size:16px;padding:40px 0}}
