:root{--navy:#071b35;--navy2:#0b294d;--blue:#1268e8;--cyan:#19c4d8;--gold:#f1bd4b;--ink:#14243b;--muted:#66758a;--line:#dfe7f1;--paper:#fff;--danger:#c83045;--success:#0a9d73;--shadow:0 28px 80px rgba(4,27,57,.17)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(145deg,#f3f8ff 0%,#eef4fb 52%,#f9fbff 100%);color:var(--ink);font-family:"DM Sans",sans-serif;min-height:100vh;overflow-x:hidden}.ambient{position:fixed;border-radius:50%;filter:blur(3px);pointer-events:none;opacity:.55;z-index:-1}.ambient-one{width:460px;height:460px;right:-180px;top:-170px;background:radial-gradient(circle,rgba(25,196,216,.25),transparent 67%);animation:float 10s ease-in-out infinite}.ambient-two{width:480px;height:480px;left:-260px;top:38%;background:radial-gradient(circle,rgba(18,104,232,.18),transparent 67%);animation:float 12s ease-in-out infinite reverse}@keyframes float{50%{transform:translateY(35px) scale(1.06)}}
.site-header{height:84px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.77);backdrop-filter:blur(18px);border-bottom:1px solid rgba(171,192,218,.45);position:relative;z-index:4}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);text-decoration:none}.brand-mark{width:45px;height:45px;border-radius:14px;background:linear-gradient(145deg,var(--blue),var(--navy));position:relative;box-shadow:0 8px 22px rgba(18,104,232,.28);overflow:hidden}.brand-mark i{position:absolute;background:#fff;border-radius:9px 9px 2px 2px;transform:rotate(-35deg)}.brand-mark i:nth-child(1){width:7px;height:28px;left:10px;top:14px}.brand-mark i:nth-child(2){width:7px;height:35px;left:20px;top:8px;background:var(--cyan)}.brand-mark i:nth-child(3){width:7px;height:22px;left:30px;top:18px;background:var(--gold)}.brand strong{display:block;font:800 17px/1 "Manrope",sans-serif}.brand small{font:700 9px/1.8 "Manrope",sans-serif;letter-spacing:4px;color:var(--blue)}.secure-pill{font-size:13px;font-weight:600;color:#385069;background:#f1f7fd;border:1px solid #dbe9f6;padding:9px 14px;border-radius:40px}.secure-pill span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#14b887;margin-right:8px;box-shadow:0 0 0 5px rgba(20,184,135,.1)}
.page-shell{max-width:1250px;margin:0 auto;padding:70px 30px 90px}.hero{text-align:center;max-width:820px;margin:0 auto 42px;animation:enter .7s ease both}.eyebrow{display:inline-flex;font-weight:800;font-size:11px;letter-spacing:2.2px;color:var(--blue);background:#e8f2ff;border:1px solid #d6e8ff;border-radius:40px;padding:8px 14px;margin-bottom:17px}.hero h1{font:800 clamp(34px,5vw,59px)/1.07 "Manrope",sans-serif;letter-spacing:-2.5px;color:var(--navy);margin:0}.hero h1 span{background:linear-gradient(90deg,var(--blue),#13a9c8);-webkit-background-clip:text;background-clip:text;color:transparent}.hero>p{font-size:17px;line-height:1.7;color:var(--muted);max-width:650px;margin:19px auto 27px}.trust-row{display:flex;align-items:center;justify-content:center;gap:14px}.trust-row div{display:flex;align-items:center;gap:8px;color:#53667c;font-size:12px;font-weight:600}.trust-row b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-size:10px}.trust-row i{height:1px;width:44px;background:#c8d7e8}
.portal-card{max-width:1080px;margin:auto;background:rgba(255,255,255,.94);border:1px solid rgba(214,225,239,.9);border-radius:26px;box-shadow:var(--shadow);overflow:hidden;animation:enter .75s .12s ease both}.progress{height:5px;background:#e6edf6}.progress span{display:block;width:16%;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:width .6s cubic-bezier(.2,.8,.2,1)}.view{display:none}.view.active{display:block;animation:slideIn .5s ease both}#lookupView{max-width:640px;margin:auto;padding:52px 65px 42px}.card-heading{display:flex;align-items:center;gap:14px}.card-heading p{margin:0 0 4px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.card-heading h2{font:800 24px/1.2 "Manrope",sans-serif;color:var(--navy);margin:0}.icon-badge{display:grid;place-items:center;flex:none;width:49px;height:49px;background:linear-gradient(145deg,#e7f1ff,#f7fbff);border:1px solid #d1e3fa;border-radius:15px;color:var(--blue);font:800 13px "Manrope",sans-serif;box-shadow:0 7px 18px rgba(18,104,232,.1)}.icon-badge.success{background:#e5f8f1;color:var(--success);border-color:#c7ebdf;font-size:19px}.helper{color:var(--muted);margin:22px 0 18px}.field{display:block;min-width:0}.field>span{display:block;font-size:12px;font-weight:700;color:#43566c;margin:0 0 8px}.field em{color:var(--danger);font-style:normal}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fbfdff;color:var(--ink);font:500 14px "DM Sans",sans-serif;padding:12px 13px;outline:none;transition:.2s}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#73a9ef;background:#fff;box-shadow:0 0 0 4px rgba(18,104,232,.09)}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:#e16271;box-shadow:0 0 0 4px rgba(200,48,69,.08)}.field.large>span{font-size:13px}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;left:16px;top:50%;width:21px;transform:translateY(-50%);fill:none;stroke:#6d8299;stroke-width:1.8}.input-with-icon input{height:58px;padding-left:51px;font-size:16px;border-radius:14px;text-transform:uppercase}.primary-btn{width:100%;border:0;border-radius:13px;background:linear-gradient(110deg,var(--blue),#0b8fc0);color:#fff;font:700 14px "DM Sans",sans-serif;padding:16px 22px;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;box-shadow:0 12px 25px rgba(18,104,232,.24);transition:.2s;position:relative;overflow:hidden}.primary-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.22),transparent 75%);transform:translateX(-130%)}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(18,104,232,.32)}.primary-btn:hover:before{animation:shine .8s ease}.primary-btn svg{width:18px;fill:none;stroke:currentColor;stroke-width:2}.primary-btn.loading{pointer-events:none;opacity:.75}.primary-btn.loading svg{border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;height:18px;animation:spin .7s linear infinite}.primary-btn.loading svg path{display:none}.privacy-note{display:flex;align-items:flex-start;gap:9px;border-top:1px solid #edf1f6;margin-top:30px;padding-top:23px;color:#7a8899;font-size:11px;line-height:1.5}.privacy-note svg{width:16px;flex:none;fill:none;stroke:#0da47a;stroke-width:1.8}.inline-message{margin-top:14px;padding:12px 14px;border-radius:10px;background:#fff0f2;color:#9f2639;border:1px solid #ffd5dc;font-size:13px}.inline-message.success{background:#eafaf4;color:#087b5b;border-color:#c8edde}
#formView{padding:42px 48px 48px}.form-topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid #e8eef5}.record-id{display:inline-block;color:#596e85;background:#f1f5fa;border-radius:6px;padding:3px 8px;font:700 11px monospace;margin-top:6px}.text-btn{border:1px solid #d9e4f1;background:#fff;border-radius:9px;padding:9px 13px;color:var(--blue);font-weight:700;cursor:pointer}.form-section{padding:34px 0;border-bottom:1px solid #e8eef5}.section-title{display:flex;align-items:center;gap:12px;margin-bottom:23px}.section-title>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#ebf3ff;color:var(--blue);font:800 11px "Manrope"}.section-title h3{font:800 18px "Manrope";margin:0;color:var(--navy)}.section-title h3 small{color:#7a8ca1;font:700 10px "DM Sans";background:#eef2f7;padding:4px 7px;border-radius:8px;margin-left:6px;vertical-align:3px}.section-title p{margin:3px 0 0;color:#7a899a;font-size:12px}.photo-grid{display:grid;grid-template-columns:240px 1fr;gap:24px}.fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fields-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.fields-grid.two{max-width:650px}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.upload-card{border:1.5px dashed #a9c7eb;background:linear-gradient(145deg,#f6faff,#eef6ff);border-radius:16px;text-align:center;padding:18px 15px;cursor:pointer;position:relative;overflow:hidden;transition:.25s}.upload-card:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 13px 28px rgba(18,104,232,.12)}.upload-card input{position:absolute;opacity:0;pointer-events:none}.photo-preview{width:105px;height:105px;border-radius:22px;background:#fff;border:5px solid #fff;box-shadow:0 7px 20px rgba(15,49,86,.14);margin:0 auto 13px;overflow:hidden;display:grid;place-items:center}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-preview svg{width:36px;fill:none;stroke:var(--blue);stroke-width:1.6}.upload-card strong,.upload-card span{display:block}.upload-card strong{font-size:13px;color:var(--navy)}.upload-card span{font-size:10px;color:#7890a8;margin:5px 0 10px}.upload-card b{display:inline-block;background:#fff;color:var(--blue);font-size:11px;padding:7px 11px;border-radius:8px;box-shadow:0 4px 12px rgba(15,49,86,.08)}.upload-shine{position:absolute;width:50px;height:200%;background:rgba(255,255,255,.5);transform:rotate(25deg);left:-100px;top:-50%;animation:uploadShine 4s 1s ease-in-out infinite}.guardian-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.guardian-grid fieldset{border:1px solid #dfe8f2;border-radius:16px;margin:0;padding:20px;background:#fbfdff;display:grid;gap:15px}.guardian-grid legend{font:800 13px "Manrope";color:var(--navy);padding:0 9px}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.phone>div{display:flex}.phone b{display:flex;align-items:center;background:#edf3f9;border:1px solid var(--line);border-right:0;border-radius:11px 0 0 11px;padding:0 12px;font-size:13px;color:#446078}.phone input{border-radius:0 11px 11px 0}.requirement{display:flex;align-items:center;gap:8px;margin-top:16px;color:#6e7e91;font-size:11px}.requirement span{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#fff2d7;color:#a06b00;font-weight:800}.password-section{border-bottom:0}.form-actions{display:flex;align-items:center;justify-content:space-between;padding-top:12px}.form-actions p{font-size:11px;color:#7c8b9d}.form-actions p b{color:var(--danger)}.save-btn{width:auto;min-width:235px;margin:0}.toast{position:fixed;right:25px;bottom:25px;background:#08253e;color:#fff;padding:16px 20px;border-radius:14px;display:flex;gap:12px;align-items:center;box-shadow:0 18px 45px rgba(5,28,53,.3);transform:translateY(150px);opacity:0;transition:.4s;z-index:20}.toast.show{transform:translateY(0);opacity:1}.toast>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#12aa7d}.toast strong{font-size:13px}.toast p{margin:3px 0 0;color:#b9c8d6;font-size:11px}footer{display:flex;justify-content:center;align-items:center;gap:8px;color:#7b899a;font-size:11px;padding:0 20px 32px}footer strong{color:var(--navy)}footer i{width:3px;height:3px;background:#9ba9b9;border-radius:50%}
@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes slideIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shine{to{transform:translateX(130%)}}@keyframes uploadShine{0%,65%{left:-100px}85%,100%{left:120%}}
@media(max-width:800px){.page-shell{padding:45px 16px 65px}.hero h1{letter-spacing:-1.5px}.secure-pill{display:none}#lookupView{padding:38px 24px 32px}#formView{padding:30px 20px}.photo-grid,.guardian-grid{grid-template-columns:1fr}.upload-card{display:flex;align-items:center;text-align:left;gap:15px}.photo-preview{width:88px;height:88px;flex:none;margin:0}.fields-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.span-3{grid-column:span 2}.hero>p{font-size:15px}.form-topbar{align-items:flex-start}.form-actions{flex-direction:column;align-items:stretch;gap:8px}.save-btn{width:100%}}
@media(max-width:520px){.site-header{height:72px}.brand-mark{width:39px;height:39px}.page-shell{padding-top:35px}.hero{margin-bottom:27px}.hero h1{font-size:32px}.trust-row{gap:7px}.trust-row i{width:16px}.trust-row span{display:none}.portal-card{border-radius:20px}.fields-grid,.fields-grid.three,.split{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.photo-grid{gap:19px}.upload-card{padding:13px}.photo-preview{width:72px;height:72px}.card-heading h2{font-size:20px}.icon-badge{width:43px;height:43px}.form-topbar .card-heading{align-items:flex-start}.text-btn{font-size:11px;padding:7px 9px}.guardian-grid fieldset{padding:16px 13px}footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.field.locked small{float:right;color:#70839a;font-size:9px;text-transform:uppercase;letter-spacing:.6px}.field.locked input:disabled,.field.locked select:disabled{color:#314a63;background:#edf3f8;border-style:dashed;opacity:1;cursor:not-allowed}.upload-card.passport-required{border-color:#e2a13a;background:linear-gradient(145deg,#fffaf0,#fff4dd);box-shadow:0 10px 26px rgba(207,139,22,.12)}.upload-card.passport-required strong{color:#9b650a}.upload-card.has-error{border-color:#d84659;background:linear-gradient(145deg,#fff8f9,#fff0f2);box-shadow:0 0 0 4px rgba(200,48,69,.09)}.contact-requirement{display:flex;align-items:center;gap:9px;margin:-8px 0 20px;padding:11px 13px;border:1px solid #f0d49b;border-radius:11px;background:#fff9e9;color:#75520d;font-size:11px}.contact-requirement[hidden]{display:none}.contact-requirement b{display:grid;place-items:center;width:21px;height:21px;flex:none;border-radius:50%;background:#f1bd4b;color:#604000;font-size:12px}
.sponsor-card{border:1px solid #cfe0f3;border-radius:16px;margin:22px 0 0;padding:5px 20px 20px;background:linear-gradient(145deg,#f8fbff,#f1f7fd)}.sponsor-card legend{font:800 13px "Manrope";color:var(--navy);padding:0 9px}.sponsor-card legend small{color:var(--blue);font:700 9px "DM Sans";background:#e5f0ff;padding:4px 7px;border-radius:8px;margin-left:5px;text-transform:uppercase;letter-spacing:.5px}.sponsor-card .fields-grid{margin-top:14px}
.record-school{display:inline-block;color:#087b5b;background:#e8f8f2;border-radius:6px;padding:3px 8px;font-size:10px;font-weight:700;margin:6px 0 0 5px}.field>span small{float:right;color:#70839a;font-size:9px;text-transform:uppercase;letter-spacing:.6px}
.school-selection[hidden]{display:none}.school-selection{margin-top:18px;padding:18px;border:1px solid #cfe0f3;border-radius:16px;background:linear-gradient(145deg,#f8fbff,#eef6ff);opacity:0;transform:translateY(8px);transition:.3s ease}.school-selection.show{opacity:1;transform:none}.school-selection-heading{display:flex;gap:12px;align-items:center;margin-bottom:13px}.school-selection-heading>span{display:grid;place-items:center;width:43px;height:43px;flex:none;border-radius:13px;background:linear-gradient(145deg,var(--blue),#0b8fc0);color:#fff;font-size:10px;font-weight:800;box-shadow:0 8px 18px rgba(18,104,232,.2)}.school-selection h3{margin:0;color:var(--navy);font:800 15px "Manrope",sans-serif}.school-selection-heading p{margin:3px 0 0;color:#718399;font-size:10px}.school-choices{display:grid;gap:9px}.school-choice{width:100%;display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #d9e5f2;border-radius:12px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 5px 14px rgba(10,44,80,.05);opacity:0;animation:schoolChoiceIn .35s ease forwards;transition:.2s}.school-choice:hover,.school-choice.selected{border-color:#6fa7ec;transform:translateY(-1px);box-shadow:0 9px 20px rgba(18,104,232,.12)}.school-choice>b{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:#eaf3ff;color:var(--blue);font:800 10px "Manrope",sans-serif}.school-choice span{display:block;min-width:0;flex:1}.school-choice strong,.school-choice small{display:block}.school-choice strong{font:700 12px "DM Sans",sans-serif;color:var(--navy)}.school-choice small{margin-top:2px;color:#8090a2;font-size:9px}.school-choice i{color:var(--blue);font:500 25px/1 sans-serif;font-style:normal}.school-cancel{display:block;margin:13px auto 0;padding:3px;border:0;background:transparent;color:#607790;font:700 10px "DM Sans",sans-serif;cursor:pointer}.school-cancel:hover{color:var(--blue)}@keyframes schoolChoiceIn{from{opacity:0;transform:translateX(9px)}to{opacity:1;transform:none}}
.school-code-panel[hidden]{display:none}.school-code-panel{margin-top:18px;padding:21px;border:1px solid #c8dfeb;border-radius:17px;background:radial-gradient(circle at 100% 0,rgba(25,196,216,.13),transparent 40%),linear-gradient(145deg,#f8fcff,#edf8fa);opacity:0;transform:translateY(9px) scale(.985);transition:.32s ease}.school-code-panel.show{opacity:1;transform:none}.school-code-icon{float:left;display:grid;place-items:center;width:48px;height:48px;margin-right:13px;border-radius:14px;background:linear-gradient(145deg,#0d8fad,#1268e8);color:#fff;box-shadow:0 9px 22px rgba(14,133,174,.22)}.school-code-icon svg{width:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.school-code-copy{min-height:54px}.school-code-copy>span{color:#0d819a;font-size:9px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.school-code-copy h3{margin:3px 0 2px;color:var(--navy);font:800 16px "Manrope",sans-serif}.school-code-copy p{margin:0;color:#6e8396;font-size:10px}.school-code-copy strong{color:#087b79}.school-code-field{clear:both;padding-top:15px}.school-code-field input{text-align:center;text-transform:uppercase;letter-spacing:1.4px;font-weight:800;background:#fff}.code-message{margin-top:9px;padding:9px 11px;border-radius:9px;background:#fff0f2;border:1px solid #ffd5dc;color:#9f2639;font-size:11px;text-align:center}
.limit-modal[hidden]{display:none}.limit-modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:22px}.limit-backdrop{position:absolute;inset:0;border:0;background:rgba(3,18,38,.7);backdrop-filter:blur(9px);opacity:0;cursor:pointer;transition:opacity .26s ease}.limit-dialog{position:relative;width:min(440px,100%);padding:38px 34px 32px;text-align:center;background:linear-gradient(150deg,#fff 0%,#f5f9ff 100%);border:1px solid rgba(255,255,255,.78);border-radius:24px;box-shadow:0 34px 90px rgba(0,15,38,.4);opacity:0;transform:translateY(20px) scale(.94);transition:opacity .26s ease,transform .35s cubic-bezier(.2,.9,.25,1.2)}.limit-modal.show .limit-backdrop,.limit-modal.show .limit-dialog{opacity:1}.limit-modal.show .limit-dialog{transform:none}.limit-icon{width:74px;height:74px;margin:0 auto 18px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,#fff1e5,#ffe5e9);color:#c83045;box-shadow:0 12px 30px rgba(200,48,69,.16)}.limit-icon svg{width:36px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.limit-label{margin:0 0 8px;color:#c83045;font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase}.limit-dialog h2{margin:0;color:var(--navy);font:800 28px/1.15 "Manrope",sans-serif;letter-spacing:-.7px}.limit-dialog>p:last-of-type{margin:14px auto 4px;max-width:350px;color:#607187;font-size:14px;line-height:1.65}.limit-dialog .primary-btn{margin-top:24px}
