:root{--room: #221812;--room-2: #2e2118;--line-dark: #4a382a;--cream: #f3e7d3;--cream-muted: #c9b49b;--paper: #f7efdf;--paper-2: #efe3cb;--ink: #33241b;--ink-muted: #8a7663;--line-paper: rgba(51, 36, 27, .16);--amber: #e8a63f;--amber-hi: #d89430;--amber-deep: #b47212;--eunice: #f2a5c0;--eunice-ink: #a62753;--austin: #93b8dc;--austin-ink: #2e5a80;--plum: #3e2436;--plum-hi: #4c2c42;--err: #e8907e;--err-ink: #a63527;--shadow-card: 0 10px 30px rgba(10, 5, 2, .5);--shadow-soft: 0 4px 16px rgba(10, 5, 2, .35)}*{box-sizing:border-box}body{margin:0;background:var(--room);color:var(--cream);font-family:Schibsted Grotesk,system-ui,sans-serif;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px 480px at 50% 230px,rgba(58,40,24,.6),transparent 70%);pointer-events:none}#root{position:relative}.display{font-family:"Young Serif",Georgia,serif;font-weight:400;letter-spacing:0}.mono{font-family:Spline Sans Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.paper-card{position:relative;background:var(--paper);color:var(--ink);border-radius:14px;box-shadow:var(--shadow-card)}.card-index{position:absolute;top:12px;left:14px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:12px;font-weight:700;line-height:1.15;letter-spacing:.06em;text-align:center;white-space:pre-line}.card-index.br{top:auto;left:auto;bottom:12px;right:14px;transform:rotate(180deg)}.card-index.br .pip{display:inline-block;transform:rotate(180deg)}.card-back{background-color:var(--plum);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg transform='translate(8,8) scale(0.5)' fill='%23F2A5C0' opacity='0.5'%3E%3Cpath d='M12 21s-7-4.6-9.5-8.6C.5 8.9 2.6 5 6.4 5c2 0 3.7 1.1 4.6 2.7C11.9 6.1 13.6 5 15.6 5c3.8 0 5.9 3.9 3.9 7.4C17 16.4 12 21 12 21z'/%3E%3C/g%3E%3Cg transform='translate(36,36) scale(0.5)' fill='%2393B8DC' opacity='0.5'%3E%3Cpath d='M12 2C9 7 4 9.5 4 13.5 4 16 6 18 8.5 18c1 0 1.9-.3 2.6-.9-.3 1.6-1 2.9-2.1 3.9h6c-1.1-1-1.8-2.3-2.1-3.9.7.6 1.6.9 2.6.9C18 18 20 16 20 13.5 20 9.5 15 7 12 2z'/%3E%3C/g%3E%3C/svg%3E");background-size:56px 56px;border:1.5px solid rgba(247,239,223,.75);border-radius:14px;box-shadow:inset 0 0 0 4px var(--plum),inset 0 0 0 5.5px #f7efdf73,var(--shadow-card)}.deck{position:relative;width:120px;height:168px}.deck:before,.deck:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;background:var(--paper-2);box-shadow:var(--shadow-soft)}.deck:before{transform:translate(4px,6px) rotate(1.6deg)}.deck:after{transform:translate(-3px,3px) rotate(-1.2deg)}.deck .deck-top{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}@keyframes riffle{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-5px) rotate(-1.4deg)}55%{transform:translateY(-1px) rotate(.9deg)}80%{transform:translateY(-4px) rotate(-.7deg)}}.deck.riffling .deck-top{animation:riffle .5s ease-in-out infinite}@keyframes dealface{0%{transform:perspective(1100px) rotateY(-92deg) translateY(8px)}62%{transform:perspective(1100px) rotateY(5deg) rotate(0)}80%{transform:perspective(1100px) rotateY(0) rotate(1.6deg)}to{transform:perspective(1100px) rotateY(0) rotate(-1.2deg)}}.dealt{animation:dealface .6s cubic-bezier(.2,.7,.3,1) both}@keyframes rise{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}.settle{animation:rise .24s cubic-bezier(.215,.61,.355,1)}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}.breathing{animation:breathe 3s ease-in-out infinite}@keyframes lampglow{0%,to{box-shadow:var(--shadow-card)}50%{box-shadow:0 10px 34px #e8a63f47,var(--shadow-card)}}.glowing{animation:lampglow 2s ease-in-out 2}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.confetti i{position:absolute;top:40%;left:50%;width:9px;height:9px;border-radius:2px;opacity:0;animation:confetti-pop .7s ease-out forwards}.confetti i:nth-child(odd){background:var(--eunice)}.confetti i:nth-child(2n){background:var(--austin)}@keyframes confetti-pop{0%{opacity:1;transform:translate(-50%,-50%) rotate(0)}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--rot))}}.flip{perspective:1100px;background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.flip-inner{position:relative;transition:transform .45s cubic-bezier(.2,.7,.3,1);transform-style:preserve-3d}.flip.face-up .flip-inner{transform:rotateY(180deg)}.flip-face{backface-visibility:hidden;-webkit-backface-visibility:hidden}.flip-face.front{position:absolute;top:0;right:0;bottom:0;left:0}.flip-face.back{transform:rotateY(180deg)}.btn{border-radius:999px;border:1px solid transparent;cursor:pointer;font-weight:700;font-family:inherit;font-size:14px;padding:11px 22px;transition:transform .12s ease,background-color .15s ease,opacity .15s ease,border-color .15s ease}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--amber);color:var(--ink)}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-paper)}@media (hover: hover) and (pointer: fine){.btn.primary:hover:not(:disabled){background:var(--amber-hi)}.btn.ghost:hover:not(:disabled){background:#33241b0f}}.chip{padding:7px 15px;border-radius:999px;border:1px solid var(--line-dark);background:transparent;color:var(--cream);font-size:13.5px;font-weight:500;cursor:pointer;font-family:inherit;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.chip.active{background:var(--amber);border-color:var(--amber);color:var(--ink);font-weight:700}.linkish{background:none;border:none;color:var(--cream-muted);font-size:14px;cursor:pointer;font-family:inherit;font-weight:600;padding:0}.input{background:var(--room-2);border:1px solid var(--line-dark);border-radius:12px;padding:11px 16px;color:var(--cream);font-size:14px;outline:none;font-family:inherit}.input::placeholder{color:#8f7a63}.btn:focus-visible,.chip:focus-visible,.linkish:focus-visible,.input:focus-visible,.flip:focus-visible{outline:2px solid var(--amber-deep);outline-offset:2px}@media (prefers-reduced-motion: reduce){.dealt,.settle,.glowing{animation:none}.dealt{transform:none}.deck.riffling .deck-top,.breathing{animation:none}.confetti{display:none}.flip-inner,.btn,.chip{transition:none}}
