/* App Fit · negro noche y vino tinto */
@font-face{font-family:Cormorant;src:url(/fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Cormorant;src:url(/fonts/cormorant-garamond-latin-600-italic.woff2) format('woff2');font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/inter-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/inter-latin-600-normal.woff2) format('woff2');font-weight:600 800;font-display:swap}
:root{--bg:#0B0A0C;--card:#141216;--card2:#17151A;--line:rgba(237,230,227,.07);--vino:#6E1A2B;--vino2:#8A2236;--vivo:#A3324A;--oro:#C25B70;--oro2:#8E5563;--claro:#EDE6E3;--txt:#E4DDDA;--muted:#8A8287;--rojo:#e0816f;--r:20px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--bg)}
body{margin:0;min-height:100vh;overscroll-behavior-y:contain;font:15px/1.55 Inter,system-ui,sans-serif;color:var(--txt);background:radial-gradient(120% 55% at 50% -12%,rgba(110,26,43,.22),transparent 62%),var(--bg);background-attachment:fixed;padding-bottom:96px}
a{color:var(--oro)}
::selection{background:rgba(163,50,74,.45)}
/* cabecera */
.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:14px 16px 12px;background:rgba(11,10,12,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.top:after{content:"";position:absolute;left:10%;right:10%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(237,230,227,.12),transparent);opacity:1}
.logo{font:800 13px/1 Inter,system-ui,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--claro);display:flex;align-items:center;gap:9px;max-width:calc(100vw - 132px)}.logo .marca{height:27px;width:auto;flex:0 0 auto;display:block}.logo:after{content:"";width:7px;height:7px;border-radius:50%;background:var(--vivo);box-shadow:0 0 0 0 rgba(163,50,74,.6);animation:pulso 3s ease-out infinite;flex:0 0 auto}.logo:before{content:none}@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(163,50,74,.6)}70%,100%{box-shadow:0 0 0 9px rgba(163,50,74,0)}}
/* barra inferior tipo app */
.tabs{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:20;display:flex;gap:4px;padding:6px;border-radius:999px;background:rgba(23,21,26,.86);border:1px solid rgba(237,230,227,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 10px 40px rgba(0,0,0,.6)}
.tabs a{display:flex;align-items:center;gap:7px;padding:10px 16px;white-space:nowrap;border-radius:999px;color:var(--muted);text-decoration:none;font-size:13px;font-weight:600;transition:all .35s var(--ease)}
.tabs a svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7}
.tabs a.on{color:var(--claro);background:var(--vino);box-shadow:0 6px 18px -6px rgba(110,26,43,.8)}
.tabs a:not(.on) span{display:none}
main{max-width:560px;margin:auto;padding:12px 16px}
/* tarjetas */
.card{position:relative;background:var(--card2);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:14px 0;box-shadow:0 1px 0 rgba(255,255,255,.025) inset}
.card:not(.ya),.cheer:not(.ya){animation:sube .6s var(--ease) both;animation-delay:calc(min(var(--i,0),8)*60ms)}
@keyframes sube{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
h2,.t{font:700 21px/1.2 Inter,system-ui,sans-serif;letter-spacing:-.02em;margin:0 0 4px;color:var(--claro)}
.muted{color:var(--muted);font-size:13px}
.big{font:800 30px/1.1 Inter,system-ui,sans-serif;letter-spacing:-.03em;color:var(--claro)}
b{color:var(--claro);font-weight:600}
/* frase del día */
.hero{text-align:center;padding:30px 22px;background:radial-gradient(90% 120% at 50% 0,rgba(110,26,43,.28),transparent 72%),var(--card2)}
.hero:before{content:"“";display:block;font:600 italic 64px/0.6 Cormorant,serif;color:var(--vivo);opacity:.8;margin-bottom:6px}
.frase{font:600 italic 23px/1.35 Cormorant,Georgia,serif;color:var(--claro);min-height:2.7em}
.frase .c{opacity:0;animation:tinta .5s forwards}
@keyframes tinta{from{opacity:0;filter:blur(4px)}to{opacity:1;filter:none}}
.autor{margin-top:12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
/* controles */
input,select,textarea,button{font:inherit;color:inherit}
input:not([type=radio]):not([type=checkbox]),select,textarea{width:100%;background:#0F0E11;border:1px solid rgba(237,230,227,.08);border-radius:14px;padding:13px 14px;margin:5px 0;outline:none;transition:border-color .3s,box-shadow .3s}
input:focus,select:focus,textarea:focus{border-color:rgba(163,50,74,.7);box-shadow:0 0 0 4px rgba(110,26,43,.22)}
textarea{min-height:120px;resize:vertical;line-height:1.5}
::placeholder{color:#5c565b}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--oro) 50%),linear-gradient(135deg,var(--oro) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
input[type=radio],input[type=checkbox]{accent-color:var(--oro)}
button{cursor:pointer;border:0;border-radius:999px;padding:12px 20px;margin:4px 2px;font-weight:600;letter-spacing:.01em;color:var(--claro);background:var(--vino);box-shadow:0 8px 22px -12px rgba(110,26,43,.9);transition:transform .2s var(--ease),filter .2s,box-shadow .3s}
button:active{transform:scale(.96)}
button:hover{background:var(--vino2)}
button:disabled{filter:grayscale(.5) brightness(.7);cursor:wait}
.ghost,.q button{background:transparent;color:var(--claro);border:1px solid var(--line);box-shadow:none}
.ghost:hover,.q button:hover{border-color:var(--vivo);background:rgba(110,26,43,.18)}
.sm{background:none;box-shadow:none;color:var(--muted);font-size:12px;padding:4px 8px;font-weight:400}
.sm:hover{color:var(--oro)}
.err{color:var(--rojo);font-size:14px}
/* chips de tipo */
.chips{display:flex;gap:8px;overflow-x:auto;padding:8px 0 4px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;background:#0F0E11;color:var(--muted);border:1px solid var(--line);box-shadow:none;padding:9px 15px;font-size:14px}
.chip.on{color:var(--claro);background:var(--vino);border-color:transparent}
/* sueño y energía */
.fila{display:flex;align-items:center;justify-content:space-between;margin:10px 2px}
.fila .lab{font-size:13px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.puntos{display:flex;gap:8px}
.puntos i{width:22px;height:22px;border-radius:50%;border:1px solid rgba(237,230,227,.16);cursor:pointer;transition:all .3s var(--ease)}
.puntos i.on{background:var(--vivo);border-color:transparent;box-shadow:0 0 10px rgba(163,50,74,.5);transform:scale(1.08)}
.acciones{display:flex;align-items:center;gap:12px;margin-top:14px}
.acciones .primary{flex:1;padding:15px}
/* botón Habla que late */
.mic{width:54px;height:54px;flex:none;padding:0;font-size:22px;border-radius:50%;position:relative;background:#0F0E11;border:1px solid rgba(163,50,74,.6);box-shadow:none}
.mic:before{content:"";position:absolute;inset:-1px;border-radius:50%;box-shadow:0 0 0 0 rgba(163,50,74,.45);animation:late 2.6s ease-out infinite}
.mic.escucha{background:var(--vino)}
.mic.escucha:before{animation-duration:1s}
@keyframes late{0%{box-shadow:0 0 0 0 rgba(163,50,74,.45)}70%,100%{box-shadow:0 0 0 16px rgba(163,50,74,0)}}
/* entradas y cartas */
.fecha{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.entrada{font-size:16px;margin:8px 0 4px}
.voz{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.voz .quien{font:600 13px Inter,sans-serif;letter-spacing:.04em;color:var(--claro)}
.voz p{margin:8px 0 0;color:#d8d0cd;font:500 18px/1.5 Cormorant,Georgia,serif}
.ayuda{background:rgba(224,129,111,.08);border:1px solid rgba(224,129,111,.3);border-radius:14px;padding:14px;margin-top:12px}
.esperando{color:var(--muted);font-style:italic;font-family:Cormorant,serif;font-size:18px;margin-top:12px}
.esperando{animation:respira 1.8s ease-in-out infinite}
@keyframes respira{50%{opacity:.45}}
/* perfil */
.perfil{display:flex;align-items:center;gap:16px}
.avatar{flex:none;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font:700 28px Inter,sans-serif;color:var(--claro);background:#0F0E11;position:relative}
.avatar:before{content:"";position:absolute;inset:-3px;border-radius:50%;padding:2px;background:conic-gradient(from 0deg,var(--vino),var(--vivo),#2a1016,var(--vino));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:gira 8s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
.stats{display:flex;gap:18px;margin-top:6px}
.stats div{font-size:12px;color:var(--muted)}
.stats strong{display:block;font:500 22px Cormorant,serif;color:var(--claro)}
.live,.calm{border-radius:var(--r);padding:16px 18px;margin:14px 0;font-weight:600;position:relative;overflow:hidden}
.live{background:linear-gradient(135deg,rgba(110,26,43,.55),rgba(110,26,43,.15));border:1px solid rgba(163,50,74,.6);color:var(--claro)}
.live:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.07) 50%,transparent 70%);animation:barrido 2.8s ease-in-out infinite}
@keyframes barrido{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.calm{background:var(--card);border:1px solid var(--line);color:var(--claro)}
.q{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.q button{padding:10px 14px;font-size:14px;margin:0}
.cheer{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 14px;margin:10px 0;border-left:3px solid var(--vino)}
.cheer.nuevo{animation:flash 1.4s var(--ease)}
@keyframes flash{0%{box-shadow:0 0 0 0 rgba(163,50,74,.8);transform:scale(.97)}40%{box-shadow:0 0 30px 4px rgba(163,50,74,.4);transform:scale(1.01)}100%{box-shadow:none;transform:none}}
.medal{display:flex;gap:12px;align-items:flex-start;background:#0F0E11;border:1px solid var(--line);border-radius:14px;padding:12px;margin:8px 0}
label{font-size:13px;color:var(--muted);margin-right:8px;white-space:nowrap}
.candado{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted);margin-top:8px}
/* gotas de vino */
.polvo{position:fixed;width:5px;height:5px;border-radius:50%;pointer-events:none;z-index:50;background:radial-gradient(circle,#e7a3b1,var(--vivo) 60%,transparent 70%);animation:cae 1.3s ease-in forwards}
@keyframes cae{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}
.aviso{white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis;position:fixed;left:50%;bottom:92px;transform:translate(-50%,20px);opacity:0;z-index:30;background:rgba(23,21,26,.96);border:1px solid rgba(163,50,74,.5);color:var(--claro);padding:10px 18px;border-radius:999px;font-size:14px;transition:all .45s var(--ease)}
.aviso.ver{opacity:1;transform:translate(-50%,0)}
img{max-width:100%}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.frase .c{opacity:1}}
/* anillo de la semana */
.semana{display:flex;align-items:center;gap:18px}
.anillo{position:relative;width:86px;height:86px;flex:none}
.anillo svg{width:100%;height:100%;transform:rotate(-90deg)}
.anillo circle{fill:none;stroke-width:6;stroke-linecap:round}
.anillo .fondo{stroke:rgba(237,230,227,.07)}
.anillo .lleno{stroke:var(--vivo);filter:drop-shadow(0 0 6px rgba(163,50,74,.6));stroke-dashoffset:var(--fin);animation:llena 1.6s var(--ease) both .2s}
@keyframes llena{from{stroke-dashoffset:var(--ini)}}
.anillo>div{position:absolute;inset:0;display:grid;place-content:center;text-align:center;line-height:1}
.anillo strong{font:500 32px Cormorant,serif;color:var(--claro)}
.anillo span{font-size:11px;color:var(--muted)}
.dias{display:flex;gap:6px;margin-top:8px}
.dias i{font-style:normal;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:600;color:var(--muted);border:1px solid var(--line)}
.dias i.on{color:var(--claro);background:var(--vino);border-color:transparent}
.voz .quien{display:flex;align-items:center;gap:8px}
.ini{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font:600 12px Inter,sans-serif;font-style:normal;color:var(--claro);background:var(--vino)}
strong{color:var(--claro);font-weight:700}
.anillo strong,.stats strong{font:600 26px/1 Inter,system-ui,sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stats strong{font-size:20px;margin-bottom:2px}
/* pregunta de un toque al final de la carta */
.pregunta{margin-top:16px;padding:14px;border-radius:16px;background:rgba(110,26,43,.14);border:1px solid rgba(163,50,74,.3)}
.pq{font-weight:700;color:var(--claro);font-size:15px}
.pregunta .chips{flex-wrap:wrap}
.rapida{padding:12px 18px}.rapida .entrada{font-size:14px;color:#d8d0cd;margin:4px 0 0}
/* bienvenida (solo la primera vez) */
html.bv-abierta{overflow:hidden} /* solo html: si body corta el scroll, la cabecera sticky se va */
.bv{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;color:var(--claro);background:radial-gradient(90% 55% at 50% 30%,rgba(110,26,43,.30),transparent 70%),radial-gradient(120% 40% at 50% 110%,rgba(110,26,43,.18),transparent 70%),var(--bg);padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);transition:opacity .45s var(--ease)}
.bv.fuera{opacity:0;pointer-events:none}
.bv-saltar{position:absolute;top:calc(env(safe-area-inset-top) + 10px);right:12px;z-index:2;background:none;box-shadow:none;color:var(--muted);font-size:14px;font-weight:600;padding:10px 14px}
.bv-saltar:hover{background:none;color:var(--claro)}
.bv-pista{flex:1;overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}
.bv-tren{display:flex;height:100%;transition:transform .55s var(--ease);will-change:transform}
.bv-slide{flex:0 0 100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 32px 8px;text-align:center}
.bv-arte{position:relative;width:100%;max-width:320px;height:min(42vh,300px);display:grid;place-items:center;margin-bottom:clamp(18px,5vh,44px)}
.bv-frase{margin:0;max-width:330px;font:600 italic clamp(27px,7.6vw,34px)/1.22 Cormorant,Georgia,serif;color:var(--claro);text-wrap:balance}
.bv-slide.on .bv-frase{animation:bvFrase .9s var(--ease) both .25s}
@keyframes bvFrase{from{opacity:0;transform:translateY(12px);filter:blur(4px)}}
/* 1 · el terrón que respira */
.bv-terron{position:relative;width:clamp(120px,36vw,170px);height:auto;filter:drop-shadow(0 0 28px rgba(163,50,74,.45));transform-origin:50% 60%;user-select:none;-webkit-user-drag:none;pointer-events:none}
.bv-a{position:relative;font:500 clamp(150px,44vw,210px)/1 Cormorant,Georgia,serif;color:var(--vivo);background:linear-gradient(170deg,#C25B70,var(--vivo) 40%,var(--vino));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 28px rgba(163,50,74,.45));transform-origin:50% 60%}
.bv-halo{position:absolute;width:62%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(163,50,74,.30),rgba(110,26,43,.10) 55%,transparent 70%)}
.bv-slide.on .bv-a,.bv-slide.on .bv-terron,.bv-slide.on .bv-halo{animation:bvRespira 5.5s ease-in-out infinite}
.bv-slide.on .bv-halo{animation-name:bvHalo}
@keyframes bvRespira{0%,100%{transform:scale(.94)}50%{transform:scale(1.1)}}
@keyframes bvHalo{0%,100%{transform:scale(.85);opacity:.55}50%{transform:scale(1.2);opacity:1}}
/* 2 · el sobre que cae */
.bv-sobre{width:min(240px,66vw);height:auto;filter:drop-shadow(0 24px 30px rgba(0,0,0,.55)) drop-shadow(0 0 40px rgba(110,26,43,.25))}
.bv-slide.on .bv-sobre{animation:bvCae 1.5s cubic-bezier(.3,.7,.25,1) both}
.bv-slide.on .bv-lacre{animation:bvLacre .55s var(--ease) both 1.15s;transform-box:fill-box;transform-origin:center}
@keyframes bvCae{0%{transform:translateY(-75vh) rotate(-10deg);opacity:0}15%{opacity:1}68%{transform:translateY(10px) rotate(2deg)}84%{transform:translateY(-5px) rotate(-.8deg)}100%{transform:none}}
@keyframes bvLacre{from{transform:scale(1.7);opacity:0}70%{transform:scale(.94);opacity:1}}
/* 3 · las burbujas que llegan */
.bv-burbujas{width:100%;display:flex;flex-direction:column;gap:14px}
.bv-b{max-width:78%;padding:12px 18px;border-radius:22px;font:600 17px/1.3 Inter,system-ui,sans-serif;box-shadow:0 10px 26px -14px rgba(0,0,0,.8)}
.bv-b.iz{align-self:flex-start;background:#1C181E;border:1px solid rgba(237,230,227,.08);border-bottom-left-radius:6px}
.bv-b.de{align-self:flex-end;background:linear-gradient(135deg,var(--vino2),var(--vino));border-bottom-right-radius:6px}
.bv-slide.on .bv-b.iz{animation:bvIz .7s var(--ease) both}
.bv-slide.on .bv-b.de{animation:bvDe .7s var(--ease) both}
.bv-slide.on .bv-b:nth-child(1){animation-delay:.15s}.bv-slide.on .bv-b:nth-child(2){animation-delay:.6s}.bv-slide.on .bv-b:nth-child(3){animation-delay:1.05s}
@keyframes bvIz{from{transform:translateX(-120vw)}70%{transform:translateX(6px)}}
@keyframes bvDe{from{transform:translateX(120vw)}70%{transform:translateX(-6px)}}
/* pie: puntos y botón */
.bv-pie{padding:8px 24px calc(18px + env(safe-area-inset-bottom));max-width:480px;width:100%;margin:0 auto}
.bv-puntos{display:flex;justify-content:center;gap:8px;margin-bottom:18px}
.bv-puntos button{width:8px;height:8px;padding:0;margin:0;border-radius:99px;background:rgba(237,230,227,.22);box-shadow:none;transition:width .4s var(--ease),background .4s}
.bv-puntos button.on{width:24px;background:var(--vivo)}
.bv-boton{display:block;width:100%;margin:0;padding:16px;font-size:16px;background:transparent;border:1px solid rgba(237,230,227,.14);box-shadow:none}
.bv-boton:hover{background:rgba(110,26,43,.18)}
.bv-boton.fin{background:var(--vino);border-color:transparent;box-shadow:0 12px 30px -12px rgba(163,50,74,.9)}
.bv-boton.fin:hover{background:var(--vino2)}
@media (max-height:600px){.bv-arte{height:34vh;margin-bottom:14px}.bv-slide{padding-top:44px}}
/* cerrar sesión */
.salir{position:absolute;right:10px;top:50%;transform:translateY(-50%);margin:0;padding:7px 12px;background:none;box-shadow:none;border:1px solid transparent;color:var(--muted);font-size:13px;font-weight:600}
.salir:hover{background:none;color:var(--claro);border-color:var(--line)}
.salir:active{transform:translateY(-50%) scale(.96)}
.cuenta{margin:26px 0 8px;text-align:center}
.cuenta .enlaces{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;margin-bottom:16px}
.cuenta .enlaces a,.cuenta .enlaces button{color:var(--muted);font-size:14px;text-decoration:none;background:none;box-shadow:none;padding:6px 2px;margin:0;font-weight:500}
.cuenta .enlaces a:hover,.cuenta .enlaces button:hover{color:var(--claro);background:none}
.btn-salir{display:block;width:100%;margin:0;padding:14px;background:transparent;border:1px solid rgba(237,230,227,.14);box-shadow:none;color:var(--claro)}
.btn-salir:hover{background:rgba(110,26,43,.18);border-color:var(--vivo)}
.que-link{display:table;margin:6px auto 0;padding:7px 14px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:600;text-decoration:none}
.que-link:hover{color:var(--claro);border-color:var(--vivo)}
/* carta vacía (antes de la primera entrada) */
.carta-vacia{text-align:center;padding:26px 22px;border-style:dashed;border-color:rgba(163,50,74,.35);background:transparent}
.carta-vacia .frase{min-height:0;font-size:21px}
.carta-vacia .muted{margin-top:6px}
/* qué es la app */
.qe-hero{text-align:center;padding:34px 22px 28px;background:radial-gradient(90% 120% at 50% 0,rgba(110,26,43,.32),transparent 72%),var(--card2)}
.qe-a{display:inline-block;width:70px;height:84px;background:url(/logo.svg) center/contain no-repeat;filter:drop-shadow(0 0 22px rgba(163,50,74,.45));animation:bvRespira 5.5s ease-in-out infinite;transform-origin:50% 60%}
.qe-hero h1{margin:6px 0 0;font:600 italic 30px/1.15 Cormorant,Georgia,serif;color:var(--claro);text-wrap:balance}
.qe-paso{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-top:1px solid var(--line)}
.qe-paso:first-child{border-top:0;padding-top:0}
.qe-paso p{margin:0;font-size:16px;line-height:1.55;color:var(--txt)}
.qe-ico{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(110,26,43,.35);border:1px solid rgba(163,50,74,.4)}
.qe-ico svg{width:18px;height:18px;stroke:var(--claro);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.qe-lema{text-align:center;font:600 italic 25px/1.3 Cormorant,Georgia,serif;color:var(--claro);padding:26px 18px;text-wrap:balance}
.qe-crisis{border:1px solid rgba(224,129,111,.35);background:rgba(224,129,111,.07);margin-top:26px}
.qe-crisis p{margin:0 0 14px;font-size:15px}
.qe-tel{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;border-radius:999px;background:rgba(224,129,111,.16);border:1px solid rgba(224,129,111,.45);color:var(--claro);font-weight:700;text-decoration:none;font-size:16px}
.qe-tel strong{font-size:20px;letter-spacing:.06em}
/* tutorial: bocadillos con foco */
html.tt-abierto{overflow:hidden}
.tt{position:fixed;inset:0;z-index:95;cursor:pointer;outline:none;transition:opacity .35s var(--ease)}
.tt.fuera{opacity:0;pointer-events:none}
.tt-foco{position:fixed;left:50%;top:50%;width:0;height:0;border-radius:20px;box-shadow:0 0 0 200vmax rgba(6,5,7,.80);pointer-events:none;transition:left .45s var(--ease),top .45s var(--ease),width .45s var(--ease),height .45s var(--ease),border-radius .45s var(--ease)}
.tt-foco:after{content:"";position:absolute;inset:-3px;border-radius:inherit;border:1.5px solid rgba(194,91,112,.95);animation:ttLate 2.2s ease-out infinite}
@keyframes ttLate{0%{box-shadow:0 0 0 0 rgba(163,50,74,.6)}70%,100%{box-shadow:0 0 0 12px rgba(163,50,74,0)}}
.tt-saltar{position:fixed;top:calc(env(safe-area-inset-top) + 8px);right:10px;z-index:2;margin:0;background:rgba(23,21,26,.9);border:1px solid var(--line);box-shadow:none;color:var(--claro);font-size:14px;padding:9px 16px}
.tt-saltar:hover{background:rgba(23,21,26,.9);border-color:var(--vivo)}
.tt-bocadillo{position:fixed;left:16px;top:50%;width:min(340px,calc(100vw - 24px));background:#1D191F;border:1px solid rgba(163,50,74,.6);border-radius:20px;padding:16px 18px 14px;box-shadow:0 24px 60px -18px rgba(0,0,0,.95);cursor:default;transition:top .45s var(--ease),left .45s var(--ease)}
.tt-bocadillo.entra{animation:ttEntra .5s var(--ease) both}
@keyframes ttEntra{from{opacity:0;transform:translateY(8px)}}
.tt-flecha{position:absolute;width:14px;height:14px;background:#1D191F;border:1px solid rgba(163,50,74,.6);transform:rotate(45deg)}
.tt-flecha.arriba{top:-8px;border-right:0;border-bottom:0}
.tt-flecha.abajo{bottom:-8px;border-left:0;border-top:0}
.tt-t{font:600 italic 22px/1.2 Cormorant,Georgia,serif;color:var(--claro);margin-bottom:5px}
.tt-d{font-size:15px;line-height:1.45;color:var(--txt)}
.tt-pie{display:flex;align-items:center;justify-content:space-between;margin-top:14px}
.tt-puntos{display:flex;gap:6px}
.tt-puntos i{width:6px;height:6px;border-radius:99px;background:rgba(237,230,227,.2);transition:width .4s var(--ease),background .4s}
.tt-puntos i.on{width:18px;background:var(--vivo)}
.tt-sigue{font-size:12px;color:var(--muted)}
.tt-fin{display:block;width:100%;margin:14px 0 0;padding:14px;font-size:15px;box-shadow:0 12px 30px -12px rgba(163,50,74,.9)}
.tt-fin[hidden],.tt-sigue[hidden]{display:none}
.qe-cta{display:block;text-align:center;padding:15px;border-radius:999px;background:var(--vino);color:var(--claro);text-decoration:none;font-weight:600;box-shadow:0 12px 30px -12px rgba(163,50,74,.9)}
.qe-crisis p a{color:var(--claro);font-weight:700}
.tt-fin:focus{outline:none}.tt-fin:focus-visible{box-shadow:0 0 0 3px rgba(194,91,112,.6)}
@media (max-width:380px){.semana{gap:14px}.anillo{width:78px;height:78px}.dias{gap:4px}.dias i{width:22px;height:22px}}
/* ================= lo social ================= */
/* avatar: iniciales debajo, foto encima cuando llega */
.av{position:relative;flex:none;width:40px;height:40px;border-radius:50%;display:inline-grid;place-items:center;background:linear-gradient(145deg,#33202A,#17131A);color:var(--claro);font:600 15px/1 Inter,system-ui,sans-serif;letter-spacing:.02em;overflow:hidden;border:1px solid rgba(237,230,227,.07)}
.av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s}
.av img.lista{opacity:1}
.av.voz{background:linear-gradient(145deg,var(--vino2),var(--vino))}
.av-s{width:34px;height:34px;font-size:13px}.av-g{width:58px;height:58px;font-size:20px}.av-xl{width:96px;height:96px;font-size:34px}
/* esqueletos que palpitan */
.esq{pointer-events:none}
.esq i,.esq-av,.esq-l,i.esq-l,i.esq-av{display:block;background:rgba(237,230,227,.06);border-radius:8px;animation:palpita 1.4s ease-in-out infinite}
.esq-cab{display:flex;gap:12px;align-items:center;margin-bottom:14px}.esq-cab>div{flex:1}
.esq-av{width:40px;height:40px;border-radius:50%!important;flex:none}
.esq-l{height:12px;margin:9px 0}.esq-l.c{height:9px}
.esq-foto{height:170px;border-radius:14px!important;margin-top:14px}
@keyframes palpita{50%{background:rgba(237,230,227,.13)}}
/* tirar para recargar: el terrón respira */
.ptr{position:fixed;top:-52px;left:50%;z-index:9;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#1D191F;border:1.5px solid rgba(163,50,74,.75);box-shadow:0 10px 30px -6px rgba(0,0,0,.9),0 0 0 6px rgba(11,10,12,.6);transform:translate(-50%,0);transition:transform .35s var(--ease);pointer-events:none}
.ptr.tira{transition:none}
.ptr span{width:24px;height:29px;background:url(/logo.svg) center/contain no-repeat;transform:scale(calc(.6 + var(--p,0)*.4)) rotate(calc(var(--p,0)*360deg - 360deg));opacity:calc(.3 + var(--p,0)*.7)}
.ptr.carga span{transform:none;opacity:1;animation:bvRespira 1.3s ease-in-out infinite}
/* fila de Bocanadas */
.fila-bocas{margin:2px -16px 0}
.boca-fila{display:flex;gap:6px;overflow-x:auto;padding:8px 16px 12px;scrollbar-width:none;scroll-padding-inline:16px}
.boca-fila::-webkit-scrollbar{display:none}
button.boca,.boca{position:relative;flex:none;width:78px;display:flex;flex-direction:column;align-items:center;gap:5px;margin:0;padding:0;background:none;border:0;box-shadow:none;border-radius:0;color:var(--txt);scroll-snap-align:start}
button.boca:hover{background:none}
.boca:before{content:"";position:absolute;top:0;left:50%;width:72px;height:72px;margin-left:-36px;border-radius:50%}
.boca.sin-ver:before{background:conic-gradient(from 210deg,var(--vino),#C25B70,var(--vivo),var(--vino2),var(--vino))}
.boca.visto:before{background:rgba(237,230,227,.2)}
.boca.vivo:before{background:var(--vivo);animation:latido 1.6s ease-in-out infinite}
@keyframes latido{0%,100%{box-shadow:0 0 0 0 rgba(163,50,74,.55);transform:scale(1)}50%{box-shadow:0 0 0 7px rgba(163,50,74,0);transform:scale(1.05)}}
.boca-av{width:64px;height:64px;margin:4px;border:3px solid var(--bg);font-size:21px;z-index:1}
.boca.nada .boca-av{border-color:transparent;margin:4px}
.boca-n{font-size:11.5px;letter-spacing:-.01em;max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt);margin-top:-1px}
.boca-mas{position:absolute;top:50px;right:6px;z-index:2;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:var(--vivo);border:2.5px solid var(--bg)}
.boca-mas svg{width:13px;height:13px;stroke:#fff;stroke-width:3;fill:none}
.boca-vivo{position:absolute;top:61px;left:50%;transform:translateX(-50%);z-index:2;background:var(--vivo);color:#fff;font:700 9.5px/1 Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:3px 6px;border-radius:6px;border:2px solid var(--bg)}
.esq-boca{display:flex;flex-direction:column;align-items:center;gap:8px;width:74px;flex:none}
.esq-boca i{display:block;width:64px;height:64px;border-radius:50%;background:rgba(237,230,227,.06);animation:palpita 1.4s ease-in-out infinite;margin-top:4px}
.esq-boca i+i{width:42px;height:8px;border-radius:6px;margin:0}
/* pestañas Los tuyos / Todos con subrayado que viaja con el dedo */
.pestanas{position:sticky;top:49px;z-index:8;display:grid;grid-template-columns:1fr 1fr 48px;margin:0 -16px;padding:0 16px;background:rgba(11,10,12,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.pestanas [data-t]{margin:0;padding:15px 0 13px;background:none;box-shadow:none;border-radius:0;color:var(--muted);font-size:15px;font-weight:600;transition:color .3s}
.pestanas [data-t].on{color:var(--claro)}
.pestanas [data-t]:hover{background:none;color:var(--claro)}
.subrayado{position:absolute;left:16px;bottom:-1px;width:calc((100% - 32px - 48px)/2);height:3px;display:flex;justify-content:center;pointer-events:none;will-change:transform}
.subrayado:before{content:"";width:46px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--vino2),#C25B70);box-shadow:0 0 12px rgba(163,50,74,.7)}
.pest-guardados{margin:0;padding:0;background:none;box-shadow:none;display:grid;place-items:center;color:var(--muted)}
.pest-guardados:hover{background:none;color:var(--claro)}
.pest-guardados svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7}
.paneles{display:flex;align-items:flex-start;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -16px;overscroll-behavior-x:contain}
.paneles::-webkit-scrollbar{display:none}
.panel{flex:0 0 100%;min-width:0;padding:4px 16px 8px;scroll-snap-align:start;scroll-snap-stop:always}
/* publicaciones del Murmullo */
.post{padding:0;overflow:hidden;cursor:pointer}
.post-cab{display:flex;align-items:flex-start;gap:11px;padding:15px 8px 0 16px}
.post-av{text-decoration:none;flex:none}
.post-quien{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 7px;padding-top:2px}
.post-quien b{font-size:15px}
.post-quien .muted{display:inline-flex;align-items:center;gap:5px}
.audi{display:inline-flex}.audi svg{width:13px;height:13px;stroke:var(--muted);fill:none;stroke-width:1.8}
.post-resp{flex-basis:100%;font-size:12.5px;color:var(--muted)}.post-resp b{font-weight:600;color:var(--oro)}
.chip-voz{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--oro);border:1px solid rgba(194,91,112,.4);border-radius:6px;padding:1px 5px}
button.mas,.mas{flex:none;width:36px;height:36px;margin:-4px 0 0;padding:0;border-radius:50%;display:grid;place-items:center;background:none;box-shadow:none;color:var(--muted)}
button.mas:hover{background:rgba(237,230,227,.06);color:var(--claro)}
.mas svg{width:20px;height:20px;fill:currentColor}
.post-cuerpo{padding:2px 18px 0}
.post-txt{margin:8px 0 2px;font-size:16px;line-height:1.5;color:var(--txt);overflow-wrap:anywhere}
.post.grande .post-txt{font-size:18.5px}
.cita{margin:12px 0 4px;padding:2px 0 2px 16px;border-left:2px solid var(--vivo)}
.cita p{margin:0;font:600 italic 23px/1.3 Cormorant,Georgia,serif;color:var(--claro);text-wrap:pretty}
.cita p:before{content:"«"}.cita p:after{content:"»"}
.cita cite{display:block;margin-top:9px;font:600 11px/1.3 Inter,sans-serif;font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cita cite:before{content:"— "}
.post.grande .cita p{font-size:27px}
.post-entreno{display:inline-block;margin:8px 0 2px;font-size:13px;color:var(--claro);background:rgba(110,26,43,.25);border:1px solid rgba(163,50,74,.3);border-radius:999px;padding:4px 11px}
.post-oculto{margin:10px 18px 0;font-size:12.5px;color:var(--rojo);background:rgba(224,129,111,.08);border-radius:10px;padding:6px 10px}
.post-foto{margin-top:12px;background:#0F0E11}
.post-foto img{display:block;width:100%;max-height:560px;object-fit:cover;min-height:220px;background:rgba(237,230,227,.05);animation:palpita 1.4s ease-in-out infinite}
.post-foto img.lista{min-height:0;animation:none;background:none}
.post-acc{display:flex;align-items:center;gap:2px;padding:6px 8px 8px}
.acc,button.acc{position:relative;display:inline-flex;align-items:center;gap:6px;margin:0;padding:9px 12px;background:none;box-shadow:none;border-radius:999px;color:var(--muted);font-size:13.5px;font-weight:600}
button.acc:hover{background:rgba(110,26,43,.16);color:var(--claro)}
.acc svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease)}
.acc.quieto{opacity:.35}
.acc.al.on{color:#E07A90}.acc.al.on svg{filter:drop-shadow(0 0 6px rgba(163,50,74,.8))}
.acc.gu{margin-left:auto}.acc.gu.on{color:#E07A90}.acc.gu.on svg{fill:#E07A90}
button.acc:active svg{transform:scale(.85)}
.post-al{padding:0 18px 15px;font-size:13px;color:var(--oro);font-weight:600}
.post.resp{margin:10px 0}.post.resp .post-cab{padding-top:13px}.post.resp .post-txt{font-size:15px}
.vaho{position:absolute;left:50%;top:50%;width:34px;height:34px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(194,91,112,.85),rgba(110,26,43,.45) 45%,transparent 70%);filter:blur(3px);animation:vaho 1.2s ease-out forwards}
@keyframes vaho{from{transform:translate(-50%,-50%) scale(.5);opacity:.95}to{transform:translate(-50%,-190%) scale(2.4);opacity:0}}
/* botón flotante para publicar */
.fab{position:fixed;right:max(18px,calc(50% - 262px));bottom:calc(86px + env(safe-area-inset-bottom));z-index:25;width:58px;height:58px;margin:0;padding:0;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,var(--vivo),var(--vino));box-shadow:0 14px 34px -10px rgba(163,50,74,.9),0 0 0 1px rgba(255,255,255,.06) inset}
.fab svg{width:26px;height:26px;stroke:#fff;stroke-width:2.2;fill:none;stroke-linecap:round}
.fab[hidden]{display:none}
/* hojas que suben */
html.hoja-abierta{overflow:hidden}
.hoja-fondo{position:fixed;inset:0;z-index:80;background:rgba(4,3,5,0);transition:background .3s}
.hoja-fondo.ver{background:rgba(4,3,5,.62)}
.hoja{position:absolute;left:0;right:0;bottom:0;max-width:560px;margin:0 auto;max-height:94vh;overflow:auto;background:#17151A;border:1px solid var(--line);border-bottom:0;border-radius:26px 26px 0 0;padding:6px 18px calc(18px + env(safe-area-inset-bottom));transform:translateY(105%);transition:transform .38s var(--ease);box-shadow:0 -20px 60px -20px rgba(0,0,0,.8)}
.hoja-fondo.ver .hoja{transform:none}
.hoja-asa{display:block;width:40px;height:4.5px;border-radius:9px;background:rgba(237,230,227,.18);margin:4px auto 12px}
.menu-tit{text-align:center;color:var(--muted);font-size:13px;margin:0 0 8px}
.menu{background:#0F0E11;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.menu button{display:block;width:100%;margin:0;padding:16px;background:none;box-shadow:none;border-radius:0;border-top:1px solid var(--line);font-size:16px;font-weight:500;color:var(--claro)}
.menu button:first-child{border-top:0}.menu button:hover{background:rgba(110,26,43,.18)}
.menu button.peligro{color:#EE8C7A}
.menu-no{display:block;width:100%;margin:10px 0 0;padding:15px}
/* publicar */
.hoja-pub{min-height:66vh}
.pub-cab,.crear-cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.pub-cab b,.crear-cab b{font-size:16px}
.pub-cab .sm,.crear-cab .sm{font-size:15px;color:var(--claro);padding:8px 2px}
.pub-ok{margin:0;padding:9px 20px;font-size:15px}
.pub-ok:disabled{filter:none;opacity:.4;cursor:default}
.pub-a{font-size:13px;color:var(--muted);margin:0 0 10px;padding:10px 12px;border-radius:12px;background:#0F0E11;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pub-fila{display:flex;gap:12px;align-items:flex-start}
.pub-fila .av{margin-top:6px}
textarea.pub-txt{flex:1;min-height:110px;margin:0;padding:10px 0;background:none!important;border:0!important;box-shadow:none!important;font-size:19px;line-height:1.45;resize:none}
.pub-foto{position:relative;margin:10px -18px 0}
.pub-foto img{display:block;width:100%;max-height:300px;object-fit:cover}
.pub-foto[hidden]{display:none}
.pub-quita{position:absolute;top:10px;right:12px;width:36px;height:36px;margin:0;padding:0;display:grid;place-items:center;background:rgba(11,10,12,.75);box-shadow:none;backdrop-filter:blur(8px)}
.pub-quita svg{width:18px;height:18px;stroke:#fff;stroke-width:2}
.pub-barra{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:12px;padding-top:12px}
.pub-ico{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;cursor:pointer;border:1px solid var(--line);margin:0}
.pub-ico svg{width:21px;height:21px;stroke:#E07A90;fill:none;stroke-width:1.7}
.seg{display:inline-flex;background:#0F0E11;border:1px solid var(--line);border-radius:999px;padding:3px}
.seg button{display:inline-flex;align-items:center;gap:5px;margin:0;padding:7px 11px;background:none;box-shadow:none;color:var(--muted);font-size:13px}
.seg button svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8}
.seg button.on{background:var(--vino);color:var(--claro)}
.seg button:hover{background:rgba(110,26,43,.3)}.seg button.on:hover{background:var(--vino)}
.pub-aud-fija{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--muted)}
.anillo-c{position:relative;margin-left:auto;width:28px;height:28px;flex:none;display:grid;place-items:center}
.anillo-c svg{position:absolute;inset:0;transform:rotate(-90deg)}
.anillo-c circle{fill:none;stroke-width:2.5}.anillo-c .f{stroke:rgba(237,230,227,.1)}.anillo-c .l{stroke:var(--vivo);transition:stroke-dashoffset .2s}
.anillo-c.cerca .l{stroke:#E0A15A}.anillo-c.pasa .l{stroke:var(--rojo)}
.anillo-c em{font-style:normal;font-size:10.5px;font-weight:600;color:var(--muted)}
.pub-nota{font-size:12px;margin:12px 0 0}
/* hilo y guardados */
.hilo{position:fixed;inset:0;z-index:70;overflow-y:auto;background:radial-gradient(120% 50% at 50% -10%,rgba(110,26,43,.18),transparent 60%),var(--bg);transform:translateX(100%);transition:transform .36s var(--ease);overscroll-behavior:contain}
.hilo.ver{transform:none}
.hilo-cab{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:8px 10px;background:rgba(11,10,12,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hilo-cab b{text-align:center;font-size:16px}
.hilo-x{width:42px;height:42px;margin:0;padding:0;display:grid;place-items:center;background:none;box-shadow:none}
.hilo-x:hover{background:rgba(237,230,227,.06)}
.hilo-x svg{width:22px;height:22px;stroke:var(--claro);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hilo-cuerpo{max-width:560px;margin:0 auto;padding:4px 16px 110px}
.hilo-n{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:10px 4px 0}
.hilo-priv{margin:14px 4px 0}
.hilo-responder{position:sticky;bottom:18px;display:flex;align-items:center;gap:10px;width:100%;margin:18px 0 0;padding:7px 18px 7px 7px;text-align:left;background:#1D191F;border:1px solid rgba(163,50,74,.35);box-shadow:0 14px 40px -12px rgba(0,0,0,.9);color:var(--muted);font-weight:500}
.hilo-responder:hover{background:#221D24}
.hilo-responder .av{width:36px;height:36px;font-size:13px}
/* visor de Bocanadas */
.visor{position:fixed;inset:0;z-index:90;background:#000;outline:none;touch-action:none;user-select:none;-webkit-user-select:none;transition:opacity .25s,transform .25s}
.visor.fuera{opacity:0;transform:scale(.96)}
.visor-barras{position:absolute;top:calc(env(safe-area-inset-top) + 8px);left:10px;right:10px;z-index:3;display:flex;gap:4px}
.visor-barras i{flex:1;height:2.5px;border-radius:3px;background:rgba(255,255,255,.28);overflow:hidden}
.visor-barras b{display:block;height:100%;background:#D2667C;box-shadow:0 0 6px rgba(194,91,112,.8)}
.visor-cab{position:absolute;top:calc(env(safe-area-inset-top) + 20px);left:12px;right:6px;z-index:3;display:flex;align-items:center;gap:10px}
.visor-quien{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.visor-quien b{font-size:14px;color:#fff}.visor-quien span{font-size:12px;color:rgba(255,255,255,.75)}
.visor-b{width:40px;height:40px;margin:0;padding:0;display:grid;place-items:center;background:none;box-shadow:none}
.visor-b:hover{background:rgba(255,255,255,.08)}
.visor-b svg{width:22px;height:22px;stroke:#fff;fill:#fff;stroke-width:2}
.visor-b[data-x] svg{fill:none}
.visor-lienzo{position:absolute;inset:0;overflow:hidden}
.visor-lienzo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),transparent 18%,transparent 72%,rgba(0,0,0,.6));pointer-events:none}
.boca-img{position:absolute;inset:0;background:#0B0A0C center/cover no-repeat;transition:filter 1s}
.boca-texto{position:absolute;inset:0;display:grid;place-items:center;padding:40px 30px;background:radial-gradient(90% 70% at 30% 20%,#A3324A,transparent 70%),radial-gradient(80% 60% at 80% 90%,#3E0D18,transparent 70%),linear-gradient(160deg,#8A2236,#4A1020)}
.boca-texto p{margin:0;font:600 italic clamp(26px,8vw,36px)/1.25 Cormorant,Georgia,serif;color:#F6EEEB;text-align:center;text-wrap:balance;overflow-wrap:anywhere}
.boca-texto.vacio p{opacity:.45}
.boca-frase{position:absolute;left:18px;right:18px;bottom:20%;z-index:1;padding:12px 16px;border-radius:18px;text-align:center;font:600 italic 25px/1.25 Cormorant,Georgia,serif;color:#fff;background:rgba(11,10,12,.42);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);text-wrap:balance;overflow-wrap:anywhere}
.boca-frase[hidden]{display:none}
.niebla{display:none}
.empana .boca-img{filter:blur(2.2px) saturate(.75) brightness(.92)}
.empana .boca-texto{filter:blur(1px) saturate(.8)}
.empana .niebla{display:block;position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(70% 55% at 50% 55%,rgba(237,230,227,.16),rgba(237,230,227,.07) 60%,rgba(237,230,227,.03));animation:empana 6s ease-in-out infinite alternate}
@keyframes empana{to{opacity:.6}}
.visor-pie{position:absolute;left:16px;right:16px;bottom:calc(26px + env(safe-area-inset-bottom));z-index:3;display:flex;justify-content:center}
.visor-aliento{position:relative;display:inline-flex;align-items:center;gap:9px;margin:0;padding:13px 22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);box-shadow:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:15px}
.visor-aliento svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round}
.visor-aliento.on{background:rgba(110,26,43,.85);border-color:rgba(194,91,112,.7)}
.visor-aliento:hover{background:rgba(255,255,255,.16)}.visor-aliento.on:hover{background:rgba(138,34,54,.9)}
.visor-cuenta{font-size:13px;color:rgba(255,255,255,.85);background:rgba(11,10,12,.5);backdrop-filter:blur(8px);padding:9px 16px;border-radius:999px;text-align:center}
/* ánimo de un toque */
.animo-cab{display:flex;gap:14px;align-items:center}
.av.vivo{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--vivo);animation:latido 1.6s ease-in-out infinite;overflow:visible}
.av.vivo img{border-radius:50%}
.animo-n{font-size:18px;font-weight:700;color:var(--claro)}
.animo-acc{font-size:13px;color:var(--oro);margin-top:3px}
.animo-tit{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:20px 0 10px}
.animo-bot{display:grid;gap:8px}
.animo-bot button{display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:15px 18px;text-align:left;background:#0F0E11;border:1px solid var(--line);border-radius:18px;box-shadow:none;font-size:16px}
.animo-bot button:hover{border-color:var(--vivo);background:rgba(110,26,43,.2)}
.animo-bot span{font-size:22px}
.animo-pie{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}
.animo-pie .ghost{margin:0;padding:11px 16px;font-size:14px}
.ghost-a{color:var(--muted);font-size:14px;text-decoration:none;padding:8px 2px}
/* crear bocanada */
.crear-lienzo{position:relative;width:min(100%,calc(44vh * .8));aspect-ratio:4/5;margin:4px auto 12px;border-radius:22px;overflow:hidden;border:1px solid var(--line)}
.crear-lienzo .boca-img{display:none}.crear-lienzo.con-foto .boca-img{display:block}.crear-lienzo.con-foto .boca-texto{display:none}
.crear-lienzo .boca-texto p{font-size:clamp(22px,6.5vw,30px)}.crear-lienzo .boca-frase{font-size:21px}
.crear-ctrl{display:flex;align-items:center;gap:8px}
.crear-foto{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);cursor:pointer;color:var(--claro);font-size:14px;font-weight:600}
.crear-foto svg{width:19px;height:19px;stroke:#E07A90;fill:none;stroke-width:1.8}
.crear-quita{margin:0;padding:10px 14px;font-size:14px}.crear-quita[hidden]{display:none}
.contador{margin-left:auto;font-size:12px;color:var(--muted)}
textarea.crear-txt{min-height:0;margin-top:10px}
.crear-ok{display:block;width:100%;margin:8px 0 0;padding:15px}
.crear-ok:disabled{opacity:.45;filter:none;cursor:default}
.crear-nota{font-size:12px;text-align:center;margin:10px 0 0}
/* invitación */
.inv{position:fixed;inset:0;z-index:96;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 26px calc(32px + env(safe-area-inset-bottom));text-align:center;background:radial-gradient(90% 50% at 50% 30%,rgba(110,26,43,.38),transparent 70%),var(--bg);opacity:0;transition:opacity .4s var(--ease)}
.inv.ver{opacity:1}
.inv-arte{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:28px}
.inv-arte .av{border:3px solid var(--bg);z-index:1}
.inv-arte .yo{margin-left:-24px}
.inv-halo{position:absolute;width:250px;height:250px;left:50%;top:50%;margin:-125px 0 0 -125px;border-radius:50%;background:radial-gradient(circle,rgba(163,50,74,.4),rgba(110,26,43,.12) 55%,transparent 70%);animation:bvHalo 5.5s ease-in-out infinite}
.inv h1{margin:0 0 12px;max-width:340px;font:600 italic 33px/1.15 Cormorant,Georgia,serif;color:var(--claro);text-wrap:balance}
.inv h1 b{font-style:normal;font-family:Inter,system-ui,sans-serif;font-size:.78em;font-weight:700;letter-spacing:-.02em}
.inv p{max-width:330px;margin:0 0 8px;color:var(--muted);font-size:15px}
.inv .inv-priv{color:var(--txt);font-size:13.5px}
.inv-bot{display:grid;gap:10px;width:100%;max-width:340px;margin-top:22px}
.inv-bot button{margin:0;padding:16px;font-size:16px}
.inv-aviso{border-color:rgba(163,50,74,.5);background:rgba(110,26,43,.18);color:var(--claro);font-size:14px;padding:14px 18px}
/* Los tuyos */
.dar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:linear-gradient(135deg,rgba(110,26,43,.32),rgba(110,26,43,.08)),var(--card2);border-color:rgba(163,50,74,.3)}
.sm-p,button.sm-p{margin:0;padding:9px 16px;font-size:14px;flex:none}
.seccion{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:16px 4px 0}
.lista{padding:4px 0}
.amigo{display:flex;align-items:center;gap:12px;padding:10px 8px 10px 16px;border-top:1px solid var(--line)}
.amigo:first-child{border-top:0}
.amigo-av{text-decoration:none;flex:none}.amigo-av .av{width:48px;height:48px;font-size:17px}
.amigo-av.vivo .av{box-shadow:0 0 0 2px var(--card2),0 0 0 4px var(--vivo);animation:latido 1.6s ease-in-out infinite}
.amigo-n{flex:1;min-width:0;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.amigo-n b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.est{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.est.vivo{color:#E07A90}
.enlace-nuevo{display:block;margin:10px auto 0}
.bloq{margin:18px 0}.bloq summary{cursor:pointer;color:var(--muted);font-size:13px;padding:8px 4px;list-style:none}.bloq summary::-webkit-details-marker{display:none}
.bloq .amigo{background:var(--card2);border:1px solid var(--line);border-radius:16px;margin-top:8px}
/* vacíos */
.vacio{text-align:center;padding:34px 24px 30px}
.vacio-a{display:inline-block;width:62px;height:75px;background:url(/logo.svg) center/contain no-repeat;filter:drop-shadow(0 0 22px rgba(163,50,74,.4));animation:bvRespira 5.5s ease-in-out infinite;transform-origin:50% 60%;opacity:.95}
.vacio p{margin:8px 0 6px;font:600 italic 25px/1.25 Cormorant,Georgia,serif;color:var(--claro);text-wrap:balance}
.vacio .primary,.vacio .btn{display:inline-block;margin:20px 0 0;padding:14px 28px;border-radius:999px;background:var(--vino);color:var(--claro);text-decoration:none;font-weight:600;box-shadow:0 12px 30px -12px rgba(163,50,74,.9)}
.vacio-nota{margin:18px auto 0;max-width:330px;font-size:12.5px;line-height:1.5;color:var(--muted)}
.vacio.solo{margin-top:36px}
/* perfil: foto */
.avatar{overflow:visible}
.avatar>span{position:relative;z-index:0}
.avatar img{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;object-fit:cover;opacity:0;transition:opacity .4s;z-index:1}
.avatar img.lista{opacity:1}
.avatar.mio{cursor:pointer}
.avatar .cam{position:absolute;right:-3px;bottom:-3px;z-index:2;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--vino);border:2.5px solid var(--card2)}
.avatar .cam svg{width:14px;height:14px;stroke:#fff;fill:none;stroke-width:2}
.de-tuyos{display:inline-block;margin-top:6px;font-size:12px;font-weight:600;color:#E07A90;border:1px solid rgba(194,91,112,.4);border-radius:999px;padding:2px 10px}
@media (prefers-reduced-motion:reduce){.hoja,.hilo,.visor,.inv,.ptr{transition:none!important}.post-foto img{animation:none}}

/* aviso largo (límites de uso): dos líneas, centrado, por encima de las hojas */
.aviso{z-index:110}
.aviso.largo{white-space:normal;text-overflow:clip;text-align:center;width:max-content;max-width:min(92vw,420px);border-radius:18px;line-height:1.4;padding:12px 18px}
/* Ayuda ahora: círculo hueso pequeño a la izquierda de la cabecera (Salir va a la derecha) */
.ayuda-btn{position:absolute;left:6px;top:50%;transform:translateY(-50%);margin:0;padding:0;width:44px;height:44px;display:grid;place-items:center;background:none;border:0;box-shadow:none;border-radius:50%;cursor:pointer}
.ayuda-btn:before{content:"";position:absolute;width:26px;height:26px;border-radius:50%;background:#EDE6E3;opacity:.9;transition:opacity .2s}
.ayuda-btn svg{position:relative;width:13px;height:13px;fill:#0B0A0C;stroke:none}
.ayuda-btn:hover,.ayuda-btn:active{background:none;transform:translateY(-50%)}
.ayuda-btn:hover:before{opacity:1}
.ayuda-btn:focus-visible{outline:2px solid #EDE6E3;outline-offset:2px}
/* hoja de ayuda: negra, clara, sin adornos */
.ayuda-fondo{z-index:200}
.ayuda-fondo.ver{background:rgba(0,0,0,.72)}
.hoja.ayuda-hoja{background:#000;border:1px solid rgba(237,230,227,.16);border-bottom:0;padding:26px 18px calc(18px + env(safe-area-inset-bottom));animation:none}
.ayuda-hoja h2{font:600 21px/1.35 Inter,system-ui,sans-serif;letter-spacing:-.01em;color:#fff;margin:0 4px 20px}
.ayuda-tel{display:flex;flex-direction:column;gap:2px;min-height:84px;justify-content:center;padding:14px 20px;margin:0 0 12px;border-radius:18px;text-decoration:none}
.ayuda-tel b{font:800 34px/1 Inter,system-ui,sans-serif;letter-spacing:.02em;color:inherit}
.ayuda-tel span{font-size:15px;line-height:1.35;font-weight:600}
.ayuda-tel.a24{background:#EDE6E3;color:#000}
.ayuda-tel.a112{background:#fff;color:#000;border:3px solid #C8102E}
.ayuda-tel.a112 b{color:#A00D25}
.ayuda-tel:focus-visible,.ayuda-cerrar:focus-visible{outline:3px solid #fff;outline-offset:3px}
.ayuda-cerrar{display:block;width:100%;min-height:52px;margin:6px 0 0;background:transparent;border:1.5px solid rgba(255,255,255,.55);color:#fff;font:600 16px Inter,system-ui,sans-serif;border-radius:16px;box-shadow:none}
.ayuda-cerrar:hover{background:rgba(255,255,255,.08)}
/* moderación */
.mod-item .mod-meta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}
.mod-item .mod-meta span{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:rgba(237,230,227,.07);color:var(--txt)}
.mod-item .mod-meta span.oc{background:rgba(163,50,74,.35);color:var(--claro)}
.mod-item .mod-texto{white-space:pre-wrap;word-break:break-word;color:var(--claro);margin:6px 0}
.mod-item .mod-foto{display:block;max-width:100%;max-height:260px;border-radius:14px;margin:8px 0;background:var(--card)}
.mod-acc{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.mod-acc button{margin:0;min-height:46px;padding:10px 8px;font-size:14px;white-space:nowrap}
.mod-acc .peligro{background:none;border:1px solid rgba(224,129,111,.55);color:var(--rojo);box-shadow:none}
.mod-quien{font-size:13px;color:var(--muted)}
.mod-quien b{color:var(--claro)}
/* Eco: notas de voz en el Murmullo. Onda fina de vino sobre carbón que late despacio; al sonar se enciende de izquierda a derecha. */
.post-eco{padding:10px 18px 2px}
.eco{--p:0;position:relative;display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:18px;background:#100E12;border:1px solid rgba(163,50,74,.18);cursor:pointer;-webkit-tap-highlight-color:transparent}
.eco-play{flex:none;width:42px;height:42px;margin:0;padding:0;border-radius:50%;display:grid;place-items:center;background:var(--vino);box-shadow:0 8px 20px -10px rgba(163,50,74,.9)}
.eco-play svg{width:18px;height:18px;fill:var(--claro);stroke:var(--claro);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.eco-play .i-pausa{display:none;fill:none}.eco.suena .eco-play .i-play{display:none}.eco.suena .eco-play .i-pausa{display:block}
.eco.carga .eco-play{animation:palpita 1s ease-in-out infinite}
.eco-onda{position:relative;flex:1;min-width:0;height:34px;transform-origin:50% 50%;animation:latido 2.6s ease-in-out infinite}
.eco-base,.eco-luz{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;gap:1.5px}
.eco-onda i{flex:1;max-width:3px;min-height:3px;border-radius:2px;background:var(--vino)}
.eco-luz{clip-path:inset(0 calc((1 - var(--p)) * 100%) 0 0)}
.eco-luz i{background:var(--oro);box-shadow:0 0 7px rgba(194,91,112,.7)}
.eco.suena .eco-onda{animation:none}
.eco-t{flex:none;min-width:34px;text-align:right;font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--muted)}
.eco.suena .eco-t{color:var(--claro)}
.eco-pie{margin:7px 2px 0;font-size:12px;letter-spacing:.01em;color:var(--claro);opacity:.72}
@keyframes latido{0%,52%,100%{transform:scaleY(1)}8%{transform:scaleY(1.16)}16%{transform:scaleY(.94)}24%{transform:scaleY(1.08)}34%{transform:scaleY(1)}}
/* grabar en la hoja de publicar */
.pub-ecofila{margin-top:10px}
.pub-eco{margin:0;padding:10px 16px;font-size:14.5px;font-weight:600;color:var(--claro);background:rgba(110,26,43,.22);border:1px solid rgba(163,50,74,.4);box-shadow:none}
.pub-eco:hover{background:rgba(110,26,43,.4)}
.pub-ecopanel{margin-top:12px}
.pub-ico[hidden],.pub-ecofila[hidden],.pub-ecopanel[hidden]{display:none}
.pub-ok[hidden]{display:block;visibility:hidden} /* en modo eco envía «Soltarlo»; el hueco se queda para no mover el título */
.eco-graba{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 14px 14px;border-radius:18px;background:#100E12;border:1px solid rgba(163,50,74,.3)}
.eco-graba .eco-onda{width:100%;flex:none;height:46px}
.eco-onda.vivo{animation-duration:1.3s}
.eco-onda.vivo i{background:var(--vivo);box-shadow:0 0 8px rgba(194,91,112,.6);transition:height .1s linear}
.eco-onda.vivo .eco-luz{display:none}
.eco-estado{margin:0;font-size:14px;color:var(--claro)}.eco-estado b{font-weight:600;font-variant-numeric:tabular-nums}
.eco-stop{width:58px;height:58px;margin:2px 0 0;padding:0;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--vivo),var(--vino));box-shadow:0 0 0 6px rgba(163,50,74,.18),0 12px 28px -10px rgba(163,50,74,.9)}
.eco-stop svg{width:22px;height:22px;fill:var(--claro);stroke:none}
.eco-tope{margin:0 0 10px;font:italic 500 17px/1.35 Cormorant,Georgia,serif;color:var(--oro);text-align:center}
.eco-acc{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px;margin-top:12px}
.eco-acc button{margin:0;padding:12px 6px;font-size:14.5px;white-space:nowrap}
.eco-acc .ghost{background:none;border:1px solid var(--line);color:var(--claro);box-shadow:none}
.eco-quita{display:block;margin:10px auto 0;padding:6px 10px;font-size:12.5px;font-weight:500;color:var(--muted);background:none;box-shadow:none}
.mod-eco{margin:8px 0}.mod-eco .post-eco{padding:0}
@media (prefers-reduced-motion:reduce){.eco-onda,.eco-onda.vivo,.eco.carga .eco-play{animation:none}.eco-onda.vivo i{transition:none}}
/* El cuerpo en el diario (Sorbo, Huella, Latido, Silueta): hueso y vino, líneas finas, sin colores que juzguen */
.cu-fila{margin-top:12px}
.cu-iconos{display:flex;gap:4px}
button.cu-btn{position:relative;width:40px;height:40px;margin:0;padding:0;display:grid;place-items:center;background:none;border:0;box-shadow:none;border-radius:50%}
button.cu-btn:before{content:"";position:absolute;width:32px;height:32px;border-radius:50%;border:1px solid rgba(237,230,227,.28);background:rgba(237,230,227,.04);transition:border-color .25s,background .25s}
button.cu-btn:hover{background:none}button.cu-btn:hover:before{border-color:#EDE6E3;background:rgba(237,230,227,.08)}
button.cu-btn:focus-visible{outline:2px solid #EDE6E3;outline-offset:1px}
.cu-btn svg,.cu-i svg{position:relative;width:17px;height:17px;fill:none;stroke:#EDE6E3;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cu-btn .ico-agua{opacity:0}
.cu-btn.con-agua .ico-agua{opacity:1;stroke:var(--oro);transform:translateY(calc((1 - var(--lleno,0)) * 6px));transform-box:view-box}
.cu-entreno{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 2px 4px}
.cu-entreno[hidden]{display:none}
.cu-min{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.cu-min input{width:76px!important;margin:0!important;padding:9px 10px!important;text-transform:none;letter-spacing:0}
button.cu-antes-btn{margin:0;padding:8px 13px;background:none;border:1px solid rgba(237,230,227,.22);box-shadow:none;color:#EDE6E3;font-size:13px;font-weight:600}
button.cu-antes-btn:hover{background:rgba(237,230,227,.06);border-color:#EDE6E3}
.cu-card{padding:16px 18px}
.cu-ent{display:flex;align-items:center;gap:10px;font-size:15px;margin:6px 0 2px}
.cu-i{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(237,230,227,.22)}
.cu-i.grande{width:40px;height:40px}.cu-i.grande svg{width:21px;height:21px}
.cu-dato{font-size:14px;color:var(--txt);margin:4px 0 0 38px}
.cu-pista{margin:2px 0 0 38px;font-size:13px}
.cu-priv{margin:0}
.cu-sorbo{display:flex;align-items:flex-end;gap:12px}.cu-sorbo>div{flex:1;min-width:0}.cu-sorbo .cu-ent{margin-top:0}
.cu-sorbo .cu-pista,.cu-silu .cu-dato{margin-left:0}
.vaso{flex:none;overflow:visible}
.vaso-borde{fill:none;stroke:#EDE6E3;stroke-width:1.1;opacity:.85}
.vaso.grande .vaso-borde{stroke-width:1.4}
.vaso-vino{fill:var(--vivo);opacity:.88;animation:vasoSube 1.1s var(--ease) both}
@keyframes vasoSube{from{transform:translateY(var(--y))}}
.camino{display:block;width:100%;height:46px;margin:6px 0 0}
.camino .pie{fill:rgba(237,230,227,.5);animation:pisa .5s ease-out both;animation-delay:var(--d)}
.camino .pie:last-child{fill:var(--oro)}
@keyframes pisa{from{opacity:0}}
.pulso{display:block;width:100%;height:64px;margin:4px 0 0}
.pulso path{fill:none;stroke:#EDE6E3;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round;opacity:.8;stroke-dasharray:2000;animation:traza 1.8s var(--ease) both}
.pulso-hoy{fill:var(--oro)}
@keyframes traza{from{stroke-dashoffset:2000}}
.cu-112{min-height:64px;margin:12px 0 0}.cu-112 b{font-size:26px}.cu-112 span{font-size:14px}
.silueta{text-align:center}
.silueta svg{width:150px;height:auto;display:block;margin:0 auto}
.silueta .capa{fill:none;stroke:#EDE6E3;stroke-width:.9;stroke-linejoin:round;opacity:var(--o);animation:capa .9s var(--ease) both;animation-delay:var(--d,0s)}
@keyframes capa{from{opacity:0}}
.silueta.chica svg{width:46px}
.silueta.vacia svg{width:120px}
.anillos{display:flex;justify-content:center;flex-wrap:wrap;gap:4px;margin:8px 0 2px}
.anillos span{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#EDE6E3;opacity:var(--o);border:1px solid rgba(237,230,227,.3);border-radius:999px;padding:2px 7px}
.cu-silu{display:flex;align-items:center;gap:12px}.cu-silu>div:last-child{flex:1;min-width:0}.cu-silu .cu-ent{margin-top:0}
/* hojas del cuerpo */
.cu-hoja label{display:block;margin:6px 0 0;font-size:13px;color:var(--muted);white-space:normal}
.cu-hoja label i{font-style:normal;opacity:.7}
.cu-hoja input{margin:4px 0 2px}
.cu-cab{display:flex;align-items:center;gap:12px;margin:0 0 12px}.cu-cab>div{flex:1}.cu-cab b{font-size:17px}
.cu-x{margin:0;font-size:14px;color:var(--muted)}
.cu-agua{display:flex;align-items:center;gap:20px;padding:6px 6px 12px}
.cu-vaso.sube .vaso-vino{animation:vasoSube .9s var(--ease) both}
.cu-l{font:500 34px/1 Cormorant,Georgia,serif;color:var(--claro)}
.cu-agua-t p{margin:8px 0 0}.cu-agua-t .cu-pista{margin:8px 0 0;font-size:15px;color:var(--txt)}
.cu-mas{display:flex;gap:8px}.cu-mas button{flex:1;margin:0;padding:13px 8px;font-size:15px}.cu-mas span{color:var(--muted);font-weight:400;font-size:13px}
.cu-otra{display:flex;gap:8px;align-items:center;margin-top:8px}.cu-otra input{flex:1;margin:0}.cu-otra button{margin:0;flex:none}
.cu-quita{display:block;margin:8px auto 0}
.cu-nota{margin:12px 2px 10px;line-height:1.5}
.cu-dos,.cu-tres{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cu-tres{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}
.lab-p{font-size:13px;color:var(--muted);margin:10px 0 0}
.cu-mas-datos{margin:10px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#0F0E11}
.cu-mas-datos summary{cursor:pointer;color:var(--claro);font-size:14px;font-weight:600}
.cu-hoja .primary{display:block;width:100%;margin:6px 0 0;padding:15px}.cu-hoja .primary[hidden]{display:none}
.cu-peso{margin:10px 2px 0}
.cu-medidas{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
.cu-linea{padding:2px 0 10px}
.cu-aviso{margin-top:14px;padding:16px;border-radius:18px;background:#000;border:1px solid rgba(237,230,227,.16)}
.cu-aviso p{margin:0 0 14px;color:#fff;font-size:16px;line-height:1.45;font-weight:600}
.cu-aviso .ayuda-tel{margin-bottom:10px}
.cu-antes{padding:4px 4px 0}.cu-antes h2{font:600 italic 28px/1.2 Cormorant,Georgia,serif;margin:12px 0 10px}
.cu-antes p{margin:0 0 12px;font-size:16px;line-height:1.55;color:var(--txt)}
.cu-firma{font:600 italic 18px Cormorant,Georgia,serif;color:var(--muted);margin:4px 0 12px}
.cu-x2{display:block;width:100%;margin:0;padding:14px}
@media (prefers-reduced-motion:reduce){.vaso-vino,.camino .pie,.pulso path,.silueta .capa{animation:none}}
/* Voz de ánimo (Pide ánimo): «🎙 Mándale tu voz», grabar 30 s y lo que ve quien pidió ánimo (una voz o el coro) */
.voz-abre{color:var(--claro);background:rgba(110,26,43,.3);border:1px solid rgba(163,50,74,.55);box-shadow:none}
.voz-abre:hover{background:rgba(110,26,43,.48)}
.q .voz-abre{border-color:rgba(163,50,74,.6);background:rgba(110,26,43,.32)}
.animo-bot .voz-abre{background:rgba(110,26,43,.26);border-color:rgba(163,50,74,.5)}
.animo-bot[hidden],.voz-panel[hidden]{display:none}
.voz-panel{margin-top:12px}
.voces{position:relative;overflow:hidden;margin:14px 0;padding:16px 14px 14px;border-radius:var(--r);background:var(--card);border:1px solid rgba(163,50,74,.35)}
.voces:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 0% 0%,rgba(110,26,43,.38),transparent 62%);pointer-events:none}
.voz-tit{position:relative;margin:0 2px 12px;font:italic 600 22px/1.25 Cormorant,Georgia,serif;color:var(--claro)}
.voz-fila{position:relative;display:flex;align-items:center;gap:4px}
.voz-fila .eco{flex:1;min-width:0}
.voz-eco .eco-onda{animation:latido 1.9s ease-in-out infinite;animation-delay:calc(var(--k,0) * -.45s)}
.voz-eco .eco-onda i{background:var(--vivo)}
.voz-eco.suena .eco-onda{animation:none}
.voz-mas{flex:none;width:34px;height:34px;margin:0;padding:0;border-radius:50%;display:grid;place-items:center;background:none;box-shadow:none}
.voz-mas svg{width:18px;height:18px;fill:var(--muted)}
.voz-toca{position:relative;margin:8px 4px 0;font-size:12px;color:var(--muted)}
.voz-fila.nuevo{animation:flash 1.4s var(--ease)}
/* el coro: ondas apiladas, cada una un poco por debajo y a destiempo de la anterior */
.voz-pila{position:relative;display:flex;flex-direction:column}
.voz-coro .voz-fila{z-index:calc(20 - var(--k));margin-top:-9px;margin-left:calc(min(var(--k),3) * 10px)}
.voz-coro .voz-fila:first-child{margin-top:0}
.voz-coro .voz-fila .eco{padding-top:20px;background:rgba(16,14,18,.94);box-shadow:0 -6px 18px -10px rgba(0,0,0,.9)}
.voz-quien{position:absolute;left:66px;top:6px;z-index:2;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--oro);pointer-events:none}
@media (prefers-reduced-motion:reduce){.voz-eco .eco-onda,.voz-fila.nuevo{animation:none}}
