*{box-sizing:border-box;margin:0;padding:0}:root{--app-header-h:3.25rem;--crumb-h:2rem}.default-colors,:root,[data-scheme-swatch=midnight]{--bg:#0a0a12;--surface:#13131d;--surface-2:#1a1a26;--border:#2a2a3a;--border-strong:#3a3a4e;--fg:#f2f2f8;--fg-2:#c9c9d6;--dim:#8a8aa0;--accent:#ffd54a;--on-accent:#17120a;--danger:#ff7a7a;--success:#68e8ae}.default-colors{color:var(--fg)}[data-scheme-swatch=moss],html[data-color-scheme=moss]{color-scheme:dark;--bg:#00270d;--surface:#003112;--surface-2:#003a16;--border:#0d4a22;--border-strong:#286037;--fg:#bbe586;--fg-2:#a1c375;--dim:#88a365;--accent:#fe904d;--on-accent:#00270d;--danger:#ff958e;--success:#75df8f}[data-scheme-swatch=sumi],html[data-color-scheme=sumi]{color-scheme:light;--bg:#ffffff;--surface:#f5f5f5;--surface-2:#ffffff;--border:#dedede;--border-strong:#b7b7b7;--fg:#141618;--fg-2:#2c2e30;--dim:#464849;--accent:#067272;--on-accent:#ffffff;--danger:#b32322;--success:#21763c}[data-scheme-swatch=cobalt],html[data-color-scheme=cobalt]{color-scheme:light;--bg:#fafcfe;--surface:#ebf3fc;--surface-2:#ffffff;--border:#d0dceb;--border-strong:#aab5c4;--fg:#144097;--fg-2:#3057a1;--dim:#4b6caa;--accent:#a95703;--on-accent:#fafcfe;--danger:#b32322;--success:#21763c}[data-scheme-swatch=plum],html[data-color-scheme=plum]{color-scheme:light;--bg:#fffafd;--surface:#f9eef5;--surface-2:#ffffff;--border:#e6d5e0;--border-strong:#bfafb9;--fg:#63134f;--fg-2:#7b3967;--dim:#935a81;--accent:#5b6c02;--on-accent:#fffafd;--danger:#b32322;--success:#21763c}body,html{height:100%}body{background:var(--bg);color:var(--fg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.screen h1{font-size:clamp(2.5rem,10vw,6rem);letter-spacing:.08em}.label{letter-spacing:.2em;text-transform:uppercase;font-size:.85rem}.hint,.label{color:var(--dim)}.hint{max-width:36rem;line-height:1.6}.you{color:var(--accent);font-size:clamp(1.2rem,4vw,2rem);letter-spacing:.1em}.meta{position:fixed;bottom:.75rem;left:0;right:0;color:var(--dim);font-size:.75rem}.row{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.auth-row{align-items:center;min-height:3.5rem}.app-header{position:fixed;top:0;left:0;right:0;z-index:10;height:var(--app-header-h);display:grid;grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;grid-gap:.75rem;gap:.75rem;padding:0 1rem;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb,var(--fg) 10%,transparent)}.app-header-home{justify-self:start;display:inline-flex;align-items:center}.app-header-home svg{display:block;height:1.6rem;width:auto}.app-header-event{margin:0;text-align:center;font-size:.9rem;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header-menu{position:relative;justify-self:end;align-self:stretch;display:flex;align-items:center}.app-header-menu-button{display:grid;place-items:center;width:44px;height:44px;padding:0;background:transparent;color:var(--fg)}.app-header-menu-button>span{display:grid;place-items:center;width:40px;height:40px;border-radius:10px}.app-header-menu-button:hover>span,.app-header-menu-button[aria-expanded=true]>span{background:var(--surface)}.app-header-menu-popup{position:absolute;top:calc(100% + 7px);right:0;width:272px;max-width:calc(100vw - 1.2rem);padding:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 28px rgb(0 0 0/.18);display:flex;flex-direction:column;gap:2px}.app-header-menu-head{display:flex;align-items:center;gap:12px;padding:10px 10px 12px}.app-header-menu-avatar{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:700}.app-header-menu-identity{min-width:0}.app-header-menu-name{font-size:14px;font-weight:700;overflow-wrap:anywhere}.app-header-menu-email{color:var(--dim);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header-menu-divider{height:1px;margin:0 6px 4px;background:var(--border)}.app-header-menu-item{display:flex;align-items:center;gap:10px;height:44px;padding:0 12px;border-radius:8px;background:transparent;color:var(--fg);font-size:14px;letter-spacing:normal;text-align:left;text-decoration:none}.app-header-menu-item svg{flex-shrink:0}.app-header-menu-item:focus-visible,.app-header-menu-item:hover{background:var(--surface)}.app-header-menu-mypage{min-height:52px}.app-header-menu-item-label{display:flex;flex-direction:column}.app-header-menu-item-label small{color:var(--dim);font-size:11.5px}.app-header~.screen{padding-top:calc(var(--app-header-h) + 2rem)}.app-crumb{position:fixed;top:var(--app-header-h);left:0;right:0;z-index:9;height:var(--crumb-h);display:flex;align-items:center;padding:0 1rem;background:color-mix(in srgb,color-mix(in srgb,var(--surface) 67%,var(--bg)) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb,var(--fg) 10%,transparent)}.app-crumb ol{list-style:none;font-size:.78rem;letter-spacing:.04em;white-space:nowrap;overflow:hidden}.app-crumb li,.app-crumb ol{display:flex;align-items:center;gap:.4rem;min-width:0}.app-crumb li{flex:none}.app-crumb li.crumb-elastic{flex:0 1 auto;min-width:4ch}.app-crumb li+li:before{content:"/";color:color-mix(in srgb,var(--dim) 55%,transparent)}.app-crumb [aria-current=page],.app-crumb a{overflow:hidden;text-overflow:ellipsis;min-width:0}.app-crumb a{color:var(--dim);text-decoration:none}.app-crumb a:focus-visible,.app-crumb a:hover{color:var(--fg);text-decoration:underline;text-underline-offset:3px}.app-crumb [aria-current=page]{color:var(--fg)}.app-crumb~.screen{padding-top:calc(var(--app-header-h) + var(--crumb-h) + 2rem)}@media (max-width:30rem){.app-header{grid-template-columns:1fr minmax(6rem,max-content) 1fr;gap:.5rem;padding:0 .6rem}.app-header-home svg{height:1.25rem}.app-header-event{font-size:.8rem;letter-spacing:.04em}.app-crumb{padding:0 .6rem}.app-crumb li:not(:nth-last-child(-n+2)){display:none}.app-crumb li:nth-last-child(2):before{content:"←";color:var(--accent)}}@media (max-width:24rem){.app-header-home svg{width:1.1rem}}button{font:inherit;background:var(--fg);color:var(--bg);border:none;border-radius:.5rem;padding:1rem 2.5rem;font-size:1.25rem;letter-spacing:.15em;cursor:pointer}button:disabled{opacity:.4;cursor:default}.mypage-screen{justify-content:flex-start;text-align:left}.mypage-content{width:100%;max-width:960px;display:flex;flex-direction:column;gap:36px}.screen.mypage-screen h1{font-size:28px;letter-spacing:.08em}.mypage-section h2{margin-bottom:12px;color:var(--dim);font-size:13px;font-weight:400;letter-spacing:.2em}.mypage-description{margin-bottom:20px;color:var(--fg-2);font-size:13px;line-height:1.6}.mypage-schemes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:14px;gap:14px}.mypage-scheme{display:flex;flex-direction:column;gap:10px;min-width:0;padding:10px;border:2px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--fg);letter-spacing:normal;text-align:left}.mypage-scheme[aria-pressed=true]{border-color:var(--accent)}.mypage-swatch{display:flex;flex-direction:column;gap:8px;width:100%;height:96px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.mypage-swatch-row{display:flex;align-items:center;gap:8px}.mypage-swatch-tile{width:10px;height:10px;border-radius:2px;background:var(--accent)}.mypage-swatch-bar{width:44%;height:6px;border-radius:3px;background:var(--fg)}.mypage-swatch-panel{height:30px;border:1px solid var(--border);border-radius:6px;background:var(--surface)}.mypage-swatch-block{align-self:flex-start;width:46px;height:14px;border-radius:4px;background:var(--fg)}.mypage-scheme-label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:24px;font-size:14px}.mypage-scheme-radio{display:grid;place-items:center;flex:0 0 16px;height:16px;border:2px solid var(--border-strong);border-radius:50%}.mypage-scheme[aria-pressed=true] .mypage-scheme-radio{border-color:var(--accent)}.mypage-scheme[aria-pressed=true] .mypage-scheme-radio:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}.mypage-scheme-current{margin-left:auto;color:var(--accent);font-size:11px}.mypage-account-card{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.mypage-account-card dl{flex:1 1;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-column-gap:24px;column-gap:24px;grid-row-gap:10px;row-gap:10px;font-size:14px}.mypage-account-card dt{color:var(--dim)}.mypage-account-card dd{overflow-wrap:anywhere}.mypage-account-manage{flex-shrink:0;min-height:44px;padding:0 18px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-2);color:var(--fg);font-size:13px;letter-spacing:normal}.mypage-account-note{margin-top:12px;color:var(--dim);font-size:12px}@media (max-width:40rem){.mypage-schemes{grid-template-columns:repeat(2,minmax(0,1fr))}.mypage-account-card{flex-direction:column;align-items:stretch}.mypage-account-manage{width:100%}}@media (max-width:30rem){.screen.mypage-screen h1{font-size:24px}}.home-screen{justify-content:flex-start}.category-section,.home-screen>.recent-events{width:min(73.75rem,100%);max-width:none}.category-section+.category-section{margin-top:1.5rem}.category-heading-row{display:flex;justify-content:space-between;align-items:baseline;margin:1rem 0 .75rem;color:var(--dim);font-size:.75rem}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.5rem;gap:1.5rem}.category-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;color:var(--fg);text-align:left;text-decoration:none;background:var(--surface);border:1px solid var(--border);border-radius:14px;transition:border-color .16s ease,transform .16s ease}.category-card:focus-visible,.category-card:hover{border-color:var(--accent);transform:translateY(-2px);outline:none}.category-card>img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.category-card.compact>img{aspect-ratio:5/2}.category-card.compact .category-card-body{gap:.5rem;padding-top:.85rem}.menu-entry-card{min-height:10rem;background:radial-gradient(circle at 88% 20%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 28%),var(--surface)}.quiz-entry-card{min-height:10rem;background:radial-gradient(circle at 88% 20%,rgba(104,143,255,.24),transparent 28%),var(--surface)}.category-card-body{display:flex;flex-direction:column;flex:1 1;gap:.65rem;padding:1.1rem 1.25rem 1.25rem}.category-card-body>strong{font-size:1.25rem}.category-description{min-height:2.6em;color:color-mix(in srgb,var(--fg-2) 25%,var(--dim));font-size:.8rem;line-height:1.6}.category-tags{display:flex;flex-wrap:wrap;gap:.5rem}.category-tags>span{padding:.2rem .6rem;color:var(--fg-2);font-size:.7rem;border:1px solid var(--border-strong);border-radius:999px}.category-action{margin-top:auto;color:var(--accent);font-size:.85rem}.registration-screen{align-items:stretch;justify-content:flex-start;width:min(80rem,100%);margin:0 auto;padding-bottom:7rem;text-align:left}.registration-heading{display:flex;align-items:baseline;gap:1.25rem}.registration-screen .registration-title{font-size:1.5rem;letter-spacing:.06em}.participants-heading .hint,.registration-heading .hint{font-size:.8rem}.registration-fields{display:grid;grid-template-columns:minmax(18rem,1fr) auto auto;grid-gap:1rem;gap:1rem;align-items:end}.award-name-grid label,.registration-fields label{display:grid;grid-gap:.45rem;gap:.45rem;color:var(--dim);font-size:.78rem}.award-name-grid input,.participant-table input,.registration-fields input,.registration-fields select{min-width:0;padding:.6rem .75rem;color:var(--fg);font:inherit;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:8px}.award-name-grid input,.registration-name input{width:100%}.award-name-fields{display:grid;grid-template-columns:minmax(16rem,1fr) 2fr;grid-gap:1rem;gap:1rem;align-items:end}.award-name-fields h2{margin:0 0 .35rem;font-size:1rem}.award-name-fields .hint{margin:0;font-size:.78rem}.award-name-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.count-input{display:flex;align-items:center;gap:.5rem;color:var(--fg)}.count-input input{width:7rem}.participants-section{display:grid;grid-gap:.8rem;gap:.8rem}.participants-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.confirm-layout h2,.participants-heading h2{margin-bottom:.35rem;font-size:1rem}.confirm-actions,.participant-actions{display:flex;gap:.65rem}button.secondary,button.text-button{padding:.65rem 1rem;color:var(--fg);font-size:.8rem;letter-spacing:.04em;background:var(--surface-2);border:1px solid var(--border-strong)}button.accent-outline{color:var(--accent);border-color:var(--accent)}.participant-table-wrap{max-height:60vh;overflow:auto;border:1px solid var(--border);border-radius:10px}.participant-table{width:100%;min-width:57rem;border-collapse:collapse;font-size:.8rem}.participant-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;color:var(--dim);background:var(--surface)}.participant-table td,.participant-table th{padding:.3rem .45rem;text-align:left;border-bottom:1px solid var(--border)}.participant-table td:first-child,.participant-table th:first-child{width:3rem;text-align:center}.participant-table input{width:100%;padding:.35rem .5rem;border-radius:6px}.participant-table td:nth-child(2){width:26%}.participant-table td:nth-child(3){width:7rem}.participant-table td:nth-child(4){width:12rem}.participant-table td:nth-child(5){width:28%}.participant-name-cell{display:flex;align-items:center;gap:.55rem}.initial-avatar{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;font-size:.7rem}button.row-delete{padding:.4rem;color:var(--dim);font-size:1rem;line-height:1;background:transparent}.registration-errors{padding:.75rem 1rem .75rem 2rem;color:var(--danger);line-height:1.5;background:color-mix(in srgb,var(--danger) 8%,transparent);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);border-radius:8px}.screen.registration-screen>.registration-bar{position:fixed;right:0;bottom:0;left:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem max(2rem,calc((100vw - 80rem) / 2 + 2rem));background:color-mix(in srgb,var(--bg) 96%,transparent);border-top:1px solid var(--border)}.registration-bar button{white-space:nowrap}.registration-bar .confirm-actions>button:last-child,.registration-bar>button{padding:.85rem 1.6rem;font-size:.95rem;letter-spacing:.08em}.confirm-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);grid-gap:1.25rem;gap:1.25rem}.confirm-main,.confirm-side{display:grid;align-content:start;grid-gap:1rem;gap:1rem}.confirm-side{padding:1.15rem;background:var(--surface);border:1px solid var(--border);border-radius:12px}.summary-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.7rem;gap:.7rem}.summary-tile{min-width:0;padding:.9rem;background:var(--surface);border:1px solid var(--border);border-radius:10px}.summary-tile.wide{grid-column:1/-1}.summary-tile>span{display:block;margin-bottom:.45rem;color:var(--dim);font-size:.7rem}.summary-tile>strong{overflow-wrap:anywhere}.summary-tile.accent>strong{color:var(--accent);font-size:2rem}.summary-tile>small{margin-left:.3rem;color:var(--dim)}.confirm-participants{padding:1rem;border:1px solid var(--border);border-radius:10px}.confirm-participants ol,.round-bars,.tie-list{display:grid;grid-gap:.45rem;gap:.45rem;list-style:none}.confirm-participants li{display:grid;grid-template-columns:4rem minmax(0,1fr) auto;grid-gap:.75rem;gap:.75rem;padding:.55rem 0;border-bottom:1px solid var(--border)}button.text-button{margin-top:.75rem;color:var(--accent);background:transparent}.round-bars li{display:grid;grid-template-columns:2.5rem minmax(2rem,1fr) 3rem;align-items:center;grid-gap:.6rem;gap:.6rem;font-size:.75rem}.round-bars i{display:block;min-width:2px;height:.65rem;background:#8fa6ff;border-radius:3px}@media (max-width:48rem){.home-screen,.registration-screen{padding-right:1rem;padding-left:1rem}.category-grid{grid-template-columns:1fr}.participants-heading,.registration-heading{align-items:stretch;flex-direction:column}.award-name-fields,.registration-fields{grid-template-columns:1fr}.award-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.confirm-layout{grid-template-columns:1fr}.summary-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.screen.registration-screen>.registration-bar{padding-right:1rem;padding-left:1rem;font-size:.75rem}.registration-bar .confirm-actions>button,.registration-bar>button{padding:.75rem 1rem}}.confirm-dialog{width:min(92vw,420px);max-width:none;margin:auto;padding:1.1rem;color:var(--fg);font:inherit;background:var(--surface-2);border:1px solid var(--danger);border-radius:10px}.confirm-dialog::-webkit-backdrop{background:color-mix(in srgb,var(--fg) 42%,transparent)}.confirm-dialog::backdrop{background:color-mix(in srgb,var(--fg) 42%,transparent)}.confirm-dialog[open]{display:block}.confirm-dialog h2{overflow-wrap:anywhere;font-size:1rem;line-height:1.4}.confirm-dialog-body{margin-top:.65rem;color:var(--dim);font-size:.82rem;line-height:1.5;overflow-wrap:anywhere}.confirm-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.confirm-dialog-actions button{min-height:44px;padding:.55rem .9rem;font:inherit;border-radius:8px}.confirm-dialog-cancel{color:var(--fg);background:transparent;border:1px solid var(--border)}.confirm-dialog-confirm{color:var(--bg);font-weight:700;background:var(--danger);border:1px solid var(--danger)}.create-dialog{width:min(92vw,420px);max-width:none;max-height:min(90dvh,760px);margin:auto;padding:1.1rem;overflow-y:auto;color:var(--fg);font:inherit;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:10px}.create-dialog::-webkit-backdrop{background:color-mix(in srgb,var(--fg) 42%,transparent)}.create-dialog::backdrop{background:color-mix(in srgb,var(--fg) 42%,transparent)}.create-dialog[open]{display:block}.create-dialog h2{margin:0;overflow-wrap:anywhere;font-size:1rem;line-height:1.4}.create-dialog-body{display:grid;grid-gap:.85rem;gap:.85rem;margin-top:.8rem}.create-dialog-name{display:grid;grid-gap:.35rem;gap:.35rem;color:var(--dim);font-size:.78rem}.create-dialog-name input{min-width:0;min-height:44px;padding:.65rem .75rem;color:var(--fg);font:inherit;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:9px}.create-dialog-count{display:flex;justify-content:space-between;color:var(--dim);font-size:.68rem}.create-dialog-count small{font-size:inherit}.create-dialog-join-mode{display:grid;grid-gap:.5rem;gap:.5rem;padding:0;border:0}.create-dialog-join-mode legend{margin-bottom:.35rem;color:var(--dim);font-size:.78rem}.create-dialog-join-mode label{display:flex;gap:.55rem;align-items:flex-start;min-height:66px;padding:.65rem;border:1px solid var(--border-strong);border-radius:9px}.create-dialog-join-mode label:has(input:checked){border:1.5px solid var(--accent)}.create-dialog-join-mode input{flex:none;margin-top:.15rem;accent-color:var(--accent)}.create-dialog-join-mode span{display:grid;grid-gap:.25rem;gap:.25rem}.create-dialog-join-mode strong{font-size:.8rem}.create-dialog-join-mode small{color:var(--dim);font-size:.68rem;line-height:1.45}.create-dialog-join-hint{margin:-.45rem 0 0;color:var(--dim);font-size:.7rem}.create-dialog-errors{padding:.65rem .8rem .65rem 1.8rem;color:color-mix(in srgb,var(--danger) 88%,var(--fg));font-size:.75rem;background:color-mix(in srgb,var(--danger) 8%,transparent);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);border-radius:9px}.create-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.create-dialog-actions button{min-height:44px;padding:.55rem .9rem;font:inherit;letter-spacing:.04em;border-radius:8px}.create-dialog-cancel{color:var(--fg);background:transparent;border:1px solid var(--border)}.create-dialog-submit{color:var(--bg);font-weight:700;background:var(--fg);border:1px solid var(--fg)}.create-dialog-status{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}.create-dialog-status strong{font-size:.95rem}.create-dialog-status small{color:var(--dim);font-size:.75rem}.create-dialog-spinner{width:40px;height:40px;animation:create-dialog-spin 1s linear infinite}.create-dialog-spinner circle{fill:none;stroke:var(--border-strong);stroke-width:3}.create-dialog-spinner path{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.create-add-row{display:flex;width:100%;min-height:64px;align-items:center;gap:14px;padding:10px 16px;color:var(--fg);font-size:inherit;letter-spacing:normal;text-align:left;background:transparent;border:1.5px dashed var(--border-strong);border-radius:12px;cursor:pointer}.create-add-row:hover:not(:disabled){border-color:var(--accent)}.create-add-row:disabled{opacity:.55;cursor:not-allowed}.create-add-icon{display:grid;width:32px;height:32px;flex:none;place-items:center;color:var(--bg);background:var(--fg);border-radius:50%}.create-add-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.create-add-copy{display:grid;grid-gap:.2rem;gap:.2rem;min-width:0}.create-add-copy strong{font-size:.9rem}.create-add-copy small{color:var(--dim);font-size:.72rem;line-height:1.4}@keyframes create-dialog-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.create-dialog-spinner{animation:none}}a,code{color:var(--accent)}.error{color:var(--danger)}.logs{list-style:none;color:var(--dim);font-size:.8rem;line-height:1.7}.kpi-table{border-collapse:collapse;font-size:.85rem;max-width:min(92vw,48rem)}.kpi-table td,.kpi-table th{border:1px solid var(--border-strong);padding:.5rem .75rem;text-align:left}.kpi-table td[data-verdict=fail]{color:var(--danger)}.kpi-table td[data-verdict=pass]{color:var(--success)}.join-form{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.join-form input{font:inherit;letter-spacing:.3em;text-transform:uppercase;text-align:center;background:#16162a;color:var(--fg);border:1px solid #333356;border-radius:.5rem;padding:1rem;width:12rem}.stage-canvas{position:fixed;inset:0;z-index:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen>:not(.stage-canvas){position:relative;z-index:1}.screen>.sync-band{position:fixed;top:.5rem;left:50%;transform:translateX(-50%);z-index:2;display:flex;gap:.75rem;align-items:center;padding:.2rem .75rem;border-radius:999px;background:rgba(10,10,18,.82);color:var(--fg);font-size:.8rem;pointer-events:none}.sync-band:empty{display:none}.screen>.meta-band{position:fixed;right:.5rem;bottom:.5rem;left:auto;z-index:2;margin:0;padding:.15rem .5rem;border-radius:.4rem;background:rgba(10,10,18,.7);font-size:.65rem;opacity:.7;pointer-events:none;max-width:calc(100vw - 1rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen>.supporter.hud-band{position:fixed;left:50%;bottom:3.25rem;transform:translateX(-50%);z-index:2;margin:0;max-height:46vh;overflow-y:auto;box-shadow:0 8px 28px rgba(0,0,0,.5)}@media (min-aspect-ratio:13/10){.screen>.supporter.hud-band{left:1rem;right:auto;bottom:1rem;transform:none;width:min(24rem,42vw);max-height:62vh}}.screen>.tally.hud-band{position:fixed;left:1rem;bottom:1rem;z-index:2;margin:0;width:min(26rem,44vw);max-height:40vh;overflow-y:auto;pointer-events:none}@media (max-aspect-ratio:1/1){.screen>.tally.hud-band{width:auto;right:1rem}}body:not(:has(.app-header)) .screen .you,body:not(:has(.app-header)) .screen h1{text-shadow:0 2px 14px rgba(0,0,0,.75)}.app-header~.screen h1{text-shadow:0 2px 14px color-mix(in srgb,var(--bg) 75%,transparent)}.progress{width:min(60vw,30rem);height:.5rem;background:#22223a;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:inherit;transform:scaleX(0);transform-origin:left}.recap{width:min(34rem,92vw);margin:1.5rem auto 4rem;padding:1.25rem 1.5rem 1.5rem;border:1px solid rgba(255,255,255,.14);border-radius:.75rem;background:rgba(8,8,14,.92);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left}.recap-headline{margin:.35rem 0 .9rem;color:var(--accent);font-size:clamp(1.4rem,6vw,2.2rem);letter-spacing:.08em}.recap-line{margin:.2rem 0;color:var(--fg);font-size:.95rem;line-height:1.7}.recap-curve{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.recap-curve li{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--dim)}.recap-round{width:2.2rem;flex:none}.recap-bar{height:.55rem;border-radius:.3rem;background:rgba(138,180,255,.55);flex:none}.recap-curve li.fell .recap-bar{background:var(--accent)}.recap-curve li.fell{color:var(--accent)}.recap-remaining{flex:none}.recap-marker,.recap-share{letter-spacing:.08em}.recap-share{margin-top:1.2rem;width:100%;padding:.85rem 1rem;font-size:1rem;background:var(--accent);color:#14140a}.supporter{width:min(34rem,92vw);margin:1.25rem auto 0;padding:1rem 1.25rem 1.25rem;border:1px solid rgba(255,255,255,.14);border-radius:.75rem;background:rgba(8,8,14,.92);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left}.supporter-choices{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem;max-height:40vh;overflow-y:auto}.supporter-pick{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .9rem;font-size:.95rem;letter-spacing:.04em;background:rgba(255,255,255,.08);color:var(--fg);border-radius:.5rem}.supporter-pick.picked{background:var(--accent);color:#14140a}.supporter-pick .votes{opacity:.7;font-size:.85rem}.tally{width:min(40rem,92vw);margin:1.25rem auto 0;padding:.9rem 1.25rem 1.1rem;border-radius:.75rem;background:rgba(8,8,14,.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left}.tally-line{margin:.3rem 0 0;color:var(--accent);font-size:clamp(1.1rem,3.5vw,1.8rem);letter-spacing:.06em}.tally-bars{list-style:none;margin:.6rem 0 0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.tally-bars li{display:flex;align-items:center;gap:.6rem;font-size:.95rem;color:var(--fg)}.tally-name{flex:none;width:8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tally-bar{height:.7rem;border-radius:.35rem;background:var(--accent);flex:none;max-width:60%}.tally-votes{color:var(--dim)}.import-warning{display:flex;align-items:flex-start;gap:.5rem;margin:.6rem 0;color:var(--fg);font-size:.85rem;line-height:1.6;cursor:pointer}.import-warning strong{color:var(--accent)}[data-testid=import-panel] input[type=file]{display:block;margin:.6rem 0;font:inherit;font-size:.85rem;color:var(--dim)}[data-testid=import-panel] textarea{display:block;box-sizing:border-box;width:100%;margin:.4rem 0 .6rem;font:inherit;font-size:.85rem}[data-testid=import-panel] button{padding:.5rem 1.2rem;font-size:.9rem}[data-testid=join-qr] .hint{overflow-wrap:anywhere}.rename-form{display:flex;gap:.5rem;align-items:center;justify-content:center;flex-wrap:wrap}.rename-form input{width:16rem}.rename-form input,.rename-form select{font:inherit;font-size:.95rem;background:var(--surface-2);color:var(--fg);border:1px solid var(--border-strong);border-radius:.5rem;padding:.5rem .75rem}.rename-form button{padding:.5rem 1rem;font-size:.85rem}.link-button{background:none;border:none;color:var(--accent);font:inherit;font-size:.8rem;padding:0;text-decoration:underline;cursor:pointer;letter-spacing:.05em}.print-sheet{display:none}.cue{margin:-.5rem 0 .75rem;font-size:.85rem;opacity:.7}.cue.waiting{opacity:1;font-weight:700;color:var(--accent)}.code-actions{margin:.5rem 0 .75rem}.code-actions button{padding:.4rem 1rem;font-size:.8rem}.confirm-avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;margin-bottom:.5rem}.join-code-big{font-family:ui-monospace,monospace;font-size:2rem;letter-spacing:.3em;margin:.5rem 0 .25rem}.report{max-width:40rem;margin:0 auto;text-align:left;border:1px solid color-mix(in srgb,var(--fg) 15%,transparent);border-radius:.5rem;padding:1.5rem}.report h2{margin:0 0 .25rem;font-size:1.3rem}.report h3{margin:1.5rem 0 .5rem;font-size:.8rem;letter-spacing:.2em;opacity:.7}.report-line{margin:0 0 .5rem;line-height:1.7}.report-checks{list-style:none;padding:0;margin:0;line-height:1.9}.report-note{font-size:.75rem;opacity:.6;line-height:1.6;margin:.5rem 0 0}.recent-events{margin-top:2.5rem;text-align:left;max-width:32rem;width:100%}.recent-events>summary{cursor:pointer}.recent-events ul{list-style:none;padding:0;margin:.5rem 0 0}.recent-events li{padding:.5rem 0;border-top:1px solid color-mix(in srgb,var(--fg) 10%,transparent)}.recent-events a,.recent-meta{display:block}.recent-meta{font-size:.75rem;opacity:.55;margin-top:.1rem}@media print{body{background:#fff;color:#000}.app-crumb,.app-header{display:none}.app-crumb~.screen,.app-header~.screen{padding-top:0}.screen{display:block;min-height:0;padding:0;text-align:left}.screen>:not(.print-sheet):not(.report){display:none!important}.report{max-width:none;border:0;padding:0;color:#000}.report h3{border-bottom:1px solid #999}.print-sheet{display:block;color:#000}.print-sheet h2{font-size:1.2rem;margin:0 0 .25rem}.print-sheet p{font-size:.75rem;margin:0 0 .75rem}.print-sheet table{width:100%;border-collapse:collapse;font-size:.9rem}.print-sheet td,.print-sheet th{border:1px solid #999;padding:.35rem .5rem;text-align:left}.print-sheet td.code{font-family:ui-monospace,monospace;letter-spacing:.15em;font-size:1.05rem;white-space:nowrap}.print-sheet td.tick{width:3rem}.print-sheet tr{page-break-inside:avoid;break-inside:avoid}.print-sheet thead{display:table-header-group}.print-sheet .slips{display:grid;grid-template-columns:1fr 1fr}.print-sheet .slip{border:1px dashed #666;padding:6mm 4mm;text-align:center;page-break-inside:avoid;break-inside:avoid}.print-sheet .slip p{margin:0}.print-sheet .slip .slip-event{font-size:.65rem;color:#444}.print-sheet .slip .slip-name{font-size:1.25rem;font-weight:700;margin:1mm 0 2mm}.print-sheet .slip img{width:34mm;height:34mm}.print-sheet .slip .code{font-family:ui-monospace,monospace;letter-spacing:.15em;font-size:1.05rem;margin-top:1mm}.print-sheet .slip .slip-note{font-size:.6rem;color:#444;margin-top:1mm}}