@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--color-primary:#2c468c;--color-secondary:#179a9a;--color-accent:#3b82f6;--color-background:#f8fafc;--color-surface:#fff;--color-surface-hover:#f1f5f9;--color-text:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-text-subtle:#94a3b8;--color-success:#10b981;--color-success-bg:#ecfdf5;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-error:#ef4444;--color-error-bg:#fef2f2;--color-info:#3b82f6;--color-primary-10:#2c468c14;--color-primary-20:#2c468c29;--color-primary-50:#2c468c80;--color-secondary-10:#179a9a14;--color-secondary-20:#179a9a29;--header-bg:linear-gradient(135deg, #1e293b 0%, #0f172a 100%);--header-text:#fff;--input-border:#cbd5e1;--input-border-hover:#94a3b8;--input-focus:#2c468c;--border-radius:12px;--border-radius-lg:16px;--border-radius-sm:8px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -2px #00000008;--shadow-xl:0 20px 25px -5px #00000014, 0 10px 10px -5px #00000008;--shadow-card:0 0 0 1px #0000000d, 0 4px 20px #0000000f;--shadow-glow:0 0 20px #2c468c2e;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);color:var(--color-text);background-color:var(--color-background);min-height:100vh;line-height:1.6}#root{flex-direction:column;min-height:100vh;display:flex}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color .15s}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}h1,h2,h3,h4,h5,h6{color:var(--color-text);letter-spacing:-.02em;font-weight:700;line-height:1.25}h1{font-size:clamp(1.75rem,3.5vw,2.5rem)}h2{font-size:clamp(1.4rem,2.5vw,1.85rem)}h3{font-size:clamp(1.15rem,2vw,1.35rem)}h4{font-size:1.05rem}p{color:var(--color-text-secondary);line-height:1.65}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#00000008}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::selection{background:var(--color-primary-20,#e0e7ff);color:var(--color-primary,#1e1b4b)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.9)}}@media (width<=640px){html{font-size:15px}}.header{color:#172334;border-top:4px solid var(--color-primary,#284c70);background:#fff;border-bottom:1px solid #dce2e8}.header__inner{align-items:center;gap:16px;width:min(100% - 32px,760px);min-height:82px;margin:0 auto;padding:16px 0;display:flex}.header__logo,.header__monogram{object-fit:contain;background:#f3f5f7;border-radius:4px;flex:none;width:46px;height:46px;padding:3px}.header__monogram{color:#284c70;place-items:center;font-weight:700;display:grid}.header__text{min-width:0}.header__eyebrow{color:#576778;letter-spacing:.02em;font-size:.75rem;font-weight:600}.header h1{color:inherit;letter-spacing:-.015em;margin:2px 0 0;font-size:clamp(1.1rem,2.4vw,1.35rem);font-weight:650;line-height:1.3}@media (width<=640px){.header__inner{gap:12px;width:min(100% - 24px,760px);min-height:70px}.header__logo,.header__monogram{width:40px;height:40px}}.footer{color:#526272;background:#f8fafb;border-top:1px solid #e2e8f0;margin-top:auto;font-size:.8rem}.footer__inner{justify-content:space-between;align-items:center;gap:12px;width:min(100% - 32px,760px);min-height:58px;margin:0 auto;padding:12px 0;display:flex}.footer__links{flex-wrap:wrap;gap:16px;display:flex}.footer a{color:#284c70;text-underline-offset:2px;text-decoration:underline}@media (width<=640px){.footer__inner{flex-direction:column;align-items:flex-start;width:min(100% - 24px,760px)}}.form-field{flex-direction:column;gap:7px;min-width:0;display:flex}.form-field__label{color:#263445;align-items:baseline;gap:3px;font-size:.875rem;font-weight:600;line-height:1.4;display:flex}.form-field__required-tag{color:#a73333;font-size:1rem;font-weight:700}.form-field__input-wrap,.form-field__select-wrap{width:100%}.form-field__input{color:#172334;width:100%;min-height:44px;box-shadow:none;background:#fff;border:1px solid #aeb9c5;border-radius:5px;outline:none;padding:10px 12px;font-size:.95rem;transition:border-color .15s,box-shadow .15s;display:block}.form-field__input::placeholder{color:#748295}.form-field__input:hover:not(:disabled){border-color:#718096}.form-field__input:focus{border-color:#284c70;box-shadow:0 0 0 3px #284c7026}.form-field__input--error{border-color:#b42332}.form-field__input--error:focus{box-shadow:0 0 0 3px #b4233224}.form-field__input:disabled{cursor:not-allowed;background:#f3f5f7}.form-field__select{padding-right:12px}.form-field__textarea{resize:vertical;min-height:108px;line-height:1.5}.form-field__checkbox-wrapper{align-items:flex-start;gap:10px;padding:6px 0;display:flex}.form-field__checkbox{accent-color:#284c70;width:18px;height:18px;margin-top:2px}.form-field__checkbox-label{color:#263445;font-size:.9rem;line-height:1.45}.form-field__error-message{color:#a31f2d;font-size:.8rem;line-height:1.4}.reg-form-card{background:#fff;border:1px solid #dce2e8;border-radius:6px;width:100%}.reg-form__header{border-bottom:1px solid #e5e9ed;padding:32px 36px 26px}.reg-form__eyebrow{color:#526272;letter-spacing:.12em;margin:0 0 8px;font-size:.72rem;font-weight:700}.reg-form__header h2{color:#172334;letter-spacing:-.025em;margin:0 0 9px;font-size:clamp(1.5rem,3vw,1.85rem);font-weight:650}.reg-form__header p:last-child{color:#526272;margin:0;font-size:.9rem}.reg-form__body{padding:8px 36px 32px}.reg-form__section-heading{border-bottom:1px solid #e5e9ed;margin:28px 0 20px;padding-bottom:10px}.reg-form__section-heading h3{color:#263445;letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:650}.reg-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px;display:grid}.reg-form__full{grid-column:1/-1}.reg-form__custom{margin-top:6px}.reg-form__submit-error{color:#a31f2d;margin:0 36px 18px;font-size:.875rem}.reg-form__actions{border-top:1px solid #e5e9ed;justify-content:flex-end;padding:24px 36px 32px;display:flex}.reg-form__actions button{border:0;border-radius:5px;min-height:46px;padding:10px 26px;font-size:.9rem;font-weight:650;transition:filter .15s}.reg-form__actions button:hover:not(:disabled){filter:brightness(.9)}.reg-form__actions button:disabled{opacity:.65;cursor:wait}@media (width<=640px){.reg-form__header{padding:26px 22px 22px}.reg-form__body{padding:4px 22px 26px}.reg-form__grid{grid-template-columns:1fr;gap:18px}.reg-form__actions{padding:20px 22px 24px}.reg-form__actions button{width:100%}.reg-form__submit-error{margin:0 22px 16px}}.success-page{flex-direction:column;align-items:center;gap:0;min-height:60vh;padding:48px 24px 64px;display:flex;position:relative;overflow:hidden}.success-page__confetti{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.success-page__confetti-piece{opacity:0;border-radius:2px;animation:linear forwards confettiFall;position:absolute;top:-16px}.success-page__confetti-piece--circle{border-radius:50%}.success-page__confetti-piece--triangle{border-left:5px solid #0000;border-right:5px solid #0000;border-bottom:10px solid var(--color-accent);background:0 0!important;width:0!important;height:0!important}.success-page__hero{z-index:2;text-align:center;width:100%;max-width:560px;padding-bottom:32px;animation:.7s cubic-bezier(.22,1,.36,1) both heroIn;position:relative}.success-page__hero-glow{background:radial-gradient(ellipse at center, var(--color-success,#059669) 0%, transparent 70%);opacity:.12;pointer-events:none;border-radius:50%;width:300px;height:300px;position:absolute;top:-60px;left:50%;transform:translate(-50%)}.success-page__icon-wrapper{justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 24px;display:inline-flex;position:relative}.success-page__icon-ring{border:2px solid var(--color-success,#059669);opacity:.25;border-radius:50%;animation:2.5s ease-out infinite ringPulse;position:absolute;inset:0}.success-page__icon-ring--2{opacity:.12;animation-delay:.6s;inset:-10px}.success-page__icon{color:var(--color-success,#059669);z-index:1;filter:drop-shadow(0 4px 12px #05966959);animation:.7s cubic-bezier(.34,1.56,.64,1) .25s both iconPop;position:relative}.success-page__title{color:var(--color-text);letter-spacing:-.03em;margin:0 0 12px;font-size:2rem;font-weight:800;line-height:1.15}.success-page__subtitle{color:var(--color-text-muted);max-width:460px;margin:0;font-size:1rem;line-height:1.7}.success-page__subtitle strong{color:var(--color-text);font-weight:600}.success-page__card{z-index:2;background:var(--color-surface,#fff);border-radius:24px;width:100%;max-width:560px;padding:32px;animation:.6s cubic-bezier(.22,1,.36,1) .15s both cardIn;position:relative;box-shadow:0 0 0 1px #0000000d,0 4px 8px #0000000a,0 24px 64px #00000014}.success-page__ref-section{background:linear-gradient(135deg, var(--color-primary-10,#6366f114) 0%, #10b9810f 100%);border:1px solid var(--color-primary-20,#6366f12e);border-radius:14px;margin-bottom:24px;padding:16px 20px}.success-page__ref-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);align-items:center;gap:5px;margin-bottom:6px;font-size:.7rem;font-weight:700;display:flex}.success-page__ref-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.success-page__ref-value{color:var(--color-text);letter-spacing:.02em;word-break:break-all;font-family:Courier New,Courier,monospace;font-size:.9rem;font-weight:700}.success-page__copy-btn{border:1px solid var(--color-primary-20,#6366f133);background:var(--color-surface,#fff);color:var(--color-primary);cursor:pointer;white-space:nowrap;border-radius:8px;flex-shrink:0;align-items:center;gap:5px;padding:5px 12px;font-family:inherit;font-size:.78rem;font-weight:600;transition:all .2s;display:inline-flex}.success-page__copy-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-1px)}.success-page__divider{background:linear-gradient(90deg,#0000,#00000014,#0000);height:1px;margin:24px 0}.success-page__section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin:0 0 16px;font-size:.72rem;font-weight:700}.success-page__summary-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.success-page__summary-item{flex-direction:column;gap:3px;display:flex}.success-page__summary-item--full{grid-column:1/-1}.success-page__summary-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:500}.success-page__summary-value{color:var(--color-text);font-size:.92rem;font-weight:600;line-height:1.4}.success-page__steps-list{flex-direction:column;gap:14px;display:flex}.success-page__step-item{align-items:flex-start;gap:14px;display:flex}.success-page__step-num{background:var(--color-primary);color:#fff;width:28px;height:28px;box-shadow:0 3px 10px var(--color-primary-20,#6366f159);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:.75rem;font-weight:700;display:flex}.success-page__step-content{flex-direction:column;gap:2px;display:flex}.success-page__step-title{color:var(--color-text);font-size:.875rem;font-weight:600;line-height:1.4}.success-page__step-desc{color:var(--color-text-muted);font-size:.82rem;line-height:1.55}.success-page__timestamp{color:var(--color-text-muted);background:#00000008;border-radius:99px;justify-content:center;align-items:center;gap:6px;margin:24px 0 20px;padding:8px 16px;font-size:.78rem;display:flex}.success-page__actions{flex-direction:column;align-items:center;gap:10px;display:flex}.success-page__btn{font-size:.88rem;font-weight:600;font-family:var(--font-family,"Inter", sans-serif);cursor:pointer;letter-spacing:.01em;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;max-width:340px;padding:13px 28px;text-decoration:none;transition:all .25s cubic-bezier(.22,1,.36,1);display:inline-flex}.success-page__btn--primary{background:var(--color-primary);color:#fff;box-shadow:0 4px 16px var(--color-primary-20,#6366f14d)}.success-page__btn--primary:hover{filter:brightness(1.1);box-shadow:0 8px 28px var(--color-primary-20,#6366f166);transform:translateY(-2px)}.success-page__btn--secondary{color:var(--color-text-muted);background:0 0;border:1.5px solid #e5e7eb}.success-page__btn--secondary:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-10,#6366f10f);transform:translateY(-1px)}@keyframes heroIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes iconPop{0%{opacity:0;transform:scale(.4)rotate(-10deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes ringPulse{0%{opacity:.3;transform:scale(1)}60%{opacity:0;transform:scale(1.35)}to{opacity:0;transform:scale(1.35)}}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)scale(1)}80%{opacity:.6}to{opacity:0;transform:translateY(100vh)rotate(540deg)scale(.5)}}@media (width<=640px){.success-page{padding:32px 16px 48px}.success-page__hero{padding-bottom:24px}.success-page__title{font-size:1.6rem}.success-page__card{border-radius:20px;padding:24px 20px}.success-page__summary-grid{grid-template-columns:1fr}.success-page__summary-item--full{grid-column:1}.success-page__ref-row{flex-direction:column;align-items:flex-start}}.loading-screen{background:linear-gradient(135deg,#f8f9fb 0%,#eef1f5 100%);justify-content:center;align-items:center;min-height:100vh;animation:.3s ease-out fadeIn;display:flex}.loading-screen__content{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}.loading-screen__spinner{width:60px;height:60px;position:relative}.loading-screen__spinner-ring{border:3px solid #0000;border-top-color:#6366f1;border-radius:50%;position:absolute;inset:0}.loading-screen__spinner-ring:first-child{border-top-color:#6366f1;animation:1.2s linear infinite spin}.loading-screen__spinner-ring:nth-child(2){border-top-color:#8b5cf6;animation:1.6s linear infinite reverse spin;inset:6px}.loading-screen__spinner-ring:nth-child(3){border-top-color:#a78bfa;animation:2s linear infinite spin;inset:12px}.loading-screen__text{color:#64748b;letter-spacing:.02em;margin:0;font-size:1rem;font-weight:500}.loading-screen__skeleton{flex-direction:column;align-items:center;gap:10px;margin-top:8px;display:flex}.loading-screen__skeleton-bar{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9 50%,#e2e8f0 75%) 0 0/200% 100%;border-radius:6px;height:12px;animation:1.5s ease-in-out infinite shimmer}.loading-screen__skeleton-bar--wide{width:240px}.loading-screen__skeleton-bar--medium{width:180px}.loading-screen__skeleton-bar--narrow{width:120px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.error-page{background:linear-gradient(135deg,#fef2f2 0%,#fff7ed 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.error-page__card{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:520px;padding:48px 40px;animation:.5s ease-out errorFadeIn;box-shadow:0 4px 6px #0000000a,0 20px 60px #00000014}.error-page__icon-wrapper{color:#dc2626;background:linear-gradient(135deg,#fee2e2,#fecaca);border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;margin:0 auto 24px;display:flex}.error-page__title{color:#1f2937;margin:0 0 12px;font-size:1.6rem;font-weight:700}.error-page__message{color:#6b7280;margin:0;font-size:.95rem;line-height:1.7}.error-page__divider{background:#e5e7eb;height:1px;margin:28px 0}.error-page__help{text-align:left;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;align-items:flex-start;gap:12px;padding:16px;display:flex}.error-page__help svg{color:#6366f1;flex-shrink:0;margin-top:2px}.error-page__help-title{color:#374151;margin:0 0 4px;font-size:.85rem;font-weight:600}.error-page__help-text{color:#6b7280;margin:0;font-size:.82rem;line-height:1.6}.error-page__help-text code{color:#4338ca;background:#eef2ff;border-radius:4px;padding:2px 6px;font-size:.8rem}.error-page__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:28px;display:flex}.error-page__btn{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;transition:all .25s;display:inline-flex}.error-page__btn--back{color:#fff;background:#4b5563}.error-page__btn--back:hover{background:#374151;transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.error-page__btn--primary{color:#fff;background:#2563eb}.error-page__btn--primary:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 6px 20px #2563eb40}@keyframes errorFadeIn{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.error-page__card{padding:32px 24px}.error-page__title{font-size:1.3rem}}.register-main{width:min(100% - 32px,780px);margin:0 auto;padding:40px 0 60px}.page-layout{background:#f5f7f8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}.preview-banner{text-align:center;color:#78350f;background:#fef3c7;padding:10px 16px;font-size:.875rem;font-weight:600}.intake-closed{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:40px 24px}.intake-closed h2{margin-bottom:10px}.intake-closed p{color:#475569}@media (width<=640px){.register-main{width:min(100% - 24px,780px);padding:24px 0 40px}}.page-layout{background-color:var(--color-background,#f8f9fb);flex-direction:column;min-height:100vh;display:flex}.page-main{flex-direction:column;flex:1;display:flex}.page-content{flex-direction:column;gap:28px;padding-top:36px;display:flex}
