
:root{--bg:#08070c;--panel:#14111b;--text:#fff;--muted:#aaa1b2;--pink:#ff4fa3;--violet:#8d63ff}*{box-sizing:border-box}body{margin:0;background:#05050a;color:var(--text);font-family:system-ui,-apple-system,sans-serif}.app{min-height:100vh;background:var(--bg);transition:1s}.hot{background:radial-gradient(circle at 50% 0,#5b102e,transparent 42%),#09050a}.shell{width:min(520px,100%);margin:auto;padding:22px 18px;min-height:100vh}.screen{display:none;min-height:calc(100vh - 44px);flex-direction:column}.screen.active{display:flex}.center{text-align:center;justify-content:center}.top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.back,.icon{border:0;background:#ffffff10;color:#fff;border-radius:50%;width:42px;height:42px}.brand{font-size:52px;font-weight:900;letter-spacing:-4px}.brand span{color:var(--pink)}h1{font-size:38px;line-height:1.05;letter-spacing:-2px;margin:10px 0}p,.note{color:var(--muted);line-height:1.5}.btn{border:0;border-radius:17px;padding:16px;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--pink),var(--violet));width:100%;font-size:15px}.secondary{background:#ffffff10}.stack{display:grid;gap:12px}.mode,.choice,.card{border:1px solid #ffffff14;background:#ffffff08;border-radius:20px;color:#fff}.mode{padding:18px;text-align:left;display:flex;gap:14px;align-items:center}.mode small{display:block;color:var(--muted);margin-top:3px}.emoji{font-size:27px}.card{padding:18px}.input{width:100%;padding:14px;border-radius:14px;border:1px solid #ffffff14;background:#09080d;color:#fff}.row{display:flex;align-items:center;gap:10px}.player{margin-top:10px}.avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--violet),var(--pink));font-weight:900}.info{flex:1}.info small{display:block;color:var(--muted)}.choicegrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.choice{padding:13px}.selected{border-color:var(--pink);background:#ff4fa322}.label,.kicker{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-weight:800}.label{margin:18px 0 8px}.range{width:100%;accent-color:var(--pink)}.temp{font-size:78px;font-weight:950;letter-spacing:-5px}.pill{display:inline-block;padding:7px 10px;border-radius:99px;background:#ffffff0d;color:#ddd;font-size:12px}.progress{height:8px;background:#ffffff12;border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--pink));border-radius:inherit}.turn{font-size:45px;font-weight:900}.challenge{text-align:center;min-height:330px;display:flex;flex-direction:column;justify-content:center}.challenge .text{font-size:26px;font-weight:800;line-height:1.25;margin:20px 0}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px;background:#ffffff08;border-radius:18px}.stat b{font-size:25px;display:block}.stat small{color:var(--muted)}.footer{margin-top:auto;padding-top:20px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,150%);background:#18131d;padding:12px 16px;border-radius:14px;transition:.3s}.toast.show{transform:translate(-50%,0)}

/* V2 — level-up experience */
.levelup-overlay{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(4,3,8,.78);backdrop-filter:blur(14px);opacity:0}
.levelup-overlay.show{display:flex;animation:levelFade .35s ease forwards}
.levelup-box{position:relative;width:min(420px,100%);text-align:center;padding:34px 24px 28px;border:1px solid #ffffff24;border-radius:30px;background:linear-gradient(145deg,#17101f,#09070d);box-shadow:0 0 80px #ff4fa344,0 24px 80px #000;overflow:hidden;transform:scale(.78)}
.levelup-overlay.show .levelup-box{animation:levelPop .75s cubic-bezier(.16,1.2,.3,1) .08s forwards}
.levelup-box:before,.levelup-box:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;filter:blur(30px);opacity:.45;pointer-events:none}
.levelup-box:before{background:#8d63ff;left:-90px;top:-90px}.levelup-box:after{background:#ff4fa3;right:-90px;bottom:-90px}
.levelup-sparkles{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#fff 1px,transparent 2px),radial-gradient(circle,#ff4fa3 1px,transparent 2px),radial-gradient(circle,#8d63ff 1px,transparent 2px);background-size:90px 90px,120px 120px,150px 150px;animation:sparkleDrift 5s linear infinite;opacity:.32}
.levelup-kicker{position:relative;font-size:12px;font-weight:900;letter-spacing:.25em;color:#fff;text-transform:uppercase}
.levelup-fire{position:relative;font-size:54px;margin:8px 0;animation:firePulse 1s ease-in-out infinite alternate}
.levelup-number{position:relative;font-size:86px;line-height:.9;font-weight:1000;letter-spacing:-7px;background:linear-gradient(135deg,#fff,#ff4fa3,#8d63ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 30px #ff4fa355}
.levelup-title{position:relative;font-size:30px;font-weight:950;margin:12px 0 4px}.levelup-sub{position:relative;color:#c9bfce;margin:0 0 24px}.levelup-btn{position:relative;border:0;width:100%;padding:15px;border-radius:16px;background:linear-gradient(135deg,#ff4fa3,#8d63ff);color:#fff;font-weight:900}
.levelup-burst{position:absolute;inset:50% auto auto 50%;width:18px;height:18px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 0 0 #fff,0 0 0 0 #ff4fa3,0 0 0 0 #8d63ff;opacity:0;pointer-events:none}
.levelup-overlay.show .levelup-burst{animation:burst 1.05s ease-out .15s}
.levelup-particle{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:#fff;opacity:0;pointer-events:none}
.levelup-overlay.show .levelup-particle{animation:particle 1s ease-out forwards;animation-delay:var(--d);transform:rotate(var(--r)) translateX(var(--x))}
.heat-pulse{animation:heatPulse .65s ease}
@keyframes levelFade{to{opacity:1}}@keyframes levelPop{0%{transform:scale(.78) translateY(25px)}55%{transform:scale(1.04) translateY(-4px)}100%{transform:scale(1) translateY(0)}}
@keyframes sparkleDrift{to{background-position:90px 70px,-80px 120px,110px -90px}}
@keyframes firePulse{to{transform:scale(1.08) rotate(-2deg);filter:drop-shadow(0 0 16px #ff4fa3)}}
@keyframes burst{0%{opacity:.8;box-shadow:0 0 0 0 #fff,0 0 0 0 #ff4fa3,0 0 0 0 #8d63ff}100%{opacity:0;box-shadow:0 0 0 150px #ffffff00,0 0 0 95px #ff4fa300,0 0 0 60px #8d63ff00}}
@keyframes particle{0%{opacity:0}15%{opacity:1}100%{opacity:0;transform:rotate(var(--r)) translateX(var(--x)) scale(.2)}}
@keyframes heatPulse{0%{transform:scale(1)}35%{transform:scale(1.05)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}

/* V3 participant onboarding */
.pref-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.player-tabs{display:flex;gap:8px;overflow:auto;padding:4px 1px 10px;scrollbar-width:none}.player-tab{min-width:92px;border:1px solid #ffffff12;background:#ffffff08;color:#fff;border-radius:16px;padding:10px 9px;text-align:left}.player-tab.active{border-color:#ff4fa3;background:#ff4fa318;box-shadow:0 0 18px #ff4fa326}.player-tab.done::after{content:" ✓";color:#7dffbd}.player-tab small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.pref-section{margin-top:14px}.pref-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pref-btn{min-height:48px;text-align:left;border:1px solid #ffffff12;background:#ffffff08;color:#fff;border-radius:14px;padding:11px 12px;font-size:13px}.pref-btn.selected{border-color:#ff4fa3;background:linear-gradient(135deg,#ff4fa322,#8d63ff22);box-shadow:0 0 15px #ff4fa31c}.pref-note{font-size:11px;color:var(--muted);line-height:1.45}.quick-default{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#ffffff07;border:1px solid #ffffff10;border-radius:14px;padding:12px;margin-top:12px}.smallbtn{border:1px solid #ffffff18;background:#ffffff0b;color:#fff;border-radius:12px;padding:9px 11px}.pref-footer{display:flex;gap:9px}.pref-footer .btn{flex:1}

/* V4 — After Dark final-level atmosphere */
.app.after-dark{background:radial-gradient(circle at 50% 0,#ff174f 0%,#7b082b 20%,#260414 48%,#080308 78%),#050207!important;animation:afterDarkBreath 3.8s ease-in-out infinite}.app.after-dark .card,.app.after-dark .mode{border-color:#ff315e33;box-shadow:0 0 28px #ff174f12}.app.after-dark .progress i{background:linear-gradient(90deg,#ff174f,#ff5b8a,#ff174f);box-shadow:0 0 14px #ff174f}.levelup-overlay.final-level{background:radial-gradient(circle at 50% 45%,rgba(255,24,74,.42),rgba(30,0,10,.94) 62%,#030104 100%);backdrop-filter:blur(18px)}.levelup-overlay.final-level .levelup-box{width:min(470px,100%);padding:42px 24px 30px;border:2px solid #ff315e88;background:linear-gradient(155deg,#3b0717,#16030b 55%,#080207);box-shadow:0 0 110px #ff174f66,0 0 30px #ff174f55,0 24px 90px #000;transform:scale(.72)}.levelup-overlay.final-level.show .levelup-box{animation:finalPop .9s cubic-bezier(.12,1.18,.22,1) .05s forwards}.levelup-overlay.final-level .levelup-kicker{font-size:15px;color:#ffb7c8;text-shadow:0 0 18px #ff174f}.levelup-overlay.final-level .levelup-fire{font-size:72px;filter:drop-shadow(0 0 22px #ff174f)}.levelup-overlay.final-level .levelup-number{font-size:118px;background:linear-gradient(135deg,#fff,#ff6b93,#ff174f);-webkit-background-clip:text;background-clip:text;text-shadow:0 0 42px #ff174f88}.levelup-overlay.final-level .levelup-title{font-size:38px;color:#fff;text-shadow:0 0 22px #ff174f}.levelup-overlay.final-level .levelup-sub{color:#ffd5df;font-size:15px}.levelup-overlay.final-level .levelup-btn{background:linear-gradient(135deg,#ff174f,#ff4f81);box-shadow:0 0 28px #ff174f55;font-size:16px}.levelup-overlay.final-level .levelup-sparkles{opacity:.6;background-image:radial-gradient(circle,#fff 1px,transparent 2px),radial-gradient(circle,#ff7a9d 1px,transparent 2px),radial-gradient(circle,#ff174f 1px,transparent 2px);background-size:65px 65px,95px 95px,125px 125px}.levelup-overlay.final-level .levelup-burst{box-shadow:0 0 0 0 #fff,0 0 0 0 #ff174f,0 0 0 0 #ff174f}.levelup-overlay.final-level.show .levelup-burst{animation:finalBurst 1.25s ease-out .12s}.final-flash{position:fixed;inset:0;z-index:99;pointer-events:none;background:#ff174f;opacity:0}.final-flash.active{animation:finalFlash .55s ease-out}.after-dark-badge{display:none}.app.after-dark .after-dark-badge{display:inline-block;background:#ff174f;color:#fff;box-shadow:0 0 18px #ff174f66}
@keyframes afterDarkBreath{0%,100%{filter:saturate(1)}50%{filter:saturate(1.22) brightness(1.05)}}@keyframes finalPop{0%{transform:scale(.72) translateY(30px)}48%{transform:scale(1.07) translateY(-7px)}72%{transform:scale(.98)}100%{transform:scale(1) translateY(0)}}@keyframes finalBurst{0%{opacity:.95;box-shadow:0 0 0 0 #fff,0 0 0 0 #ff174f,0 0 0 0 #ff174f}100%{opacity:0;box-shadow:0 0 0 210px #ffffff00,0 0 0 145px #ff174f00,0 0 0 85px #ff174f00}}@keyframes finalFlash{0%{opacity:.42}100%{opacity:0}}
.library-head{margin:10px 0 14px}.lib-controls{position:sticky;top:0;z-index:2;padding:10px 0;background:linear-gradient(var(--bg) 78%,transparent)}.input{width:100%;border:1px solid #30273a;background:#100d16;color:#fff;border-radius:14px;padding:14px 15px;font:inherit;outline:none;margin:5px 0}.input:focus{border-color:#ff4fa3;box-shadow:0 0 0 3px #ff4fa31a}textarea.input{resize:vertical;min-height:120px}.library-card{margin:10px 0;padding:15px;border:1px solid #2d2535;background:linear-gradient(145deg,#15111d,#0e0b13);border-radius:18px}.library-card.used{opacity:.48}.library-card .meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:9px}.tag{font-size:11px;padding:5px 8px;border-radius:999px;background:#21192a;color:#d9cfe0}.tag.hot{background:#48131c;color:#ff9cac}.lib-text{font-size:16px;line-height:1.45}.empty{padding:30px 15px;text-align:center;border:1px dashed #3a3040;border-radius:18px;color:#aaa1b2}.mini-actions{display:flex;gap:8px;margin-top:12px}.danger{border-color:#5a2430!important;color:#ff9cac!important}
/* V6 analytics + Instagram */
.analytics-consent{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:120;width:min(480px,calc(100% - 24px));background:#15111b;border:1px solid #ffffff1c;border-radius:20px;padding:16px;box-shadow:0 18px 60px #000b;display:none}.analytics-consent.show{display:block}.analytics-consent h3{margin:0 0 6px;font-size:16px}.analytics-consent p{font-size:12px;margin:0 0 12px}.consent-actions{display:flex;gap:8px}.consent-actions button{flex:1;border:0;border-radius:12px;padding:11px;font-weight:800;color:#fff}.consent-ok{background:linear-gradient(135deg,#ff4fa3,#8d63ff)}.consent-no{background:#ffffff10}.ig-link{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none}.ig-icon{width:20px;height:20px;border:2px solid currentColor;border-radius:6px;display:inline-grid;place-items:center;position:relative}.ig-icon:before{content:'';width:6px;height:6px;border:2px solid currentColor;border-radius:50%}.ig-icon:after{content:'';width:3px;height:3px;background:currentColor;border-radius:50%;position:absolute;right:2px;top:2px}.privacy-link{color:#ff78b7;text-decoration:underline;font-size:11px}.analytics-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#56e39a;box-shadow:0 0 10px #56e39a;margin-right:6px}
/* FASE 2: After Dark Neón & Latido CSS */
.app.after-dark {
  background: radial-gradient(circle at 50% 0, #ff174f 0%, #7b082b 25%, #260414 55%, #080308 85%), #050207 !important;
  animation: afterDarkBreath 2.8s ease-in-out infinite;
}
.app.after-dark .card {
  border-color: #ff174f66;
  box-shadow: 0 0 32px #ff174f26, inset 0 0 16px #ff174f11;
}
.app.after-dark .temp {
  text-shadow: 0 0 45px #ff174f, 0 0 15px #ff4fa3;
  color: #fff;
}
.app.after-dark .pill {
  border: 1px solid #ff174f88;
  background: #ff174f22;
}
@keyframes pulseHeartbeatIcon {
  0% { transform: scale(1); }
  30% { transform: scale(1.18); color: #ff174f; }
  60% { transform: scale(0.96); }
  100% { transform: scale(1); }
}
.heart-beating {
  animation: pulseHeartbeatIcon 0.65s ease infinite;
}


/* ===== v7: puerta de edad, legal, ajustes de privacidad ===== */
.age-gate{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 75% 0,#2a1026,transparent 45%),#05050a;overflow:auto}
.age-gate.show{display:flex}
.age-card{width:min(440px,100%);background:#14111b;border:1px solid #ffffff1c;border-radius:26px;padding:26px 22px 22px;box-shadow:0 0 70px #ff4fa322,0 24px 80px #000;text-align:center}
.age-logo{font-size:46px;font-weight:1000;letter-spacing:-2px;line-height:1}
.age-logo b{color:#ff174f;text-shadow:0 0 28px #ff174f}
.age-card h2{margin:14px 0 6px;font-size:22px}
.age-card p{color:var(--muted);font-size:13px;line-height:1.55;margin:6px 0 14px}
.age-card .input{text-align:center;color-scheme:dark;min-height:0;resize:none}
.age-card label.chk{display:flex;gap:10px;text-align:left;font-size:12.5px;line-height:1.45;color:#d9d3e0;margin:14px 0 6px;align-items:flex-start}
.age-card label.chk input{margin-top:2px;accent-color:#ff4fa3;flex:none;width:18px;height:18px}
.age-card a,.rd-note a,.legal-links a{color:#ff85c0}
.age-err{color:#ff8a9d;font-size:12.5px;min-height:20px;margin:6px 0}
.legal-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;font-size:11.5px;color:var(--muted);margin-top:4px}
.legal-links a{text-decoration:none}
.modal-scroll{max-height:88vh;overflow-y:auto;text-align:left}
.rd-list{margin:10px 0;padding-left:20px;font-size:13.5px;line-height:1.55;color:#e6e0ee}
.rd-list li{margin:6px 0}
.rd-note{font-size:12px;line-height:1.55;color:var(--muted);margin:8px 0}
.priv-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.priv-row small{display:block;color:var(--muted);font-size:11.5px;margin-top:3px;word-break:break-all}

/* ===== v8: modo BOTELLA ===== */
.bt-temp{display:flex;align-items:center;gap:10px;margin:2px 0 8px;font-size:13px;font-weight:800;color:#ffd0e6}
.bt-temp .progress{flex:1;margin:0}
.bt-phase{text-align:center;font-weight:900;letter-spacing:.06em;text-transform:uppercase;font-size:12.5px;color:#cbb5ff;margin:4px 0 6px;min-height:18px}
.bt-stage{position:relative;margin:0 auto;border-radius:50%;--heat:.1;background:radial-gradient(circle,rgba(255,79,163,calc(.06 + var(--heat)*.30)) 0,rgba(141,99,255,calc(.04 + var(--heat)*.12)) 48%,transparent 70%)}
.bt-ring{position:absolute;inset:6%;border-radius:50%;background:conic-gradient(from 0deg,#ff4fa3aa,#8d63ff33,#46d3ff55,#8d63ff33,#ff4fa3aa);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));box-shadow:0 0 34px #ff4fa322 inset;opacity:.9}
.bt-stage::before{content:'';position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,#ff4fa326 0,#8d63ff14 38%,transparent 66%),repeating-conic-gradient(#ffffff08 0 1deg,transparent 1deg 15deg);-webkit-mask:radial-gradient(circle,#000 62%,transparent 63%);mask:radial-gradient(circle,#000 62%,transparent 63%)}
.bt-items{position:absolute;inset:0}
.bt-chip{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px;max-width:112px;padding:5px 10px 5px 5px;border-radius:999px;background:#ffffff12;border:1px solid #ffffff22;font-weight:800;font-size:13px;white-space:nowrap;transition:opacity .35s,transform .35s,box-shadow .35s,background .35s}
.bt-chip .av{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--pink),var(--violet));font-size:12px;font-weight:900}
.bt-chip .nm{overflow:hidden;text-overflow:ellipsis;max-width:68px}
.bt-chip.compact{padding:4px 7px 4px 4px;font-size:11px;max-width:84px}
.bt-chip.compact .av{width:20px;height:20px;font-size:10px}
.bt-chip.compact .nm{max-width:48px}
.bt-chip.icon{padding:6px 10px;font-size:15px}
.bt-chip.special{background:linear-gradient(135deg,#ffd16655,#ff4fa355);border-color:#ffd166aa}
.bt-chip.dim{opacity:.28}
.bt-chip.me{border-color:#ffffff66;box-shadow:0 0 0 2px #ffffff18 inset}
.bt-chip.win{transform:translate(-50%,-50%) scale(1.28);background:linear-gradient(135deg,var(--pink),var(--violet));border-color:#fff;box-shadow:0 0 28px #ff4fa3cc;z-index:3}
.bt-chip.out{opacity:.22}
.bt-chip.teamB .av{background:linear-gradient(135deg,#46d3ff,#5a6bff)}
.bt-bottle{position:absolute;left:50%;top:50%;width:19%;height:76%;margin:-38% 0 0 -9.5%;will-change:transform;filter:drop-shadow(0 8px 16px #000b)}
.bt-bottle svg{width:100%;height:100%;display:block;overflow:visible}
.bt-stage.target .bt-bottle{filter:drop-shadow(0 0 12px #8d63ffcc)}
.bt-result{min-height:92px;text-align:center;margin:12px 0 4px}
.bt-result .big{font-size:30px;font-weight:950;line-height:1.1;color:#fff;text-shadow:0 0 22px #ff4fa3aa}
.bt-result .kick{font-size:11.5px;font-weight:900;letter-spacing:.16em;color:#ff9ccc;text-transform:uppercase;margin-bottom:4px}
.bt-result .hint{font-size:13.5px;line-height:1.45;color:#dcd5e2;margin-top:6px}
.bt-result .pickrow{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:10px}
.bt-score{display:flex;gap:10px;justify-content:center;font-size:12.5px;font-weight:800;margin:2px 0 6px}
.bt-score span{padding:4px 10px;border-radius:999px;background:#ffffff10}
.bwho{font-size:12.5px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#ffb3d6;margin-bottom:8px}
.bt-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff10;text-align:left}
.bt-opt small{display:block;color:var(--muted);font-size:11.5px;margin-top:3px;line-height:1.35}
.bt-skins{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 4px}
.bt-skins button{flex:none;width:58px;height:78px;border-radius:14px;border:1px solid #ffffff22;background:#ffffff0a;padding:4px;color:#fff;font-size:10px;position:relative}
.bt-skins button.sel{border-color:var(--pink);box-shadow:0 0 14px #ff4fa388}
.bt-skins button.lock{opacity:.35}
.bt-skins svg{width:100%;height:60px}
.bt-teams{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.bt-teams button{border-radius:999px;border:1px solid #ffffff22;background:#ffffff0c;color:#fff;padding:6px 12px;font-weight:800;font-size:12.5px}
.bt-teams button.B{border-color:#46d3ff99;background:#46d3ff1f}
.bt-teams button.A{border-color:#ff4fa399;background:#ff4fa31f}

/* ===== v8.1: chat entre mesas, botón de inicio ===== */
.cbadge{display:none;margin-left:6px;min-width:18px;padding:1px 6px;border-radius:999px;background:#fff;color:#c2185b;font-size:11px;font-weight:900}
.cbadge.on{display:inline-block}
.chat-box{max-width:420px;width:100%;text-align:left;border-color:#ff4fa388;box-shadow:0 0 80px #ff4fa344;display:flex;flex-direction:column;max-height:90vh;padding:16px}
.chat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}
.chat-head b{font-size:17px;word-break:break-word}.chat-head small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.chat-list{flex:1;min-height:180px;max-height:46vh;overflow:auto;display:flex;flex-direction:column;gap:6px;padding:8px 2px}
.chat-msg{max-width:82%;padding:8px 12px;border-radius:16px;font-size:14px;line-height:1.35;word-break:break-word;background:#ffffff14}
.chat-msg.me{align-self:flex-end;background:linear-gradient(135deg,var(--pink),var(--violet))}
.chat-msg small{display:block;font-size:10px;opacity:.65;margin-top:3px}
.maplink{display:inline-block;padding:8px 12px;border-radius:12px;background:#ffffff22;color:#fff;font-weight:800;text-decoration:none;border:1px solid #ffffff44}
.chat-empty{color:var(--muted);font-size:13px;text-align:center;margin:auto;padding:16px}
.chat-notice{background:#ffffff0c;border:1px solid #ffffff1c;border-radius:14px;padding:12px;font-size:12.5px;line-height:1.5;color:#e6e0ee;margin-bottom:8px}
.chat-tools{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.chat-send{display:flex;gap:8px;align-items:center}
.chat-send input{flex:1;min-width:0;margin:0;min-height:0;resize:none}
.chat-send .btn{width:auto;flex:none;padding:12px 16px}
.start-big{font-size:22px!important;padding:20px 16px!important;letter-spacing:.04em;font-weight:900!important;box-shadow:0 10px 34px #ff4fa355}

/* ===== v8.2: instalación PWA ===== */
.install-card{display:none;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;border-radius:18px;border:1px solid #58e39a55;background:linear-gradient(135deg,#58e39a1c,#8d63ff1f);text-align:left;animation:ibIn .5s ease both}
.install-card.show{display:flex}
.install-card .ib-ic{font-size:28px;flex:none}
.install-card .ib-tx{flex:1;min-width:0}
.install-card .ib-tx b{display:block;font-size:14px}
.install-card .ib-tx small{display:block;color:#cfc8d8;font-size:12px;line-height:1.35;margin-top:2px}
.install-card .ib-go{flex:none;border:0;border-radius:12px;padding:10px 14px;font-weight:900;font-size:13px;color:#08150d;background:linear-gradient(135deg,#58e39a,#a8f5cb)}
.install-card .ib-x{flex:none;width:28px;height:28px;border:0;border-radius:50%;background:#ffffff14;color:#fff;font-size:13px}
#s6 .top .icon{flex:none}
#s6 .top.hasInstall>b{font-size:15px}
#hdrInstallBtn{align-items:center;justify-content:center;color:#ff7ac0;background:linear-gradient(145deg,rgba(255,79,163,.22),rgba(141,99,255,.22));border:1px solid rgba(255,122,192,.55);box-shadow:0 0 14px rgba(255,79,163,.35)}
#hdrInstallBtn svg{display:block}
@keyframes ibIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ===== v8.2: terminar la noche ===== */
.endlink{width:100%;margin-top:10px;padding:11px;border-radius:15px;border:1px solid #ffffff30;background:transparent;color:#e2dbea;font-weight:700;font-size:13.5px}
.end-stat{display:flex;justify-content:space-around;gap:8px;margin:12px 0 4px}
.end-stat div{flex:1;background:#ffffff0c;border-radius:14px;padding:10px 4px}
.end-stat b{display:block;font-size:20px}.end-stat small{color:var(--muted);font-size:11px}

/* ===== v9: transición de nivel ===== */
.lv-flash{position:fixed;inset:0;z-index:99;pointer-events:none;opacity:0}
.lv-flash.go{animation:lvFlash 1s ease-out}
@keyframes lvFlash{0%{opacity:.85}100%{opacity:0}}
.lv-ring{position:fixed;left:50%;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;border:3px solid var(--c,#ff4fa3);z-index:101;pointer-events:none;animation:lvRing 1.2s ease-out forwards}
@keyframes lvRing{to{transform:scale(34);opacity:0}}
.lv-shake{animation:lvShake .6s}
@keyframes lvShake{0%,100%{transform:none}15%{transform:translate(-7px,3px) rotate(-.4deg)}30%{transform:translate(6px,-4px) rotate(.4deg)}45%{transform:translate(-5px,4px)}60%{transform:translate(4px,-3px)}80%{transform:translate(-2px,2px)}}
.levelup-overlay.show .levelup-number{animation:numSlam .75s cubic-bezier(.2,1.7,.3,1) .12s both}
@keyframes numSlam{0%{transform:scale(3.2);opacity:0;filter:blur(8px)}60%{opacity:1;filter:none}100%{transform:scale(1);opacity:1}}
.levelup-overlay.show .levelup-title{animation:titleRise .6s ease .35s both}
@keyframes titleRise{from{opacity:0;transform:translateY(16px);letter-spacing:.3em}to{opacity:1;transform:none}}
.app.charge::after{content:"";position:fixed;inset:0;z-index:98;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 20%,#3b0010cc 100%);animation:chargePulse .9s ease-in forwards}
@keyframes chargePulse{0%{opacity:0}100%{opacity:1}}
.app.charge{animation:lvShake .9s linear}
/* ===== v9: avatares ===== */
.avatar{transition:transform .15s}
.avatar:active{transform:scale(.92)}
.pdot{display:inline-grid;place-items:center;border-radius:50%;font-weight:900;color:#fff;text-shadow:0 1px 2px #0006}

/* ===== v9: inicio más vivo ===== */
.app.home-live::before{content:"";position:fixed;inset:-20%;z-index:0;pointer-events:none;background:radial-gradient(40% 35% at 20% 25%,#ff4fa338,transparent 70%),radial-gradient(38% 34% at 82% 35%,#8d63ff33,transparent 70%),radial-gradient(45% 38% at 50% 90%,#ff174f26,transparent 70%);animation:homeGlow 14s ease-in-out infinite alternate}
@keyframes homeGlow{0%{transform:translate3d(-2%,-1%,0) scale(1)}100%{transform:translate3d(3%,2%,0) scale(1.08)}}
.shell{position:relative;z-index:1}
.hero-cards{position:relative;height:150px;margin:6px auto 10px;width:min(320px,100%)}
.hc{position:absolute;top:8px;width:46%;height:132px;border-radius:20px;border:1px solid #ffffff30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 14px 40px #0008}
.hc small{font-size:13px;font-weight:950;letter-spacing:.18em}
.hc span{font-size:38px;filter:drop-shadow(0 0 12px #fff6)}
.hc-truth{left:2%;background:linear-gradient(150deg,#2a1b52,#14102a);transform:rotate(-7deg);animation:hcA 5s ease-in-out infinite alternate}
.hc-dare{right:2%;background:linear-gradient(150deg,#5a1230,#1f0a17);transform:rotate(7deg);animation:hcB 5.6s ease-in-out infinite alternate}
.hc-truth small{color:#cbb5ff}.hc-dare small{color:#ffb3c6}
@keyframes hcA{to{transform:rotate(-4deg) translateY(-6px)}}
@keyframes hcB{to{transform:rotate(4deg) translateY(-8px)}}
.feat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0;width:100%}
.feat-row div{background:#ffffff0a;border:1px solid #ffffff18;border-radius:14px;padding:10px 6px;text-align:center;font-size:11.5px;line-height:1.3;color:var(--muted)}
.feat-row b{display:block;color:#fff;font-size:12.5px;margin-top:3px}
.daily{width:100%;text-align:left;border:1px solid #ffb34766;background:linear-gradient(135deg,#ffb3471c,#ff4fa31a);border-radius:20px;padding:14px 16px;margin:8px 0 4px}
.daily .dk{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:900;letter-spacing:.14em;color:#ffd59a;text-transform:uppercase}
.daily .dt{font-size:16px;font-weight:800;line-height:1.35;margin:8px 0 10px;color:#fff}
.daily .dr{display:flex;align-items:center;justify-content:space-between;gap:8px}
.daily .streak{font-size:12px;font-weight:800;color:#ffd59a}
@media (prefers-reduced-motion:reduce){.app.home-live::before,.hc-truth,.hc-dare{animation:none}}
/* ===== v9: modo claro ===== */
html[data-theme=light]{--bg:#f6f2fa;--panel:#ffffff;--text:#1d1626;--muted:#645b70}
html[data-theme=light] body{background:#ece6f3;color:var(--text)}
html[data-theme=light] .app{background:var(--bg);color:var(--text)}
html[data-theme=light] .app.hot{background:radial-gradient(circle at 50% 0,#ffd3e6,#f6f2fa 60%)}
html[data-theme=light] .app.home-live::before{background:radial-gradient(40% 35% at 20% 25%,#ff4fa328,transparent 70%),radial-gradient(38% 34% at 82% 35%,#8d63ff24,transparent 70%),radial-gradient(45% 38% at 50% 90%,#ff174f18,transparent 70%)}
html[data-theme=light] h1,html[data-theme=light] h2,html[data-theme=light] h3,html[data-theme=light] b,html[data-theme=light] .temp,html[data-theme=light] .turn,html[data-theme=light] .text{color:var(--text)}
html[data-theme=light] p,html[data-theme=light] small,html[data-theme=light] .note,html[data-theme=light] .kicker{color:var(--muted)}
html[data-theme=light] .card,html[data-theme=light] .mode,html[data-theme=light] .stat,html[data-theme=light] .library-card,html[data-theme=light] .feat-row div,html[data-theme=light] .challenge{background:#fff!important;border-color:#1d162622!important;color:var(--text);box-shadow:0 4px 18px #4b2a6f14}
html[data-theme=light] .card *,html[data-theme=light] .mode *{color:inherit}
html[data-theme=light] small{color:var(--muted)!important}
html[data-theme=light] .pill,html[data-theme=light] .tag,html[data-theme=light] .pref-btn,html[data-theme=light] .player-tab{background:#1d162610!important;border-color:#1d162622!important;color:var(--text)!important}
html[data-theme=light] .pref-btn.selected,html[data-theme=light] .player-tab.active{background:linear-gradient(135deg,#ff4fa333,#8d63ff33)!important;border-color:#ff4fa3!important}
html[data-theme=light] .icon,html[data-theme=light] .back{background:#fff;border:1px solid #1d162622;color:var(--text)}
html[data-theme=light] .btn.secondary,html[data-theme=light] .endlink,html[data-theme=light] .smallbtn.sec{background:#fff!important;color:var(--text)!important;border:1px solid #1d162633!important}
html[data-theme=light] .input,html[data-theme=light] input,html[data-theme=light] textarea,html[data-theme=light] select{background:#fff;color:var(--text);border:1px solid #1d162633}
html[data-theme=light] .progress{background:#1d162618}
html[data-theme=light] .levelup-overlay{background:rgba(246,242,250,.82)}
html[data-theme=light] .levelup-box{background:#fff;color:var(--text);box-shadow:0 20px 60px #4b2a6f33}
html[data-theme=light] .levelup-box *{color:inherit}
html[data-theme=light] .levelup-number,html[data-theme=light] .levelup-box .btn,html[data-theme=light] .levelup-btn{color:#fff}
html[data-theme=light] .levelup-box .btn.secondary,html[data-theme=light] .levelup-box .endlink{color:var(--text)}
html[data-theme=light] .chat-msg{background:#1d162612;color:var(--text)}
html[data-theme=light] .chat-msg.me{background:linear-gradient(135deg,#ff4fa3,#8d63ff);color:#fff}
html[data-theme=light] .chat-msg.me *{color:#fff}
html[data-theme=light] .bt-chip{background:#fff;border-color:#1d162630;color:var(--text)}
html[data-theme=light] .bt-chip.win{color:#fff;background:linear-gradient(135deg,var(--pink),var(--violet))}
html[data-theme=light] .bt-ring{border-color:#1d162630}
html[data-theme=light] .bt-result .big{color:var(--text);text-shadow:none}
html[data-theme=light] .bt-result .hint{color:var(--muted)}
html[data-theme=light] .hc small{color:#fff!important}
html[data-theme=light] .daily .dt{color:var(--text)}
html[data-theme=light] .daily .dk,html[data-theme=light] .daily .streak{color:#a45a00}
html[data-theme=light] .install-card .ib-tx small{color:var(--muted)}
html[data-theme=light] .legal-links a{color:var(--muted)}
html[data-theme=light] .age-card{background:#fff;color:var(--text)}
html[data-theme=light] .avatar,html[data-theme=light] .bt-chip .av,html[data-theme=light] .pdot{color:#fff!important;text-shadow:0 1px 2px #0005}
html[data-theme=light] .bt-temp{color:var(--text)}
html[data-theme=light] #s1 [style*="color: #fff"]{color:var(--text)!important;text-shadow:none!important}
html[data-theme=light] #s1 [style*="text-shadow: 0 0 35px"]{text-shadow:0 0 30px #ff4fa355!important}
.toast{opacity:0;pointer-events:none}.toast.show{opacity:1}

/* ===== v9: resumen y cartas compartibles ===== */
.sum-box{max-width:420px;width:100%;text-align:center;max-height:92vh;overflow:auto;padding:16px}
.sum-box img{width:100%;max-height:58vh;object-fit:contain;border-radius:16px;border:1px solid #ffffff22;background:#000}
.sum-actions{display:grid;gap:8px;margin-top:12px}
.imp-list{text-align:left;margin:10px 0;padding-left:18px;font-size:13.5px;line-height:1.5}

/* ===== v10: paleta unificada: rosa #ff4fa3 + violeta #8d63ff ===== */
.app.home-live::before{background:radial-gradient(40% 35% at 20% 25%,#ff4fa338,transparent 70%),radial-gradient(38% 34% at 82% 35%,#8d63ff33,transparent 70%),radial-gradient(45% 38% at 50% 90%,#ff4fa326,transparent 70%)}
.hc{border-color:#ffffff26}
.hc-truth{background:linear-gradient(150deg,#2b1d5a,#14102a)}
.hc-dare{background:linear-gradient(150deg,#5a1a49,#1d0f22)}
.hc-truth small{color:#c9b8ff}.hc-dare small{color:#ffb0d6}
.hc svg{width:42px;height:42px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 10px #ffffff66)}
.hc-dare svg{stroke:#ffd0e6;filter:drop-shadow(0 0 10px #ff4fa3aa)}
.feat-row .fi{display:block;width:22px;height:22px;margin:0 auto 5px;fill:none;stroke:#ff6fb5;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.daily{border-color:#8d63ff66;background:linear-gradient(135deg,#8d63ff1c,#ff4fa31c)}
.daily .dk{color:#ff9fcd}
.daily .streak{color:#c9b8ff}
.install-card{border-color:#8d63ff66;background:linear-gradient(135deg,#ff4fa31c,#8d63ff22)}
.install-card .ib-go{color:#fff;background:linear-gradient(135deg,var(--pink),var(--violet))}
.pwa-home{background:linear-gradient(135deg,#ff4fa322,#8d63ff33)!important;border:1px solid #8d63ff88!important}
html[data-theme=light] .daily .dk{color:#c2287a}
html[data-theme=light] .daily .streak{color:#6a43d6}
html[data-theme=light] .feat-row .fi{stroke:#d6307f}
.grp-pass{font-size:12.5px;line-height:1.45;color:#cbb5ff;margin:-8px 0 16px}
html[data-theme=light] .grp-pass{color:#6a43d6}

/* ===== v11 ===== */
.mode.mode-fav{border-color:#ff4fa3aa;background:linear-gradient(135deg,#ff4fa31f,#8d63ff22);box-shadow:0 0 22px #ff4fa333}
.fav-tag{display:inline-block;font-size:9.5px;font-weight:900;letter-spacing:.12em;color:#fff;background:linear-gradient(135deg,var(--pink),var(--violet));padding:3px 8px;border-radius:99px;margin-left:8px;vertical-align:middle}
html[data-theme=light] .mode.mode-fav{background:linear-gradient(135deg,#ff4fa322,#8d63ff22)!important;border-color:#ff4fa3aa!important}
.pace-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}

/* ===== v12: fase final ===== */
.fp-box{max-width:430px;width:100%;max-height:92vh;overflow:auto;text-align:center;border-color:#ff4fa3aa;box-shadow:0 0 90px #ff4fa355}
.fp-box p{font-size:14px;line-height:1.5;margin:8px 0}
.fp-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0;padding:8px 10px;border:1px solid #ffffff14;background:#ffffff08;border-radius:14px;text-align:left}
.fp-name{display:flex;align-items:center;gap:8px;font-weight:800;min-width:0;word-break:break-word}
.fp-chips{display:flex;gap:6px;flex:none}
.fp-chip{border:1px solid #ffffff22;background:#ffffff0d;color:#fff;border-radius:999px;padding:8px 11px;font-weight:800;font-size:12px}
.fp-chip.in.on{background:linear-gradient(135deg,var(--pink),var(--violet));border-color:#fff}
.fp-chip.out.on{background:#ffffff26;border-color:#ffffff66}
.fp-pair{margin:10px 0;padding:14px;border-radius:16px;border:1px solid #ff4fa366;background:linear-gradient(135deg,#ff4fa31a,#8d63ff1a)}
.fp-pair b{display:block;font-size:17px;margin-bottom:4px}
.fp-safe{margin:10px 0;padding:11px 13px;border-radius:14px;border:1px solid #8d63ff77;background:#8d63ff1f;font-size:13px;line-height:1.45;text-align:left}
.fp-safe b{display:block;font-size:14px;margin-bottom:3px}
.fp-note{font-size:12px!important;color:var(--muted);line-height:1.45}
.fp-big{font-size:22px;font-weight:950;margin:6px 0 8px}
.fp-choose{display:grid;gap:10px;margin:12px 0}
.fp-choose .btn small{display:block;font-weight:600;opacity:.85;margin-top:3px;font-size:12px}
html[data-theme=light] .fp-chip{color:var(--text);border-color:#1d162633;background:#1d162608}
html[data-theme=light] .fp-chip.in.on{color:#fff}
html[data-theme=light] .fp-row{background:#1d162606;border-color:#1d162622}

/* ===== v13: continuar la noche ===== */
.resume-card{display:none;margin:0 0 4px;padding:13px 14px;border-radius:18px;border:1px solid #ff4fa3aa;background:linear-gradient(135deg,#ff4fa326,#8d63ff26);text-align:left;animation:ibIn .5s ease both}
.resume-card.show{display:block}
.resume-card b{display:block;font-size:15px}
.resume-card small{display:block;color:var(--muted);font-size:12.5px;line-height:1.4;margin:3px 0 10px}
.resume-card .rc-row{display:flex;gap:8px}
.resume-card .rc-row .btn{padding:11px;font-size:13px}
html[data-theme=light] .resume-card small{color:var(--muted)}

/* ===== v14: mandar carta ===== */
.sharecard-btn{display:inline-flex;align-items:center;gap:6px;margin:12px auto 0;padding:9px 16px;border-radius:999px;border:1px solid #ffffff2e;background:#ffffff12;color:var(--text,#fff);font:800 13px/1 inherit;cursor:pointer}
.sharecard-btn:active{transform:scale(.97)}

/* v17-lite: pulido sobre el original (mantiene emojis, brillos y fondo) */
:focus-visible{outline:2px solid #ff85c0;outline-offset:2px}
button,a,input{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.back,.icon{width:44px;height:44px;border:1px solid #ffffff14;transition:transform .12s,background .15s}
.back:active,.icon:active{transform:scale(.94)}
.shell{min-height:100vh;min-height:100dvh}
.screen{min-height:calc(100vh - 44px);min-height:calc(100dvh - 44px)}
.screen.active{animation:scrInL .22s cubic-bezier(.2,.8,.2,1) backwards}
@keyframes scrInL{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.btn{border:1px solid #ffffff2e;box-shadow:inset 0 1px 0 #ffffff44,0 10px 28px -10px #ff4fa3cc;transition:transform .12s,filter .15s}
.btn:active{transform:translateY(1px) scale(.985);filter:brightness(.95)}
.btn.secondary{box-shadow:none;border-color:#ffffff1f}
.start-big{box-shadow:inset 0 1px 0 #ffffff55,0 14px 40px -8px #ff4fa3dd}
.card{background:linear-gradient(180deg,#ffffff0d,#ffffff05);box-shadow:inset 0 1px 0 #ffffff12,0 16px 36px -24px #000}
.mode{background:linear-gradient(135deg,#ffffff0d,#ffffff04);box-shadow:inset 0 1px 0 #ffffff12;transition:transform .12s,border-color .15s,background .15s}
.mode:active{transform:scale(.985);border-color:var(--pink);background:#ff4fa31a}
.mode .emoji{filter:drop-shadow(0 0 10px #ff4fa366)}
.mode.mode-fav{box-shadow:0 0 30px #ff4fa344,inset 0 1px 0 #ffffff22}
.hc{box-shadow:0 18px 44px #000a,inset 0 1px 0 #ffffff26}
.hc-truth{box-shadow:0 18px 44px #000a,0 0 34px -8px #8d63ffaa,inset 0 1px 0 #ffffff26}
.hc-dare{box-shadow:0 18px 44px #000a,0 0 34px -8px #ff4fa3aa,inset 0 1px 0 #ffffff26}
.pref-btn{min-height:48px;transition:transform .12s,border-color .15s}
.pref-btn:active{transform:scale(.98)}
.player-tab.done::after{color:#ff85c0}
.age-logo b{color:#ff4fa3;text-shadow:0 0 28px #ff4fa3}
.toast{bottom:calc(20px + env(safe-area-inset-bottom,0px))}

/* ==============================================================
   v17-ref · tomando como referencia los mockups del usuario
   Fondo con curvas de luz, tarjetas de cristal, brillo solo donde importa,
   emojis de color en modalidades. Solo CSS + 3 cambios de marcado en la home.
   ===================================================================== */
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 390 844' preserveAspectRatio='xMidYMid slice'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' y1='1' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23ff2d95' stop-opacity='0'/%3E%3Cstop offset='.55' stop-color='%23ff4fa3' stop-opacity='.95'/%3E%3Cstop offset='1' stop-color='%238d63ff' stop-opacity='.15'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' x1='1' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%238d63ff' stop-opacity='0'/%3E%3Cstop offset='.55' stop-color='%23b24dff' stop-opacity='.9'/%3E%3Cstop offset='1' stop-color='%23ff4fa3' stop-opacity='.2'/%3E%3C/linearGradient%3E%3Cfilter id='g' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='11'/%3E%3C/filter%3E%3Cfilter id='s'%3E%3CfeGaussianBlur stdDeviation='.7'/%3E%3C/filter%3E%3C/defs%3E%3Cpath d='M-40 340 C 70 255 160 215 300 95 S 385 -5 440 -35 L440 -40 L-40 -40 Z' fill='%238d63ff' opacity='.07'/%3E%3Cpath d='M-40 340 C 70 255 160 215 300 95 S 385 -5 440 -35' fill='none' stroke='url(%23a)' stroke-width='26' filter='url(%23g)' opacity='.55'/%3E%3Cpath d='M-40 340 C 70 255 160 215 300 95 S 385 -5 440 -35' fill='none' stroke='url(%23a)' stroke-width='1.6' filter='url(%23s)' opacity='.9'/%3E%3Cpath d='M430 650 C 335 705 250 760 120 805 S 5 860 -30 890' fill='none' stroke='url(%23b)' stroke-width='24' filter='url(%23g)' opacity='.5'/%3E%3Cpath d='M430 650 C 335 705 250 760 120 805 S 5 860 -30 890' fill='none' stroke='url(%23b)' stroke-width='1.5' filter='url(%23s)' opacity='.9'/%3E%3C/svg%3E") center/cover no-repeat}
html[data-theme=light] body::before{opacity:.22}
.mini-logo{font-size:20px;font-weight:1000;letter-spacing:-.5px;color:#fff}
.mini-logo i{font-style:normal;color:#ff4fa3;text-shadow:0 0 14px #ff4fa3}
html[data-theme=light] .mini-logo{color:var(--text)}
.top>b:not(.mini-logo){letter-spacing:.18em;font-size:13px}

/* home: tarjetas VERDAD / RETO de cristal */
.hero-cards{height:150px;width:min(344px,100%);margin:4px auto 12px}
.hc{top:0;width:48.5%;height:144px;border-radius:26px;gap:10px;overflow:hidden;transform:none!important;border:1px solid #ffffff2e;box-shadow:inset 0 1px 0 #ffffff33}
.hc::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='f' x1='0' y1='1' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23fff' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='.16'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M-5 100 C 30 92 62 62 105 22 L105 105 L-5 105 Z' fill='url(%23f)'/%3E%3Cpath d='M-5 100 C 30 92 62 62 105 22' fill='none' stroke='%23fff' stroke-opacity='.45' stroke-width='.9' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M-5 112 C 34 104 70 74 105 40' fill='none' stroke='%23fff' stroke-opacity='.22' stroke-width='.8' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.hc>*{position:relative;z-index:1}
.hc span{font-size:0;line-height:0}
.hc svg{width:46px;height:46px;stroke-width:1.6}
.hc small{font-size:17px;letter-spacing:.07em;color:#fff!important;font-weight:900}
.hc-truth{left:0;background:linear-gradient(150deg,#4a2aa8 0%,#241466 52%,#140c36 100%);border-color:#8d63ffb0;box-shadow:0 0 34px -8px #8d63ffcc,0 18px 36px -22px #000,inset 0 1px 0 #ffffff33;animation:hcF 6s ease-in-out infinite alternate}
.hc-dare{right:0;background:linear-gradient(150deg,#d11f7e 0%,#7a1558 52%,#2c0c27 100%);border-color:#ff4fa3b8;box-shadow:0 0 34px -8px #ff4fa3dd,0 18px 36px -22px #000,inset 0 1px 0 #ffffff33;animation:hcF 6.6s ease-in-out infinite alternate-reverse}
.hc-truth svg{stroke:#fff;filter:drop-shadow(0 0 10px #c9b8ffaa)}
.hc-dare svg{stroke:#ffd0e6;filter:drop-shadow(0 0 12px #ff4fa3cc)}
@keyframes hcF{to{transform:translateY(-5px)}}
@media (prefers-reduced-motion:reduce){.hc-truth,.hc-dare{animation:none}}

/* home: botón principal y accesos */
.start-big{border-radius:999px;background:linear-gradient(100deg,#ff2f92,#c24bd9 55%,#8d4bff);display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:inset 0 1px 0 #ffffff55,0 16px 42px -10px #ff2f92cc,0 0 0 1px #ff4fa355}
.start-big svg{width:22px;height:22px;fill:#fff;flex:none}
.qa{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}
.qa button{display:grid;justify-items:center;align-content:center;gap:5px;min-height:66px;padding:9px 6px;border-radius:18px;border:1px solid #ffffff1c;background:linear-gradient(145deg,#ffffff0e,#ffffff04);color:#f1eaf7;font-size:12px;font-weight:700;line-height:1.2;box-shadow:inset 0 1px 0 #ffffff12;transition:transform .12s}
.qa button:active{transform:scale(.97)}
.qa .qe{font-size:21px;line-height:1}
.qa .qa-radar{border-color:#ff4fa377;background:linear-gradient(145deg,#ff4fa31c,#8d63ff14)}
html[data-theme=light] .qa button{background:#fff;color:var(--text);border-color:#1d162622}
.resume-card{border:1px solid #ff4fa3b0;background:linear-gradient(135deg,#ff4fa326,#8d63ff22);box-shadow:0 0 30px -10px #ff4fa3aa,inset 0 1px 0 #ffffff18;border-radius:22px}
.resume-card .rc-row .btn:first-child{border-radius:999px}
.resume-card .rc-row .btn.secondary{border-radius:999px}
.feat-row div{background:linear-gradient(145deg,#ffffff0c,#ffffff04);box-shadow:inset 0 1px 0 #ffffff10;border-radius:16px}

/* nueva partida: filas con emoji de color, chevron y brillo neón en la destacada */
#s2 .kicker{color:var(--pink);letter-spacing:.2em}
#s2>.card{background:none;border:0;box-shadow:none}
#s2>.card .label{display:flex;align-items:center;gap:14px;justify-content:center;color:var(--pink);letter-spacing:.22em}
#s2>.card .label::before,#s2>.card .label::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,#ff4fa366)}
#s2>.card .label::after{background:linear-gradient(270deg,transparent,#ff4fa366)}
#s2 .pref-btn{min-height:68px;border-radius:20px;background:linear-gradient(145deg,#ffffff0e,#ffffff04);border:1px solid #ffffff1f;text-align:center;box-shadow:inset 0 1px 0 #ffffff12}
#s2 .pref-btn.selected{border-color:#ff4fa3;background:linear-gradient(135deg,#ff4fa324,#8d63ff22);box-shadow:0 0 0 1px #ff4fa3aa,0 0 28px -6px #ff4fa3cc,inset 0 1px 0 #ffffff22}
#s2 .stack{gap:10px}
#s2 .mode{position:relative;padding:14px 44px 14px 14px;border-radius:20px;gap:14px;background:linear-gradient(145deg,#ffffff0e,#ffffff04);border:1px solid #ffffff1f;box-shadow:inset 0 1px 0 #ffffff12}
#s2 .mode::after{content:"";position:absolute;right:18px;top:50%;width:9px;height:9px;border-right:2px solid #ffffffb0;border-top:2px solid #ffffffb0;transform:translateY(-50%) rotate(45deg)}
#s2 .mode .emoji{flex:none;width:46px;text-align:center;font-size:34px;line-height:1;filter:drop-shadow(0 4px 10px #0008)}
#s2 h1{font-size:clamp(27px,8vw,33px);letter-spacing:-1.5px}
#s2 .mode b{font-size:16px}
#s2 .mode small{font-size:12.5px;line-height:1.4}
#s2 .mode.mode-fav{border:1.5px solid #ff4fa3;background:linear-gradient(135deg,#ff4fa326,#8d63ff2e);box-shadow:0 0 0 1px #ff4fa355,0 0 34px -6px #ff4fa3dd,inset 0 1px 0 #ffffff26;padding-block:17px}
#s2 .mode.mode-fav .emoji{font-size:38px}
#s2 .mode:active{transform:scale(.985)}
html[data-theme=light] #s2 .mode,html[data-theme=light] #s2 .pref-btn{background:#fff!important}

/* =====================================================================
   v17-ref2 · resto de pantallas con el mismo lenguaje que home y nueva partida
   (solo estilos: cristal, borde luminoso y brillo donde importa)
   ===================================================================== */
.card{position:relative;border:1px solid #ffffff1f;border-radius:22px;background:radial-gradient(120% 90% at 100% 0,#8d63ff1c,transparent 55%),linear-gradient(160deg,#ffffff10,#ffffff04);box-shadow:inset 0 1px 0 #ffffff1a,0 18px 40px -26px #000}
.screen .row:not(.rc-row){border-radius:18px}
.pref-btn{border-radius:16px;background:linear-gradient(145deg,#ffffff0e,#ffffff04);border-color:#ffffff1f;box-shadow:inset 0 1px 0 #ffffff12}
.pref-btn.selected{border-color:#ff4fa3;background:linear-gradient(135deg,#ff4fa324,#8d63ff22);box-shadow:0 0 0 1px #ff4fa388,0 0 22px -6px #ff4fa3cc,inset 0 1px 0 #ffffff22}
.player-tab{border-radius:16px;background:linear-gradient(145deg,#ffffff0e,#ffffff04)}
.player-tab.active,.player-tab.selected{border-color:#ff4fa3;box-shadow:0 0 20px -6px #ff4fa3cc}
.kicker{color:var(--pink);letter-spacing:.2em}
.input{border-radius:16px;background:#ffffff0a;border-color:#ffffff22;transition:border-color .15s,box-shadow .15s}
.input:focus{border-color:#ff4fa3;box-shadow:0 0 0 3px #ff4fa333;outline:none}
.smallbtn{border-radius:14px}
.pill{box-shadow:inset 0 1px 0 #ffffff14}

/* temperatura y turno: números y avatares con brillo */
.temp{background:linear-gradient(135deg,#fff 10%,#ff85c0 55%,#a98bff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 22px #ff4fa366)}
#s7 .avatar{box-shadow:0 0 0 4px #ffffff14,0 0 0 8px #ff4fa322,0 0 46px -4px #8d63ffcc}
#s7 h1{letter-spacing:-1.2px}
.progress{height:10px;border-radius:99px;background:#ffffff14;box-shadow:inset 0 1px 3px #0008}
.progress>*{box-shadow:0 0 14px #ff4fa3aa}

/* carta de reto / verdad: marco luminoso */
#s9 .card,#s8 .card{border:1.5px solid #ff4fa3aa;background:radial-gradient(120% 80% at 50% 0,#ff4fa326,transparent 60%),radial-gradient(100% 80% at 100% 100%,#8d63ff26,transparent 60%),linear-gradient(160deg,#ffffff12,#ffffff05);box-shadow:0 0 0 1px #ff4fa333,0 0 40px -10px #ff4fa3cc,0 22px 44px -26px #000,inset 0 1px 0 #ffffff26}
.mode.mode-fav,.btn:not(.secondary):not(.start-big){border-radius:16px}
.btn.secondary{border-radius:16px;background:linear-gradient(145deg,#ffffff0e,#ffffff04)}

/* modales */
.levelup-box{border-color:#ff4fa355;box-shadow:0 0 60px -14px #ff4fa3aa,0 30px 70px -30px #000,inset 0 1px 0 #ffffff26}

html[data-theme=light] .card,html[data-theme=light] .pref-btn,html[data-theme=light] .player-tab,html[data-theme=light] .btn.secondary{background:#fff}
html[data-theme=light] .temp{background:linear-gradient(135deg,#1d1626,#d11f7e);-webkit-background-clip:text;background-clip:text;filter:none}
html[data-theme=light] .progress{box-shadow:none}

/* elegir VERDAD / RETO: mismos colores que las tarjetas de la home */
#s8 .choice{position:relative;overflow:hidden;border-radius:26px;color:#fff;letter-spacing:.06em;border:1px solid #ffffff2e;transition:transform .12s;box-shadow:inset 0 1px 0 #ffffff33,0 18px 36px -22px #000}
#s8 .choice:active{transform:scale(.985)}
#s8 .choice:first-child{background:linear-gradient(150deg,#4a2aa8 0%,#241466 52%,#140c36 100%);border-color:#8d63ffb0;box-shadow:0 0 34px -8px #8d63ffcc,0 18px 36px -22px #000,inset 0 1px 0 #ffffff33}
#s8 .choice:last-child{background:linear-gradient(150deg,#d11f7e 0%,#7a1558 52%,#2c0c27 100%);border-color:#ff4fa3b8;box-shadow:0 0 34px -8px #ff4fa3dd,0 18px 36px -22px #000,inset 0 1px 0 #ffffff33}
html[data-theme=light] #s8 .choice{color:#fff}
/* modo Swinger: pantalla de límites por pareja / persona */
.swg-unit{margin-bottom:12px;padding:14px}
.swg-name b{font-size:18px}
.swg-name small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.swg-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.swg-chips .pref-btn{padding:12px 6px;font-size:13px;text-align:center}
.swg-fet{width:100%;margin-top:10px;text-align:center}
