@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@500;600;700;800;900&family=Outfit:wght@500;700;800;900&display=swap');
:root{font:14px Nunito,system-ui,sans-serif;color:#fff;background:#050923;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:#050923}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffdf66;outline-offset:2px}[hidden]{display:none!important}.app{margin:auto;width:100%;max-width:480px;height:100dvh;min-height:420px;display:flex;flex-direction:column;overflow:hidden;position:relative;background:linear-gradient(#10216a33,#0c094c88),url('/assets/party-background.png') center/cover,#10256c;box-shadow:0 0 70px #25337255}.topbar{flex:0 0 60px;display:flex;align-items:center;gap:10px;padding:8px 12px;background:#060b40eb;border-bottom:1px solid #6454c3}.icon{border:1px solid #7979fc;border-radius:50%;background:linear-gradient(#233f97,#0d174f);width:34px;height:34px;font-size:23px;display:grid;place-items:center;flex-shrink:0}.brand{border:0;background:none;padding:0;line-height:.9;transform:rotate(-4deg);text-shadow:2px 2px #492207}.brand span{display:block;color:#ffcf3a;font:900 21px Outfit,sans-serif}.brand b{font-size:11px;letter-spacing:3px}.wallet{margin-left:auto;display:flex;align-items:center;gap:7px;border:1px solid #8680fe;border-radius:30px;background:#07123f;padding:4px 12px 4px 6px;min-width:80px}.wallet>span{font-size:28px;color:#ffd361;filter:drop-shadow(0 2px #bd6107)}.wallet b{font-size:17px;line-height:1}.wallet small{display:block;font-size:8px;letter-spacing:1px;margin-top:3px;color:#d1d6ff}main{flex:1;min-height:0}.screen{height:100%;display:flex;flex-direction:column;padding:15px 18px max(12px,env(safe-area-inset-bottom));gap:12px;overflow:hidden}.heroBrand{text-align:center;flex-shrink:1;min-height:0;position:relative;padding-top:12px}.crown{font-size:52px;color:#ffdd47;line-height:.75;filter:drop-shadow(0 3px #913c00);transform:rotate(-6deg)}.heroBrand h1{font:900 clamp(44px,13vw,68px)/.85 Outfit,sans-serif;letter-spacing:-2px;color:#ffcd33;text-shadow:0 3px #d97309,2px 0 #a94e06,-2px 0 #a94e06,0 6px 5px #0008;margin:8px 0 5px;transform:rotate(-4deg)}.heroBrand h1 span{display:block;color:white;font-size:.59em;letter-spacing:3px;text-shadow:0 3px #1e51ac,0 5px 4px #0009;margin-top:7px}.heroBrand>b{font-size:10px;letter-spacing:2px}.heroBrand p{font-style:italic;letter-spacing:1px;font-weight:900;font-size:17px;margin:9px 0}.heroBrand i{color:#ffdd60;padding:0 8px}.loginScreen{justify-content:space-evenly;gap:10px}.loginCard{background:linear-gradient(#fff,#eaf3ff);border:2px solid #fff;border-radius:25px;padding:19px 22px;color:#102454;text-align:center;box-shadow:0 8px 25px #0005}.loginCard h2{font:900 27px/1.1 Outfit,sans-serif;margin:0 0 7px}.loginCard p{font-size:12px;margin:7px 0}.gift{display:flex;align-items:center;justify-content:center;gap:12px;margin:15px auto;background:linear-gradient(130deg,#240969,#8c23d7);border:2px solid #ffc73f;border-radius:19px;padding:11px;color:#ffe467;box-shadow:0 4px 0 #3b2179}.gift>span{font-size:51px}.gift strong{font:900 54px/.9 Outfit,sans-serif;display:block;text-shadow:0 3px #c27800}.gift b{display:block;font-size:16px}.gift small{display:block;color:white;font-size:8px;letter-spacing:1px;margin-top:3px}.google{border:1px solid #b6c9eb;background:white;color:#102454;border-radius:13px;box-shadow:0 3px 0 #c7d4e9;width:100%;padding:13px 8px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:12px}.googleG{font:900 25px Arial;color:#4285f4}.trust{display:flex;justify-content:space-around;margin-top:14px;color:#1c3884}.trust>span{font-size:23px}.trust small{display:block;font-size:8px;font-weight:800}.note{font-size:10px;text-align:center;color:#e1e8ff;margin:0;line-height:1.6}.big{display:flex;align-items:center;justify-content:space-between;gap:13px;border:2px solid #d2ffff;border-radius:22px;padding:14px 19px;box-shadow:inset 0 3px 8px #ffffff77,inset 0 -5px 3px #0003,0 4px 0 #0007,0 0 16px #30ccff33;text-shadow:0 2px #0004;text-align:left;font-weight:900;font-size:19px;width:100%;flex-shrink:0}.big b{font:800 23px Outfit,sans-serif}.big small{display:block;font-size:11px;font-weight:700;margin-top:3px}.big>span:last-child{font-size:27px}.big>span:nth-child(2){flex:1}.green{background:linear-gradient(#10e76c,#009443)}.purple{background:linear-gradient(#a23cff,#5a08cc)}.orange{background:linear-gradient(#ffba19,#e66b00)}.blue{background:linear-gradient(#08bdff,#0755e4)}.homeScreen{justify-content:space-between}.compact{padding-top:3px}.compact .crown{font-size:37px}.compact h1{font-size:59px}.compact p{font-size:15px;margin:7px 0}.menu{display:grid;gap:12px}.menuIcon{font-size:29px;min-width:38px;text-align:center}.homeBottom{text-align:center;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center}.homeBottom p{font-size:11px;margin:7px}.balls{display:flex;align-items:center;justify-content:center;gap:10px}.balls span{display:grid;place-items:center;width:43px;height:43px;border:7px solid #1aabf7;border-radius:50%;font:900 20px Outfit,sans-serif;color:#11183b;background:radial-gradient(at 30% 20%,white,#dce0ee);box-shadow:2px 4px 7px #0006}.balls span:nth-child(2){width:65px;height:65px;border-color:#e73555;font-size:31px}.balls span:nth-child(3){border-color:#35ba60}.footer{display:flex;justify-content:space-between;gap:10px;margin-top:auto;flex-shrink:0;padding-top:2px}.small{border:1px solid #8087ee;border-radius:13px;padding:11px 15px;background:linear-gradient(#244db3,#0b2372);box-shadow:inset 0 2px 2px #ffffff33,0 3px 0 #0005;font-weight:900;font-size:12px}.gold{background:linear-gradient(#ffe27c,#d99710);color:#372504;border-color:#fff4b9}.heading{flex-shrink:0;text-align:center;padding:5px 0}.heading small{font-size:9px;letter-spacing:2px;color:#bddaff}.heading h2{font:800 30px Outfit,sans-serif;margin:6px 0}.panel{background:linear-gradient(145deg,#16144ef2,#080d34f5);border:1px solid #7162c6;border-radius:20px;padding:19px;box-shadow:0 5px 20px #0004}.panel h3{margin:0 0 12px;font:700 19px Outfit,sans-serif}.scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#665bb0 transparent}.steps{display:flex;justify-content:center;gap:7px;margin-top:12px}.steps span{padding:6px 11px;border:1px solid #6c66af;border-radius:20px;font-size:10px;background:#151546}.steps .active{background:#ffd451;color:#312000;border-color:#fff19a}.wizard{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.wizardBody{flex:1;min-height:0;overflow:auto}label{display:block;font-size:12px;font-weight:800;margin-bottom:14px}input,select,textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #776fb4;border-radius:10px;background:#0b103a;color:white;min-width:0;font-size:16px}input[readonly]{color:#b6c3e5}textarea{resize:vertical;min-height:75px}input::placeholder,textarea::placeholder{color:#919dc6}fieldset{border:1px solid #665eaa;border-radius:12px;margin:0 0 14px;padding:12px}legend{font-size:11px;font-weight:800;padding:0 5px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:11px}.checks label,.toggle{display:flex;align-items:center;gap:7px;margin:0;font-size:11px}.checks input,.toggle input{width:18px;height:18px;margin:0;accent-color:#ffcb38}.toggle{margin:15px 0 22px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.two select,.two input{font-size:13px}.hint{font-size:11px;line-height:1.75;color:#c2cbea}.summary{background:#060c2c;border:1px solid #403e7c;border-radius:12px;padding:15px;line-height:1.9;font-size:12px}.joinArt{text-align:center;font-size:75px;color:#d6c4ff;text-shadow:0 0 30px #a05aff;margin:auto 0}.gameLink{display:block;text-align:left;width:100%;padding:14px;background:#20265f;border:1px solid #6864af;border-radius:12px;margin-bottom:10px}.gameLink b{display:block;font-size:15px}.gameLink small{display:block;color:#bdc8ed;font-size:10px;margin-top:5px}.tokenSummary{font:800 27px Outfit,sans-serif;color:#ffdd70}.ledgerRow{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #5d609455;font-size:11px}.ledgerRow small{color:#a9b7d4}.ledgerRow b{color:#ffe08a}.roomStrip{display:flex;align-items:center;gap:10px;border:1px solid #5f4fb2;background:linear-gradient(110deg,#33148f,#0c1044);border-radius:17px;padding:10px 12px;flex-shrink:0}.roomStrip>div{flex:1;min-width:0}.roomStrip small{display:block;font-size:9px;color:#c5b9fb}.roomStrip b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.roomStrip>span{font-size:10px;color:#dbe5ff}.status{padding:5px 7px;border-radius:10px;background:#0004;font-size:8px!important;text-transform:uppercase}.gameScreen{padding:11px 12px max(6px,env(safe-area-inset-bottom));gap:10px;background:#050b31aa}.gamePanel{flex:1;min-height:0}.playPanel{display:flex;flex-direction:column;justify-content:space-evenly;gap:9px}.callArea{display:flex;align-items:center;justify-content:center;gap:24px;flex:1;max-height:230px;min-height:95px;text-align:center}.callArea small{font-size:8px;letter-spacing:1px;color:#ced9ff}.coin{width:clamp(92px,33vw,154px);aspect-ratio:1;border:9px double #b8780b;border-radius:50%;display:grid;place-items:center;color:#65320b;font:900 clamp(45px,17vw,76px) Outfit,sans-serif;background:radial-gradient(at 35% 20%,#fff7c5,#ffdf57 45%,#e89c0a);box-shadow:inset 0 0 0 3px #fff5b9,0 5px 0 #754407,0 0 35px #ffba3c66;text-shadow:0 2px #fff1a7;margin:9px auto}.callSide{max-width:47%;min-width:135px}.countdown{font:800 23px Outfit,sans-serif;color:#ffdc64;margin-bottom:10px;line-height:1.2}.countdown small{display:block;font:700 9px Nunito;margin-bottom:3px}.recent{display:flex;gap:5px;justify-content:center;margin-top:8px}.recent span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font:800 12px Outfit,sans-serif;border:2px solid #b9e9ff;background:linear-gradient(#0ab9fa,#0651b2);box-shadow:0 2px #0005}.recent span:nth-child(2){background:linear-gradient(#f0bb24,#bd7705);border-color:#ffeb95}.recent span:nth-child(3){background:linear-gradient(#f46287,#c12258);border-color:#ffb7d8}.recent span:nth-child(4){background:linear-gradient(#4ccc75,#0b8f48);border-color:#b9ffd5}.notice{border:1px solid #7761ca;background:#100b49d9;border-radius:10px;padding:9px 12px;font-size:10px;text-align:center;line-height:1.4;max-height:46px;overflow:auto;flex-shrink:0}.ticketCard{border:2px solid #17d7ff;border-radius:15px;overflow:hidden;background:#e6faff;box-shadow:0 0 14px #00baff44;flex-shrink:0}.ticketHeader{background:linear-gradient(#058bc1,#046b9c);padding:9px 11px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.ticketHeader span{font-size:8px;color:#d4fffc}.ticketGrid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:2px;padding:5px}.cell{aspect-ratio:1.02;display:grid;place-items:center;background:#fff;border:1px solid #b2d7ec;border-radius:3px;color:#14225a;font:800 clamp(14px,4vw,22px) Outfit,sans-serif;position:relative}.cell.blank{background:#cee9f5}.cell.marked{background:linear-gradient(#fff095,#ffc23d);border-color:#e1a424;box-shadow:inset 0 0 0 1px #fff8bc;color:#734507}.cell.marked:after{content:'✓';position:absolute;right:1px;bottom:-1px;font:800 9px Nunito;color:#87600c}.ticketFooter{display:flex;justify-content:space-between;padding:0 8px 6px;color:#2b6091;font-size:7px;gap:8px}.ticketFooter span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%}.prizeStrip{display:flex;gap:5px;overflow-x:auto;flex-shrink:0;scrollbar-width:none}.miniPrize{min-width:105px;flex:1;background:linear-gradient(#321659,#120e39);border:1px solid #8957ae;border-radius:11px;padding:9px 6px;display:flex;align-items:center;gap:6px;font-size:9px}.miniPrize>span{font-size:22px}.miniPrize.won{border-color:#ffe079;background:#584116}.miniPrize small{display:block;font-size:8px;color:#ffc948;margin-top:3px}.controls{display:flex;gap:8px;flex-shrink:0}.controls button{flex:1;min-width:0;border:1px solid #b5ffe4;border-radius:16px;background:linear-gradient(#20d96d,#008e49);padding:13px 9px;font-weight:900;font-size:16px;box-shadow:inset 0 2px 4px #ffffff66,0 3px #053727}.controls button:not(:first-child){background:linear-gradient(#5358b7,#272a70);border-color:#929be8;font-size:11px;flex:0 0 auto}.connection{font-size:8px;text-align:center;color:#b6c8e8;flex-shrink:0;min-height:10px}.connectionLost{color:#ffb88c}.tabs{display:flex;border:1px solid #3758a5;border-radius:16px;background:#060b37;overflow:hidden;flex-shrink:0}.tabs button{flex:1;border:0;background:none;color:#cbd5fc;font-size:23px;padding:7px 3px;min-height:48px}.tabs small{display:block;font:800 10px Nunito;margin-top:3px}.tabs button.active{color:white;background:linear-gradient(#173785,#071756);box-shadow:inset 0 -3px #17c5ff}.board{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.board span{aspect-ratio:1;display:grid;place-items:center;background:#222651;border-radius:5px;font-size:11px;color:#8494ba}.board .called{background:#ffd052;color:#382803;font-weight:900}.player{display:flex;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid #555185;font-size:12px}.player>span{font-size:9px;color:#b7c0e9}.shareActions{display:grid;gap:10px;margin:20px 0}.prize{display:flex;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #5d609455}.prizeIcon{font-size:30px;color:#c0b5e0}.prize.won .prizeIcon{color:#ffcf57}.prize b{font-size:13px}.prize small{display:block;color:#b6c5e5;font-size:10px;margin-top:4px}.tiePlayer{border:1px solid #42896a;background:#112d3f;padding:10px;border-radius:12px;margin:10px 0}.tiePlayer.out{background:#3b2537;border-color:#9e5471}.tiePlayer header{display:flex;justify-content:space-between;gap:10px;font-size:12px}.tiePlayer header span{font-size:10px}.tiePlayer .ticketGrid{margin-top:7px}.tiePlayer .cell{font-size:15px}.tieCoinLine{text-align:center;color:#ffdd67;font:800 26px Outfit,sans-serif}#demo{flex-shrink:0;text-align:center;background:#ffdc6a;color:#462d00;font-size:9px;line-height:20px;font-weight:900}#demoName{background:white;color:#17316a;padding:8px;margin-bottom:10px}#error{position:absolute;top:65px;left:12px;right:12px;z-index:20;display:flex;gap:12px;align-items:center;justify-content:space-between;background:#fff0e7;color:#8b2929;padding:13px;border:2px solid #f4a080;border-radius:13px;box-shadow:0 7px 20px #0008;font-size:12px}#error button{color:#8b2929;border:0;background:none;font-size:22px}.coinOverlay{position:fixed;inset:0;background:#060b38dc;backdrop-filter:blur(7px);display:grid;place-items:center;z-index:30;text-align:center;pointer-events:none}.coinOverlay p{font-size:12px;letter-spacing:2px}.coinOverlay .coin{width:230px;font-size:108px;border-width:13px}.animated{animation:glow 1s ease-in-out 2}@keyframes glow{50%{transform:scale(1.05);box-shadow:0 0 75px #ffdb69aa}}body.reduceMotion *{animation:none!important;transition:none!important}@media(max-height:750px){.screen{padding-top:10px;gap:9px}.heroBrand{padding-top:4px}.heroBrand .crown{font-size:34px}.heroBrand h1{font-size:48px}.heroBrand p{font-size:13px;margin:6px}.loginCard{padding:14px 19px}.loginCard h2{font-size:23px}.gift{margin:9px auto;padding:9px}.gift strong{font-size:43px}.gift>span{font-size:38px}.trust{margin-top:9px}.big{padding:11px 15px;font-size:17px;border-radius:17px}.big b{font-size:20px}.menu{gap:9px}.homeBottom p{margin:3px}.balls span{width:30px;height:30px;border-width:5px;font-size:14px}.balls span:nth-child(2){width:45px;height:45px;font-size:23px}.topbar{flex-basis:55px}.callArea{gap:13px;max-height:155px}.coin{width:110px;font-size:55px}.notice{padding:6px 9px}.miniPrize{padding:6px}.controls button{padding:10px 7px;font-size:14px}.tabs button{padding:5px 3px}.heading h2{font-size:25px}.panel{padding:15px}label{margin-bottom:11px}input,select,textarea{padding:9px}.steps{margin-top:8px}}@media(max-height:600px){.screen{gap:6px;padding-inline:12px}.topbar{flex-basis:48px}.heroBrand h1{font-size:37px}.heroBrand .crown{font-size:25px}.heroBrand p{display:none}.heroBrand>b{font-size:8px}.loginCard{padding:10px 17px;border-radius:17px}.loginCard h2{font-size:21px}.gift{margin:7px auto;padding:6px}.gift strong{font-size:33px}.gift b{font-size:12px}.gift>span{font-size:30px}.trust{display:none}.google{padding:9px}.menu{gap:7px}.big{padding:8px 13px}.big b{font-size:17px}.big small{font-size:9px}.balls{display:none}.homeBottom p{font-size:10px}.small{padding:9px 12px}.callArea{min-height:72px;max-height:105px;gap:15px}.coin{width:76px;font-size:40px;border-width:6px;margin:3px auto}.callArea>div>small{font-size:7px}.countdown{font-size:15px;margin-bottom:5px}.recent{margin-top:4px}.recent span{width:22px;height:22px;font-size:10px}.cell{aspect-ratio:1.35;font-size:14px}.ticketHeader{padding:6px 9px;font-size:10px}.miniPrize{min-width:95px;padding:5px}.miniPrize>span{font-size:17px}.controls button{padding:8px}.roomStrip{padding:7px 10px}.tabs button{font-size:18px}.tabs small{font-size:9px}.heading h2{font-size:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:355px){.callSide{min-width:115px}.recent span{width:21px;height:21px}.roomStrip{gap:5px}.brand span{font-size:18px}.miniPrize{min-width:90px}.big b{font-size:18px}}
