:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-500:#64748b;--slate-700:#334155;--slate-900:#0f172a;--indigo-50:#eef2ff;--indigo-100:#e0e7ff;--indigo-500:#6366f1;--indigo-600:#4f46e5;--indigo-700:#4338ca}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 10%, #6366f11f, transparent 35%), radial-gradient(circle at 90% 0%, #4f46e51a, transparent 30%), var(--slate-50);color:var(--slate-900);margin:0;font-family:Pretendard,Noto Sans KR,system-ui,-apple-system,sans-serif}.container{max-width:920px;margin:32px auto;padding:0 16px 32px}@media (max-width:720px){.container{margin:24px auto;padding:0 16px 16px}}
.landing-page .landing-hero{isolation:isolate;color:#f8fafc;background:linear-gradient(140deg,#0b1020 0%,#111827 55%,#172554 100%);border:1px solid #1f2937;border-radius:28px;margin-bottom:18px;padding:36px 30px;animation:.52s cubic-bezier(.22,1,.36,1) landing-fade-up;position:relative;overflow:hidden;box-shadow:0 24px 48px #02061773,inset 0 1px #94a3b82e}.landing-hero-glow{filter:blur(2px);z-index:-1;opacity:.42;border-radius:999px;width:260px;height:260px;position:absolute}.landing-hero-glow-left{background:radial-gradient(circle,#fde68acc,#0000 68%);animation:9s ease-in-out infinite float-slow;top:-120px;left:-80px}.landing-hero-glow-right{background:radial-gradient(circle,#7dd3fcb3,#0000 68%);animation:11s ease-in-out infinite reverse float-slow;bottom:-120px;right:-70px}.landing-page .landing-kicker{letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin:0 0 10px;font-size:12px}.landing-page .landing-title{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(32px,5vw,52px);line-height:1.14}.landing-page .landing-subtitle{color:#cbd5e1;max-width:680px;margin:0;line-height:1.65}.landing-meta{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.landing-page .landing-meta span{color:#e8e4ddcc;background:#ffffff0d;border:1px solid #ffffff17;border-radius:999px;align-items:center;padding:6px 10px;font-size:13px;display:inline-flex}.landing-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.landing-page .landing-cta-card{border:1px solid #0000;border-radius:20px;flex-direction:column;justify-content:center;gap:4px;min-height:104px;padding:18px 20px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s,filter .18s;display:flex}.landing-page .landing-cta-card strong{margin-bottom:2px;font-size:21px;line-height:1.2}.landing-page .landing-cta-card span{opacity:.78;font-size:13px}.landing-page .landing-cta-card em{opacity:.9;margin-top:8px;font-size:13px;font-style:normal;font-weight:700}.landing-page .landing-cta-card.primary{color:#ecfeff;background:linear-gradient(135deg,#0284c7 0%,#0369a1 45%,#0ea5e9 100%);border-color:#7dd3fc73;box-shadow:0 16px 28px #0369a166}.landing-page .landing-cta-card.secondary{color:#e2e8f0;background:linear-gradient(140deg,#111827,#1f2937 70%,#334155);border-color:#475569;box-shadow:0 12px 24px #0206175c}.landing-page .landing-cta-card:hover{transform:translateY(-2px)}.landing-page .landing-cta-card.primary:hover{filter:brightness(1.06)}.landing-page .landing-cta-card.secondary:hover{border-color:#64748b}.landing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.landing-item{background:#f8fffd;border:1px solid #d1fae5;border-radius:12px;padding:14px}.landing-item strong{margin-bottom:6px;display:block}.landing-item p{color:#4b5563;margin:0 0 10px;font-size:14px}.landing-steps{gap:10px;display:grid}.landing-step-item{background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;align-items:flex-start;gap:14px;padding:16px;transition:border-color .18s,background .18s;display:flex}.landing-step-item:hover{background:#7dd3fc0a;border-color:#7dd3fc33}.landing-step-no{color:#7dd3fc;background:#7dd3fc1f;border:1px solid #7dd3fc4d;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:inline-flex}.landing-step-item strong{color:#f0ece5}.landing-step-item p{color:#e8e4dd99;margin:4px 0 0;font-size:14px}.landing-list{color:#e8e4dda6;gap:10px;margin:0;padding-left:20px;font-size:14px;line-height:1.65;display:grid}.landing-list li::marker{color:#7dd3fc80}.landing-contact{gap:8px;display:grid}.complete-summary{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:10px;gap:8px;margin-top:16px;padding:14px 16px;display:grid}.complete-summary-row{gap:12px;font-size:14px;display:flex}.complete-summary-row dt{color:var(--slate-500);flex-shrink:0;min-width:72px}.complete-summary-row dd{color:var(--slate-800);margin:0;font-weight:600}.complete-page{gap:16px;padding-bottom:32px;display:grid}.complete-hero-card{background:linear-gradient(#fff 0%,#f8fafc 100%)}.complete-section-kicker{color:var(--slate-500);margin:0 0 8px;font-size:13px;font-weight:700}.complete-section-head{gap:6px;margin-bottom:16px;display:grid}.complete-section-head p{color:var(--slate-500);margin:0;font-size:14px;line-height:1.5}.complete-code-card{text-align:center}.complete-registration-code{letter-spacing:.08em;color:#0f766e;margin:0;font-size:clamp(36px,8vw,48px);font-weight:800;line-height:1.1}.complete-code-hint{color:var(--slate-500);margin:10px 0 0;font-size:14px;line-height:1.5}.complete-loading-card,.complete-error-card{text-align:center}.complete-loading-card p,.complete-fallback-code{color:var(--slate-600);margin:0}.complete-fallback-code{margin-top:10px}.complete-participant-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.complete-participant-card{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:16px;gap:18px;padding:18px;display:grid}.complete-participant-copy{gap:6px;display:grid}.complete-participant-index{color:var(--slate-500);font-size:12px;font-weight:700}.complete-participant-copy strong{color:var(--slate-900);font-size:20px;line-height:1.35}.complete-participant-meta{color:var(--slate-600);flex-wrap:wrap;gap:8px;font-size:13px;display:flex}.complete-participant-meta span:not(:last-child):after{content:"·";color:var(--slate-400);margin-left:8px}.complete-participant-qr{justify-items:center;gap:10px;display:grid}.complete-qr-link{color:#0f766e;text-underline-offset:3px;font-size:13px;font-weight:700;text-decoration:underline}.complete-actions{flex-wrap:wrap;gap:8px;display:flex}.status-page{gap:16px;padding-bottom:32px;display:grid}.status-page--gate{max-width:460px;margin-inline:auto}.status-gate-card{background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:20px;padding:28px 22px 24px;box-shadow:0 12px 40px #0f172a14}.status-gate-head{text-align:center;margin-bottom:22px}.status-gate-icon{color:#0f766e;background:#ecfdf5;border:1px solid #99f6e4;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:14px;display:inline-flex}.status-gate-icon-svg{width:28px;height:28px}.status-gate-eyebrow{letter-spacing:.14em;color:#94a3b8;margin:0 0 6px;font-size:11px;font-weight:800}.status-gate-title{color:#0f172a;margin:0;font-size:clamp(24px,5vw,28px);font-weight:800;line-height:1.2}.status-gate-form{border-top:1px solid #e2e8f0;gap:16px;padding-top:18px;display:grid}.status-gate-field{gap:8px;display:grid}.status-gate-field label{color:#334155;font-size:14px;font-weight:700}.status-gate-input-wrap{background:#fff;border:1px solid #cbd5e1;border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:0 14px;transition:border-color .16s,box-shadow .16s;display:flex}.status-gate-input-wrap:focus-within{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}.status-gate-input-icon{color:#94a3b8;flex-shrink:0;display:inline-flex}.status-gate-input-icon svg{width:20px;height:20px}.status-gate-input-wrap input{color:#0f172a;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:12px 0;font-size:16px}.status-gate-input-wrap input::placeholder{color:#94a3b8}.status-gate-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin:0;padding:10px 12px;font-size:14px;line-height:1.45}.status-gate-submit{width:100%;min-height:48px;font-size:16px;font-weight:700}.status-session-bar{color:#f8fafc;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border:1px solid #334155;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex;box-shadow:inset 0 1px #ffffff0a}.status-session-copy{gap:4px;min-width:0;display:grid}.status-session-badge{letter-spacing:.06em;color:#0c4a6e;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:999px;align-items:center;width:fit-content;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.status-session-id{flex-wrap:wrap;align-items:baseline;gap:6px;margin:0;font-size:14px;line-height:1.35;display:flex}.status-session-code{letter-spacing:.06em;color:#fff;font-size:18px;font-weight:800}.status-session-name{color:#e2e8f0;font-weight:600}.status-session-sep{color:#94a3b8}.status-session-logout{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff47;border-radius:10px;flex-shrink:0;padding:8px 12px;font-size:13px;font-weight:700}.status-session-logout:hover{background:#ffffff2e;border-color:#ffffff61}.status-result-card{gap:0;display:grid}.status-result-top{gap:6px;margin-bottom:16px;display:grid}.status-result-caption{color:var(--slate-500);margin:0;font-size:13px;font-weight:700}.status-chip{border-radius:999px;align-items:center;width:fit-content;padding:5px 11px;font-size:13px;font-weight:700;line-height:1.2;display:inline-flex}.status-chip--ok{color:#166534;background:#ecfdf5;border:1px solid #a7f3d0}.status-chip--wait{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.status-chip--warn{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa}.status-chip--muted{color:#4b5563;background:#f3f4f6;border:1px solid #e5e7eb}.status-summary{margin-top:0}.status-participant-block{border-top:1px solid var(--slate-200);margin-top:18px;padding-top:16px}.status-participant-label{color:var(--slate-500);margin:0 0 10px;font-size:13px;font-weight:700}.status-participant-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.status-participant-list.is-scrollable{max-height:248px;padding-right:2px;overflow-y:auto}.status-participant-card{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:12px;gap:4px;padding:12px 14px;display:grid}.status-participant-card__index{letter-spacing:.04em;color:var(--slate-500);font-size:11px;font-weight:800}.status-participant-card__name{color:var(--slate-800);font-size:15px;font-weight:700;line-height:1.35}.status-participant-card__baptismal{color:var(--slate-600);font-weight:600}.status-participant-card__meta{color:var(--slate-600);flex-wrap:wrap;gap:6px 10px;margin:0;font-size:13px;line-height:1.4;display:flex}.status-participant-card__meta span:not(:last-child):after{content:"·";color:var(--slate-400);margin-left:10px}.status-lodging-section{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:14px;display:flex}.status-lodging-section__copy{gap:4px;min-width:0;display:grid}.status-lodging-section__label{color:var(--slate-500);font-size:12px;font-weight:700}.status-lodging-section__value{color:var(--slate-800);font-size:15px;font-weight:700;line-height:1.35}.status-lodging-section__btn{white-space:nowrap;flex-shrink:0}.status-lodging-modal-note{color:var(--slate-600);margin-top:0;font-size:14px}.status-lodging-modal-note a{color:var(--brand-700,#1d4ed8);text-underline-offset:2px;font-weight:600;text-decoration:underline}.status-pending-banner{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;gap:8px;margin-bottom:16px;padding:14px 16px;display:grid}.status-pending-banner__title{color:#9a3412;margin:0;font-size:14px;font-weight:800}.status-pending-banner__summary{color:#7c2d12;margin:0;font-size:15px;font-weight:700;line-height:1.45}.status-pending-banner__meta,.status-pending-banner__hint{color:#9a3412;margin:0;font-size:13px;line-height:1.45}.status-pending-banner__withdraw{justify-self:start;margin-top:4px}.status-lodging-change-form{gap:12px;display:grid}.status-lodging-change-options{border:none;gap:8px;margin:0;padding:0;display:grid}.status-lodging-change-options__legend{color:var(--slate-600);margin:0 0 8px;padding:0;font-size:13px;font-weight:700}.status-lodging-change-option{border:1px solid var(--slate-200);background:var(--slate-50);cursor:pointer;color:var(--slate-800);border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:15px;font-weight:600;display:flex}.status-lodging-change-option:has(input:checked){background:#eef2ff;border-color:#818cf8}.status-lodging-change-option input{flex-shrink:0}.status-notice{border-radius:10px;margin:18px 0 0;padding:12px 14px;font-size:14px;line-height:1.5}.status-notice--ok{color:#166534;background:#ecfdf5;border:1px solid #a7f3d0}.status-notice--muted{background:var(--slate-50);border:1px solid var(--slate-200);color:var(--slate-600)}.status-action-bar{border-top:1px solid var(--slate-200);gap:8px;margin-top:20px;padding-top:18px;display:grid}.status-action-label{letter-spacing:.06em;color:#0f766e;margin:0;font-size:12px;font-weight:800}.status-action-bar p:not(.status-action-label){color:var(--slate-600);margin:0;font-size:14px;line-height:1.5}.status-refund-amount{color:var(--slate-800);margin:0 0 14px;font-size:15px}.status-refund-amount strong{color:#0f766e;font-size:18px}.status-cancel-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.register-modal-card--motion:has(.status-cancel-modal){width:min(480px,100%);padding:24px 22px 20px}.status-cancel-modal{position:relative}.status-cancel-modal-close{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:10px;width:36px;height:36px;font-size:24px;line-height:1;position:absolute;top:-4px;right:-2px}.status-cancel-modal-close:hover{color:#0f172a;background:#f1f5f9}.status-cancel-modal-close:disabled{opacity:.5;cursor:not-allowed}.status-cancel-modal .modal-title{padding-right:32px}.status-cancel-modal-lead{margin-bottom:10px}.status-refund-amount--modal{margin:0 0 16px}.status-cancel-modal-fields{gap:12px;margin-bottom:4px;display:grid}.status-cancel-modal-fields .field{gap:6px;display:grid}.status-cancel-modal-fields label{color:var(--slate-600);font-size:13px;font-weight:600}.status-cancel-modal-fields input{width:100%}.status-cancel-modal-fields input:disabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc}.status-cancel-confirm-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:10px;margin:0 0 4px;padding:14px;display:grid}.status-cancel-confirm-summary div{gap:2px;display:grid}.status-cancel-confirm-summary dt{color:#64748b;font-size:12px;font-weight:700}.status-cancel-confirm-summary dd{color:#0f172a;word-break:break-all;margin:0;font-size:14px;font-weight:600;line-height:1.45}.status-cancel-confirm-modal .modal-body{margin-bottom:12px}.status-cancel-confirm-checks{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:14px 0 4px;padding:12px 10px}.status-cancel-confirm-checks.consent-checks{gap:4px}.status-action-bar .btn{width:100%}.status-cancel-modal-actions .btn.danger{color:#fff;background:linear-gradient(135deg,#dc2626,#ef4444);border:none;box-shadow:0 8px 18px #dc262647}.status-cancel-modal-actions .btn.danger:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 10px 22px #dc262652}.status-cancel-confirm-checks .consent-check-block{padding:2px 6px}.status-cancel-modal-actions .btn.danger:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.status-cancel-modal-error{margin:12px 0 0}.status-cancel-modal-form{display:grid}.status-cancel-modal-actions{flex-wrap:wrap;margin-top:18px}.status-cancel-modal-actions .btn{min-width:108px;min-height:44px;font-size:15px;font-weight:700}@media (min-width:640px){.complete-participant-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.complete-participant-qr{justify-items:end}}.landing-contact span{color:#e8e4ddc7;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;align-items:center;width:fit-content;padding:10px 14px;font-size:14px;transition:border-color .18s;display:inline-flex}.landing-contact span:hover{border-color:#7dd3fc40}.register-step-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip{color:#6b7280;background:#f9fafb;border:1px solid #d1d5db;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.chip.active{color:#0f766e;background:#ecfeff;border-color:#99f6e4}.register-stepper{align-items:center;gap:0;margin-top:16px;display:flex}.register-progress-mobile{display:none}.register-stepper-item{flex:1;align-items:center;min-width:0;display:flex}.register-stepper-item:first-child{flex:none}.register-stepper-connector{background:var(--slate-200);flex:1;height:2px;margin:0 6px;transition:background .2s}.register-stepper-connector.done{background:var(--indigo-400)}.register-stepper-circle{border:2px solid var(--slate-300);background:var(--slate-50);width:28px;height:28px;color:var(--slate-400);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:background .2s,border-color .2s,color .2s;display:flex}.register-stepper-circle svg{stroke:#fff;width:14px;height:14px}.register-stepper-circle.done{background:var(--indigo-500);border-color:var(--indigo-500);color:#fff}.register-stepper-circle.current{border-color:var(--indigo-500);color:var(--indigo-600);box-shadow:0 0 0 3px var(--indigo-100);background:#fff}.register-stepper-label{color:var(--slate-400);white-space:nowrap;margin-left:8px;font-size:12px;font-weight:500}.register-stepper-label.current{color:var(--indigo-700);font-weight:700}.register-stepper-label.done{color:var(--slate-500)}.register-header-links{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.page-top-nav{align-items:center;margin-bottom:12px;display:flex}.page-home-link{border:1px solid var(--slate-200);width:42px;height:42px;color:var(--slate-700);background:#ffffffe6;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 8px 20px #0f172a0d}.page-home-link svg{width:18px;height:18px}.register-page .card{border-color:var(--slate-200);border-radius:16px;animation:.38s cubic-bezier(.22,1,.36,1) register-fade-up;box-shadow:0 12px 26px #0f172a0f}.register-page .subcard{background:linear-gradient(180deg, #fff, var(--slate-50));border-color:var(--slate-200);box-shadow:0 8px 18px #0f172a0d}.register-page .title{color:var(--slate-900)}.register-practice-title{color:#b45309}.register-page .subtitle{color:var(--slate-700)}.register-page .step{letter-spacing:.01em;margin-bottom:10px;font-weight:700}.register-page .section-title{letter-spacing:-.01em;margin:0 0 16px;font-size:24px;line-height:1.35}.register-page input,.register-page select,.register-page textarea{border-color:var(--slate-300);background:#fff;transition:border-color .16s,box-shadow .18s,transform .16s}.register-page textarea:disabled{cursor:not-allowed;color:var(--slate-500);background:var(--slate-50);border-color:var(--slate-200)}.register-page input:not([type=checkbox]):not([type=radio]):focus,.register-page select:focus,.register-page textarea:focus{border-color:var(--indigo-500);outline:none;box-shadow:0 0 0 3px #6366f12e}.register-page input[type=checkbox]:focus,.register-page input[type=radio]:focus{box-shadow:none;outline:none}:is(.register-page .checkbox-inline:has(input:focus-visible),.register-page .checkbox-consent:has(input:focus-visible)){outline:2px solid var(--indigo-500);outline-offset:2px;border-radius:8px}.register-page .choice-card:focus{box-shadow:none;outline:none}.register-page .summary-panel{box-sizing:border-box;background:linear-gradient(180deg, #fff, #f8fafc 75%) padding-box, linear-gradient(var(--slate-300), var(--slate-300)) border-box;border:1px solid #0000;border-radius:14px;box-shadow:0 12px 24px #0f172a12}.register-page .participant{border-color:var(--slate-200);background:linear-gradient(#fff,#fbfdff);border-radius:14px;padding:16px}.register-clergy-confirm-overlay{z-index:400;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.register-clergy-confirm-card{border:1px solid var(--slate-200);background:#fff;border-radius:14px;width:100%;max-width:420px;padding:22px 22px 18px;box-shadow:0 20px 50px #0f172a2e}.register-clergy-confirm-card h3{color:var(--slate-900);margin:0 0 12px;font-size:1.1rem}.register-clergy-confirm-body{color:var(--slate-700);margin:0 0 20px;font-size:.95rem;line-height:1.55}.register-clergy-confirm-actions{justify-content:flex-end;gap:10px;display:flex}.register-page .btn.primary{background:linear-gradient(135deg, var(--indigo-700), var(--indigo-600) 55%, var(--indigo-500));box-shadow:0 12px 22px #4f46e540}.register-page .btn.secondary{background:var(--slate-200)}.register-page .btn.ghost{background:var(--indigo-50);border-color:var(--indigo-100);color:var(--indigo-700)}.register-page .actions{border-top:1px solid var(--slate-200);margin-top:20px;padding-top:14px}.register-page--step-form .consent-step-card,.register-page--step-form .step-main>.card,.register-page--step-form .step-layout>.step-main>.card{padding-bottom:24px}.register-step-back{color:var(--slate-600);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin:0 0 10px;padding:4px 2px;font-size:14px;font-weight:600;line-height:1.4;display:inline-flex}.register-step-back svg{flex-shrink:0;width:16px;height:16px}.register-step-back:hover:not(:disabled){color:var(--indigo-700)}.register-step-back:disabled{opacity:.45;cursor:not-allowed}.register-step-back:focus-visible{outline:2px solid var(--indigo-500);outline-offset:2px;border-radius:6px}.register-step-header{margin-bottom:14px}.register-step-header .section-title{margin-bottom:0}.register-step-header-meta{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.register-step-header-meta .step{margin:0;line-height:1}.register-step-header-meta .participant-stack-hold-meta{white-space:nowrap;line-height:1}.participant-step-sticky-zone{z-index:20;background:linear-gradient(#fff 82%,#fff0);margin:-4px -4px 12px;padding:4px 4px 8px;position:sticky;top:0}.participant-step-card{--participant-stack-scroll-offset:168px}.register-page--step-form .register-step-actions{border-top:1px solid var(--slate-200);background:0 0;margin-top:20px;padding-top:16px;padding-bottom:4px}.register-page--step-form .register-step-actions .register-step-actions-next{margin-left:auto}@media (max-width:720px){.register-page--step-form .consent-step-card,.register-page--step-form .step-main>.card,.register-page--step-form .step-layout>.step-main>.card{padding-left:14px;padding-right:14px}.register-page--step-form .register-step-actions{padding-top:16px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));gap:0;margin-top:20px}.register-page--step-form .register-step-actions .register-step-actions-prev{display:none}.register-page--step-form .register-step-actions .register-step-actions-next{flex:1;width:100%;min-height:48px;margin-left:0}}@media (min-width:721px){.register-page--step-form .register-step-actions{justify-content:flex-end;gap:10px;padding-bottom:8px;display:flex}.register-page--step-form .register-step-actions .register-step-actions-prev{min-width:108px}.register-page--step-form .register-step-actions .register-step-actions-next{min-width:132px}}@keyframes register-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.landing-page .landing-card{color:#e8e4dd;background:#111827;border-color:#ffffff12;border-radius:16px;box-shadow:0 4px 24px #0006}.landing-page .landing-card .section-title{color:#f0ece5}.landing-page .landing-card .subtitle{color:#e8e4dda6}.landing-page .landing-card{animation:.52s cubic-bezier(.22,1,.36,1) landing-fade-up}.landing-page .landing-card:nth-of-type(2){animation-delay:70ms}.landing-page .landing-card:nth-of-type(3){animation-delay:.12s}.landing-page .landing-card:nth-of-type(4){animation-delay:.17s}@keyframes landing-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes float-slow{0%,to{transform:translateY(0)translate(0)}50%{transform:translateY(-12px)translate(8px)}}.step-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:16px;display:grid}.step-main{min-width:0}.card{border:1px solid var(--slate-200);background:#fff;border-radius:12px;margin-bottom:16px;padding:20px}.title{color:var(--indigo-700);margin:0 0 8px;font-size:28px;font-weight:700}.subtitle{color:var(--slate-700);margin:0}.step{color:var(--slate-500);margin-bottom:12px;font-size:14px}.section-title{margin:0 0 14px;font-size:22px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field.full{grid-column:1/-1}.birth-date-split{border:0;min-width:0;margin:0;padding:0}.birth-date-split-error{margin-top:8px;font-size:13px;line-height:1.45}.participant-birth-type-row{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.participant-birth-stack{flex-direction:column;gap:6px;min-width:0;display:flex}.participant-birth-row-error{grid-column:1/-1;margin:0}.participant-type-field{align-self:start;min-width:0}.birth-date-split-fields{align-items:flex-end;gap:8px;max-width:100%;display:inline-flex}.birth-date-split-input{border:none;border-bottom:2px solid var(--slate-300);box-shadow:none;color:var(--slate-900);font-variant-numeric:tabular-nums;letter-spacing:.02em;background:0 0;border-radius:0;min-height:44px;padding:10px 0 8px;font-size:16px;font-weight:500;transition:border-color .16s,color .16s}.birth-date-split-input::placeholder{color:#d1d5db;opacity:1;font-weight:400}.birth-date-split-year{text-align:center;flex:0 0 3.25rem;width:3.25rem}.birth-date-split-month,.birth-date-split-day{text-align:center;flex:0 0 2rem;width:2rem}.birth-date-split-sep{background:var(--slate-300);border-radius:1px;flex-shrink:0;width:6px;height:2px;margin-bottom:16px}.birth-date-split-input:focus,.birth-date-split-input:focus-visible{border-bottom-color:var(--indigo-500);box-shadow:none;outline:none}.birth-date-split-input.birth-date-split--error{color:#b91c1c;border-bottom-color:#ef4444}.birth-date-split-input.birth-date-split--error::placeholder{color:#fca5a5}.register-page .birth-date-split-input{background:0 0}.register-page .field{min-width:0}.register-page .field input:not([type=checkbox]):not([type=radio]),.register-page .field select,.register-page .field textarea{width:100%;min-width:0;max-width:100%}.register-page .field .birth-date-split-fields .birth-date-split-input{flex-shrink:0;max-width:none}.register-page input::placeholder,.register-page textarea::placeholder{color:#cbd5e1;opacity:1;font-weight:400}label{color:var(--slate-900);font-size:14px;font-weight:600}input,select,textarea{border:1px solid var(--slate-300);border-radius:8px;min-height:44px;padding:10px 12px;font-size:14px;line-height:1.45}.register-page select{appearance:none;background-color:#fff;background-image:linear-gradient(45deg, transparent 50%, var(--slate-500) 50%), linear-gradient(135deg, var(--slate-500) 50%, transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:44px;transition:border-color .16s,box-shadow .18s,background-color .18s}.register-page select:hover{background-color:var(--slate-50)}.register-page select option{color:var(--slate-900)}.register-page input:focus-visible,.register-page select:focus-visible,.register-page textarea:focus-visible,.btn:focus-visible,.summary-fab:focus-visible,.admin-tab:focus-visible{outline:2px solid var(--indigo-500);outline-offset:2px}.radio-row{flex-wrap:wrap;gap:10px;display:flex}.radio-row label{min-height:44px;color:var(--slate-700);border:1px solid var(--slate-300);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-weight:600;line-height:1.4;transition:border-color .18s,background-color .18s,color .18s,transform .12s,box-shadow .18s;display:inline-flex}.muted{color:#6b7280;font-size:13px}.warn{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-top:8px;padding:10px 12px}.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}.register-page .infant-companion-expanded{flex-direction:column;gap:12px;margin-top:14px;display:flex}.register-page .infant-count-field{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.register-page .infant-count-field-heading{flex-direction:column;gap:4px;display:flex}.register-page .infant-count-field-label{color:var(--slate-800,#1e293b);font-size:14px;font-weight:600}.register-page .infant-count-field-note{color:var(--slate-500,#64748b);margin:0;font-size:12px;line-height:1.5}.register-page .infant-count-stepper{border:1px solid var(--slate-200,#e2e8f0);background:#fff;border-radius:12px;align-items:center;gap:4px;padding:4px;display:inline-flex}.register-page .infant-count-stepper-btn{background:var(--slate-100,#f1f5f9);min-width:44px;min-height:44px;color:var(--slate-800,#1e293b);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:22px;font-weight:500;line-height:1;transition:background .14s,transform .1s;display:inline-flex}.register-page .infant-count-stepper-btn:hover:not(:disabled){background:var(--slate-200,#e2e8f0)}.register-page .infant-count-stepper-btn:active:not(:disabled){transform:scale(.96)}.register-page .infant-count-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.register-page .infant-count-stepper-btn:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}.register-page .infant-count-stepper-value{font-variant-numeric:tabular-nums;justify-content:center;align-items:baseline;gap:2px;min-width:3.25rem;padding:0 6px;display:inline-flex}.register-page .infant-count-stepper-number{color:var(--slate-900,#0f172a);font-size:20px;font-weight:700}.register-page .infant-count-stepper-unit{color:var(--slate-600,#475569);font-size:14px;font-weight:600}.register-page .infant-guide{background:#f8fafc;border:1px solid #dbeafe;border-radius:12px;padding:12px}.register-page .infant-guide-lead{color:var(--slate-600,#475569);margin:0 0 10px;font-size:12px;line-height:1.5}.register-page .infant-guide-compare{border-collapse:separate;border-spacing:0;table-layout:fixed;border:1px solid #e2e8f0;border-radius:10px;width:100%;font-size:12px;line-height:1.4;overflow:hidden}.register-page .infant-guide-compare th,.register-page .infant-guide-compare td{vertical-align:middle;border-bottom:1px solid #e2e8f0;padding:8px 6px}.register-page .infant-guide-compare tbody tr:last-child th,.register-page .infant-guide-compare tbody tr:last-child td{border-bottom:none}.register-page .infant-guide-compare-corner{background:#f8fafc;width:26%}.register-page .infant-guide-compare-col,.register-page .infant-guide-compare-label,.register-page .infant-guide-compare-cell{background:#fff}.register-page .infant-guide-compare-col{text-align:center;color:var(--slate-800,#1e293b);font-size:11px;font-weight:700}.register-page .infant-guide-compare-col-hint{color:var(--slate-500,#64748b);margin-top:2px;font-size:10px;font-weight:600;display:block}.register-page .infant-guide-compare-col--free{color:#166534;background:#f0fdf4}.register-page .infant-guide-compare-col--fee{color:#1d4ed8;background:#eff6ff}.register-page .infant-guide-compare-label{text-align:left;color:var(--slate-600,#475569);background:#f8fafc;font-size:11px;font-weight:600}.register-page .infant-guide-compare-cell{text-align:center;color:var(--slate-800,#1e293b);font-weight:600}.register-page .infant-guide-compare-cell--free{background:#fafdfa}.register-page .infant-guide-compare-cell--fee{background:#f8fbff}.register-page .infant-guide-tips{border-top:1px dashed #cbd5e1;margin-top:12px;padding-top:10px}.register-page .infant-guide-tips-title{letter-spacing:.02em;color:var(--slate-500,#64748b);text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.register-page .infant-guide-tips-list{color:var(--slate-700,#334155);flex-direction:column;gap:6px;margin:0;padding-left:1.1rem;font-size:12px;line-height:1.5;display:flex}.register-page .infant-guide-examples{border-top:1px dashed #cbd5e1;margin-top:10px;padding-top:10px}.register-page .infant-guide-examples-title{letter-spacing:.02em;color:var(--slate-500,#64748b);text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.register-page .infant-guide-examples-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.register-page .infant-guide-examples-list li{grid-template-columns:1fr;gap:2px;font-size:12px;line-height:1.45;display:grid}.register-page .infant-guide-examples-situation{color:var(--slate-700,#334155);font-weight:600}.register-page .infant-guide-examples-arrow{display:none}.register-page .infant-guide-examples-result{color:#1d4ed8;font-weight:600}@media (min-width:480px){.register-page .infant-guide-lead,.register-page .infant-guide-compare{font-size:13px}.register-page .infant-guide-compare-col,.register-page .infant-guide-compare-label{padding:9px 8px;font-size:12px}.register-page .infant-guide-compare-cell{padding:9px 8px}.register-page .infant-guide-tips-list{font-size:13px}.register-page .infant-guide-examples-list li{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px}.register-page .infant-guide-examples-arrow{color:var(--slate-400,#94a3b8);font-weight:400;display:inline}.register-page .infant-guide-examples-result{text-align:right}}@media (min-width:640px){.register-page .infant-count-field{flex-direction:row;justify-content:space-between;align-items:center;gap:16px}}.register-page .lodging-waitlist-notice{background:linear-gradient(165deg,#fffbeb 0%,#fff7ed 48%,#fff 100%);border:1px solid #fcd34d;border-radius:14px;grid-template-columns:auto 1fr;grid-template-areas:"icon copy""consent consent";gap:10px 12px;margin-top:14px;padding:16px;display:grid;box-shadow:0 10px 24px #b4530914}.lodging-waitlist-notice-icon{color:#b45309;background:#f59e0b24;border-radius:12px;grid-area:icon;justify-content:center;align-items:flex-start;width:40px;height:40px;display:flex}.lodging-waitlist-notice-icon svg{width:22px;height:22px;margin-top:9px}.lodging-waitlist-notice-copy{grid-area:copy;min-width:0}.lodging-waitlist-notice-title{letter-spacing:-.02em;color:#92400e;margin:0 0 6px;font-size:15px;font-weight:700;line-height:1.45}.lodging-waitlist-notice-body{letter-spacing:-.01em;color:#78350f;margin:0;font-size:14px;font-weight:400;line-height:1.6}.lodging-waitlist-consent{border:1.5px solid var(--slate-200);cursor:pointer;background:#fff;border-radius:12px;grid-area:consent;align-items:center;gap:12px;margin:4px 0 0;padding:12px 14px;transition:border-color .16s,background .16s,box-shadow .18s,transform .12s;display:flex}.lodging-waitlist-consent:hover{background:#fffdf7;border-color:#fbbf24}.lodging-waitlist-consent.is-checked{border-color:var(--indigo-500);background:var(--indigo-50);box-shadow:0 8px 20px #4f46e51f}.lodging-waitlist-consent:active{transform:scale(.995)}.lodging-waitlist-consent-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lodging-waitlist-consent-mark{border:1.5px solid var(--slate-300);color:#0000;background:#fff;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:border-color .16s,background .16s,color .16s,transform .15s;display:inline-flex}.lodging-waitlist-consent-mark svg{width:14px;height:14px}.lodging-waitlist-consent:hover .lodging-waitlist-consent-mark{border-color:#fbbf24}.lodging-waitlist-consent.is-checked .lodging-waitlist-consent-mark{border-color:var(--indigo-600);background:var(--indigo-600);color:#fff;animation:.18s cubic-bezier(.22,1,.36,1) control-pop}.lodging-waitlist-consent-text{color:var(--slate-700);letter-spacing:-.01em;font-size:14px;line-height:1.5}.lodging-waitlist-consent-text strong{color:var(--indigo-700);font-weight:700}.lodging-waitlist-consent.is-checked .lodging-waitlist-consent-text{color:var(--slate-900)}.lodging-waitlist-consent:has(.lodging-waitlist-consent-input:focus-visible){outline:none;box-shadow:0 0 0 3px #4f46e533}.lodging-waitlist-consent:has(.lodging-waitlist-consent-input:focus:not(:focus-visible)){box-shadow:none}@media (max-width:480px){.register-page .lodging-waitlist-notice{grid-template-columns:1fr;grid-template-areas:"icon""copy""consent";gap:10px}.lodging-waitlist-notice-icon{width:36px;height:36px}.lodging-waitlist-notice-icon svg{margin-top:7px}}.error-text{color:#b91c1c;margin:4px 0 0;font-size:12px}.label-with-badge{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.label-with-badge>label{flex-shrink:0;margin:0}.participant-phone-confirm-field{transition:border-color .16s,background-color .16s,box-shadow .18s}.participant-phone-confirm-field--pending{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px}.participant-phone-confirm-field--attention{background:#fff1f2;border:1px solid #fca5a5;border-radius:10px;padding:10px 12px;box-shadow:inset 0 0 0 1px #f871712e}.participant-phone-confirm-badge{color:#b91c1c;background:#fee2e2;border:1px solid #fca5a5;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.participant-phone-confirm-guide{margin-top:6px;font-size:13px}.step-two-selection-block{flex-direction:column;gap:10px;display:flex}.step-two-selection-block>label{margin:0}#round-field-label,#apply-type-field-label,#lodging-field-label,#privacy-consent-field,#media-consent-field{scroll-margin-top:16px}.consent-check-block{box-sizing:border-box;border:2px solid #0000;border-radius:8px;margin:0;padding:4px 8px}.consent-check-block.step-two-selection-attention--required,.consent-check-block.step-two-selection-attention--error{outline-offset:0;outline:none;padding:4px 8px;animation:1.1s ease-in-out 2 consent-check-attention-pulse}.consent-check-block.step-two-selection-attention--required{background:#fef2f28c;border-color:#dc2626b8}.consent-check-block.step-two-selection-attention--error{background:#fef2f266;border-color:#dc26268c}.consent-check-block.step-two-selection-attention--required .checkbox-consent,.consent-check-block.step-two-selection-attention--error .checkbox-consent{color:#b91c1c;font-weight:600}@keyframes consent-check-attention-pulse{0%,to{border-color:#dc2626b8}50%{border-color:#f8717166}}.step-two-selection-attention--required{outline-offset:2px;background:#fef2f28c;border-radius:12px;outline:2px solid #dc2626b8;padding:10px 12px 12px;animation:1.1s ease-in-out 2 lodging-field-attention-pulse-red}.step-two-selection-attention--required>label,.step-two-selection-attention--required .label-with-badge>label{color:#b91c1c;font-weight:600}.step-two-selection-attention--error{outline-offset:2px;background:#fef2f266;border-radius:12px;outline:2px solid #dc26268c;padding:10px 12px 12px}.step-two-selection-attention--error>label,.step-two-selection-attention--error .label-with-badge>label{color:#b91c1c;font-weight:600}@keyframes lodging-field-attention-pulse-red{0%,to{outline-color:#dc2626b8}50%{outline-color:#f8717166}}.hold-inline-pill{background:var(--indigo-50);color:var(--indigo-700);border:1px solid var(--indigo-100);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.hold-inline-pill strong{font-variant-numeric:tabular-nums}.hold-inline-pill--pending{background:var(--slate-50,#f8fafc);color:var(--slate-600,#475569);border-color:var(--slate-200,#e2e8f0)}.hold-inline-wrap{align-items:center;gap:6px;display:inline-flex;position:relative}.hold-help{border:1px solid var(--indigo-200,#c7d2fe);width:20px;height:20px;min-height:20px;color:var(--indigo-700);cursor:help;background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:800;line-height:1;display:inline-flex;position:relative}.hold-help-tooltip{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#f1f5f9;opacity:0;pointer-events:none;z-index:20;background:#0f172a9e;border:1px solid #94a3b847;border-radius:10px;width:min(320px,100vw - 48px);padding:10px 12px;font-size:12px;font-weight:500;line-height:1.45;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 8px);right:0;transform:translateY(4px);box-shadow:0 10px 24px #0f172a4d}.hold-help:hover+.hold-help-tooltip,.hold-help:focus-visible+.hold-help-tooltip{opacity:1;transform:translateY(0)}.label-with-help{align-items:center;gap:6px;max-width:100%;display:inline-flex;position:relative}.label-with-help label{margin:0}.label-help-tooltip{white-space:pre-line;left:0;right:auto}.label-with-help.is-help-open .label-help-tooltip{opacity:1;pointer-events:auto;transform:translateY(0)}.badge{border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.badge-pop{transform-origin:0;animation:.32s cubic-bezier(.34,1.56,.64,1) badge-pop}@keyframes badge-pop{0%{opacity:0;transform:scale(.5)translateY(-2px)}60%{opacity:1;transform:scale(1.12)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}.badge-ok{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.badge-low{color:#92400e;background:#fffbeb;border-color:#fde68a}.badge-full{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.badge-muted{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.hold-countdown{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;display:flex}.hold-countdown-icon{font-size:18px;line-height:1}.hold-countdown-text{flex-direction:column;gap:2px;font-size:13px;display:flex}.hold-countdown-text strong{font-size:13px;font-weight:700}.hold-countdown-warning{color:#92400e;background:#fffbeb;border-color:#fde68a;animation:1.4s ease-in-out infinite hold-pulse}.hold-countdown-expired{color:#b91c1c;background:#fef2f2;border-color:#fecaca}@keyframes hold-pulse{0%,to{box-shadow:0 0 #d9770600}50%{box-shadow:0 0 0 4px #d9770626}}.toast-notice{color:#f8fafc;z-index:1100;background:#0f172a;border-radius:999px;max-width:calc(100vw - 32px);padding:12px 36px 12px 16px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0f172a40}.toast-notice--motion{transform:none}.toast-close{color:#f8fafc;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.admin-toast{color:#f8fafc;z-index:2000;background:#1e293b;border-radius:10px;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 40px 12px 18px;font-size:13px;animation:.18s toast-in;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0f172a4d}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.admin-toast-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:18px;line-height:1;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.admin-toast-close:hover{color:#f8fafc}.practice-complete-hero{background:linear-gradient(#fff7ed 0%,#fff 100%);border:1px solid #fed7aa}.practice-complete-kicker{color:#c2410c}.practice-complete-qr-wrap{justify-items:center;gap:12px;margin-top:8px;display:grid}.practice-complete-qr-url{color:var(--slate-500);word-break:break-all;text-align:center;margin:0;font-size:13px}
