@font-face{font-family:Redaction;src:url(/fonts/redaction/webfonts/Redaction-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}@font-face{font-family:"Redaction 10";src:url(/fonts/redaction/webfonts/Redaction_10-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}@font-face{font-family:"Redaction 20";src:url(/fonts/redaction/webfonts/Redaction_20-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}@font-face{font-family:"Redaction 35";src:url(/fonts/redaction/webfonts/Redaction_35-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}@font-face{font-family:"Redaction 50";src:url(/fonts/redaction/webfonts/Redaction_50-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}@font-face{font-family:"Redaction 70";src:url(/fonts/redaction/webfonts/Redaction_70-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}@font-face{font-family:"Redaction 100";src:url(/fonts/redaction/webfonts/Redaction_100-Bold.woff2)format("woff2");font-weight:700 950;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-clean:"Redaction", Georgia, serif;--font-corrupt-1:"Redaction 10", "Redaction", serif;--font-corrupt-2:"Redaction 20", "Redaction", serif;--font-corrupt-3:"Redaction 35", "Redaction", serif;--font-corrupt-4:"Redaction 50", "Redaction", serif;--font-corrupt-5:"Redaction 70", "Redaction", serif;--font-corrupt-6:"Redaction 100", "Redaction", serif;--ink:#f2eee5;--ink-muted:#aaa89f;--ink-dim:#77766f;--void:#030504;--void-soft:#080c09;--felt:#102a20;--felt-deep:#06130e;--glass:#09100c94;--glass-strong:#090d0bc7;--glass-edge:#e9f4ec29;--glass-edge-hot:#e9f4ec4f;--gold:#baa26e;--blood:#781f22;--blood-bright:#c64b50;--warning:#dfb668;--error:#e87474;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:7px;--radius-md:13px;--radius-lg:22px;--shadow-low:0 10px 28px #0000006b;--shadow-high:0 28px 90px #000000b8;--cursor-x:50%;--cursor-y:50%;--glitch-x:0px;--glitch-y:0px;font-family:Redaction,Georgia,serif;font-weight:800}button,input,select,textarea{font-family:var(--font-clean);font-weight:800}:root{color:#eee7d7;--gold:#c9a765;--felt:#254e3c;background:#080a09;font-family:Palatino Linotype,Book Antiqua,Georgia,serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 40%,#25231e,#070807 72%);min-width:0;min-height:0;margin:0;overflow:hidden}button,input{font:inherit}button{color:#eee7d7;letter-spacing:.07em;cursor:pointer;background:#171915;border:1px solid #8d7448;padding:.7rem 1.2rem;transition:all .2s}button:hover:not(:disabled){border-color:#e0bd73;box-shadow:0 0 18px #bc913844}button:disabled{opacity:.3;cursor:not-allowed}h1{letter-spacing:.18em;text-shadow:0 4px 24px #000;margin:.1em 0;font-size:clamp(3rem,7vw,7rem)}.eyebrow{text-transform:uppercase;letter-spacing:.35em;color:var(--gold);font-size:.72rem}.loading,.landing,.screen,.asset-error{text-align:center;place-content:center;height:100vh;display:grid}.landing>div{animation:1s arrive}.landing p:not(.eyebrow){color:#bdb8a9}.landing button{width:180px;margin-top:2rem}.panel{place-content:center;padding:3rem;overflow:auto}.panel>h1{font-size:3.2rem}.menu{gap:.65rem;width:330px;margin:1rem auto;display:grid}.form{width:430px;margin:auto}.form label{text-align:left;gap:.4rem;display:grid}.form input{color:#fff;background:#101310;border:1px solid #68583b;padding:.75rem}.counter{text-transform:capitalize;grid-template-columns:1fr 55px 40px 55px;align-items:center;margin:.7rem 0;display:grid}.hint{color:#aaa}.error{color:#ef8a7b}.rules{text-align:center;width:100%;line-height:1.55}.screen:has(.card-gallery){text-align:center;text-transform:uppercase;background:radial-gradient(at 17% 19%,#02050399 0 6%,#0000 19%),radial-gradient(at 79% 32%,#485b2730 0 4%,#0000 17%),radial-gradient(at 61% 79%,#010302aa 0 7%,#0000 23%),repeating-radial-gradient(circle at 35% 28%,#9bb27c0a 0 1px,#0000 1px 5px) 0 0/11px 9px,repeating-linear-gradient(97deg,#ffffff05 0 1px,#0000 1px 6px) 0 0/9px 9px,linear-gradient(145deg,#10271d,#06130e 52%,#0b2117);padding:2.5rem 4rem 5rem;display:block;position:relative;overflow-y:auto}.screen:has(.card-gallery):before{content:"";filter:blur(9px);mix-blend-mode:screen;pointer-events:none;z-index:0;background:linear-gradient(112deg,#0000 12%,#d9efbc0a 28%,#0000 44%),radial-gradient(at 30% 15%,#b6cda310,#0000 39%),radial-gradient(at 70% 68%,#b9c4b00c,#0000 32%);animation:14s ease-in-out infinite alternate rules-smoke;position:fixed;inset:0}.screen:has(.card-gallery):after{content:"";opacity:.34;pointer-events:none;z-index:0;background-image:radial-gradient(circle,#f3dca977 0 1px,#0000 1.6px),radial-gradient(circle,#d3bd8b55 0 .7px,#0000 1.3px),radial-gradient(circle,#ffffff38 0 .5px,#0000 1px);background-size:83px 91px,127px 113px,59px 71px;animation:18s linear infinite rules-dust;position:fixed;inset:-15%}.screen:has(.card-gallery)>*{z-index:1;position:relative}.rules-emblem,.rules-copy,.gallery-instruction{display:none}.screen:has(.card-gallery)>.eyebrow{display:none}.rules-overview{grid-template-columns:repeat(12,minmax(0,1fr));gap:1.1rem;width:min(1120px,88vw);margin:1.5rem auto 3.2rem;display:grid}.rule-box{grid-column:span 6}.rule-box:nth-child(n+3){grid-column:span 4}.rule-box{text-align:center;background:linear-gradient(145deg,#163326e8,#091a12ed);border:1px solid #78906566;align-content:center;min-height:205px;padding:1.4rem 1.65rem;display:grid;box-shadow:inset 0 0 28px #0009,0 12px 30px #0009}.rule-box h2{color:#e4d3a1;letter-spacing:.14em;margin:0 0 .75rem;font-size:1.35rem;font-weight:950}.rule-box p{color:#d6dbce;letter-spacing:.035em;margin:0;font-size:.85rem;font-weight:750;line-height:1.72}.screen:has(.card-gallery)>h1{font-size:3.2rem}.screen:has(.card-gallery)>button{margin:2rem auto}.rules-emblem{color:#bd9853;letter-spacing:.28em;align-items:center;gap:1rem;max-width:1040px;margin:0 auto 1.2rem;display:flex}.rules-emblem:before,.rules-emblem:after{content:"";background:linear-gradient(90deg,#0000,#9c7a42,#0000);flex:1;height:1px}.rules-emblem span{display:none}.rules-copy{text-align:center;background:#11150fba;border:1px solid #82663a66;grid-template-columns:repeat(2,1fr);gap:.5rem 2.8rem;max-width:1040px;margin:0 auto 3rem;padding:1.3rem 1.8rem;font-weight:650;display:grid;box-shadow:inset 0 0 35px #0008,0 15px 40px #0008}.rules-copy h2{margin:1rem 0 .25rem}.rules-copy p{margin:.2rem 0 1rem}.gallery-title{text-align:center;letter-spacing:.16em;color:#ead6a6;text-shadow:0 3px 18px #000;margin-top:2rem;font-size:2.25rem}.gallery-instruction{text-align:center;color:#b9ae98}.card-gallery{perspective:1200px;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:28px 22px;width:min(1440px,94vw);margin:2rem auto;display:grid}.gallery-card{perspective:900px;filter:drop-shadow(0 10px 10px #0009);height:246px}.gallery-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .48s cubic-bezier(.2,.72,.25,1);position:relative}.gallery-card:hover .gallery-card-inner{transform:rotateY(180deg)translateY(-8px)scale(1.025)}.gallery-front,.gallery-back{backface-visibility:hidden;border-radius:7px;position:absolute;inset:0;overflow:hidden}.gallery-front img{object-fit:contain;width:100%;height:100%}.gallery-back{color:#f0e3c8;background:radial-gradient(circle at 50% 8%,#3b4e3c,#172019 65%,#0e140f);border:2px solid #b18b4d;flex-direction:column;justify-content:center;align-items:center;padding:1.2rem 1rem;display:flex;transform:rotateY(180deg);box-shadow:inset 0 0 0 5px #11180f,inset 0 0 0 6px #8e713d77,inset 0 0 38px #000b,0 8px 20px #0008}.gallery-back:before,.gallery-back:after{content:"";background:linear-gradient(90deg,#0000,#c49b52,#0000);height:1px;position:absolute;left:18%;right:18%}.gallery-back:before{top:20px}.gallery-back:after{bottom:20px}.gallery-back h3{color:#f2d99d;letter-spacing:.08em;text-align:center;text-transform:uppercase;text-shadow:0 2px 8px #000;margin:.5rem 0 .8rem;font-size:1.12rem;font-weight:900;line-height:1.25}.gallery-back p{text-align:center;color:#d8ceba;margin:0;font-size:.9rem;font-weight:750;line-height:1.55}.gallery-value{letter-spacing:.08em;text-shadow:0 2px 12px #000;margin:.05rem 0 .85rem;font-size:1.65rem;font-weight:950;display:block}.gallery-value.positive{color:#f2d995}.gallery-value.negative{color:#e79a89}.gallery-back .no-peeking{letter-spacing:.16em;font-size:1.45rem}.gallery-mark{color:#8f794e;letter-spacing:.28em;font-size:.58rem;position:absolute;bottom:30px}.rules h2{color:var(--gold)}.gallery{gap:12px;display:flex}.gallery img{width:78px}.stat-grid{background:#594e38;grid-template-columns:repeat(3,180px);gap:1px;display:grid}.stat-grid div{background:#121512;padding:1rem;display:grid}.stat-grid span{text-transform:capitalize;color:#aaa}.stat-grid strong{color:var(--gold);font-size:2rem}.game{--card-width:clamp(64px, min(5.4vw, 9.4vh), 88px);--card-height:calc(var(--card-width) * 127 / 88);--card-gap:clamp(3px, .35vw, 5px);--pile-gap:clamp(10px, 1.4vw, 20px);--side-seat-nudge:clamp(0px, calc((1440px - 100vw) * .18), 64px);height:100dvh;position:relative}.game>header{align-items:center;gap:1rem;height:56px;padding:8px 18px;display:flex}.game>header div{display:grid}.game>header small{color:#aaa}.table{box-shadow:none;isolation:isolate;background:0 0;border:0;border-radius:50%;position:absolute;inset:6% 13% 5%;transform:perspective(1200px)rotateX(2deg)}.table:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 48% 42%,#3b7458 0,#285b45 38%,#183c2f 72%,#0d261d 100%);border:14px solid #4a3423;border-radius:50%;outline:3px solid #20160f;position:absolute;inset:-4% -9%;box-shadow:0 30px 80px #000,inset 0 0 75px #06140bb5,inset 0 0 0 2px #82604455}.piles{gap:var(--pile-gap);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card,.draw{width:var(--card-width);height:var(--card-height);transform:rotate(var(--r,0deg));background:0 0;border:0;border-radius:5px;padding:0;position:relative;box-shadow:0 5px 10px #0007}.card img,.draw img{object-fit:contain;width:100%;height:100%;display:block}.draw span{background:#111;border-radius:20px;padding:3px 7px;position:absolute;bottom:-7px;right:-5px}.card-inner,.card-back,.card-face{transform-style:preserve-3d;position:absolute;inset:0}.card-back,.card-face{backface-visibility:hidden}.card-inner{transition:transform .35s}.card-face{background:#050505;border-radius:5px;transform:rotateY(180deg)}.card.flipped .card-inner{transform:rotateY(180deg)}.player{width:max-content;min-width:calc(var(--card-width) * 2 + var(--card-gap));text-align:center;position:absolute;transform:translate(-50%,-50%)}.player h3{text-shadow:0 2px 5px #000;margin:0 0 6px;font-size:.9rem}.player.active h3{color:#ffe6a2}.player.active:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(#ffd97833,#0000 70%);position:absolute;inset:-30px}.spotlight{pointer-events:none;z-index:0;background:radial-gradient(#ffe5a52b,#0000 70%);border-radius:50%;width:270px;height:210px;transition:left .6s,top .6s;position:absolute;transform:translate(-50%,-50%)}.hand{grid-template-columns:repeat(4, var(--card-width));grid-template-rows:repeat(2, var(--card-height));gap:var(--card-gap);justify-content:center;display:grid}.hand>:first-child{grid-area:1/2}.hand>:nth-child(2){grid-area:1/3}.hand>:nth-child(3){grid-area:2/2}.hand>:nth-child(4){grid-area:2/3}.hand>:nth-child(5){grid-area:1/4}.hand>:nth-child(6){grid-area:2/4}.hand>:nth-child(7){grid-area:1/1}.hand>:nth-child(8){grid-area:2/1}.hand>:nth-child(n+9){grid-area:3}.player.edge-left,.player.edge-right{min-width:0}.player.edge-left .hand,.player.edge-right .hand{grid-template-columns:repeat(4, var(--card-height));grid-template-rows:repeat(2, var(--card-width));grid-auto-columns:var(--card-height);grid-auto-rows:var(--card-width)}.empty{width:var(--card-width);height:var(--card-height);visibility:hidden;pointer-events:none;background:0 0;border:0;padding:0;font-size:0}.empty.legal{visibility:visible;pointer-events:auto;background:#e9c16b18;outline:0;box-shadow:inset 0 0 18px #e9c16b33}.card,.card img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.cambio-chip{z-index:16;background:#7d1d17;border:4px double #d8a654;border-radius:50%;width:98px;height:58px;font-weight:700;position:absolute;bottom:7.5%;left:calc(50% + 250px);box-shadow:0 8px 16px #0009,inset 0 0 0 3px #480d0a,inset 0 0 18px #e2533433}.cambio-chip:disabled{filter:grayscale()}.held{z-index:12;place-items:center;gap:5px;display:grid;position:absolute;top:40%;left:64%;transform:translate(-50%,-50%)}.draw-motion{animation:.65s ease-out both draw-to-player}.discard-take-motion{animation:.65s ease-out both take-to-player}.discard-motion{animation:.9s ease-in both play-to-discard}.deal-motion{animation:.65s cubic-bezier(.2,.75,.25,1) both deal-card;animation-delay:var(--delay)}.swap-in-motion{animation:.7s ease-out both swap-into-slot}.swap-exchange-first{z-index:20;animation:.8s ease-in-out both exchange-first}.swap-exchange-second{z-index:21;animation:.8s ease-in-out both exchange-second}.penalty-deal-motion{animation:.7s cubic-bezier(.2,.8,.2,1) both penalty-deal}.incorrect-return-motion{z-index:31;animation:.85s cubic-bezier(.16,.82,.2,1) both incorrect-return}.snap-motion{z-index:30;animation:.34s cubic-bezier(.1,.85,.25,1.2) both snap-strike}.score-flip{z-index:4;animation:.6s both scoring-reveal}.card.cancelled{filter:brightness(.45)saturate(.6);opacity:.72}.score.counting{color:#ffe19a;margin-top:.35rem;font-size:1.45rem;animation:.35s score-pop;display:block}.power-panel{color:#eadfca;letter-spacing:.04em;z-index:20;background:linear-gradient(#20241df5,#0d100df5);border:1px solid #a9864d;border-radius:4px;align-items:center;gap:.7rem;padding:.75rem 1rem;display:flex;position:fixed;top:58px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #000b,inset 0 0 0 1px #f2d38b1f}.power-panel b{color:#efd79e;margin-right:.35rem}.power-panel button{background:#1a1e19;padding:.52rem .82rem}.legal{outline:2px solid #e5bc67;box-shadow:0 0 18px #e5bc6799}.card.swap-selected{z-index:22;outline:4px solid #d71927;box-shadow:0 0 0 2px #150003,0 0 24px #d71927}.card.opening-ai-peek .card-face{background:#020202;box-shadow:inset 0 0 18px #000}.card.opening-ai-peek .card-inner{animation:1.15s cubic-bezier(.2,.75,.25,1) both opaque-opening-peek}.card.opening-ai-peek-1 .card-inner{animation-delay:.7s}.card.opening-ai-peek-2 .card-inner{animation-delay:1.9s}.card.ai-power-peek{z-index:15;outline:2px solid #d6aa5c}.card.ai-power-peek .card-inner{animation:1.3s ease-in-out both opaque-ai-peek}.card.ai-power-peek .card-face{background:#020202;box-shadow:inset 0 0 18px #000}.countdown{color:#ffcf6c;font-size:1.8rem}.empty-pile{box-shadow:none;border:1px dashed #fff4}.held p{margin:0}.reference{letter-spacing:.035em;color:#ded5c1;z-index:18;background:linear-gradient(135deg,#1b1c18f5,#0b0e0cf7),#0d110e;border:1px solid #9b7a43;border-radius:4px;width:218px;min-height:154px;padding:1rem 1.05rem .9rem;font-size:.78rem;line-height:1.65;transition:border-color .25s,transform .25s,box-shadow .25s;position:fixed;bottom:16px;right:16px;box-shadow:0 12px 32px #000b,inset 0 0 0 1px #f0cf7b18,inset 0 0 24px #0007}.reference:before{content:"CAMBIO · QUICK REFERENCE";color:#d9b66e;letter-spacing:.16em;border-bottom:1px solid #7f653e99;margin-bottom:.55rem;padding-bottom:.45rem;font-size:.65rem;font-weight:700;display:block}.reference:hover{border-color:#d4ac61;transform:translateY(-3px);box-shadow:0 16px 38px #000d,inset 0 0 0 1px #f0cf7b2b}.reference b{color:#f1dfb4;letter-spacing:.12em;text-transform:uppercase;font-size:.9rem}.reference p{margin:.5rem 0 0}.toast{background:#111e;padding:.8rem 1.2rem;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:30;background:#050605df;place-items:center;display:grid;position:fixed;inset:0}.dialog{text-align:center;background:radial-gradient(circle at 50% 0,#252a22,#11140f 68%),#151814;border:1px solid #b08c50;border-radius:5px;gap:.85rem;min-width:370px;max-width:min(560px,80vw);padding:2.2rem 2.35rem;display:grid;position:relative;box-shadow:0 28px 80px #000e,inset 0 0 0 1px #f0d38a20,inset 0 0 35px #0008}.dialog:before{content:"";pointer-events:none;border:1px solid #8f713c55;position:absolute;inset:7px}.dialog h2{color:#eed9a8;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .6rem;font-size:1.8rem}.dialog button{background:#1c211b;border-color:#80673e;min-width:220px;margin-inline:auto;position:relative}.results p{border-bottom:1px solid #333;justify-content:space-between;display:flex}.developer{z-index:50;background:#080a08ee;width:560px;max-height:70vh;padding:.7rem;font:12px Consolas,monospace;position:fixed;top:65px;left:10px;overflow:auto}.developer h4{color:#f0dfbc;margin:.85rem 0 .25rem}.debug-state{background:#ffffff0a;border:1px solid #ffffff25;margin-top:.65rem;padding:.55rem;line-height:1.55}.developer-actions,.ai-memory ul{margin:.4rem 0;padding-left:1.4rem}.developer-actions li,.ai-memory li{margin:.18rem 0}.ai-memory{border:1px solid #ffffff1c;margin:.35rem 0;padding:.4rem .5rem}.developer-log{color:#f0dfbc;margin:.7rem 0 .9rem;padding:0 0 0 1.6rem}.developer-log li{border-bottom:1px solid #ffffff17;padding:.35rem .2rem}.developer>details>summary{color:#aaa;cursor:pointer;margin-top:.6rem}.cambio-called{background:radial-gradient(circle at 50% 10%,#6b0d0d55,#0000 60%);animation:3s infinite alternate alarm}.asset-error pre{color:#ef8a7b}#size-guard{display:none}@media (width<=899px),(height<=599px){#size-guard{text-align:center;z-index:999;background:#090a09;place-content:center;display:grid;position:fixed;inset:0}#app{visibility:hidden}}@keyframes arrive{0%{opacity:0;transform:translateY(20px)}}@keyframes alarm{to{background-color:#32060655}}@keyframes opaque-opening-peek{0%,to{transform:rotateY(0)}24%,76%{transform:rotateY(180deg)}}@keyframes opaque-ai-peek{0%,to{transform:rotateY(0)}25%,78%{transform:rotateY(180deg)}}@keyframes draw-to-player{0%{transform:translate(var(--from-x), var(--from-y)) scale(.75);opacity:.25}to{opacity:1;transform:translate(0)scale(1)}}@keyframes take-to-player{0%{transform:translate(var(--from-x), var(--from-y)) rotate(-8deg)}to{transform:translate(0)}}@keyframes play-to-discard{0%{transform:translate(0, 0) rotate(var(--r,0deg))}to{transform:translate(var(--from-x), var(--from-y)) rotate(5deg)}}@keyframes deal-card{0%{transform:translate(var(--deal-x), var(--deal-y)) scale(.65) rotate(0);opacity:0}to{transform:translate(0, 0) scale(1) rotate(var(--r,0deg));opacity:1}}@keyframes swap-into-slot{0%{transform:translate(var(--deal-x), var(--deal-y)) scale(1.08)}to{transform:translate(0, 0) rotate(var(--r,0deg))}}@keyframes scoring-reveal{0%{transform:rotate(var(--r,0deg)) scale(1)}50%{transform:rotate(var(--r,0deg)) scaleX(.08) translateY(-8px)}to{transform:rotate(var(--r,0deg)) scale(1) translateY(-8px)}}@keyframes score-pop{50%{transform:scale(1.28)}}@keyframes penalty-deal{0%{transform:translate(var(--deal-x), var(--deal-y)) scale(.72);opacity:.25}to{transform:translate(0, 0) rotate(var(--r,0deg));opacity:1}}@keyframes incorrect-return{0%{transform:translate(var(--deal-x), var(--deal-y)) scale(1.1) rotate(8deg);opacity:.3}68%{opacity:1;transform:translateY(-8px)scale(1.06)rotate(-2deg)}to{transform:translate(0, 0) rotate(var(--r,0deg));opacity:1}}@keyframes snap-strike{0%{opacity:.2;transform:translateY(16px)scale(.82)rotate(-12deg)}65%{opacity:1;transform:translateY(-7px)scale(1.13)rotate(4deg)}to{transform:translateY(0) scale(1) rotate(var(--r,0deg))}}@keyframes exchange-first{0%{transform:rotate(var(--r,0deg))}45%{transform:translate(var(--deal-x), var(--deal-y)) scale(1.08) rotate(-5deg)}to{transform:rotate(var(--r,0deg))}}@keyframes exchange-second{0%{transform:rotate(var(--r,0deg))}45%{transform:translate(calc(-1 * var(--deal-x)), calc(-1 * var(--deal-y))) scale(1.08) rotate(5deg)}to{transform:rotate(var(--r,0deg))}}@keyframes rules-dust{0%{transform:translate(0,0)}to{transform:translate(42px,-70px)}}@keyframes rules-smoke{0%{opacity:.65;transform:translate(-2%,-1%)scale(1.03)}to{opacity:1;transform:translate(3%,2%)scale(1.1)}}html,body,#app{width:100%;height:100%}body{color:var(--ink);background:var(--void);font-weight:800}#app{isolation:isolate;position:relative}body:before,body:after{content:"";pointer-events:none;z-index:200;position:fixed;inset:-12%}body:before{opacity:.2;mix-blend-mode:screen;background-image:radial-gradient(circle,#ffffff61 0 .6px,#0000 .9px),radial-gradient(circle,#bd9f723d 0 .75px,#0000 1.15px),repeating-linear-gradient(91deg,#0000 0 3px,#ffffff05 4px 5px);background-position:0 0,31px 17px,0 0;background-size:61px 67px,97px 89px,9px 9px;animation:.42s steps(2,jump-none) infinite grain-drift}body:after{background:radial-gradient(ellipse at var(--cursor-x) var(--cursor-y), #cee0cf17, transparent 18%), radial-gradient(ellipse at 8% 31%, #8b261f2e, transparent 27%), radial-gradient(ellipse at 91% 78%, #ba77351f, transparent 25%), radial-gradient(ellipse at 48% 52%, transparent 34%, #010302bf 91%), repeating-linear-gradient(116deg, transparent 0 13%, #d2e3d905 17%, transparent 25%);filter:blur(8px)contrast(1.08);mix-blend-mode:screen;opacity:.8;animation:17s ease-in-out infinite alternate smoke-breathe}::selection{color:#fff;background:var(--blood)}h1,h2,h3,strong,b{font-weight:900}.corrupt-text{font-family:var(--font-corrupt-3);font-variation-settings:normal;translate:var(--glitch-x) var(--glitch-y);transition:font-family 80ms step-end,text-shadow .14s,translate 90ms ease-out;animation:6.8s step-end infinite corruption-pulse;display:inline-block}.corrupt-title{position:relative}.corrupt-title:before,.corrupt-title:after{content:attr(data-copy);pointer-events:none;opacity:0;position:absolute;inset:0}.corrupt-title:before{color:#a91e2494;transform:translate(calc(var(--glitch-x) * -1 - 2px), 1px);clip-path:inset(9% 0 61%);animation:5.3s step-end infinite title-shear}.corrupt-title:after{color:#cce0d36b;transform:translate(calc(var(--glitch-x) + 2px), -1px);clip-path:inset(62% 0 13%);animation:7.1s step-end 1.1s infinite reverse title-shear}:root[data-corruption="0"] .corrupt-text{font-family:var(--font-corrupt-1)}:root[data-corruption="1"] .corrupt-text{font-family:var(--font-corrupt-2)}:root[data-corruption="2"] .corrupt-text{font-family:var(--font-corrupt-3)}:root[data-corruption="3"] .corrupt-text{font-family:var(--font-corrupt-4)}:root[data-corruption="4"] .corrupt-text{font-family:var(--font-corrupt-5)}:root[data-corruption="5"] .corrupt-text{font-family:var(--font-corrupt-6)}.landing,.screen,.asset-error{background:linear-gradient(#020503a8,#020503d6),url(/textures/stained-green-felt.png) 50%/cover}.landing:before,.screen:before{content:"";pointer-events:none;mix-blend-mode:screen;background:linear-gradient(115deg,#0000 22%,#e5d7b112 31%,#0000 41%),radial-gradient(circle,#0000 42%,#000000b8);position:fixed;inset:0}h1{color:#eeeae0;text-shadow:0 3px #000000e6,0 0 34px #951e2252}.landing h1{letter-spacing:.16em;text-align:center;width:auto;max-width:calc(100vw - 48px);margin:0;font-size:clamp(7rem,12vw,11rem);line-height:.9}.landing>div{justify-items:center;width:100%;max-width:100vw;display:grid;overflow:clip}.landing{overflow:clip}.landing button,.screen button,.game button:not(.card):not(.draw):not(.cambio-chip):not(.empty):not(.reference-toggle){color:#fff;min-width:180px;min-height:56px;box-shadow:none;font-family:var(--font-corrupt-3);letter-spacing:.11em;text-transform:uppercase;background:#fff3;border:2px solid #ffffffd1;border-radius:0;padding:.85rem 1.45rem;font-size:1rem;font-weight:900}.landing button:hover:not(:disabled),.screen button:hover:not(:disabled),.game button:not(.card):not(.draw):not(.cambio-chip):not(.empty):not(.reference-toggle):hover:not(:disabled){font-family:var(--font-corrupt-5);background:#fff3;border-color:#fff;transform:scale(1.045);box-shadow:0 0 24px #ffffff21}.menu{gap:.85rem;width:430px}.menu button{min-height:62px}.form{width:500px}.form .counter{grid-template-columns:1fr 58px 48px 58px;gap:.55rem}.screen .form .counter button{width:58px;min-width:58px;min-height:52px;padding:0}.eyebrow{color:#b9a779;letter-spacing:.28em}button{border:1px solid var(--glass-edge);border-radius:var(--radius-sm);background:linear-gradient(135deg, #ffffff17, transparent 42%), var(--glass-strong);min-height:44px;color:var(--ink);box-shadow:inset 0 1px #ffffff17, var(--shadow-low);-webkit-backdrop-filter:blur(18px)saturate(1.25);transition:transform .13s,border-color .16s,background .16s,box-shadow .16s}button:hover:not(:disabled){border-color:var(--glass-edge-hot);background:linear-gradient(135deg,#ffffff26,#0000 46%),#141d17b8;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff29,0 16px 42px #0000008a,0 0 22px #8724262e}button:active:not(:disabled){transform:translateY(1px)scale(.985)}button:focus-visible,input:focus-visible{outline-offset:3px;outline:2px solid #d9c994}.form,.rule-box,.stat-grid div,.power-panel,.reference,.dialog,.toast,.game>header{border:1px solid var(--glass-edge);border-radius:var(--radius-md);box-shadow:inset 0 1px #ffffff21, inset 0 -1px #ffffff0a, var(--shadow-high);-webkit-backdrop-filter:blur(24px)saturate(1.3);background:linear-gradient(135deg,#ffffff1f,#0000 34%),linear-gradient(165deg,#131f18ab,#050907b8);overflow:hidden}.form,.rule-box,.stat-grid div,.dialog,.game>header{position:relative}.form:before,.rule-box:before,.stat-grid div:before,.power-panel:before,.reference:after,.dialog:after,.game>header:after{content:"";pointer-events:none;opacity:.6;background:linear-gradient(105deg,#0000 5%,#ffffff17 22%,#0000 39%);position:absolute;inset:0;transform:translate(-65%)}.form{padding:var(--space-6)}.form input{border-color:var(--glass-edge);border-radius:var(--radius-sm);background:#0000004d}.stat-grid{gap:var(--space-3);background:0 0}.stat-grid div{justify-content:center;min-height:118px}.game{background:linear-gradient(#01050357,#0104038a),url(/textures/stained-green-felt.png) 50%/cover;overflow:hidden}.game:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 47%,#0000 18%,#0103023d 64%,#000000bf 100%),linear-gradient(103deg,#0000 0 23%,#d9e0c30d 30%,#0000 38%);position:absolute;inset:0}.game.cambio-called:after{content:"";pointer-events:none;z-index:25;mix-blend-mode:screen;background:radial-gradient(circle at 50% 48%,#b2151c14,#67050a42 72%),linear-gradient(#7d060c12,#41010538);animation:2.2s ease-in-out infinite cambio-round-pulse;position:fixed;inset:0;box-shadow:inset 0 0 180px #c10c142e}.cambio-announcement{z-index:190;pointer-events:none;animation:2s cubic-bezier(.16,.8,.2,1) both cambio-takeover;animation-delay:calc(var(--announcement-age,0s) * -1);background:radial-gradient(circle,#9b0b135c,#0000 42%),#010201b8;place-content:center;justify-items:center;display:grid;position:fixed;inset:0}.cambio-announcement strong{letter-spacing:.07em;color:#f3eae3;text-shadow:-5px 0 #c5121cb8,5px 0 #7a060cc7,0 0 46px #db1822c2,0 22px 60px #000;font-size:clamp(12rem,22vw,21rem);line-height:.78}.user-turn-announcement{z-index:189;pointer-events:none;animation:cambio-takeover var(--announcement-duration,1.05s) cubic-bezier(.16, .8, .2, 1) both;animation-delay:calc(var(--announcement-age,0s) * -1);background:radial-gradient(circle,#9b0b133d,#0000 38%),#01020194;place-content:center;justify-items:center;display:grid;position:fixed;inset:0}.user-turn-announcement strong{color:#f3eae3;letter-spacing:.09em;text-shadow:-4px 0 #c5121cad,4px 0 #7a060cb8,0 0 38px #db182299,0 18px 54px #000;font-size:clamp(7rem,14vw,13rem);line-height:.82}.cambio-caller{color:#ec4d55;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 0 26px #ee222dd1;margin-bottom:2rem;font-size:clamp(1.5rem,2.6vw,2.7rem);animation:.52s ease-in-out infinite alternate cambio-caller-pulse}.game>header{height:clamp(60px,8vh,72px);margin:clamp(8px, 1.3vh, var(--space-3));padding:var(--space-2) var(--space-4);z-index:18}.game>header button{letter-spacing:.1em;min-width:clamp(100px,8vw,116px);min-height:clamp(46px,5.8vh,52px);padding:.6rem clamp(.85rem,1.2vw,1.2rem);font-size:clamp(.88rem,1vw,1rem)}.game>header small{color:var(--ink-muted);letter-spacing:.08em}.table{isolation:isolate;border-radius:0;inset:clamp(60px,8vh,72px) 0 0;transform:none}.table:before{box-shadow:none;background:0 0;border:0;border-radius:0;outline:0;inset:0}.spotlight{filter:blur(4px);background:radial-gradient(#e1d9b11f,#0000 56%),radial-gradient(#81181b1a,#0000 74%);width:clamp(220px,22vw,320px);height:clamp(168px,25vh,230px)}.piles:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(#0000006b,#0000 70%);border-radius:50%;position:absolute;inset:-42px -58px}.player h3{-webkit-backdrop-filter:blur(12px);letter-spacing:.08em;background:#0409068a;border:1px solid #ffffff1a;border-radius:999px;width:max-content;max-width:240px;margin:0 auto 8px;padding:5px 12px 4px;box-shadow:inset 0 1px #ffffff14}.player.edge-top{translate:0 76px}.player.edge-bottom{translate:0 -24px}.player.edge-left{translate:var(--side-seat-nudge) 0}.player.edge-right{translate:calc(-1 * var(--side-seat-nudge)) 0}.player.active h3{color:#fff0dc;border-color:#c64b506b;box-shadow:inset 0 1px #ffffff1f,0 0 22px #9f222752}.player.active:before{background:radial-gradient(#9321253d,#0000 69%);inset:-38px}.card,.draw{filter:drop-shadow(0 12px 14px #0000008c);transition:filter .15s,translate .15s}.card:hover,.draw:hover:not(:disabled){filter:drop-shadow(0 18px 20px #000000a3)drop-shadow(0 0 8px #e5d6a92e);translate:0 -5px}.card.legal{outline-offset:3px;outline:2px solid #ddc685d1;box-shadow:0 0 24px #d4b5656b}.game.swap-selecting .card.legal:not(.swap-selected){box-shadow:none;outline:0}.game.swap-selecting .card.legal:not(.swap-selected):hover{outline-offset:3px;outline:2px solid #ebebe5c2;box-shadow:0 0 18px #ffffff3d}.card.swap-selected,.card.legal.swap-selected{outline-offset:3px;outline:4px solid #d71927;box-shadow:0 0 0 2px #150003,0 0 28px #d71927f2}.held p{border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(14px);background:#030805ab;border-radius:999px;padding:5px 10px}.cambio-chip{left:calc(50% + var(--card-width) * 2.35);color:#858783;width:auto;min-width:0;height:auto;min-height:0;box-shadow:none;font-family:var(--font-corrupt-3);letter-spacing:.13em;text-transform:uppercase;filter:none;background:0 0;border:0;border-radius:0;padding:.25rem .4rem;font-size:1.65rem;font-weight:900;bottom:clamp(30px,7vh,76px);right:auto}.cambio-chip:disabled{color:#858783;filter:none;opacity:.58}.cambio-chip:not(:disabled){color:#d6434a;text-shadow:0 0 18px #e11f29bf;animation:1.05s ease-in-out infinite cambio-ready-pulse,1.8s step-end infinite cambio-font-flicker}.cambio-chip:not(:disabled):hover{color:#f05058;box-shadow:none;font-family:var(--font-corrupt-6);background:0 0;animation:none;transform:scale(1.24)}.power-panel{border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:center;width:max-content;max-width:calc(100vw - 2rem);padding:.8rem 1.05rem;top:76px}.game .power-panel button{min-width:clamp(112px,11vw,160px);min-height:clamp(44px,5.8vh,52px);padding:.6rem clamp(.75rem,1vw,1rem);font-size:clamp(.78rem,.9vw,.95rem)}.reference{--reference-width:248px;--reference-height:238px;width:var(--reference-width);height:auto;min-height:0;box-shadow:none;-webkit-backdrop-filter:none;perspective:1000px;font-family:var(--font-corrupt-3);pointer-events:none;z-index:24;background:0 0;border:0;border-radius:0;justify-items:end;padding:0;font-size:.92rem;line-height:1.35;animation:none;display:grid;inset:auto clamp(10px,1.2vw,18px) 0 auto;overflow:visible;transform:translate(0,0)}.reference:before,.reference:after{content:none}.reference-panel{width:var(--reference-width);height:var(--reference-height);opacity:0;transform-origin:100% 100%;pointer-events:none;max-height:0;margin-bottom:0;transition:max-height .32s cubic-bezier(.18,.78,.2,1),margin-bottom .32s,opacity .18s,transform .32s cubic-bezier(.18,.78,.2,1);overflow:hidden;transform:translateY(18px)}.reference.open .reference-panel{max-height:var(--reference-height);opacity:1;pointer-events:auto;margin-bottom:6px;transform:translateY(0)}.game .reference-toggle{color:#eeeae0;width:54px;min-width:54px;height:38px;min-height:38px;font-family:var(--font-clean);pointer-events:auto;background:#080f0bdb;border:1px solid #ffffffb8;border-bottom:0;border-radius:0;padding:0;font-size:1.55rem;line-height:1;box-shadow:inset 0 1px #ffffff1a,0 -8px 24px #0000007a}.game .reference-toggle:hover:not(:disabled){background:#ffffff2e;border-color:#fff;transform:none;box-shadow:0 -8px 28px #ffffff1a}.reference-toggle span{transition:transform .22s;display:inline-block}.reference.open .reference-toggle span{transform:rotate(180deg)}.reference-inner{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .68s cubic-bezier(.18,.78,.2,1);position:relative;transform:rotateY(0)}.reference-panel:hover .reference-inner{transform:rotateY(180deg)}.reference .reference-face{backface-visibility:hidden;transform-style:preserve-3d;background:radial-gradient(circle at 28% 19%,#ffffff0a,#0000 24%),repeating-linear-gradient(2deg,#0000 0 12px,#ffffff04 13px 14px),#07100c;border:6px solid #2a2119;border-radius:2px;align-content:start;padding:.78rem .88rem;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 38px #000,inset 0 0 0 2px #e0d9bd21,0 18px 34px #0000008c}.reference .powers{display:grid;transform:rotateY(180deg)}.reference .values,.reference .powers{display:grid}.reference b{color:#e4e0cf;font-family:var(--font-corrupt-3);letter-spacing:.18em;border-bottom:1px solid #eae5cd5c;padding-bottom:.4rem;font-size:.9rem}.reference p{color:#d2d4ca;font-family:var(--font-corrupt-3);letter-spacing:.045em;gap:.2rem;margin:.48rem 0 0;font-size:.74rem;font-weight:900;line-height:1.17;display:grid}.reference p span{display:block}@media (width<=1500px),(height<=820px){.reference{--reference-width:clamp(168px, 13vw, 210px);--reference-height:clamp(162px, 24vh, 202px)}.reference .reference-face{border-width:5px;padding:clamp(.5rem,1vh,.72rem) clamp(.55rem,.8vw,.78rem)}.reference b{padding-bottom:.28rem;font-size:clamp(.72rem,.85vw,.86rem)}.reference p{gap:.12rem;margin-top:.34rem;font-size:clamp(.6rem,.7vw,.7rem);line-height:1.12}}@media (width<=1100px){.reference{--reference-width:168px;--reference-height:162px}.reference p{font-size:.58rem}.game>header{gap:var(--space-2);padding-inline:var(--space-3)}.game>header small{font-size:.7rem}.toast{max-width:270px;padding:.65rem .9rem;font-size:.78rem;line-height:1.25}}.overlay{background:radial-gradient(circle at var(--cursor-x) var(--cursor-y), #61706224, transparent 25%), #010302c2;-webkit-backdrop-filter:blur(11px)saturate(.72)}.dialog{border-radius:var(--radius-lg);background:linear-gradient(135deg,#ffffff21,#0000 31%),linear-gradient(165deg,#18231cc2,#050806d6)}.dialog:before{border-radius:calc(var(--radius-lg) - 7px);border-color:#e2ece21a}.toast{border-radius:999px;padding:.85rem 1.25rem;bottom:20px;left:18px;transform:none}.screen:has(.card-gallery){background:linear-gradient(#02060494,#010402c7),url(/textures/stained-green-felt.png) 50%/cover fixed}.rule-box{border-color:var(--glass-edge)}.gallery-back{font-family:var(--font-clean);background:linear-gradient(135deg,#ffffff1a,#0000 36%),linear-gradient(165deg,#112219e0,#040906f0);border-color:#d2bf8985;font-weight:900}@keyframes grain-drift{0%{transform:translate(-2%,-1%)rotate(.01deg)}25%{transform:translate(1%,2%)rotate(.01deg)}50%{transform:translate(2%,-2%)rotate(.01deg)}75%{transform:translate(-1%,1%)rotate(.01deg)}to{transform:translateY(-1%)rotate(.01deg)}}@keyframes smoke-breathe{0%{opacity:.57;transform:translate(-3%)scale(1.02)}45%{opacity:.82;transform:translate(2%,-2%)scale(1.09)}to{opacity:.65;transform:translate(4%,3%)scale(1.03)}}@keyframes corruption-pulse{0%,15%,21%,49%,55%,83%,to{text-shadow:0 3px 16px #000000e6}16%{text-shadow:-3px 0 #972026a6,3px 0 #b4cdbc61}50%{text-shadow:2px 1px #9720268f,-2px -1px #b4cdbc52}84%{text-shadow:-1px 0 #972026b8,1px 0 #b4cdbc6b}}@keyframes cambio-takeover{0%{opacity:0;filter:blur(18px)}9%{opacity:1;filter:blur()}74%{opacity:1;filter:blur()}to{opacity:0;visibility:hidden;filter:blur(10px)}}@keyframes cambio-caller-pulse{0%{opacity:.62;scale:.985}to{opacity:1;scale:1.025}}@keyframes cambio-round-pulse{0%,to{opacity:.34}50%{opacity:1}}@keyframes cambio-ready-pulse{0%,to{opacity:.58;text-shadow:0 0 8px #e11f2952}50%{opacity:1;text-shadow:0 0 25px #e11f29eb}}@keyframes cambio-font-flicker{0%,21%,49%,77%,to{font-family:var(--font-corrupt-3)}22%,50%{font-family:var(--font-corrupt-5)}78%{font-family:var(--font-corrupt-6)}}@keyframes reference-arrive{0%{opacity:0;translate:18px}to{opacity:1;translate:0}}@keyframes title-shear{0%,13%,16%,51%,54%,86%,89%,to{opacity:0}14%,52%,87%{opacity:.82}15%,53%,88%{opacity:.28;transform:translate(7px,-2px)}}@media (prefers-reduced-motion:reduce){body:before,body:after,.corrupt-text,.corrupt-title:before,.corrupt-title:after,.game.cambio-called:after,.cambio-announcement,.user-turn-announcement,.cambio-caller,.cambio-chip,.reference{animation:none!important}.corrupt-title:before,.corrupt-title:after{display:none}.card,.draw,button{transition-duration:.01ms!important}}
