/* Pagyna — sitio público conversacional */
:root{
  --fg:#f3f5fb; --fg2:rgba(235,240,252,.74); --fg3:rgba(225,232,248,.52);
  --glass:rgba(16,24,44,.42); --glass2:rgba(16,24,44,.62); --glass-b:rgba(255,255,255,.14); --glass-b2:rgba(255,255,255,.22);
  --panel:rgba(14,20,38,.66); --line:rgba(255,255,255,.12);
  --shade-top:rgba(6,10,24,.55); --shade-bot:rgba(6,10,24,.72); --chat-shade:rgba(7,11,24,.78);
  --user-fg:#fff; --blur:18px; --r:22px; --pad:40px;
  color-scheme:dark;
}
:root[data-mode="light"]{
  --fg:#0f1526; --fg2:rgba(20,28,50,.74); --fg3:rgba(20,28,50,.52);
  --sheet-bg:#f4f6fb; --glass:rgba(255,255,255,.58); --glass2:rgba(255,255,255,.8); --glass-b:rgba(255,255,255,.75); --glass-b2:rgba(255,255,255,.95);
  --panel:rgba(255,255,255,.78); --line:rgba(15,21,38,.1);
  --shade-top:rgba(255,255,255,.35); --shade-bot:rgba(255,255,255,.55); --chat-shade:rgba(244,246,252,.82);
  color-scheme:light;
}
@media (prefers-color-scheme:light){:root[data-mode="auto"]{
  --fg:#0f1526; --fg2:rgba(20,28,50,.74); --fg3:rgba(20,28,50,.52);
  --sheet-bg:#f4f6fb; --glass:rgba(255,255,255,.58); --glass2:rgba(255,255,255,.8); --glass-b:rgba(255,255,255,.75); --glass-b2:rgba(255,255,255,.95);
  --panel:rgba(255,255,255,.78); --line:rgba(15,21,38,.1);
  --shade-top:rgba(255,255,255,.35); --shade-bot:rgba(255,255,255,.55); --chat-shade:rgba(244,246,252,.82);
  color-scheme:light;
}}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{font:16px/1.55 var(--font);color:var(--fg);background:#0a0f1e;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100dvh}
a{color:inherit}
button{font:inherit;color:inherit}
.ic{flex:none}
[hidden]{display:none!important}
img{max-width:100%}

/* ---------- Fondo ---------- */
.bg{position:fixed;inset:0;z-index:0;overflow:hidden;background:#0a0f1e}
.bg-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:filter .6s ease,transform .6s ease}
.bg-gradient{position:absolute;inset:0;background:
  radial-gradient(1000px 520px at 82% 105%,color-mix(in srgb,var(--accent) 35%,#ff8a5c 40%),transparent 62%),
  radial-gradient(900px 600px at 0% -10%,color-mix(in srgb,var(--accent) 55%,transparent),transparent 60%),
  linear-gradient(180deg,#0a1226 0%,#0d1633 55%,#1c1a36 100%)}
:root[data-mode="light"] .bg-gradient{background:radial-gradient(900px 500px at 85% 110%,color-mix(in srgb,var(--accent) 22%,#ffd4be),transparent 60%),radial-gradient(800px 600px at 0% -10%,color-mix(in srgb,var(--accent) 28%,#fff),transparent 60%),linear-gradient(180deg,#eef2fb,#f6f2f6)}
.bg-shade{position:absolute;inset:0;transition:background .5s;background:
  linear-gradient(180deg,var(--shade-top) 0%,rgba(0,0,0,0) 32%,rgba(0,0,0,0) 58%,var(--shade-bot) 100%),
  rgba(6,10,24,calc(var(--overlay) * .55))}
:root[data-mode="light"] .bg-shade{background:linear-gradient(180deg,var(--shade-top),rgba(255,255,255,0) 35%,rgba(255,255,255,0) 60%,var(--shade-bot)),rgba(255,255,255,calc(var(--overlay) * .5))}
.is-chat .bg-media{filter:blur(22px) saturate(1.1);transform:scale(1.1)}
html .is-chat .bg-shade{background:var(--chat-shade)}
:root[data-mode="light"] .is-chat .bg-shade{background:var(--chat-shade)}

/* ---------- Glass ---------- */
.glass,.chip,.ask,.w-card,.round,.rail,.b-panel,.b-card,.sheet,.contact-btn .cb{background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(var(--blur)) saturate(1.2);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.2)}

/* ---------- Encabezado ---------- */
.top{position:fixed;top:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;padding:22px var(--pad);transition:background .3s}
.tz{display:flex;align-items:center;gap:14px;min-width:0}
.tz[data-z=center]{justify-content:center}
.tz[data-z=right]{justify-content:flex-end}
.top[data-logo-pos=center] .tz[data-z=center]{min-width:0;max-width:60vw}
#modeBtn[hidden]{display:none}
.is-chat .top{background:linear-gradient(180deg,var(--chat-shade) 55%,transparent);padding-bottom:30px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.brand-logo{height:38px;width:auto;max-width:180px;object-fit:contain}
.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 50%,#9ad0ff));color:#fff;font-weight:700;font-size:19px;box-shadow:0 8px 24px -10px var(--accent)}
.brand-name{font-weight:600;font-size:26px;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-widgets{display:flex;align-items:center;gap:14px}
.round{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;cursor:pointer;flex:none;transition:background .2s}
.round:hover{background:var(--glass2)}
#modeBtn .i-moon{display:none}
:root[data-mode="light"] #modeBtn .i-sun{display:none}
:root[data-mode="light"] #modeBtn .i-moon{display:block}

/* ---------- Riel lateral (modo chat) ---------- */
.rail{position:fixed;left:0;top:0;bottom:0;z-index:25;width:84px;padding:96px 0 24px;display:none;flex-direction:column;align-items:center;gap:6px;border-width:0 1px 0 0;border-radius:0;background:rgba(8,12,26,.42)}
:root[data-mode="light"] .rail{background:rgba(255,255,255,.5)}
.is-chat .rail{display:flex}
.rail button{width:68px;padding:10px 4px;border:0;background:none;border-radius:14px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;color:var(--fg2);font-size:11.5px}
.rail button:hover{background:var(--glass);color:var(--fg)}

/* ---------- Portada ---------- */
main{position:relative;z-index:10}
.home{min-height:100dvh;padding:92px var(--pad) 40px}
.desk{--row:56px;--gap:16px;position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:var(--row);gap:var(--gap);max-width:1680px;margin:0 auto}
.wg{position:relative;min-width:0;min-height:0;display:flex;animation:rise .6s ease both}
.wg > .wi{flex:1;min-width:0;min-height:0;display:flex}
.wg > .wi > *{flex:1;min-width:0}
.wg.off{opacity:.35}
.w-search{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.w-search.left{align-items:flex-start;text-align:left}
.w-chips{display:flex;align-items:center;justify-content:center}
.w-chips.left{justify-content:flex-start}
.w-chips .chips{margin:0}
.w-btn{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:18px;font-weight:500;font-size:16px;text-decoration:none;color:var(--fg);cursor:pointer;padding:0 18px;text-align:center}
.w-btn.accent{background:var(--accent);color:#fff;border-color:transparent}
.w-btn:hover{background:var(--glass2)}
.w-btn.accent:hover{filter:brightness(1.08);background:var(--accent)}
.w-img{border-radius:20px;overflow:hidden;position:relative;display:block;text-decoration:none;color:#fff}
.w-img img,.w-img video,.w-img iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.w-img.contain img{object-fit:contain}
.w-img .cap{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.6));font-weight:500}
.w-scroll{overflow:auto;scrollbar-width:thin}
.w-gal{display:flex;flex-direction:column}
.w-gal .w-grid{flex:1;grid-auto-rows:1fr;min-height:0}
.w-gal .w-grid img{aspect-ratio:auto;height:100%}
.w-cat{display:flex;flex-direction:column;gap:10px}
.w-cat .list{display:grid;gap:8px;overflow:auto;min-height:0;flex:1}
.w-cat .it{display:flex;gap:12px;align-items:center;padding:6px;border-radius:14px;cursor:pointer;text-align:left;border:0;background:none;width:100%}
.w-cat .it:hover{background:rgba(255,255,255,.08)}
.w-cat .it img{width:64px;height:48px;border-radius:10px;object-fit:cover;flex:none;background:rgba(255,255,255,.08)}
.w-cat .it b{display:block;font-size:14.5px;line-height:1.25}
.w-cat .it small{color:var(--fg2);font-size:13px}
.welcome{font-weight:400;font-size:clamp(32px,4.2vw,52px);letter-spacing:-.01em;line-height:1.12;margin:0 0 14px;text-shadow:0 2px 30px rgba(0,0,0,.25);animation:rise .7s ease both}
:root[data-mode="light"] .welcome{text-shadow:none}
.sub{color:var(--fg2);font-size:clamp(16px,1.5vw,19px);max-width:520px;margin:0 0 30px;animation:rise .7s .06s ease both}
.welcome + .ask{margin-top:24px}
.ask{display:flex;align-items:center;gap:10px;width:100%;border-radius:999px;padding:8px 8px 8px 22px;transition:border-color .2s,background .2s,box-shadow .2s}
.ask:focus-within{border-color:var(--glass-b2);background:var(--glass2);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}
.ask input{flex:1;min-width:0;height:48px;border:0;background:none;color:var(--fg);font:inherit;font-size:17px;outline:none}
.ask input::placeholder{color:var(--fg3)}
.ask-hero{max-width:760px;height:76px;animation:rise .7s .12s ease both}
.ask-spark{color:var(--fg2);display:grid}
.send{width:46px;height:46px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer;background:rgba(255,255,255,.82);color:#141a2c;transition:transform .15s,background .2s;flex:none}
.send:hover{transform:scale(1.05)}
.ask:focus-within .send,.ask.has-text .send{background:var(--accent);color:#fff}
.plus{width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.1);display:grid;place-items:center;cursor:pointer;color:var(--fg);flex:none}
:root[data-mode="light"] .plus{background:rgba(15,21,38,.06)}
.plus:hover{background:rgba(255,255,255,.18)}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px;max-width:900px}
.chip{display:inline-flex;align-items:center;gap:11px;height:54px;padding:0 22px;border-radius:999px;cursor:pointer;font-size:16px;font-weight:500;color:var(--fg);transition:background .2s,transform .15s,border-color .2s;animation:rise .6s ease both;white-space:nowrap}
.chip:hover{background:var(--glass2);border-color:var(--glass-b2);transform:translateY(-2px)}
.chip .ic{opacity:.9}
.chip.sm{height:42px;padding:0 16px;font-size:14.5px;gap:8px;animation:none}
@keyframes rise{from{opacity:0;transform:translateY(12px)}}

/* ---------- Widgets ---------- */
.w-card{border-radius:20px;padding:16px;text-decoration:none;color:var(--fg);display:block;animation:rise .7s .2s ease both;overflow:hidden;position:relative}
a.w-card:hover,.w-card[data-open]:hover{background:var(--glass2);cursor:pointer}
.w-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.w-head b{font-weight:600}
.w-head small{display:block;color:var(--fg3);font-size:12.5px}
.w-head .go{margin-left:auto;color:var(--fg2)}
.w-ico{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 28%,transparent);color:var(--fg)}
.w-ico.ig{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285AEB 90%);color:#fff}
.w-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.w-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;display:block}
.w-weather{display:flex;align-items:center;gap:14px}
.w-weather .t{font-size:38px;font-weight:500;line-height:1}
.w-weather .d{color:var(--fg2);font-size:14px}
.w-weather .city{margin-left:auto;text-align:right;font-size:15px}
.w-weather .city small{display:block;color:var(--fg3);font-size:13px}
.w-feature{padding:0;min-height:190px;display:flex;align-items:flex-end}
.w-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.w-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.65))}
.w-feature .cap{position:relative;z-index:1;display:flex;align-items:center;gap:12px;padding:18px;width:100%;color:#fff}
.w-feature .cap b{font-size:19px;font-weight:600;line-height:1.25;flex:1}
.w-feature .cap .go{width:44px;height:44px;border-radius:50%;background:#fff;color:#111;display:grid;place-items:center;flex:none}
.w-info .rows{display:flex;gap:14px;align-items:center}
.w-info .rows img{width:96px;height:72px;border-radius:12px;object-fit:cover;flex:none}
.w-info .rows b{display:block;font-size:16px;margin-bottom:4px}
.w-info .rows span{display:flex;align-items:center;gap:6px;color:var(--fg2);font-size:14px}
.w-text{font-size:15px;color:var(--fg2);white-space:pre-line}
.w-clock{display:flex;align-items:center;gap:14px;font-variant-numeric:tabular-nums;text-align:right}
.w-clock .date{font-size:13px;color:var(--fg2)}
.w-clock .time{font-size:22px;font-weight:500;line-height:1.1}
.w-clock .sep{width:1px;height:34px;background:var(--line)}
.w-hweather{display:flex;align-items:center;gap:10px}
.w-hweather .t{font-size:20px;font-weight:500;line-height:1.1}
.w-hweather small{display:block;color:var(--fg2);font-size:12.5px}
.w-place{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:999px;font-size:15px}
.w-quote{max-width:420px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-style:italic;font-size:18px;color:var(--fg)}
.w-quote small{display:block;font-style:normal;color:var(--fg3);font-size:13px;margin-top:6px}

/* ---------- Pie ---------- */
.w-note{display:flex;align-items:center;justify-content:center;gap:7px;font-size:13px;color:var(--fg2);margin-top:14px}
.w-contact{display:flex;gap:16px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.w-contact.center{justify-content:center}
.w-contact.left{justify-content:flex-start}
.contact-btn{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;font-size:13px;color:var(--fg)}
.contact-btn .cb{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;transition:background .2s,transform .15s}
.contact-btn:hover .cb{background:var(--glass2);transform:translateY(-2px)}
.contact-btn.wa .cb{color:#3ddc84}

/* ---------- Chat ---------- */
.chat{min-height:100dvh;padding:100px var(--pad) 150px 124px}
.thread{max-width:960px;margin:0 auto;display:flex;flex-direction:column;gap:26px}
.msg{animation:rise .35s ease both}
.msg.user{align-self:flex-end;display:flex;flex-direction:column;align-items:flex-end;max-width:80%}
.bubble{background:var(--accent);color:var(--user-fg);padding:12px 22px;border-radius:24px 24px 6px 24px;font-size:16px;box-shadow:0 10px 30px -12px var(--accent);word-break:break-word}
.msg .time{font-size:12px;color:var(--fg3);margin-top:6px;padding-right:4px}
.msg.bot{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:start}
.avatar{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 50%,#9ad0ff));color:#fff;font-weight:700;overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:contain;background:#fff}
.bot-body{min-width:0;display:flex;flex-direction:column;gap:20px}
.bot-body > *{animation:rise .45s ease both}
.typing{display:inline-flex;gap:5px;padding:14px 4px}
.typing i{width:8px;height:8px;border-radius:50%;background:var(--fg2);animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}
.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.composer{position:fixed;left:84px;right:0;bottom:0;z-index:30;padding:14px var(--pad) 22px;background:linear-gradient(180deg,transparent,var(--chat-shade) 40%)}
.composer .ask{max-width:960px;margin:0 auto;height:66px;background:var(--glass2)}
.composer .send{background:var(--accent);color:#fff}

/* ---------- Bloques de respuesta ---------- */
.b-text{font-size:17px;line-height:1.65;color:var(--fg)}
.b-text p{margin:0 0 12px}
.b-text p:last-child{margin-bottom:0}
.b-text ul{margin:0 0 12px;padding-left:22px}
.b-text li{margin:4px 0}
.b-text strong{font-weight:600}
.b-h{font-size:28px;font-weight:600;margin:6px 0 2px;letter-spacing:-.01em}
.b-sub{color:var(--fg2);margin:0 0 18px;font-size:16px}
.b-media{position:relative;border-radius:20px;overflow:hidden;background:var(--glass)}
.b-media img,.b-media video{display:block;width:100%;aspect-ratio:16/6;object-fit:cover}
.b-media.tall img,.b-media.tall video{aspect-ratio:16/9}
.b-media .play{position:absolute;right:28px;top:50%;transform:translateY(-50%);width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.92);color:#111;display:grid;place-items:center;border:0;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.b-media figcaption{padding:12px 16px;color:var(--fg2);font-size:14px}
.b-media .mt{position:absolute;left:0;right:0;bottom:0;padding:18px 22px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.6));color:#fff;font-weight:600;font-size:20px}

.tl{display:grid;grid-auto-columns:minmax(200px,1fr);grid-auto-flow:column;gap:24px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.tl-item{position:relative;min-width:0}
.tl-label{font-weight:600;font-size:15px;margin-bottom:10px}
.tl-dot{position:relative;height:18px;margin-bottom:14px}
.tl-dot::before{content:"";position:absolute;left:0;right:-24px;top:8px;height:2px;background:var(--line)}
.tl-item:last-child .tl-dot::before{right:0}
.tl-dot i{position:absolute;left:4px;top:1px;width:16px;height:16px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 25%,transparent),0 0 18px var(--accent)}
.tl-item b{display:block;font-size:17px;margin-bottom:6px}
.tl-item p{margin:0 0 12px;color:var(--fg2);font-size:15px;line-height:1.5}
.tl-item img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;display:block}

.b-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;align-items:start}
.b-card{border-radius:18px;overflow:hidden;display:flex;flex-direction:column;color:var(--fg);text-decoration:none;transition:transform .2s,background .2s}
a.b-card:hover{transform:translateY(-3px);background:var(--glass2)}
.b-card .im{position:relative}
.b-card .im img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.b-card .badge{position:absolute;top:12px;left:12px;background:var(--accent);color:#fff;font-size:13px;font-weight:500;padding:4px 12px;border-radius:999px}
.b-card .bd{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px;flex:1}
.b-card .bd b{font-size:17px;font-weight:600}
.b-card .bd .s{color:var(--fg2);font-size:14px;display:flex;align-items:center;gap:6px}
.b-card .bd .p{font-size:19px;font-weight:600;margin-top:4px}
.b-card .bd p{margin:4px 0 0;color:var(--fg2);font-size:14.5px;line-height:1.5}
.b-card .bd .lnk{margin-top:auto;padding-top:10px;display:flex;align-items:center;gap:6px;font-weight:500;font-size:14px;color:var(--fg)}
.b-card.noimg .bd{padding:18px}

.b-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.b-gallery button{padding:0;border:0;background:none;cursor:zoom-in;border-radius:14px;overflow:hidden}
.b-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}
.b-gallery button:hover img{transform:scale(1.04)}

.b-panel{border-radius:20px;padding:22px 24px;background:var(--panel)}
.feat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0}
.feat{display:flex;gap:16px;padding:6px 22px}
.feat + .feat{border-left:1px solid var(--line)}
.feat:first-child{padding-left:0}
.feat .ic{color:var(--accent);width:40px;height:40px}
.feat b{display:block;font-size:17px;margin-bottom:4px}
.feat p{margin:0;color:var(--fg2);font-size:14.5px;line-height:1.5}
.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}
.stat{text-align:left}
.stat .v{font-size:34px;font-weight:600;color:var(--fg);line-height:1.1}

.stat .l{color:var(--fg2);font-size:14px}
.faq details{border-bottom:1px solid var(--line)}
.faq details:last-child{border-bottom:0}
.faq summary{list-style:none;cursor:pointer;padding:14px 0;font-weight:500;display:flex;gap:12px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{margin-left:auto;transition:transform .2s;color:var(--fg2)}
.faq details[open] summary .ic{transform:rotate(180deg)}
.faq details p{margin:0 0 16px;color:var(--fg2);line-height:1.6}
.contact-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.c-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);text-decoration:none;color:var(--fg);border:1px solid var(--line)}
:root[data-mode="light"] .c-row{background:rgba(255,255,255,.5)}
a.c-row:hover{border-color:var(--glass-b2);background:rgba(255,255,255,.1)}
.c-row .ci{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 25%,transparent);flex:none}
.c-row small{display:block;color:var(--fg3);font-size:12.5px}
.c-row span{word-break:break-word}
.hours{margin-top:14px;color:var(--fg2);white-space:pre-line;font-size:15px;display:flex;gap:10px}
.b-form form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.b-form .full{grid-column:1/-1}
.b-form input,.b-form textarea{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--fg);border-radius:14px;padding:13px 15px;font:inherit;font-size:15.5px;outline:none}
:root[data-mode="light"] .b-form input,:root[data-mode="light"] .b-form textarea{background:rgba(255,255,255,.7)}
.b-form input:focus,.b-form textarea:focus{border-color:var(--accent)}
.b-form textarea{min-height:110px;resize:vertical}
.b-form .hp{position:absolute;left:-9999px}
.btn-acc{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 24px;border-radius:999px;border:0;background:var(--accent);color:#fff;font-weight:500;cursor:pointer;text-decoration:none;font-size:15.5px}
.btn-acc:hover{filter:brightness(1.08)}
.btn-acc:disabled{opacity:.6}
.form-ok{display:flex;gap:12px;align-items:center;color:var(--fg)}
.form-ok .ic{color:#3ddc84}
.form-err{grid-column:1/-1;color:#ff8a9a;font-size:14px}
.b-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.b-cta p{margin:0;flex:1;min-width:200px;font-size:17px}
.next{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.next-label{width:100%;font-size:13.5px;color:var(--fg3)}
.answer-meta{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--fg3)}

/* ---------- Hoja de menú / historial ---------- */
.sheet-back{position:fixed;inset:0;z-index:60;background:rgba(4,7,16,.5);display:flex;align-items:flex-end;justify-content:center;animation:fadein .2s}
.sheet{width:100%;max-width:640px;max-height:80dvh;display:flex;flex-direction:column;overflow:hidden;border-radius:26px 26px 0 0;background:color-mix(in srgb,var(--sheet-bg,#0d1426) 90%,transparent);padding:8px 0 0;animation:slideup .25s ease;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.sheet-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:2px 22px calc(26px + env(safe-area-inset-bottom));scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--fg) 25%,transparent) transparent;overscroll-behavior:contain}
.sheet-body::-webkit-scrollbar{width:6px}.sheet-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--fg) 25%,transparent);border-radius:6px}
@media (min-width:760px){.sheet-back{align-items:center}.sheet{border-radius:26px}}
.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:12px 22px 14px;flex:none}
.sheet-head h2{margin:0;font-size:20px;font-weight:600}
.sheet-list{display:grid;gap:8px}
.sheet-item{display:flex;align-items:center;gap:14px;padding:13px 14px 13px 16px;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--fg) 5%,transparent);cursor:pointer;text-align:left;width:100%;min-width:0;color:inherit;font:inherit}
.sheet-item>svg:last-child{flex:none;opacity:.5}
.sheet-item b{display:block;font-weight:600;line-height:1.3}
.sheet-item:hover{background:color-mix(in srgb,var(--fg) 11%,transparent)}
.sheet-item .si{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 28%,transparent);flex:none}
.sheet-item small{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:var(--fg2);font-size:13px;line-height:1.4;margin-top:2px;overflow-wrap:anywhere}
.sheet-item .g{flex:1;min-width:0}
.sheet-empty{color:var(--fg2);text-align:center;padding:30px 0}
@keyframes fadein{from{opacity:0}}
@keyframes slideup{from{transform:translateY(30px);opacity:0}}
.lightbox{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.88);display:grid;place-items:center;padding:24px}
.lightbox img{max-width:100%;max-height:90dvh;border-radius:12px}
.lightbox .round{position:absolute;top:18px;right:18px}
.preview-bar{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:50;background:#f0a73a;color:#1a1200;font-size:13px;font-weight:500;padding:6px 14px;border-radius:0 0 12px 12px;display:flex;gap:8px;align-items:center}
.noscript{position:relative;z-index:10;max-width:860px;margin:0 auto;padding:120px 24px;color:var(--fg)}
.soon{position:relative;z-index:10;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}
.soon-logo{height:64px;margin-bottom:20px}

/* ---------- Responsive ---------- */
@media (max-width:1100px){.desk{--row:50px;--gap:12px}}
@media (max-width:760px){
  :root{--pad:16px}
  .top{padding:14px var(--pad);gap:10px}
  .brand-name{font-size:21px}
  .brand-mark,.brand-logo{height:34px}
  .brand-mark{width:34px}
  .round{width:42px;height:42px}
  .home{padding:84px var(--pad) 40px}
  .desk{grid-template-columns:1fr;grid-auto-rows:auto;gap:14px}
  .wg{grid-column:1!important;grid-row:auto!important}
  .wg.tall{height:calc(var(--h) * 44px)}
  .wg.t-search{padding:6vh 0 4px}
  .w-contact{justify-content:center}
  .welcome{font-size:32px}
  .ask-hero{height:64px;padding-left:16px}
  .ask input{font-size:16px}
  .chips{gap:10px;margin-top:24px}
  .chip{height:46px;padding:0 16px;font-size:15px;gap:8px}
  .contact-btn .cb{width:52px;height:52px}
  .w-quote{font-size:16px;margin:0 auto;text-align:center}
  .rail{display:none!important}
  .chat{padding:84px var(--pad) 130px}
  .composer{left:0;padding:10px var(--pad) calc(14px + env(safe-area-inset-bottom))}
  .composer .ask{height:58px;padding-left:8px}
  .msg.bot{grid-template-columns:1fr;gap:10px}
  .avatar{width:32px;height:32px;border-radius:10px;font-size:14px}
  .msg.user{max-width:88%}
  .b-h{font-size:23px}
  .b-text{font-size:16px}
  .b-media img,.b-media video{aspect-ratio:16/9}
  .b-media .play{right:50%;transform:translate(50%,-50%)}
  .tl{grid-auto-flow:row;grid-auto-columns:auto}
  .tl-item{padding-left:34px}
  .tl-dot{position:absolute;left:0;top:0;bottom:-24px;width:18px;height:auto;margin:0}
  .tl-dot::before{left:8px;right:auto;top:6px;bottom:0;width:2px;height:auto}
  .tl-item:last-child .tl-dot::before{display:none}
  .tl-dot i{left:1px;top:3px}
  .feat{padding:14px 0!important;border-left:0!important}
  .feat + .feat{border-top:1px solid var(--line)}
  .b-panel{padding:16px 18px}
  .b-form form{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- Modo editor (dentro del panel) ---------- */
.editing .desk{min-height:calc(100dvh - 140px);background-image:linear-gradient(to right,rgba(255,255,255,.06) 1px,transparent 1px);background-size:calc((100% + var(--gap)) / 12) 100%}
.editing .wg{cursor:grab;animation:none;outline:1px dashed rgba(255,255,255,.28);outline-offset:3px;border-radius:20px;touch-action:none;user-select:none}
.editing .wg:hover{outline-color:rgba(255,255,255,.6)}
.editing .wg.sel{outline:2px solid var(--accent);outline-offset:3px;z-index:5}
.editing .wg.drag{cursor:grabbing;opacity:.85;z-index:10;transition:none}
.editing .wg > .wi{pointer-events:none}
.editing .wg .rz{position:absolute;right:-7px;bottom:-7px;width:16px;height:16px;border-radius:5px;background:var(--accent);border:2px solid #fff;cursor:nwse-resize;display:none;z-index:6}
.editing .wg.sel .rz{display:block}
.editing .wg .tag{position:absolute;left:8px;top:-11px;font-size:11px;font-weight:600;background:var(--accent);color:#fff;padding:2px 8px;border-radius:999px;display:none;z-index:6;white-space:nowrap}
.editing .wg.sel .tag,.editing .wg:hover .tag{display:block}
.editing .ghost{position:absolute;border-radius:20px;background:color-mix(in srgb,var(--accent) 22%,transparent);border:2px dashed var(--accent);pointer-events:none;z-index:1}
.editing .rail,.editing .composer{display:none!important}
.editing .empty-desk{grid-column:1/-1;grid-row:3/span 3;display:grid;place-items:center;color:var(--fg2);border:2px dashed rgba(255,255,255,.3);border-radius:20px}

/* ---------- Respuestas con imágenes ---------- */
.b-text .md-img{display:block;width:100%;max-height:440px;object-fit:cover;border-radius:18px;margin:12px 0;cursor:zoom-in;background:var(--glass)}
.b-text p .md-img{display:inline-block;width:auto;max-width:100%;max-height:300px;margin:6px 0;vertical-align:middle}
.md-gallery{display:grid;gap:10px;margin:12px 0}
.md-gallery.n2{grid-template-columns:1fr 1fr}
.md-gallery.n3{grid-template-columns:2fr 1fr 1fr}
.md-gallery.n4{grid-template-columns:repeat(4,1fr)}
.md-gallery .md-img{margin:0;height:100%;max-height:none;aspect-ratio:4/3}
.md-gallery.n1 .md-img{aspect-ratio:16/7}
.b-text a{color:inherit;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}

/* ---------- Catálogo ---------- */
.cat-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.chip.on{background:var(--accent);border-color:transparent;color:#fff}
.b-card .facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;color:var(--fg2);font-size:13.5px}
.b-card .facts span{display:inline-flex;align-items:center;gap:5px}
button.b-card{color:var(--fg)}
button.b-card:hover{transform:translateY(-3px);background:var(--glass2)}
.item-gal{display:grid;gap:8px;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;height:min(420px,52vw);border-radius:20px;overflow:hidden}
.item-gal button{padding:0;border:0;background:var(--glass);cursor:zoom-in;overflow:hidden}
.item-gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.item-gal button:hover img{transform:scale(1.04)}
.item-gal .main{grid-row:1/span 2}
.item-gal.n1{grid-template-columns:1fr;grid-template-rows:1fr}
.item-gal.n2{grid-template-columns:2fr 1fr;grid-template-rows:1fr}
.item-gal.n2 .main{grid-row:auto}
.item-gal.n3{grid-template-columns:2fr 1fr}
.item-gal.n4 button:last-child{grid-column:2/span 2}
.item-price{font-size:26px;font-weight:600;margin-top:4px}
.attrs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.attrs small{display:block;color:var(--fg3);font-size:12.5px}
.attrs b{font-weight:600;font-size:16px}
@media (max-width:760px){
  .item-gal{height:62vw;grid-template-columns:2fr 1fr}
  .item-gal button:nth-child(n+4){display:none}
  .md-gallery.n3,.md-gallery.n4{grid-template-columns:1fr 1fr}
}
.editing *,.editing *::before,.editing *::after{animation:none!important;transition:none!important}
.w-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- Galería y blog ---------- */
.album-grid{columns:3 220px;column-gap:10px}
.album-grid figure{margin:0 0 10px;break-inside:avoid}
.album-grid button{display:block;width:100%;padding:0;border:0;background:var(--glass);border-radius:14px;overflow:hidden;cursor:zoom-in}
.album-grid img,.album-grid video{display:block;width:100%;border-radius:14px;transition:transform .3s}
.album-grid button:hover img{transform:scale(1.03)}
.album-grid figcaption{font-size:13px;color:var(--fg2);padding:6px 4px 0}
.b-card.ent-album .badge{left:auto;right:12px;top:auto;bottom:12px;background:rgba(0,0,0,.55);display:inline-flex;gap:5px;align-items:center}
.b-card.ent-post p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.b-text .md-h{font-size:21px;font-weight:600;margin:22px 0 8px;line-height:1.3}
h4.md-h{font-size:18px}
.post-body{font-size:17.5px;line-height:1.75}
.post-body p{margin:0 0 16px}
.alb-cov{position:relative;padding:0;border:0;border-radius:10px;overflow:hidden;cursor:pointer;background:var(--glass)}
.alb-cov img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:auto}
.alb-cov span{position:absolute;left:0;right:0;bottom:0;padding:6px 8px;font-size:12.5px;color:#fff;background:linear-gradient(180deg,transparent,rgba(0,0,0,.65));text-align:left}
/* Buscador y botones del menú crecen si su contenido no cabe */
.home:not(.x) .desk{grid-auto-rows:minmax(var(--row),auto)}
.editing .desk{grid-auto-rows:var(--row)!important}
.wg.t-chips,.wg.t-search{min-height:auto}
.chip,a.chip{text-decoration:none}

/* ---------- Reservas y tours ---------- */
.rsv-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:8px;color:var(--fg2);font-size:15px}
.rsv-facts span{display:inline-flex;align-items:center;gap:6px}
.rsv-box{display:grid;gap:14px}
.rsv-step{display:flex;align-items:center;gap:8px;font-size:16px}
.rsv-step .ic{color:var(--accent)}
.rsv-days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;scroll-snap-type:x proximity}
.rsv-day{flex:none;scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:104px;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.05);cursor:pointer;color:var(--fg);text-align:left}
:root[data-mode="light"] .rsv-day,:root[data-mode="light"] .rsv-slot{background:rgba(255,255,255,.6)}
.rsv-day b{font-weight:600;font-size:15px}
.rsv-form form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:760px){.rsv-form form{grid-template-columns:1fr}}
.rsv-day small{font-size:12.5px;color:var(--fg2)}
.rsv-day:hover:not(:disabled),.rsv-slot:hover{border-color:var(--accent)}
.rsv-day:disabled{opacity:.4;cursor:not-allowed}
.rsv-day.on,.rsv-slot.on{background:var(--accent);border-color:var(--accent);color:#fff}
.rsv-day.on small,.rsv-slot.on small{color:rgba(255,255,255,.85)}
.rsv-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.rsv-slot{white-space:nowrap}
.rsv-slot{display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px 8px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.05);cursor:pointer;color:var(--fg);font-weight:600;font-size:15.5px}
.rsv-slot small{font-weight:400;font-size:12px;color:var(--fg2)}
.rsv-people{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden}
.stepper button{width:42px;height:40px;border:0;background:none;color:var(--fg);font-size:20px;cursor:pointer}
.stepper button:hover{background:rgba(255,255,255,.08)}
.stepper b{min-width:30px;text-align:center;font-size:16px}
.rsv-total{font-weight:600}
.rsv-sum{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:14px;color:var(--fg2);padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05)}
.rsv-sum b{color:var(--fg)}
.receipt{display:grid;gap:16px}
.receipt .rc-head{display:flex;gap:14px;align-items:center}
.receipt .rc-ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#22b573;color:#fff;flex:none}
.receipt.off .rc-ic{background:#8a90a3}
.receipt .rc-head b{display:block;font-size:19px}
.receipt .rc-head small{color:var(--fg2);font-size:14px}
.rc-code{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-radius:14px;border:1px dashed var(--glass-b2)}
.rc-code small{color:var(--fg2)}
.rc-code span{font:600 22px/1 ui-monospace,Menlo,monospace;letter-spacing:.12em}
.receipt .next button.chip{font:inherit;font-size:14.5px}
.rsv-day.mid{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}
/* Tienda */
.cart-btn{position:relative}
.cart-btn[hidden]{display:none}
.cart-n{position:absolute;top:4px;right:2px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:11.5px;font-weight:600;display:grid;place-items:center}
.ent-prod{cursor:pointer;background:var(--panel)}
.ent-prod:hover{transform:translateY(-3px)}
.ent-prod .im .noimg,.cl .noimg{display:grid;place-items:center;aspect-ratio:16/10;color:var(--fg3);background:rgba(255,255,255,.05)}
.ent-prod .badge.off{background:#8a90a3}
.ent-prod.soldout .im img{filter:grayscale(.7);opacity:.7}
.pr{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:4px}
.pr .p{font-size:19px;font-weight:600}
.pr s{color:var(--fg3);font-size:14.5px}
.pr.big .p{font-size:24px}
.ent-prod .add,.ent-prod .lnk{margin-top:auto;align-self:flex-start}
.ent-prod .add{margin-top:10px}
.ent-prod .add.done{background:var(--accent);color:#fff;border-color:var(--accent)}
.shop-buy{display:grid;gap:16px}
.opt-g{display:grid;gap:8px}
.opt-n{font-size:14px;color:var(--fg2)}
.opt-v{display:flex;flex-wrap:wrap;gap:8px}
.opt{min-width:48px;padding:9px 16px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--fg);cursor:pointer;font:inherit;font-size:15px}
:root[data-mode="light"] .opt{background:rgba(255,255,255,.6)}
.opt:hover{border-color:var(--accent)}
.opt.on{background:var(--accent);border-color:var(--accent);color:#fff}
.buy-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.buy-row .hint{color:var(--fg2);font-size:14px}
.added{display:inline-flex;align-items:center;gap:6px;color:#22b573;font-weight:500}
.shop-cart{display:grid;gap:14px}
.cart-lines{display:grid;gap:4px}
.cl{display:grid;grid-template-columns:56px 1fr auto auto;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.cl.ro{grid-template-columns:1fr auto;padding:6px 0}
.cl img,.cl .noimg{width:56px;height:56px;border-radius:10px;object-fit:cover;aspect-ratio:auto}
.cl-t{display:flex;flex-direction:column;min-width:0}
.cl-t b{font-weight:600;font-size:15.5px}
.cl-t small{color:var(--fg2);font-size:13px}
.cl-p{white-space:nowrap}
.cl.short{color:#ff8a9a}
.stepper.sm button{width:34px;height:34px;font-size:18px}
.stepper.sm b{min-width:24px;font-size:15px}
.cart-sub{display:flex;justify-content:space-between;font-size:17px}
.opt-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.oc{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;border:1px solid var(--line);cursor:pointer;background:rgba(255,255,255,.04)}
.oc:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}
.oc input{accent-color:var(--accent);margin-top:3px;width:auto;padding:0;border:0}
.oc b{display:block;font-weight:500;font-size:15px}
.oc small{color:var(--fg2);font-size:13px}
.shop-rc .next .btn-acc{height:44px}
@media (max-width:760px){.cl{grid-template-columns:48px 1fr auto}.cl .cl-p{grid-column:2/-1;justify-self:end}.cl img,.cl .noimg{width:48px;height:48px}}
.shop-cart form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:760px){.shop-cart form{grid-template-columns:1fr}}
/* Subastas */
.ent-auc{cursor:pointer;background:var(--panel)}
.ent-auc:hover{transform:translateY(-3px)}
.ent-auc .im .noimg{display:grid;place-items:center;aspect-ratio:16/10;color:var(--fg3);background:rgba(255,255,255,.05)}
.ent-auc .badge.live{background:#e5484d}
.ent-auc .badge.off{background:#8a90a3}
.auc-row{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:8px}
.auc-row small{display:block;color:var(--fg2);font-size:12.5px}
.auc-row .p{font-size:19px;font-weight:600}
.auc-cd{font-variant-numeric:tabular-nums;font-weight:600}
.auc-cd.hot{color:#ff6b6b}
.ent-auc .lnk{margin-top:auto;padding-top:10px}
.auc-live{display:grid;gap:16px}
.auc-st{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:17px}
.auc-st small{color:var(--fg2);font-size:13.5px;flex-basis:100%;padding-left:28px}
.auc-st.live .dot{width:10px;height:10px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 0 rgba(229,72,77,.6);animation:aucpulse 1.6s infinite;margin:0 4px}
@keyframes aucpulse{0%{box-shadow:0 0 0 0 rgba(229,72,77,.6)}70%{box-shadow:0 0 0 10px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
.auc-st.win{color:#22b573}
.auc-st.off{color:var(--fg2)}
.auc-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.auc-nums small{display:block;color:var(--fg2);font-size:12.5px}
.auc-nums b{font-size:22px;font-weight:600}
.auc-note{display:flex;align-items:center;gap:8px;margin:0;color:var(--fg2);font-size:14px}
.auc-note.lead{color:#22b573;font-weight:500}
.auc-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:760px){.auc-form{grid-template-columns:1fr}}
.auc-quick{display:flex;flex-wrap:wrap;gap:8px}
.auc-amt span{display:block;font-size:13.5px;color:var(--fg2);margin-bottom:6px}
.auc-amt input{font-size:20px!important;font-weight:600}
.auc-who{margin:0;font-size:14px;color:var(--fg2);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.auc-who b{color:var(--fg)}
.linkish{border:0;background:none;color:var(--accent);cursor:pointer;font:inherit;padding:0;text-decoration:underline}
.auc-min{color:var(--fg2);font-size:14px;margin-left:10px}
.auc-hist{display:grid;gap:2px}
.auc-hist .next-label{margin-bottom:6px}
.ah{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.ah span{color:var(--fg2)}
.ah small{color:var(--fg3);font-size:12.5px}
.ah.ah-first b{color:var(--accent)}
.ah.win b{color:#22b573}
.auc-ok{margin:0}
/* Empleos */
.ent-job{cursor:pointer;background:var(--panel)}
.ent-job:hover{transform:translateY(-3px)}
.ent-job .bd{padding:18px 18px 16px;gap:6px}
.job-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);margin-bottom:4px}
.job-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.job-tags span{font-size:12.5px;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--fg2)}
.job-sal{display:flex;align-items:center;gap:6px;font-weight:600;font-size:15px}
.job-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.job-cols ul{margin:10px 0 0;padding-left:20px;display:grid;gap:6px;color:var(--fg2);font-size:15px;line-height:1.45}
.job-apply form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
@media (max-width:760px){.job-apply form{grid-template-columns:1fr}}
.job-file{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;border:1px dashed var(--glass-b2);cursor:pointer;position:relative}
.job-file:hover{border-color:var(--accent)}
.job-file.has{border-style:solid;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}
.job-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;padding:0}
.jf-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.07);flex:none}
.jf-t{display:flex;flex-direction:column;min-width:0}
.jf-t b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jf-t small{color:var(--fg2);font-size:13px}
/* Chat en vivo */
.live-st{display:inline-block;width:9px;height:9px;border-radius:50%;background:#8a90a3;flex:none;vertical-align:middle}
.live-st.on{background:#2fc58c;box-shadow:0 0 0 3px rgba(47,197,140,.25)}
.live-hb{position:relative}
.live-hb .live-st{position:absolute;right:9px;bottom:9px;width:9px;height:9px;border:2px solid var(--chat-shade,#0b1020)}
.live-n{position:absolute;top:4px;right:2px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#e5484d;color:#fff;font-size:11.5px;font-weight:600;display:grid;place-items:center}
.live-n[hidden]{display:none}
.live-bar{display:flex;align-items:center;gap:10px;margin:0 auto 8px;max-width:960px;padding:8px 14px;border-radius:14px;background:var(--panel);font-size:14px;flex-wrap:wrap}
.live-bar{flex-wrap:nowrap}
.live-bar .lb-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-bar button{white-space:nowrap}
.live-bar button{border:0;background:none;color:var(--fg2);font:inherit;font-size:13.5px;cursor:pointer;padding:4px 6px;border-radius:8px}
.live-bar button:hover{color:var(--fg);background:rgba(255,255,255,.07)}
.live-wrap{display:flex;flex-direction:column;gap:18px}
.live-head{display:flex;align-items:center;gap:12px}
.live-head b{display:block;font-size:16.5px}
.live-head small{display:flex;align-items:center;gap:7px;color:var(--fg2);font-size:13.5px}
.live-wrap > .live-head{padding:12px 16px;border-radius:16px;background:var(--panel);align-self:stretch}
.live-msgs{display:flex;flex-direction:column;gap:18px}
.live-agent .live-name{display:block;font-size:12.5px;color:var(--fg3);margin-bottom:4px}
.live-agent .b-text p:first-child{margin-top:0}
.live-agent .b-text img{max-width:min(360px,100%);border-radius:14px}
.live-sys{align-self:center;font-size:13px;color:var(--fg2);padding:6px 14px;border-radius:999px;background:var(--panel);text-align:center;max-width:90%}
.msg.user.pending .bubble{opacity:.6}
.msg.user.failed .bubble{opacity:.5;outline:1px solid #ff8a9a}
.msg.user.failed .time{color:#ff8a9a}
.live-typing{display:flex;align-items:center;gap:12px}
.live-typing[hidden]{display:none}
.live-start{display:grid;gap:14px}
.live-start form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:760px){.live-start form{grid-template-columns:1fr}}
.live-chip .live-st{margin-left:2px}
.live-wrap.ended .live-head .live-st{display:none}
.live-w{display:flex;flex-direction:column;gap:10px}
.live-w .w-head small{display:flex;align-items:center;gap:6px;color:var(--fg2);font-size:13px}
.live-w p{margin:0;color:var(--fg2);font-size:14.5px;line-height:1.45}
.live-w .chip{align-self:flex-start}
.live-agent .bot-body{gap:0}
.chat:has(.live-wrap){padding-bottom:210px}

/* Campos personalizados públicos */
.cf-pub{display:flex;flex-direction:column;gap:12px}
.cf-pub .attrs a{color:inherit;text-decoration:underline;text-underline-offset:2px;word-break:break-word}
.cf-long small,.cf-img figcaption{display:block;font-size:12px;opacity:.7;margin-bottom:4px}
.cf-long p{margin:0 0 .4em}
.cf-img{margin:0}
.cf-img img{max-width:100%;max-height:320px;border-radius:12px;display:block;cursor:zoom-in}

/* Portafolio */
.pf-mono{display:grid;place-items:center;width:100%;height:100%;font-size:48px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 45%,#000))}
.ent-port{cursor:pointer;background:var(--panel)}
.ent-port:hover{transform:translateY(-3px)}
.ent-port .pf-im{aspect-ratio:16/10;overflow:hidden}
.ent-port .pf-im img{width:100%;height:100%;object-fit:cover}
.ent-port .lnk{color:var(--fg2)!important;font-size:13.5px!important}
.pf-hero{height:180px;border-radius:18px;overflow:hidden}
.pf-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.pf-filter .chip.on{background:var(--accent);color:#fff;border-color:transparent}
.pf-w{display:flex;flex-direction:column;height:100%}
.pf-wgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;overflow:auto;min-height:0;flex:1;margin-top:10px}
.pf-wit{position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.08)}
.pf-wit img{width:100%;height:100%;object-fit:cover;display:block}
.pf-wit .pf-mono{font-size:30px}
.pf-wit span{position:absolute;inset:auto 0 0 0;padding:16px 8px 6px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;text-align:left;font-size:12.5px;line-height:1.2}
.pf-wit span b{font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Enlaces de pago y cotizaciones enviados por chat */
.live-agent .b-text a[href*="/pago/"],.live-agent .b-text a[href*="/cotizacion/"]{display:inline-flex;align-items:center;margin-top:6px;padding:9px 16px;border-radius:999px;background:var(--accent);color:#fff;font-weight:600;text-decoration:none}
/* Barras de desplazamiento discretas */
html{scrollbar-width:thin;scrollbar-color:rgba(127,127,127,.35) transparent}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(127,127,127,.35);border-radius:8px;border:2px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-button{display:none;width:0;height:0}

/* Editor: encabezado arrastrable */
.ed-top .brand,.ed-top #modeBtn{cursor:grab;touch-action:none}
.ed-top .brand:hover,.ed-top #modeBtn:hover{outline:1px dashed color-mix(in srgb,var(--fg) 45%,transparent);outline-offset:6px;border-radius:12px}
.ed-top.hd-drag .tz{outline:1px dashed color-mix(in srgb,var(--fg) 30%,transparent);outline-offset:4px;border-radius:14px;min-height:46px}
.ed-top.hd-drag .tz.on{outline:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}
.hd-ghost{position:fixed;z-index:200;pointer-events:none;opacity:.85;transform:translate(-50%,-50%) scale(1.03);filter:drop-shadow(0 10px 24px rgba(0,0,0,.35))}
.hd-src{opacity:.25}
@media (max-width:760px){.top{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}.tz{gap:8px}.top[data-logo-pos=center] .tz[data-z=center]{max-width:none}}
/* Botón: estilos y formas */
.w-btn.light{background:#fff;color:#111;border:1px solid #fff}
.w-btn.dark{background:#111;color:#fff;border:1px solid #111}
.w-btn.outline{background:transparent;color:var(--fg);border:2px solid currentColor}
.w-btn.custom{border:1px solid transparent}
.w-btn.light:hover,.w-btn.dark:hover,.w-btn.custom:hover{filter:brightness(1.06)}
.w-btn.outline:hover{background:var(--glass)}
.w-btn.pill{border-radius:999px}
.w-btn.square{border-radius:8px}
/* Elementos fijos al desplazarse: se quedan pegados arriba o abajo de la pantalla */
.wg.fix-top,.wg.fix-bottom{position:sticky;z-index:25;align-self:start;height:calc(var(--h) * var(--row) + (var(--h) - 1) * var(--gap))}
.wg.fix-top{top:88px}
.wg.fix-bottom{bottom:16px;align-self:end}
@media (max-width:760px){.wg.fix-top{top:72px}.wg.fix-top,.wg.fix-bottom{height:auto}}
.ed .wg.fix-top,.ed .wg.fix-bottom{position:relative;top:auto;bottom:auto}
/* Imágenes con tamaño elegido en el editor */
.md-fig{margin:12px 0;text-align:center}
.b-text .md-fig .md-img,.md-fig .md-img{display:inline-block;max-height:none;height:auto;object-fit:contain;margin:0;border-radius:14px;background:none}
.md-img.sz-s{width:33%}.md-img.sz-m{width:50%}.md-img.sz-l{width:75%}.md-img.sz-f{width:100%}
@media (max-width:760px){.md-img.sz-s{width:50%}.md-img.sz-m{width:75%}.md-img.sz-l{width:100%}}
.w-text .md-fig{margin:8px 0}
/* Editor: menú de clic derecho y selección del encabezado */
.ed-menu{position:fixed;z-index:500;min-width:210px;padding:6px;border-radius:12px;background:#fff;color:#111;box-shadow:0 18px 50px -12px rgba(0,0,0,.45),0 0 0 1px rgba(0,0,0,.08);font:14px/1.3 system-ui,-apple-system,'Segoe UI',sans-serif}
.ed-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;background:none;border-radius:8px;color:inherit;font:inherit;text-align:left;cursor:pointer}
.ed-menu button:hover{background:#f1f1f0}
.ed-menu button.danger{color:#d6334a}
.ed-menu .mi{width:16px;display:inline-grid;place-items:center;color:#666}
.ed-menu hr{border:0;border-top:1px solid #eee;margin:4px 6px}
.ed-top .hsel{outline:2px solid var(--accent)!important;outline-offset:6px;border-radius:12px}
.top[data-logo-size=sm] .brand-logo{height:28px}.top[data-logo-size=sm] .brand-mark{width:30px;height:30px;font-size:15px}.top[data-logo-size=sm] .brand-name{font-size:20px}
.top[data-logo-size=lg] .brand-logo{height:52px;max-width:240px}.top[data-logo-size=lg] .brand-mark{width:48px;height:48px}.top[data-logo-size=lg] .brand-name{font-size:30px}
.top[data-logo-size=xl] .brand-logo{height:68px;max-width:320px}.top[data-logo-size=xl] .brand-mark{width:60px;height:60px;font-size:26px}.top[data-logo-size=xl] .brand-name{font-size:36px}
@media (max-width:760px){.top[data-logo-size=lg] .brand-logo{height:42px}.top[data-logo-size=xl] .brand-logo{height:50px}}
/* ---------- Widget: menú de navegación ---------- */
.wg.t-menu{z-index:35}
.wg.t-menu,.wg.t-menu > .wi{overflow:visible}
.w-menu{--mhc:var(--accent);--msbg:rgba(14,18,32,.97);--msfg:var(--fg);display:flex;align-items:center;min-width:0;position:relative}
.w-menu.a-center{justify-content:center}.w-menu.a-right{justify-content:flex-end}
.w-menu ul{list-style:none;margin:0;padding:0}
.w-menu .mn-i{display:flex;align-items:center;gap:8px;padding:9px 14px;border:0;background:none;color:inherit;font:500 15px var(--font);text-decoration:none;border-radius:12px;cursor:pointer;white-space:nowrap;width:100%;text-align:left;transition:background .15s,color .15s}
.w-menu.z-sm .mn-i{font-size:13.5px;padding:7px 11px}.w-menu.z-lg .mn-i{font-size:17px;padding:11px 18px}
.w-menu .mn-car{display:inline-grid;margin-left:auto;padding-left:2px;opacity:.7;font-style:normal}
.w-menu .mn-l.mn-d0{display:flex;gap:4px;flex-wrap:wrap}
.w-menu.o-h .mn-d0 > li{position:relative}
.w-menu.o-h.s-pills .mn-d0{padding:5px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur))}
.w-menu.o-h.s-pills .mn-d0 > li > .mn-i{border-radius:999px}
.w-menu .mn-d0 > li > .mn-i:hover,.w-menu .mn-d0 > li.open > .mn-i{background:color-mix(in srgb,var(--mhc) 18%,transparent);color:var(--mhc)}
.w-menu.s-plain .mn-d0 > li > .mn-i:hover{background:none}
.w-menu.s-underline .mn-d0 > li > .mn-i{border-radius:0;border-bottom:2px solid transparent}
.w-menu.s-underline .mn-d0 > li > .mn-i:hover{background:none;border-bottom-color:var(--mhc)}
.w-menu.s-buttons .mn-d0 > li > .mn-i{background:var(--glass);border:1px solid var(--glass-b)}
.w-menu.s-buttons .mn-d0 > li > .mn-i:hover{background:var(--mhc);color:#fff;border-color:var(--mhc)}
/* Submenús (horizontal: desplegables; los niveles siguientes salen a la derecha) */
.w-menu .mn-l .mn-l{display:none;min-width:210px;padding:6px;border-radius:14px;background:var(--msbg);color:var(--msfg);border:1px solid var(--glass-b);box-shadow:0 18px 40px -16px rgba(0,0,0,.55);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:40}
.w-menu .mn-l .mn-l .mn-i{border-radius:9px;font-size:14.5px}
.w-menu .mn-l .mn-l .mn-i:hover{background:color-mix(in srgb,var(--mhc) 16%,transparent);color:var(--mhc)}
.w-menu.o-h .mn-d0 > li > .mn-l{position:absolute;top:calc(100% + 6px);left:0}
.w-menu.o-h .mn-l .mn-l li{position:relative}
.w-menu.o-h .mn-l .mn-l .mn-l{position:absolute;top:-6px;left:calc(100% + 4px)}
.w-menu.o-h li:hover > .mn-l,.w-menu.o-h li.open > .mn-l,.w-menu.o-h li:focus-within > .mn-l{display:block}
.w-menu.o-h .mn-d0 > li > .mn-l::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
/* Vertical: acordeón */
.w-menu.o-v{align-items:stretch}
.w-menu.o-v .mn-d0{flex-direction:column;flex:1}
.w-menu.o-v .mn-l .mn-l{position:static;box-shadow:none;border:0;background:none;color:inherit;padding:2px 0 2px 14px;backdrop-filter:none;-webkit-backdrop-filter:none;min-width:0}
.w-menu.o-v li.open > .mn-l{display:block}
.w-menu.o-v li.open > .mn-i .mn-car{transform:rotate(90deg)}
.w-menu.o-v .mn-i:hover{background:color-mix(in srgb,var(--mhc) 14%,transparent)}
.mn-burger{display:none;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:14px;border:1px solid var(--glass-b);background:var(--glass);color:inherit;font:500 15px var(--font);cursor:pointer}
.w-menu-empty{display:grid;place-items:center;border:1px dashed var(--glass-b);border-radius:14px;color:var(--fg3);font-size:14px}
@media (max-width:760px){
  .w-menu:not(.m-list){flex-direction:column;align-items:stretch}
  .w-menu:not(.m-list) .mn-burger{display:flex}
  .w-menu:not(.m-list) > .mn-d0{display:none;margin-top:6px;padding:6px;border-radius:16px;background:var(--glass2);border:1px solid var(--glass-b)}
  .w-menu.open > .mn-d0{display:flex}
  .w-menu .mn-d0{flex-direction:column}
  .w-menu .mn-l .mn-l{position:static!important;box-shadow:none;border:0;background:none;padding:2px 0 2px 14px;min-width:0}
  .w-menu li:hover > .mn-l{display:none}.w-menu li.open > .mn-l{display:block!important}
}
/* ---------- Widget: redes sociales ---------- */
.w-social{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.w-social.a-center{justify-content:center}.w-social.a-right{justify-content:flex-end}
.so-b{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:inherit;font-weight:500;font-size:14px}
.so-i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .15s,background .15s}
.w-social.z-sm .so-i{width:34px;height:34px}.w-social.z-lg .so-i{width:54px;height:54px}
.w-social.sh-rounded .so-i{border-radius:12px}.w-social.sh-square .so-i{border-radius:4px}
.so-b:hover .so-i{transform:translateY(-2px)}
.w-social.l-glass .so-i{background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur))}
.w-social.l-brand .so-i{background:var(--brand);color:#fff}
.w-social.l-mono .so-i{background:var(--fg);color:var(--chat-shade,#000)}
.w-social.l-outline .so-i{border:2px solid currentColor}
.w-social.with-t .so-b{padding-right:6px}
/* ---------- Widget: reproductor y código ---------- */
.w-player{border-radius:var(--radius,20px);overflow:hidden;background:var(--glass);border:1px solid var(--glass-b)}
.w-player iframe{width:100%;height:100%;border:0;display:block}
.w-player.k-spotify{border-radius:14px;background:none;border:0}
.w-player.audio{display:flex;flex-direction:column;justify-content:center;gap:10px}
.w-player audio{width:100%}
.w-code{border-radius:16px;overflow:hidden}
.w-code iframe{width:100%;height:100%;border:0;display:block;background:transparent}
.ed .w-code iframe,.ed .w-player iframe{pointer-events:none}

:root[data-mode=light] .w-menu{--msbg:rgba(255,255,255,.98)}
@media (prefers-color-scheme:light){:root[data-mode=auto] .w-menu{--msbg:rgba(255,255,255,.98)}}
@media (max-width:760px){.w-menu:not(.m-list) > .mn-d0{background:var(--msbg);color:var(--msfg)}}
/* ---------- Planes y precios ---------- */
.pr{--pc:var(--accent);display:flex;flex-direction:column;gap:18px}
.pr-head{text-align:center}
.pr-head h2{margin:0 0 6px;font-size:clamp(24px,3vw,34px);letter-spacing:-.02em}
.pr-head p{margin:0 auto;max-width:560px;color:var(--fg2)}
.pr-tog{align-self:center;display:inline-flex;padding:4px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur))}
.pr-tog button{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 18px;border:0;border-radius:999px;background:none;color:var(--fg2);font:500 14.5px var(--font);cursor:pointer}
.pr-tog button.on{background:var(--fg);color:var(--chat-shade,#000)}
:root[data-mode=light] .pr-tog button.on{color:#fff}
.pr-save{font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,#22c55e 22%,transparent);color:#22c55e}
.pr-tog button.on .pr-save{background:#22c55e;color:#fff}
.pr-grid{display:grid;gap:16px;align-items:stretch}
.pr-grid.n1{grid-template-columns:minmax(0,420px);justify-content:center}
.pr-grid.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pr-grid.n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pr-grid.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pr-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:26px 22px 22px;border-radius:22px;background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(var(--blur)) saturate(1.2);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.2);min-width:0}
.pr-card.pr-hl{border:2px solid var(--pc);box-shadow:0 24px 60px -30px color-mix(in srgb,var(--pc) 70%,transparent);background:color-mix(in srgb,var(--pc) 9%,var(--glass))}
.pr-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:4px 12px;border-radius:999px;background:var(--pc);color:#fff;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 6px 16px -6px var(--pc)}
.pr-top h3{margin:0;font-size:20px}
.pr-top p{margin:4px 0 0;color:var(--fg2);font-size:14.5px;line-height:1.45}
.pr-ico{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--pc) 18%,transparent);color:var(--pc);margin-bottom:10px}
.pr-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.pr-price b{font-size:clamp(30px,3.4vw,42px);font-weight:700;letter-spacing:-.03em;line-height:1}
.pr-price b.pr-custom{font-size:28px}
.pr-price small{color:var(--fg2);font-size:14px}
.pr-eq{flex-basis:100%;font-size:13px;color:#22c55e}
.pr[data-period=m] .pr-price.py:not(.pm),.pr[data-period=y] .pr-price.pm:not(.py){display:none}
.pr-cta{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:14px;border:1px solid var(--glass-b2,var(--glass-b));background:var(--glass2);color:var(--fg);font:600 15px var(--font);text-decoration:none;cursor:pointer;transition:transform .1s,filter .15s}
.pr-cta:hover{filter:brightness(1.1)}
.pr-cta.pri{background:var(--pc);border-color:var(--pc);color:#fff}
.pr-feat{list-style:none;margin:2px 0 0;padding:14px 0 0;border-top:1px solid var(--glass-b);display:flex;flex-direction:column;gap:9px;font-size:14.5px}
.pr-feat li{display:flex;gap:9px;align-items:flex-start;line-height:1.4}
.pr-feat li .ic{flex:none;margin-top:2px}
.pr-feat li.on .ic{color:#22c55e}
.pr-feat li.off{color:var(--fg3);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--fg3) 50%,transparent)}
.pr-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;color:var(--fg2);font-size:13.5px}
.pr-foot span{display:inline-flex;align-items:center;gap:6px}
.pr-cmp{overflow-x:auto;border-radius:18px;border:1px solid var(--glass-b);background:var(--glass)}
.pr-cmp table{width:100%;border-collapse:collapse;font-size:14px;min-width:480px}
.pr-cmp th,.pr-cmp td{padding:11px 14px;text-align:center;border-bottom:1px solid var(--glass-b)}
.pr-cmp th:first-child,.pr-cmp td:first-child{text-align:left}
.pr-cmp tr:last-child td{border-bottom:0}
.pr-cmp .pr-hl{background:color-mix(in srgb,var(--pc) 9%,transparent)}
.pr-cmp .y{color:#22c55e}.pr-cmp .n{color:var(--fg3)}
.pr-faq h3{margin:4px 0 10px;font-size:18px}
.pr-faq details{border-bottom:1px solid var(--glass-b);padding:12px 2px}
.pr-faq summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;font-weight:500;list-style:none}
.pr-faq summary::-webkit-details-marker{display:none}
.pr-faq details[open] summary .ic{transform:rotate(180deg)}
.pr-faq p{margin:8px 0 0;color:var(--fg2)}
.pr-w{overflow:auto}
.pr-w .pr-card{background:color-mix(in srgb,var(--fg) 5%,transparent)}
.thread .pr-grid.n3,.thread .pr-grid.n4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
@media (max-width:900px){.pr-grid.n3,.pr-grid.n4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}
@media (max-width:640px){.pr-grid.n2,.pr-grid.n3,.pr-grid.n4{grid-template-columns:1fr}.pr-card.pr-hl{order:-1}}
.pr > .pr-grid,.pr > .pr-cmp,.pr > .pr-faq,.pr > .pr-head{width:100%;align-self:stretch}

/* ---------- Cuentas de clientes ---------- */
.acct-hbtn{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px 0 15px;border-radius:999px;cursor:pointer;font:inherit;font-size:15px;font-weight:500;color:var(--fg);background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(var(--blur)) saturate(1.2);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.2);transition:background .2s;white-space:nowrap;flex:none}
.acct-hbtn:hover{background:var(--glass2)}
.acct-av span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:600;font-size:15px}
@media (max-width:760px){.acct-hbtn{height:42px;padding:0 12px}.acct-hbtn span{display:none}}
.acct-sheet{max-width:560px}
.acct{display:grid;gap:14px;padding-bottom:4px}
.acct-hero{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:4px auto 0;background:color-mix(in srgb,var(--accent) 22%,transparent)}
.acct-lead{margin:0;text-align:center;color:var(--fg2);line-height:1.55;font-size:15.5px}
.acct-fine{margin:0;text-align:center;color:var(--fg3);font-size:13px}
.acct-fine a{color:inherit}
.acct-form{display:grid;gap:12px}
.acct-f{display:grid;gap:6px;font-size:13.5px;color:var(--fg2)}
.acct-f em{font-style:normal;color:var(--fg3)}
.acct-f input,.acct-code{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--fg);border-radius:14px;padding:13px 15px;font:inherit;font-size:16px;outline:none}
:root[data-mode="light"] .acct-f input,:root[data-mode="light"] .acct-code{background:rgba(255,255,255,.75)}
.acct-f input:focus,.acct-code:focus{border-color:var(--accent)}
.acct-code{text-align:center;font-size:28px;letter-spacing:.5em;padding:14px 0 14px .5em;font-variant-numeric:tabular-nums}
.acct-go{width:100%}
.acct-go.busy{opacity:.6;pointer-events:none}
.acct-msg{font-size:14px;color:var(--fg2);text-align:center}
.acct-msg.bad{color:#ff8a8a}
:root[data-mode="light"] .acct-msg.bad{color:#c62828}
.acct-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:none;border:0;color:var(--fg2);font:inherit;font-size:14px;cursor:pointer;padding:6px 8px;border-radius:10px}
.acct-link:hover{color:var(--fg);background:rgba(255,255,255,.06)}
.acct-link:disabled{opacity:.5;cursor:default}
.acct-link.danger{color:#ff8a8a}
:root[data-mode="light"] .acct-link.danger{color:#c62828}
.acct-row2{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.acct-out{justify-self:center;margin-top:4px}
.acct-me{display:flex;align-items:center;gap:14px;padding:4px 2px}
.acct-me .g{flex:1;min-width:0;display:grid}
.acct-me b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acct-me small{color:var(--fg3);font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acct-avbig{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:600;font-size:21px;flex:none}
.acct-badge{display:inline-flex;align-items:center;height:26px;padding:0 11px;border-radius:999px;font-size:12.5px;font-weight:500;background:rgba(255,255,255,.1);color:var(--fg);white-space:nowrap;flex:none}
.acct-badge.s-active{background:color-mix(in srgb,#2fbf71 24%,transparent)}
.acct-badge.s-requested,.acct-badge.s-pending_pay{background:color-mix(in srgb,#f0a020 26%,transparent)}
.acct-badge.s-expired,.acct-badge.s-cancelled{background:color-mix(in srgb,#e5484d 22%,transparent)}
.acct-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px}
.acct-tabs::-webkit-scrollbar{display:none}
.acct-tabs button{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--fg2);font:inherit;font-size:14px;cursor:pointer;white-space:nowrap}
.acct-tabs button.on{background:var(--fg);border-color:transparent;color:#0b0b0b}
:root[data-mode="light"] .acct-tabs button.on{color:#fff}
.acct-pane{display:grid;gap:12px;min-height:80px}
.acct-card{border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:14px;background:rgba(255,255,255,.04)}
.acct-ch,.acct-li,.acct-pl{display:flex;align-items:center;gap:12px}
.acct-ch .g,.acct-li .g,.acct-pl .g{flex:1;min-width:0;display:grid;gap:2px}
.acct-ch small,.acct-li small,.acct-pl small{color:var(--fg3);font-size:13px}
.acct-pi{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 24%,transparent);flex:none}
.acct-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.btn-acc.sm{height:40px;padding:0 16px;font-size:14px;gap:6px}
.acct-pend{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,#f0a020 16%,transparent);font-size:14px}
.acct-pend span{flex:1;min-width:160px}
.acct-ok{display:flex;gap:9px;align-items:center;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,#2fbf71 18%,transparent);font-size:14.5px}
.acct-empty{margin:0;color:var(--fg2);font-size:15px}
.acct-plans{display:grid;gap:8px}
.acct-tog{justify-self:start;margin-bottom:4px}
.acct-pl{padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.04)}
.acct-pl.hl{border-color:color-mix(in srgb,var(--accent) 60%,transparent)}
.acct-pl b em{font-style:normal;font-size:11.5px;font-weight:500;padding:2px 8px;border-radius:999px;background:var(--accent);color:#fff;margin-left:6px;vertical-align:2px}
.acct-amt{display:grid;text-align:right;flex:none}
.acct-amt b{font-size:16px}
.acct-amt small{font-size:12px;color:var(--fg3)}
.acct-list{display:grid;gap:6px}
.acct-li{padding:11px 12px;border-radius:14px;text-decoration:none;color:inherit;border:1px solid transparent}
.acct-li:hover{background:rgba(255,255,255,.06);border-color:var(--line)}
.acct-li .st-paid{color:#2fbf71}
.acct-area{display:grid;gap:10px;align-content:center;height:100%}
.acct-area b{font-size:19px}
.acct-area p{margin:0;color:var(--fg2);font-size:14.5px;line-height:1.5}
.acct-area-b{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}
.acct-w{padding:22px}
@media (max-width:560px){.acct-pl{flex-wrap:wrap}.acct-pl .acct-amt{text-align:left}.acct-pl .btn-acc{margin-left:auto}}
.acct .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.shop-dig{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--accent) 16%,transparent);font-size:14.5px;line-height:1.45}
.shop-dig .ic{flex:none;margin-top:1px}

/* ---------- Descargas ---------- */
.dl-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.04)}
.dl-row .g{flex:1;min-width:0;display:grid;gap:2px}
.dl-row b{font-weight:600;font-size:15px}
.dl-row small{color:var(--fg3);font-size:12.5px}
.dl-row .dl-desc{color:var(--fg2);font-size:13.5px;line-height:1.4}
.dl-row.off{opacity:.75}
.dl-row .btn-acc{flex:none;text-decoration:none}
.dl-new{font-style:normal;font-size:11px;font-weight:500;padding:2px 8px;border-radius:999px;background:var(--accent);color:#fff;margin-left:6px;vertical-align:2px}
.dl-lockh{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--fg2);margin:6px 0 -4px}
.dl-w{padding:18px;display:grid;gap:12px;align-content:start}
.dl-w .acct-list{gap:8px}
.dl-w .dl-row{padding:10px}
.dl-w .dl-desc{display:none}
@media (max-width:560px){.dl-row{flex-wrap:wrap}.dl-row .g{flex:1 1 calc(100% - 52px)}.dl-row .btn-acc,.dl-row .chip,.dl-row .acct-badge{margin-left:50px}}

/* App instalada (PWA): respeta la barra de estado y la zona inferior del teléfono */
html.pwa{-webkit-tap-highlight-color:transparent}
html.pwa body{overscroll-behavior-y:none}
html.pwa .top{padding-top:calc(22px + env(safe-area-inset-top))}
@media (max-width:760px){html.pwa .top{padding-top:calc(12px + env(safe-area-inset-top))}}
.sheet-item.pwa-item .si{background:color-mix(in srgb,var(--fg) 12%,transparent)}
