/* Paleta y tipografías: personaliza estas variables. */
:root{color-scheme:dark;--gold:#e9c976;--gold-light:#ffecad;--ink:#080d0c;--panel:#101b19e6;--text:#f5f4e9;--muted:#adb8ae;--border:#d5bd7038;--display:'Barlow Condensed',Impact,sans-serif;--body:Barlow,Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--text);font-family:var(--body);overflow-x:clip}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.5}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}h1:focus,h2:focus,h3:focus{outline:none}[hidden]{display:none!important}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}img{max-width:100%;display:block}em{color:var(--gold);font-style:italic}button{color:inherit}p{line-height:1.65}
.intro{position:fixed;inset:0;isolation:isolate;overflow:hidden;background:#101610;z-index:10;cursor:pointer}.intro-video,.background-video{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:-4}.intro-video{opacity:.65}.intro-shade{position:absolute;inset:0;z-index:-3;background:linear-gradient(180deg,rgba(5,9,7,.45),rgba(5,8,6,.16) 25%,rgba(5,8,6,.7) 70%,#080a09 100%),linear-gradient(90deg,rgba(5,8,6,.4),transparent 45%,rgba(5,8,6,.4))}.grain{position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.16;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#000 4px)}.start{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 15px;border:0;background:transparent;color:var(--gold);font:400 clamp(22px,4vw,34px)/1.2 'PT Serif Caption',Georgia,serif;white-space:nowrap;letter-spacing:1px;text-shadow:0 0 22px #e9c97665;animation:blink 1.8s ease-in-out infinite;pointer-events:none}.start small{font:600 8px var(--body);letter-spacing:2px;color:#e8e5d7}.intro:hover .start{animation:none;color:var(--gold-light)}.intro.departing{animation:intro-out .7s cubic-bezier(.65,0,.35,1) forwards;pointer-events:none}.app.arriving{animation:app-in .8s ease both}
.app{position:relative;isolation:isolate;min-height:100svh;padding:24px 22px 95px}.background-video{object-position:62% center;opacity:.8}.app-shade{position:fixed;inset:0;z-index:-3;background:linear-gradient(90deg,#070b0dcc,#070b0d35),linear-gradient(0deg,#070b0df5 0%,#070b0d30 85%,#070b0d55)}.topbar{display:flex;align-items:center;gap:16px;max-width:1240px;margin:auto}.brand{padding:0;border:0;background:none;font:italic 900 40px/.9 var(--display);letter-spacing:-3px}.brand span{color:var(--gold)}.edition{padding-left:16px;border-left:1px solid var(--border);font-size:8px;letter-spacing:1.5px;display:flex;align-items:center;gap:10px}.edition svg{width:11px;height:11px;color:var(--gold)}.exit{margin-left:auto;border:0;background:none;color:#b8c2b5;font-size:8px;letter-spacing:1px;padding:12px 0 12px 8px}.system-bar{max-width:1240px;margin:25px auto 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:15px;font-size:8px;letter-spacing:1.4px;color:var(--gold);padding-bottom:13px}.ready{color:#a4b3a6;font:8px monospace}.ready i{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold)}main{max-width:1240px;margin:auto}.screen{padding:30px 0 20px;min-width:0;animation:screen-in .4s ease both}.screen.leaving{animation:screen-out .2s ease both;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--gold);display:flex;align-items:center;gap:12px;margin:14px 0 23px}.number-tag{font:600 18px var(--display);border:1px solid var(--border);padding:3px 7px}.pretitle{font-size:8px;letter-spacing:3px;margin:0 0 10px}h1{font:800 clamp(51px,12.1vw,92px)/.94 var(--display);letter-spacing:-1px;margin:0}.description{font:11px/1.8 'PT Serif Caption',Georgia,serif;color:#c1cbc0;margin:20px 0 28px}.legacy{display:none}.menu-grid{display:grid;gap:10px}.menu-card{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:18px 14px;background:linear-gradient(105deg,#17211edf,#0d1513c4);border:1px solid var(--border);transition:transform .2s,border-color .2s,background .2s;position:relative}.menu-card:first-child{border-color:#e9c97680;background:linear-gradient(110deg,#62512c88,#17201bea)}.menu-card:hover{transform:translateY(-3px);border-color:var(--gold);background:#2c3023f2}.menu-number{font:12px var(--display);color:#b4b495}.menu-card>svg{color:var(--gold);width:23px;height:23px}.menu-card strong{font:600 20px var(--display);letter-spacing:.5px;display:block}.menu-card small{font-size:10px;color:#aeb9ac;display:block;margin-top:5px;line-height:1.5}.menu-card .arrow{width:17px;margin-left:auto}.menu-card>span:not(.menu-number){min-width:0}.footer{max-width:1240px;margin:20px auto 0;border-top:1px solid var(--border);padding-top:18px;display:flex;align-items:center;gap:10px;justify-content:space-between;font-size:7px;letter-spacing:1px;color:#94a292}.footer b{font:italic 800 17px var(--display);color:var(--gold);margin-right:8px}.footer button{font-size:9px;border:0;background:none;padding:10px;color:var(--muted)}.mode{display:none}.music-toggle{position:fixed;z-index:15;bottom:max(20px,env(safe-area-inset-bottom));right:20px;display:flex;align-items:center;gap:9px;border:1px solid #e9c97677;background:#101b18f2;padding:13px 17px;color:var(--gold);box-shadow:0 5px 25px #0008}.music-toggle svg{width:19px;height:19px}.music-toggle span{font-size:9px;letter-spacing:1.5px}
.back{display:inline-flex;align-items:center;gap:8px;background:none;border:0;color:#c3ccb9;font-size:9px;letter-spacing:1.5px;padding:10px 0;margin-bottom:14px}.back svg{width:17px;transform:rotate(180deg)}h2{font:700 clamp(34px,8vw,62px)/1.04 var(--display);margin:0 0 25px;letter-spacing:.1px}.section-description{color:var(--muted);font-size:13px;max-width:650px;margin:0 0 24px}.section-description span{display:block;color:var(--gold);font-size:11px;margin-top:8px}.gold-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:14px 20px;background:linear-gradient(110deg,#bb944b,#f3d992,#c49c50);border:1px solid #f7dda0;color:#171c14;font:700 12px var(--body);letter-spacing:1px}.gold-button:hover{filter:brightness(1.12)}.gold-button svg{width:18px;height:18px}.gold-text{color:var(--gold)!important}
.profile-layout{display:grid;gap:30px;align-items:center}.player-card{position:relative;isolation:isolate;max-width:330px;width:100%;margin:auto;border:1px solid #f1d890;border-radius:24px 24px 60px 60px;overflow:hidden;background:#554526;box-shadow:0 0 42px #c9a45525,inset 0 0 20px #e9c97644;transition:transform .2s ease;transform-style:preserve-3d}.player-card>img{width:100%;height:330px;object-fit:cover;object-position:center top;opacity:.87}.rating{position:absolute;top:24px;left:23px;z-index:2;text-shadow:0 2px 10px #000}.rating strong{display:block;font:700 64px/.95 var(--display);color:var(--gold-light)}.rating span{font-size:11px;letter-spacing:2px}.player-info{text-align:center;padding:22px 25px 30px;background:linear-gradient(110deg,#372c18,#b59b5c,#44391f);color:#fcf4d5}.player-nickname{font-size:10px;letter-spacing:3px}.player-info h3{font:700 34px var(--display);margin:5px 0 10px}.player-meta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #fff4;padding:11px 0;font-size:12px}.player-meta img{height:18px;width:28px;object-fit:cover;display:inline-block;margin-right:5px}.card-label{font-size:8px;letter-spacing:1.4px}.card-shine{position:absolute;z-index:3;inset:-80%;pointer-events:none;background:linear-gradient(115deg,transparent 40%,#fff5 49%,transparent 58%);animation:shine 7s ease-in-out infinite}.profile-copy h3{font:700 43px/1.08 var(--display);margin:12px 0}.profile-copy p{font-size:14px;color:var(--muted);max-width:430px}.stats-panel{padding:23px;background:var(--panel);border:1px solid var(--border);max-width:820px}.stat{margin-bottom:24px}.stat:last-child{margin:0}.stat-label{display:flex;justify-content:space-between;margin-bottom:9px;font-size:13px}.stat-label b{color:var(--gold);font:600 22px var(--display)}.bar-track{height:6px;background:#e9c97615;overflow:hidden}.bar-fill{height:100%;width:0;background:linear-gradient(90deg,#957639,var(--gold-light));transition:width 1s cubic-bezier(.2,.7,.3,1)}.stat-celebration{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid var(--border)}.stat-celebration strong{font:700 34px var(--display);color:var(--gold)}.quote{max-width:720px;color:#d9decf;font:italic 15px/1.9 'PT Serif Caption',Georgia,serif;border-left:2px solid var(--gold);padding-left:20px;margin-top:27px}
.story-grid{display:grid;gap:16px}.memory{border:1px solid var(--border);background:var(--panel);min-width:0}.memory-lock{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;width:100%;min-height:240px;background:radial-gradient(ellipse at center,#39342177,transparent);border:0;padding:25px}.memory-lock svg{color:var(--gold);width:32px;height:32px}.memory-lock span,.memory-content span{color:var(--gold);font-size:9px;letter-spacing:2px}.memory-lock strong{font:600 26px var(--display)}.memory-lock small{font-size:8px;color:var(--muted);letter-spacing:1.5px}.memory-content{animation:screen-in .5s ease}.memory-content img{width:100%;aspect-ratio:1.6;object-fit:cover}.memory-content>div{padding:20px}.memory-content h3{font:600 27px var(--display);margin:8px 0}.memory-content p{font-size:13px;color:var(--muted);margin:0}.memory.unlocked{border-color:#e9c97680}.trophy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.trophy{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:220px;gap:16px;padding:25px 12px;background:linear-gradient(#101614ee,#121810ee);border:1px solid var(--border);box-shadow:inset 0 -24px 30px #e9c97609;overflow:hidden}.trophy:after{content:'';position:absolute;bottom:0;left:10%;right:10%;height:2px;background:linear-gradient(90deg,transparent,#e9c976aa,transparent);box-shadow:0 -15px 35px #e9c97677}.trophy svg{color:var(--gold);width:70px;height:70px;stroke-width:1;filter:drop-shadow(0 12px 8px #e9c97630)}.trophy strong{font:600 20px/1.1 var(--display);text-align:center}.trophy small{font-size:7px;letter-spacing:1.5px;color:#a2ac98}.trophy.unlocked{border-color:var(--gold);animation:gold-flash .7s ease}.trophy.unlocked small{color:var(--gold)}
.game-panel{max-width:800px;margin:auto;text-align:center;border:1px solid var(--border);padding:18px;background:#0c1714eb}.scoreboard{display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:var(--muted);padding:3px 3px 15px}.scoreboard b{font:600 22px var(--display);color:var(--gold);margin-left:5px}.pitch{position:relative;overflow:hidden;height:260px;background:repeating-linear-gradient(0deg,#19362988 0 35px,#25443188 35px 70px);border-bottom:1px solid #bac6ae50}.goal-net{position:absolute;width:84%;height:116px;top:24px;left:8%;border:4px solid #e5e6d7;border-bottom:2px solid #bdc5b2;box-shadow:0 8px 22px #0005;background:repeating-linear-gradient(90deg,transparent 0 18px,#d2dcc332 18px 19px),repeating-linear-gradient(0deg,transparent 0 18px,#d2dcc332 18px 19px),#08150d5c}.keeper{position:absolute;top:63px;left:calc(50% - 25px);width:50px;height:80px;z-index:2;transition:transform .55s ease;transform-origin:center bottom}.keeper svg{width:100%;height:100%;fill:#e9c976;stroke:#262a18;stroke-width:1}.football{position:absolute;left:calc(50% - 18px);top:204px;width:36px;height:36px;z-index:3;color:#151d17;border-radius:50%;background:#f7f4e5;box-shadow:0 6px 10px #0006;transition:transform .65s cubic-bezier(.2,.65,.35,1)}.football svg{width:36px;height:36px;stroke-width:1.4}.penalty-spot{position:absolute;bottom:14px;left:calc(50% - 4px);width:8px;height:3px;background:#fff}.shot-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:17px}.shot-controls button{padding:13px 3px;font-size:9px;letter-spacing:.5px}.game-result{font-size:14px;color:var(--gold);min-height:46px;margin:18px 0 6px}.reward-button{margin:0 auto 8px}.completion{text-align:center;padding:45px 0}.completion>svg{color:var(--gold);width:65px;height:65px;margin-bottom:20px}.completion .eyebrow{justify-content:center}.completion h2{margin-bottom:35px}.letter{max-width:740px;margin:20px auto;padding:30px 24px;border:1px solid var(--border);background:linear-gradient(120deg,#34301eeb,#0f1a17f0);animation:screen-in .7s ease}.letter h3{font:400 58px/1.2 'Monsieur La Doulaise',cursive;color:var(--gold);margin:24px 0}.letter p{font:15px/2 'PT Serif Caption',Georgia,serif;color:#e3e5d7}.letter strong{display:block;font:600 24px/1.3 var(--display);color:var(--gold);margin:30px 0}.letter .gold-button{margin-top:10px}dialog{color:var(--text);background:#111c18;border:1px solid var(--gold);max-width:520px;width:calc(100% - 36px);max-height:85svh;overflow-y:auto;padding:35px 26px;box-shadow:0 20px 100px #000b}dialog[open]{animation:screen-in .3s ease}dialog::backdrop{background:#020705cf;backdrop-filter:blur(6px)}.close-dialog{position:absolute;top:8px;right:12px;background:none;border:0;color:var(--gold);font-size:28px;padding:5px 10px}.dialog-icon{width:44px;height:44px;color:var(--gold)}dialog h2{font-size:34px}dialog p{font-size:14px;color:#c7d1c0}dialog .gold-button{margin-top:20px;width:100%;font-size:10px}dialog img,dialog video{width:100%;max-height:45svh;object-fit:contain}.coupon-code{padding:18px;border:1px dashed var(--gold);color:var(--gold);text-align:center;overflow-wrap:anywhere}.celebration-overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#080d0cc9;pointer-events:none;animation:screen-in .3s ease}.celebration-overlay strong{font:900 clamp(55px,16vw,180px) var(--display);font-style:italic;color:var(--gold-light);text-shadow:0 0 60px #e9c97666;animation:celebrate .65s ease both}#confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:50}.confetti-piece{position:absolute;top:-20px;width:8px;height:13px;animation:confetti-fall 2.6s ease-in forwards}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}@keyframes intro-out{to{opacity:0;transform:scale(1.1);filter:blur(12px)}}@keyframes app-in{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes screen-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes screen-out{to{opacity:0;transform:translateY(-10px)}}@keyframes shine{0%,40%{transform:translateX(-50%)}75%,100%{transform:translateX(50%)}}@keyframes gold-flash{50%{box-shadow:0 0 40px #e9c97677,inset 0 0 40px #e9c97633}}@keyframes celebrate{from{opacity:0;transform:scale(.5) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(-4deg)}}@keyframes confetti-fall{to{transform:translate(var(--drift),110vh) rotate(650deg);opacity:0}}
@media(min-width:640px){.app{padding:30px 5vw 90px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-hero{display:flex;justify-content:space-between;align-items:center;padding:12px 0 10px}.legacy{display:flex;flex-direction:column;align-items:center;margin-right:3vw;color:var(--gold)}.legacy span{font-size:9px;letter-spacing:2px}.legacy b{font:800 150px/.95 var(--display);font-style:italic;color:transparent;-webkit-text-stroke:1px #e9c97677;margin:10px 0}.profile-layout{grid-template-columns:1fr 1fr}.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trophy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pitch{height:310px}.goal-net{height:140px}.keeper{top:80px;height:85px}.football{top:250px}.shot-controls button{font-size:12px}.letter{padding:45px}.mode{display:block}.mode i{color:var(--gold);border:1px solid var(--border);padding:3px 5px;margin-left:6px}.system-bar{font-size:9px}.edition{font-size:9px}.exit{font-size:9px}.menu-card{padding:21px 18px}.description{font-size:13px}}
@media(min-width:1050px){.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-hero{padding:28px 0 15px}.menu-card{min-height:106px}.menu-card strong{font-size:22px}.story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trophy-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.trophy{min-height:280px}.background-video{object-position:center 65%}.app-shade{background:linear-gradient(90deg,#070b0df0,#070b0d90 45%,#070b0d25),linear-gradient(0deg,#070b0df5,transparent 80%)}.profile-copy h3{font-size:58px}.screen{padding-top:35px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.confetti-piece{display:none}}
/* Fiesta sorpresa: instrucciones visibles antes del menú. */
.surprise-brief{display:flex;gap:17px;margin:0 0 24px;padding:23px 20px;border:1px solid #e9c97677;border-left:3px solid var(--gold);background:linear-gradient(105deg,#65502288,#111b17eb)}
.surprise-brief>svg{color:var(--gold);width:25px;height:25px;margin-top:4px}.surprise-brief .eyebrow{margin:0 0 8px;font-size:8px}.surprise-brief h2{font:600 30px var(--display);margin:0 0 7px;color:var(--gold-light)}.surprise-brief p{font-size:12px;max-width:850px;margin:0;color:#e0e5d5;line-height:1.8}.secret-rules{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:16px;color:var(--gold);font-size:8px;letter-spacing:1px}.secret-reminder{padding:16px;border-left:2px solid var(--gold);background:#e9c9760a;font-family:var(--body)!important;font-size:13px!important;color:var(--gold)!important}
.memory-content img{aspect-ratio:4/3;object-position:center 25%}.player-card>img{object-position:center 20%}.photo-credits{color:var(--muted);font-size:9px;text-decoration:underline;text-underline-offset:3px}.footer{flex-wrap:wrap}.credits-page{max-width:800px;margin:auto;padding:50px 24px}.credits-page h1{font-size:52px}.credits-page h2{font-size:26px;margin-top:30px}.credits-page a{color:var(--gold)}.credits-page li{margin:22px 0;line-height:1.8}.credits-page p{color:var(--muted)}
@media(max-width:420px){.surprise-brief{padding:19px 14px;gap:12px}.secret-rules{flex-direction:column;gap:8px}.surprise-brief p{font-size:11px}}
/* Más aire antes del título: el video gana protagonismo al entrar. */
#menu .menu-hero{min-height:76svh;display:flex;align-items:flex-end;padding:clamp(150px,27svh,290px) 0 40px;gap:28px}
#menu .menu-hero>div:first-child{max-width:720px}
#menu .description{margin-bottom:0}
#menu .legacy{align-self:center}
.app-shade{background:linear-gradient(90deg,#070b0d99,#070b0d20),linear-gradient(0deg,#070b0de8,#070b0d20 70%,#070b0d25)}
.party-details{display:grid;gap:13px;margin:32px 0 30px}.party-details-heading{grid-column:1/-1}.party-details-heading .eyebrow{margin-bottom:10px}.party-details-heading h2{font-size:32px;margin-bottom:7px}.party-detail{display:flex;gap:16px;padding:23px 20px;background:#101b19ed;border:1px solid var(--border)}.party-detail>svg{color:var(--gold);width:25px;height:25px;margin-top:3px}.party-detail span{font-size:8px;letter-spacing:2px;color:var(--muted)}.party-detail h3{font:600 29px var(--display);color:var(--gold-light);margin:8px 0}.party-detail p{font-size:13px;margin:0 0 9px;color:#e0e5d5}.party-detail small{display:block;font-size:10px;color:var(--muted);line-height:1.7}.party-detail strong{color:var(--gold)}
@media(min-width:640px){.party-details{grid-template-columns:1fr 1fr}#menu .menu-hero{min-height:78svh;padding-top:clamp(160px,30svh,340px)}.party-details-heading h2{font-size:40px}}
@media(min-width:1050px){.app-shade{background:linear-gradient(90deg,#070b0db0,#070b0d40 48%,#070b0d15),linear-gradient(0deg,#070b0ddc,transparent 80%)}#menu .menu-hero{min-height:75svh;padding-bottom:50px}}

/* Interacciones tipo videojuego: la tarjeta sale al abrir y reaparece al volver. */
.menu-card{transform-origin:center;will-change:transform,opacity}
.menu-card:active,.memory-lock:active,.trophy:active{transform:scale(.96)}
.menu-card.card-selected{animation:card-launch .3s cubic-bezier(.2,.8,.3,1) both}
.menu-card.card-return{animation:card-return .46s cubic-bezier(.16,.8,.3,1) both;animation-delay:var(--card-delay,0ms)}
.memory-content.opening{animation:card-open .32s cubic-bezier(.16,.8,.3,1) both;transform-origin:top center}
.memory-content.closing{animation:card-close .32s cubic-bezier(.55,0,.8,.3) both;transform-origin:top center}
@keyframes card-launch{50%{transform:scale(1.045);filter:brightness(1.35)}100%{opacity:0;transform:scale(.9) translateY(-20px)}}
@keyframes card-return{from{opacity:0;transform:translateY(28px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes card-open{from{opacity:0;transform:scaleY(.82) translateY(-14px)}to{opacity:1;transform:scaleY(1) translateY(0)}}
@keyframes card-close{from{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(.82) translateY(-14px)}}

/* Superficies limpias: el brillo y el contraste sustituyen los bordes de color. */
.edition,.system-bar,.number-tag,.menu-card,.footer,.music-toggle,.gold-button,.player-card,
.player-meta,.stats-panel,.stat-celebration,.memory,.trophy,.game-panel,.letter,dialog,
.coupon-code,.surprise-brief,.secret-reminder,.party-detail,.mode i{border-color:transparent!important}
.menu-card,.music-toggle,.gold-button,.player-card,.stats-panel,.memory,.trophy,.game-panel,
.letter,dialog,.party-detail{border-width:0}
.surprise-brief,.secret-reminder,.quote{border-left:0}

/* Rediseño local: portada y navegación con lenguaje visual de videojuego. */
.start{min-width:min(86vw,430px);padding:20px 34px 19px;background:linear-gradient(90deg,transparent,#0b110ed9 14%,#0b110ef2 86%,transparent);clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,18px 100%,0 50%);font:italic 800 clamp(24px,5vw,42px)/.95 var(--display);text-transform:uppercase;letter-spacing:.12em;text-align:center;text-shadow:0 0 11px #e9c976,0 0 32px #e9c97680;animation:start-game-blink 1.05s steps(2,end) infinite}
.start:before,.start:after{content:'';position:absolute;top:0;width:52px;height:3px;background:var(--gold-light);box-shadow:0 54px 0 var(--gold-light),0 0 16px var(--gold)}
.start:before{left:34px}.start:after{right:34px}.start small{font:700 8px/1 var(--body);letter-spacing:.3em;color:#fff;margin-top:4px;text-shadow:none}.intro:hover .start{color:var(--gold);animation:start-game-blink 1.05s steps(2,end) infinite}
@keyframes start-game-blink{0%,44%,100%{opacity:1;filter:brightness(1)}45%,70%{opacity:.28;filter:brightness(1.65)}71%,88%{opacity:.82}}

/* El encuadre baja el punto focal de la fuente para mover a Ronaldo hacia arriba. */
.background-video{object-position:64% 72%}

.menu-grid{gap:13px}.menu-card{isolation:isolate;overflow:hidden;min-height:104px;padding:19px 20px 19px 18px;gap:15px;border:0!important;background:linear-gradient(125deg,#17221fe8 0%,#0c1412ed 70%);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));box-shadow:inset 0 1px 0 #fff0;transition:transform .24s cubic-bezier(.2,.7,.2,1),background .24s,filter .24s}
.menu-card:before{content:'';position:absolute;z-index:-1;left:0;top:0;width:5px;height:100%;background:linear-gradient(180deg,var(--gold-light),#96702f);box-shadow:0 0 22px #e9c97666}
.menu-card:after{content:'';position:absolute;z-index:-1;inset:-80% -30%;background:linear-gradient(110deg,transparent 43%,#fff2 49%,transparent 55%);transform:translateX(-55%);transition:transform .55s ease}
.menu-card:first-child{background:linear-gradient(125deg,#29291fe8,#101815f2 72%)}.menu-card:hover{transform:translateY(-5px) scale(1.012);background:linear-gradient(125deg,#27342eef,#101815f5);filter:drop-shadow(0 13px 16px #0007)}.menu-card:hover:after{transform:translateX(45%)}
.menu-card>svg:first-child{width:46px;height:46px;padding:11px;color:#111712;background:linear-gradient(145deg,var(--gold-light),#b88d40);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);filter:drop-shadow(0 6px 12px #0008)}
.menu-card strong{font:italic 700 21px/.95 var(--display);letter-spacing:.035em;color:#f5f3e7}.menu-card small{margin-top:8px;color:#929f96;font-size:9px;letter-spacing:.03em}.menu-card .arrow{width:29px;height:29px;margin-left:auto;padding:7px;color:var(--gold);background:#e9c97612;border-radius:50%;transition:transform .25s,background .25s}.menu-card:hover .arrow{transform:translateX(4px);background:#e9c97624}

/* Nota de equipo: directa, humana y menos parecida a una alerta genérica. */
.surprise-brief{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:20px;margin:8px 0 30px;padding:28px 24px 25px;border:0!important;background:linear-gradient(120deg,#121c19f5,#0a100ff2);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%);box-shadow:0 16px 35px #0005,inset 0 1px 0 #ffffff0c}
.surprise-brief:after{content:'SORPRESA // 23';position:absolute;right:20px;top:18px;color:#e9c97628;font:italic 800 18px var(--display);letter-spacing:.12em}.surprise-brief>svg{position:relative;width:46px;height:46px;margin:0;padding:12px;color:#101612;background:var(--gold);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}.surprise-brief .eyebrow{margin:1px 0 11px;font-weight:700}.surprise-brief h2{max-width:680px;margin:0 0 10px;color:#f4f2e7;font:italic 700 clamp(27px,4vw,38px)/1.02 var(--display);letter-spacing:.01em}.surprise-brief p{max-width:760px;color:#bfc8be;font-size:12px;line-height:1.75}.secret-rules{gap:8px;margin-top:19px;color:#e9c976;font-size:8px;font-weight:700;letter-spacing:.11em}.secret-rules span{padding:8px 10px;background:#e9c9760e;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}.secret-rules span:before{content:'✓';margin-right:7px;color:var(--gold-light)}
@media(max-width:560px){.start{min-width:88vw;padding-inline:20px}.start:before{left:24px}.start:after{right:24px}.surprise-brief{grid-template-columns:1fr;padding:22px 18px}.surprise-brief:after{font-size:13px;right:15px;top:20px}.surprise-brief>svg{width:40px;height:40px;padding:10px}.secret-rules{flex-direction:row}.menu-card{min-height:96px;padding:17px 14px}.menu-card>svg:first-child{width:42px;height:42px}.menu-card strong{font-size:19px}}
@media(min-width:1050px){.background-video{object-position:center 82%}.menu-card{min-height:114px;padding:22px}.menu-card strong{font-size:24px}}

/* START queda como texto puro: dos segundos visible y uno en pausa suave. */
.start{min-width:0;padding:0;background:none;clip-path:none;font-size:clamp(25px,5vw,42px);animation:start-natural-blink 3s ease-in-out infinite}
.start:before,.start:after{display:none}.intro:hover .start{animation:start-natural-blink 3s ease-in-out infinite}
@keyframes start-natural-blink{0%,62%{opacity:1;text-shadow:0 0 10px #e9c976,0 0 30px #e9c97670}72%,90%{opacity:.18;text-shadow:0 0 5px #e9c97635}100%{opacity:1;text-shadow:0 0 10px #e9c976,0 0 30px #e9c97670}}

.rsvp-panel{display:grid;gap:18px;align-items:center;margin:10px 0 34px;padding:26px 24px;background:linear-gradient(120deg,#18231ff2,#0b1210f2);clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,0 100%)}.rsvp-panel .eyebrow{margin:0 0 7px}.rsvp-panel h2{font-size:clamp(30px,5vw,46px);margin:0 0 7px}.rsvp-panel p{margin:0;color:#aeb8ad;font-size:12px}.rsvp-button{display:flex;align-items:center;justify-content:center;gap:11px;min-height:54px;padding:15px 20px;border:0;background:linear-gradient(110deg,#e9c976,#ffe6a0);color:#111712;font:italic 800 15px var(--display);letter-spacing:.08em;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:transform .2s,filter .2s}.rsvp-button:hover{transform:translateY(-3px);filter:brightness(1.1)}.rsvp-button svg{width:20px;height:20px}.rsvp-button.confirmed{background:linear-gradient(110deg,#bde6b9,#f0ffe3)}.rsvp-status{grid-column:1/-1;color:#d7f1c8!important;font-size:9px!important;font-weight:700;letter-spacing:.1em}
@media(min-width:720px){.rsvp-panel{grid-template-columns:minmax(0,1fr) auto}.rsvp-button{min-width:250px}}
.rsvp-action{display:grid;gap:8px}.rsvp-action label{color:#d7c887;font:700 9px var(--sans);letter-spacing:.17em}.rsvp-action input{width:100%;min-height:48px;padding:12px 15px;border:1px solid #ffffff28;border-radius:0;background:#07100dcf;color:#f7f3e7;font:600 15px var(--sans);outline:none;transition:border-color .2s,box-shadow .2s}.rsvp-action input::placeholder{color:#77817b}.rsvp-action input:focus{border-color:#e9c976;box-shadow:0 0 0 3px #e9c9761f}.rsvp-action input:disabled{opacity:.62}
@media(min-width:720px){.rsvp-panel{grid-template-columns:minmax(0,1fr) minmax(270px,340px)}}

/* Datos de la carta: conserva la silueta y el dorado con una jerarquía más clara. */
.player-info{position:relative;isolation:isolate;overflow:hidden;padding:25px 25px 28px;background:radial-gradient(circle at 50% -25%,#f4dfa34d,transparent 52%),linear-gradient(125deg,#3a2d16 0%,#9f854c 48%,#493a1e 100%);color:#fff8dd;text-align:center;box-shadow:inset 0 1px 0 #fff4,inset 0 18px 30px #fff1}
.player-info:before{content:'';position:absolute;z-index:-1;top:0;left:12%;right:12%;height:2px;background:linear-gradient(90deg,transparent,var(--gold-light),transparent);box-shadow:0 0 16px #ffdfa580}
.player-info:after{content:'CR7';position:absolute;z-index:-1;right:-9px;top:8px;color:#fff08;font:italic 900 82px/.8 var(--display);letter-spacing:-.07em;transform:rotate(-7deg)}
.player-nickname{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 13px;background:#17170f73;color:var(--gold-light);font:700 9px/1 var(--body);letter-spacing:.24em;text-transform:uppercase;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}
.player-nickname:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold-light);box-shadow:0 0 10px var(--gold-light)}
.player-info h3{position:relative;margin:10px 0 16px;color:#fff9e6;font:italic 800 clamp(38px,10vw,48px)/.9 var(--display);letter-spacing:.015em;text-transform:uppercase;text-shadow:0 3px 13px #241704a8}
.player-meta{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0;border:0!important;background:none;font-size:12px;text-align:left}
.player-meta>span,.player-meta>strong{display:flex;min-height:54px;flex-direction:column;justify-content:center;padding:9px 12px;background:#11150f70;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}
.player-meta>span:before,.player-meta>strong:before{display:block;margin-bottom:4px;color:#e9d99d;font:700 7px/1 var(--body);letter-spacing:.2em}
.player-meta>span:before{content:'ORIGEN'}.player-meta>strong:before{content:'DORSAL'}
.player-meta>strong{align-items:flex-end;color:#fff9e6;font:italic 800 20px/.9 var(--display)}
.card-attributes{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:11px;padding:13px 5px 12px;background:linear-gradient(105deg,#12130ddd,#221b0fe8);clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);box-shadow:inset 0 0 0 1px #e9c97638,inset 0 10px 18px #e9c97608}
.card-attributes>div{display:flex;min-width:0;flex-direction:column;align-items:center;gap:3px;padding:0 2px;border-right:1px solid #e9c97622}.card-attributes>div:last-child{border-right:0}
.card-attributes strong{color:var(--gold-light);font:italic 800 22px/.9 var(--display);text-shadow:0 2px 8px #000}.card-attributes span{color:#e6d49b;font:700 7px/1 var(--body);letter-spacing:.12em}
.card-label{position:relative;display:flex;align-items:center;gap:10px;margin-top:17px;color:#fff3c7;font:700 7px/1 var(--body);letter-spacing:.2em;white-space:nowrap}
.card-label:before,.card-label:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#f7df9c88)}.card-label:after{background:linear-gradient(90deg,#f7df9c88,transparent)}
@media(max-width:380px){.player-info{padding-inline:18px}.card-label{font-size:6px;letter-spacing:.14em}.player-meta>span,.player-meta>strong{padding-inline:9px}}
