:root{--amarillo: #ffd100;--azul: #034ea2;--rojo: #ed1c24;--azul-noche: #06264f;--paja: #e8d29c;--paja-oscura: #b48a3e;--tinta: #17181c;--rojo-carta: #c4122f;--carta: #fffdf7;--bg: #f7f0df;--surface: #fffaee;--text: #1f1d1a;--muted: #6b6355;--line: #e2d6bc;--brand-ink: var(--azul);--brand-shadow: var(--amarillo);--warn-bg: #fff1b3;--warn-text: #6a4b00;--felt-1: #0e5bb8;--felt-2: #053574;--card-w: clamp(52px, 13.5vw, 86px);--font-display: "Alfa Slab One", Georgia, serif;--font-body: "Work Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--faja: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 14'><rect width='28' height='14' fill='%23ED1C24'/><path d='M0 14L7 5L14 14L21 5L28 14Z' fill='%23FFD100'/><path d='M-7 0L0 9L7 0L14 9L21 0L28 9L35 0Z' fill='%23034EA2'/></svg>");--dorso: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect width='24' height='24' fill='%23034EA2'/><path d='M10 2h4v2h2v2h2v2h2v2h2v4h-2v2h-2v2h-2v2h-2v2h-4v-2h-2v-2h-2v-2h-2v-2h-2v-4h2v-2h2v-2h2v-2h2z' fill='%23FFD100'/><path d='M10 8h4v2h2v4h-2v2h-4v-2h-2v-4h2z' fill='%23034EA2'/><rect x='11' y='11' width='2' height='2' fill='%23ED1C24'/></svg>");color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #0b1830;--surface: #12223f;--text: #f3ecdc;--muted: #a9b3c7;--line: #24365a;--brand-ink: var(--amarillo);--brand-shadow: var(--rojo);--warn-bg: #3d3210;--warn-text: #ffe17a}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit}a{color:var(--brand-ink)}.app{min-height:100vh;display:flex;flex-direction:column}.bandera{display:grid;grid-template-rows:2fr 1fr 1fr;height:12px}.bandera__amarillo{background:var(--amarillo)}.bandera__azul{background:var(--azul)}.bandera__rojo{background:var(--rojo)}.faja{height:14px;background:var(--faja) repeat-x left center / 28px 14px}.topbar{width:100%;max-width:1240px;margin:0 auto;padding:14px 16px 10px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px}.brand{display:flex;flex-direction:column;align-items:flex-start;border:0;background:none;padding:0;cursor:pointer;text-align:left}.brand__name{font-family:var(--font-display);font-size:28px;line-height:1;color:var(--brand-ink);text-shadow:2px 2px 0 var(--brand-shadow)}.brand__tag{font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--muted);margin-top:4px}.topbar__nav{display:flex;flex-wrap:wrap;gap:8px}.btn{border:2px solid transparent;border-radius:999px;padding:12px 24px;font-size:16px;font-weight:700;cursor:pointer;transition:transform .12s,box-shadow .12s,background-color .12s}.btn:focus-visible{outline:3px solid var(--amarillo);outline-offset:3px}.btn--primary{background:var(--amarillo);color:var(--azul-noche);box-shadow:0 4px 0 var(--rojo)}.btn--secondary{background:var(--azul);color:#fff;box-shadow:0 4px 0 var(--azul-noche)}.btn--primary:hover,.btn--secondary:hover{transform:translateY(-1px)}.btn--primary:active,.btn--secondary:active{transform:translateY(3px);box-shadow:0 1px 0 var(--rojo)}.btn--ghost,.btn--lang{background:transparent;border-color:var(--line)}.btn--ghost:hover,.btn--lang:hover,.btn--lang{background:var(--surface)}.btn--sm{padding:7px 14px;font-size:14px}.link-button{border:0;background:none;text-decoration:underline;cursor:pointer;color:var(--muted);padding:8px;margin-top:6px}.icon-button{width:40px;height:40px;border:0;border-radius:50%;background:none;font-size:28px;line-height:1;cursor:pointer}.icon-button:hover{background:var(--line)}.main{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:8px 16px 32px}.display{font-family:var(--font-display);font-weight:400;color:var(--brand-ink);text-shadow:3px 3px 0 var(--brand-shadow);font-size:clamp(34px,7vw,54px);margin:10px 0}.display--hero{font-size:clamp(52px,13vw,120px);line-height:1;margin:18px 0 12px;text-shadow:4px 4px 0 var(--brand-shadow),8px 8px 0 var(--rojo)}.inicio{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 0 8px}.inicio__fan{display:flex;justify-content:center;padding-top:18px;height:calc(var(--card-w) * 1.65)}.inicio__fan-card{margin:0 calc(var(--card-w) * -.16);transform-origin:50% 120%;transform:rotate(calc(var(--i) * 10deg)) translateY(var(--lift));animation:deal-in .5s ease-out both;animation-delay:calc((var(--i) + 2) * 70ms)}.inicio__lead{font-size:clamp(17px,2.4vw,21px);max-width:36ch;margin:0 0 14px;font-weight:500}.inicio__vs{display:flex;align-items:center;gap:10px;color:var(--muted);font-weight:600}.inicio__hat{width:44px;height:44px}.inicio__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:26px}.card{--w: var(--card-w);--suit: var(--tinta);position:relative;flex:none;width:var(--w);aspect-ratio:5 / 7;border-radius:calc(var(--w) * .1);background:var(--carta);border:1px solid rgba(0,0,0,.14);box-shadow:0 1px #0000000f,0 3px 8px #0003;color:var(--suit);font-family:var(--font-display);overflow:hidden;-webkit-user-select:none;user-select:none}.card--md{--w: calc(var(--card-w) * .72)}.card--sm{--w: 26px;border-radius:4px;box-shadow:0 1px 2px #00000040}.card--red{--suit: var(--rojo-carta)}.card__corner{position:absolute;top:5%;left:8%;display:flex;flex-direction:column;align-items:center;font-size:calc(var(--w) * .2);line-height:.95}.card__corner span:last-child{font-family:var(--font-body);font-size:.9em}.card__corner--bottom{inset:auto 8% 5% auto;transform:rotate(180deg)}.card--sm .card__corner{inset:0;justify-content:center;font-size:10px;line-height:1.05}.card__body{position:absolute;inset:13% 20%}.card__pip{position:absolute;transform:translate(-50%,-50%);font-family:var(--font-body);font-size:calc(var(--w) * .22);line-height:1}.card__pip--flip{transform:translate(-50%,-50%) rotate(180deg)}.card__pip--ace{font-size:calc(var(--w) * .52)}.card__court{position:absolute;inset:0 14%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1.5px solid var(--suit);border-radius:calc(var(--w) * .05);background:linear-gradient(to bottom,var(--amarillo) 0 8%,var(--azul) 8% 12%,var(--rojo) 12% 16%,transparent 16% 84%,var(--rojo) 84% 88%,var(--azul) 88% 92%,var(--amarillo) 92% 100%)}.card__court-letter{font-size:calc(var(--w) * .44);line-height:1}.card__court-suit{font-family:var(--font-body);font-size:calc(var(--w) * .2);line-height:1.1}.card--back{background:var(--dorso) center / calc(var(--w) * .34) var(--azul);border:calc(var(--w) * .055) solid var(--carta);box-shadow:0 1px #0000000f,0 3px 8px #00000040,inset 0 0 0 1px #ffffff40}.card--sm.card--back{border-width:2px}.mesa{display:grid;grid-template-columns:minmax(0,1fr) 250px;grid-template-areas:"lucho log" "rim log" "you log";gap:14px 20px;align-items:start}.row--lucho{grid-area:lucho;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"badge hand seat";align-items:center;gap:12px}.row--lucho .lucho{grid-area:badge}.row--lucho .hand{grid-area:hand}.row--lucho .seat{grid-area:seat;justify-self:end}.row--you{grid-area:you;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"seat hand";align-items:end;gap:16px}.row--you .seat{grid-area:seat}.row--you .you{grid-area:hand}.rim{grid-area:rim;padding:12px;border-radius:22px;background:var(--faja) left top / 28px 14px;box-shadow:0 10px 30px #06142d40}.felt{position:relative;min-height:calc(var(--card-w) * 1.4 + 74px);padding:10px 14px 16px;border-radius:12px;background:radial-gradient(120% 90% at 50% 30%,var(--felt-1),var(--felt-2));box-shadow:inset 0 0 0 2px #ffffff14,inset 0 12px 30px #00000059;color:#fff}.felt__status{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:600;color:#ffffffc7}.felt__body{display:flex;gap:16px;align-items:flex-start;margin-top:10px}.felt__empty{margin:auto;font-family:var(--font-display);font-size:18px;letter-spacing:.04em;color:#ffffff80}.deck{position:relative;isolation:isolate;flex:none}.deck__under{position:absolute;top:4px;left:4px;z-index:-1}.deck__empty{width:calc(var(--card-w) * .72);aspect-ratio:5 / 7;border:2px dashed rgba(255,255,255,.25);border-radius:8px}.table-cards{flex:1;display:flex;flex-wrap:wrap;align-content:flex-start;gap:10px;min-height:calc(var(--card-w) * 1.4)}.slot{transition:transform .18s}.slot--fresh .card{box-shadow:0 0 0 2px #ffffffb3,0 3px 8px #00000040}.slot--preview{transform:translateY(-5px)}.slot--preview .card,.slot--taken .card{outline:3px solid var(--amarillo);outline-offset:2px}.slot--taken{animation:taken .95s ease-in forwards}.slot--incoming{animation:from-you .32s ease-out both}.slot--from-lucho{animation-name:from-lucho}.slot--incoming .card{box-shadow:0 0 0 3px var(--rojo),0 8px 18px #00000059}.toast{position:absolute;left:50%;top:50%;z-index:5;min-width:min(300px,80%);padding:12px 22px 10px;border-radius:10px;background:var(--amarillo);color:var(--azul-noche);text-align:center;box-shadow:6px 6px 0 var(--rojo),0 14px 34px #0006;transform:translate(-50%,-50%) rotate(-4deg);animation:stamp .36s cubic-bezier(.2,1.4,.4,1) both;pointer-events:none}.toast__line{display:grid;grid-template-columns:auto auto;justify-content:center;align-items:baseline;gap:0 12px}.toast__label{font-family:var(--font-display);font-size:clamp(24px,5vw,38px);line-height:1.1}.toast__pts{font-family:var(--font-display);font-size:clamp(20px,4vw,28px);color:var(--rojo)}.toast__line--blocked .toast__label{opacity:.65}.toast__line--blocked .toast__pts{font-family:var(--font-body);font-size:14px;font-weight:700;color:var(--azul-noche)}.toast__gloss{grid-column:1 / -1;font-size:13px;font-weight:600}.toast__group+.toast__group{margin-top:10px}.toast__who{margin-top:4px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.lucho{display:flex;align-items:center;gap:10px;min-width:0}.lucho__hat{width:58px;height:58px;flex:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.2))}.lucho__hat--thinking{animation:bob 1.3s ease-in-out infinite}.lucho__speech{min-width:0;min-height:52px;display:flex;align-items:center}.bubble{position:relative;margin:0;padding:8px 12px;border:2px solid var(--text);border-radius:14px 14px 14px 4px;background:var(--surface);box-shadow:3px 3px 0 var(--amarillo);font-weight:600;font-size:15px;animation:pop .24s ease-out both}.bubble__gloss{display:block;margin-top:2px;font-size:13px;font-weight:400;color:var(--muted)}.hand{display:flex;justify-content:center}.hand--lucho .card+.card{margin-left:calc(var(--card-w) * -.38)}.hand--lucho{min-height:calc(var(--card-w) * 1.01)}.you{min-width:0}.hand--you{gap:clamp(5px,1.4vw,12px);min-height:calc(var(--card-w) * 1.4 + 12px);padding-top:12px}.hand__card{position:relative;padding:0;border:0;background:none;border-radius:calc(var(--card-w) * .1);cursor:pointer;transition:transform .15s}.hand__card:hover:not(:disabled),.hand__card:focus-visible{transform:translateY(-10px)}.hand__card:focus-visible{outline:3px solid var(--amarillo);outline-offset:3px}.hand__card:disabled{cursor:default}.hand__card--chosen{transform:translateY(-14px)}.hand__card--chosen .card{outline:3px solid var(--amarillo);outline-offset:2px}.hand__tag{position:absolute;top:-9px;right:-7px;padding:2px 7px;border-radius:999px;background:var(--azul);color:#fff;font-size:11px;font-weight:700;line-height:1.4;box-shadow:0 2px 4px #00000040}.hand__tag--caida{background:var(--rojo)}.turn{margin:0;min-height:1.5em;text-align:center;font-weight:700;color:var(--muted)}.turn--you{color:var(--brand-ink)}.seat{min-width:220px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);transition:box-shadow .2s}.seat--active{box-shadow:0 0 0 3px var(--amarillo)}.seat__head{display:flex;align-items:center;gap:8px}.seat__name{font-family:var(--font-display);font-size:18px}.seat__chicas{display:flex;gap:4px;margin-left:auto}.chica-dot{width:11px;height:11px;border:2px solid var(--muted);border-radius:50%}.chica-dot--won{background:var(--rojo);border-color:var(--rojo)}.seat__score{display:flex;align-items:center;gap:12px;min-height:42px;margin-top:6px}.seat__points{font-family:var(--font-display);font-size:30px;line-height:1;color:var(--brand-ink);white-space:nowrap}.seat__points small{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--muted)}.seat__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:6px;font-size:13px;color:var(--muted)}.tally{display:flex;align-items:center}.tally>span+span{margin-left:-13px}.tally__perro+.tally__tanto{margin-left:4px!important}.chip{padding:2px 8px;border-radius:999px;background:var(--line);font-size:11px;font-weight:700;line-height:1.5}.chip--dealer{background:var(--azul);color:#fff}.chip--warn{background:var(--warn-bg);color:var(--warn-text)}.chip--event{background:var(--rojo);color:#fff}.chooser{position:fixed;left:50%;bottom:16px;z-index:20;width:min(560px,calc(100vw - 32px));padding:14px;border:2px solid var(--text);border-radius:16px;background:var(--surface);box-shadow:6px 6px 0 var(--amarillo),0 20px 50px #00000059;transform:translate(-50%);animation:slide-up .2s ease-out both;text-align:center}.chooser__title{margin:0 0 10px;font-family:var(--font-display);font-size:20px}.chooser__options{display:grid;gap:8px}.chooser__option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg);cursor:pointer;text-align:left}.chooser__option:hover,.chooser__option:focus-visible{border-color:var(--azul);outline:2px solid var(--amarillo)}.chooser__cards{display:flex;flex-wrap:wrap;gap:4px}.chooser__info{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;font-size:14px;font-weight:600}.log{grid-area:log;max-height:72vh;overflow:auto;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.log__title{margin:0 0 8px;font-family:var(--font-display);font-size:18px;font-weight:400}.log__empty{margin:0;font-size:14px;color:var(--muted)}.log__list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.log__item{display:grid;grid-template-columns:1fr auto;gap:0 8px;padding:6px 10px;border-left:4px solid var(--azul);border-radius:8px;background:var(--bg)}.log__item--lucho{border-left-color:var(--rojo)}.log__who{grid-column:1 / -1;font-size:12px;color:var(--muted)}.log__what{font-weight:700}.log__pts{font-family:var(--font-display);color:var(--rojo)}.result-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:16px;background:#06142d99;animation:fade .2s ease-out both}.result{width:min(440px,100%);overflow:hidden;border-radius:18px;background:var(--surface);box-shadow:0 30px 80px #00000073;animation:pop .26s ease-out both}.result__body{padding:18px 22px 24px;text-align:center}.result__title{margin:6px 0 8px;font-family:var(--font-display);font-size:clamp(26px,6vw,34px);font-weight:400;color:var(--brand-ink)}.result__sub{margin:0 0 12px;color:var(--muted)}.result__carton{margin:10px 0;padding:10px 12px;border-radius:12px;background:var(--bg)}.result__carton p{margin:4px 0}.result__carton-win{font-weight:700}.result__scores{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 20px}.result__score{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px;border:1px solid var(--line);border-radius:12px}.result__score .seat__chicas{margin:0}.result__name{font-weight:700}.result__points{font-family:var(--font-display);font-size:32px;line-height:1;color:var(--brand-ink)}.modal{width:min(700px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:0;border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 30px 80px #00000073}.modal::backdrop{background:#06142d99}.modal__inner{display:flex;flex-direction:column;max-height:calc(100vh - 48px)}.modal__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px 22px;border-bottom:6px solid;border-image:linear-gradient(to right,var(--amarillo) 0 50%,var(--azul) 50% 75%,var(--rojo) 75%) 1}.modal__head h2{margin:0;font-family:var(--font-display);font-size:26px;font-weight:400;color:var(--brand-ink)}.modal__body{overflow:auto;padding:6px 22px 22px;line-height:1.55}.modal__body h3{margin:20px 0 4px;font-family:var(--font-display);font-size:18px;font-weight:400;color:var(--brand-ink)}.modal__body ul{padding-left:20px}.lede{font-size:19px;font-weight:600}.fine{font-size:13px;color:var(--muted)}.points-table{width:100%;border-collapse:collapse;font-size:15px}.points-table th,.points-table td{padding:7px 8px;border-top:1px solid var(--line);vertical-align:top;text-align:left}.points-table th{padding-left:0;white-space:nowrap}.points-table__pts{font-family:var(--font-display);color:var(--rojo);text-align:right!important;white-space:nowrap}.slang{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin:8px 0}.slang div{padding:8px 10px;border-radius:10px;background:var(--bg)}.slang dt{font-weight:700}.slang dd{margin:0;font-size:14px;color:var(--muted)}.sorteo{max-width:760px;margin:0 auto;padding:16px 0;text-align:center}.sorteo__how{margin:0 auto 10px;max-width:44ch;color:var(--muted);font-weight:500}.sorteo__row{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:12px;min-height:calc(var(--card-w) * 1.01 + 12px);margin:12px 0}.sorteo__who{font-family:var(--font-display);text-align:right}.sorteo__cards{display:flex;flex-wrap:wrap;gap:6px}.sorteo__card{animation:from-lucho .3s ease-out both}.sorteo__card--hit .card{outline:3px solid var(--amarillo);outline-offset:2px;box-shadow:0 0 0 7px #ffd10059}.sorteo__result{min-height:1.5em;font-size:18px;font-weight:700}.sorteo__actions{margin-top:8px}.footer{margin-top:32px;background:var(--azul-noche);color:#f3ecdc}.footer__inner{max-width:900px;margin:0 auto;padding:22px 16px 28px;text-align:center}.footer__dedication{margin:0 0 10px;font-size:16px;font-style:italic}.footer__credit{margin:0;font-size:14px;opacity:.85}.footer a{color:var(--amarillo)}@keyframes deal-in{0%{opacity:0;transform:translateY(40px) rotate(0)}}@keyframes from-you{0%{opacity:0;transform:translateY(46px) scale(.92)}}@keyframes from-lucho{0%{opacity:0;transform:translateY(-46px) scale(.92)}}@keyframes taken{0%{transform:none}45%{transform:translateY(-8px) scale(1.04)}to{opacity:.1;transform:translateY(-2px) scale(.9)}}@keyframes stamp{0%{opacity:0;transform:translate(-50%,-50%) rotate(-12deg) scale(1.6)}}@keyframes pop{0%{opacity:0;transform:scale(.92)}}@keyframes slide-up{0%{opacity:0;transform:translate(-50%,20px)}}@keyframes fade{0%{opacity:0}}@keyframes bob{50%{transform:translateY(-4px) rotate(-4deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:920px){.mesa{grid-template-columns:minmax(0,1fr);grid-template-areas:"lucho" "rim" "you" "log"}.log{max-height:none}}@media(max-width:640px){.row--lucho{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"badge seat" "hand hand"}.row--you{grid-template-columns:minmax(0,1fr);grid-template-areas:"hand" "seat"}.seat{min-width:0}.row--you .seat{width:100%}.seat__points{font-size:24px}.lucho{position:relative}.lucho__hat{width:46px;height:46px}.lucho__speech{position:absolute;top:calc(100% + 6px);left:0;z-index:6;width:min(300px,calc(100vw - 40px));min-height:0}.bubble{font-size:14px;border-radius:4px 14px 14px}.rim{padding:8px;border-radius:16px}.felt{padding:8px 10px 12px}.felt__body{gap:10px}.table-cards{gap:6px}.brand__name{font-size:24px}.sorteo__row{grid-template-columns:70px minmax(0,1fr)}}
