.bingo-board[data-v-638afe38]{display:grid;gap:1rem;grid-template-rows:auto 1fr;height:100%;padding:1rem}.column-headers[data-v-638afe38]{display:grid;gap:1rem;grid-template-columns:repeat(5,1fr);padding:0 .5rem;text-align:center}.header[data-v-638afe38]{color:rgb(var(--color-white));font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,3rem);font-weight:700}.number-grid[data-v-638afe38]{display:grid;gap:clamp(.5rem,2vw,4rem);grid-template-columns:repeat(5,1fr);height:100%;width:100%}.column[data-v-638afe38]{display:grid;gap:.5rem;grid-auto-rows:1fr;grid-template-columns:repeat(2,1fr);justify-content:center;position:relative}.number[data-v-638afe38]{align-items:center;aspect-ratio:1;background:rgb(var(--color-brand-1));border:2px solid rgb(var(--color-white) / 20%);border-radius:50%;box-shadow:2px 2px 5px rgb(var(--color-black) / 10%);color:rgb(var(--color-white));cursor:pointer;display:flex;font-size:clamp(1rem,4vh,3rem);height:8vh;justify-content:center;justify-self:center;position:relative;transition:all .2s ease}.column>.number[data-v-638afe38]:last-child{grid-column:1 / -1;margin:0 auto}@media (width <= 1024px){.number[data-v-638afe38]{border:none;border-radius:0}.header[data-v-638afe38]{font-size:clamp(1.2rem,5vw,2rem)}}.number[data-v-638afe38]:hover{filter:brightness(1.1)}.number.called[data-v-638afe38]{border-color:rgb(var(--color-white));box-shadow:inset 2px 2px 5px rgb(var(--color-black) / 20%);filter:brightness(1.1);font-weight:700;transform:scale(.98)}.number.called[data-v-638afe38]:hover{filter:brightness(1.1)}.number.disabled[data-v-638afe38]{background:var(--color-brand-1)}@media (width >= 1024px){.header[data-v-638afe38]{font-size:3rem}}.column:nth-child(1) .number.called[data-v-638afe38]{background:rgb(var(--color-bingo-1))}.column:nth-child(2) .number.called[data-v-638afe38]{background:rgb(var(--color-bingo-2))}.column:nth-child(3) .number.called[data-v-638afe38]{background:rgb(var(--color-bingo-3))}.column:nth-child(4) .number.called[data-v-638afe38]{background:rgb(var(--color-bingo-4));color:rgb(var(--color-black))}.column:nth-child(5) .number.called[data-v-638afe38]{background:rgb(var(--color-bingo-5));color:rgb(var(--color-black))}.last-called-number[data-v-4053a60b]{display:flex;flex-direction:column;gap:1rem;padding:1rem}.title[data-v-4053a60b]{color:rgb(var(--color-white));font-family:var(--font-heading);font-size:1.5rem;margin:0;text-align:center}.number-display[data-v-4053a60b]{align-items:center;display:flex;flex:1;flex-direction:column;gap:.5rem;justify-content:center}.ball[data-v-4053a60b]{align-items:center;aspect-ratio:1;border:3px solid rgb(var(--color-white) / 30%);border-radius:50%;box-shadow:2px 2px 5px rgb(var(--color-black) / 20%);color:rgb(var(--color-white));display:flex;font-size:2.5rem;font-weight:700;height:12.5vh;justify-content:center}.ball.ball--bingo-1[data-v-4053a60b]{background-color:rgb(var(--color-bingo-1))}.ball.ball--bingo-2[data-v-4053a60b]{background-color:rgb(var(--color-bingo-2))}.ball.ball--bingo-3[data-v-4053a60b]{background-color:rgb(var(--color-bingo-3))}.ball.ball--bingo-4[data-v-4053a60b]{background-color:rgb(var(--color-bingo-4));color:rgb(var(--color-black))}.ball.ball--bingo-5[data-v-4053a60b]{background-color:rgb(var(--color-bingo-5));color:rgb(var(--color-black))}.column-label[data-v-4053a60b]{color:rgb(var(--color-white));font-family:var(--font-heading);font-size:2rem;font-weight:700}.no-calls[data-v-4053a60b]{align-items:center;color:rgb(var(--color-white));display:flex;flex:1;font-size:1.2rem;justify-content:center;opacity:.8;text-align:center}@media (width >= 1024px){.title[data-v-4053a60b]{font-size:2rem}.ball[data-v-4053a60b]{font-size:4rem}.column-label[data-v-4053a60b]{font-size:3rem}.no-calls[data-v-4053a60b]{font-size:1.5rem}}.control-panel[data-v-9c886db6]{display:flex;flex-direction:column;gap:1rem;padding:1rem}.buttons[data-v-9c886db6]{display:flex;flex-wrap:wrap;gap:1rem}.confirm-dialog[data-v-9c886db6]{background:rgb(var(--color-white));border:none;border-radius:8px;max-width:400px;padding:2rem;width:90%}.confirm-dialog[data-v-9c886db6]::backdrop{background:rgb(var(--color-black) / 50%)}.dialog p[data-v-9c886db6]{color:rgb(var(--color-grey-800));font-size:1.2rem;margin:0 0 1.5rem;text-align:center}.dialog-buttons[data-v-9c886db6]{display:flex;gap:1rem;justify-content:center}@media (width >= 1024px){.btn[data-v-9c886db6]{font-size:1.2rem;padding:1rem 2rem}.dialog[data-v-9c886db6]{padding:3rem}.dialog p[data-v-9c886db6]{font-size:1.5rem}}.winning-pattern[data-v-ab8168ba]{cursor:pointer;display:flex;flex:1;flex-direction:column;outline:none;transition:all .2s ease}.winning-pattern[data-v-ab8168ba]:hover,.winning-pattern[data-v-ab8168ba]:focus{box-shadow:0 4px 8px rgb(var(--color-black) / 20%);transform:translateY(-2px)}.edit-hint[data-v-ab8168ba]{color:rgb(var(--color-white) / 70%);font-size:.9rem;margin-top:-.5rem;text-align:center}.title[data-v-ab8168ba]{color:rgb(var(--color-white));font-family:var(--font-heading);font-size:1.5rem;margin:0;text-align:center}.pattern-display[data-v-ab8168ba]{align-items:center;display:flex;flex:1;flex-direction:column;gap:1rem}.pattern-name[data-v-ab8168ba]{color:rgb(var(--color-white));font-size:1.2rem;font-weight:700}.pattern-grid[data-v-ab8168ba]{background:rgb(var(--color-white) / 10%);border-radius:4px;display:grid;gap:.25rem;margin:auto;padding:.5rem}.pattern-display .pattern-row[data-v-ab8168ba]{display:grid;gap:.25rem;grid-template-columns:repeat(5,1fr)}.pattern-display .column-headers[data-v-ab8168ba]{display:grid;gap:.25rem;grid-template-columns:repeat(5,1fr);margin-bottom:.5rem}.pattern-grid.editor .pattern-row[data-v-ab8168ba]{display:grid;gap:.25rem;grid-template-columns:2rem repeat(5,1fr);place-items:center center}.pattern-grid.editor .column-headers[data-v-ab8168ba]{display:grid;gap:.25rem;grid-template-columns:2rem repeat(5,1fr);justify-items:center;margin-bottom:.5rem}.pattern-cell[data-v-ab8168ba]{background:rgb(var(--color-black) / 20%);border:1px solid rgb(var(--color-white) / 30%);border-radius:2px;cursor:pointer;height:1.5rem;height:60px;justify-self:center;transition:all .2s ease;width:1.5rem;width:60px}.pattern-cell.required[data-v-ab8168ba]{background:rgb(var(--color-white) / 90%);border-color:rgb(var(--color-white))}.pattern-cell.required.column-b[data-v-ab8168ba]{background:rgb(var(--color-bingo-1))}.pattern-cell.required.column-i[data-v-ab8168ba]{background:rgb(var(--color-bingo-2))}.pattern-cell.required.column-n[data-v-ab8168ba]{background:rgb(var(--color-bingo-3))}.pattern-cell.required.column-g[data-v-ab8168ba]{background:rgb(var(--color-bingo-4))}.pattern-cell.required.column-o[data-v-ab8168ba]{background:rgb(var(--color-bingo-5))}.pattern-cell.free-space[data-v-ab8168ba]{background:rgb(var(--color-bingo-1));border-color:rgb(var(--color-white))}.no-pattern[data-v-ab8168ba]{color:rgb(var(--color-white));font-size:1.2rem;opacity:.8;padding:1rem;text-align:center}.column-headers[data-v-ab8168ba]{display:grid;gap:.25rem;grid-template-columns:2rem repeat(5,1fr);margin-bottom:.5rem}.header[data-v-ab8168ba]{border-radius:4px;color:rgb(var(--color-white));cursor:pointer;font-size:1.2rem;font-weight:700;padding:.5rem;text-align:center;transition:all .2s ease}@media (width >= 1024px){.title[data-v-ab8168ba]{font-size:2rem}.pattern-name[data-v-ab8168ba]{font-size:1.5rem}.pattern-cell[data-v-ab8168ba]{height:2rem;width:2rem}.header[data-v-ab8168ba]{font-size:1.5rem}}.pattern-editor[data-v-ab8168ba]{background:rgb(var(--color-white));border:none;border-radius:8px;max-width:800px;min-width:700px;padding:0;width:80%}.pattern-editor>div[data-v-ab8168ba]{padding:2rem}.pattern-editor[data-v-ab8168ba]::backdrop{background:#0000007f}.pattern-grid.editor[data-v-ab8168ba]{background:rgb(var(--color-brand-1));border-radius:8px;display:grid;gap:.5rem;margin:1rem 0;padding:1rem}.pattern-grid.editor .pattern-cell[data-v-ab8168ba]{cursor:pointer;height:3rem;transition:all .2s ease;width:3rem}.pattern-grid.editor .pattern-cell[data-v-ab8168ba]:hover:not(.free-space){border-color:rgb(var(--color-white));box-shadow:0 2px 4px #0003;transform:scale(1.1)}.dialog-buttons[data-v-ab8168ba]{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem}.header[data-v-ab8168ba]:hover{background:rgb(var(--color-white) / 10%)}.pattern-row[data-v-ab8168ba]{align-items:center;display:grid;gap:.25rem;grid-template-columns:2rem repeat(5,1fr)}.row-number[data-v-ab8168ba]{border-radius:4px;color:rgb(var(--color-white));cursor:pointer;font-weight:700;justify-self:center;padding:.5rem;text-align:center;transition:all .2s ease}.row-number[data-v-ab8168ba]:hover{background:rgb(var(--color-white) / 10%)}.spacer[data-v-ab8168ba]{width:2rem}.editor-container[data-v-ab8168ba]{align-items:start;display:grid;gap:2rem;grid-template-columns:1fr auto}.pattern-section[data-v-ab8168ba]{flex:1;width:min-content}.presets-section[data-v-ab8168ba]{background:rgb(var(--color-white) / 10%);border-radius:4px;flex:1;min-width:250px;padding:1rem}.preset-buttons[data-v-ab8168ba]{display:flex;flex-direction:column;flex-wrap:wrap;gap:.5rem}.preset-btn[data-v-ab8168ba]{background:rgb(var(--color-bingo-1));border:none;border-radius:4px;color:rgb(var(--color-white));cursor:pointer;flex:1;font-size:1rem;font-weight:700;padding:.5rem 1rem;padding:.75rem;text-align:left;transition:all .2s ease}.preset-btn[data-v-ab8168ba]:hover{background:rgb(var(--color-white) / 30%);filter:brightness(1.1);transform:translate(4px)}.presets-section h4[data-v-ab8168ba]{color:rgb(var(--color-white));margin:0 0 1rem;text-align:center}.pattern-section .column-headers[data-v-ab8168ba],.pattern-section .pattern-row[data-v-ab8168ba]{column-gap:8px;display:grid;grid-template-columns:40px repeat(5,60px)}.pattern-section .pattern-row+.pattern-row[data-v-ab8168ba]{margin-top:8px}.pattern-section .column-headers[data-v-ab8168ba]{margin-bottom:8px}.pattern-section .row-number[data-v-ab8168ba]{align-items:center;display:flex;height:40px;justify-content:center;width:40px}.pattern-section .header[data-v-ab8168ba]{align-items:center;display:flex;height:40px;justify-content:center}.pattern-section .spacer[data-v-ab8168ba]{height:40px;width:40px}.disabled[data-v-ab8168ba]{background:rgb(var(--color-brand-1))}.bingo-stats[data-v-4742f6de]{align-items:center;display:flex;justify-content:space-between;padding:1rem}.stat-item[data-v-4742f6de]{align-items:center;display:flex;gap:.5rem}.stat-item.remaining[data-v-4742f6de]{justify-content:flex-start}.stat-item.called[data-v-4742f6de]{justify-content:flex-end}.stat-value[data-v-4742f6de]{color:rgb(var(--color-white));font-family:var(--font-heading);font-size:2rem;font-weight:700;line-height:1}.stat-label[data-v-4742f6de]{color:rgb(var(--color-white) / 80%);font-size:.9rem;letter-spacing:.05em;line-height:1;text-transform:uppercase}@media (width >= 1024px){.stat-value[data-v-4742f6de]{font-size:3rem}.stat-label[data-v-4742f6de]{font-size:1rem}}.app-header[data-v-ddf71dba]{align-items:center;display:flex;justify-content:center;padding:1rem}.logo[data-v-ddf71dba]{cursor:pointer;max-width:100%;transition:transform .2s ease;width:auto}:root{--main-color: rgb(var(--color-brand-1));--glass-bg: rgb(var(--color-black) / 70%);--glass-border: rgb(var(--color-white) / 10%);--glass-shadow: 0 8px 32px 0 rgb(var(--color-black) / 30%);--b-color: rgb(var(--color-bingo-1));--i-color: rgb(var(--color-bingo-2));--n-color: rgb(var(--color-bingo-3));--g-color: rgb(var(--color-bingo-4));--o-color: rgb(var(--color-bingo-5))}.app-container{box-sizing:border-box;display:grid;gap:1rem;grid-template-areas:"left right";grid-template-columns:minmax(320px,1fr) 3fr;height:100vh;margin:0 auto;max-width:100vw;padding:1rem;width:100%}.left-column{display:grid;gap:1rem;grid-area:left;grid-template-columns:1fr;grid-template-rows:1fr 1fr 1fr;height:calc(100vh - 2rem);max-width:400px;min-width:320px}.right-column{display:grid;gap:1rem;grid-area:right;grid-template-rows:1fr auto;height:calc(100vh - 2rem)}.bottom-controls{display:grid;gap:1rem;grid-template-columns:1fr auto}@media (width <= 1024px){.app-container{grid-template-areas:"left" "right";grid-template-columns:1fr;grid-template-rows:auto 1fr;height:100vh}.left-column{height:auto;max-width:none;min-width:0}.right-column{height:auto}.bottom-controls{grid-template-columns:1fr}}@media (1024px <= width <= 1850px){.app-container{max-width:min(100vw,1440px)}}.glass-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;box-shadow:var(--glass-shadow);padding:1rem}.light{background:var(--color-grey-100)}@media (width <= 1024px){.left-column{width:100%}}
