.bingo-page[data-v-0683df0f]{--cream:#2c2c2c;--aged:#333;--ink:#eee;--ink-light:#ccc;--ochre:#fc0;--rust:#a63d20;--sage:#5a7a5c;--gold:#d4a017;--shadow:#0006;min-height:80vh;color:var(--ink);flex-direction:column;align-items:center;padding:40px 20px;font-family:Montserrat,sans-serif;display:flex}.paper[data-v-0683df0f]{background-color:var(--cream);box-shadow:0 4px 30px var(--shadow), inset 0 0 80px #0003;background-image:repeating-linear-gradient(0deg,#0000,#0000 28px,#ffffff08 28px 29px),url("data:image/svg+xml,%3Csvg width='300' height='300' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");border:1px solid #ffcc001a;border-radius:12px;width:100%;max-width:1200px}.bingo-card[data-v-0683df0f]{padding:2.5rem 1.5rem;position:relative}.bingo-card[data-v-0683df0f]:before,.bingo-card[data-v-0683df0f]:after{content:"✦";color:var(--ochre);opacity:.4;font-size:1.2rem;position:absolute}.bingo-card[data-v-0683df0f]:before{top:1rem;left:1rem}.bingo-card[data-v-0683df0f]:after{bottom:1rem;right:1rem}header[data-v-0683df0f]{text-align:center;margin-bottom:2rem}.header-ornament[data-v-0683df0f]{color:var(--ochre);letter-spacing:.3em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:300;display:block}.h1[data-v-0683df0f]{color:var(--ink);text-transform:uppercase;font-size:2.8rem;font-weight:700;line-height:1.1}.h1 span[data-v-0683df0f]{color:var(--ochre);font-style:italic;font-weight:300}.subtitle[data-v-0683df0f]{color:var(--ink-light);opacity:.8;margin-top:.8rem;font-size:.9rem;font-style:italic}.divider[data-v-0683df0f]{align-items:center;gap:.8rem;margin:1.5rem 0;display:flex}.divider[data-v-0683df0f]:before,.divider[data-v-0683df0f]:after{content:"";background:linear-gradient(to right, transparent, var(--ochre), transparent);opacity:.2;flex:1;height:1px}.divider-sym[data-v-0683df0f]{color:var(--ochre);opacity:.6;font-size:1.2rem}.bingo-letters[data-v-0683df0f]{grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:8px;display:grid}.bingo-letter[data-v-0683df0f]{text-align:center;color:var(--ochre);letter-spacing:.1em;text-shadow:0 0 10px #fc03;padding:.3rem 0;font-size:1.8rem;font-weight:900}.grid[data-v-0683df0f]{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.cell[data-v-0683df0f]{aspect-ratio:1;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff08;border:1px solid #ffffff1a;border-radius:4px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden}.cell[data-v-0683df0f]:hover{border-color:var(--ochre);z-index:2;background:#ffcc0014;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.cell-text[data-v-0683df0f]{color:var(--ink-light);font-size:clamp(.6rem,2vw,.8rem);line-height:1.3;transition:opacity .2s}@media (width<=768px){.subtitle[data-v-0683df0f]{font-size:.7rem}.cell-text[data-v-0683df0f]{font-size:clamp(.4rem,2vw,.8rem);line-height:1.1}}.cell.marked[data-v-0683df0f]{border-color:var(--ochre);background:#1a1a1a}.cell.marked .cell-text[data-v-0683df0f]{opacity:.1}.cell.marked[data-v-0683df0f]:after{content:"✕";color:var(--ochre);text-shadow:0 0 15px #fc06;font-size:2.2rem;font-weight:700;animation:.3s cubic-bezier(.34,1.56,.64,1) stampIn-0683df0f;position:absolute}.cell.free[data-v-0683df0f]{background:linear-gradient(135deg, var(--gold), var(--ochre));border-color:var(--ochre);cursor:default}.cell.free[data-v-0683df0f]:hover{transform:none}.cell.free .cell-text[data-v-0683df0f]{color:#1a1a1a;text-transform:uppercase;font-size:.7rem;font-weight:900}.cell.win-cell[data-v-0683df0f]{border-color:var(--ochre);background:#ffcc0026;box-shadow:inset 0 0 15px #d4a01733}@keyframes stampIn-0683df0f{0%{opacity:0;transform:scale(3)rotate(-30deg)}to{opacity:1;transform:scale(1)rotate(-5deg)}}.win-banner[data-v-0683df0f]{text-align:center;border:1px solid var(--ochre);background:linear-gradient(135deg,#d4a0171a,#a63d200d);border-radius:8px;margin-top:1.5rem;padding:1.5rem;animation:.5s fadeSlide-0683df0f}.win-banner h2[data-v-0683df0f]{color:var(--ochre);margin-bottom:.5rem;font-size:1.8rem;font-weight:700}.win-banner p[data-v-0683df0f]{color:var(--ink-light);font-size:1rem;font-style:italic}@keyframes fadeSlide-0683df0f{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.controls[data-v-0683df0f]{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:2rem;display:flex}button[data-v-0683df0f]{cursor:pointer;letter-spacing:.02em;border:1px solid #0000;border-radius:6px;padding:.7rem 1.4rem;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:600;transition:all .2s}.btn-primary[data-v-0683df0f]{background:var(--ochre);color:#1a1a1a}.btn-primary[data-v-0683df0f]:hover{background:#e6b800;transform:translateY(-2px);box-shadow:0 4px 12px #ffcc004d}.btn-secondary[data-v-0683df0f]{color:var(--ink);background:0 0;border:1px solid #fff3}.btn-secondary[data-v-0683df0f]:hover{border-color:var(--ink);background:#ffffff0d}.btn-share[data-v-0683df0f]{color:var(--ink);background:#333;border:1px solid #ffffff1a}.btn-share[data-v-0683df0f]:hover{border-color:var(--ochre);background:#444}.toast[data-v-0683df0f]{color:var(--ochre);border:1px solid var(--ochre);opacity:0;z-index:1000;background:#1a1a1a;border-radius:50px;padding:.8rem 1.6rem;font-weight:600;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)translateY(100px);box-shadow:0 8px 24px #00000080}.toast.show[data-v-0683df0f]{opacity:1;transform:translate(-50%)translateY(0)}.footer-note[data-v-0683df0f]{text-align:center;color:var(--muted);opacity:.6;margin-top:1.5rem;font-size:.75rem;font-style:italic}@media (width<=600px){.bingo-card[data-v-0683df0f]{padding:1.5rem 1rem}.h1[data-v-0683df0f]{font-size:1.6rem}.bingo-letter[data-v-0683df0f]{font-size:1.4rem}.grid[data-v-0683df0f]{gap:4px}.cell[data-v-0683df0f]{padding:4px}}
