@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-xs:.125rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--color-ink:#1d2928;--color-ink-soft:#4a5b56;--color-night:#071b21;--color-deep-blue:#103541;--color-wood:#3b2b24;--color-wood-light:#604a38;--color-forest:#315c43;--color-turquoise:#3b938b;--color-turquoise-soft:#a9d1c7;--color-gold:#c9a557;--color-gold-light:#ead69a;--color-parchment:#e6d7b5;--color-parchment-light:#f5edda;--color-stone:#6d7a73;--color-danger:#9a4840;--color-success:#397252;--color-warning:#a8752e;--surface-parchment:linear-gradient(145deg, #f8f1ddfa, #e1d2b0fa);--surface-stone:linear-gradient(145deg, #173c42, #0c292f);--surface-wood:linear-gradient(145deg, #563e31, #2e2522);--border-fantasy:1px solid #c9a557ad;--shadow-panel:0 22px 65px #020e1257, inset 0 1px #fffae285;--shadow-raised:0 8px 22px #0313162e;--radius-xs:6px;--radius-control:9px;--radius-panel:14px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-display:Georgia, "Times New Roman", serif;--font-ui:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--transition-fast:.15s ease;--transition-panel:.22s cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html{background:var(--color-deep-blue);min-width:320px}body{min-height:100vh;color:var(--color-ink);font-family:var(--font-ui);background:linear-gradient(#09232761,#091c21ad),url(/fantasy-table-bg.webp) 50%/cover fixed;margin:0}button,input,textarea,select{font:inherit}button,.quiet-link{border-radius:6px;min-height:44px}.public-shell,.admin-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.status-panel,.login-panel,.admin-panel{border:1px solid #c69a42bf;border-top:5px solid var(--color-gold);border-radius:var(--radius-panel);background:linear-gradient(145deg, var(--color-parchment-light), var(--color-parchment));width:min(100%,620px);box-shadow:var(--shadow-panel);padding:clamp(28px,5vw,52px)}.status-panel{text-align:center}.brand-mark{border:2px solid var(--color-gold);color:#fff;background:var(--color-forest);border-radius:50%;place-items:center;width:68px;height:68px;margin:0 auto 20px;font-size:22px;font-weight:700;display:grid}.eyebrow{color:var(--color-forest);text-transform:uppercase;margin:0 0 10px;font:700 13px/1.3 Arial,sans-serif}h1{color:var(--color-deep-blue);margin:0;font-family:Georgia,Times New Roman,serif;font-size:48px;line-height:1.08}.login-panel h1,.admin-panel h1{font-size:34px}.operational-status{background:#ffffff85;border:1px solid #2f5a434d;border-radius:999px;align-items:center;gap:9px;margin:28px 0 0;padding:9px 14px;font:700 14px/1.2 Arial,sans-serif;display:inline-flex}.status-dot{background:var(--color-success);border-radius:50%;flex:0 0 9px;width:9px;height:9px;margin-right:7px;display:inline-block;box-shadow:0 0 0 3px #2e765024}.foundation-copy,.panel-copy{max-width:48ch;margin:24px auto;line-height:1.6}.quiet-link{color:var(--color-deep-blue);align-items:center;font-weight:700;display:inline-flex}.quiet-link:focus-visible,button:focus-visible,input:focus-visible,.text-link:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--color-turquoise);outline-offset:3px}.team-choice:has(input:focus-visible){outline:3px solid var(--color-turquoise);outline-offset:3px}.login-form{gap:10px;margin-top:24px;display:grid}.login-form label{margin-top:6px;font:700 14px/1.3 Arial,sans-serif}.login-form input{border:1px solid var(--color-stone);background:#fff;border-radius:5px;min-height:46px;padding:9px 12px}.login-form button,.secondary-button{color:#fff;background:var(--color-forest);cursor:pointer;border:1px solid #1f4935;margin-top:14px;padding:10px 18px;font-weight:700}.login-form button:hover{background:#244b37}.login-form button:disabled{cursor:wait;opacity:.72}.secondary-button{color:var(--color-deep-blue);border-color:var(--color-stone);background:0 0}.form-error{border-left:4px solid var(--color-danger);color:#74231f;background:#9e352f14;padding:10px 12px}.admin-panel{gap:28px;display:grid}.connection-list{gap:12px;margin:0;display:grid}.connection-list div{border-bottom:1px solid #65716b4d;justify-content:space-between;gap:20px;padding-bottom:12px;display:flex}.connection-list dt{font-weight:700}.connection-list dd{margin:0}@media (max-width:560px){.public-shell,.admin-shell{padding:12px}.status-panel,.login-panel,.admin-panel{padding:28px 20px}.connection-list div{gap:6px;display:grid}h1{font-size:34px}}@media (prefers-reduced-motion:no-preference){button,.quiet-link{transition:background-color .14s,color .14s}}.parchment-panel{border:1px solid #c69a42c7;border-top:5px solid var(--color-gold);border-radius:var(--radius-panel);background:linear-gradient(145deg,#fbf5e5fa,#e7dab8fa);width:min(100%,760px);padding:36px;box-shadow:0 24px 70px #020f116b}.brand-header{text-align:center}.brand-kicker,.section-label{color:#27614b;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:800;display:block}.brand-header h1,.workspace-header h1,.empty-public-state h1,.recovery-panel h1{font-size:42px}.brand-header h1{text-transform:uppercase}.event-name{color:var(--color-forest);margin:9px 0 0;font:700 20px/1.3 Georgia,serif}.muted-copy{color:#485952;line-height:1.55}.registration-form{gap:22px;margin-top:30px;display:grid}.field-group{gap:8px;display:grid}.field-group label,.team-fieldset legend,.admin-form label,.inline-create label{color:#243d37;font-size:14px;font-weight:800}.field-group input,.admin-form input,.admin-form textarea,.admin-form select,.inline-create input,.admin-context-bar select,.admin-team-row input,.participant-actions select{width:100%;min-height:46px;color:var(--color-ink);background:#ffffffd1;border:1px solid #7b8174;border-radius:5px;padding:10px 12px}.admin-form textarea{resize:vertical;min-height:88px}.team-fieldset{border:0;min-width:0;margin:0;padding:0}.team-fieldset legend{margin-bottom:10px}.team-choice-list{gap:9px;display:grid}.team-choice{cursor:pointer;background:#ffffff8c;border:1px solid #87907e;border-radius:7px;grid-template-columns:minmax(0,1fr) 78px;align-items:center;min-height:74px;padding:12px 14px 12px 46px;display:grid;position:relative}.team-choice input{width:18px;height:18px;accent-color:var(--color-turquoise);position:absolute;left:16px}.team-choice-main{gap:4px;min-width:0;display:grid}.team-choice-main strong{color:var(--color-deep-blue);overflow-wrap:anywhere;font-family:Georgia,serif;font-size:18px}.team-choice-main span{color:#4c5b55;overflow-wrap:anywhere;font-size:14px}.team-choice.is-selected{background:#e8f2e8;border-color:#0c6664;box-shadow:inset 0 0 0 2px #177c793d}.team-choice.is-full{color:#65716b;cursor:not-allowed;background:#65716b1f}.team-choice.is-full .team-choice-main strong,.team-choice.is-full .team-choice-main span,.team-choice.is-full .occupancy{color:#68736d}.occupancy{color:var(--color-deep-blue);justify-items:end;font-weight:800;display:grid}.occupancy small{color:#7b2823;background:#efd6cf;border-radius:999px;margin-top:3px;padding:3px 7px;font-size:12px}.commitment-note,.empty-note{border-left:3px solid var(--color-gold);color:#49564d;background:#c69a421a;margin:0;padding:10px 12px;font-size:14px;line-height:1.45}.primary-button,.secondary-button,.danger-button,.approve-button{cursor:pointer;border-radius:5px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:800;display:inline-flex}.primary-button{color:#fff;background:#126c69;border:1px solid #104c4b;box-shadow:inset 0 1px #ffffff2e}.primary-button:hover{background:#0b5755}.secondary-button{color:#173b4b;background:#ffffff8a;border:1px solid #68756d;margin:0}.danger-button{color:#7b2823;background:#f6ddd2;border:1px solid #8b3831}.approve-button{color:#fff;background:#367c4f;border:1px solid #245f3e}.approve-button:hover{background:#28623d}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.approve-button:disabled{cursor:not-allowed;opacity:.55}.link-button{text-decoration:none}.text-link{color:#174e51;align-items:center;min-height:44px;margin-top:14px;font-weight:800;display:inline-flex}.empty-public-state,.recovery-panel{text-align:center;max-width:620px}.empty-public-state p{line-height:1.6}.empty-public-state .primary-button{margin-top:18px}.recovery-panel .registration-form{text-align:left}.recovery-code-input{text-transform:uppercase;font-family:Consolas,monospace;font-weight:800}.workspace-panel{width:min(100%,900px)}.workspace-header{border-bottom:1px solid #65716b52;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;display:flex}.workspace-header h1{text-transform:none;overflow-wrap:anywhere}.status-chip,.session-state{white-space:nowrap;border-radius:999px;align-items:center;min-height:30px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.status-registration,.status-live,.session-state.active{color:#174832;background:#d8ead8}.status-paused{color:#694b16;background:#f1dfb5}.status-finished,.status-archived,.session-state.inactive{color:#593532;background:#ead8d1}.team-workspace{grid-template-columns:minmax(200px,.8fr) minmax(280px,1.2fr);gap:28px;margin-top:28px;display:grid}.team-identity{border-right:1px solid #65716b52;padding-right:28px}.team-identity h2{color:var(--color-deep-blue);overflow-wrap:anywhere;margin:4px 0 12px;font:700 30px/1.15 Georgia,serif}.member-list{gap:8px;display:grid}.member-row{border-bottom:1px solid #65716b38;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;font-weight:700;display:grid}.member-row small{color:var(--color-forest)}.member-gem{background:var(--color-turquoise);border:1px solid #b38735;width:10px;height:10px;transform:rotate(45deg)}.member-row.waiting{color:#6b766f;font-weight:400}.member-row.waiting .member-gem{background:0 0}.future-grid-placeholder,.assignment-warning{text-align:center;background:#ffffff47;border:1px dashed #898978;border-radius:7px;margin-top:30px;padding:22px}.future-grid-placeholder p,.assignment-warning p{margin:6px 0 0}.assignment-warning{background:#f4e5c3;border-style:solid;border-color:#b1873b}.assignment-warning h2{margin:0;font:700 25px/1.2 Georgia,serif}.connection-state{color:#5e6b65;text-align:right;margin:16px 0 0;font-size:12px}.admin-login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.admin-shell{background:#f2e6c7f5;min-height:100vh;padding:0 28px 50px;display:block}.admin-topbar{border-bottom:1px solid #66756d;justify-content:space-between;align-items:center;gap:20px;max-width:1500px;margin:0 auto;padding:20px 0;display:flex}.admin-topbar h1{font-size:30px}.admin-account{align-items:center;gap:14px;font-weight:700;display:flex}.admin-nav,.admin-context-bar,.admin-section,.admin-feedback{max-width:1500px;margin-left:auto;margin-right:auto}.admin-nav{border-bottom:1px solid #829087;gap:4px;padding-top:14px;display:flex}.admin-nav button{color:#40534b;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;padding:10px 16px;font-weight:800}.admin-nav button.active{border-bottom-color:var(--color-turquoise);color:#123d41}.admin-context-bar{grid-template-columns:auto minmax(240px,460px);align-items:center;gap:12px;padding:20px 0;display:grid}.admin-context-bar label{font-weight:800}.admin-feedback{z-index:10;border-left:4px solid;margin-top:0;padding:10px 12px;position:sticky;top:8px;box-shadow:0 4px 12px #1425251f}.admin-feedback.success{border-color:var(--color-success);background:#deeddf}.admin-feedback.error{border-color:var(--color-danger);background:#f3dcd4}.section-heading{border-bottom:2px solid #38564e;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:12px;display:flex}.section-heading h2{color:var(--color-deep-blue);margin:0;font:700 28px/1.2 Georgia,serif}.section-heading>span{color:#50635a;font-size:13px;font-weight:800}.admin-two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:24px;display:grid}.admin-form{border-left:3px solid #b78b35;align-content:start;gap:12px;padding:0 0 8px 20px;display:grid}.admin-form h3{color:#213d39;margin:0 0 4px;font:700 20px/1.25 Georgia,serif}.admin-form label{gap:5px;display:grid}.form-row{grid-template-columns:minmax(0,1.5fr) minmax(120px,.5fr);gap:12px;display:grid}.admin-form .primary-button{justify-self:start}.admin-empty{color:#56665e;margin:24px 0;line-height:1.5}.inline-create{grid-template-columns:auto minmax(220px,420px) auto;align-items:center;gap:12px;margin:22px 0;display:grid}.admin-team-list,.participant-admin-list{border-top:1px solid #a5aa9e;display:grid}.admin-team-row{border-bottom:1px solid #a5aa9e;grid-template-columns:minmax(260px,1fr) minmax(220px,1fr) auto;align-items:center;gap:20px;padding:14px 0;display:grid}.admin-team-row form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.team-members-summary,.participant-main{gap:3px;min-width:0;display:grid}.team-members-summary span,.participant-main span{overflow-wrap:anywhere;color:#506159;font-size:14px}.participant-admin-row{border-bottom:1px solid #a5aa9e;grid-template-columns:minmax(180px,1fr) auto minmax(300px,1.25fr) auto;align-items:center;gap:18px;padding:14px 0;display:grid}.participant-admin-head{color:#53645c;text-transform:uppercase;border-bottom:1px solid #7c8981;grid-template-columns:minmax(180px,1fr) auto minmax(300px,1.25fr) auto;gap:18px;padding:9px 0;font-size:12px;font-weight:800;display:grid}.participant-main small{color:#63716b}.participant-actions{grid-template-columns:minmax(160px,1fr) auto;gap:8px;display:grid}.participant-buttons{gap:8px;display:flex}.recovery-dialog{width:min(100% - 24px,520px);color:var(--color-ink);background:var(--color-parchment-light);box-shadow:var(--shadow-panel);border:2px solid #b78b35;border-radius:7px;padding:28px}.recovery-dialog::backdrop{background:#031114ad}.recovery-dialog h2{margin:5px 0 18px;font:700 25px/1.2 Georgia,serif}.recovery-dialog code{color:#103d41;text-align:center;overflow-wrap:anywhere;background:#fff;border:1px solid #6d766d;border-radius:5px;padding:16px;font-size:24px;font-weight:800;display:block}.recovery-dialog p{color:#4c5b55;line-height:1.5}.recovery-dialog .copy-status{min-height:22px;color:var(--color-success);margin:5px 0;font-weight:800}.dialog-actions{justify-content:flex-end;gap:10px;display:flex}.bingo-shell{background:#f2e6c7f5;min-height:100vh;padding:20px 28px 14px}.bingo-topbar,.bingo-footer{max-width:1600px;margin:0 auto}.bingo-topbar{border-bottom:2px solid #38564e;justify-content:space-between;align-items:center;gap:24px;padding-bottom:16px;display:flex}.bingo-topbar h1{overflow-wrap:anywhere;font-size:32px}.bingo-team-summary{grid-template-columns:repeat(2,auto);place-items:center end;gap:4px 14px;display:grid}.bingo-team-summary strong{color:var(--color-deep-blue)}.bingo-team-summary .status-chip{grid-column:1/-1}.event-banner{border-left:4px solid;max-width:1600px;margin:14px auto 0;padding:10px 14px;font-weight:800}.locked-banner{background:#e3ded0;border-color:#68756d}.paused-banner{background:#f1dfb5;border-color:#a77822}.ended-banner{background:#ead8d1;border-color:#82423a}.ended-banner a{color:var(--color-deep-blue);margin-left:8px;font-weight:900}.bingo-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;width:min(100%,1600px);margin:18px auto;display:grid}.bingo-cell{border:1px solid #68766e;border-top:4px solid var(--color-turquoise);min-width:0;min-height:156px;color:var(--color-ink);text-align:left;background:#fbf5e5e0;border-radius:7px;flex-direction:column;align-items:stretch;gap:9px;padding:12px;display:flex;position:relative;box-shadow:0 3px 8px #1425251f}button.bingo-cell{cursor:pointer}button.bingo-cell:hover{background:#fff;border-color:#245f5d;transform:translateY(-1px)}.bingo-cell>strong{overflow-wrap:anywhere;flex:1;font:700 17px/1.25 Georgia,serif}.cell-topline{justify-content:space-between;align-items:center;gap:8px;display:flex}.cell-position,.grid-number{color:#5f5c4c;font-size:12px;font-weight:900}.category-mark,.category-icon{border-radius:50%;flex:0 0 28px;width:28px;height:28px}.category-mark{color:#fff;border:1px solid #17252b47;place-items:center;font-size:12px;font-weight:900;display:grid}.category-mark.neutral{background:#68756d}.category-icon{object-fit:cover}.cell-meta{color:#4e5d57;font-size:12px}.cell-status{color:#3f5149;background:#e4e0d4;border-radius:999px;align-self:flex-start;padding:4px 7px;font-size:10px;font-weight:900}.bingo-cell.state-in_progress{border-top-color:#b67d22}.bingo-cell.state-pending_review{background:#f6e7c8;border-top-color:#9b5c21}.bingo-cell.state-approved{border-top-color:var(--color-success);background:#e1eee0}.bingo-cell.state-rejected{border-top-color:var(--color-danger);background:#f1dcd3}.locked-cell{color:#69746e;text-align:center;box-shadow:none;background:#e1dccfc7;border-style:dashed;border-top-width:1px;justify-content:center;align-items:center}.locked-cell>strong{flex:0;font:700 15px/1.25 Arial,sans-serif}.locked-cell .cell-position{position:absolute;top:10px;left:11px}.bingo-footer{color:#526159;border-top:1px solid #849088;justify-content:space-between;gap:12px;padding-top:10px;font-size:12px;display:flex}.participant-live-panels{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:22px;width:min(100%,1600px);margin:24px auto;display:grid}.participant-leaderboard,.participant-notifications{background:#fbf5e5c7;border:1px solid #89938c;border-radius:7px;min-width:0;padding:16px}.leaderboard-table{margin-top:10px;display:grid}.leaderboard-head,.leaderboard-row{border-bottom:1px solid #aaa999;grid-template-columns:90px minmax(150px,1fr) 100px 100px;align-items:center;gap:12px;padding:10px 6px;display:grid}.leaderboard-head{color:#526159;text-transform:uppercase;font-size:11px;font-weight:900}.leaderboard-row>span:first-child{color:#7a5d20;font-weight:900}.leaderboard-hidden{background:#f1dfb5;border-left:3px solid #a77822;padding:12px;font-weight:800}.notification-list{max-height:320px;display:grid;overflow-y:auto}.notification-list article{border-bottom:1px solid #aaa999;padding:11px 3px}.notification-list p{overflow-wrap:anywhere;margin:4px 0}.notification-list time{color:#607069;font-size:11px}.challenge-drawer{z-index:40;border:0;border-left:3px solid var(--color-gold);width:min(620px,100%);max-width:none;height:100vh;max-height:none;color:var(--color-ink);background:var(--color-parchment-light);border-radius:0;margin:0 0 0 auto;padding:22px;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-16px 0 36px #03111459}.challenge-drawer::backdrop{background:#0311148c}.drawer-header{z-index:2;background:var(--color-parchment-light);border-bottom:1px solid #879087;justify-content:space-between;align-items:flex-start;gap:16px;margin:-22px -22px 16px;padding:20px 22px 14px;display:flex;position:sticky;top:-22px}.drawer-header h2{color:var(--color-deep-blue);overflow-wrap:anywhere;margin:4px 0 0;font:700 25px/1.2 Georgia,serif}.icon-button{color:#173b4b;cursor:pointer;background:0 0;border:1px solid #68756d;place-items:center;width:44px;min-width:44px;padding:0;font-size:24px;display:inline-grid}.challenge-facts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.challenge-facts>*{background:#ebe3cf;border-left:3px solid #68756d;padding:5px 8px;font-size:12px}.challenge-description{white-space:pre-line;line-height:1.55}.thread-heading{border-bottom:1px solid #8d958d;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-bottom:8px;display:flex}.thread-heading h3{margin:0;font:700 19px/1.2 Georgia,serif}.thread-status{background:#e0d9c7;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900}.message-thread{gap:0;display:grid}.proof-message{border-bottom:1px solid #b0aa99;padding:14px 0}.proof-message header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.proof-message time{color:#65716b;font-size:11px}.proof-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;line-height:1.5}.proof-message.author-system{color:#55615c;font-style:italic}.attachment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.attachment-grid button{cursor:zoom-in;aspect-ratio:4/3;background:#d7d3c7;border:1px solid #69776f;min-width:0;padding:0;overflow:hidden}.attachment-grid img{object-fit:cover;width:100%;height:100%;display:block}.empty-thread,.validation-lock,.submission-date{color:#596760;font-size:13px}.validation-lock{background:#f1dfb5;border-left:3px solid #a77822;padding:10px;font-weight:800}.approved-lock{border-color:var(--color-success);background:#deeddf}.message-composer{border-top:2px solid #38564e;gap:9px;margin-top:18px;padding-top:16px;display:grid}.message-composer label{font-weight:800}.file-picker{justify-content:space-between;gap:12px;display:flex}.file-picker span,.selected-files{color:#617069;overflow-wrap:anywhere;font-size:11px;font-weight:400}.composer-actions,.config-actions{justify-content:flex-end;gap:8px;display:flex}.image-viewer{border:2px solid var(--color-gold);background:#14262b;border-radius:7px;width:calc(100vw - 36px);max-width:1200px;height:calc(100vh - 36px);max-height:none;margin:auto;padding:0;inset:0}.image-viewer::backdrop{background:#030d11d9}.viewer-toolbar{color:#fff;background:#14262b;justify-content:flex-end;align-items:center;gap:10px;height:56px;padding:6px 10px;display:flex}.viewer-toolbar .icon-button{color:#fff;border-color:#94a19a}.viewer-canvas{width:100%;height:calc(100% - 56px);overflow:auto}.viewer-stage{min-width:100%;min-height:100%;position:relative}.viewer-stage img{object-fit:contain;transform-origin:50%;max-width:calc(100vw - 72px);max-height:calc(100vh - 92px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.admin-config-layout{grid-template-columns:minmax(280px,.7fr) minmax(420px,1.3fr);gap:30px;margin-top:24px;display:grid}.admin-config-list{gap:24px;display:grid}.admin-form.compact{gap:9px}.config-form-title{align-items:center;gap:9px;display:flex}.category-swatch{border:1px solid #58675f;border-radius:50%;flex:0 0 18px;width:18px;height:18px}.checkbox-label{grid-template-columns:auto 1fr;justify-content:start;align-items:center;gap:8px!important;display:flex!important}.checkbox-label input{width:18px;height:18px}.template-callout{border-left:4px solid var(--color-gold);background:#ebe0c1;justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding:14px 16px;display:flex}.template-callout p{margin:5px 0 0}.challenge-create{margin-top:26px}.challenge-create-disclosure{border-bottom:1px solid #89938c;margin-top:22px;padding-bottom:12px}.challenge-create-disclosure summary{color:#173b4b;cursor:pointer;align-items:center;width:fit-content;min-height:44px;font-weight:900;display:flex}.challenge-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:30px;display:grid}.grid-number{background:#eee0bd;border:1px solid #8d753b;place-items:center;width:30px;height:30px;display:grid}.template-preview-list{gap:5px;max-height:55vh;margin:18px 0;padding:0;list-style:none;display:grid;overflow-y:auto}.template-preview-list li{border-bottom:1px solid #b1aa98;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 0;font-size:13px;display:grid}.template-preview-list li span{font-weight:900}.template-preview-list li strong{color:#8c4d20;text-transform:uppercase;font-size:10px}.pending-list{border-top:1px solid #89938c;margin-top:18px;display:grid}.pending-row{border-bottom:1px solid #a4aaa3;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 6px;display:grid}.pending-row:hover{background:#ffffff59}.pending-main{min-width:0;color:var(--color-ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(190px,1.1fr) 130px minmax(180px,1fr) 150px 170px;align-items:center;gap:12px;padding:6px;display:grid}.pending-main>span:first-child{gap:4px;display:grid}.pending-row small,.pending-row time{color:#586760}.pending-last-message{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pending-thumbnails{gap:4px;display:flex}.pending-thumbnails button{cursor:zoom-in;background:#ddd5c1;border:1px solid #68756d;width:44px;height:44px;padding:0;overflow:hidden}.pending-thumbnails img{object-fit:cover;width:100%;height:100%}.pending-actions{gap:6px;display:flex}.reject-inline{border-left:3px solid var(--color-danger);background:#f3ded5;grid-column:1/-1;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;padding:10px 12px;display:grid}.reject-inline label,.review-drawer-actions form label{gap:5px;font-weight:800;display:grid}.review-drawer-actions{background:var(--color-parchment-light);border-top:1px solid #879087;flex-wrap:wrap;gap:8px;margin:18px -22px -22px;padding:14px 22px 18px;display:flex;position:sticky;bottom:-22px}.review-drawer-actions form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;width:100%;display:grid}.challenge-history-warning{background:#f1dfb5;border-left:3px solid #a77822;padding:9px;font-size:13px;font-weight:800}.admin-leaderboard .leaderboard-head,.admin-leaderboard .leaderboard-row{grid-template-columns:90px minmax(150px,1fr) 90px 90px 90px minmax(180px,1fr)}.admin-result-summary{border-left:4px solid var(--color-success);background:#deeddf;flex-wrap:wrap;align-items:center;gap:12px 22px;margin:14px 0;padding:13px 16px;display:flex}.admin-result-summary.tie{background:#f1dfb5;border-color:#a77822}.admin-result-summary a{margin-left:auto;font-weight:900}.admin-result-details{gap:8px;margin-top:24px;display:grid}.admin-result-details details{background:#fffaeab8;border:1px solid #9aa097;border-radius:5px;padding:10px 13px}.admin-result-details summary{cursor:pointer}.admin-result-details ol{columns:2;padding-left:22px}.results-shell{width:min(1120px,100% - 28px);color:var(--color-ink);margin:26px auto 50px}.results-hero{text-align:center;border:2px solid #9a7732;border-radius:10px;padding:clamp(22px,5vw,52px);box-shadow:0 12px 30px #0e232633}.results-hero.victory{color:#fff7dd;background:radial-gradient(circle at top,#399c8766,#0000 48%),linear-gradient(145deg,#102f38,#28564d)}.results-hero h1{margin:10px 0;font:800 clamp(30px,5vw,52px)/1.08 Georgia,serif}.results-hero.victory .section-label{color:#f3cf72}.result-meta{opacity:.82;margin-bottom:0}.podium,.tie-leaders,.results-ranking,.own-result{background:#fbf5e5e0;border:1px solid #89938c;border-radius:8px;margin-top:26px;padding:clamp(16px,3vw,26px)}.podium h2,.tie-leaders h2,.results-ranking h2,.own-result h2{color:var(--color-deep-blue);margin-top:0;font:800 26px Georgia,serif}.podium>div{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;display:grid}.podium article,.tie-leaders article{text-align:center;background:#eee3c7;border-top:4px solid #8b7a55;gap:6px;padding:18px;display:grid}.podium .podium-1{background:#f4e4ad;border-color:#b68a2c;min-height:150px}.podium .podium-2{border-color:#7d8784}.podium .podium-3{border-color:#9b6845}.podium article strong,.tie-leaders article strong{font:800 20px Georgia,serif}.tie-leaders>div{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.results-list{display:grid}.results-row{border-bottom:1px solid #aaa999;grid-template-columns:110px minmax(160px,1fr) 110px 110px;gap:12px;padding:12px 8px;display:grid}.results-head{color:#526159;text-transform:uppercase;font-size:11px;font-weight:900}.own-result-facts{flex-wrap:wrap;gap:8px;display:flex}.own-result-facts>*{background:#e7e2d3;border-left:3px solid #318b86;padding:8px 11px}.own-challenges{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px;padding:0;list-style:none;display:grid}.own-challenges li{border-bottom:1px solid #b2ad9e;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;padding:8px 2px;display:grid}.tie-admin-warning{background:#f1dfb5;border-left:4px solid #a77822;padding:12px;font-weight:900}.results-nav{flex-wrap:wrap;gap:18px;margin-top:22px;display:flex}.results-nav a{color:var(--color-deep-blue);font-weight:900}.history-shell>header{margin-bottom:24px}.history-shell h1{color:var(--color-deep-blue);font:800 42px Georgia,serif}.history-list{gap:10px;margin-bottom:24px;display:grid}.history-list>a{color:inherit;background:#fbf5e5e0;border:1px solid #89938c;border-left:4px solid #318b86;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:14px;padding:16px;text-decoration:none;display:grid}.admin-thread{width:min(700px,100%)}.event-timer{color:#183d42;background:linear-gradient(#fff4d6,#e9d6a4);border:1px solid #8c753d;border-radius:7px;justify-items:center;gap:3px;min-width:190px;padding:9px 16px;display:grid;box-shadow:0 3px 10px #14252526}.event-timer span{text-transform:uppercase;font-size:11px;font-weight:900}.event-timer strong{font-variant-numeric:tabular-nums;font:800 25px/1.1 ui-monospace,monospace}.event-timer.compact{place-content:center;min-width:230px;min-height:92px}.timer-paused{background:#f1dfb5;border-color:#a77822}.timer-finished,.timer-archived{background:#ead8d1;border-color:#82423a}.live-dashboard{grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin:20px 0;display:grid}.live-dashboard>article{background:#fffaeab8;border-left:3px solid #318b86;align-content:center;gap:4px;padding:12px;display:grid}.live-dashboard>article span{color:#55665e;text-transform:uppercase;font-size:11px;font-weight:800}.live-dashboard>article strong{color:var(--color-deep-blue);font-size:18px}.live-actions{flex-wrap:wrap;gap:9px;margin:16px 0 24px;display:flex}.preflight-issues{border-left:4px solid var(--color-danger);background:#f3dcd4;padding:12px 16px}.preflight-issues ul{margin-bottom:0;padding-left:20px}.mystery-admin-layout{border-top:2px solid #8c753d;grid-template-columns:minmax(320px,.9fr) minmax(280px,1.1fr);gap:30px;padding-top:24px;display:grid}.mystery-live-actions{color:#fff8df;background:linear-gradient(135deg,#163e43,#28564d);border:1px solid #8c753d;border-radius:7px;padding:18px}.mystery-live-actions h3{margin-top:0;font:700 21px Georgia,serif}.mystery-recommendation{background:#f1dfb5;border-left:4px solid #b78b35;padding:11px 14px;font-weight:800}.admin-hint-list{gap:6px;padding-left:22px;display:grid}.admin-hint-list li{padding:7px}.admin-hint-list li span{float:right;text-transform:uppercase;font-size:11px}.admin-hint-list .locked{opacity:.58}.mystery-panel{color:#fff7dd;background:radial-gradient(circle at 100% 0,#2e877e6b,#0000 38%),linear-gradient(135deg,#102f38,#234b43);border:2px solid #9a7732;border-radius:9px;width:min(100%,1600px);margin:20px auto;padding:20px;box-shadow:0 8px 24px #0e232638}.mystery-panel h2{color:#ffe7a5;margin:4px 0 8px;font:700 27px Georgia,serif}.mystery-panel .section-label{color:#e9c776}.mystery-locked{color:#d9d6c9;background:linear-gradient(135deg,#374a48,#253938)}.mystery-title{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.mystery-title>strong{color:#f3cf72;white-space:nowrap}.mystery-hints{gap:9px;margin:16px 0;display:grid}.mystery-hints article{background:#fff8df1a;border-left:3px solid #d4a94c;padding:9px 12px}.mystery-hints p{white-space:pre-line;margin:4px 0 0}.mystery-team-status{border-top:1px solid #fff4cf40;padding-top:12px}.mystery-claim-button{color:#18383a;cursor:pointer;background:linear-gradient(#ffe6a2,#d5a743);border:1px solid #f1ce70;border-radius:5px;min-height:44px;padding:10px 15px;font-weight:900}.mystery-pending-list{background:#eee1bd;border:1px solid #9a7732;margin-top:20px;padding:14px}.mystery-pending-list h3{margin-top:0}.mystery-pending .pending-main{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #d39b26}@media (max-width:900px){.admin-two-columns{grid-template-columns:1fr}.admin-team-row{grid-template-columns:1fr auto}.admin-team-row form{grid-column:1/-1}.participant-admin-row{grid-template-columns:minmax(0,1fr) auto}.participant-admin-head{display:none}.participant-actions,.participant-buttons{grid-column:1/-1}.bingo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.participant-live-panels,.admin-config-layout,.challenge-admin-grid{grid-template-columns:1fr}.pending-row{grid-template-columns:1fr auto}.pending-main{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto}.pending-main time,.pending-last-message{grid-column:1/-1}.admin-leaderboard{overflow-x:auto}.admin-leaderboard .leaderboard-head,.admin-leaderboard .leaderboard-row{min-width:760px}.live-dashboard{grid-template-columns:repeat(3,minmax(0,1fr))}.mystery-admin-layout{grid-template-columns:1fr}}@media (max-width:600px){.public-shell{align-items:start;padding:10px}.parchment-panel{padding:26px 18px}.brand-header h1,.workspace-header h1,.empty-public-state h1,.recovery-panel h1{font-size:31px}.team-choice{grid-template-columns:minmax(0,1fr) 66px;padding-left:42px}.team-workspace{grid-template-columns:1fr}.team-identity{border-bottom:1px solid #65716b52;border-right:0;padding:0 0 18px}.workspace-header{display:grid}.status-chip{justify-self:start}.admin-shell{width:100%;max-width:100vw;padding:0 12px 36px;overflow-x:clip}.admin-topbar{align-items:flex-start}.admin-account{justify-items:end;font-size:13px;display:grid}.admin-nav{overscroll-behavior-x:contain;grid-auto-columns:max-content;grid-auto-flow:column;width:100%;min-width:0;max-width:100%;display:grid;overflow-x:auto}.admin-nav button{flex:none}.admin-context-bar,.form-row,.inline-create,.admin-team-row,.participant-admin-row,.participant-actions{grid-template-columns:1fr}.inline-create .primary-button,.admin-team-row .danger-button{width:100%}.participant-admin-row .session-state{justify-self:start}.participant-buttons{grid-template-columns:1fr;display:grid}.dialog-actions{display:grid}.admin-section,.admin-config-layout,.admin-config-list,.challenge-admin-grid,.pending-list{width:100%;min-width:0;max-width:100%}.bingo-shell{padding:12px 10px}.bingo-topbar{flex-wrap:wrap;align-items:flex-start}.event-timer{order:3;width:100%}.bingo-topbar h1{font-size:25px}.bingo-team-summary{grid-template-columns:1fr;justify-items:end;font-size:12px}.bingo-team-summary .status-chip{grid-column:auto}.bingo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.bingo-cell{min-height:150px;padding:9px}.bingo-cell>strong{font-size:14px}.bingo-footer{display:grid}.challenge-drawer{border-left:0;border-top:3px solid var(--color-gold);width:100%;padding:16px}.drawer-header{margin:-16px -16px 14px;padding:16px;top:-16px}.attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.composer-actions,.config-actions,.template-callout{display:grid}.composer-actions button,.config-actions button,.template-callout button{width:100%}.pending-row,.pending-main{grid-template-columns:1fr}.pending-thumbnails,.pending-actions{justify-content:flex-start}.reject-inline,.review-drawer-actions form{grid-template-columns:1fr}.leaderboard-head,.leaderboard-row{grid-template-columns:70px minmax(100px,1fr) 70px 70px;gap:6px;font-size:12px}.template-preview-list li{grid-template-columns:24px minmax(0,1fr)}.template-preview-list li strong{grid-column:2}.live-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.live-dashboard .event-timer{grid-column:1/-1}.mystery-title{flex-direction:column;align-items:flex-start}.podium>div,.own-challenges{grid-template-columns:1fr}.results-row{grid-template-columns:62px minmax(100px,1fr) 66px 62px;gap:5px;font-size:12px}.history-list>a{grid-template-columns:1fr}.admin-result-summary a{margin-left:0}.admin-result-details ol{columns:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{scroll-behavior:smooth}body:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle at 12% 8%,#4194842e,#0000 28rem),radial-gradient(circle at 88% 92%,#c9a55721,#0000 30rem),repeating-linear-gradient(115deg,#0000 0 12px,#ffffff03 13px 14px);position:fixed;inset:0}h1,h2,h3{text-wrap:balance}.brand-kicker,.section-label{letter-spacing:.12em;font-family:var(--font-ui)}.wake-up-brand{align-items:center;gap:var(--space-3);width:fit-content;margin:0 auto var(--space-4);text-align:left;display:inline-flex}.wake-up-mark{background:var(--surface-stone);box-shadow:inset 0 0 0 1px #c9a55773, var(--shadow-raised);border-radius:50%}.wake-up-brand-text{gap:2px;display:grid}.wake-up-brand-text strong{color:var(--color-deep-blue);font:800 18px/1 var(--font-display);letter-spacing:.08em}.wake-up-brand-text small{color:var(--color-ink-soft);letter-spacing:.22em;font-size:9px;font-weight:800}.brand-footnote{margin-top:var(--space-5);color:var(--color-ink-soft);letter-spacing:.04em;text-align:center;opacity:.85;font-size:11px}.brand-kicker-mark{vertical-align:-5px;margin:0}.brand-kicker-mark .wake-up-mark{box-shadow:inset 0 0 0 1px #c9a5578c}.bingo-topbar .brand-kicker{align-items:center;gap:7px;display:inline-flex}.bingo-footer-brand{color:var(--color-gold-light);letter-spacing:.08em;opacity:.8;font-weight:700}.admin-identity{align-items:center;gap:var(--space-3);display:flex}.admin-identity .wake-up-brand{margin:0}.login-panel .wake-up-brand,.empty-public-state .wake-up-brand,.recovery-panel .wake-up-brand{display:flex}.parchment-panel,.status-panel,.login-panel{border:var(--border-fantasy);border-top:4px solid var(--color-gold);border-radius:var(--radius-panel);background:var(--surface-parchment);box-shadow:var(--shadow-panel);position:relative}.parchment-panel:before,.results-ranking:before,.podium:before,.tie-leaders:before,.own-result:before{border-radius:calc(var(--radius-panel) - 5px);content:"";pointer-events:none;border:1px solid #68512b24;position:absolute;inset:7px}.registration-panel{width:min(100%,820px)}.registration-panel .muted-copy{max-width:55ch;margin:var(--space-3) auto 0}.registration-form{gap:var(--space-5)}.field-group input,.admin-form input,.admin-form textarea,.admin-form select,.inline-create input,.admin-context-bar select,.admin-team-row input,.participant-actions select,.reject-inline input,.review-drawer-actions input,.message-composer textarea{border-radius:var(--radius-control);color:var(--color-ink);background:#fffdf5d6;border:1px solid #78827b;box-shadow:inset 0 1px 3px #1a272414}.field-group input:hover,.admin-form input:hover,.admin-form textarea:hover,.admin-form select:hover,.admin-context-bar select:hover,.message-composer textarea:hover{border-color:var(--color-turquoise)}.team-choice-list{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.team-choice{border-radius:var(--radius-control);min-height:92px;transition:border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);background:linear-gradient(135deg,#fffdf4c2,#e0d6ba99);border:1px solid #8b8b76;box-shadow:inset 0 1px #ffffffb3}.team-choice:not(.is-full):hover{border-color:var(--color-turquoise);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.team-choice.is-selected{border-color:var(--color-turquoise);box-shadow:inset 0 0 0 2px #3b938b38, var(--shadow-raised);background:linear-gradient(135deg,#e6f0e7,#ceddc9)}.team-choice.is-full{filter:saturate(.45);opacity:.7}.commitment-note{border-radius:0 var(--radius-xs) var(--radius-xs) 0}.primary-button,.secondary-button,.danger-button,.approve-button,.mystery-claim-button{border-radius:var(--radius-control);transition:transform var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast)}.primary-button{background:linear-gradient(#328b82,#17645f);border-color:#176660;box-shadow:inset 0 1px #ffffff40,0 4px 10px #0a43402e}.primary-button:hover{background:linear-gradient(#3e9a91,#1c716b);transform:translateY(-1px)}.secondary-button{background:#fffcf294}.secondary-button:hover{border-color:var(--color-turquoise);background:#fffcf2e6}.approve-button{background:linear-gradient(#4a8b62,#316849)}.danger-button{background:#f0d7ce}.bingo-shell{min-height:100vh;padding:var(--space-3) clamp(12px, 1.7vw, 32px) var(--space-4);color:#edf2e7;background:linear-gradient(#04161beb,#071b1ff5),url(/fantasy-table-bg.webp) 50%/cover fixed;position:relative}.bingo-shell:before{content:"";pointer-events:none;background:linear-gradient(90deg,#5f442b1f,#0000 18% 82%,#5f442b1f);position:fixed;inset:0}.bingo-topbar{z-index:20;align-items:center;gap:var(--space-5);border:var(--border-fantasy);border-radius:var(--radius-panel);color:#f4efdf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#0e3138f7,#071f25f7);grid-template-columns:minmax(300px,1fr) auto minmax(300px,1fr);max-width:1720px;min-height:88px;padding:11px 18px;display:grid;position:sticky;top:8px;box-shadow:0 12px 36px #00090c57,inset 0 1px #ffffff12}.bingo-topbar h1{color:#f4edda;font:750 clamp(21px, 1.8vw, 30px)/1.1 var(--font-display)}.bingo-topbar .brand-kicker{color:var(--color-gold-light);margin-bottom:4px}.event-identity{min-width:0}.participant-nav{flex-wrap:wrap;gap:3px 12px;margin-top:7px;display:flex}.participant-nav a{color:#bcd0c8;align-items:center;gap:5px;font-size:11px;font-weight:750;text-decoration:none;display:inline-flex}.participant-nav a:hover{color:#fff3c8}#bingo-grid,#mystery,#leaderboard,#notifications{scroll-margin-top:118px}.bingo-team-summary{grid-template-columns:1fr auto;gap:4px 14px}.bingo-team-summary>span{color:#bacac3;font-size:12px}.bingo-team-summary .team-name{color:#fff0c5;font:750 16px/1.1 var(--font-display);justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.team-stats{grid-area:1/2/3;gap:6px;display:flex}.team-stats strong{border-radius:var(--radius-control);color:#fff3cd;text-align:center;background:#ffffff0d;border:1px solid #c9a5575c;min-width:70px;padding:7px 9px;font-size:20px}.team-stats small{color:#b9c9c1;font:700 10px var(--font-ui)}.bingo-team-summary .status-chip{grid-column:1/-1;justify-self:end}.bingo-topbar .status-chip{border:1px solid #ffffff21}.event-timer{border-radius:var(--radius-control);color:#fff2c8;background:linear-gradient(#413025d1,#24201ee0);border:1px solid #c9a557b3;min-width:170px;box-shadow:inset 0 0 18px #c9a55717}.event-timer span{color:#d5c8a5;letter-spacing:.1em}.event-timer strong{font-size:24px}.timer-paused{color:#ffdfa0;background:linear-gradient(#614b2c,#3a3226)}.timer-finished,.timer-archived{color:#d9d7d1;background:linear-gradient(#3d4544,#293232)}.event-banner{border-radius:0 var(--radius-control) var(--radius-control) 0;max-width:1720px;color:var(--color-ink)}.bingo-grid{z-index:1;border-radius:calc(var(--radius-panel) + 3px);background:linear-gradient(145deg,#4d382ae0,#20221feb),repeating-linear-gradient(90deg,#0000 0 40px,#ffffff05 41px);border:1px solid #c9a55757;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(7px,.65vw,12px);width:min(100%,1720px);margin:14px auto;padding:clamp(8px,.8vw,14px);position:relative;box-shadow:inset 0 0 0 4px #0718194d,0 18px 46px #000a0c4d}.bingo-cell{border:1px solid #7d7865;border-top:3px solid var(--color-turquoise);border-radius:var(--radius-control);min-height:clamp(118px,14.3vh,154px);transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), filter var(--transition-fast);background:linear-gradient(135deg,#f8f1ddf5,#dcd1b4f5),repeating-linear-gradient(25deg,#0000 0 8px,#51432c08 9px 10px);gap:6px;padding:10px 11px;overflow:hidden;box-shadow:inset 0 1px #ffffffb8,0 3px 7px #000c0e38}button.bingo-cell:hover{z-index:2;border-color:var(--color-gold);background:linear-gradient(135deg,#fff9e8,#e5d6ae);transform:translateY(-3px);box-shadow:0 8px 17px #000c0e4d}.bingo-cell>strong{font:750 clamp(13px, .95vw, 16px)/1.18 var(--font-display)}.cell-position{color:#73603e;letter-spacing:.12em;font-size:10px}.category-mark,.category-icon{flex-basis:25px;width:25px;height:25px;box-shadow:0 2px 4px #0003}.cell-meta{border-top:1px solid #534b3a2e;justify-content:space-between;gap:6px;padding-top:6px;font-weight:700;display:flex}.cell-status{letter-spacing:.035em;border:1px solid #3a48412e;border-radius:5px;align-items:center;gap:4px;display:inline-flex}.bingo-cell.state-in_progress{border-top-color:var(--color-warning);background:linear-gradient(135deg,#f5ead0,#dfc895)}.bingo-cell.state-in_progress .cell-status{color:#604213;background:#ead5a8}.bingo-cell.state-pending_review{background:linear-gradient(135deg,#f1e2bd,#d7b87b);border-color:#c28a36 #b17d34 #b17d34}.bingo-cell.state-pending_review .cell-status{color:#5b3c0b;background:#f1d69d}.bingo-cell.state-approved{background:linear-gradient(135deg,#e1ead8,#bcd2b8);border-color:#4c9366 #5d8b6d #5d8b6d;box-shadow:inset 0 0 20px #3e80531f,0 4px 9px #000c0e38}.bingo-cell.state-approved:after{content:"✓";color:#306f471a;font:900 92px/1 var(--font-ui);position:absolute;bottom:-23px;right:-17px;transform:rotate(-10deg)}.bingo-cell.state-approved .cell-status{color:#17482c;background:#cbe0ca}.bingo-cell.state-rejected{border-color:#9c655a;border-top-color:var(--color-danger);background:repeating-linear-gradient(135deg,#f3dccff5 0 12px,#ecd0c3f5 13px 24px)}.bingo-cell.state-rejected .cell-status{color:#6e2c25;background:#edd0c5}.locked-cell{color:#819089;background:linear-gradient(135deg,#223534eb,#1a2a2aeb);border-color:#5c716c;box-shadow:inset 0 0 26px #0000003d}.locked-cell>strong{color:#aab7b1}.locked-cell svg{color:var(--color-gold);opacity:.62}.mystery-panel{border:1px solid var(--color-gold);border-radius:var(--radius-panel);background:radial-gradient(circle at 86% 18%,#44beaa40,#0000 22rem),repeating-radial-gradient(circle at 100% 0,#0000 0 18px,#ffffff05 19px 20px),linear-gradient(135deg,#122e38,#193c38 58%,#2f3029);width:min(100%,1720px);padding:clamp(20px,2.2vw,34px);position:relative;overflow:hidden}.mystery-panel:after{content:"✦";color:#ead69a1f;font-size:110px;position:absolute;top:5%;right:3%;transform:rotate(12deg)}.mystery-panel h2{color:#fff0b9;font-size:clamp(24px,2vw,32px)}.mystery-title>strong{border-radius:var(--radius-control);background:#00000024;border:1px solid #ead69a8c;padding:10px 14px;font-size:20px}.mystery-hints{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.mystery-hints article{border:1px solid #c9a55759;border-left:4px solid var(--color-gold);border-radius:var(--radius-xs);background:linear-gradient(135deg,#f6e5b821,#ffffff0a);padding:13px 15px;position:relative}.mystery-locked{filter:saturate(.55)}.participant-live-panels{gap:var(--space-4);width:min(100%,1720px)}.participant-leaderboard,.participant-notifications{border:var(--border-fantasy);border-radius:var(--radius-panel);padding:var(--space-5);color:var(--color-ink);background:var(--surface-parchment);box-shadow:var(--shadow-raised);position:relative}.leaderboard-row{border-color:#605d4d40}.leaderboard-row:nth-child(-n+3){background:linear-gradient(90deg,#c9a55721,#0000)}.leaderboard-row>span:first-child{align-items:center;gap:6px;display:inline-flex}.leaderboard-hidden{border-radius:var(--radius-control);text-align:center;border:1px dashed #a7833e;justify-items:center;gap:6px;padding:26px;display:grid}.leaderboard-hidden span{color:var(--color-ink-soft);font-size:13px}.notification-list article{border-left:2px solid var(--color-turquoise);padding-left:11px}.bingo-footer{color:#aabab3;border-color:#dce8dc2e;max-width:1720px}.challenge-drawer{border-left:2px solid var(--color-gold);background:linear-gradient(#f6eedafa,#e6d8b8fa),repeating-linear-gradient(25deg,#0000 0 10px,#46372105 11px 12px);width:min(720px,100%);padding:24px 28px;box-shadow:-22px 0 60px #000a0d7a}.challenge-drawer[open]{animation:drawer-enter var(--transition-panel) both}.drawer-header{background:linear-gradient(#f7efdc,#e9ddc1);margin:-24px -28px 18px;padding:20px 28px 15px;top:-24px;box-shadow:0 6px 14px #202a2612}.drawer-header h2{font-size:clamp(25px,2.2vw,34px)}.challenge-facts>*{border-radius:0 var(--radius-xs) var(--radius-xs) 0;background:#fffaeba8;padding:7px 10px}.challenge-description{border-radius:var(--radius-control);background:#fffcf27a;border:1px solid #76664538;padding:16px;font-size:15px}.thread-heading{border-bottom:2px solid #516c62;margin-top:28px}.thread-status{border:1px solid #45554e38;align-items:center;display:inline-flex}.message-thread{gap:9px;padding:13px 0}.proof-message{border-radius:var(--radius-control);background:#fffcf38c;border:1px solid #68695940;padding:12px 14px}.proof-message.author-self{background:#e4eee6;border-color:#3b938b61;margin-left:34px}.proof-message.author-admin{border-left:4px solid var(--color-gold);background:#efe2bd}.proof-message.author-system{text-align:center;background:#66716a14;border-style:dashed;padding:9px 12px}.attachment-grid button{border-radius:var(--radius-control);transition:transform var(--transition-fast), box-shadow var(--transition-fast)}.attachment-grid button:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.message-composer{z-index:2;background:linear-gradient(#f3ead4,#dfcfa9);border-top:1px solid #7c7e6d;margin:20px -28px -24px;padding:16px 28px 22px;position:sticky;bottom:-24px;box-shadow:0 -8px 18px #262d2817}.message-composer textarea{resize:vertical}.submit-review-button{color:#242d29;background:linear-gradient(#f0d886,#c9a34b);border-color:#8a6d2b;position:relative;box-shadow:inset 0 1px #ffffff73,0 4px 10px #5e451433}.submit-review-button:hover{background:linear-gradient(#f5df94,#d2ac55)}.drawer-loading{color:var(--color-ink-soft);align-items:center;gap:10px;padding:30px 0;display:flex}.drawer-loading span{border:2px solid #9fa39a;border-top-color:var(--color-turquoise);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.admin-shell{color:var(--color-ink);background:linear-gradient(#ede7d4f7,#ded6c0f7),url(/fantasy-table-bg.webp) 50%/cover fixed;padding:0 clamp(12px,2.4vw,38px) 50px}.admin-topbar{color:#f3ebd8;border-radius:0 0 var(--radius-panel) var(--radius-panel);background:var(--surface-stone);border-bottom:0;max-width:1600px;min-height:76px;margin-top:0;padding-left:18px;padding-right:18px;position:relative;box-shadow:0 5px 16px #0003}.admin-topbar:before{content:none}.admin-topbar h1{color:#f3ebd8}.admin-topbar .brand-kicker{color:var(--color-gold-light)}.admin-account{color:#d6ded8}.admin-account .secondary-button{color:#e8eee9;background:#ffffff0f;border-color:#718b83}.admin-nav,.admin-context-bar,.admin-section,.admin-feedback{max-width:1600px}.admin-nav{z-index:15;border-radius:0 0 var(--radius-control) var(--radius-control);box-shadow:var(--shadow-raised);scrollbar-width:thin;background:#eee7d3f5;border:1px solid #9e9b87;gap:2px;padding:4px;position:sticky;top:0;overflow-x:auto}.admin-nav button{white-space:nowrap;border:0;border-radius:6px;min-height:40px;padding:8px 13px}.admin-nav button:hover{background:#ffffff73}.admin-nav button.active{color:#f6ead1;background:#245e5b;border:0;box-shadow:inset 0 0 0 1px #ffffff1a}.admin-context-bar{padding:16px 0 8px}.admin-section{padding-top:12px}.section-heading{border-bottom:1px solid #718077;padding-bottom:10px}.section-heading h2{font-size:clamp(24px,2vw,30px)}.live-dashboard{grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px}.live-dashboard>article{border:1px solid #b3ad99;border-left:3px solid var(--color-turquoise);border-radius:var(--radius-control);background:#fffcefa6;min-height:72px;box-shadow:0 2px 6px #21302b0f}.live-dashboard>article strong{font-size:20px}.live-dashboard .event-timer{color:var(--color-deep-blue);background:linear-gradient(#f7eac4,#ddc98f)}.live-actions{border-radius:var(--radius-control);background:#fffcef7a;border:1px solid #b3ad99;padding:10px}.admin-form{border-radius:0 var(--radius-control) var(--radius-control) 0;background:#fffbee7a;border:1px solid #b8b19d;border-left:3px solid #a8833e;padding:18px}.admin-team-list,.participant-admin-list,.pending-list{border-top:0;gap:6px}.admin-team-row,.participant-admin-row,.pending-row{border-radius:var(--radius-control);background:#fffcf28c;border:1px solid #b8b19d;padding:11px 13px}.participant-admin-head{border:0;padding-left:13px;padding-right:13px}.pending-row:hover{border-color:var(--color-turquoise);background:#fffdf5e6}.pending-main{border-radius:var(--radius-xs);min-height:52px}.pending-main:hover{background:#3b938b14}.pending-thumbnails button{border-radius:6px}.template-callout,.preflight-issues,.mystery-recommendation{border-radius:0 var(--radius-control) var(--radius-control) 0}.mystery-admin-layout{border-top-color:#9b824c}.mystery-live-actions{border-radius:var(--radius-panel);box-shadow:var(--shadow-raised);align-self:start}.leaderboard-table{border-radius:var(--radius-control);background:#fffcf27a;border:1px solid #b8b19d;overflow:hidden}.admin-leaderboard .leaderboard-row{padding-left:12px;padding-right:12px}.admin-feedback{border-radius:0 var(--radius-control) var(--radius-control) 0}.admin-empty{border-radius:var(--radius-control);text-align:center;background:#fffcf259;border:1px dashed #a59f8b;padding:20px}.recovery-dialog{border-radius:var(--radius-panel);background:var(--surface-parchment)}.results-shell{width:min(1220px,100% - 28px);color:var(--color-ink)}.results-hero{border:1px solid var(--color-gold);border-radius:18px;position:relative;overflow:hidden}.results-hero:after{content:"✦";color:#ffedb41a;font-size:220px;position:absolute;bottom:-60px;right:-20px;transform:rotate(-12deg)}.results-hero.victory{background:radial-gradient(circle at 50% -25%,#5bbe9770,#0000 50%),linear-gradient(145deg,#0a2932,#245347 65%,#293c34);box-shadow:0 20px 60px #000f1357}.results-hero.tie{color:#302b20;background:radial-gradient(circle at top,#fffadb99,#0000 45%),linear-gradient(145deg,#ead9a4,#bda464)}.results-hero h1{z-index:1;position:relative}.results-hero.victory h1{color:#fff1c6;text-shadow:0 2px 18px #00000047}.results-hero.tie h1{color:#312c20}.podium,.tie-leaders,.results-ranking,.own-result{border:var(--border-fantasy);border-radius:var(--radius-panel);background:var(--surface-parchment);box-shadow:var(--shadow-raised);position:relative}.podium>div{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:stretch}.podium article,.tie-leaders article{border-radius:var(--radius-control);background:linear-gradient(145deg,#eee2c3,#d9c8a1);box-shadow:inset 0 1px #fff9}.podium .podium-1{background:linear-gradient(145deg,#f5e7b4,#ddc36e);border-top-width:5px;box-shadow:0 8px 22px #7f5d1c2e}.results-row{border-color:#645e4b3d}.results-row:not(.results-head):nth-child(2){background:#c9a5571f}.own-result-facts>*{border-radius:0 var(--radius-xs) var(--radius-xs) 0}.history-list>a{border-radius:var(--radius-control);transition:transform var(--transition-fast), box-shadow var(--transition-fast)}.history-list>a:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.results-nav{border-radius:var(--radius-control);background:#061d23c2;border:1px solid #c9a5574d;padding:10px 14px}.results-nav a{color:#f0ddb0}@keyframes drawer-enter{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1100px){.bingo-topbar{grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);gap:12px}.participant-nav a{border-radius:var(--radius-xs);justify-content:center;min-width:44px;min-height:44px;padding:8px;font-size:0}.participant-nav a:hover{background:#ffffff12}.participant-nav a svg{width:17px;height:17px}.team-stats strong{min-width:60px}.bingo-cell{min-height:132px}.live-dashboard{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (max-width:1500px) and (min-width:761px) and (max-height:900px){.bingo-shell{padding-top:8px}.bingo-topbar{min-height:84px;padding-top:8px;padding-bottom:8px}.bingo-grid{gap:6px;margin-top:9px;padding:8px}.bingo-cell{gap:4px;min-height:104px;padding:8px 10px}.bingo-cell>strong{font-size:13px;line-height:1.12}.category-mark,.category-icon{flex-basis:23px;width:23px;height:23px}.cell-meta{padding-top:4px;font-size:10px}.cell-status{padding:3px 6px;font-size:9px}}@media (max-width:760px){.team-choice-list{grid-template-columns:1fr}.bingo-shell{padding:8px 8px 74px}.bingo-topbar{-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;min-height:0;padding:10px 11px;position:sticky;top:5px}.event-identity h1{white-space:nowrap;text-overflow:ellipsis;max-width:16ch;font-size:19px;overflow:hidden}.event-identity .brand-kicker{font-size:9px}.brand-kicker-mark .wake-up-mark{width:16px;height:16px}.participant-nav{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#071f25f5;border:1px solid #c9a5578c;border-radius:12px;grid-template-columns:repeat(4,1fr);gap:2px;margin:0;padding:5px;display:grid;position:fixed;bottom:8px;left:8px;right:8px;box-shadow:0 8px 28px #00000059}.participant-nav a{justify-content:center;min-height:44px;font-size:10px}.participant-nav a svg{width:16px;height:16px}.bingo-topbar .event-timer{order:initial;width:auto;min-width:108px;padding:6px 8px}.event-timer strong{font-size:18px}.event-timer span{font-size:8px}.bingo-team-summary{border-top:1px solid #ffffff1a;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;justify-items:start;padding-top:7px}.bingo-team-summary .team-name{justify-content:flex-start;font-size:13px}.bingo-team-summary>span:nth-child(2){display:none}.team-stats{grid-area:auto/2}.team-stats strong{border:0;min-width:auto;padding:2px 5px;font-size:15px}.bingo-team-summary .status-chip{grid-area:1/3;justify-self:end;min-height:26px;padding:4px 7px;font-size:9px}#bingo-grid,#mystery,#leaderboard,#notifications{scroll-margin-top:136px}.event-banner{margin-top:8px;font-size:12px}.bingo-grid{border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px auto 14px;padding:7px}.bingo-cell{gap:6px;min-height:145px;padding:9px}.bingo-cell>strong{font-size:14px}.cell-meta{font-size:10px}.mystery-panel{margin:12px auto;padding:18px 15px}.mystery-panel:after{font-size:70px}.mystery-hints{grid-template-columns:1fr}.participant-live-panels{margin:14px auto}.participant-leaderboard,.participant-notifications{padding:16px 13px}.leaderboard-row{grid-template-columns:62px minmax(90px,1fr) 58px 52px}.challenge-drawer{border:0;border-top:3px solid var(--color-gold);width:100%;padding:18px 16px}.drawer-header{margin:-18px -16px 14px;padding:15px 16px 12px;top:-18px}.drawer-header h2{font-size:25px}.message-composer{padding:14px 16px calc(18px + env(safe-area-inset-bottom));margin:18px -16px -18px;bottom:-18px}.composer-actions{display:grid}.composer-actions button{width:100%}.file-picker{display:grid}.admin-topbar{padding:14px 0}.admin-nav{margin-left:-4px;margin-right:-4px}.live-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.live-dashboard>article{min-height:66px}.live-dashboard .event-timer{grid-column:1/-1}.admin-form{padding:14px 12px}.pending-row{padding:10px}.podium>div{gap:8px}.results-hero h1{font-size:31px}}@media (prefers-reduced-motion:no-preference){.bingo-cell.state-approved{animation:.42s ease-out both approved-glow}@keyframes approved-glow{0%{box-shadow:0 0 #599b6a8c}to{box-shadow:0 0 0 10px #0000,0 4px 9px #000c0e38}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
