@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Nunito:wght@500;700;800;900&display=swap";:root{--page-inline: clamp(12px, 4vw, 70px);--header-height: clamp(68px, 9.6dvh, 92px);--body-copy: clamp(.875rem, .78rem + .28vw, 1.125rem);font-family:Nunito,sans-serif;font-size:clamp(14px,.82rem + .22vw,17px);color:#173b55;background:#e8f6fb;font-synthesis:none;overflow-x:hidden}*{box-sizing:border-box}html,body,#app{width:100%;max-width:100%;min-height:100%;overflow-x:hidden}body{margin:0;min-height:100vh;overscroll-behavior-x:none}button{font:inherit}main{width:100%;max-width:100%;min-height:100vh;overflow-x:hidden;background:linear-gradient(180deg,#0884b4e0,#9edaeb8c 49%,#e9f4f1e6),radial-gradient(circle at 15% 30%,white 0 5%,transparent 6%),linear-gradient(120deg,#9bd9eb,#ecfafc);position:relative}main.playing{--play-header-height: var(--header-height);height:100dvh;min-height:0;overflow:hidden}main.playing header{height:var(--play-header-height)}main:after{content:"";position:fixed;top:58%;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(27,68,86,.06) 0 2px,transparent 2px 120px),linear-gradient(#e8f1ef,#cbd8d7);clip-path:polygon(0 12%,100% 0,100% 100%,0 100%);z-index:0}header{height:var(--header-height);padding:clamp(8px,1.4dvh,13px) var(--page-inline);display:flex;align-items:center;gap:clamp(7px,1.5vw,20px);position:relative;z-index:5}.brand{border:0;background:#fffaf0;border-radius:clamp(11px,1.25vw,16px);padding:clamp(5px,.7vw,8px) clamp(8px,1.2vw,15px) clamp(5px,.7vw,8px) clamp(7px,.8vw,10px);box-shadow:0 4px #c7d2d4,0 8px 18px #27627c44;display:flex;align-items:center;color:#15538a;cursor:pointer}.brand-mark,.mini-logo{display:grid;place-items:center;width:clamp(35px,min(4.2vw,5.2dvh),45px);height:clamp(35px,min(4.2vw,5.2dvh),45px);border-radius:clamp(9px,1vw,12px);background:#1e71b3;color:#f6ba2e;font-size:clamp(1.35rem,min(2.3vw,3.2dvh),1.8rem);margin-right:clamp(6px,.75vw,9px)}.brand span:last-child{display:grid;text-align:left;font-family:Barlow Condensed;line-height:.85;font-size:clamp(.875rem,min(1.55vw,2.3dvh),1.25rem)}.brand strong{color:#398d4a;font-size:clamp(1.2rem,min(2vw,3dvh),1.625rem)}.round-button{margin-left:auto;width:clamp(42px,min(4.7vw,6dvh),52px);height:clamp(42px,min(4.7vw,6dvh),52px);border:clamp(3px,.3vw,4px) solid #fff;background:#fff8e9;color:#23618b;border-radius:50%;font-size:clamp(1.25rem,min(2vw,3dvh),1.625rem);font-weight:900;box-shadow:0 5px #b5c6cc;cursor:pointer}.account{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0;padding:5px 7px;border:2px solid #fff;border-radius:8px;background:#fffaf0;box-shadow:0 4px #b5c6cc}.account+.round-button{margin-left:4px}.account img{width:34px;height:34px;flex:0 0 auto;border-radius:50%;object-fit:cover}.account span{display:grid;min-width:0;line-height:1.05}.account small{color:#6b818b;font-size:.55rem;font-weight:900}.account b{max-width:150px;overflow:hidden;color:#173b55;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.account button{min-height:32px;border:0;border-left:1px solid #cedbde;background:transparent;color:#23618b;font-size:.68rem;font-weight:900;cursor:pointer}.account button:disabled{opacity:.55;cursor:wait}.landing{height:calc(100dvh - var(--header-height));min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);position:relative;z-index:1;max-width:1280px;margin:auto;padding:clamp(24px,5dvh,60px) clamp(24px,4.7vw,60px);align-items:center}.hero-copy{max-width:35.625rem}.eyebrow{color:#f3ae19;background:#fff9ec;padding:clamp(5px,.55vw,7px) clamp(9px,1vw,13px);border-radius:clamp(5px,.5vw,7px);font:800 clamp(.68rem,.58rem + .2vw,.82rem) "Nunito";letter-spacing:clamp(.8px,.12vw,1.5px);box-shadow:0 3px #d3dadb}h1{font:900 clamp(3.5rem,min(7vw,12dvh),6.75rem)/.78 "Barlow Condensed";margin:clamp(22px,min(2.5vw,4dvh),32px) 0;color:#fff;letter-spacing:clamp(-2px,-.16vw,-1px);text-shadow:0 6px 0 #15628d,0 10px 20px #1a526d77;text-transform:uppercase}h1 em{font-style:normal;color:#f9c52d}.hero-copy p{color:#173f58;font-size:var(--body-copy);line-height:1.6;max-width:31.875rem;font-weight:700}.sign-in-panel{width:min(260px,100%);margin-top:18px}.google-button{min-height:44px}.auth-loading{margin-top:18px;color:#173f58;font-weight:800}.hero-copy .auth-error{margin:8px 0 0;color:#9b2929;font-size:.78rem;line-height:1.35}.primary{min-height:44px;border:clamp(2px,.25vw,3px) solid #fff;color:#fff;background:linear-gradient(#51c65a,#26973e);box-shadow:0 6px #176c31,0 9px 18px #154d4c55;padding:clamp(12px,min(1.25vw,2dvh),16px) clamp(18px,2vw,25px);border-radius:clamp(11px,1.2vw,15px);font-size:clamp(.8rem,.72rem + .2vw,1rem);font-weight:900;cursor:pointer;letter-spacing:.04em}.primary span{padding-left:clamp(12px,1.6vw,20px)}.text-button{min-height:44px;border:0;background:transparent;color:#155984;font-size:clamp(.8rem,.72rem + .2vw,1rem);font-weight:900;padding:clamp(12px,1.6vw,20px);text-decoration:underline;cursor:pointer}.lobby-overlay{z-index:40}.lobby-card{position:relative;width:min(560px,100%);max-height:min(720px,calc(100dvh - 24px));overflow:auto;padding:clamp(24px,5vw,40px);border:4px solid white;border-radius:22px;background:#fffaf0;box-shadow:0 9px #9eb7bf,0 25px 70px #06283ebb}.lobby-card>small{color:#398d4a;font-size:.72rem;font-weight:900;letter-spacing:.12em}.lobby-card h2{margin:5px 40px 3px 0;color:#173b55;font:900 clamp(2rem,7vw,3rem) "Barlow Condensed";text-transform:uppercase}.lobby-card>p{margin:0 0 18px;color:#647b86;font-size:.86rem;font-weight:700}.lobby-card .lobby-error{padding:9px 11px;border-radius:8px;color:#932f2f;background:#ffe5df}.player-list{display:grid;gap:9px;min-height:82px}.player-list>p{align-self:center;margin:12px;color:#667f8b;font-weight:800;text-align:center}.player-option{width:100%;min-height:64px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:8px 12px;border:2px solid #d7e4e5;border-radius:13px;color:#173b55;background:#fff;text-align:left;cursor:pointer}.player-option:hover:not(:disabled){border-color:#42a855;transform:translateY(-1px);box-shadow:0 4px #c5d6d6}.player-option:disabled{opacity:.5;cursor:default}.player-option img,.player-avatar,.duel-request img{width:44px;height:44px;border-radius:50%;object-fit:cover}.player-avatar{display:grid;place-items:center;color:#fff;background:#2385ad;font-weight:900}.player-option>span{display:grid;min-width:0}.player-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-option small{color:#3a9e4b;font-size:.6rem;font-weight:900;letter-spacing:.08em}.player-option>b{color:#247aa0;font-size:.68rem}.duel-request{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:8px;margin:12px 0;padding:11px;border:2px solid #efbd35;border-radius:13px;background:#fff3bd}.duel-request>div{display:grid}.duel-request small{color:#9b6d09;font-size:.58rem;font-weight:900}.duel-request button{min-height:36px;padding:6px 9px;border:0;border-radius:8px;color:#fff;font-size:.65rem;font-weight:900;cursor:pointer}.duel-request .decline{color:#5c7078;background:#e2e8e8}.duel-request .accept{background:#37a64b}.waiting-request{display:flex;align-items:center;gap:10px;margin:12px 0;padding:12px;border-radius:11px;color:#1a637f;background:#dff4fa;font-size:.8rem;font-weight:900}.search-pulse{width:12px;height:12px;border-radius:50%;background:#299fc1;box-shadow:0 0 #299fc166;animation:search-pulse 1.4s infinite}@keyframes search-pulse{70%{box-shadow:0 0 0 8px #299fc100}}.hero-art{height:clamp(320px,min(45vw,65dvh),580px);position:relative}.hero-card{position:absolute;width:clamp(140px,min(20vw,30dvh),270px);border-radius:12%;box-shadow:0 20px 35px #163f5277}.card-one{left:30%;top:22%;transform:rotate(10deg)}.card-two{left:4%;top:26%;transform:rotate(-15deg)}.card-three{right:0;top:36%;transform:rotate(20deg)}.stamp{position:absolute;right:6%;top:4%;border:clamp(3px,.45vw,6px) double #fff8;color:#fff9;font:900 clamp(1rem,min(1.9vw,2.8dvh),1.5rem) "Barlow Condensed";padding:clamp(7px,.95vw,12px);transform:rotate(10deg);border-radius:50%;text-align:center}.durian{position:absolute;z-index:4;left:38%;top:53%;font-size:clamp(5.5rem,min(12.5vw,20dvh),10rem);color:#8ca829;filter:drop-shadow(0 14px 10px #31523055)}.game-shell{position:relative;z-index:1;max-width:1240px;margin:auto;padding:clamp(4px,.5dvh,5px) clamp(8px,7.65vw,95px) clamp(8px,2.5dvh,24px)}main.playing .game-shell{height:calc(100dvh - var(--play-header-height));display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,584px) auto;align-content:start;padding-bottom:clamp(8px,2.5dvh,24px)}.board-area{width:100%;max-width:660px;margin:auto}main.playing .board-area{width:100%;height:100%;min-height:0;display:grid;place-items:center;container-type:size}.grid-wrap{overflow:hidden;background:linear-gradient(90deg,#164e78,#2d83b5 6%,#6eb6d0,#2d83b5 94%,#164e78);padding:clamp(10px,3.03%,20px) clamp(28px,8.79%,58px);border:clamp(3px,.75vw,5px) solid #eff9f9;border-radius:clamp(18px,3vw,28px);position:relative;box-shadow:0 8px #174b6c,0 15px 30px #174b6c55}main.playing .grid-wrap{width:auto;height:min(584px,calc(100cqh - clamp(8px,2.5dvh,25px)));max-width:100%;aspect-ratio:660 / 584;padding:3.03% 8.79%}.game-grid{--grid-gap: clamp(4px, 1.06cqw, 7px);display:grid;grid-template-columns:repeat(4,1fr);gap:var(--grid-gap);position:relative;z-index:2}.grid-card,.hand-card{padding:0;border:0;background:transparent;position:relative;cursor:pointer;border-radius:13%;transition:transform .15s,filter .15s;aspect-ratio:1}.grid-card img,.hand-card img{width:100%;height:100%;object-fit:cover;border-radius:12%;display:block;transition:transform .2s}.game-grid.intro-grid{pointer-events:none;transform-origin:center bottom;animation:luggage-grid-push .9s cubic-bezier(.3,.08,.2,1) both}.scanner-sequence{position:absolute;z-index:8;top:3.03%;right:8.79%;bottom:3.03%;left:8.79%;overflow:hidden;border-radius:clamp(9px,1.5vw,14px);pointer-events:none;animation:scanner-visibility 1.45s ease .55s both}.scanner-label{position:absolute;z-index:2;top:50%;left:50%;display:grid;min-width:clamp(132px,36%,190px);padding:clamp(6px,1.4cqw,9px) clamp(9px,2cqw,13px);border:clamp(2px,.45cqw,3px) solid #d9fbff;border-radius:clamp(7px,1.2cqw,10px);color:#fff;background:#082f4ae8;box-shadow:0 5px 14px #052c4799,inset 0 0 15px #46d8ff33;font:900 clamp(.62rem,2.2cqw,.82rem) "Barlow Condensed";letter-spacing:.08em;text-align:center;transform:translate(-50%,-50%);animation:scanner-readout 1.3s ease .7s both}.scanner-label small{color:#76e6ff;font-size:.72em;letter-spacing:.12em}.scanner-beam{position:absolute;inset:-5% auto -5% 0;width:clamp(26px,9%,48px);border-inline:2px solid #a9f4ff;background:linear-gradient(90deg,transparent,#82eaff8f 45%,#d8fbffde 50%,#82eaff8f 55%,transparent);box-shadow:0 0 18px #2bd7ff,0 0 42px #2bd7ff99;animation:xray-sweep 1.15s cubic-bezier(.35,0,.65,1) .72s both}@keyframes luggage-grid-push{0%{transform:translateY(-112%)}68%{transform:translateY(3.5%) scaleY(.975)}84%{transform:translateY(-1.25%) scaleY(1.008)}to{transform:none}}@keyframes scanner-visibility{0%,to{opacity:0}10%,82%{opacity:1}}@keyframes scanner-readout{0%{opacity:0;transform:translate(-50%,-42%) scale(.88)}18%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-58%) scale(.96)}}@keyframes xray-sweep{0%{transform:translate(-140%)}to{transform:translate(calc(100cqw - 10%))}}.grid-card.being-pushed{z-index:5;pointer-events:none;transition:transform .7s cubic-bezier(.22,.76,.31,1),opacity .22s ease .48s,filter .15s}.grid-card.push-up{transform:translateY(calc(-100% - var(--grid-gap)))}.grid-card.push-right{transform:translate(calc(100% + var(--grid-gap)))}.grid-card.push-down{transform:translateY(calc(100% + var(--grid-gap)))}.grid-card.push-left{transform:translate(calc(-100% - var(--grid-gap)))}.grid-card.pushed-out{opacity:0}.grid-card.eligible{filter:drop-shadow(0 0 5px #ffe95b)}.grid-card.eligible:not(.being-pushed):hover,.grid-card.center:not(.being-pushed):hover{transform:translateY(-3px) scale(1.04);z-index:4}.grid-card.center{outline:4px solid #ffdb32;outline-offset:-3px}.grid-card.rotatable{z-index:6;outline:4px solid #fff06a;outline-offset:-3px;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 32 32'%3E%3Cpath d='M25 10V4l-2.3 2.3A11 11 0 1 0 27 18' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M25 4h-6' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") 12 12,pointer;filter:drop-shadow(0 0 7px #fff06a)}.grid-card.rotatable:hover{transform:scale(1.04)}.rotation-controls{position:absolute;left:50%;bottom:clamp(4px,1.2cqh,8px);z-index:10;display:flex;align-items:center;gap:clamp(5px,1.4cqw,9px);padding:clamp(5px,1cqh,7px) clamp(6px,1.2cqw,8px) clamp(5px,1cqh,7px) clamp(9px,1.8cqw,12px);border:clamp(2px,.45cqw,3px) solid white;border-radius:999px;background:#173b55ed;color:#fff;box-shadow:0 4px 12px #082b4588;font-size:clamp(.625rem,min(1.8cqw,2cqh),.75rem);font-weight:900;white-space:nowrap;transform:translate(-50%)}.rotation-controls button{min-height:clamp(30px,4.5cqh,36px);padding:clamp(4px,.9cqh,6px) clamp(7px,1.5cqw,10px);border:0;border-radius:999px;background:#fff06a;color:#173b55;font-weight:900;cursor:pointer}.exit{position:absolute;inset:38% auto auto 42%;color:#fff;font-size:clamp(1.1rem,4.25cqw,1.75rem);text-shadow:0 2px 5px #17456d;animation:nudge .8s infinite alternate}@keyframes nudge{to{transform:scale(1.25)}}.belt-detail{position:absolute;top:0;bottom:0;width:clamp(22px,7.27%,48px);background:repeating-linear-gradient(0deg,#c5d7dc 0,#c5d7dc 10px,#7194a1 10px,#7194a1 14px);opacity:.75}.belt-detail.left{left:clamp(3px,.9%,6px)}.belt-detail.right{right:clamp(3px,.9%,6px)}.badge-pile{position:relative;width:var(--badge-size);aspect-ratio:150 / 194;flex:0 0 auto}.badge-card,.secured-card{position:absolute;aspect-ratio:1;object-fit:cover;border-radius:13%;box-shadow:0 3px #214e65,0 6px 12px #183d5266}.badge-card{top:21.65%;left:0;width:100%;z-index:100}.secured-card{top:calc(17.53% - (min(var(--pile-index),5)*clamp(3px,.5vw,5px)));left:8%;width:84%;z-index:calc(20 - var(--pile-index));transform:rotate(calc((var(--pile-index) - 2.5) * .6deg))}.player-area{--badge-size: clamp(104px, min(15.625vw, 19dvh), 150px);max-width:960px;margin:clamp(8px,2.5dvh,25px) auto 0;display:flex;align-items:flex-start;gap:clamp(7px,1.2vw,14px)}main.playing .player-area{width:100%;height:clamp(155px,22.7dvh,213px);margin-top:clamp(8px,2.5dvh,25px)}.badge-panel{width:var(--badge-size);flex:0 0 var(--badge-size);padding-top:clamp(4px,1dvh,8px)}.hand-panel{--hand-top-space: clamp(6px, 1.3dvh, 14px);flex:1 1 auto;min-width:0;min-height:clamp(145px,22dvh,194px);overflow:hidden;background:radial-gradient(ellipse at 50% 115%,#4aa2c8 0,#286c9d 42%,#174e7a 82%);border:clamp(3px,.4vw,5px) solid #f3f8f7;border-radius:clamp(16px,2vw,25px);box-shadow:0 7px #123e61,inset 0 -22px 35px #0b355c88;padding:clamp(9px,1.4dvh,14px) clamp(5px,1.6vw,20px) 0;position:relative}main.playing .hand-panel{height:100%;min-height:0}.hand-panel:after{content:"";position:absolute;left:5%;right:5%;bottom:clamp(-46px,-5dvh,-30px);z-index:0;height:clamp(40px,6dvh,54px);border-radius:50%;background:#0d3458;box-shadow:0 -5px 18px #072743aa,0 -1px #76bbd1aa;pointer-events:none}.hand-heading{position:relative;z-index:1;color:#fff;display:flex;justify-content:space-between;margin-bottom:clamp(3px,.8dvh,8px);font:900 clamp(.72rem,min(1.25vw,1.8dvh),.94rem) "Barlow Condensed";letter-spacing:.04em}.hand-heading small{color:#aaddf1}.hand{position:relative;z-index:1;display:flex;justify-content:center;align-items:flex-start;min-height:clamp(108px,16.5dvh,145px);padding:var(--hand-top-space) clamp(10px,2.3vw,28px) clamp(18px,3dvh,30px);isolation:isolate}.hand-card{width:clamp(78px,min(11.3vw,12.2dvh),116px);flex:0 0 clamp(78px,min(11.3vw,12.2dvh),116px);margin:0 clamp(-18px,-1.45vw,-10px);z-index:var(--fan-layer);transform-origin:50% 170%;transform:translateY(var(--fan-drop)) rotate(var(--fan-angle));filter:drop-shadow(0 8px 5px #082d4777);transition:transform .2s ease,filter .2s ease}.hand-card.intro-deal{pointer-events:none;filter:none;animation:hand-deal .6s cubic-bezier(.18,.84,.3,1.08) var(--deal-delay) both}@keyframes hand-deal{0%{opacity:0;transform:translate(var(--deal-x),clamp(68px,10dvh,92px)) rotate(var(--deal-start-angle)) scale(.58)}74%{opacity:1;transform:translateY(calc(var(--fan-drop) + 6px)) rotate(var(--fan-angle)) scale(1.035)}to{opacity:1;transform:translateY(var(--fan-drop)) rotate(var(--fan-angle)) scale(1)}}.hand-card img{border:3px solid #dbeaf0;box-shadow:0 3px #173e5b,0 7px 15px #082b4588}.hand-card:hover,.hand-card.selected{z-index:20;transform:translateY(calc(var(--fan-drop) - 19px)) rotate(var(--fan-angle)) scale(1.045)}.hand-card:hover{filter:drop-shadow(0 11px 7px #08243b99)}.hand-card.selected{filter:drop-shadow(0 0 9px #fff06a) drop-shadow(0 10px 6px #08243b99)}.hand-card.selected img{border-color:#fff17a}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#0a3d5fc9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:clamp(10px,2.5vmin,20px)}.turn-banner{position:fixed;top:clamp(58px,10dvh,86px);left:50%;z-index:45;display:flex;align-items:center;gap:clamp(8px,1.5vmin,12px);padding:clamp(8px,1.5vmin,11px) clamp(18px,3.5vmin,26px) clamp(9px,1.7vmin,12px) clamp(10px,2vmin,14px);background:#fffaf0;border:clamp(3px,.6vmin,4px) solid white;border-radius:999px;box-shadow:0 6px #aac1c8,0 20px 50px #06283e80;text-align:left;pointer-events:none;animation:turn-banner 2.2s cubic-bezier(.2,.85,.3,1) both}.turn-banner-mark{display:grid;place-items:center;flex:0 0 auto;width:clamp(32px,5.5vmin,40px);height:clamp(32px,5.5vmin,40px);border-radius:50%;background:#1e71b3;color:#f6ba2e;font-size:clamp(1.05rem,2.8vmin,1.35rem)}.turn-banner.your-turn .turn-banner-mark{background:#3d9a4e;color:#fffaf0}.turn-banner small{display:block;color:#3d9a4e;font-size:clamp(.58rem,1.5vmin,.7rem);letter-spacing:2px;font-weight:900}.turn-banner b{display:block;font:900 clamp(1.15rem,3.2vmin,1.5rem)/1.05 "Barlow Condensed";text-transform:uppercase;color:#12374e;white-space:nowrap}@keyframes turn-banner{0%{opacity:0;transform:translate(-50%,-140%) scale(.9)}13%,84%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-60%) scale(.94)}}.pass-card,.rules,.results{width:min(32.5rem,100%);max-height:calc(100dvh - clamp(20px,5vmin,40px));overflow:auto;background:#fffaf0;border:clamp(3px,.8vmin,6px) solid white;border-radius:clamp(18px,3.5vmin,28px);box-shadow:0 10px #aac1c8,0 30px 80px #06283e99;text-align:center;padding:clamp(22px,4.75vmin,38px);position:relative}.pass-card .mini-logo{width:clamp(48px,8.75vmin,70px);height:clamp(48px,8.75vmin,70px);margin:0 auto clamp(12px,2.5vmin,20px);border:clamp(3px,.65vmin,5px) solid white;box-shadow:0 4px #aac1c8;font-size:clamp(1.45rem,4vmin,2rem);line-height:1}.pass-card small,.results>small{color:#3d9a4e;font-size:clamp(.7rem,1.8vmin,.9rem);letter-spacing:clamp(1px,.25vmin,2px);font-weight:900}.pass-card h2,.rules h2,.results h2{font:900 clamp(1.8rem,4.75vmin,2.375rem)/1 "Barlow Condensed";text-transform:uppercase;margin:clamp(8px,1.5vmin,12px) 0}.pass-card p{color:#657984;font-size:clamp(.82rem,2vmin,1rem)}.pass-card .primary{width:100%;margin-top:15px}.rules{text-align:left;max-height:90vh;overflow:auto}.rules ol{padding-left:clamp(18px,3vmin,24px)}.rules li{margin:clamp(11px,2.25vmin,18px) 0;font-size:clamp(.82rem,2vmin,1rem);line-height:1.5}.rule-note{background:#e5f2f5;border-left:clamp(3px,.65vmin,5px) solid #2697bd;padding:clamp(9px,1.75vmin,14px);border-radius:clamp(6px,1vmin,8px);font-size:clamp(.75rem,1.75vmin,.875rem)}.guide-overlay .rules{width:min(38rem,100%);height:min(43rem,calc(100dvh - clamp(20px,5vmin,40px)));display:flex;flex-direction:column;overflow:hidden;padding:clamp(20px,4vmin,32px)}.guide-overlay .eyebrow{display:block;width:fit-content;margin:2px 52px 0 0;padding:0;border-radius:0;background:transparent;box-shadow:none;color:#24536c;font:800 clamp(.9rem,2vmin,1rem)/1.25 "Nunito";letter-spacing:.01em}.guide-page{flex:1 1 auto;min-height:0;overflow:auto;padding:clamp(13px,2.5vmin,20px) 2px 4px}.guide-page h2{margin-top:clamp(5px,1vmin,8px)}.guide-kicker{color:#398d4a;font-size:clamp(.66rem,1.5vmin,.75rem);font-weight:900;letter-spacing:.12em}.guide-intro{margin:0 0 clamp(15px,2.8vmin,22px);color:#607782;font-size:clamp(.82rem,1.8vmin,.94rem);font-weight:700;line-height:1.5}.guide-steps{display:grid;gap:clamp(9px,1.8vmin,14px)}.guide-steps>div{display:flex;align-items:center;gap:clamp(11px,2vmin,16px);padding:clamp(10px,2vmin,16px);border-radius:clamp(10px,2vmin,15px);background:#e8f3f5}.guide-steps>div>b,.action-number{display:grid;place-items:center;width:clamp(34px,6vmin,44px);height:clamp(34px,6vmin,44px);flex:0 0 auto;border-radius:50%;background:#2697bd;color:#fff;font:900 clamp(1rem,2.5vmin,1.3rem) "Barlow Condensed";box-shadow:0 3px #176d91}.guide-steps span{color:#607782;font-size:clamp(.75rem,1.7vmin,.88rem);line-height:1.35}.guide-steps strong{display:block;margin-bottom:2px;color:#173b55;font-size:clamp(.82rem,1.9vmin,.96rem)}.action-guide{display:grid;gap:clamp(9px,1.8vmin,14px);margin-bottom:clamp(12px,2.3vmin,18px)}.action-guide section{display:flex;align-items:flex-start;gap:clamp(11px,2vmin,16px);padding:clamp(11px,2.2vmin,17px);border:2px solid #d7e8eb;border-radius:clamp(10px,2vmin,15px);background:#fffdf7}.action-guide h3{margin:0 0 4px;color:#1f6f98;font:900 clamp(1.05rem,2.5vmin,1.3rem) "Barlow Condensed";text-transform:uppercase}.action-guide p{margin:0;color:#607782;font-size:clamp(.74rem,1.65vmin,.86rem);font-weight:700;line-height:1.45}.odds-intro{margin-bottom:clamp(10px,2vmin,15px)}.odds-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,1.35vmin,10px)}.odds-card{--bag-color: #789;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(5px,1.15vmin,9px);min-width:0;padding:clamp(7px,1.45vmin,11px);border:2px solid color-mix(in srgb,var(--bag-color),#173b55 20%);border-radius:clamp(9px,1.8vmin,13px);background:color-mix(in srgb,var(--bag-color),white 82%)}.odds-card.orange{--bag-color: #e97124}.odds-card.yellow{--bag-color: #f7be21}.odds-card.blue{--bag-color: #58acd0}.odds-card.purple{--bag-color: #8e3899}.odds-card.pink{--bag-color: #dc7fa0}.odds-card.green{--bag-color: #5e9d7a}.bag-swatch{display:grid;place-items:center;width:clamp(25px,4.5vmin,34px);height:clamp(25px,4.5vmin,34px);border-radius:7px;background:var(--bag-color);color:#fff;font-size:clamp(.85rem,2.2vmin,1.1rem);box-shadow:inset 0 -3px #173b5529}.odds-card div{min-width:0}.odds-card strong,.odds-card small{display:block}.odds-card strong{color:#173b55;font-size:clamp(.68rem,1.5vmin,.8rem);white-space:nowrap}.odds-card small{margin-top:1px;color:#607782;font-size:clamp(.52rem,1.15vmin,.64rem);font-weight:800;white-space:nowrap}.odds-values{display:inline-flex;align-items:baseline;gap:3px;text-align:right;white-space:nowrap}.odds-values b{color:var(--bag-color);font:900 clamp(1.7rem,4.5vmin,2.35rem) "Barlow Condensed";line-height:.82;text-shadow:0 1px 0 white}.odds-values em{color:var(--bag-color);font:900 clamp(.8rem,2vmin,1rem) "Barlow Condensed";font-style:normal;text-transform:uppercase}.odds-legend{margin:clamp(9px,1.7vmin,13px) 0 0;color:#607782;font-size:clamp(.62rem,1.35vmin,.72rem);text-align:center}.odds-legend span{padding-inline:5px;color:#9aadb3}.guide-footer{display:grid;grid-template-columns:minmax(82px,1fr) auto minmax(82px,1fr);align-items:center;gap:clamp(8px,1.8vmin,14px);padding-top:clamp(12px,2.4vmin,18px);border-top:2px solid #e1eaeb}.guide-nav{min-height:42px;padding:8px clamp(10px,2vmin,15px);border:0;border-radius:10px;background:#e1edf0;color:#315a70;font-size:clamp(.68rem,1.55vmin,.78rem);font-weight:900;cursor:pointer}.guide-nav.next{background:#2697bd;color:#fff;box-shadow:0 4px #176d91}.guide-nav.done{background:#39a74a;box-shadow:0 4px #237532}.guide-nav:disabled{opacity:.4;cursor:default;box-shadow:none}.page-status{display:grid;grid-template-columns:repeat(3,7px);justify-content:center;gap:5px;min-width:60px}.page-status>span{width:7px;height:7px;border-radius:50%;background:#c4d3d6}.page-status>span.active{background:#2697bd}.page-status small{grid-column:1 / -1;color:#718790;font-size:.6rem;font-weight:900;text-align:center}.close{position:absolute;right:clamp(9px,2vmin,16px);top:clamp(7px,1.6vmin,13px);width:clamp(40px,5.5vmin,44px);height:clamp(40px,5.5vmin,44px);border:0;background:transparent;color:#32566e;font-size:clamp(1.7rem,4vmin,2rem);cursor:pointer}.score-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,1.9vmin,15px);margin:clamp(15px,3.1vmin,25px) 0}.score-row>div{background:#e7f3f5;border-radius:clamp(11px,2.25vmin,18px);padding:clamp(9px,1.9vmin,15px)}.score-row b,.score-row span{display:block;font-size:clamp(.62rem,1.4vmin,.72rem)}.score-row strong{display:block;font:900 clamp(2.4rem,6vmin,3rem) "Barlow Condensed";color:#279547}.revealed{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(2px,.5vmin,4px);margin-top:clamp(6px,1.25vmin,10px)}.revealed img{width:100%;border-radius:5px}.results{width:min(47.5rem,100%)}.reveal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:clamp(10px,2.5vmin,20px);background:#082f4aa8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.reveal-card{position:relative;width:min(21.25rem,92vw);max-height:calc(100dvh - clamp(20px,5vmin,40px));overflow:auto;padding:clamp(18px,3vmin,24px) clamp(20px,3.5vmin,28px) clamp(19px,3.25vmin,26px);border:clamp(3px,.65vmin,5px) solid white;border-radius:clamp(17px,3.1vmin,25px);background:#fffaf0;box-shadow:0 9px #9eb7bf,0 25px 70px #06283ebb;text-align:center;animation:reveal-pop .3s ease-out both}.reveal-close{position:absolute;top:clamp(5px,1vmin,8px);right:clamp(6px,1.25vmin,10px);width:clamp(38px,5.5vmin,44px);height:clamp(38px,5.5vmin,44px);padding:0;border:0;border-radius:50%;background:transparent;color:#32566e;font-size:clamp(1.7rem,3.75vmin,1.875rem);line-height:1;cursor:pointer}.reveal-close:hover,.reveal-close:focus-visible{background:#e5f2f5;outline:3px solid #77b7cf;outline-offset:1px}.reveal-card small{color:#398d4a;font-size:clamp(.68rem,1.6vmin,.8rem);font-weight:900;letter-spacing:clamp(.8px,.18vmin,1.4px)}.reveal-card h2{margin:clamp(9px,1.9vmin,15px) 0 clamp(2px,.5vmin,4px);font:900 clamp(1.7rem,4vmin,2rem) "Barlow Condensed"}.reveal-card p{margin:0;color:#657984;font-size:clamp(.72rem,1.65vmin,.82rem);font-weight:700}.reveal-flip{width:clamp(132px,min(55vw,27dvh),190px);aspect-ratio:1;margin:clamp(10px,2.1vmin,17px) auto 0;perspective:800px}.reveal-flip img{width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:0 9px 20px #173d5266;animation:card-flip .65s ease-out both}.reveal-progress{width:clamp(132px,min(55vw,27dvh),190px);height:clamp(6px,1vmin,8px);margin:clamp(8px,1.5vmin,12px) auto 0;overflow:hidden;border-radius:999px;background:#d8e5e8;box-shadow:inset 0 1px 2px #173d5233}.reveal-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f2b329,#e58c20);transform-origin:left;animation:reveal-countdown 2s linear forwards}@keyframes reveal-pop{0%{opacity:0;transform:scale(.82)}}@keyframes card-flip{0%{transform:rotateY(90deg) scale(.85)}to{transform:rotateY(0) scale(1)}}@keyframes reveal-countdown{to{transform:scaleX(0)}}@media(max-width:760px){:root{--page-inline: clamp(10px, 3.2vw, 18px);--header-height: clamp(58px, 10dvh, 72px)}header{padding-block:clamp(5px,1.1dvh,8px)}.brand{padding:clamp(4px,1vw,5px) clamp(7px,2vw,8px)}.account span{display:none}.account button{border-left:0;padding-inline:5px}.sign-in-panel{margin-inline:auto}.landing{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);padding:clamp(12px,3dvh,24px) clamp(16px,6vw,24px) clamp(6px,1.5dvh,12px);text-align:center}.hero-copy{position:relative;z-index:4;margin-inline:auto}.hero-copy p{font-size:clamp(.875rem,3.8vw,.98rem);margin-inline:auto}.hero-art{width:100%;height:100%;min-height:0;margin-top:clamp(6px,1.5dvh,12px)}h1{font-size:clamp(3rem,min(16vw,11dvh),4.25rem);margin:clamp(19px,4dvh,27px) 0}.hero-card{width:clamp(112px,min(40vw,23dvh),165px)}.card-one{left:35%}.card-two{left:4%}.card-three{right:0}.durian{font-size:clamp(4.5rem,min(23vw,14dvh),6rem)}.game-shell{padding:clamp(3px,.7dvh,5px) clamp(5px,2vw,8px) clamp(8px,2.5dvh,18px)}main.playing .grid-wrap{width:100%;height:auto;max-height:none;aspect-ratio:auto}.grid-wrap{padding:clamp(7px,2.5vw,10px) clamp(21px,7vw,28px)}.rotation-controls{font-size:clamp(.56rem,2.4vw,.68rem)}.rotation-controls button{min-height:clamp(28px,4.5cqh,32px)}.badge-card{top:22.22%}.secured-card{top:calc(17.78% - (min(var(--pile-index),5)*clamp(2px,.8vw,4px)));left:3.85%;width:92.3%}.player-area{--badge-size: clamp(64px, min(22vw, 16dvh), 104px);margin-top:clamp(7px,2.5dvh,20px);align-items:flex-start}.hand-panel{--hand-top-space: clamp(6px, 2dvh, 14px);min-height:clamp(125px,24dvh,151px);padding:clamp(7px,1.6dvh,10px) clamp(3px,1.3vw,5px) 0}.hand-heading{padding:0 clamp(3px,1.3vw,5px)}.hand{min-height:clamp(96px,18.4dvh,116px);overflow:visible;padding:var(--hand-top-space) clamp(8px,3vw,12px) clamp(17px,4dvh,25px)}.hand-card{width:clamp(64px,min(22vw,11.3dvh),90px);flex-basis:clamp(64px,min(22vw,11.3dvh),90px);margin:0 clamp(-30px,-7vw,-20px);transform-origin:50% 180%}.hand-card:hover,.hand-card.selected{transform:translateY(calc(var(--fan-drop) - 13px)) rotate(var(--fan-angle)) scale(1.035)}.pass-card,.rules,.results{padding-inline:clamp(16px,5vw,24px)}.guide-overlay .rules{height:auto;padding-inline:clamp(16px,5vw,24px)}}@media(max-width:480px){.duel-request{grid-template-columns:40px minmax(0,1fr)}.duel-request button{width:100%}.odds-grid{grid-template-columns:1fr;gap:4px}.odds-card{min-height:38px;padding:4px 7px}.bag-swatch{width:25px;height:25px}.odds-card small{margin:1px 0 0}.odds-values{display:flex;align-items:baseline;gap:7px}.odds-values em{margin-top:0}.odds-legend{margin-top:6px}}@media(max-width:760px)and (max-height:700px)and (orientation:portrait){h1{margin-block:clamp(10px,2dvh,14px)}.hero-copy p{margin-block:clamp(8px,1.8dvh,12px);line-height:1.35}.hero-card{width:clamp(102px,min(38vw,22dvh),145px)}.card-one{top:14%}.card-two{top:18%}.card-three{top:24%}.stamp{top:1%}.durian{top:43%}}@media(max-height:520px)and (orientation:portrait){.hero-art{display:none}.landing{grid-template-rows:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.grid-card.being-pushed{transition-duration:.01ms}.game-grid.intro-grid,.hand-card.intro-deal,.scanner-sequence,.scanner-label,.scanner-beam{animation:none}.turn-banner{animation:none;transform:translate(-50%)}}@media(min-width:761px)and (max-height:850px){main.playing .player-area{--badge-size: clamp(104px, 16dvh, 136px)}main.playing .hand-panel{padding-top:10px}main.playing .hand{min-height:0;height:calc(100% - 24px);padding-top:4px}main.playing .hand-card{width:clamp(76px,11.5dvh,102px);flex-basis:clamp(76px,11.5dvh,102px)}}@media(orientation:landscape)and (max-height:500px){:root{--header-height: clamp(52px, 16dvh, 64px)}.landing{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-rows:minmax(0,1fr);gap:clamp(8px,2vw,24px);padding:clamp(5px,2dvh,10px) clamp(14px,4vw,36px);text-align:left}.hero-copy{margin-inline:0}.eyebrow{padding:4px 7px;font-size:clamp(.56rem,2.6dvh,.7rem)}h1{margin-block:clamp(7px,2.5dvh,11px);font-size:clamp(2.5rem,14dvh,4rem)}.hero-copy p{margin-block:clamp(6px,2dvh,9px);font-size:clamp(.7rem,3.4dvh,.9rem);line-height:1.3}.primary,.text-button{min-height:38px;padding-block:clamp(7px,2.5dvh,10px);font-size:clamp(.68rem,3dvh,.82rem)}.text-button{padding-inline:clamp(8px,2vw,14px)}.hero-art{height:100%;margin-top:0}.hero-card{width:clamp(96px,min(25vw,42dvh),180px)}.card-one{left:31%;top:14%}.card-two{left:1%;top:19%}.card-three{right:0;top:25%}.stamp{right:2%;top:0}.durian{left:36%;top:43%;font-size:clamp(4rem,min(16vw,28dvh),7rem)}main.playing .game-shell{grid-template-columns:minmax(250px,.9fr) minmax(0,1.45fr);grid-template-rows:minmax(0,1fr);gap:clamp(8px,1.5vw,16px);align-items:center;padding:clamp(3px,1dvh,5px) clamp(8px,3vw,24px) clamp(6px,2dvh,10px)}main.playing .board-area{width:100%;height:100%}main.playing .grid-wrap{width:auto;height:min(100cqh,100cqw * 584 / 660);max-height:100%;aspect-ratio:660 / 584}main.playing .player-area{--badge-size: clamp(72px, min(13vw, 28dvh), 112px);width:100%;height:clamp(126px,47dvh,176px);margin-top:0}main.playing .hand-panel{height:100%}main.playing .hand-card{width:clamp(60px,min(10vw,25dvh),94px);flex-basis:clamp(60px,min(10vw,25dvh),94px)}.pass-card{padding:clamp(12px,4vmin,18px) clamp(16px,5vmin,24px)}.pass-card .mini-logo{width:clamp(34px,12vmin,44px);height:clamp(34px,12vmin,44px);margin-bottom:clamp(5px,2vmin,8px);border-width:2px;border-radius:clamp(8px,3vmin,11px);font-size:clamp(1.1rem,6vmin,1.4rem);box-shadow:0 3px #aac1c8}.pass-card small{font-size:clamp(.62rem,3vmin,.72rem)}.pass-card h2{margin-block:clamp(4px,1.5vmin,7px);font-size:clamp(1.4rem,8vmin,1.8rem)}.pass-card p{margin:0;font-size:clamp(.7rem,3.4vmin,.82rem);line-height:1.3}.pass-card .primary{min-height:38px;margin-top:clamp(8px,3vmin,12px);padding-block:clamp(7px,2.5vmin,10px)}}@media(max-width:760px)and (max-height:630px){:root{--header-height: clamp(52px, 9.5dvh, 60px)}main.playing header{padding-block:4px}main.playing .player-area{height:clamp(118px,22.2dvh,140px);margin-top:clamp(4px,1.3dvh,8px)}main.playing .hand-panel{--hand-top-space: clamp(4px, 1.3dvh, 8px);min-height:0}main.playing .hand-card{width:clamp(56px,min(20vw,10.5dvh),72px);flex-basis:clamp(56px,min(20vw,10.5dvh),72px);margin-inline:clamp(-14px,-1.8vw,-10px)}}@media(max-width:390px){.eyebrow{letter-spacing:.06em}.primary span{padding-left:8px}.score-row{grid-template-columns:1fr}}
