:root{--navy:#06182c;--cyan:#25d7e7;--gold:#ffd84d;--red:#e11d48;--green:#0a8067}*{box-sizing:border-box}html{background:#06182c}body{margin:0;min-height:100dvh;color:#fff;font-family:Poppins,system-ui;background:radial-gradient(circle at 50% 0,#174f76,transparent 34rem),linear-gradient(150deg,#06182c,#080e25);overflow-x:hidden}button,select{font:inherit}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:4px solid var(--gold);outline-offset:3px}.skip{position:fixed;top:-80px;left:10px;z-index:99;background:#fff;color:#06182c;padding:10px}.skip:focus{top:10px}.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}header{height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:8px 22px;background:#061428ed;border-bottom:1px solid #ffffff1c}.back{justify-self:start;color:#fff;text-decoration:none;font-weight:850;background:#ffffff13;padding:10px 14px;border-radius:13px}.brand{text-align:center;line-height:1.05}.brand small{display:block;color:#83edf3;text-transform:uppercase;letter-spacing:.17em;font-size:.62rem}.brand b{font-size:1.2rem}.tools{justify-self:end;display:flex;gap:7px;align-items:center}.tools button{width:46px;height:46px;border:1px solid #ffffff20;border-radius:14px;background:#ffffff13;color:#fff;font-weight:900}.coins{background:#3c2c0c;color:#ffe480;padding:11px 13px;border-radius:14px;font-weight:900}.coins i{font-style:normal}main{width:min(920px,100%);min-height:calc(100dvh - 66px);margin:auto;padding:10px 18px max(10px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:9px}.scores{display:grid;grid-template-columns:1fr 130px 1fr;gap:9px;align-items:center}.score{min-height:58px;display:grid;grid-template-columns:auto auto;align-content:center;gap:1px 8px;padding:8px 13px;border:1px solid #ffffff18;border-radius:16px;background:#ffffff12;font-weight:850}.score strong{grid-row:1/3;font-size:1.9rem}.score small{color:#b8c6d6}.score i{font-style:normal}.you strong{grid-column:2}.bot{text-align:right}.bot strong{grid-column:1;grid-row:1/3}.round{text-align:center}.round>*{display:block}.round small{color:#83edf3;font-size:.68rem}.table{position:relative;flex:1;min-height:330px;display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;gap:10px;padding:18px 40px 48px;border:4px solid #a27429;border-radius:28px;background:radial-gradient(circle,#ffffff1d,transparent 45%),repeating-linear-gradient(135deg,#ffffff08 0 2px,transparent 2px 10px),linear-gradient(145deg,#0b8a6d,#04483e);box-shadow:inset 0 0 0 2px #e4b65b,0 14px 30px #0006}.table:before{content:"";position:absolute;inset:8px;border:1px solid #ffffff27;border-radius:20px}.zone{display:flex;flex-direction:column;align-items:center;gap:7px}.zone>b{text-transform:uppercase;letter-spacing:.09em;font-size:.75rem;color:#d7fff4}.card{position:relative;width:clamp(128px,18vw,166px);aspect-ratio:5/7;display:grid;place-items:center;border:4px solid #fff;border-radius:17px;background:#fff;color:#111;box-shadow:0 12px 24px #0007;overflow:hidden}.card.back{background:repeating-linear-gradient(45deg,#173c70,#173c70 11px,#0c2851 11px,#0c2851 22px)}.monogram{width:58%;aspect-ratio:1;display:grid;place-items:center;border:3px solid #85eee8;border-radius:50%;box-shadow:0 0 0 5px #143b69,0 0 0 7px #85eee8;font:900 3rem 'Playfair Display'}.card.red{color:#d7193f}.corner{position:absolute;display:flex;flex-direction:column;align-items:center;font-weight:950;font-size:1.7rem;line-height:.9}.corner.tl{top:9px;left:10px}.corner.br{bottom:9px;right:10px;rotate:180deg}.suit{font-size:5.3rem}.card.deal{animation:deal .34s ease}.card.win{animation:win .55s ease}.vs{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#06182c;border:3px solid #85eee8;font-weight:950;font-style:italic;z-index:2}.table>p{position:absolute;left:10px;right:10px;bottom:8px;margin:0;text-align:center;font-size:.82rem;font-weight:800}.actions{display:grid;grid-template-columns:1.15fr 1fr;gap:9px}.actions button{border:0;color:#fff;font-weight:900;cursor:pointer}.actions button:disabled{opacity:.45;cursor:not-allowed}#snap{min-height:91px;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#ff7935,#df173f);box-shadow:0 8px 0 #7c1029,0 12px 20px #0005}#snap:not(:disabled):active{translate:0 6px;box-shadow:0 2px 0 #7c1029}#snap b{font-size:2.8rem;letter-spacing:.06em;line-height:1}#snap small{font-size:.68rem}.secondary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.secondary button{min-height:43px;border:1px solid #ffffff1d;border-radius:13px;background:#ffffff14}.secondary .start{grid-column:1/-1;background:linear-gradient(135deg,#167dff,#12b7c4)}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:#ffffff0e;border-radius:14px;overflow:hidden}.stats div{text-align:center;padding:5px;border-right:1px solid #ffffff10}.stats div:last-child{border:0}.stats small,.stats b{display:block}.stats small{font-size:.62rem;color:#aebed0}.keys{text-align:center;color:#91a5bc;font-size:.68rem;margin:0}kbd{background:#17293d;border:1px solid #60738a;border-bottom-width:2px;border-radius:5px;padding:1px 5px;color:#fff}dialog{border:0;padding:0;border-radius:25px;color:#07182d;max-width:min(92vw,560px);background:#fffdf8}dialog::backdrop{background:#020918d6;backdrop-filter:blur(5px)}dialog>div,dialog>form{position:relative;padding:28px;max-height:91dvh;overflow:auto}.x{position:absolute;right:12px;top:12px;width:46px;height:46px;border:0;border-radius:50%;background:#e8eff4;color:#13263b;font-size:1.5rem}.big{font-size:2.2rem}dialog h2{font:900 2rem 'Playfair Display';margin:5px 0}dialog p{color:#596b7c}.selects{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.selects label{font-size:.75rem;font-weight:850}.selects select{width:100%;min-height:48px;margin-top:4px;border:2px solid #d8e1e8;border-radius:11px;background:#fff}.toggle{display:flex;gap:11px;padding:10px 0;border-top:1px solid #e1e7ec}.toggle input{width:24px;height:24px;accent-color:#167dff}.toggle span,.toggle small{display:block}.toggle small{color:#607284}.primary{width:100%;min-height:53px;margin-top:12px;border:0;border-radius:14px;background:linear-gradient(135deg,#167dff,#0faebd);color:#fff;font-weight:900}.note{padding:10px;background:#fff3c2;border-radius:12px;color:#493900}dialog ol{padding-left:25px}dialog li{margin:12px 0}.result{text-align:center}.trophy{font-size:4rem}.result>small{display:block;color:#167dff;letter-spacing:.18em;font-weight:900}.result section{display:grid;grid-template-columns:1fr 1fr;gap:8px}.result section div{padding:12px;background:#edf3f7;border-radius:13px}.result section b,.result section small{display:block}.result section b{font-size:1.4rem}.result a{display:flex;align-items:center;justify-content:center;min-height:50px;margin-top:7px;border-radius:13px;background:#e9eff4;color:#173454;text-decoration:none;font-weight:850}.toast{position:fixed;z-index:90;top:76px;left:50%;translate:-50%;max-width:90vw;padding:11px 15px;background:#fff;color:#07182d;border:3px solid #0a8067;border-radius:13px;box-shadow:0 10px 25px #0006;font-weight:900}.toast.bad{border-color:#e11d48}.gentle *{animation-duration:.001ms!important;transition-duration:.001ms!important}#arcInstructions{display:none!important}@keyframes deal{from{transform:translateY(-35px) rotateY(75deg);opacity:.2}}@keyframes win{50%{transform:scale(1.08);filter:drop-shadow(0 0 15px #ffd84d)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
@media(max-width:640px){header{height:58px;padding:6px 9px;grid-template-columns:auto 1fr auto}.back{width:44px;height:44px;padding:0;display:grid;place-items:center}.back span,.brand small,.coins{display:none}.brand{text-align:left}.brand b{font-size:.92rem}.tools button{width:43px;height:43px}main{height:calc(100dvh - 58px);min-height:0;padding:7px 9px max(7px,env(safe-area-inset-bottom));gap:6px}.scores{grid-template-columns:1fr 92px 1fr;gap:5px}.score{min-height:48px;padding:5px 7px;font-size:.72rem}.score strong{font-size:1.45rem}.score small{font-size:.57rem}.round b{font-size:.72rem}.round small{font-size:.55rem}.table{min-height:0;padding:8px 6px 34px;border-width:3px;border-radius:20px;grid-template-columns:1fr 40px 1fr}.card{width:min(34vw,130px)}.zone>b{font-size:.59rem}.vs{width:40px;height:40px;border-width:2px;font-size:.7rem}.corner{font-size:1.15rem}.suit{font-size:3.7rem}.table>p{font-size:.65rem;bottom:5px}.actions{grid-template-columns:1fr;gap:6px}#snap{min-height:70px;border-radius:18px}#snap b{font-size:2rem}.secondary{grid-template-columns:repeat(3,1fr);gap:5px}.secondary .start{grid-column:auto}.secondary button{font-size:.67rem;min-height:40px}.stats div{padding:3px}.stats small{font-size:.5rem}.stats b{font-size:.72rem}.keys{display:none}.selects{grid-template-columns:1fr}dialog>div,dialog>form{padding:21px}}
@media(max-height:680px),(max-width:370px){.score small,.stats{display:none}.table{padding-top:5px}.card{width:min(29vw,105px)}#snap{min-height:60px}#snap small{display:none}.tools{gap:3px}}
/* Cards must never collapse inside the height-constrained phone table. */
.card{flex-shrink:0}
