:root{--ink: #16101F;--cream: #FFF4D6;--paper: #FFFDF6;--yellow: #FFC21A;--red: #E8322B;--green: #1FA35B;--blue: #1E7FE0;--pink: #FF5FA2;--cyan: #2CC4E0;--sand: #F6D9A0;--teal: #0B6E6E;--teal2: #0E7D7C;--night: #2A0F3D;--lilac: #F6D9FF;--you: #2CC4E0;--them: #FF5FA2;--serif: "Rozha One", Georgia, serif;--sans: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--r: 16px;--bw: 3px;--sh: 0 5px 0 var(--ink);color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;background:var(--night);color:var(--ink);font:500 15px/1.45 var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}input,textarea{font:inherit;color:var(--ink)}a{color:inherit}:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.frame{position:relative;min-height:100%;max-width:520px;margin:0 auto;background:var(--teal);display:flex;flex-direction:column}@media(min-width:600px){body{padding:18px 0}.frame{min-height:calc(100% - 36px);border:4px solid var(--yellow);border-radius:34px;box-shadow:0 0 0 4px var(--ink),0 30px 60px #00000073;overflow:hidden}}.bunting{height:34px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='34'%3E%3Cpath d='M0 2h150' stroke='%2316101F' stroke-width='2'/%3E%3Cg stroke='%2316101F' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M2 3l13 26 13-26z' fill='%23E8322B'/%3E%3Cpath d='M32 3l13 26 13-26z' fill='%23FFC21A'/%3E%3Cpath d='M62 3l13 26 13-26z' fill='%23FF5FA2'/%3E%3Cpath d='M92 3l13 26 13-26z' fill='%231FA35B'/%3E%3Cpath d='M122 3l13 26 13-26z' fill='%232CC4E0'/%3E%3C/g%3E%3C/svg%3E") repeat-x 0 0}.screen{flex:1;display:flex;flex-direction:column;padding:6px 16px 22px;gap:16px}.scroll{flex:1;overflow-y:auto}.withtabs{padding-bottom:96px}.top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:56px}.ribbon{position:relative;display:inline-flex;align-items:center;height:46px;padding:0 26px;background:var(--red);color:var(--paper);font:400 23px/1 var(--serif);letter-spacing:.3px;white-space:nowrap;filter:drop-shadow(0 4px 0 var(--ink));clip-path:polygon(0 0,100% 0,calc(100% - 12px) 50%,100% 100%,0 100%,12px 50%)}.ribbon.sm{height:40px;font-size:20px;padding:0 22px}.top .ribbon{max-width:calc(100% - 120px);overflow:hidden;text-overflow:ellipsis}.iconbtn{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:14px;background:var(--yellow);border:var(--bw) solid var(--ink);box-shadow:0 4px 0 var(--ink)}.iconbtn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}.iconbtn svg{width:22px;height:22px}.card{background:var(--cream);border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh)}.card.yellow{background:var(--yellow)}.card.pink{background:var(--pink)}.card.white{background:var(--paper)}.card.pad{padding:16px}.h2{font:400 22px/1.15 var(--serif);color:var(--paper);margin:4px 2px 0}.h1{font:400 30px/1.1 var(--serif);margin:0}.muted{color:#5a5266}.on-teal{color:var(--paper)}.chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:999px;background:var(--cream);border:var(--bw) solid var(--ink);box-shadow:0 3px 0 var(--ink);font-weight:700;font-size:13.5px;white-space:nowrap}.chip.on{background:var(--pink);color:var(--paper)}.chip.tag{height:26px;padding:0 10px;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;box-shadow:none;border-width:2px}.chips{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:14px;background:var(--red);color:var(--paper);border:var(--bw) solid var(--ink);box-shadow:0 5px 0 var(--ink);font-weight:800;font-size:16px;transition:transform .06s}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}.btn:disabled{opacity:.55;cursor:default}.btn.block{width:100%}.btn.yellow{background:var(--yellow);color:var(--ink)}.btn.green{background:var(--green)}.btn.cream{background:var(--cream);color:var(--ink)}.btn.blue{background:var(--blue)}.btn.white{background:var(--paper);color:var(--ink)}.btn.sm{min-height:40px;padding:0 14px;font-size:14px;border-radius:12px;box-shadow:0 4px 0 var(--ink)}.btn svg{width:20px;height:20px;flex:none}.linkbtn{text-decoration:underline;font-weight:700;padding:6px}.avatar{position:relative;display:inline-grid;place-items:center;flex:none}.avatar .petals{position:absolute;inset:0}.avatar b{position:relative;display:grid;place-items:center;border-radius:50%;border:var(--bw) solid var(--ink);color:var(--ink);font:400 1em/1 var(--serif)}.tabs{position:fixed;z-index:20;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:520px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--ink)}@media(min-width:600px){.tabs{bottom:22px;max-width:512px;border-radius:0 0 30px 30px}}.tab{display:grid;justify-items:center;gap:2px;padding:7px 0 6px;border-radius:14px;color:var(--paper);font-size:12px;font-weight:700;text-decoration:none;position:relative}.tab svg{width:22px;height:22px}.tab.active{background:var(--yellow);color:var(--ink)}.tab .dot{position:absolute;top:4px;right:calc(50% - 18px);width:10px;height:10px;border-radius:50%;background:var(--pink);border:2px solid var(--ink)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gcard{display:flex;flex-direction:column;border-radius:18px;border:var(--bw) solid var(--ink);background:var(--ink);overflow:hidden;box-shadow:var(--sh);text-align:left;text-decoration:none;color:var(--paper)}.gcard .art{position:relative;background:var(--accent, var(--yellow));padding:8px}.gcard .art .pic{aspect-ratio:368 / 228;border-radius:10px;border:var(--bw) solid var(--ink);overflow:hidden;background:var(--paper)}.gcard .art img{width:100%;height:100%;object-fit:cover;display:block}.gcard .meta{padding:10px 12px 12px}.gcard .name{font:400 16px/1.15 var(--serif)}.gcard .cat{font-size:12px;font-weight:700;color:var(--sand)}.gcard .badge{position:absolute;top:14px;left:14px;background:var(--pink);color:var(--paper);font-size:10px;font-weight:800;letter-spacing:1px;padding:2px 8px;border-radius:999px;border:2px solid var(--ink)}.gcard:active{transform:translateY(3px);box-shadow:0 2px 0 var(--ink)}.gcard.ad{background:var(--cream);color:var(--ink)}.adlabel{position:absolute;top:6px;right:8px;z-index:2;font-size:10px;font-weight:800;letter-spacing:1px;background:var(--paper);border:2px solid var(--ink);border-radius:999px;padding:0 7px;text-transform:uppercase}.ticket{position:relative;display:flex;align-items:center;gap:14px;padding:12px 14px 12px 12px;background:var(--cream);border:var(--bw) solid var(--ink);border-radius:var(--r);box-shadow:var(--sh)}.ticket:before,.ticket:after{content:"";position:absolute;left:82px;width:22px;height:22px;background:var(--teal);border:var(--bw) solid var(--ink);border-radius:50%}.ticket:before{top:-13px;clip-path:inset(50% 0 0 0)}.ticket:after{bottom:-13px;clip-path:inset(0 0 50% 0)}.ticket .stub{width:64px;height:64px;flex:none;border-radius:12px;background:var(--pink);border:var(--bw) solid var(--ink);display:grid;place-items:center;overflow:hidden}.ticket .stub img{width:140%}.kicker{font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.qbtn{display:grid;justify-items:center;gap:8px;text-decoration:none;color:var(--paper);font-weight:700;font-size:13px;text-align:center}.qbtn .ring{width:92px;height:92px;border-radius:50%;border:var(--bw) solid var(--ink);background:var(--accent);display:grid;place-items:center;box-shadow:0 4px 0 var(--ink)}.qbtn .ring span{width:70px;height:70px;border-radius:50%;border:var(--bw) solid var(--ink);background:var(--paper);overflow:hidden;display:grid;place-items:center}.qbtn .ring img{height:100%}.field{display:grid;gap:6px;font-weight:700;font-size:13px}.input{width:100%;height:50px;padding:0 14px;border-radius:12px;border:var(--bw) solid var(--ink);background:var(--paper);font-size:16px;font-weight:600}.input:focus{outline:none;box-shadow:0 0 0 4px var(--yellow)}.codeinput{text-transform:uppercase;letter-spacing:6px;text-align:center;font:400 26px/1 var(--serif)}.err{background:#ffe0dd;border:2px solid var(--red);color:#8a1410;border-radius:12px;padding:9px 12px;font-weight:700;font-size:13.5px}.or{display:flex;align-items:center;gap:10px;color:var(--paper);font-weight:700;font-size:13px}.or:before,.or:after{content:"";flex:1;height:2px;background:#fff4d659}.prow{display:flex;align-items:center;gap:10px;min-height:52px;color:var(--paper)}.prow .pname{font:400 19px/1.1 var(--serif);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pill{height:32px;padding:0 12px;border-radius:999px;background:var(--cream);color:var(--ink);border:var(--bw) solid var(--ink);font-weight:800;font-size:12.5px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.pill.turn{background:var(--yellow)}.pill.warn{background:var(--red);color:var(--paper)}.pill .score{font:400 16px/1 var(--serif)}.boardwrap{border-radius:20px;border:var(--bw) solid var(--ink);background:var(--yellow);padding:8px;box-shadow:var(--sh)}.boardwrap>.inner{border-radius:14px;border:var(--bw) solid var(--ink);background:var(--paper);overflow:hidden;position:relative;touch-action:manipulation}.reacts{display:flex;gap:8px;flex-wrap:wrap}.reacts .chip{height:32px;font-size:13px}.bubble{position:absolute;z-index:30;left:50%;transform:translate(-50%);top:74px;background:var(--paper);border:var(--bw) solid var(--ink);border-radius:14px;padding:6px 14px;font-weight:800;box-shadow:0 4px 0 var(--ink);animation:pop .25s ease-out;white-space:nowrap}@keyframes pop{0%{transform:translate(-50%,8px) scale(.8);opacity:0}}.status{color:var(--paper);font-weight:700;text-align:center;min-height:22px}.banner{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;background:var(--ink);color:var(--paper);font-weight:700;font-size:13.5px}.banner .spin{width:16px;height:16px;border:3px solid var(--yellow);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.overlay{position:fixed;inset:0;z-index:50;background:#16101fa8;display:grid;place-items:end center;animation:fade .2s}@media(min-width:600px){.overlay{place-items:center}}@keyframes fade{0%{opacity:0}}.sheet{width:100%;max-width:520px;background:var(--teal);border:var(--bw) solid var(--ink);border-bottom:0;border-radius:26px 26px 0 0;padding:0 16px calc(22px + env(safe-area-inset-bottom));max-height:92vh;overflow-y:auto;animation:up .25s ease-out}@media(min-width:600px){.sheet{border-radius:26px;border-bottom:var(--bw) solid var(--ink);max-width:460px}}@keyframes up{0%{transform:translateY(40px);opacity:.4}}.sheet .grab{width:54px;height:6px;border-radius:3px;background:var(--paper);opacity:.5;margin:10px auto 8px}.toast{position:fixed;z-index:60;left:50%;top:18px;transform:translate(-50%);max-width:min(92vw,460px);background:var(--paper);border:var(--bw) solid var(--ink);border-radius:14px;padding:10px 16px;font-weight:700;box-shadow:0 5px 0 var(--ink);animation:pop .25s}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-10px;width:9px;height:14px;border:1.5px solid var(--ink);animation:fall 2.4s linear forwards}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}.msgs{display:flex;flex-direction:column;gap:8px}.msg{max-width:78%;padding:8px 12px;border-radius:16px;border:2px solid var(--ink);font-weight:600;word-wrap:break-word;background:var(--cream);align-self:flex-start}.msg.me{align-self:flex-end;background:var(--yellow)}.msg time{display:block;font-size:10.5px;opacity:.6;margin-top:2px}.composer{display:flex;gap:10px;position:sticky;bottom:92px;padding-top:8px;background:var(--teal)}.prose{color:var(--paper)}.prose h1{font:400 32px/1.1 var(--serif);margin:6px 0 4px}.prose h2{font:400 21px/1.2 var(--serif);margin:22px 0 6px;color:var(--yellow)}.prose p,.prose li{color:#e9f4f2}.prose a{color:var(--yellow)}.footer{color:#fff4d6bf;font-size:12.5px;text-align:center;padding:8px 0 4px}.footer a{color:var(--paper);margin:0 6px}.hero{text-align:center;color:var(--paper);display:grid;gap:12px;justify-items:center;padding:8px 0 4px}.logo{font:400 46px/1 var(--serif);color:var(--paper);text-shadow:0 4px 0 var(--ink);letter-spacing:.5px}.logo span{color:var(--yellow)}.tagline{font-weight:700;color:var(--cream);max-width:22em}.ad-box{position:relative;border-radius:14px;border:2px dashed rgba(255,244,214,.4);min-height:100px;display:grid;place-items:center;overflow:hidden}a.btn,a.chip,a.iconbtn{text-decoration:none}.qbtn .ring img,.ticket .stub img{width:100%;height:100%;object-fit:cover}
