:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#17202a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#eef2ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#eef2ef;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.auth-layout,.centered-page{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel,.question-panel,.completion-panel{background:#fff;border:1px solid #dce5df;border-radius:8px;width:min(100%,560px);padding:24px;box-shadow:0 20px 45px #17202a14}.auth-panel h1,.progress-hero h1,.question-panel h1,.completion-panel h1{letter-spacing:0;margin:8px 0 12px;font-size:2rem;line-height:1.1}.brand-row,.question-logo-row,.top-bar,.station-row,.notice,.rank-strip,.text-link,.primary-action,.secondary-action{align-items:center;display:flex}.brand-row{gap:10px;font-weight:800}.brand-row.compact{font-size:.95rem}.station-icon,.question-logo{object-fit:contain;border-radius:8px;flex:none;width:44px;height:44px}.event-logo{object-fit:contain;border-radius:10px;flex:none;width:56px;height:56px}.brand-row.compact .event-logo{width:48px;height:48px}.question-logo{width:72px;height:72px}.muted{color:#5f6d68;line-height:1.5}.small{font-size:.88rem}.eyebrow{color:#60766e;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.field-label{color:#33413d;gap:8px;margin-top:18px;font-weight:700;display:grid}input{color:#17202a;background:#fff;border:1px solid #bfcbc5;border-radius:8px;width:100%;padding:12px 14px}input:focus{border-color:#4d9d88;outline:3px solid #7cc7b259}.email-form,.contact-form,.organizer-actions{gap:12px;margin-top:16px;display:grid}.auth-panel>.primary-action{margin-top:16px}.auth-panel>.secondary-action{margin-top:12px}.primary-action,.secondary-action,.icon-button{cursor:pointer;border:0;border-radius:8px;justify-content:center;gap:8px;min-height:44px;padding:0 16px;font-weight:800}.primary-action{color:#fff;background:#17202a}.secondary-action{color:#17202a;background:#e8f4ff;border:1px solid #bfd8ec}.primary-action:disabled,.secondary-action:disabled{cursor:not-allowed;opacity:.55}.full-width{width:100%}.inline-action{width:fit-content;margin-top:16px}.status-text{color:#33413d;margin:16px 0 0;font-weight:700}.notice{color:#33413d;background:#f4f7f5;border-radius:8px;gap:10px;margin-top:16px;padding:12px;line-height:1.4}.notice.no-margin{margin-top:0}.notice.success{color:#155c40;background:#e3f7ee}.notice.error,.notice.warning{color:#8a3d0f;background:#fff1e7}.modal-backdrop{z-index:20;background:#17202a6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{background:#fff;border:1px solid #dce5df;border-radius:8px;width:min(100%,460px);padding:20px;box-shadow:0 24px 60px #17202a38}.modal-panel h2{letter-spacing:0;margin:18px 0 8px;font-size:1.35rem;line-height:1.2}.modal-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;display:grid}.app-shell{width:min(100%,860px);margin:0 auto;padding:20px}.app-shell.narrow{width:min(100%,620px)}.top-bar{justify-content:space-between;margin-bottom:20px}.icon-button{color:#17202a;background:#fff;border:1px solid #dce5df;width:44px;padding:0}.progress-hero{padding:24px 0 20px}.progress-meter{background:#dbe5df;border-radius:999px;width:100%;height:12px;overflow:hidden}.progress-meter span{border-radius:inherit;background:#7cc7b2;height:100%;transition:width .18s;display:block}.station-list{gap:10px;display:grid}.station-row{background:#fff;border:1px solid #dce5df;border-radius:8px;gap:14px;min-height:76px;padding:14px}.station-row div{flex:1;gap:4px;min-width:0;display:grid}.station-row span{color:#60766e;align-items:center;gap:4px;font-size:.9rem;display:flex}.station-row .station-status{color:#8a3d0f;font-weight:700}.complete{color:#1f8a5a}.missing{color:#8aa099}.text-link{color:#33413d;gap:6px;width:fit-content;margin:0 0 16px;font-weight:800}.question-logo-row{gap:14px;margin-bottom:18px}.question-text{font-size:1.18rem;font-weight:750;line-height:1.45}.answer-grid{gap:10px;margin:20px 0;display:grid}.answer-option{color:#17202a;cursor:pointer;text-align:left;background:#fff;border:1px solid #d3dfd8;border-radius:8px;grid-template-columns:36px 1fr;align-items:center;gap:12px;min-height:58px;padding:10px 12px;line-height:1.35;display:grid}.answer-option span{background:#eef2ef;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.answer-option.selected{border-color:#17202a;box-shadow:0 0 0 3px #7cc7b247}.completion-panel{text-align:center}.qr-download-list{gap:8px;margin-top:18px;display:grid}.qr-download-row{border-top:1px solid #dce5df;grid-template-columns:1fr 44px;align-items:center;gap:12px;min-height:64px;padding:10px 0;display:grid}.qr-download-row div{gap:3px;min-width:0;display:grid}.qr-download-row span{color:#60766e;font-size:.9rem}.completion-badge{color:#17202a;background:#7cc7b2;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 12px;display:grid}.completion-badge.small{width:54px;height:54px;margin:0}.rank-strip{background:#fff7d6;border-radius:999px;justify-content:center;gap:8px;width:fit-content;margin:18px auto;padding:8px 12px;font-weight:850}.reward-block{justify-items:center;gap:12px;margin-top:18px;display:grid}.qr-card{background:#fff;border:1px solid #dce5df;border-radius:8px;place-items:center;width:fit-content;padding:12px;display:grid}.compact-list,.detail-list{gap:10px;margin-top:16px;display:grid}.compact-list a,.detail-list div{background:#f4f7f5;border-radius:8px;padding:12px}.detail-list{text-align:left}.detail-list div{gap:3px;display:grid}.detail-list dt{color:#60766e;text-transform:uppercase;font-size:.78rem;font-weight:800}.detail-list dd{margin:0;font-weight:750}.scanner-box{border:1px solid #dce5df;border-radius:8px;overflow:hidden}@media (width<=560px){.auth-layout,.app-shell{padding:14px}.auth-panel,.question-panel,.completion-panel{padding:18px}.auth-panel h1,.progress-hero h1,.question-panel h1,.completion-panel h1{font-size:1.55rem}.question-logo{width:58px;height:58px}}
