@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@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;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;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;line-height:1.5}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-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}}:root{--pal-brand-400:#8a2a4c;--pal-brand-500:#7c2342;--pal-brand-600:#5e1832;--pal-brand-700:#4c1329;--pal-brand-ink:#6b1d39;--pal-brand-pink:#d98ba5;--pal-brand-rose:#e07a93;--pal-brand-blush:#f1c9d6;--pal-tint-50:#fffafb;--pal-tint-75:#fcf8f9;--pal-tint-100:#fbf8f9;--pal-tint-110:#fbf6f7;--pal-tint-150:#f9f1f3;--pal-tint-175:#f8f1f3;--pal-tint-180:#f8eff2;--pal-tint-200:#f7ecef;--pal-tint-250:#f6e9ed;--pal-tint-275:#f1e5e9;--pal-tint-300:#f1e4e8;--pal-tint-350:#f0dde4;--pal-tint-360:#f3e3e9;--pal-tint-400:#ecd3dc;--pal-tint-450:#ead3db;--pal-line-100:#e8dae0;--pal-line-200:#eadde2;--pal-line-300:#e3d3da;--pal-line-400:#d8c3cb;--pal-line-500:#d3bcc5;--pal-line-700:#c98ba1;--pal-ink-900:#241a2a;--pal-ink-800:#2f2438;--pal-ink-700:#54474f;--pal-ink-500:#6f6169;--pal-brand-rgb:124 35 66;--pal-brand-shade-rgb:94 24 50;--pal-brand-glow-rgb:168 28 66;--pal-brand-pink-rgb:217 139 165;--pal-ink-rgb:36 26 42;--pal-contrast:#2b245b;--pal-accent:#7c2342}:root[data-palette=navy]{--pal-brand-400:#3a3170;--pal-brand-500:#2b245b;--pal-brand-600:#1f1a45;--pal-brand-700:#17132f;--pal-brand-ink:#2b245b;--pal-brand-pink:#9a93d6;--pal-brand-rose:#c65b6b;--pal-brand-blush:#d9d6ea;--pal-tint-50:#fcfcfe;--pal-tint-75:#fafafd;--pal-tint-100:#f7f7fb;--pal-tint-110:#f6f6fb;--pal-tint-150:#f3f2f9;--pal-tint-175:#f3f2f8;--pal-tint-180:#f1f0f8;--pal-tint-200:#efeef7;--pal-tint-250:#ecebf5;--pal-tint-275:#e9e8f3;--pal-tint-300:#e8e7f2;--pal-tint-350:#e3e1f0;--pal-tint-360:#e6e4f1;--pal-tint-400:#d9d6ea;--pal-tint-450:#dcdaec;--pal-line-100:#e0dfed;--pal-line-200:#e2e1ee;--pal-line-300:#dcdbea;--pal-line-400:#cdcae0;--pal-line-500:#c9c6de;--pal-line-700:#8f89c2;--pal-ink-900:#1b1838;--pal-ink-800:#252244;--pal-ink-700:#4a4766;--pal-ink-500:#676482;--pal-brand-rgb:43 36 91;--pal-brand-shade-rgb:31 26 69;--pal-brand-glow-rgb:58 49 112;--pal-brand-pink-rgb:154 147 214;--pal-ink-rgb:27 24 56;--pal-contrast:#a81c2c;--pal-accent:#a81c2c}:root{--dihud-navy:#2b245b;--dihud-navy-strong:#1f1a45;--dihud-crimson:#a81c2c;--dihud-wine:var(--pal-brand-500);--dihud-navy-soft:#ecebf5;--dihud-crimson-soft:#fbecee;--color-canvas:var(--pal-tint-100);--color-surface:#fff;--color-surface-muted:var(--pal-tint-175);--color-surface-sunken:var(--pal-tint-275);--color-border:var(--pal-line-200);--color-border-strong:var(--pal-line-400);--color-text:var(--pal-ink-900);--color-text-secondary:var(--pal-ink-700);--color-text-muted:var(--pal-ink-500);--color-text-inverse:#fff;--color-brand:var(--pal-brand-500);--color-brand-hover:var(--pal-brand-600);--color-brand-active:var(--pal-brand-700);--color-brand-soft:var(--pal-tint-250);--color-brand-soft-strong:var(--pal-tint-400);--color-brand-text:var(--pal-brand-ink);--color-selected-border:var(--color-brand)}@supports (color:color-mix(in lab, red, red)){:root{--color-selected-border:color-mix(in srgb, var(--color-brand) 45%, var(--color-border-strong))}}:root{--color-selected-bg:var(--color-brand-soft)}@supports (color:color-mix(in lab, red, red)){:root{--color-selected-bg:color-mix(in srgb, var(--color-brand-soft) 60%, var(--color-surface))}}:root{--color-success:#0f7a52;--color-success-soft:#e3f5ec;--color-warning:#8f5400;--color-warning-soft:#fdf1d9;--color-danger:#c43d1f;--color-danger-hover:#a83217;--color-danger-soft:#fdeee9;--color-info:#1d5cb8;--color-info-soft:#e7effb;--color-neutral-soft:#eceef4;--color-celebrate:#f4b53a;--color-celebrate-strong:#b77400;--color-celebrate-soft:#fff4dc;--font-sans:"DM Sans Variable", "DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;--text-2xs:.75rem;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.875rem;--text-3xl:2.25rem;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.55;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-heavy:800;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-xs:.375rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-pill:999px;--shadow-xs:0 1px 2px rgb(var(--pal-ink-rgb) / 6%);--shadow-sm:0 1px 3px rgb(var(--pal-ink-rgb) / 8%), 0 1px 2px rgb(var(--pal-ink-rgb) / 4%);--shadow-md:0 8px 24px rgb(var(--pal-ink-rgb) / 9%), 0 2px 6px rgb(var(--pal-ink-rgb) / 5%);--shadow-lg:0 24px 60px rgb(var(--pal-ink-rgb) / 16%);--control-sm:2.25rem;--control-md:2.75rem;--control-lg:3.25rem;--touch-target:2.75rem;--focus-ring:0 0 0 3px #126bd457;--focus-ring-danger:0 0 0 3px #c0283a52;--duration-fast:.12s;--duration-base:.2s;--duration-slow:.36s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasized:cubic-bezier(.3, 0, 0, 1.2);--container-narrow:34rem;--width-prose:42rem;--width-form:56rem;--container-content:72rem;--container-wide:90rem;--sidebar-width:16rem;--topbar-height:3.75rem}.stage{--stage-bg:#1a1638;--stage-bg-raised:#2b245b;--stage-surface:#ffffff0d;--stage-surface-strong:#ffffff17;--stage-border:#ffffff1c;--stage-border-strong:#ffffff38;--stage-text:#f5f6fc;--stage-text-secondary:#d6cfe0;--stage-text-muted:#aba2bf;--stage-accent:var(--pal-brand-pink);--stage-accent-soft:rgb(var(--pal-brand-pink-rgb) / 16%);--stage-gold:#ffcf5c;--stage-gold-soft:#ffcf5c24;--stage-success:#7fd4ac;--stage-danger:#ff8a98}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-width:320px;min-height:100dvh;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}#root{min-height:100dvh}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:var(--leading-tight);letter-spacing:-.015em;overflow-wrap:anywhere}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--color-brand-text);text-underline-offset:.18em}a:hover{color:var(--color-brand-hover)}:focus-visible{box-shadow:var(--focus-ring);outline:none}::selection{background:var(--color-brand-soft-strong)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-muted{color:var(--color-text-muted)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.skip-link{top:var(--space-2);left:var(--space-2);z-index:100;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-text-inverse);font-weight:var(--weight-semibold);position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard);border:1px solid #0000;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.btn svg{flex:none;width:1.05em;height:1.05em}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.55;transform:none}.btn-primary{background:var(--color-brand);color:var(--color-text-inverse);box-shadow:var(--shadow-xs)}.btn-primary:hover:not(:disabled){background:var(--color-brand-hover);color:var(--color-text-inverse)}.btn-secondary{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){border-color:var(--color-text-muted);background:var(--color-surface-muted);color:var(--color-text)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-surface-sunken);color:var(--color-text)}.btn-danger{background:var(--color-danger);color:var(--color-text-inverse)}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover);color:var(--color-text-inverse)}.btn-danger:focus-visible,.btn-danger-quiet:focus-visible{box-shadow:var(--focus-ring-danger)}.btn-danger-quiet{color:var(--color-danger);background:0 0;border-color:#0000}.btn-danger-quiet:hover:not(:disabled){background:var(--color-danger-soft);color:var(--color-danger-hover)}.btn-celebrate{background:linear-gradient(180deg, #ffd66e, var(--color-celebrate));color:#3b2500;box-shadow:0 10px 30px #f4b53a59}.btn-celebrate:hover:not(:disabled){filter:brightness(1.04);color:#3b2500}.btn-sm{min-height:var(--control-sm);padding:0 var(--space-3);font-size:var(--text-sm)}.btn-lg{min-height:var(--control-lg);padding:0 var(--space-6);border-radius:var(--radius-md);font-size:var(--text-base)}.btn-block{width:100%}.btn-icon{width:var(--control-md);padding:0}.btn-icon.btn-sm{width:var(--control-sm)}.btn[aria-busy=true]{cursor:progress}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:1em;height:1em;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.button-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.button-row-end{justify-content:flex-end}.form-stack,.form-grid{gap:var(--space-4);display:grid}@media (width>=768px){.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .span-full{grid-column:1/-1}}.field{gap:var(--space-1-5,.375rem);min-width:0;display:grid}.field-label{justify-content:space-between;align-items:baseline;gap:var(--space-2);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:flex}.field-optional{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium)}.field-hint{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug)}.field-error{align-items:flex-start;gap:var(--space-1);color:var(--color-danger);font-size:var(--text-sm);font-weight:var(--weight-medium);display:flex}.input,.select,.textarea{width:100%;min-width:0;min-height:var(--control-md);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--text-base);box-shadow:var(--shadow-xs);transition:border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard)}.textarea{min-height:5.5rem;padding:var(--space-2) var(--space-3);resize:vertical}.select{padding-right:var(--space-8);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23636b82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat}.input::placeholder,.textarea::placeholder{color:#8a91a5}.input:hover,.select:hover,.textarea:hover{border-color:var(--color-text-muted)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--color-brand);box-shadow:var(--focus-ring)}.input[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--color-danger)}.input:disabled,.select:disabled{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:not-allowed}.input-search{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23636b82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");background-position:.75rem;background-repeat:no-repeat;padding-left:2.4rem}.check{align-items:flex-start;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;display:flex}.check input{width:1.15rem;height:1.15rem;accent-color:var(--color-brand);flex:none;margin:.15rem 0 0}.check strong{font-size:var(--text-sm);display:block}.check small{color:var(--color-text-muted);font-size:var(--text-sm);display:block}.choice-group{gap:var(--space-3);border:0;min-width:0;margin:0;padding:0;display:grid}.choice-group legend{margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);padding:0}@media (width>=768px){.choice-group-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.choice{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:border-color var(--duration-fast), box-shadow var(--duration-fast), background-color var(--duration-fast);display:flex;position:relative}.choice:hover{border-color:var(--color-text-muted)}.choice:has(input:checked){border-color:var(--color-selected-border);background:var(--color-selected-bg)}.choice:has(input:focus-visible){box-shadow:var(--focus-ring)}.choice input{width:1.1rem;height:1.1rem;accent-color:var(--color-brand);flex:none;margin:.15rem 0 0}.choice-icon{border-radius:var(--radius-sm);background:var(--color-surface-muted);width:2.5rem;height:2.5rem;color:var(--color-brand);flex:none;place-items:center;display:grid}.choice strong{font-size:var(--text-sm);display:block}.choice small{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug);display:block}.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-sm)}.card-body{padding:var(--space-5)}@media (width>=768px){.card-body{padding:var(--space-6)}}.card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-5) var(--space-5) 0;flex-wrap:wrap;display:flex}@media (width>=768px){.card-header{padding:var(--space-6) var(--space-6) 0}}.card-title{font-size:var(--text-md);font-weight:var(--weight-semibold)}.card-description{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm)}.card-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:0 0 var(--radius-lg) var(--radius-lg);flex-wrap:wrap;display:flex}.card-danger{border-color:#f2c4ca}.section-header{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.section-title{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.section-description{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm)}.stack{gap:var(--space-6);display:grid}.stack-sm{gap:var(--space-3);display:grid}.divider{background:var(--color-border);border:0;height:1px;margin:0}.badge{border-radius:var(--radius-pill);min-height:1.6rem;font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap;vertical-align:middle;align-items:center;gap:.4em;padding:0 .6rem;line-height:1;display:inline-flex}.badge svg{width:.95em;height:.95em}.badge-neutral{background:var(--color-neutral-soft);color:var(--color-text-secondary)}.badge-brand{background:var(--color-brand-soft);color:var(--color-brand-text)}.badge-success{background:var(--color-success-soft);color:var(--color-success)}.badge-warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge-info{background:var(--color-info-soft);color:var(--color-info)}.badge-celebrate{background:var(--color-celebrate-soft);color:var(--color-celebrate-strong)}.badge-live:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem;animation:1.8s ease-out infinite badge-pulse;box-shadow:0 0}@keyframes badge-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, currentColor 45%, transparent)}80%,to{box-shadow:0 0 0 .45rem #0000}}.alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-snug);border:1px solid #0000;display:flex}.alert>svg{flex:none;width:1.15rem;height:1.15rem;margin-top:.05rem}.alert-body{gap:var(--space-2);flex:1;min-width:0;display:grid}.alert-title{font-weight:var(--weight-semibold)}.alert-info{background:var(--color-info-soft);color:#173f7a;border-color:#c9dbf6}.alert-success{background:var(--color-success-soft);color:#0c5e3f;border-color:#bfe6d3}.alert-warning{background:var(--color-warning-soft);color:#6b3f00;border-color:#f4d9a2}.alert-danger{background:var(--color-danger-soft);color:#93202f;border-color:#f4c3c9}.alert-neutral{border-color:var(--color-border);background:var(--color-surface-muted);color:var(--color-text-secondary)}.empty-state{justify-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-5);text-align:center;display:grid}.empty-state-icon{width:3rem;height:3rem;margin-bottom:var(--space-2);border-radius:var(--radius-md);background:var(--color-brand-soft);color:var(--color-brand);place-items:center;display:grid}.empty-state-icon svg{width:1.4rem;height:1.4rem}.empty-state h3{font-size:var(--text-md);font-weight:var(--weight-semibold)}.empty-state p{max-width:28rem;color:var(--color-text-muted);font-size:var(--text-sm)}.empty-state .btn,.empty-state .button-row{margin-top:var(--space-3)}.empty-state-compact{padding:var(--space-6) var(--space-4)}.page-header{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:minmax(0,1fr);display:grid}.page-title-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-title-group{gap:var(--space-2);flex:22rem;min-width:0;display:grid}.page-title{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.page-title h1{min-width:0;font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem);font-weight:var(--weight-bold);letter-spacing:-.025em}.page-description{max-width:48rem;color:var(--color-text-secondary)}.page-meta{gap:var(--space-2) var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.page-meta span{align-items:center;gap:var(--space-1);display:inline-flex}.page-meta svg{width:1rem;height:1rem}.page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.tabs{gap:var(--space-1);margin-bottom:var(--space-6);border-bottom:1px solid var(--color-border);scrollbar-width:none;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{align-items:center;gap:var(--space-2);min-height:var(--touch-target);padding:0 var(--space-3);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;text-decoration:none;display:inline-flex}.tab svg{width:1rem;height:1rem}.tab:hover{color:var(--color-text)}.tab[aria-current=page]{border-bottom-color:var(--color-brand);color:var(--color-brand-text)}.tab:focus-visible{border-radius:var(--radius-xs) var(--radius-xs) 0 0}.tab-count{border-radius:var(--radius-pill);background:var(--color-surface-sunken);min-width:1.4rem;color:var(--color-text-secondary);font-size:var(--text-xs);text-align:center;padding:.1rem .4rem}.stat-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=1024px){.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat{gap:var(--space-1);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.stat-label{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);display:flex}.stat-label svg{width:1rem;height:1rem}.stat-value{font-size:var(--text-2xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.1}.stat-caption{color:var(--color-text-muted);font-size:var(--text-xs)}.table-card{overflow:hidden}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:top}.data-table tbody tr:last-child td{border-bottom:0}.data-table .cell-primary{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.data-table .cell-secondary{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:.15rem;display:block}.data-table .cell-actions{text-align:right;white-space:nowrap}.data-table .cell-nowrap{white-space:nowrap}.data-table .cell-wide{min-width:9rem}@media (width<=767.98px){.data-table thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.data-table,.data-table tbody,.data-table tr,.data-table td{width:100%;display:block}.data-table tr{gap:var(--space-2);padding:var(--space-4);border-bottom:1px solid var(--color-border);display:grid}.data-table tbody tr:last-child{border-bottom:0}.data-table td{gap:var(--space-3);border:0;grid-template-columns:minmax(6.5rem,38%) minmax(0,1fr);padding:0;display:grid}.data-table td:before{content:attr(data-label);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.data-table td.cell-title{display:block}.data-table td.cell-title:before{content:none}.data-table .cell-actions{justify-content:flex-start;gap:var(--space-2);padding-top:var(--space-2);text-align:left;flex-wrap:wrap;display:flex}.data-table .cell-actions:before{content:none}}.pagination{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-sm);display:flex}.toolbar{align-items:flex-end;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.toolbar .field{flex:11rem}.toolbar .field-grow{flex:3 16rem}.toolbar-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=479.98px){.toolbar-actions,.toolbar-actions .btn{width:100%}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-surface-sunken) 25%, var(--color-surface-muted) 50%, var(--color-surface-sunken) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer;display:block}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-stack{gap:var(--space-3);display:grid}.dialog-backdrop{z-index:80;padding:var(--space-3);background:#0c0f1e7a;place-items:end center;display:grid;position:fixed;inset:0}@media (width>=480px){.dialog-backdrop{padding:var(--space-6);place-items:center}}.dialog{width:min(100%,30rem);max-height:calc(100dvh - 2 * var(--space-3));gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-lg);color:var(--color-text);text-align:start;background:var(--color-surface);box-shadow:var(--shadow-lg);display:grid;overflow:auto}.dialog-header{gap:var(--space-3);display:flex}.dialog-icon{background:var(--color-brand-soft);width:2.5rem;height:2.5rem;color:var(--color-brand);border-radius:50%;flex:none;place-items:center;display:grid}.dialog-icon-danger{background:var(--color-danger-soft);color:var(--color-danger)}.dialog-icon svg{width:1.25rem;height:1.25rem}.dialog h2{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.dialog-description{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm)}.dialog-actions{gap:var(--space-2);flex-direction:column-reverse;display:flex}@media (width>=480px){.dialog-actions{flex-direction:row;justify-content:flex-end}}.toast-region{right:var(--space-4);bottom:var(--space-4);left:var(--space-4);z-index:90;justify-items:center;gap:var(--space-2);pointer-events:none;display:grid;position:fixed}@media (width>=768px){.toast-region{justify-items:end;left:auto}}.toast{align-items:flex-start;gap:var(--space-3);width:min(100%,24rem);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-text);color:var(--color-text-inverse);font-size:var(--text-sm);box-shadow:var(--shadow-lg);pointer-events:auto;display:flex}.toast svg{flex:none;width:1.15rem;height:1.15rem;margin-top:.05rem}.toast-success svg{color:#6ee7b7}.toast-error svg{color:#fca5a5}.toast-info svg{color:#a5b4fc}.toast-message{flex:1}.toast-close{border-radius:var(--radius-xs);color:#ffffffb3;cursor:pointer;background:0 0;border:0;place-items:center;width:1.75rem;height:1.75rem;margin:-.2rem -.4rem -.2rem 0;display:grid}.toast-close:hover{color:#fff;background:#ffffff1f}.kv{gap:var(--space-3);margin:0;display:grid}.kv div{gap:var(--space-3);font-size:var(--text-sm);grid-template-columns:minmax(7rem,40%) minmax(0,1fr);display:grid}.kv dt{color:var(--color-text-muted)}.kv dd{font-weight:var(--weight-medium);overflow-wrap:anywhere;margin:0}.ref-code{border-radius:var(--radius-xs);background:var(--color-surface-sunken);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:.8em;font-weight:var(--weight-semibold);letter-spacing:.06em;align-items:center;padding:.1rem .45rem;display:inline-flex}.copy-field{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-muted);align-items:stretch;min-width:0;display:flex;overflow:hidden}.copy-field a,.copy-field span{min-width:0;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;align-self:center;overflow:hidden}.form-section{gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--color-border);display:grid}.form-section-title{font-size:var(--text-base);font-weight:var(--weight-semibold)}.animation-picker{gap:var(--space-3);border:0;min-width:0;margin:0;padding:0;display:grid}.animation-picker legend{margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold);padding:0}.animation-picker .field-hint{align-items:flex-start;gap:var(--space-2);display:flex}.animation-picker .field-hint svg{flex:none;width:1rem;height:1rem;margin-top:.15rem}.animation-picker{container-type:inline-size}.animation-options{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}@container (width>=40rem){.animation-options{grid-template-columns:repeat(3,minmax(0,1fr))}}.animation-option{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;transition:border-color var(--duration-fast), box-shadow var(--duration-fast);grid-template-rows:1fr auto;display:grid;overflow:hidden}.animation-option:hover:not([data-locked]){border-color:var(--color-text-muted)}.animation-option[data-selected]{border-color:var(--color-selected-border);background:var(--color-selected-bg)}.animation-option:has(input:focus-visible){box-shadow:var(--focus-ring)}.animation-option-main{align-content:start;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-2);cursor:pointer;display:grid}@container (width<=39.99rem){.animation-option-main{grid-template-columns:minmax(6.5rem,8.5rem) minmax(0,1fr);align-items:center}}.animation-option[data-locked] .animation-option-main{cursor:default}.animation-option[data-locked]:not([data-selected]) .animation-option-main{opacity:.62}.animation-option-text strong{font-size:var(--text-base);font-weight:var(--weight-semibold);display:block}.animation-option-text small{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug);display:block}.animation-option-footer{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:3.25rem;padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface-muted);display:flex}.animation-option[data-selected] .animation-option-footer{border-top-color:var(--color-selected-border);background:var(--color-selected-bg)}.animation-option-state{align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);display:inline-flex}.animation-option-state.is-selectable{cursor:pointer}.animation-option-state.is-selectable:hover{color:var(--color-text)}.animation-option-state.is-selectable:hover .animation-option-radio{border-color:var(--color-text-muted)}.animation-option[data-selected] .animation-option-state{color:var(--color-brand-text);font-weight:var(--weight-semibold)}.animation-option-state svg{width:1rem;height:1rem}.animation-option-radio{border:2px solid var(--color-border-strong);border-radius:50%;width:1rem;height:1rem}.dialog-preview{gap:var(--space-4);width:min(100%,64rem)}.preview-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.stage.preview-stage{height:calc(clamp(14rem,38vh,21rem) + 9rem);min-height:0;padding:var(--space-4);border-radius:var(--radius-lg);place-items:center;display:grid;overflow:hidden}.dialog-preview{max-height:calc(100dvh - 2 * var(--space-4))}.preview-stage .winner-name{font-size:clamp(2rem,1.2rem + 3vw,3.75rem)}.preview-note{align-items:flex-start;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);display:flex}.preview-note svg{width:1rem;height:1rem;color:var(--color-info);flex:none;margin-top:.2rem}.dialog-details{padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-muted)}.draw-settings-list div{grid-template-columns:minmax(7rem,36%) minmax(0,1fr)}.readonly-field{align-items:baseline;gap:var(--space-1) var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.readonly-field span{color:var(--color-text-muted);font-weight:var(--weight-semibold)}.readonly-field small{color:var(--color-text-muted);font-size:var(--text-sm)}.app-shell{min-height:100dvh}.brand-mark{object-fit:contain;flex:none}.sidebar-brand{align-items:center;gap:var(--space-3);min-width:0;color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-bold);letter-spacing:-.01em;text-decoration:none;display:inline-flex}.sidebar-brand:hover{color:var(--color-text)}.topbar{z-index:40;height:var(--topbar-height);padding:0 var(--space-2) 0 var(--space-4);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);background:#ffffffeb;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.sidebar{display:none}.app-main{outline:none;min-width:0}.app-content{width:100%;max-width:var(--container-content);padding:var(--space-5) var(--space-4) var(--space-16);margin:0 auto}@media (width>=768px){.app-content{padding:var(--space-8) var(--space-8) var(--space-16)}}@media (width>=1024px){.topbar{display:none}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);display:grid}.sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);height:100dvh;display:block;position:sticky;top:0}.app-content{padding:var(--space-10) var(--space-10) var(--space-16)}}@media (width>=1600px){.app-content{max-width:var(--container-wide)}}.sidebar-inner{height:100%;padding:var(--space-5) var(--space-3);flex-direction:column;display:flex}.sidebar-inner>.sidebar-brand{padding:0 var(--space-2);margin-bottom:var(--space-6)}.sidebar-nav{align-content:start;gap:var(--space-1);flex:1;grid-template-columns:minmax(0,1fr);display:grid;overflow-y:auto}.sidebar-group{margin-top:var(--space-5)}.sidebar-group ul{grid-template-columns:minmax(0,1fr);gap:2px;margin:0;padding:0;list-style:none;display:grid}.sidebar-group-label{margin:0 var(--space-3) var(--space-2);color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase}.sidebar-link{align-items:center;gap:var(--space-3);min-width:0;min-height:2.5rem;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);text-decoration:none;display:flex}.sidebar-link svg{width:1.1rem;height:1.1rem;color:var(--color-text-muted);flex:none}.sidebar-link:hover{background:var(--color-surface-muted);color:var(--color-text)}.sidebar-link.active,.sidebar-link[aria-current=page]{background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:var(--weight-semibold)}.sidebar-link.active svg,.sidebar-link[aria-current=page] svg{color:var(--color-brand)}.sidebar-user{align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-5) var(--space-2) 0;border-top:1px solid var(--color-border);display:flex}.sidebar-user-text{flex:1;min-width:0;line-height:1.3;display:grid}.sidebar-user-text strong{font-size:var(--text-sm)}.sidebar-user-text small{color:var(--color-text-muted);font-size:var(--text-xs)}.avatar{background:var(--color-brand-soft-strong);width:2.25rem;height:2.25rem;color:var(--color-brand-text);font-size:var(--text-xs);font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.avatar-image{object-fit:contain;background:#fff;display:block}.drawer-backdrop{z-index:60;background:#0c0f1e66;position:fixed;inset:0}.drawer{background:var(--color-surface);width:min(86vw,19rem);height:100%;box-shadow:var(--shadow-lg);animation:drawer-in var(--duration-base) var(--ease-standard)}@keyframes drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.full-page-loading{min-height:100dvh;color:var(--color-text-muted);place-items:center;display:grid}.full-page-loading>div{align-items:center;gap:var(--space-3);display:flex}.org-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));display:grid}.org-card{gap:var(--space-4);padding:var(--space-5);color:inherit;transition:border-color var(--duration-fast), box-shadow var(--duration-fast), transform var(--duration-fast);text-decoration:none;display:grid}.org-card:hover{border-color:var(--color-brand-soft-strong);color:inherit;box-shadow:var(--shadow-md);transform:translateY(-1px)}.org-card-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.org-card-icon{border-radius:var(--radius-md);background:var(--color-brand-soft);width:2.75rem;height:2.75rem;color:var(--color-brand);place-items:center;display:grid}.org-card h2,.org-card h3{font-size:var(--text-md);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.org-card-footer{color:var(--color-text-muted);font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.org-card-footer svg{width:1rem;height:1rem}.onboarding-card{gap:var(--space-6);max-width:40rem;display:grid}.event-list{margin:0;padding:0;list-style:none;display:grid}.event-list>li+li{border-top:1px solid var(--color-border)}.event-row{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-4) var(--space-5);color:inherit;transition:background-color var(--duration-fast);grid-template-columns:minmax(0,1fr) auto;text-decoration:none;display:grid}.event-row:hover{background:var(--color-surface-muted);color:inherit}.event-row-main{gap:var(--space-1);min-width:0;display:grid}.event-row-name{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.event-row-meta{gap:var(--space-1) var(--space-3);color:var(--color-text-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.event-row-meta span{align-items:center;gap:var(--space-1);display:inline-flex}.event-row-meta svg{width:.9rem;height:.9rem}.event-row-side{align-items:center;gap:var(--space-3);display:flex}.event-row-side>svg{width:1.1rem;height:1.1rem;color:var(--color-text-muted)}@media (width<=479.98px){.event-row{grid-template-columns:minmax(0,1fr)}.event-row-side>svg{display:none}}.list-heading{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase}.list-heading+.event-list,.event-list+.list-heading{border-top:0}.archived-block{border-top:1px solid var(--color-border)}.member-list{margin:0;padding:0;list-style:none;display:grid}.member-list li{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;display:flex}.member-list li+li{border-top:1px solid var(--color-border)}.member-list .member-text{flex:1;min-width:0;line-height:1.35;display:grid}.member-list .member-text small{color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.inline-form{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.inline-form .field{flex:14rem}.overview-grid{gap:var(--space-6);display:grid}@media (width>=1024px){.overview-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}.next-step{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-brand-soft-strong);border-radius:var(--radius-lg);background:radial-gradient(28rem 12rem at 100% 0%, rgb(var(--pal-brand-rgb) / 9%), transparent 70%), var(--color-surface);display:grid}@media (width>=768px){.next-step{padding:var(--space-6);grid-template-columns:minmax(0,1fr) auto;align-items:center}}.next-step-kicker{color:var(--color-brand-text);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.next-step h2{margin-top:var(--space-1);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.next-step p{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--text-sm)}.next-step .page-actions{justify-content:flex-start}.lifecycle{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.lifecycle li{align-content:start;justify-items:center;gap:var(--space-2);min-width:0;padding:0 var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-snug);text-align:center;overflow-wrap:anywhere;display:grid;position:relative}.lifecycle li+li:before{content:"";background:var(--color-border-strong);border-radius:1px;height:2px;position:absolute;top:.75rem;left:calc(.95rem - 50%);right:calc(50% + .95rem)}.lifecycle-dot{z-index:1;border:1px solid var(--color-border-strong);background:var(--color-surface);width:1.5rem;height:1.5rem;font-size:var(--text-xs);border-radius:50%;place-items:center;display:grid;position:relative}.lifecycle-dot svg{width:.85rem;height:.85rem}.lifecycle li[data-state=done]{color:var(--color-text-secondary)}.lifecycle li[data-state=done] .lifecycle-dot{border-color:var(--color-success);background:var(--color-success);color:#fff}.lifecycle li[data-state=current]{color:var(--color-brand-text);font-weight:var(--weight-semibold)}.lifecycle li[data-state=current] .lifecycle-dot{border-color:var(--color-brand);background:var(--color-brand);color:#fff}.qr-panel{justify-items:center;gap:var(--space-4);text-align:center;display:grid}.qr-frame{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;line-height:0;display:inline-grid}.qr-frame svg{width:min(100%,11rem);height:auto}.qr-panel .copy-field{width:100%}.link-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.link-tile{align-items:center;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);transition:border-color var(--duration-fast), background-color var(--duration-fast);text-decoration:none;display:flex}.link-tile:hover{border-color:var(--color-brand-soft-strong);background:var(--color-brand-soft);color:var(--color-brand-text)}.link-tile>svg:first-child{width:1.15rem;height:1.15rem;color:var(--color-brand)}.link-tile>span{flex:1;min-width:0;display:grid}.link-tile small{color:var(--color-text-muted);font-weight:var(--weight-regular,400)}.link-tile>svg:last-child{width:1rem;height:1rem;color:var(--color-text-muted)}.gift-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));margin:0;padding:0;list-style:none;display:grid}.gift-card{align-content:start;gap:var(--space-3);padding:var(--space-4);display:grid}.gift-card-top{align-items:flex-start;gap:var(--space-3);display:flex}.gift-card-icon{border-radius:var(--radius-sm);background:var(--color-celebrate-soft);width:2.5rem;height:2.5rem;color:var(--color-celebrate-strong);flex:none;place-items:center;display:grid}.gift-card-icon svg{width:1.2rem;height:1.2rem}.gift-card h3{font-size:var(--text-base);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.gift-card-order{color:var(--color-text-muted);font-size:var(--text-xs)}.progress{border-radius:var(--radius-pill);background:var(--color-surface-sunken);height:.4rem;overflow:hidden}.progress>span{border-radius:inherit;background:var(--color-celebrate);height:100%;display:block}.gift-card-counts{justify-content:space-between;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);display:flex}.gift-card-actions{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:flex}.readonly-note{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);display:inline-flex}.readonly-note svg{width:1rem;height:1rem}.participant-name{align-items:center;gap:var(--space-3);min-width:0;display:flex}.participant-name .avatar{background:var(--color-surface-sunken);width:2rem;height:2rem;color:var(--color-text-secondary)}.is-disqualified .participant-name strong{color:var(--color-text-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--color-border-strong);-webkit-text-decoration-color:var(--color-border-strong);-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong)}.row-edit{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-muted);display:grid}.danger-zone{gap:var(--space-4);display:grid}.danger-row{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.danger-row+.danger-row{padding-top:var(--space-4);border-top:1px solid var(--color-border)}.danger-row h3{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.danger-row p{max-width:34rem;margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm)}.results-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));display:grid}.results-gift{align-content:start;gap:var(--space-3);padding:var(--space-5);display:grid}.results-gift h2{font-size:var(--text-md);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.winner-list{gap:var(--space-2);counter-reset:winner;margin:0;padding:0;list-style:none;display:grid}.winner-list li{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-muted);counter-increment:winner;display:flex}.winner-list li:before{content:counter(winner);border:1px solid var(--color-border);background:var(--color-surface);width:1.6rem;height:1.6rem;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.winner-list strong{overflow-wrap:anywhere;flex:1;min-width:0}.results-hero{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-5) var(--space-6);border:1px solid var(--color-success);flex-wrap:wrap;display:flex}@supports (color:color-mix(in lab, red, red)){.results-hero{border:1px solid color-mix(in srgb, var(--color-success) 25%, transparent)}}.results-hero{border-radius:var(--radius-lg);background:linear-gradient(120deg, var(--color-success-soft), #f6fcf9)}.results-hero-icon{background:var(--color-success);color:#fff;border-radius:50%;place-items:center;width:3rem;height:3rem;display:grid}.results-hero h2{font-size:var(--text-lg);font-weight:var(--weight-bold)}.results-hero p{color:var(--color-text-secondary)}.audit-timeline{margin:0;padding:0;list-style:none;display:grid}.audit-item{gap:var(--space-3);padding:var(--space-4) var(--space-5);grid-template-columns:auto minmax(0,1fr);display:grid}.audit-item+.audit-item{border-top:1px solid var(--color-border)}.audit-icon{background:var(--color-surface-sunken);width:2.25rem;height:2.25rem;color:var(--color-text-secondary);border-radius:50%;place-items:center;display:grid}.audit-icon svg{width:1rem;height:1rem}.audit-main{gap:var(--space-1);min-width:0;display:grid}.audit-title-row{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.audit-title-row strong{font-weight:var(--weight-semibold)}.audit-title-row time{color:var(--color-text-muted);font-size:var(--text-sm);white-space:nowrap}.audit-actor{color:var(--color-text-secondary);font-size:var(--text-sm)}.audit-summary{color:var(--color-text-secondary);font-size:var(--text-sm);overflow-wrap:anywhere}.section-gap{margin-bottom:var(--space-6)}.org-grid{margin:0;padding:0;list-style:none}.list-heading{align-items:center;gap:var(--space-2);display:flex}.list-heading svg{width:.8rem;height:.8rem}@media (width>=768px){.check-align-end{align-self:end}}.width-form{width:100%;max-width:var(--width-form)}.width-prose{max-width:var(--width-prose)}.page-top{top:var(--topbar-height);z-index:30;margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-4)) var(--space-6);padding:var(--space-5) var(--space-4) 0;background:var(--color-canvas);position:sticky}.page-top>:last-child{margin-bottom:0}.page-top:not(:has(.tabs,.segmented)){padding-bottom:var(--space-4)}@media (width>=768px){.page-top{margin:calc(-1 * var(--space-8)) calc(-1 * var(--space-8)) var(--space-6);padding:var(--space-8) var(--space-8) 0}}@media (width>=1024px){.app-shell .page-top{margin:calc(-1 * var(--shell-gap,var(--space-6))) 0 var(--space-6);padding:var(--shell-gap,var(--space-6)) 0 0;top:0}}@media (height<=599px){.page-top{position:static}.new-event-aside,.gifts-form-panel>.card-body{top:var(--shell-gap,var(--space-6))}}.public-page{background:radial-gradient(120% 60% at 50% 0%, var(--pal-tint-250) 0%, transparent 70%), var(--color-canvas);flex-direction:column;min-height:100dvh;display:flex}.public-main{width:100%;max-width:var(--container-narrow);padding:var(--space-8) var(--space-4) var(--space-6);flex:1;align-content:start;margin:0 auto;display:grid}@media (width>=768px){.public-main{padding-top:var(--space-16)}}.public-hero{justify-items:center;gap:var(--space-2);margin-bottom:var(--space-6);text-align:center;display:grid}.public-hero-loading{justify-items:center;gap:var(--space-3);width:100%;display:grid}.public-hero h1{font-size:clamp(1.75rem,1.35rem + 2vw,2.5rem);font-weight:var(--weight-heavy);letter-spacing:-.03em;text-wrap:balance}.public-count{align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);box-shadow:var(--shadow-xs);background:#fffc;display:inline-flex}.public-count svg{width:1rem;height:1rem;color:var(--color-brand)}.public-card{padding:var(--space-6) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-md)}@media (width>=480px){.public-card{padding:var(--space-8)}}.public-intro{gap:var(--space-1);display:grid}.public-intro h2{font-size:var(--text-xl);font-weight:var(--weight-bold)}.public-intro p,.public-help{color:var(--color-text-secondary);font-size:var(--text-sm)}.public-help{text-align:center}.public-pass-timer{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-sm);display:flex}.public-pass-timer svg{flex:none;width:1.1em;height:1.1em}.public-pass-timer strong{font-variant-numeric:tabular-nums}.public-input{min-height:3.25rem;font-size:1.0625rem}.public-closed{justify-items:center;gap:var(--space-2);padding:var(--space-4) 0;text-align:center;display:grid}.public-closed-icon{width:3.5rem;height:3.5rem;margin-bottom:var(--space-2);background:var(--color-surface-sunken);color:var(--color-text-secondary);border-radius:50%;place-items:center;display:grid}.public-closed h2{font-size:var(--text-xl);font-weight:var(--weight-bold)}.public-closed p{color:var(--color-text-secondary)}.public-success{justify-items:center;gap:var(--space-4);text-align:center;display:grid}.public-success h2{font-size:clamp(1.4rem,1.2rem + 1vw,1.75rem);font-weight:var(--weight-heavy);letter-spacing:-.02em;text-wrap:balance}.public-success-name{margin-top:calc(-1 * var(--space-2));color:var(--color-text-secondary);font-weight:var(--weight-semibold)}.public-success-badge{place-items:center;display:grid;position:relative}.public-success-icon{background:var(--color-success);color:#fff;width:4.5rem;height:4.5rem;box-shadow:0 0 0 10px var(--color-success-soft);border-radius:50%;place-items:center;display:grid}.public-success-icon svg{stroke-width:3px;width:2.25rem;height:2.25rem}.ticket{gap:var(--space-1);width:min(100%,18rem);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);background:var(--color-celebrate-soft);border:2px dashed #e8c774;display:grid;position:relative}.ticket-label{color:var(--color-celebrate-strong);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.ticket-code{color:#3b2500;font-family:var(--font-mono);font-size:clamp(1.75rem,1.4rem + 2vw,2.25rem);font-weight:var(--weight-heavy);letter-spacing:.14em;font-variant-numeric:tabular-nums}.confetti{pointer-events:none;position:absolute;inset:50% auto auto 50%}.confetti i{background:hsl(calc(var(--i) * 47deg) 85% 60%);opacity:0;transform-origin:50%;width:.5rem;height:.8rem;animation:confetti-burst 1.1s cubic-bezier(.15, .7, .3, 1) calc(var(--i) * 18ms) forwards;--angle:calc(var(--i) * 25.7deg);border-radius:2px;position:absolute}@keyframes confetti-burst{0%{opacity:1;transform:rotate(var(--angle)) translateY(0) rotate(0deg)}to{opacity:0;transform:rotate(var(--angle)) translateY(-5.5rem) rotate(260deg)}}.public-footer{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);display:flex}.stage{min-height:100dvh;color:var(--stage-text);background:radial-gradient(70rem 40rem at 85% -15%, rgb(var(--pal-brand-glow-rgb) / 22%), transparent 65%), radial-gradient(50rem 32rem at -10% 110%, #ffcf5c17, transparent 60%), var(--stage-bg);flex-direction:column;display:flex;position:relative;overflow-x:hidden}.stage :focus-visible{box-shadow:0 0 0 3px rgb(var(--pal-brand-pink-rgb) / 60%)}.stage a{color:var(--stage-accent)}.stage-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--stage-border);flex-wrap:wrap;display:flex}@media (width>=768px){.stage-topbar{padding:var(--space-4) var(--space-8)}}.stage-title{flex:16rem;gap:.1rem;min-width:0;display:grid}.stage-eyebrow{color:var(--stage-accent);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.12em;text-transform:uppercase;overflow-wrap:anywhere}.stage-title h1{font-size:clamp(1.15rem,.95rem + .8vw,1.5rem);font-weight:var(--weight-bold);overflow-wrap:anywhere}.stage-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.btn-stage{border-color:var(--stage-border-strong);background:var(--stage-surface);color:var(--stage-text)}.btn-stage:hover:not(:disabled){background:var(--stage-surface-strong);color:#fff}.btn-stage-quiet{color:var(--stage-text-secondary);background:0 0}.btn-stage-quiet:hover:not(:disabled){background:var(--stage-surface);color:#fff}.btn-stage-danger{color:var(--stage-danger);background:0 0}.btn-stage-danger:hover:not(:disabled){color:#ffb3bd;background:#ff8a981f}.stage-badge{align-items:center;gap:var(--space-2);min-height:1.75rem;padding:0 var(--space-3);border:1px solid var(--stage-border);border-radius:var(--radius-pill);background:var(--stage-surface);color:var(--stage-text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold);display:inline-flex}.stage-badge svg{width:.9rem;height:.9rem}.stage-panel{border:1px solid var(--stage-border);border-radius:var(--radius-lg);background:var(--stage-surface)}.stage-muted{color:var(--stage-text-muted)}.stage-message{justify-items:center;gap:var(--space-3);max-width:36rem;margin:var(--space-12) auto;padding:var(--space-8);text-align:center;display:grid}.stage-message h2{font-size:var(--text-xl);font-weight:var(--weight-bold)}.stage-message p{color:var(--stage-text-secondary)}.stage-message-icon{background:var(--stage-accent-soft);width:3.5rem;height:3.5rem;color:var(--stage-accent);border-radius:50%;place-items:center;display:grid}.stage-alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:#ffd3d9;font-size:var(--text-sm);text-align:left;background:#ff8a981a;border:1px solid #ff8a9859;display:flex}.stage-alert svg{width:1.1rem;height:1.1rem;color:var(--stage-danger);flex:none;margin-top:.1rem}.qr-card{justify-items:center;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-xl);color:var(--color-text);text-align:center;background:#fff;display:grid;box-shadow:0 30px 80px #00000059}.qr-card svg{width:100%;max-width:var(--qr-size,18rem);height:auto;display:block}.qr-card-pending{width:100%;max-width:var(--qr-size,var(--qr-pending-size,18rem));aspect-ratio:1;place-content:center;justify-items:center;gap:var(--space-2);border:2px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);font-weight:var(--weight-semibold);display:grid}.qr-card .qr-card-pending svg,.viewer .qr-card .qr-card-pending svg{width:1.75rem;height:1.75rem}@media (prefers-reduced-motion:no-preference){.qr-card-pending svg{animation:1.4s linear infinite qr-pending-spin}}@keyframes qr-pending-spin{to{transform:rotate(360deg)}}.qr-card-instruction{align-items:center;gap:var(--space-2);font-size:clamp(1rem,.85rem + .6vw,1.35rem);font-weight:var(--weight-bold);display:flex}.qr-card-instruction svg{width:1.4em;height:1.4em;color:var(--color-brand)}.qr-rotation-bar{width:100%;max-width:var(--qr-size,18rem);height:.375rem;margin-top:calc(var(--space-2) * -1);background:var(--color-border);border-radius:999px;display:block;overflow:hidden}.qr-rotation-bar i{border-radius:inherit;background:var(--color-brand);transform-origin:0;height:100%;animation-name:qr-rotation-drain;animation-timing-function:linear;animation-fill-mode:both;display:block}@keyframes qr-rotation-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.qr-rotation-bar{display:none}}@media (prefers-reduced-motion:no-preference){.qr-card[data-qr-mode=dynamic] svg[data-testid=registration-qr]{animation:.45s ease-out qr-code-in}}@keyframes qr-code-in{0%{opacity:.4}to{opacity:1}}.qr-card-rotation{color:var(--color-text-muted);font-size:var(--text-sm)}.qr-card-url{max-width:100%;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-sm);overflow-wrap:anywhere}.count-display{text-align:center;justify-items:center;gap:0;display:grid}.count-display strong{font-size:clamp(3rem,2rem + 4vw,6rem);font-weight:var(--weight-heavy);font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.count-display span{color:var(--stage-text-secondary);font-size:clamp(1rem,.85rem + .6vw,1.4rem);font-weight:var(--weight-semibold)}.registration-closed-pill{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--stage-surface-strong);color:var(--stage-text-secondary);font-size:clamp(1rem,.9rem + .5vw,1.35rem);font-weight:var(--weight-semibold);display:inline-flex}.registration-stage{align-content:start;gap:var(--space-8);width:100%;max-width:120rem;padding:var(--space-6) var(--space-4) var(--space-10);flex:1;margin:0 auto;display:grid}@media (width>=768px){.registration-stage{padding:var(--space-8) var(--space-8) var(--space-10)}}@media (width>=1024px){.registration-stage{align-items:start;gap:var(--space-10);grid-template-columns:minmax(18rem,26rem) minmax(0,1fr)}.registration-aside{top:var(--space-8);position:sticky}}.registration-aside{justify-items:center;gap:var(--space-6);display:grid}.registration-aside .qr-card{width:min(100%,24rem)}.roster-panel{align-content:start;gap:var(--space-4);min-width:0;display:grid}.roster-heading{justify-content:space-between;align-items:baseline;gap:var(--space-3);color:var(--stage-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase;display:flex}.roster{gap:var(--space-3);grid-template-columns:repeat(auto-fill, minmax(var(--roster-min,14rem), 1fr));margin:0;padding:0;list-style:none;display:grid}.roster li{min-width:0;min-height:var(--roster-height,3.5rem);padding:0 var(--space-4);border:1px solid var(--stage-border);border-radius:var(--radius-md);background:var(--stage-surface);font-size:var(--roster-font,clamp(1.1rem, .9rem + .7vw, 1.6rem));font-weight:var(--weight-semibold);align-items:center;line-height:1.2;display:flex}.roster li>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roster[data-density=comfortable]{--roster-min:16rem;--roster-height:4.5rem;--roster-font:clamp(1.25rem, 1rem + 1vw, 2rem)}.roster[data-density=compact]{--roster-min:12.5rem;--roster-height:3.25rem;--roster-font:clamp(1rem, .85rem + .5vw, 1.3rem)}.roster[data-density=dense]{--roster-min:11rem;--roster-height:2.75rem;--roster-font:clamp(.95rem, .85rem + .35vw, 1.15rem);gap:var(--space-2)}.roster li.is-new{background:var(--stage-gold-soft);color:#fff4d6;animation:roster-new 5s var(--ease-standard) forwards;border-color:#ffcf5cb3}@keyframes roster-new{0%{transform:scale(.94);box-shadow:0 0 #ffcf5c99}12%{transform:scale(1.02);box-shadow:0 0 0 .5rem #ffcf5c00}20%{transform:scale(1)}to{transform:scale(1)}}.roster-overflow{color:var(--stage-text-muted);font-size:clamp(1rem,.85rem + .5vw,1.3rem);font-weight:var(--weight-semibold);text-align:center}.roster-empty{justify-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-4);border:1px dashed var(--stage-border-strong);border-radius:var(--radius-lg);color:var(--stage-text-secondary);text-align:center;font-size:clamp(1.1rem,.9rem + .6vw,1.5rem);display:grid}.roster-empty svg{width:2.5rem;height:2.5rem;color:var(--stage-accent)}.draw-layout{gap:var(--space-4);width:100%;max-width:120rem;padding:var(--space-4);flex:1;margin:0 auto;display:grid}@media (width>=768px){.draw-layout{gap:var(--space-6);padding:var(--space-6) var(--space-8)}}@media (width>=1024px){.draw-layout{grid-template-columns:minmax(15rem,19rem) minmax(0,1fr) minmax(15rem,20rem);align-items:stretch}}.draw-rail{align-content:start;gap:var(--space-3);min-width:0;padding:var(--space-4);display:grid}.draw-rail h2{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--stage-text-secondary);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;display:flex}.draw-rail-meta{color:var(--stage-text-muted);font-size:var(--text-sm)}.gift-picker{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}@media (width>=480px) and (width<=1023.98px){.gift-picker{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr))}}.gift-option{gap:var(--space-1);width:100%;min-height:var(--touch-target);padding:var(--space-3) var(--space-4);border:1px solid var(--stage-border);border-radius:var(--radius-md);background:var(--stage-surface);color:var(--stage-text);text-align:left;cursor:pointer;transition:border-color var(--duration-fast), background-color var(--duration-fast);display:grid}.gift-option:hover:not(:disabled){border-color:var(--stage-border-strong);background:var(--stage-surface-strong)}.gift-option.is-selected{border-color:var(--stage-accent);background:var(--stage-accent-soft);box-shadow:inset 0 0 0 1px var(--stage-accent)}.gift-option:disabled{cursor:not-allowed;opacity:.55}.gift-option strong{font-size:var(--text-base);overflow-wrap:anywhere}.gift-option-meta{justify-content:space-between;gap:var(--space-1) var(--space-3);color:var(--stage-text-secondary);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.gift-option-meta small{font-size:var(--text-sm)}.gift-option .stage-progress{margin-top:var(--space-1)}.stage-progress{border-radius:var(--radius-pill);background:#ffffff1a;height:.3rem;overflow:hidden}.stage-progress>span{border-radius:inherit;background:var(--stage-gold);height:100%;display:block}.draw-center{min-width:0;min-height:24rem;padding:var(--space-8) var(--space-5);text-align:center;place-items:center;display:grid;position:relative;overflow:hidden}@media (width<=1023.98px){.draw-center{order:-1;min-height:18rem}}@media (width>=1024px) and (height>=600px){.draw-screen{height:100dvh;min-height:0}.draw-screen .draw-layout{grid-template-rows:minmax(0,1fr);min-height:0}.draw-screen .draw-rail{scrollbar-width:thin;scrollbar-color:#fff3 transparent;overflow-y:auto}.draw-center{min-height:0;overflow-y:auto}}.draw-center-inner{justify-items:center;gap:var(--space-4);width:100%;max-width:52rem;display:grid}.draw-kicker{color:var(--stage-accent);font-size:clamp(.85rem,.75rem + .4vw,1.1rem);font-weight:var(--weight-bold);letter-spacing:.16em;text-transform:uppercase}.draw-gift-title{font-size:clamp(2rem,1.2rem + 3.6vw,4.5rem);font-weight:var(--weight-heavy);letter-spacing:-.035em;text-wrap:balance;line-height:1.05}.draw-gift-progress{justify-content:center;gap:var(--space-2) var(--space-4);color:var(--stage-text-secondary);font-size:clamp(1rem,.9rem + .4vw,1.25rem);font-weight:var(--weight-semibold);flex-wrap:wrap;display:flex}.draw-cta{min-height:4rem;margin-top:var(--space-4);padding:0 var(--space-10);border-radius:var(--radius-pill);font-size:clamp(1.1rem,1rem + .4vw,1.35rem)}.draw-cta svg{width:1.4rem;height:1.4rem}.draw-hint{justify-items:center;gap:var(--space-3);color:var(--stage-text-secondary);font-size:clamp(1.1rem,.95rem + .6vw,1.5rem);display:grid}.draw-hint svg{width:3rem;height:3rem;color:var(--stage-accent)}.draw-requesting{justify-items:center;gap:var(--space-4);color:var(--stage-text-secondary);font-size:var(--text-lg);display:grid}.draw-requesting .spinner{width:3rem;height:3rem;color:var(--stage-accent);border-width:3px}.winner-reveal{justify-items:center;gap:var(--space-3);width:100%;display:grid;position:relative}.winner-reveal:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#ffcf5c38,#0000);position:absolute;inset:-30% -10%}.winner-label{align-items:center;gap:var(--space-2);color:var(--stage-gold);font-size:clamp(1rem,.85rem + .6vw,1.5rem);font-weight:var(--weight-bold);letter-spacing:.18em;text-transform:uppercase;display:inline-flex}.winner-label svg{width:1.3em;height:1.3em}.winner-name{color:#fff;font-size:clamp(2.5rem,1.2rem + 6vw,7rem);font-weight:var(--weight-heavy);letter-spacing:-.04em;text-shadow:0 0 60px #ffcf5c59;text-wrap:balance;overflow-wrap:anywhere;line-height:1.02}.winner-gift{color:var(--stage-text-secondary);font-size:clamp(1.1rem,.9rem + 1vw,2rem);font-weight:var(--weight-semibold)}.winner-code{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--stage-surface-strong);color:var(--stage-text-secondary);font-size:var(--text-sm);display:inline-flex}.winner-code strong{color:#fff;font-family:var(--font-mono);letter-spacing:.1em}.stage-confetti{pointer-events:none;position:absolute;top:38%;left:50%}.stage-confetti i{background:hsl(calc(40deg + var(--i) * 37deg) 90% 65%);opacity:0;width:.55rem;height:.9rem;animation:stage-confetti 1.6s cubic-bezier(.1, .65, .3, 1) calc(var(--i) * 20ms) forwards;--angle:calc(var(--i) * 20deg);border-radius:2px;position:absolute}@keyframes stage-confetti{0%{opacity:1;transform:rotate(var(--angle)) translateY(0) rotate(0deg)}to{opacity:0;transform:rotate(var(--angle)) translateY(-14rem) rotate(320deg)}}.admin-actions{justify-items:center;gap:var(--space-3);width:100%;margin-top:var(--space-6);display:grid}.admin-actions-secondary{justify-content:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--stage-border);flex-wrap:wrap;display:flex}.void-panel{gap:var(--space-3);width:min(100%,28rem);margin-top:var(--space-4);padding:var(--space-5);border:1px solid var(--stage-border-strong);border-radius:var(--radius-lg);background:var(--stage-bg-raised);text-align:left;display:grid}.void-panel h3{font-size:var(--text-base);font-weight:var(--weight-bold)}.void-panel p{color:var(--stage-text-secondary);font-size:var(--text-sm)}.void-panel .field-label{color:var(--stage-text)}.void-panel .select,.void-panel .input{border-color:var(--stage-border-strong);background-color:var(--stage-bg);color:var(--stage-text)}.retry-panel,.completion-panel{justify-items:center;gap:var(--space-3);width:min(100%,32rem);padding:var(--space-6);border:1px solid var(--stage-border-strong);border-radius:var(--radius-lg);background:var(--stage-bg-raised);display:grid}.retry-panel h2,.completion-panel h2{font-size:var(--text-xl);font-weight:var(--weight-bold)}.retry-panel p,.completion-panel p{color:var(--stage-text-secondary)}.retry-panel>svg{width:2.5rem;height:2.5rem;color:var(--stage-gold)}.completion-panel{margin-top:var(--space-6);border-color:#ffcf5c66}.stage-winner-groups{gap:var(--space-4);display:grid}.stage-winner-group h3{margin-bottom:var(--space-2);color:var(--stage-text);font-size:var(--text-sm);font-weight:var(--weight-bold);overflow-wrap:anywhere}.stage-winner-list{gap:var(--space-1);counter-reset:stage-winner;margin:0;padding:0;list-style:none;display:grid}.stage-winner-list li{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--stage-surface);font-size:var(--text-sm);counter-increment:stage-winner;overflow-wrap:anywhere;display:flex}.stage-winner-list li:before{content:counter(stage-winner);background:var(--stage-gold-soft);width:1.4rem;height:1.4rem;color:var(--stage-gold);font-size:var(--text-xs);font-weight:var(--weight-bold);border-radius:50%;flex:none;place-items:center;display:grid}.viewer{padding:0}.viewer-header{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-6);flex-wrap:wrap;padding:clamp(1rem,.5rem + 1.5vw,2.5rem) clamp(1rem,.5rem + 3vw,4rem) 0;display:flex}.viewer-header p{color:var(--stage-accent);font-size:clamp(.8rem,.6rem + .6vw,1.25rem);font-weight:var(--weight-bold);letter-spacing:.14em;text-transform:uppercase;overflow-wrap:anywhere}.viewer-header h1{font-size:clamp(1.5rem,.9rem + 2.4vw,3.5rem);font-weight:var(--weight-heavy);letter-spacing:-.03em;overflow-wrap:anywhere;line-height:1.05}.viewer-body{flex:1;align-items:center;width:100%;max-width:140rem;margin:0 auto;padding:clamp(1rem,.5rem + 2vw,3rem) clamp(1rem,.5rem + 3vw,4rem);display:grid}.viewer-center{text-align:center;justify-items:center;gap:clamp(.75rem,.5rem + 1vw,2rem);display:grid}.viewer-notice h2{font-size:clamp(2rem,1.2rem + 3vw,4.5rem);font-weight:var(--weight-heavy);letter-spacing:-.03em;text-wrap:balance}.viewer-notice-icon{background:var(--stage-accent-soft);width:clamp(4rem,3rem + 3vw,7rem);height:clamp(4rem,3rem + 3vw,7rem);color:var(--stage-accent);border-radius:50%;place-items:center;display:grid}.viewer-notice-icon svg{width:50%;height:50%}.viewer-registration{align-items:start;gap:clamp(1.5rem,1rem + 2vw,4rem);display:grid}@media (width>=900px){.viewer-registration{grid-template-columns:minmax(18rem,30%) minmax(0,1fr)}}.viewer-registration .registration-aside{--qr-size:28rem}@media (width>=900px){.viewer-registration{grid-template-columns:minmax(20rem,32%) minmax(0,1fr)}.viewer-registration .registration-aside .qr-card{width:min(100%,30rem)}}.viewer .roster li{padding:var(--space-2) var(--space-4)}.viewer .roster li>span,.live-screen .roster li>span{white-space:normal;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}@media (width>=900px) and (height>=560px) and (orientation:landscape){.viewer,.live-screen{height:100dvh;min-height:0;overflow:hidden}.viewer .viewer-body{align-items:stretch;min-height:0}.viewer .viewer-body>.viewer-center{align-self:center}.viewer-registration,.live-screen .registration-stage{grid-template-rows:minmax(0,1fr);height:100%;min-height:0}.live-screen .registration-stage{flex:1}.viewer-registration .registration-aside,.live-screen .registration-aside{align-self:center;position:static}.viewer-registration .roster-panel,.live-screen .roster-panel{grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(#000 82%,#0000);mask-image:linear-gradient(#000 82%,#0000)}.viewer-registration .roster,.live-screen .roster{align-content:start;overflow:hidden}}.viewer-results-title{margin-bottom:clamp(.5rem,.25rem + 1vw,1.5rem)}.viewer .viewer-result-card h2{font-size:clamp(1.25rem,.8rem + 1.3vw,2.6rem)}.viewer .viewer-result-card .stage-winner-list{gap:var(--space-2)}.viewer .viewer-result-card .stage-winner-list li{padding:clamp(.5rem,.3rem + .5vw,1rem) clamp(.75rem,.5rem + .6vw,1.25rem);font-size:clamp(1.1rem,.6rem + 1.1vw,2.2rem)}.viewer .viewer-result-card .stage-winner-list li:before{width:1.6em;height:1.6em;font-size:.65em}.viewer-ready-title{font-size:clamp(2.25rem,1.2rem + 4.5vw,6.5rem);font-weight:var(--weight-heavy);letter-spacing:-.04em;text-wrap:balance;overflow-wrap:anywhere;line-height:1.02}.viewer-waiting{font-size:clamp(1.75rem,1rem + 3vw,4rem);font-weight:var(--weight-bold);letter-spacing:-.02em}.viewer-waiting-dots{gap:.6rem;display:inline-flex}.viewer-waiting-dots i{background:var(--stage-accent);border-radius:50%;width:.8rem;height:.8rem;animation:1.4s ease-in-out infinite waiting-dot}.viewer-waiting-dots i:nth-child(2){animation-delay:.16s}.viewer-waiting-dots i:nth-child(3){animation-delay:.32s}@keyframes waiting-dot{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.viewer-progress{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);background:var(--stage-surface-strong);color:var(--stage-text-secondary);font-size:clamp(1rem,.8rem + .8vw,1.75rem);font-weight:var(--weight-semibold);display:inline-flex}.viewer-supporting{width:min(100%,64rem);margin-top:clamp(1rem,.5rem + 2vw,3rem)}.viewer-supporting h3{margin-bottom:var(--space-3);color:var(--stage-text-muted);font-size:clamp(.8rem,.7rem + .4vw,1.1rem);font-weight:var(--weight-bold);letter-spacing:.12em;text-transform:uppercase}.viewer-chips{justify-content:center;gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.viewer-chips li{padding:var(--space-2) var(--space-4);border:1px solid var(--stage-border);border-radius:var(--radius-pill);background:var(--stage-surface);font-size:clamp(.95rem,.8rem + .5vw,1.4rem);font-weight:var(--weight-semibold)}.viewer-results-title{font-size:clamp(2.25rem,1.2rem + 4vw,6rem);font-weight:var(--weight-heavy);letter-spacing:-.04em}.viewer-results{text-align:left;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:clamp(.75rem,.5rem + 1vw,1.75rem);width:100%;display:grid}@media (width>=900px) and (height>=560px) and (orientation:landscape){.viewer .viewer-body-completed{grid-template-rows:minmax(0,1fr)}.viewer .viewer-body-completed>.viewer-completed{flex-direction:column;justify-content:center;align-self:stretch;align-items:center;min-width:0;min-height:0;display:flex}.viewer-completed .winner-label,.viewer-completed .viewer-results-title{flex:none}.viewer-completed .viewer-results{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pal-line-400) transparent;flex:0 auto;align-content:start;min-width:0;min-height:0;overflow-y:auto}.viewer .viewer-body-selected-gift{grid-template-rows:minmax(0,1fr)}.viewer .viewer-body-selected-gift>.viewer-selected-gift{flex-direction:column;justify-content:center;align-self:stretch;align-items:center;min-width:0;min-height:0;display:flex}.viewer-selected-gift>*{flex:none}.viewer-selected-gift>.viewer-supporting{flex-direction:column;flex:0 auto;min-height:min(10rem,24vh);display:flex}.viewer-selected-gift .viewer-supporting h3{flex:none}.viewer-selected-gift .viewer-chips{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pal-line-400) transparent;flex:0 auto;align-content:flex-start;min-width:0;min-height:0;padding:2px;overflow:hidden auto}.viewer-selected-gift .viewer-chips li{overflow-wrap:anywhere;max-width:100%}}.viewer-result-card{align-content:start;gap:var(--space-3);padding:clamp(1rem,.75rem + 1vw,2rem);display:grid}.viewer-result-card h2{align-items:center;gap:var(--space-2);color:var(--stage-gold);font-size:clamp(1.1rem,.9rem + .8vw,1.9rem);font-weight:var(--weight-bold);overflow-wrap:anywhere;display:flex}.viewer-result-card h2 svg{flex:none;width:1em;height:1em}.viewer-result-card .stage-winner-list li{font-size:clamp(1rem,.85rem + .6vw,1.6rem);font-weight:var(--weight-semibold)}.draw-gift-bar{width:min(100%,22rem)}.completion-icon{width:2.25rem;height:2.25rem;color:var(--stage-gold)}.viewer{--proj-caption:clamp(1.125rem, .45rem + 1.25vw, 3.5rem);--proj-body:clamp(1.375rem, .5rem + 1.7vw, 4.25rem);--proj-heading:clamp(1.5rem, .6rem + 2.6vw, 6rem);--proj-title:clamp(2rem, .75rem + 3vw, 7.5rem);--proj-display:clamp(2.5rem, 1rem + 4.6vw, 11rem);--proj-hero:clamp(3rem, 1rem + 8vw, 18rem)}.viewer .viewer-header p,.viewer .roster-heading,.viewer .draw-kicker,.viewer .viewer-supporting h3,.viewer .reveal-kicker{font-size:var(--proj-caption)}.viewer .viewer-header h1{font-size:var(--proj-heading)}.viewer .reveal-gift,.viewer .winner-label,.viewer .winner-gift,.viewer .viewer-progress,.viewer .viewer-center>.stage-muted,.viewer .viewer-notice .stage-muted,.viewer .viewer-chips li,.viewer .count-display span,.viewer .qr-card-instruction,.viewer .registration-closed-pill,.viewer .viewer-result-card h2{font-size:var(--proj-body)}.viewer .viewer-result-card .stage-winner-list li{font-size:clamp(1.25rem,.4rem + 1.5vw,3.75rem)}.viewer .viewer-notice h2,.viewer .viewer-waiting{font-size:var(--proj-title)}.viewer .viewer-ready-title,.viewer .viewer-results-title{font-size:var(--proj-display)}.viewer .count-display strong{font-size:clamp(3.5rem,1.5rem + 6vw,14rem)}.viewer .winner-name{font-size:var(--proj-hero)}.viewer .viewer-notice-icon{width:clamp(4rem,1.5rem + 5vw,12rem);height:clamp(4rem,1.5rem + 5vw,12rem)}.viewer .viewer-header p{font-size:calc(var(--proj-caption) * .85)}.viewer .viewer-progress svg{width:1em;height:1em}.viewer .viewer-body{max-width:none}.viewer .roster[data-density=comfortable]{--roster-min:clamp(20rem, 1rem + 14vw, 46rem);--roster-height:clamp(5rem, 1.5rem + 3.4vw, 10rem);--roster-font:clamp(1.4rem, .8rem + 1.6vw, 4.2rem)}.viewer .roster[data-density=compact]{--roster-min:clamp(15rem, .5rem + 11vw, 36rem);--roster-height:clamp(3.75rem, 1rem + 2.6vw, 7.5rem);--roster-font:clamp(1.1rem, .7rem + .9vw, 3rem)}.viewer .roster[data-density=dense]{--roster-min:clamp(12.5rem, .5rem + 8.6vw, 28rem);--roster-height:clamp(3rem, .8rem + 2vw, 6rem);--roster-font:clamp(1rem, .7rem + .55vw, 2.2rem)}.viewer .qr-card-rotation{font-size:var(--proj-caption)}.viewer .qr-rotation-bar{height:clamp(.375rem,.3vw,.9rem)}.viewer .registration-closed-pill svg,.viewer .qr-card-instruction svg{width:1em;height:1em}.viewer .registration-aside .qr-card{width:min(100%,clamp(18rem,22vw,48rem))}.viewer .qr-card svg{width:100%;height:auto}.viewer .viewer-waiting-dots{gap:clamp(.6rem,.5vw,1.4rem)}.viewer .viewer-waiting-dots i{width:clamp(.8rem,.6vw,1.8rem);height:clamp(.8rem,.6vw,1.8rem)}@media (width>=900px) and (height>=560px) and (orientation:landscape){.viewer-registration{container-type:size}.viewer-registration .registration-aside{--qr-size:min(28rem, 48cqh);gap:min(var(--space-6), 3cqh);max-height:100%}.viewer .registration-aside .qr-card{gap:min(var(--space-4), 2cqh);padding:min(var(--space-6), 3cqh)}.viewer .qr-card-instruction{font-size:min(var(--proj-body), 4.6cqh);line-height:1.2}.viewer .qr-card-rotation{font-size:min(var(--proj-caption), 3.2cqh);line-height:1.25}.viewer .registration-aside .count-display strong{font-size:min(clamp(3.5rem,1.5rem + 6vw,14rem),12cqh);line-height:1}.viewer .registration-aside .count-display span{font-size:min(var(--proj-body), 4.6cqh)}}.media-image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.media-frame{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface-muted);background-image:linear-gradient(45deg,#00000009 25%,#0000 25% 75%,#00000009 75%),linear-gradient(45deg,#00000009 25%,#0000 25% 75%,#00000009 75%);background-position:0 0,8px 8px;background-size:16px 16px;place-items:center;display:grid;overflow:hidden}.media-frame,.logo-surface-frame,.org-card-logo{grid-template:minmax(0,1fr)/minmax(0,1fr)}.media-frame>img,.logo-surface-frame>img,.org-card-logo>img,.media-thumb>img{width:100%;max-width:none;height:100%;max-height:none;aspect-ratio:auto!important}.media-thumb{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);flex:none;place-items:center;width:3rem;height:3rem;display:inline-grid;overflow:hidden}.media-thumb-stage{border-color:var(--stage-border);vertical-align:middle;background:#ffffff0f;width:1.6em;height:1.6em}.image-field{gap:var(--space-2);min-width:0;display:grid}.image-field-body{gap:var(--space-3);align-items:start;display:grid}@media (width>=560px){.image-field-body{grid-template-columns:minmax(0,14rem) minmax(0,1fr)}.image-field[data-kind=logo] .image-field-body{grid-template-columns:minmax(0,1fr)}}.image-field-preview{gap:var(--space-2);min-width:0;display:grid}.image-field-preview>.media-frame{height:10rem;padding:var(--space-2)}.image-field-preview.is-pending>.media-frame,.image-field-preview.is-pending .logo-surface-frame{outline:2px dashed var(--color-brand);outline-offset:2px}.image-field-badge{padding:.1rem var(--space-2);border-radius:var(--radius-pill);background:var(--color-brand-soft);color:var(--color-brand-text);font-size:var(--text-2xs);font-weight:var(--weight-semibold);justify-self:start}.image-field-empty{align-content:center;place-items:center;gap:var(--space-2);min-height:7rem;padding:var(--space-4);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-secondary);font:inherit;font-weight:var(--weight-semibold);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard), background var(--duration-fast) var(--ease-standard);display:grid}.image-field-empty:hover:not(:disabled){border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-text)}.image-field-empty:focus-visible{box-shadow:var(--focus-ring);outline:none}.image-field-empty:disabled{cursor:not-allowed;opacity:.6}.image-field-empty svg{width:1.5rem;height:1.5rem}.image-field input[type=file]:focus-visible+.image-field-body .image-field-empty,.image-field input[type=file]:focus-visible+.image-field-body .media-frame{box-shadow:var(--focus-ring)}.image-field-side{align-content:start;gap:var(--space-2);min-width:0;display:grid}.image-field-file{color:var(--color-text-secondary);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.logo-surfaces{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.logo-surface{gap:var(--space-1);margin:0;display:grid}.logo-surface-frame{height:7rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);place-items:center;display:grid}.logo-surface-light .logo-surface-frame{background:#fff}.logo-surface-dark .logo-surface-frame{border-color:var(--stage-border);background:var(--stage-bg)}.logo-surface figcaption{color:var(--color-text-muted);font-size:var(--text-2xs)}.card-title-icon{width:1.1rem;height:1.1rem;margin-right:var(--space-2);vertical-align:-.15em;color:var(--color-text-muted)}.gift-card-media{height:9rem;padding:var(--space-2)}.org-card-logo{width:4.5rem;height:2.75rem;display:grid}.org-card-logo>img{object-position:left center}.results-gift-header{justify-content:flex-start;gap:var(--space-3)}.results-gift-header h2{flex:8rem;min-width:0}.public-logo{max-width:min(12rem,60vw);max-height:4.5rem;margin-bottom:var(--space-2)}.stage-logo{flex:none;max-width:clamp(4.5rem,3rem + 6vw,11rem);max-height:clamp(2.25rem,1.75rem + 2vw,4.5rem)}.viewer-header-title{flex:20rem;min-width:0}.viewer-header-side{justify-content:flex-end;align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.viewer .stage-logo{max-width:clamp(6rem,3rem + 9vw,16rem);max-height:clamp(2.75rem,1.5rem + 3.5vw,7rem)}.draw-gift-image{border-radius:var(--radius-md);max-width:min(100%,22rem);max-height:clamp(5rem,22vh,13rem)}.viewer-gift-image{border-radius:var(--radius-lg);max-width:min(80vw,36rem);max-height:clamp(6rem,26vh,22rem)}.winner-gift-with-media{text-wrap:balance;flex-direction:column;align-items:center;gap:.35em;max-width:100%;display:flex}.winner-gift-image{border-radius:.3em;flex:none;max-width:4.5em;max-height:2.4em}@media (height<=540px){.draw-gift-image,.viewer-gift-image{max-height:4.5rem}}.connection-banner{top:max(var(--space-2), env(safe-area-inset-top));right:var(--space-3);left:var(--space-3);z-index:95;align-items:center;gap:var(--space-2);width:fit-content;max-width:calc(100vw - 2 * var(--space-3));padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin-inline:auto;display:flex;position:fixed}.connection-banner svg{flex:none;width:1rem;height:1rem}.connection-banner-offline{color:#fff;background:#7a2e0e}.connection-banner-recovered{color:#fff;background:#0f5132}.connection-pill{border:1px solid var(--stage-border);border-radius:var(--radius-pill);color:var(--stage-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap;align-items:center;gap:.45em;padding:.2em .7em;display:inline-flex}.connection-pill i{background:var(--stage-success);border-radius:50%;width:.5em;height:.5em}.connection-pill-connected{opacity:.7}.connection-pill-reconnecting i{background:var(--stage-gold)}.connection-pill-offline{border-color:var(--stage-danger);color:var(--stage-text)}.connection-pill-offline i{background:var(--stage-danger)}@media (prefers-reduced-motion:no-preference){.connection-pill-reconnecting i{animation:1.2s ease-in-out infinite connection-pulse}}@keyframes connection-pulse{50%{opacity:.3}}.error-fallback{min-height:60vh;padding:var(--space-6) var(--space-4);background:var(--color-canvas);color:var(--color-text);place-items:center;display:grid}.error-fallback-stage{background:var(--stage-bg);min-height:100dvh;color:var(--stage-text)}.error-fallback-card{justify-items:center;gap:var(--space-3);text-align:center;max-width:28rem;display:grid}.error-fallback-card h1{font-size:var(--text-xl);font-weight:var(--weight-bold)}.error-fallback-card p{color:var(--color-text-secondary)}.error-fallback-stage .error-fallback-card p{color:var(--stage-text-secondary)}.error-fallback-icon{width:2.5rem;height:2.5rem;color:var(--color-warning)}@media (width>=768px){.choice-group-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.choice-group-4{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=768px){.choice-group-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.choice-compact{padding:var(--space-3) var(--space-4);align-items:center}.choice-compact input,.choice-compact small{margin-top:0}.choice-group .span-all{grid-column:1/-1}.choice-group .field-hint svg,.dynamic-qr-note svg{width:1rem;height:1rem;margin-right:var(--space-1);vertical-align:-.15em;display:inline-block}.dynamic-qr-note{text-align:left;max-width:22rem}.sound-toggle{gap:var(--space-2)}.sound-toggle svg{width:1rem;height:1rem}@media (width<=767.98px){.sound-toggle-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.viewer .sound-toggle{opacity:.85;font-size:clamp(.75rem,.55rem + .35vw,1.1rem)}.preview-sound{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.winner-verify{justify-items:center;gap:var(--space-2);width:min(100%,44rem);padding-top:var(--space-3);border-top:1px solid var(--stage-border);display:grid}.winner-verify-label{align-items:center;gap:var(--space-2);color:var(--stage-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.04em;display:inline-flex}.winner-verify-label .spinner{width:.9rem;height:.9rem}.winner-verify-actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.winner-verify-actions .btn{white-space:nowrap;min-height:2.25rem}@media (width<=767.98px){.winner-verify-actions .btn{min-height:2.5rem}}@media (width<=479.98px){.winner-verify-actions .btn{white-space:normal}}.void-reason-options{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.void-reason-options legend{margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.void-reason-option{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex}.summary-progress{gap:var(--space-2);display:grid}.summary-progress p{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.summary-progress strong{font-size:var(--text-lg);font-variant-numeric:tabular-nums}.summary-progress span:not(.progress){color:var(--color-text-secondary);font-size:var(--text-sm)}.summary-metrics{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));margin:0;display:grid}.summary-metric{gap:var(--space-1);min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);display:grid}.summary-metric dt{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);display:flex}.summary-metric dt svg{flex:none;width:.95rem;height:.95rem}.summary-metric dd{gap:.1rem;min-width:0;margin:0;display:grid}.summary-metric strong{font-size:var(--text-xl);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.15}.summary-metric small{color:var(--color-text-muted);font-size:var(--text-xs);overflow-wrap:anywhere}.reveal-stage{--scene-h:clamp(17rem, 50vh, 34rem);justify-items:center;gap:var(--space-3);width:100%;display:grid}.reveal-stage[data-variant=projector]{--scene-h:clamp(18rem, 58vh, 64rem);gap:clamp(.75rem,1.4vh,2rem)}.reveal-stage[data-variant=preview]{--scene-h:clamp(14rem, 38vh, 21rem)}@media (width<=767.98px){.reveal-stage[data-variant=console]{--scene-h:clamp(19rem, 58vh, 26rem)}}.reveal-kicker{color:var(--stage-accent);font-size:clamp(.9rem,.8rem + .4vw,1.15rem);font-weight:var(--weight-bold);letter-spacing:.16em;text-transform:uppercase}.reveal-head{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.25rem .9rem;display:flex}.reveal-crowd{border:1px solid var(--stage-border);background:var(--stage-surface);color:var(--stage-text-secondary);font-size:clamp(.78rem,.72rem + .3vw,1rem);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;border-radius:999px;padding:.1em .7em}.reveal-scene{width:100%;max-width:76rem;height:var(--scene-h);border-radius:var(--radius-xl);position:relative;overflow:hidden;container-type:size}.reveal-stage[data-variant=projector] .reveal-scene{max-width:min(100%,180vh)}.reveal-gift{max-width:60ch;color:var(--stage-text-secondary);font-size:clamp(1.05rem,.9rem + .8vw,1.75rem);font-weight:var(--weight-semibold);text-align:center;overflow-wrap:anywhere}.reveal-progress{border-radius:var(--radius-pill);background:#ffffff1a;width:min(100%,26rem);height:.35rem;overflow:hidden}.reveal-stage[data-variant=projector] .reveal-progress{width:min(100%,40vw);height:clamp(.35rem,.6vh,.8rem)}.reveal-progress>span{border-radius:inherit;background:linear-gradient(90deg, var(--stage-accent), var(--stage-gold));width:100%;height:100%;transform:scaleX(var(--progress,0));transform-origin:0;display:block}.reveal-reduced{text-align:center;place-content:center;justify-items:center;gap:4cqh;display:grid;position:absolute;inset:0}.reveal-reduced .animation-thumbnail{border-radius:3cqmin;width:min(56cqw,104cqh)}.reveal-reduced p{color:var(--stage-text);font-size:min(7cqh,5cqw);font-weight:var(--weight-bold);align-items:center;gap:.5em;display:inline-flex}.reveal-reduced p svg{width:1em;height:1em;color:var(--stage-gold)}[data-length]{overflow-wrap:anywhere}.slot-reveal{place-items:center;display:grid;position:absolute;inset:0}.slot-reel{--slot-step:25cqh;border:1px solid var(--stage-border-strong);background:linear-gradient(180deg, rgb(var(--pal-brand-rgb) / 8%), transparent 30%, transparent 70%, rgb(var(--pal-brand-rgb) / 8%)), linear-gradient(180deg, var(--pal-tint-150), #fff 50%, var(--pal-tint-150));width:min(100cqw,170cqh);height:92cqh;box-shadow:inset 0 0 6cqh rgb(var(--pal-brand-rgb) / 8%);border-radius:5cqmin;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 4%,#000 26% 74%,#0000 96%);mask-image:linear-gradient(#0000 4%,#000 26% 74%,#0000 96%)}.slot-reel:before{content:"";height:var(--slot-step);margin-top:calc(var(--slot-step) / -2);border-top:2px solid rgb(var(--pal-brand-rgb) / 28%);border-bottom:2px solid rgb(var(--pal-brand-rgb) / 28%);background:rgb(var(--pal-brand-rgb) / 5%);transition:border-color .24s,background-color .24s,box-shadow .24s;position:absolute;inset:50% 3cqw auto}.slot-reveal[data-landed] .slot-reel:before{background:#fff4d9;border-color:#e0b04a;box-shadow:0 0 6cqh #e0b04a4d}.slot-marker{z-index:2;border-top:2.4cqh solid #0000;border-bottom:2.4cqh solid #0000;width:0;height:0;margin-top:-2.4cqh;position:absolute;top:50%}.slot-marker-left{border-left:2.6cqh solid var(--stage-gold);left:.8cqw}.slot-marker-right{border-right:2.6cqh solid var(--stage-gold);right:.8cqw}.slot-item{height:var(--slot-step);margin-top:calc(var(--slot-step) / -2);color:var(--dihud-navy,#2b245b);font-size:min(12cqh,8.4cqw);font-weight:var(--weight-heavy);letter-spacing:-.02em;text-align:center;white-space:nowrap;will-change:transform;justify-content:center;align-items:center;line-height:1.05;display:flex;position:absolute;top:50%;left:6cqw;right:6cqw}.slot-item[data-length=long]{font-size:min(9cqh,4.8cqw)}.slot-item[data-length=xlong]{white-space:normal;text-wrap:balance;font-size:min(6.4cqh,3.3cqw)}.slot-item.is-winner{color:var(--color-brand,var(--pal-brand-500));text-shadow:none}.cards-reveal{perspective:1400px;position:absolute;inset:0}.cards-deck,.cards-flow{transform-style:preserve-3d;place-items:center;display:grid;position:absolute;inset:0}.reveal-card{aspect-ratio:5/7;border:1px solid rgb(var(--pal-ink-rgb) / 10%);background:linear-gradient(160deg, #fff, var(--pal-tint-180));height:min(68cqh,62cqw);box-shadow:0 3cqh 7cqh rgb(var(--pal-brand-shade-rgb) / 18%);color:var(--color-text);text-align:center;backface-visibility:hidden;will-change:transform, opacity;border-radius:3.6cqh;grid-area:1/1;align-content:center;justify-items:center;gap:4cqh;padding:5cqh 3cqh;display:grid}.reveal-card.is-back{background:radial-gradient(circle at 50% 50%, transparent 5.4cqh, #ffcf5cd9 5.6cqh 6.4cqh, transparent 6.6cqh), radial-gradient(circle at 50% 50%, #ffcf5c4d 0 2.6cqh, transparent 2.8cqh), repeating-linear-gradient(45deg, #ffffff12 0 1.4cqh, transparent 1.4cqh 2.8cqh), linear-gradient(160deg, var(--pal-brand-400), var(--pal-brand-700));box-shadow:inset 0 0 0 1.4cqh #1a163838, inset 0 0 0 1.6cqh #ffffff24, 0 3cqh 7cqh rgb(var(--pal-brand-shade-rgb) / 18%);border:2px solid #ffffff38}.reveal-card-avatar{background:var(--color-brand-soft-strong);width:17cqh;height:17cqh;color:var(--color-brand-text);font-size:6.5cqh;font-weight:var(--weight-heavy);border-radius:50%;place-items:center;display:grid}.reveal-card-name{max-width:100%;font-size:min(6.8cqh,5cqw);font-weight:var(--weight-heavy);letter-spacing:-.02em;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.12;display:-webkit-box;overflow:hidden}.reveal-card-name[data-length=long]{font-size:min(5.2cqh,4cqw)}.reveal-card-name[data-length=xlong]{-webkit-line-clamp:4;font-size:min(4.2cqh,3.2cqw)}.reveal-card.is-winner{border:.9cqh solid var(--stage-gold);box-shadow:0 0 9cqh #ffcf5c73, 0 3cqh 7cqh rgb(var(--pal-brand-shade-rgb) / 20%)}.reveal-card.is-winner .reveal-card-avatar{background:var(--stage-gold);color:#2a1d00}.spotlight-reveal{align-items:center;padding:6cqh 2cqw 4cqh;display:grid;position:absolute;inset:0}.spotlight-stage{position:relative}.spotlight-grid{z-index:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:3cqh 1.6cqw;margin:0;padding:0;list-style:none;display:grid;position:relative}.spotlight-grid[data-count="1"]{grid-template-columns:minmax(0,.5fr);justify-content:center}.spotlight-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,.42fr));justify-content:center}.spotlight-grid[data-count="3"],.spotlight-grid[data-count="5"],.spotlight-grid[data-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}.spotlight-grid li{border:1px solid var(--stage-border);min-height:20cqh;color:var(--stage-text-muted);font-size:min(5cqh,2.5cqw);font-weight:var(--weight-bold);text-align:center;will-change:transform, opacity;background:#ffffff0a;border-radius:2.4cqh;place-items:center;padding:1.6cqh 1.2cqw;line-height:1.15;transition:color .14s,background-color .14s,border-color .14s;display:grid}.spotlight-grid li>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.spotlight-grid li[data-length=xlong]{font-size:min(3.8cqh,2cqw)}.spotlight-grid li.is-lit{color:#fff;background:#fff0c81f;border-color:#ffde8c99}.spotlight-grid li.is-winner{border-color:var(--stage-gold);background:var(--stage-gold);color:#221800;box-shadow:0 0 8cqh #ffcf5c80}.spotlight-reveal[data-layout=crowd]{align-items:stretch;padding:4cqh 2cqw 3cqh}.spotlight-reveal[data-layout=crowd] .spotlight-stage{height:100%}.spotlight-grid[data-density]{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));grid-template-rows:repeat(var(--rows), minmax(0, 1fr));gap:max(2px,.6cqmin);height:100%}.spotlight-grid[data-density] li{min-width:0;min-height:0;font-size:min(calc(46cqh / var(--rows)), calc(26cqw / var(--cols)));white-space:nowrap;border-radius:max(2px,.8cqmin);padding:0 .3em;line-height:1;overflow:hidden}.spotlight-grid[data-density=sparse] li,.spotlight-grid[data-density=sparse] li[data-length]{font-size:min(calc(30cqh / var(--rows)), calc(10.5cqw / var(--cols)));padding:0 .5em}.spotlight-grid[data-density=medium] li{font-size:min(calc(42cqh / var(--rows)), calc(17cqw / var(--cols)))}.spotlight-grid[data-density] li>span{text-overflow:ellipsis;max-width:100%;display:block;overflow:hidden}.spotlight-grid[data-landed]>li{opacity:calc(1 - var(--dim,0) * .78);transform:scale(calc(1 - var(--dim,0) * .05))}.spotlight-grid[data-landed]>li.is-winner{z-index:2;opacity:1;transform:scale(calc(1 + var(--grow,0) * .14));position:relative}.spotlight-grid[data-density=dense][data-landed]>li.is-winner{transform:scale(calc(1 + var(--grow,0) * .6))}.spotlight-callout{z-index:3;pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.spotlight-callout>span{border:1px solid var(--stage-border-strong);background:var(--stage-surface);max-width:60cqw;box-shadow:0 1.2cqh 3cqh rgb(var(--pal-brand-shade-rgb) / 16%);color:var(--stage-text);font-size:min(5.2cqh,2.6cqw);font-weight:var(--weight-heavy);text-overflow:ellipsis;white-space:nowrap;transform:translate(-50%, calc(-100% - 3cqh)) scale(calc(1 + var(--grow,0) * .35));transform-origin:50% 100%;border-radius:999px;padding:.35em .8em;line-height:1.1;display:block;overflow:hidden}.spotlight-callout[data-placement=below]>span{transform:translate(-50%, 3cqh) scale(calc(1 + var(--grow,0) * .35));transform-origin:50% 0}.spotlight-callout[data-winner]>span{border-color:var(--stage-gold);color:var(--dihud-navy,#2b245b);background:#fff4d9}.spotlight-light{z-index:2;pointer-events:none;will-change:transform;background:radial-gradient(closest-side,#fff0be4d,#ffde8c1f 60%,#0000);border-radius:50%;position:absolute;top:0;left:0}.spotlight-shaft{z-index:0;pointer-events:none;will-change:transform;background:linear-gradient(#fff4cd00,#fff4cd1f 70%,#fff4cd0a);position:absolute;top:0;left:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 30% 70%,#0000);mask-image:linear-gradient(90deg,#0000,#000 30% 70%,#0000)}@container (width<=560px){.spotlight-grid:not([data-density]){grid-template-columns:repeat(3,minmax(0,1fr));gap:2cqh 2cqw}.spotlight-grid:not([data-density]) li{min-height:14cqh;font-size:min(4.4cqh,4cqw)}.spotlight-grid:not([data-density]) li[data-length=xlong],.spotlight-grid:not([data-density]) li[data-length=long]{font-size:min(3.6cqh,3.2cqw)}}.elimination-reveal{grid-template-rows:auto minmax(0,1fr);gap:2.4cqh;padding:3.5cqh 2.5cqw 4cqh;display:grid;position:absolute;inset:0}.elimination-counter{color:var(--stage-text-secondary);font-size:min(4.6cqh,2.6cqw);font-weight:var(--weight-semibold);justify-content:center;align-items:baseline;gap:.45em;margin:0;display:flex}.elimination-counter strong{min-width:3ch;color:var(--stage-text);font-variant-numeric:tabular-nums;text-align:right;font-size:1.9em;line-height:1}.elimination-reveal[data-landed] .elimination-counter strong{color:var(--stage-gold)}.elimination-arena{min-height:0;position:relative}.elimination-mosaic{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));grid-template-rows:repeat(var(--rows), minmax(0, 1fr));gap:max(2px,.5cqmin);margin:0;padding:0;list-style:none;display:grid;position:absolute;inset:0}.elimination-mosaic li{background:var(--stage-accent-soft);min-width:0;min-height:0;box-shadow:inset 0 0 0 1px var(--stage-border-strong);color:var(--stage-text);font-size:min(calc(46cqh / var(--rows)), calc(26cqw / var(--cols)));font-weight:var(--weight-bold);white-space:nowrap;will-change:opacity, transform;border-radius:max(2px,.8cqmin);place-items:center;line-height:1;transition:opacity .36s ease-out,transform .36s ease-out,background-color .2s;display:grid;overflow:hidden}.elimination-mosaic[data-density=sparse] li{font-size:min(calc(34cqh / var(--rows)), calc(13cqw / var(--cols)));padding:0 .4em}.elimination-mosaic li>span{text-overflow:ellipsis;max-width:100%;overflow:hidden}.elimination-mosaic li[data-state=hidden]{opacity:0;transform:scale(.4)}.elimination-mosaic li[data-state=out]{background:var(--stage-surface);box-shadow:none;opacity:.12;transform:scale(.72)}.elimination-finals{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);align-content:center;gap:3cqh 1.8cqw;margin:0;padding:2cqh 0;list-style:none;display:grid;position:absolute;inset:0}.elimination-finals[data-count="1"]{grid-template-columns:minmax(0,.5fr);justify-content:center}.elimination-finals[data-count="2"]{grid-template-columns:repeat(2,minmax(0,.4fr));justify-content:center}.elimination-finals[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.elimination-finals li{border:1px solid var(--stage-border-strong);background:var(--stage-surface-strong);min-height:0;max-height:26cqh;color:var(--stage-text);font-size:min(5cqh,2.5cqw);font-weight:var(--weight-bold);text-align:center;will-change:transform, opacity;border-radius:2.4cqh;place-items:center;padding:1.6cqh 1.2cqw;line-height:1.15;transition:opacity .42s ease-out,filter .42s ease-out,color .2s,background-color .2s,border-color .2s;display:grid}.elimination-finals li>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.elimination-finals li[data-length=xlong]{font-size:min(3.8cqh,2cqw)}.elimination-finals li[data-state=out]{opacity:.18;filter:grayscale()}.elimination-reveal[data-landed] .elimination-finals li[data-state=out]{opacity:.08}.elimination-finals li.is-winner{border-color:var(--stage-gold);background:var(--stage-gold);color:#221800;box-shadow:0 0 8cqh #ffcf5c80}@container (width<=560px){.elimination-finals{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6cqh 2.4cqw}.elimination-finals li{font-size:min(4.6cqh,4.4cqw)}}.drum-reveal{position:absolute;inset:0;container-type:size}.drum{aspect-ratio:1;border:1.1cqmin solid var(--pal-line-500);background:radial-gradient(circle at 34% 28%, #fffffff2, transparent 36%), radial-gradient(circle at 50% 50%, var(--pal-tint-50) 0%, var(--pal-tint-250) 62%, var(--pal-tint-450) 100%);width:min(84cqh,80cqw);box-shadow:inset 0 0 5cqw rgb(var(--pal-brand-rgb) / 14%), 0 2cqh 6cqh rgb(var(--pal-brand-shade-rgb) / 12%);will-change:transform, opacity;border-radius:50%;margin-left:calc(min(84cqh,80cqw)/-2);position:absolute;top:3cqh;left:50%;container-type:size}.drum[data-density=medium] .drum-ticket{width:12cqw;height:7.2cqw;margin:-3.6cqw 0 0 -6cqw;font-size:3cqw}.drum[data-density=dense] .drum-ticket{border-radius:.9cqw;width:9.5cqw;height:5.8cqw;margin:-2.9cqw 0 0 -4.75cqw;font-size:2.4cqw}.drum-spokes{border:.6cqw solid rgb(var(--pal-brand-rgb) / 10%);background:linear-gradient(90deg, transparent 49.2%, rgb(var(--pal-brand-rgb) / 10%) 49.2% 50.8%, transparent 50.8%), linear-gradient(0deg, transparent 49.2%, rgb(var(--pal-brand-rgb) / 10%) 49.2% 50.8%, transparent 50.8%);will-change:transform;border-radius:50%;position:absolute;inset:7%}.drum-ticket{--ticket-color:var(--pal-brand-pink);background:radial-gradient(circle at 0 50%, transparent 1.4cqw, var(--ticket-color) 1.5cqw) left / 51% 100% no-repeat, radial-gradient(circle at 100% 50%, transparent 1.4cqw, var(--ticket-color) 1.5cqw) right / 51% 100% no-repeat;color:#1a1638cc;width:15cqw;height:9cqw;font-size:3.8cqw;font-weight:var(--weight-heavy);will-change:transform;border-radius:1.2cqw;place-items:center;margin:-4.5cqw 0 0 -7.5cqw;display:grid;position:absolute;top:50%;left:50%}.drum-mouth{background:var(--dihud-navy,#2b245b);width:26cqw;height:5cqw;box-shadow:0 0 0 .9cqw var(--pal-tint-450);border-radius:2cqw;margin-left:-13cqw;position:absolute;bottom:-1.5cqw;left:50%}.drum-winner-ticket{z-index:3;transform-origin:50% 0;will-change:transform;position:absolute;top:0;left:50%}.drum-winner-paper{width:min(86cqw,150cqh);min-height:36cqh;box-shadow:0 3cqh 8cqh rgb(var(--pal-brand-shade-rgb) / 22%);color:#2a1d00;text-align:center;transform-origin:50% 0;background:radial-gradient(circle at 0,#0000 3.2cqh,#ffd56f 3.3cqh) 0/51% 100% no-repeat,radial-gradient(circle at 100%,#0000 3.2cqh,#ffd56f 3.3cqh) 100%/51% 100% no-repeat;border-radius:2.4cqh;align-content:center;place-items:center;gap:2cqh;padding:4cqh 7cqw;display:grid;position:relative;overflow:hidden}.drum-winner-shine{pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff8c,#0000);width:40%;position:absolute;inset:0 auto 0 0}.drum-winner-label{font-size:min(3.6cqh,3cqw);font-weight:var(--weight-bold);letter-spacing:.16em;text-transform:uppercase}.drum-winner-name{font-size:min(12cqh,6.6cqw);font-weight:var(--weight-heavy);letter-spacing:-.03em;text-wrap:balance;line-height:1.05}.drum-winner-name[data-length=long]{font-size:min(8.5cqh,4.8cqw)}.drum-winner-name[data-length=xlong]{font-size:min(5.2cqh,3.4cqw)}.doctor-reveal{--fly-x:-44cqw;--fly-y:-26cqh;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:2cqw;padding:2cqh 3cqw;display:grid;position:absolute;inset:0}.doctor-scene{place-items:center;height:100%;min-height:0;display:grid}.doctor-art{width:auto;max-width:100%;height:96cqh}.doctor-card-slot{perspective:1200px;place-items:center;height:100%;display:grid}.doctor-card{aspect-ratio:1.5;will-change:transform;width:min(100%,96cqh)}.doctor-card-inner{width:100%;height:100%;transform-style:preserve-3d;position:relative}.doctor-card-face{backface-visibility:hidden;text-align:center;border-radius:3cqh;align-content:center;place-items:center;gap:3cqh;padding:4cqh 4cqw;display:grid;position:absolute;inset:0}.doctor-card-back{background:repeating-linear-gradient(45deg, #ffffff0f 0 1.4cqh, transparent 1.4cqh 2.8cqh), linear-gradient(160deg, var(--pal-brand-400), var(--pal-brand-700));color:var(--stage-gold);border:2px solid #fff3;transform:rotateY(180deg)}.doctor-card-back svg{width:22cqh;height:22cqh}.doctor-card-front{border:.9cqh solid var(--stage-gold);box-shadow:0 3cqh 8cqh rgb(var(--pal-brand-shade-rgb) / 20%);color:#221800;background:linear-gradient(160deg,#fffdf6,#fff2cf)}.doctor-reveal[data-landed] .doctor-card-front{box-shadow:0 0 10cqh #ffcf5c73, 0 3cqh 8cqh rgb(var(--pal-brand-shade-rgb) / 20%)}.doctor-card-label{color:#8f5400;font-size:min(4cqh,2.2cqw);font-weight:var(--weight-bold);letter-spacing:.18em;text-transform:uppercase}.doctor-card-name{font-size:min(9cqh,4.6cqw);font-weight:var(--weight-heavy);letter-spacing:-.03em;text-wrap:balance;line-height:1.05}.doctor-card-name[data-length=long]{font-size:min(7.6cqh,3.9cqw)}.doctor-card-name[data-length=xlong]{font-size:min(6.4cqh,3.2cqw)}@container (aspect-ratio<=1.2){.doctor-reveal{--fly-x:18cqw;--fly-y:-42cqh;grid-template-rows:minmax(0,1.15fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:1cqh;padding:2cqh 4cqw}.doctor-art{height:52cqh}.doctor-card{width:min(100%,64cqh)}.doctor-card-label{font-size:min(3.2cqh,4cqw)}.doctor-card-name{font-size:min(6.4cqh,8.4cqw)}.doctor-card-name[data-length=long]{font-size:min(5cqh,6cqw)}.doctor-card-name[data-length=xlong]{font-size:min(3.8cqh,4.6cqw)}}.animation-thumbnail{aspect-ratio:16/10;border-radius:var(--radius-md);border:1px solid var(--color-border);background:radial-gradient(120% 90% at 80% -10%, rgb(var(--pal-brand-rgb) / 8%), transparent 60%), linear-gradient(160deg, #fff, var(--pal-tint-150));place-items:center;width:100%;display:grid;overflow:hidden}.animation-thumbnail svg{width:100%;height:100%}.animation-thumbnail[data-animation=DOCTOR_DRAW] svg{height:100%;margin-top:6%}.winner-name[data-length=long]{font-size:clamp(2rem,1rem + 4.4vw,5.5rem)}.winner-name[data-length=xlong]{font-size:clamp(1.6rem,.9rem + 3vw,4rem)}.viewer .winner-name[data-length=long]{font-size:clamp(2.5rem,.8rem + 5.6vw,13rem)}.viewer .winner-name[data-length=xlong]{font-size:clamp(2rem,.6rem + 3.8vw,9rem)}.analytics-toolbar{justify-content:flex-start;align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.segmented{gap:var(--space-1);border-bottom:1px solid var(--pal-line-200);scrollbar-width:none;flex:1;min-width:0;display:flex;overflow-x:auto}@media (width<=479px){.segmented{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-x:visible}.segmented-option span{justify-content:center;width:100%}}.segmented::-webkit-scrollbar{display:none}.segmented-option{cursor:pointer;position:relative}.segmented-option input{opacity:0;pointer-events:none;position:absolute}.segmented-option span{min-height:var(--touch-target);padding:0 var(--space-3);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;display:inline-flex}.segmented-option:hover span{color:var(--color-text)}.segmented-option input:checked+span{border-bottom-color:var(--color-brand);color:var(--color-brand-text)}.segmented-option input:focus-visible+span{border-radius:var(--radius-xs) var(--radius-xs) 0 0;box-shadow:var(--focus-ring)}[data-refreshing]{opacity:.55;transition:opacity var(--duration-fast)}.analytics-pair{gap:var(--space-4);display:grid}@media (width>=768px){.analytics-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}.data-table .cell-numeric{font-variant-numeric:tabular-nums}.timeline-chart{--chart-height:12rem;gap:var(--space-2);display:grid}.timeline-plot{gap:var(--space-2) var(--space-3);grid-template-columns:auto minmax(0,1fr);display:grid}.timeline-axis{height:var(--chart-height);color:var(--color-text-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;text-align:right;flex-direction:column;justify-content:space-between;line-height:1;display:flex;transform:translateY(-.4em)}.timeline-area{height:var(--chart-height);position:relative}.timeline-grid{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.timeline-grid span{background:var(--color-border);height:1px}.timeline-bars{gap:2px;height:100%;display:grid;position:relative}.timeline-bar{cursor:default;background:0 0;border:0;justify-content:center;align-items:flex-end;min-width:0;height:100%;padding:0;display:flex}.timeline-bar:focus-visible{border-radius:var(--radius-xs);box-shadow:var(--focus-ring);outline:none}.timeline-bar-fill{background:var(--color-brand);width:100%;max-width:24px;transition:background-color var(--duration-fast);border-radius:4px 4px 0 0;display:block}.timeline-bar[data-active] .timeline-bar-fill{background:var(--color-brand-hover)}.timeline-bar[data-active]{background:var(--color-brand-soft)}@supports (color:color-mix(in lab, red, red)){.timeline-bar[data-active]{background:color-mix(in srgb, var(--color-brand-soft) 60%, transparent)}}.timeline-bar[data-active]{border-radius:var(--radius-xs) var(--radius-xs) 0 0}.timeline-labels{color:var(--color-text-muted);font-size:var(--text-2xs);white-space:nowrap;gap:2px;display:grid}.timeline-labels span{min-width:0;overflow:visible}.chart-tooltip{top:var(--space-2);z-index:2;min-width:8rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-md);font-size:var(--text-xs);pointer-events:none;gap:2px;display:grid;position:absolute;transform:translate(-50%)}.chart-tooltip strong{color:var(--color-text);font-size:var(--text-sm)}.chart-tooltip span{color:var(--color-text-secondary)}.chart-table summary{width:fit-content;color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer}.chart-table .table-scroll{margin-top:var(--space-2)}.source-split{gap:var(--space-4);display:grid}.source-bar{gap:2px;height:.75rem;display:flex}.source-bar-part{flex-basis:0;min-width:4px}.source-bar-part:first-child{border-radius:4px 0 0 4px}.source-bar-part:last-child{border-radius:0 4px 4px 0}.source-bar-part:only-child{border-radius:4px}.source-public{background:var(--color-brand)}.source-admin{background:var(--pal-contrast)}.chart-legend{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.chart-legend li{align-items:center;gap:var(--space-2);font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr) auto 3rem;display:grid}.legend-swatch{border-radius:3px;width:.75rem;height:.75rem}.legend-label{color:var(--color-text-secondary)}.chart-legend strong{font-variant-numeric:tabular-nums}.legend-share{color:var(--color-text-muted);font-variant-numeric:tabular-nums;text-align:right}.status-bars{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.status-bars li{align-items:center;gap:var(--space-3);font-size:var(--text-sm);grid-template-columns:9.5rem minmax(0,1fr);display:grid}.status-bars-label{color:var(--color-text-secondary)}.status-bars-track{align-items:center;gap:var(--space-2);min-width:0;display:flex}.status-bars-fill{background:var(--color-brand);border-radius:0 4px 4px 0;height:.625rem}.status-bars-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold)}.new-event-layout{gap:var(--shell-gap,var(--space-6));align-items:start;display:grid}@media (width>=1100px){.new-event-layout{grid-template-columns:minmax(0,1fr) 20rem}.new-event-aside{top:calc(var(--page-top-height,0px) + var(--shell-gap,var(--space-6)));position:sticky}}.draft-summary{gap:var(--space-3);margin:0;display:grid}.draft-summary>div{justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);display:flex}.draft-summary dt{color:var(--color-text-muted)}.draft-summary dd{color:var(--color-text);font-weight:var(--weight-medium);text-align:right;margin:0}.draft-summary>.draft-summary-name{gap:var(--space-1);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);display:grid}.draft-summary-name dd{font-size:var(--text-base);font-weight:var(--weight-semibold);text-align:left;overflow-wrap:anywhere}.draft-summary-name dd[data-empty]{color:var(--color-text-muted);font-weight:var(--weight-regular,400)}.new-event-actions{gap:var(--space-2);display:grid}.event-form{gap:var(--space-8)}.event-form .form-section{gap:var(--space-8);padding-top:var(--space-8)}.event-form .form-section-title{font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:-.01em}.event-form .field-label,.event-form .choice-group legend,.event-form .animation-picker legend{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-bold)}.event-form .field{gap:var(--space-2)}.event-form .choice-group legend,.event-form .animation-picker legend{margin-bottom:var(--space-3)}.event-form .choice-group .field-hint,.event-form .animation-picker .field-hint{margin-top:calc(-1 * var(--space-1))}.field-label{justify-content:flex-start}.field-optional{font-weight:var(--weight-regular,400)}.field-optional:before{content:"· "}.add-gift-card{position:relative}.add-gift-close{top:var(--space-3);right:var(--space-3);z-index:1;position:absolute}.add-gift-card .card-body{padding-right:calc(var(--space-5) + 2rem)}.action-menu{position:relative}.action-menu-list{top:calc(100% + var(--space-2));z-index:20;min-width:13rem;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);display:grid;position:absolute;right:0}.action-menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.action-menu-item svg{width:1rem;height:1rem;color:var(--color-text-muted);flex:none}.action-menu-item:hover,.action-menu-item:focus-visible{background:var(--color-surface-muted);outline:none}.action-menu-item.is-danger,.action-menu-item.is-danger svg{color:var(--color-danger)}.action-menu-item.is-danger:hover,.action-menu-item.is-danger:focus-visible{background:var(--color-danger-soft)}.table-card>.card-header{padding-bottom:var(--space-4)}@media (width>=768px){.table-card>.card-header~.table-scroll .data-table th:first-child,.table-card>.card-header~.table-scroll .data-table td:first-child{padding-left:var(--space-6)}.table-card>.card-header~.table-scroll .data-table th:last-child,.table-card>.card-header~.table-scroll .data-table td:last-child{padding-right:var(--space-6)}}.gifts-layout{gap:var(--shell-gap,var(--space-6));align-items:stretch;display:grid}@media (width>=1024px){.gifts-layout:not(.is-readonly){grid-template-columns:22.5rem minmax(0,1fr)}}.gifts-form-panel>.card-body{top:calc(var(--page-top-height,0px) + var(--shell-gap,var(--space-6)));position:sticky}.add-gift-form{gap:var(--space-5);display:grid}.add-gift-form .image-field-body{grid-template-columns:minmax(0,1fr)}.add-gift-form .image-field-empty,.add-gift-form .image-field-preview>.media-frame{width:100%;height:9.5rem;min-height:0}.add-gift-form .image-field-side .button-row:empty{display:none}.gift-panel-mode{justify-content:space-between;align-items:center;gap:var(--space-2);margin:calc(-1 * var(--space-2)) 0 calc(-1 * var(--space-1));color:var(--color-brand-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:flex}.gift-panel-actions{gap:var(--space-2);display:grid}.add-gift-form .image-field-side:not(:has(*)){display:none}.gift-fields{gap:var(--space-4);display:grid}.gifts-list-panel{flex-direction:column;display:flex}.gifts-panel-list{gap:var(--space-4);flex-direction:column;flex:1;display:flex}.gifts-panel-list>.empty-state{flex:1;align-content:center}.gifts-panel-heading{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.gifts-panel-heading h3{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-semibold)}.gifts-panel-heading p{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.duplicate-gift{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-warning);display:grid}@supports (color:color-mix(in lab, red, red)){.duplicate-gift{border:1px solid color-mix(in srgb, var(--color-warning) 30%, transparent)}}.duplicate-gift{border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-sm)}.gifts-list-panel .gift-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));align-items:start}.gift-item{align-items:center;gap:var(--space-3);padding:var(--space-3);grid-template-columns:3.5rem minmax(0,1fr) auto;display:grid;box-shadow:none!important}.gift-item-thumb{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);width:3.5rem;height:3.5rem;color:var(--color-celebrate-strong);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;display:grid;overflow:hidden}.gift-item-thumb img{object-fit:contain;width:100%;max-width:none;height:100%;max-height:none;aspect-ratio:auto!important}.gift-item-thumb>svg{width:1.5rem;height:1.5rem}.gift-item-main{gap:var(--space-1);min-width:0;display:grid}.gift-item-main h3{font-size:var(--text-base);font-weight:var(--weight-semibold)}.gift-item-meta{color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.gift-item-progress{height:.25rem;margin-top:var(--space-1)}.gift-item-actions{gap:var(--space-1);display:flex}.gift-item-delete{color:var(--color-danger)}.gift-item-error{grid-column:1/-1}.gift-item[aria-current]{border-color:var(--color-selected-border);background:var(--color-selected-bg)}.stepper{grid-template-columns:var(--control-md) minmax(0, 1fr) var(--control-md);min-height:var(--control-md);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-xs);display:grid;overflow:hidden}.stepper:focus-within{border-color:var(--color-brand);box-shadow:var(--focus-ring)}.stepper-button{background:var(--color-surface-muted);color:var(--color-text-secondary);cursor:pointer;border:0;place-items:center;display:grid}.stepper-button:hover:not(:disabled){background:var(--color-brand-soft);color:var(--color-brand-text)}.stepper-button:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.5}.stepper-button svg{width:1rem;height:1rem}.stepper-input{min-width:0;color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;text-align:center;appearance:textfield;background:0 0;border:0}.stepper-input:focus{outline:none}.stepper-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (width>=1024px){.app-shell .app-content{min-height:calc(100dvh - 2 * var(--shell-gap,1.5rem));flex-direction:column;display:flex}.app-shell .app-content>:last-child,.app-shell .fill>:last-child{flex:1 0 auto}.app-shell .fill{flex-direction:column;display:flex}.app-shell .fill-center{align-content:center;display:grid}.app-shell .app-content>.table-card:last-child,.app-shell .fill>.table-card:last-child{flex-direction:column;display:flex}.app-shell .table-card>.empty-state:last-child{flex:1;align-content:center}}.live-topbar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;display:grid}.live-topbar-start{justify-content:flex-start;display:flex}.live-topbar-end{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.live-topbar .live-header-brand{flex:none;justify-content:center;min-width:0}.live-topbar .live-header-brand h1{color:#2b245b;font-size:clamp(1.25rem,1rem + 1vw,1.9rem);font-weight:var(--weight-bold);text-align:center;overflow-wrap:anywhere}@media (width<=767.98px){.live-topbar{grid-template-columns:minmax(0,1fr) auto}.live-topbar .live-header-brand{grid-area:1/1/auto/-1}}.qr-card-instruction{text-align:center;justify-content:center}.roster-viewport{min-width:0}.roster[data-density=dense] li,.roster[data-density=micro] li{padding:0 var(--space-3)}.roster[data-density=micro]{--roster-min:9.5rem;--roster-height:2.25rem;--roster-font:clamp(.85rem, .75rem + .3vw, 1rem);gap:var(--space-1-5,.375rem)}.roster[data-density=micro] li{border-radius:var(--radius-sm);font-weight:var(--weight-medium)}.roster li.roster-more{box-shadow:none;color:var(--stage-text-secondary);font-weight:var(--weight-semibold);background:0 0;border-style:dashed;justify-content:center}@media (width>=1024px){.live-screen{height:100dvh;overflow:hidden}.live-screen .registration-stage{min-height:0;padding-bottom:var(--space-8);flex:1;grid-template-rows:minmax(0,1fr);align-items:stretch}.live-screen .roster-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.live-screen .roster-viewport{flex:1;min-height:0;overflow:hidden}}.roster li[data-length=long]{font-size:calc(var(--roster-font,1.2rem) * .86)}.roster li[data-length=xlong]{font-size:calc(var(--roster-font,1.2rem) * .74)}@media (width>=1024px){.draw-screen{height:100dvh;overflow:hidden}.draw-screen .draw-layout{grid-template-rows:minmax(0,1fr);min-height:0}.draw-screen .draw-rail,.draw-screen .draw-center{overscroll-behavior:contain;min-height:0;overflow-y:auto}}.manual-participant-dialog{width:min(100%,32rem)}.live-screen .roster-panel{border-color:var(--pal-line-300);box-shadow:0 6px 22px rgb(var(--pal-brand-shade-rgb) / 6%)}@media (width>=1024px){.draw-screen .draw-center{padding:var(--space-5) var(--space-6);container-type:size}.draw-screen .draw-center-inner{max-height:100%}.draw-screen .winner-reveal{flex-direction:column;align-items:center;gap:clamp(.35rem,1.6cqh,1rem);width:100%;display:flex}.draw-screen .winner-label{font-size:clamp(.85rem,2.6cqh,1.25rem)}.draw-screen .winner-name{font-size:min(12cqh,9cqw);line-height:1}.draw-screen .winner-name[data-length=long]{font-size:min(9cqh,6.5cqw)}.draw-screen .winner-name[data-length=xlong]{font-size:min(6.5cqh,4.6cqw)}.draw-screen .winner-gift,.draw-screen .winner-gift-with-media{color:#2b245b;font-size:min(6cqh,4.2cqw);font-weight:var(--weight-bold);flex-direction:column;gap:clamp(.25rem,1.2cqh,.75rem);line-height:1.1}.draw-screen .winner-gift-image{object-fit:contain;border-radius:var(--radius-md);width:auto;max-width:min(30cqw,22rem);height:min(24cqh,14rem);max-height:none}.draw-screen .winner-code{font-size:clamp(.8rem,2.2cqh,.95rem)}.draw-screen .admin-actions{gap:clamp(.5rem,1.8cqh,1rem);margin-top:clamp(.25rem,1.5cqh,1rem)}.draw-screen .winner-verify{gap:var(--space-1);width:100%;padding-top:clamp(.4rem,1.5cqh,.75rem)}.draw-screen .winner-verify-actions{gap:var(--space-1)}.draw-screen .winner-verify-actions .btn{min-height:2rem;padding-inline:var(--space-2);font-size:var(--text-xs)}}.draw-screen .stage-winner-groups{gap:var(--space-5)}.draw-screen .stage-winner-group h3{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--stage-border);color:var(--stage-text);font-size:var(--text-base);display:flex}.stage-winner-count{padding:.05rem var(--space-2);border-radius:var(--radius-pill);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex:none}.draw-screen .stage-winner-list{gap:var(--space-2)}.draw-screen .stage-winner-list li{padding:var(--space-2) var(--space-3);border:1px solid var(--stage-border);color:#2b245b;font-size:var(--text-base);font-weight:var(--weight-semibold);background:#fff}.draw-screen .stage-winner-list li:before{border:1px solid var(--stage-border);background:var(--stage-surface-strong);width:1.6rem;height:1.6rem;color:var(--stage-text-secondary);font-size:var(--text-xs)}.draw-screen .stage-winner-list li.is-latest{border-color:var(--color-success);background:var(--color-success-soft);box-shadow:inset 0 0 0 1px var(--color-success)}.draw-screen .stage-winner-list li.is-latest:before{border-color:var(--color-success);background:var(--color-success);color:#fff}.draw-layout.is-finale{grid-template-columns:minmax(0,1fr)}.draw-finale{gap:var(--space-6);flex-direction:column;min-height:0;padding:clamp(1.25rem,3vw,2.5rem);display:flex;position:relative;overflow:hidden}.draw-finale .stage-confetti{top:4rem}.draw-finale-header{align-items:center;gap:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--stage-border);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.draw-finale-icon{background:var(--color-success-soft);width:4rem;height:4rem;color:var(--color-success);border-radius:50%;place-items:center;display:grid}.draw-finale-icon svg{width:2rem;height:2rem}.draw-finale-header h2{color:#2b245b;font-size:clamp(1.4rem,1rem + 1.4vw,2.25rem);font-weight:var(--weight-bold);line-height:1.15}.draw-finale-header p{margin-top:var(--space-1);color:var(--stage-text-secondary);font-size:clamp(.95rem,.85rem + .3vw,1.1rem)}.draw-finale-header .btn{min-height:3.5rem;padding-inline:var(--space-8);font-size:var(--text-md)}@media (width<=767.98px){.draw-finale-header{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}}.draw-finale-winners{flex:1;min-height:0;overflow-y:auto}.draw-finale-winners .stage-winner-groups{align-items:start;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));display:grid}.draw-finale-winners .stage-winner-group h3{font-size:var(--text-lg)}.draw-finale-winners .stage-winner-list li{padding:var(--space-3) var(--space-4);font-size:var(--text-lg)}.draw-finale-winners .stage-winner-list li:before{width:2rem;height:2rem;font-size:var(--text-sm)}.void-choice{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--stage-border-strong,var(--pal-line-500));border-radius:var(--radius-md);color:var(--pal-brand-ink);text-align:left;cursor:pointer;background:#fff;display:inline-flex}.void-choice svg{flex:none;width:1.1rem;height:1.1rem}.void-choice strong{font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1.2;display:block}.void-choice small{color:var(--stage-text-muted,var(--pal-ink-500));font-size:var(--text-xs);line-height:1.25;display:block}.void-choice:hover:not(:disabled){border-color:var(--pal-brand-ink);background:var(--pal-tint-250)}.void-choice.is-danger{border-color:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.void-choice.is-danger{border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}}.void-choice.is-danger{color:var(--color-danger)}.void-choice.is-danger:hover:not(:disabled){border-color:var(--color-danger);background:var(--color-danger-soft)}.void-choice:disabled{cursor:not-allowed;opacity:.55}.stage-winner-list li{position:relative}.stage-winner-name{flex:1;min-width:0}.winner-actions{margin-left:auto}.winner-actions-toggle{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--stage-text-muted,var(--pal-ink-500));cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.winner-actions-toggle:hover:not(:disabled),.winner-actions-toggle[aria-expanded=true]{background:var(--stage-surface-strong,var(--pal-tint-150));color:var(--pal-brand-ink)}.winner-actions-toggle:disabled{cursor:not-allowed;opacity:.4}.winner-actions-toggle svg{width:1.1rem;height:1.1rem}.winner-actions-list{gap:var(--space-1);min-width:17rem;padding:var(--space-2)}.winner-actions-list .void-choice{border-color:#0000;width:100%}.draw-finale-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.draw-finale-hint{margin-top:calc(-1 * var(--space-3));color:var(--stage-text-muted,var(--pal-ink-500));font-size:var(--text-sm)}.draw-screen .draw-rail,.draw-finale-winners{overflow-x:visible}.viewer{--stage-bg-raised:#fff;--stage-danger:#b5263d;--stage-gold-soft:#fff4d9;background:linear-gradient(145deg, #fff 0%, var(--pal-tint-75) 58%, var(--pal-tint-150) 100%)}.viewer .viewer-header h1,.viewer .viewer-waiting,.viewer .viewer-ready-title,.viewer .viewer-results-title{color:#2b245b}.viewer .viewer-waiting-dots i{background:var(--pal-brand-500)}.viewer .roster-panel{box-shadow:0 6px 22px rgb(var(--pal-brand-shade-rgb) / 6%)}.viewer-fullscreen{right:var(--space-4);bottom:var(--space-4);z-index:50;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--pal-line-500);border-radius:var(--radius-pill);box-shadow:0 6px 22px rgb(var(--pal-brand-shade-rgb) / 12%);color:var(--pal-brand-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;opacity:0;pointer-events:none;background:#ffffffeb;transition:opacity .3s;display:inline-flex;position:fixed}.viewer-fullscreen[data-visible]{opacity:1;pointer-events:auto}.viewer-fullscreen svg{width:1rem;height:1rem}.viewer .viewer-header{border-bottom:1px solid var(--pal-line-100);grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);align-items:center;column-gap:clamp(.75rem,.5rem + 1vw,2rem);padding-bottom:clamp(.75rem,.5rem + 1vw,1.5rem);display:grid}.viewer-header-brand{justify-content:center;align-items:center;gap:clamp(.75rem,.5rem + 1vw,2rem);min-width:0;display:flex}.viewer-header-brand .stage-logo{object-fit:contain;max-width:clamp(4rem,2rem + 5vw,12rem);max-height:clamp(2.5rem,1.5rem + 3.5vw,8rem)}.viewer-header-brand h1{text-align:center;text-wrap:balance;max-width:100%}.viewer .viewer-header-side{justify-content:flex-end;min-width:0;display:flex}.viewer .winner-gift-with-media{color:#2b245b;font-weight:var(--weight-bold);flex-direction:column;gap:clamp(.5rem,1.2vh,1.5rem)}.viewer .winner-gift-image{object-fit:contain;border-radius:var(--radius-lg);width:auto;max-width:min(40vw,48rem);height:clamp(8rem,30vh,36rem);max-height:none}.void-reason{gap:var(--space-3);border:0;min-width:0;margin:0;display:grid}.void-reason legend{align-items:baseline;gap:var(--space-1);float:left;width:100%;margin-bottom:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold);padding:0;display:flex}.void-reason legend+*{clear:both}.void-reason-option{background:var(--color-surface)}.void-reason-option:has(input:checked){border-color:var(--color-selected-border);background:var(--color-selected-bg)}.void-reason-option input{accent-color:var(--color-brand)}.draft-gifts{gap:var(--space-3);display:grid}.draft-gifts-heading{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.draft-gifts-heading p{color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.draft-gifts-layout{gap:var(--space-4);align-items:start;display:grid}@media (width>=900px){.draft-gifts-layout{grid-template-columns:minmax(16rem,20rem) minmax(0,1fr)}}.draft-gifts-form{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted)}.draft-gifts .draft-gifts-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));align-items:start}.draft-gifts-list .gift-item-main h4{font-size:var(--text-base);font-weight:var(--weight-semibold)}.draft-gifts-empty{justify-content:center;align-items:center;gap:var(--space-2);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);min-height:6rem;color:var(--color-text-muted);font-size:var(--text-sm);display:flex}.draft-gifts-empty svg{width:1.1rem;height:1.1rem}.draft-gift-current{align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--text-sm);grid-template-columns:3.5rem minmax(0,1fr);display:grid}.draft-gift-current>.btn{grid-column:1/-1;justify-self:start}.login-split{background:var(--pal-tint-100);min-height:100dvh;display:grid}@media (width>=1024px){.login-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.login-brand .brand-mark{color:var(--color-brand)}.login-intro{justify-content:space-between;gap:var(--space-10);border-right:1px solid var(--pal-line-200);background:radial-gradient(40rem 28rem at 100% 0%, rgb(var(--pal-brand-rgb) / 13%), transparent 70%), radial-gradient(32rem 22rem at 0% 100%, #ffcf5c24, transparent 70%), linear-gradient(160deg, var(--pal-tint-200) 0%, var(--pal-tint-110) 100%);flex-direction:column;padding:clamp(2rem,4vw,4rem);display:none}@media (width>=1024px){.login-intro{display:flex}}.login-intro-copy{max-width:38rem}.login-intro-copy h2{color:#2b245b;font-size:clamp(2.25rem,1.4rem + 2vw,3.5rem);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.08}.login-intro-copy>p{margin-top:var(--space-5);color:var(--pal-ink-700);font-size:clamp(1rem,.9rem + .3vw,1.2rem);line-height:1.55}.login-highlights{gap:var(--space-3);margin:var(--space-8) 0 0;padding:0;list-style:none;display:grid}.login-highlights li{align-items:center;gap:var(--space-3);color:var(--pal-ink-800);font-size:var(--text-base);font-weight:var(--weight-medium);display:flex}.login-highlights li>span{border:1px solid var(--pal-line-200);border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--color-brand);background:#fff;flex:none;place-items:center;display:grid}.login-highlights svg{width:1.1rem;height:1.1rem}.login-footnote{color:var(--pal-ink-500);font-size:var(--text-sm)}.login-main{gap:var(--space-8);background:#fff;flex-direction:column;padding:clamp(1.5rem,4vw,4rem);display:flex}.login-brand-compact{display:inline-flex}@media (width>=1024px){.login-brand-compact{display:none}}.login-form-area{align-content:center;gap:var(--space-6);flex:1;width:100%;max-width:24rem;margin:0 auto;display:grid}.login-header h1{color:#2b245b;font-size:clamp(1.75rem,1.4rem + 1vw,2.25rem);font-weight:var(--weight-bold);letter-spacing:-.02em}.login-form{gap:var(--space-5)}.login-form .input{min-height:3rem}.login-password{position:relative}.login-password .input{padding-right:3rem}.login-password-toggle{top:50%;right:var(--space-2);border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;transform:translateY(-50%)}.login-password-toggle:hover{background:var(--color-surface-muted);color:var(--color-brand-text)}.login-password-toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.login-password-toggle svg{width:1.1rem;height:1.1rem}.login-form .btn-lg{min-height:3rem;margin-top:var(--space-1)}.login-note{color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.app-shell{background:var(--pal-tint-100)}.app-main{background:var(--pal-tint-100);min-height:100dvh}.app-content{max-width:90rem}.app-shell .card,.app-shell .next-step{box-shadow:0 3px 14px rgb(var(--pal-brand-shade-rgb) / 5%)}.app-shell .next-step{border-color:var(--pal-line-200);background:#fff}.app-shell .progress>span{background:var(--color-brand)}.app-shell .tabs{border-color:var(--pal-line-200)}.app-shell .tab[aria-current=page]{color:var(--color-brand-text);border-color:var(--color-brand)}@media (width>=1024px){.app-shell{--shell-gap:1.5rem;gap:var(--shell-gap);padding:var(--shell-gap);grid-template-columns:minmax(15.5rem,17rem) minmax(0,1fr)}.app-shell .app-content{padding:0}.app-shell .page-title h1{margin-top:-.1em;line-height:1.1}.app-shell .sidebar{top:var(--shell-gap);height:calc(100dvh - 2 * var(--shell-gap));border:1px solid var(--pal-line-200);box-shadow:0 4px 20px rgb(var(--pal-brand-shade-rgb) / 6%);border-radius:1.1rem;overflow:hidden}.app-shell .app-main{border-radius:1.1rem}}@media (width>=1600px){.app-content{max-width:92rem}}.sidebar-org-item{min-width:0;position:relative}.sidebar-org-item .sidebar-link{padding-right:3.25rem}.sidebar-org-delete{width:2.75rem;height:2.75rem;color:var(--color-danger);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:.45rem;place-items:center;display:grid;position:absolute;top:50%;right:.125rem;transform:translateY(-50%)}.sidebar-org-delete svg{width:1rem;height:1rem}.sidebar-org-item:hover .sidebar-org-delete,.sidebar-org-item:focus-within .sidebar-org-delete{opacity:1}.sidebar-org-delete:hover{background:var(--color-danger-soft)}.sidebar-link[aria-current=page],.sidebar-link.active{background:var(--pal-brand-500);color:#fff}.sidebar-link[aria-current=page] svg,.sidebar-link.active svg{color:#fff}.sidebar-link[aria-current=page]:hover{background:var(--pal-brand-600);color:#fff}.sidebar-org-item .sidebar-link[aria-current=page]{padding-right:3.25rem}.sidebar-org-item:has(.sidebar-link[aria-current=page]) .sidebar-org-delete{color:#fff}.sidebar-org-item:has(.sidebar-link[aria-current=page]) .sidebar-org-delete:hover{background:#ffffff38}@media (hover:none){.sidebar-org-delete{opacity:1}}@media (width<=767px){.app-content{padding-inline:1rem}.page-actions .btn{white-space:normal;min-height:2.6rem}.org-grid,.gift-grid{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px){.gift-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.app-shell .event-summary,.app-shell .card{min-width:0}.app-shell .width-form{margin-inline:auto}.app-shell .page-actions{justify-content:flex-end}.app-shell .page-actions .btn{flex-shrink:0}.app-shell .danger-row:has(.btn-secondary){justify-content:flex-start}.live-screen,.viewer{--stage-bg:var(--pal-tint-110);--stage-surface:#fff;--stage-surface-strong:var(--pal-tint-150);--stage-border:var(--pal-line-300);--stage-border-strong:var(--pal-line-500);--stage-text:var(--pal-ink-900);--stage-text-secondary:var(--pal-ink-700);--stage-text-muted:var(--pal-ink-500);--stage-accent:var(--pal-brand-500);--stage-accent-soft:var(--pal-tint-350);--stage-gold-soft:var(--pal-tint-250);background:linear-gradient(145deg, #fff 0%, var(--pal-tint-75) 58%, var(--pal-tint-150) 100%)}.live-screen .stage-topbar{border-color:var(--pal-line-100);background:#ffffffd4;gap:1rem}.live-header-brand{flex:16rem;align-items:center;gap:1rem;min-width:0;display:flex}.live-header-brand .stage-logo{object-fit:contain;max-width:clamp(4rem,6vw,7rem);max-height:clamp(2.5rem,5vw,4.5rem)}.live-header-brand .stage-title{flex:auto}.live-header-brand h1{color:#2b245b}.live-screen .btn-stage-quiet{color:var(--pal-brand-ink)}.live-screen .btn-stage-quiet:hover{background:var(--pal-tint-350);color:var(--pal-brand-700)}.live-screen .registration-stage{max-width:100rem}.live-screen .registration-aside{align-content:start}.live-screen .roster-panel,.viewer .roster-panel{border:1px solid var(--pal-line-200);background:#ffffffe0;border-radius:1rem;padding:clamp(1rem,2vw,2rem)}.live-screen .roster li,.viewer .roster li{color:var(--pal-ink-800);box-shadow:0 2px 8px rgb(var(--pal-brand-shade-rgb) / 5%);background:#fff}.live-screen .roster li.is-new,.viewer .roster li.is-new{background:var(--pal-tint-250);border-color:var(--pal-line-700);color:var(--pal-brand-ink)}.live-screen .roster-heading,.viewer .roster-heading{color:var(--pal-ink-700)}.live-screen .qr-card,.viewer .qr-card{box-shadow:0 12px 30px rgb(var(--pal-brand-shade-rgb) / 10%)}.live-screen .count-display strong,.viewer .count-display strong{color:var(--pal-brand-500)}.live-screen .stage-message p,.viewer .stage-message p{color:var(--pal-ink-700)}.live-screen .stage-alert,.viewer .stage-alert{color:#8c2030;background:#fff2f4}.draw-screen{--stage-bg:var(--pal-tint-110);--stage-bg-raised:#fff;--stage-surface:#fff;--stage-surface-strong:var(--pal-tint-150);--stage-border:var(--pal-line-200);--stage-border-strong:var(--pal-line-500);--stage-text:var(--pal-ink-900);--stage-text-secondary:var(--pal-ink-700);--stage-text-muted:var(--pal-ink-500);--stage-accent:var(--pal-brand-500);--stage-accent-soft:var(--pal-tint-250);--stage-gold-soft:#fff4d9;--stage-danger:#b5263d;background:linear-gradient(145deg, #fff 0%, var(--pal-tint-75) 58%, var(--pal-tint-150) 100%)}.draw-screen :focus-visible{box-shadow:var(--focus-ring)}.draw-screen .stage-topbar{border-color:var(--pal-line-100);background:#ffffffe0;gap:1rem}.draw-header-brand{flex:16rem;align-items:center;gap:1rem;min-width:0;display:flex}.draw-header-brand .stage-logo{object-fit:contain;max-width:clamp(4rem,6vw,7rem);max-height:clamp(2.5rem,5vw,4.5rem)}.draw-header-brand .stage-title{flex:auto}.draw-screen .stage-eyebrow,.viewer .stage-eyebrow{border-radius:var(--radius-pill);background:var(--pal-tint-250);width:fit-content;color:var(--pal-brand-ink);letter-spacing:.08em;padding:.2rem .6rem}.draw-screen .stage-title h1,.viewer .stage-title h1{color:#2b245b}.draw-screen .stage-panel,.viewer .stage-panel{box-shadow:0 6px 22px rgb(var(--pal-brand-shade-rgb) / 6%)}.draw-screen .stage-badge,.viewer .stage-badge{background:var(--pal-tint-200);color:var(--pal-brand-ink)}.draw-screen .gift-option.is-selected,.viewer .gift-option.is-selected{background:var(--pal-tint-250)}.draw-screen .stage-progress,.draw-screen .reveal-progress,.viewer .stage-progress,.viewer .reveal-progress{background:var(--pal-tint-300)}.draw-screen .stage-progress>span,.viewer .stage-progress>span{background:var(--pal-brand-500)}.draw-screen .btn-stage,.draw-screen .btn-stage-quiet{color:var(--pal-brand-ink)}.draw-screen .btn-stage:hover:not(:disabled),.draw-screen .btn-stage-quiet:hover:not(:disabled){background:var(--pal-tint-250);color:var(--pal-brand-700)}.draw-screen .btn-stage-danger:hover:not(:disabled){color:#9b2034;background:#fdebed}.draw-screen .btn-celebrate{background:var(--pal-brand-500);color:#fff;box-shadow:0 8px 22px rgb(var(--pal-brand-rgb) / 19%)}.draw-screen .btn-celebrate:hover:not(:disabled){background:var(--pal-brand-600);color:#fff;filter:none}.draw-screen .winner-name,.draw-screen .winner-code strong,.viewer .winner-name,.viewer .winner-code strong{color:#2b245b;text-shadow:none}.draw-screen .winner-label,.draw-screen .stage-winner-list li:before,.draw-screen .completion-icon,.viewer .winner-label,.viewer .stage-winner-list li:before,.viewer .completion-icon{color:#925700}.draw-screen .winner-code,.viewer .winner-code{background:var(--pal-tint-180)}.draw-screen .stage-alert,.viewer .stage-alert{color:#8c2030;background:#fff2f4;border-color:#f3b9c2}.draw-screen .spotlight-grid li,.viewer .spotlight-grid li{background:var(--pal-tint-175);color:var(--pal-ink-500)}.draw-screen .spotlight-grid li.is-lit,.viewer .spotlight-grid li.is-lit{background:var(--pal-tint-350);color:var(--pal-brand-ink)}.draw-screen .draw-rail,.viewer .draw-rail{scrollbar-color:var(--pal-line-400) transparent}@media (width<=767px){.draw-screen .stage-toolbar{width:100%}.live-screen .stage-toolbar{justify-content:space-between;width:100%}.live-screen .registration-stage{gap:1rem}.live-screen .roster-panel{padding:1rem}}.dihud-logo{object-fit:contain;flex:none;height:auto;display:block}.stage-brand{flex:none;align-items:center;gap:clamp(.5rem,.35rem + .5vw,1rem);min-width:0;display:inline-flex}.stage-brand .stage-logo{width:clamp(2.75rem,2rem + 2.5vw,4.5rem);max-width:none;height:auto;max-height:none}.stage-brand-name{color:var(--dihud-navy);font-size:clamp(.75rem,.65rem + .35vw,1rem);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.viewer .viewer-header>.stage-brand{justify-self:start}.viewer .stage-brand .stage-logo{width:clamp(3.5rem,1.5rem + 4.5vw,9rem)}.viewer .stage-brand-name{font-size:clamp(.85rem,.45rem + .8vw,1.75rem)}.viewer .viewer-header h1{color:var(--dihud-navy)}.live-header-brand .stage-brand,.draw-header-brand .stage-brand{border-right:1px solid var(--color-border-strong);padding-right:clamp(.5rem,.35rem + .5vw,1rem)}.live-header-brand h1,.draw-screen .live-header-brand h1{color:var(--dihud-navy)}@media (width<=767px){.live-header-brand .stage-brand-name,.draw-screen .stage-brand-name{display:none}}.winner-brand-logo{width:clamp(2.75rem,2rem + 3vw,5rem)}.draw-screen .winner-brand-logo{width:min(10cqh,4.5rem)}.viewer .winner-brand-logo{width:clamp(3.5rem,7vh,8rem)}.preview-stage .winner-brand-logo{width:2.75rem}.draw-screen .winner-label,.viewer .winner-label{color:var(--pal-accent)}.draw-screen .winner-name,.draw-screen .winner-code strong,.viewer .winner-name,.viewer .winner-code strong{color:var(--dihud-navy)}.draw-screen .winner-reveal:before,.viewer .winner-reveal:before{background:radial-gradient(closest-side, rgb(var(--pal-brand-rgb) / 10%), transparent)}.public-page{background:radial-gradient(120% 60% at 50% 0%, var(--color-brand-soft) 0%, transparent 70%), var(--color-canvas)}.public-hero .public-logo{width:clamp(4.5rem,3.5rem + 5vw,6rem);max-width:none;max-height:none;margin-bottom:var(--space-1)}.public-eyebrow{color:var(--color-brand);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.14em;text-transform:uppercase}.public-hero h1{color:var(--dihud-navy)}.public-count svg{color:var(--color-brand)}.login-intro{border-right-color:var(--color-border);background:radial-gradient(40rem 28rem at 100% 0%, rgb(var(--pal-brand-rgb) / 10%), transparent 70%), radial-gradient(32rem 22rem at 0% 100%, #2b245b12, transparent 70%), linear-gradient(160deg, var(--pal-tint-180) 0%, var(--pal-tint-50) 100%);position:relative;overflow:hidden}@media (width>=1024px){.login-split{height:100dvh;min-height:0}.login-intro{justify-content:center;gap:clamp(1rem,3.5vh,2.25rem);padding:clamp(1.25rem,5vh,3.5rem) clamp(2rem,4vw,4rem) clamp(4.5rem,14vh,8rem)}.login-intro-copy h2{font-size:clamp(1.75rem,.6rem + 3.6vh + .9vw,3.25rem)}.login-intro-copy>p{margin-top:clamp(.5rem,1.8vh,1.25rem);font-size:clamp(.95rem,.7rem + .6vh,1.15rem)}.login-highlights{gap:clamp(.4rem,1.2vh,.75rem);margin-top:clamp(.75rem,3vh,2rem)}.login-logo{width:clamp(3.5rem,1.5rem + 5vh,6rem)}.login-main{overflow-y:auto}}.login-intro>:not(.login-skyline){z-index:1;position:relative}.login-association{align-items:center;gap:var(--space-4);display:flex}.login-logo{filter:drop-shadow(0 6px 18px #2b245b2e);width:clamp(4.5rem,3rem + 3vw,6.5rem)}.login-association strong{color:var(--dihud-navy);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.01em;display:block}.login-association span{color:var(--color-brand);font-size:var(--text-sm);font-weight:var(--weight-semibold);margin-top:.15rem;display:block}.login-intro-copy h2,.login-header h1{color:var(--dihud-navy)}.login-highlights li>span{border-color:var(--color-border);color:var(--color-brand)}.login-skyline{opacity:.1;pointer-events:none;width:100%;height:clamp(5.5rem,16vh,9.5rem);position:absolute;bottom:0;left:0;right:0}.login-brand{color:var(--dihud-navy)}.results-hero{border-color:var(--color-border);background:var(--color-surface);box-shadow:0 3px 14px rgb(var(--pal-brand-shade-rgb) / 5%)}.results-hero-icon{background:var(--color-celebrate-soft);color:var(--color-celebrate-strong);box-shadow:inset 0 0 0 1px #f4d9a2}.results-hero h2{color:var(--dihud-navy)}.badge-navy,.badge-count,.stage-winner-count{background:var(--dihud-navy-soft);color:var(--dihud-navy)}.lifecycle li[data-state=done]+li:before,.lifecycle li[data-state=done]+li[data-state=current]:before{background:var(--dihud-navy)}.lifecycle li[data-state=done] .lifecycle-dot{border-color:var(--dihud-navy);background:var(--dihud-navy)}.draw-finale-icon{background:var(--color-celebrate-soft);color:var(--color-celebrate-strong);box-shadow:inset 0 0 0 1px #f4d9a2}.draw-finale-header h2{color:var(--dihud-navy)}.stage.preview-stage{--stage-bg:var(--pal-tint-110);--stage-bg-raised:#fff;--stage-surface:#fff;--stage-surface-strong:var(--pal-tint-150);--stage-border:var(--pal-line-200);--stage-border-strong:var(--pal-line-500);--stage-text:var(--pal-ink-900);--stage-text-secondary:var(--pal-ink-700);--stage-text-muted:var(--pal-ink-500);--stage-accent:var(--pal-brand-500);--stage-accent-soft:var(--pal-tint-250);--stage-gold-soft:#fff4d9;--stage-danger:#b5263d;border:1px solid var(--color-border);background:linear-gradient(145deg, #fff 0%, var(--pal-tint-75) 58%, var(--pal-tint-150) 100%)}.preview-stage .reveal-progress{background:var(--pal-tint-300)}.preview-stage .winner-label{color:var(--pal-accent)}.preview-stage .winner-name,.preview-stage .winner-code strong{color:var(--dihud-navy);text-shadow:none}.preview-stage .winner-code{background:var(--pal-tint-180)}.preview-stage .winner-reveal:before{background:radial-gradient(closest-side, rgb(var(--pal-brand-rgb) / 10%), transparent)}.preview-stage .spotlight-grid li{background:var(--pal-tint-175);color:var(--pal-ink-500)}.preview-stage .spotlight-grid li.is-lit{background:var(--pal-tint-350);color:var(--pal-brand-ink)}.theme-menu .theme-menu-chevron{width:.9rem;height:.9rem;margin-left:calc(var(--space-1) * -.5);color:var(--color-text-muted)}.theme-menu .action-menu-list{min-width:14rem}.theme-menu-item[aria-checked=true]{font-weight:var(--weight-semibold)}.theme-swatch{border-radius:50%;flex:none;width:1rem;height:1rem;box-shadow:inset 0 0 0 1px #0000001f}.theme-menu-label{flex:1}.action-menu-item svg.theme-menu-check{color:var(--color-brand)}
