/* Rutas · Refugios · Perfil · Equipación */
.rhead .row h1{margin:.1em 0}.rhead .row small{white-space:nowrap;color:#6b6458}
.srch input{width:100%;box-sizing:border-box;border:1px solid #fff;border-radius:16px;padding:12px 14px;font:600 .95em Inter,sans-serif;background:#ffffffd9;box-shadow:0 6px 18px #2f5d5018;color:var(--ink);outline:none}
.srch input:focus{box-shadow:0 0 0 3px #2F5D5040}
.seg{display:flex;background:#e6dfd2;border-radius:14px;padding:3px;margin:10px 0 6px;gap:3px}.seg button{flex:1;border:0;border-radius:11px;padding:8px;font:800 .78em var(--fd);letter-spacing:.08em;text-transform:uppercase;background:transparent;color:#6b6458;cursor:pointer}.seg button.on{background:#fff;color:var(--g);box-shadow:0 3px 10px #0001}
.fgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin:6px 0 4px}.fs{display:flex;flex-direction:column;gap:2px;min-width:0}.fs small{font:800 .6em var(--fd);letter-spacing:.1em;text-transform:uppercase;color:#8a7f6c;padding-left:4px}
.fs select{width:100%;border:0;border-radius:12px;padding:8px 6px;font:600 .78em Inter,sans-serif;background:#ffffffd9;color:var(--ink);box-shadow:0 3px 10px #2f5d5014;-webkit-appearance:none;appearance:none}
.fs.fk{align-items:flex-start}.fs.fk .tw{margin:4px 0 0 4px}
.rlist{display:flex;flex-direction:column;gap:9px;margin-top:8px}
.rc{display:flex;gap:10px;background:var(--card);backdrop-filter:blur(14px);border:1px solid #ffffff80;border-radius:20px;padding:8px;box-shadow:0 8px 22px #2f5d501c;color:inherit;text-decoration:none;cursor:pointer}
.rph{flex:0 0 86px;height:96px;border-radius:14px;background-size:cover;background-position:center;position:relative}
.lvd{position:absolute;left:5px;bottom:5px;font:800 .56em var(--fd);letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:3px 7px;border-radius:99px;font-style:normal}
.rtx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rtx b{font:800 1em/1.1 var(--fd);text-transform:uppercase;color:var(--g);letter-spacing:.01em}.rtx>small{font-size:.72em;color:#7a7264}
.rst{display:flex;flex-wrap:wrap;gap:3px 10px;font:800 .78em var(--fd);color:#4d463c;margin-top:2px}
.rtg{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.rtg em{font-style:normal;font-size:.62em;font-weight:700;padding:2px 7px;border-radius:99px;background:#eee7da;color:#6b6458}.rtg em.k{background:#DDEFD9;color:#2F7D50}.rtg em.w{background:#F7E1D7;color:#A4462A}.rtg em.c{background:#E3EDF3;color:#3E6C85}
.rnote{display:block;margin:10px 4px;font-size:.7em;color:#7a7264;line-height:1.35}.rnote a{color:var(--g)}
#rmap,#fmap{height:62vh;min-height:380px;border-radius:20px;overflow:hidden;margin-top:8px;box-shadow:0 10px 28px #2f5d5026}
.hut{background:none;border:0}.hut.g{color:#B8743A}.hut.f{color:#2F5D50}.hut svg{filter:drop-shadow(0 2px 3px #0005)}
.leaflet-tooltip.htip{background:#B8743A;color:#fff;border:0;font-weight:800;font-size:11px;padding:2px 7px;border-radius:99px;box-shadow:0 3px 8px #0003}.leaflet-tooltip.htip:before{border-top-color:#B8743A}
.leaflet-popup-content a{color:#2F5D50;font-weight:800;cursor:pointer}
.flist{margin-top:6px}.ref2{padding:12px 13px}.ref2.g{border-left:4px solid #B8743A}.ref2 .rh{display:flex;gap:8px;align-items:center;margin-bottom:3px}.ref2 .rh b{font:800 1em/1.1 var(--fd);text-transform:uppercase;color:var(--g)}
.hb{flex:0 0 auto;font:800 .56em var(--fd);letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:99px;color:#fff}.hb.g{background:#B8743A}.hb.f{background:#2F5D50}
.ref2>small{font-size:.74em;color:#6b6458}.rr{font-size:.78em;margin-top:5px;line-height:1.4}.rr small{font-weight:700;color:#8a7f6c}.rr em{font-style:normal;color:#7a5a2c;font-weight:600}.rr a{color:var(--g);font-weight:700}.rr .chip{font-size:.92em;padding:4px 9px}
.dinfo{font-size:.82em}.dinfo p{margin:4px 0}.dinfo a{color:var(--g);font-weight:700}.dinfo .chip{margin:3px 3px 0 0}
.poi .pim{flex:0 0 38px;height:38px;border-radius:11px;background-size:420% auto;position:relative;overflow:hidden}.poi .pim i{position:absolute;right:2px;bottom:2px;width:16px;height:16px;border-radius:6px;background:#fffd;display:grid;place-items:center;color:var(--g)}.poi .pim svg{width:12px;height:12px}
.dgrp{margin-top:8px}
/* Mochila tabs */
.mtab{margin-top:6px}
body.dark .srch input,body.dark .fs select,body.dark .rc{background:#18272Ed9;color:var(--ink);border-color:#ffffff22}
body.dark .seg{background:#22343c}body.dark .seg button.on{background:#0F1A1F}body.dark .rtx>small,body.dark .rst,body.dark .ref2>small{color:#b9c4c7}
/* Equipación */
#estage{position:relative;height:400px;margin:4px -8px;perspective:800px}#ehalo{position:absolute;left:50%;top:50%;width:280px;height:280px;transform:translate(-50%,-50%);background:radial-gradient(circle,#3E7C9933,#2F5D5011 55%,transparent 70%);border-radius:50%}
#ebp{position:absolute;left:50%;top:50%;height:240px;transform:translate(-50%,-50%);filter:drop-shadow(0 22px 22px #2f5d5040);opacity:.92}
#estage.many .ob{width:58px;height:58px;border-radius:16px}#estage.many .ob img{max-width:44px;max-height:44px}
.lbl.elbl{white-space:normal;width:210px}.lbl.elbl span{display:block;font-size:12px;opacity:.9;margin:2px 0 3px}
.etys{display:flex;flex-wrap:wrap}.echk{list-style:none;padding-left:2px}.echk li{display:flex;justify-content:space-between;gap:8px;font-size:.88em}.echk em{font-style:normal;color:#8a7f6c;font-size:.85em;white-space:nowrap}
.ecamp dl{margin:6px 0;font-size:.8em}.ecamp dt{font-weight:800;color:var(--g);margin-top:6px}.ecamp dd{margin:1px 0 0}.ecamp a{color:var(--g);font-weight:700}
.esaco{border-left:4px solid #3E7C99}
/* Grupo */
.gcard .gi,.gm .gi{color:var(--g)}.gcard .row{justify-content:flex-start}.gt{flex:1;min-width:0}.gt small{display:block;font:800 .62em var(--fd);letter-spacing:.12em;text-transform:uppercase;color:#8a7f6c}.gt b{font-size:.9em}
.gbtn{border:0;border-radius:12px;padding:7px 12px;background:var(--g);color:#fff;font:800 .72em var(--fd);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.gaj{font-size:.82em;margin-top:6px}.gaj b{color:var(--g)}.gw{list-style:none;padding:0;margin:6px 0}.gw li{display:flex;gap:6px;font-size:.78em;color:#8a4a20;align-items:flex-start;margin:4px 0}.gw svg{flex:0 0 14px;margin-top:2px}
.gd{display:block;font-size:.66em;color:#8a7f6c;margin-top:6px;line-height:1.35}
.gm .row b{display:flex;gap:6px;align-items:center;font-size:.9em}.gtab{width:100%;border-collapse:collapse;margin-top:6px;font-size:.84em}.gtab td{padding:5px 2px;border-bottom:1px solid #0000000f}.gtab td:nth-child(n+2){text-align:right;font-weight:700;white-space:nowrap}.gtab td small{display:block;font-size:.72em;color:#8a7f6c}.gtab tr.tt td{font-weight:800;color:var(--g);border-bottom:0}
.sheet{position:fixed;inset:0;z-index:2000}.sheet .scrim{position:absolute;inset:0;background:#0006;opacity:0;transition:.25s}.sheet .sh{position:absolute;left:0;right:0;bottom:0;background:var(--bg);border-radius:24px 24px 0 0;padding:10px 18px 28px;transform:translateY(100%);transition:transform .35s cubic-bezier(.2,.9,.3,1);max-height:85vh;overflow:auto}
.sheet.in .scrim{opacity:1}.sheet.in .sh{transform:none}.sheet.out .sh{transform:translateY(100%)}.sheet.out .scrim{opacity:0}.grab{width:40px;height:5px;border-radius:9px;background:#0002;margin:0 auto 8px}
.srow{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #0000000f;font-weight:700}.srow.col{flex-direction:column;align-items:stretch;gap:6px}
.step{display:flex;align-items:center;gap:12px}.step button,.qnum button{width:38px;height:38px;border-radius:12px;border:0;background:#e6dfd2;font:800 1.2em Inter;color:var(--g);cursor:pointer}.step b{min-width:20px;text-align:center;font-size:1.1em}
.kids{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.kid{display:flex;align-items:center;background:#fff;border-radius:12px;padding:2px 4px 2px 8px}.kid select{border:0;background:none;font:700 .9em Inter;color:var(--ink)}.kid button{border:0;background:none;font-size:1.1em;color:#a44;cursor:pointer}
.qbtn{width:100%;margin-top:14px;padding:14px;border:0;border-radius:18px;background:linear-gradient(135deg,#2F5D50,#3E7C99);color:#fff;font:800 1em var(--fd);letter-spacing:.08em;text-transform:uppercase;box-shadow:0 6px 0 #1f3f36;cursor:pointer}
/* Quiz */
#quiz{position:fixed;inset:0;z-index:2100;display:flex;flex-direction:column;padding:18px 20px 30px;box-sizing:border-box;opacity:0;transition:opacity .3s}#quiz.in{opacity:1}#quiz.out{opacity:0}
.qbg{position:absolute;inset:0;background:url(img/hero_lago.jpg) center/cover;z-index:-1}.qbg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#F4EEE3cc,#F4EEE3f2 45%,#F4EEE3)}
.qtop{display:flex;align-items:center;gap:10px}.qdots{flex:1;display:flex;gap:5px}.qdots i{flex:1;height:5px;border-radius:9px;background:#2f5d5026;transition:.3s}.qdots i.d{background:#2f5d5099}.qdots i.c{background:var(--g)}
.qx{width:38px;height:38px;border-radius:50%;border:0;background:#fff9;font-size:1.4em;color:var(--g);cursor:pointer}
.qcard{flex:1;display:flex;flex-direction:column;justify-content:center;animation:qin .45s cubic-bezier(.2,.9,.3,1.2)}@keyframes qin{from{opacity:0;transform:translateX(calc(var(--dir)*60px)) scale(.97)}to{opacity:1;transform:none}}
.qcard h2{font-size:2.3em;margin:.2em 0 .6em}.qh{font:800 .75em var(--fd);letter-spacing:.14em;text-transform:uppercase;color:var(--t)}.qs{font-style:normal;color:#7a7264;font-size:.85em}
.qopts{display:flex;flex-direction:column;gap:10px}.qo{border:1px solid #fff;border-radius:18px;padding:16px;font:700 1.05em Inter;text-align:left;background:#ffffffd9;color:var(--ink);box-shadow:0 8px 20px #2f5d501a;cursor:pointer;animation:qo .5s calc(var(--j)*70ms) both cubic-bezier(.2,.9,.3,1.3);transition:background .2s,transform .2s}.qo.on{background:var(--g);color:#fff;transform:scale(.98)}
@keyframes qo{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.qnum{display:flex;align-items:center;justify-content:center;gap:14px}.qnum b{font:800 4em/1 var(--fd);color:var(--g);min-width:2.2em;text-align:center}.qnum small{font-weight:700;color:#7a7264;margin-left:-8px}
#qr{width:100%;margin-top:22px;accent-color:#2F5D50}
.qnav{display:flex;gap:10px;align-items:center}.qnav .qbtn{margin:0;flex:1}.qskip{border:0;background:none;font:700 .95em Inter;color:#7a7264;padding:14px 10px;cursor:pointer}
body.dark .qbg:after{background:linear-gradient(180deg,#0F1A1Fcc,#0F1A1Ff2 45%,#0F1A1F)}body.dark .qo,body.dark .kid{background:#18272E;color:var(--ink)}
.aji{vertical-align:-4px;margin-right:6px;color:var(--g)}
.mhi{margin:-4px 0 8px;font-weight:700;color:#6f6655;font-size:.92em}body.dark .mhi{color:#b9b2a4}
.qin{width:100%;box-sizing:border-box;border:1px solid #fff;border-radius:18px;padding:16px;font:700 1.2em Inter;background:#ffffffe6;color:var(--ink);box-shadow:0 8px 20px #2f5d501a;outline:none}.qin:focus{border-color:var(--g)}body.dark .qin{background:#18272E}
.lbl.elbl.mid{left:50%!important;top:50%!important;translate:-50% -50%;z-index:30;width:230px}.lbl.elbl.mid:after{display:none}
/* v1.5 · Grupo con steppers visibles */
.gsub{display:block;font-size:.72em;color:#8a7f6c;margin:2px 0 8px}
.gx{display:flex;flex-direction:column;gap:7px;margin:4px 0 6px}
.grw{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 9px;border-radius:16px;background:#ffffffb3;border:1px solid #2F5D5012}
.gic{flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#2F5D5014;color:#2F5D50}.gic.k{background:#FFE7C2;color:#B5651D}.gic.d{background:#E4EDDC;color:#4E7A3A}
.glb{flex:1;min-width:0}.glb b{display:block;font:800 1.02em/1.1 var(--fd);letter-spacing:.03em;text-transform:uppercase;color:var(--ink)}.glb small{display:block;font-size:.68em;color:#8a7f6c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gstep{flex:none;display:flex;align-items:center;gap:2px;background:#2F5D500f;border-radius:999px;padding:3px}
.gstep b{min-width:26px;text-align:center;font:800 1.25em/1 var(--fd);color:#2F5D50}
.gsb{width:36px;height:36px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer;background:#2F5D50;color:#fff;box-shadow:0 4px 10px #2F5D5033;transition:transform .15s,opacity .2s}
.gsb[data-st="-1"]{background:#fff;color:#2F5D50;box-shadow:0 2px 6px #2F5D5022}.gsb:active{transform:scale(.88)}.gsb:disabled{opacity:.35;cursor:default;box-shadow:none}
.gsb:focus-visible,.igrp:focus-visible{outline:3px solid #E8A33D;outline-offset:2px}
.gkids{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px;padding:0 2px 2px 44px}
.gk{display:flex;flex-direction:column;gap:2px;min-width:0}.gk small{font:800 .58em var(--fd);letter-spacing:.1em;text-transform:uppercase;color:#B5651D;padding-left:6px}
.gk .pk-trig.set{background:linear-gradient(150deg,#D98B3A,#B5651D);border-color:#B5651D}
.glive{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:2px}
.glive span{display:grid;grid-template-columns:auto 1fr;column-gap:5px;align-items:center;padding:8px 9px;border-radius:14px;background:linear-gradient(150deg,#3E7363,#2F5D50);color:#fff}
.glive svg{grid-row:span 2;opacity:.85}.glive em{font-style:normal;font-size:.58em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.8}.glive b{font:800 .98em/1.05 var(--fd);white-space:nowrap}
.gcard .row .gt b{font:800 1.15em var(--fd);text-transform:uppercase;letter-spacing:.03em}
.igrp{display:flex;align-items:center;gap:10px;width:100%;margin:10px 0 8px;padding:10px 10px 10px 12px;border:1px solid #ffffffaa;border-radius:20px;background:linear-gradient(160deg,#ffffffd9,#ffffff99);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 22px #2f5d501a;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.igrp .gic{color:#2F5D50}.igt{flex:1;min-width:0}.igt small{display:block;font:800 .6em var(--fd);letter-spacing:.12em;text-transform:uppercase;color:#8a7f6c}.igt b{display:flex;align-items:center;gap:3px;font:800 1.05em var(--fd);color:#2F5D50}.igt b svg{margin-right:2px}
.igc{flex:none;display:flex;align-items:center;gap:6px;padding:7px 8px 7px 12px;border-radius:999px;background:#2F5D50;color:#fff;font:800 .72em var(--fd);letter-spacing:.06em;text-transform:uppercase}.igc i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#E8A33D}
#quiz .gx{margin-top:10px}
body.dark .grw,body.dark .igrp{background:#18272Ed9;border-color:#ffffff1a}body.dark .glb b,body.dark .igt b{color:var(--ink)}body.dark .gstep b{color:#7FD1C7}body.dark .gsb[data-st="-1"]{background:#24363F;color:#E8EEF0}
@media (max-width:360px){.gkids{padding-left:0}.gsb{width:34px;height:34px}}
.fk .tw{flex:none;width:46px;margin:6px 0 0 4px}
