:root{--p-green:#087f5b;--p-green-dark:#055d43;--p-ink:#17362c;--p-muted:#687b73;--p-blue:#2f80ed;--p-yellow:#ffb21d;--p-bg:#f3f8f6;--p-line:#d7e5df;--p-card:#fff;--p-shadow:0 18px 55px rgba(24,73,56,.1);--p-container:min(1180px,calc(100% - 40px));font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--p-ink);background:var(--p-bg);font-size:15px;line-height:1.6}body,button,input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.icon{display:inline-block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.portal-container{width:var(--p-container);margin-inline:auto}.portal-skip{position:fixed;z-index:9999;left:15px;top:-60px;padding:9px 14px;border-radius:8px;background:#fff;color:var(--p-green);box-shadow:var(--p-shadow)}.portal-skip:focus{top:12px}.portal-header{height:83px;position:relative;z-index:30;background:rgba(255,255,255,.94);border-bottom:1px solid var(--p-line);backdrop-filter:blur(15px)}.portal-header__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.portal-brand{display:flex;align-items:center;gap:11px}.portal-brand img{width:45px;height:52px;object-fit:contain}.portal-brand span{display:flex;flex-direction:column;line-height:1.15}.portal-brand strong{font-family:Georgia,"Times New Roman",serif;color:#205b46;font-size:.98rem;text-transform:uppercase}.portal-brand small{margin-top:5px;color:#7c8d86;font-size:.57rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.portal-header nav{display:flex;align-items:center;gap:9px}.portal-header nav>a,.portal-header nav button{min-height:41px;display:flex;align-items:center;gap:7px;padding:9px 13px;border:0;border-radius:9px;background:transparent;color:#526b61;font-size:.7rem;font-weight:800}.portal-header nav>a:hover,.portal-header nav button:hover{background:#edf7f3;color:var(--p-green)}.portal-header nav form{margin:0}.portal-header .portal-header__cta{background:var(--p-green);color:#fff}.portal-main{min-height:calc(100vh - 143px)}.portal-footer{min-height:60px;border-top:1px solid var(--p-line);background:#fff;color:#74857e;font-size:.66rem}.portal-footer>div{min-height:60px;display:flex;align-items:center;justify-content:space-between}.portal-footer a{color:var(--p-green);font-weight:800}.portal-eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--p-green);font-size:.64rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.portal-eyebrow:before{content:"";width:18px;height:3px;border-radius:9px;background:var(--p-yellow)}
.portal-auth{min-height:calc(100vh - 143px);display:grid;align-items:center;padding:55px 0;background:radial-gradient(circle at 8% 15%,rgba(8,127,91,.1),transparent 28%),linear-gradient(130deg,#eaf7f1,#fbfdfc 55%,#fff7e5)}.auth-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px}.auth-story{padding:30px 0}.auth-story h1{max-width:540px;margin:13px 0 18px;font-size:clamp(2.8rem,5.2vw,5rem);line-height:1.01;letter-spacing:-.06em}.auth-story>p{max-width:560px;color:var(--p-muted);font-size:1rem}.auth-story ol{list-style:none;margin:35px 0 0;padding:0;display:grid;gap:18px}.auth-story li{display:grid;grid-template-columns:38px 1fr;gap:5px 13px;counter-increment:process}.auth-story ol{counter-reset:process}.auth-story li:before{content:counter(process,decimal-leading-zero);grid-row:span 2;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#fff;color:var(--p-green);box-shadow:0 7px 20px rgba(25,70,54,.09);font-size:.65rem;font-weight:900}.auth-story li b{font-size:.78rem}.auth-story li span{color:var(--p-muted);font-size:.69rem}.auth-form-card{padding:37px;border:1px solid rgba(208,225,218,.95);border-radius:24px;background:rgba(255,255,255,.97);box-shadow:var(--p-shadow)}.auth-form-card h2{margin:5px 0 4px;font-size:1.8rem;letter-spacing:-.035em}.auth-form-card>p{margin:0 0 24px;color:var(--p-muted);font-size:.76rem}.portal-form{display:grid;gap:15px}.portal-form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.portal-field{display:flex;min-width:0;flex-direction:column;gap:6px}.portal-field>span{color:#3f594e;font-size:.66rem;font-weight:850}.portal-field>span b,.document-upload strong b,.photo-upload strong b{color:#c84646}.portal-field input,.portal-field select,.portal-field textarea{width:100%;border:1px solid #cbdcd5;border-radius:9px;background:#fbfdfc;color:var(--p-ink);outline:0;font-size:.76rem;transition:.18s}.portal-field input,.portal-field select{height:44px;padding:9px 11px}.portal-field textarea{padding:10px 11px;resize:vertical}.portal-field input:focus,.portal-field select:focus,.portal-field textarea:focus{border-color:var(--p-green);background:#fff;box-shadow:0 0 0 3px rgba(8,127,91,.09)}.portal-field input[aria-invalid=true],.portal-field select[aria-invalid=true],.portal-field textarea[aria-invalid=true]{border-color:#d55c5c}.portal-field small,.portal-error{color:#ba4444;font-size:.59rem}.portal-field em{color:#8a9993;font-size:.55rem;font-style:normal}.portal-password{height:44px;display:flex;border:1px solid #cbdcd5;border-radius:9px;background:#fbfdfc}.portal-password:focus-within{border-color:var(--p-green);box-shadow:0 0 0 3px rgba(8,127,91,.09)}.portal-password input{height:100%;border:0;box-shadow:none!important}.portal-password button{width:42px;border:0;background:transparent;color:#71857c}.portal-check{display:flex;align-items:flex-start;gap:9px;color:#61736b;font-size:.65rem;cursor:pointer}.portal-check input{position:absolute;opacity:0}.portal-check i{width:18px;height:18px;display:grid;place-items:center;flex:0 0 auto;margin-top:1px;border:1px solid #adc5bb;border-radius:5px;background:#fff}.portal-check input:checked+i{border-color:var(--p-green);background:var(--p-green)}.portal-check input:checked+i:after{content:"✓";color:#fff;font-size:.7rem;font-style:normal}.portal-button{min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border:1px solid transparent;border-radius:10px;font-size:.72rem;font-weight:850;transition:.18s}.portal-button:hover{transform:translateY(-1px)}.portal-button.primary{background:var(--p-green);color:#fff;box-shadow:0 9px 22px rgba(8,127,91,.19)}.portal-button.primary:hover{background:var(--p-green-dark)}.portal-button.secondary{border-color:#c9dbd3;background:#fff;color:#466158}.portal-button[disabled]{opacity:.48;cursor:not-allowed;transform:none}.portal-button.wide{width:100%;margin-top:2px}.auth-switch{margin:21px 0 0!important;text-align:center}.auth-switch a,.admin-login-link{color:var(--p-green);font-weight:850}.admin-login-link{display:block;margin-top:13px;text-align:center;font-size:.6rem}.portal-alert{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;padding:12px 14px;border-radius:10px;font-size:.68rem}.portal-alert.warning{border:1px solid #efdca9;background:#fff8e5;color:#805b09}.portal-alert.error{border:1px solid #f0cccc;background:#fff2f2;color:#9d3c3c}.portal-alert b{display:block}.portal-alert ul{margin:4px 0 0;padding-left:17px}.auth-security{display:flex;align-items:flex-start;gap:11px;max-width:560px;margin-top:30px;padding:16px;border:1px solid #cee3da;border-radius:13px;background:rgba(255,255,255,.72);color:var(--p-green)}.auth-security span{display:flex;flex-direction:column}.auth-security b{font-size:.72rem}.auth-security small{margin-top:3px;color:#687d74;font-size:.62rem;line-height:1.5}
.process-hero{padding:65px 0;background:linear-gradient(130deg,#e7f6ef,#fff 62%,#fff3d5)}.process-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:60px}.process-grid h1{margin:11px 0 13px;font-size:clamp(2.7rem,5vw,4.7rem);line-height:1;letter-spacing:-.055em}.process-grid p{max-width:670px;margin:0;color:var(--p-muted)}.registration-card{min-width:290px;padding:26px;border:1px solid #cbe2d8;border-radius:19px;background:rgba(255,255,255,.88);box-shadow:var(--p-shadow)}.registration-card small,.registration-card span{display:block;color:#74877f;font-size:.62rem}.registration-card strong{display:block;margin:7px 0;color:var(--p-green);font-size:1.45rem}.process-section{padding:65px 0 80px}.process-steps{display:grid;grid-template-columns:1fr 1fr;gap:16px}.process-steps article{display:grid;grid-template-columns:62px 1fr;gap:18px;padding:24px;border:1px solid var(--p-line);border-radius:16px;background:#fff;box-shadow:0 7px 25px rgba(24,69,54,.05)}.process-steps article>span{width:57px;height:57px;display:grid;place-items:center;border-radius:15px;background:#e8f7f1;color:var(--p-green);font-size:.75rem;font-weight:900}.process-steps article:nth-child(2)>span{background:#edf4ff;color:var(--p-blue)}.process-steps article:nth-child(3)>span{background:#fff5dc;color:#c98200}.process-steps article:nth-child(4)>span{background:#f0edff;color:#7356c7}.process-steps small{color:var(--p-green);font-size:.56rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.process-steps h2{margin:3px 0 5px;font-size:1.05rem}.process-steps p{margin:0;color:var(--p-muted);font-size:.72rem}.document-ready{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:20px;padding:19px 22px;border:1px solid #cfe2da;border-radius:15px;background:#eef8f4}.document-ready>div{display:flex;align-items:center;gap:11px;color:var(--p-green)}.document-ready>div span{display:flex;flex-direction:column}.document-ready strong{font-size:.75rem}.document-ready small{color:#74867f;font-size:.61rem}.document-ready ul{display:flex;gap:17px;margin:0;padding:0;list-style:none;color:#5f746b;font-size:.64rem;font-weight:750}.document-ready li:before{content:"✓";margin-right:5px;color:var(--p-green)}.process-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}
.portal-dashboard-head{padding:57px 0 78px;background:linear-gradient(125deg,#e5f5ed,#f9fcfb 65%,#fff5dc)}.portal-dashboard-head h1{margin:10px 0 6px;font-size:clamp(2.4rem,4.5vw,4rem);letter-spacing:-.05em}.portal-dashboard-head p{margin:0;color:var(--p-muted)}.portal-dashboard{position:relative;margin-top:-38px;padding-bottom:80px}.dashboard-stack{display:grid;gap:20px}.application-card{overflow:hidden;border:1px solid var(--p-line);border-radius:19px;background:#fff;box-shadow:var(--p-shadow)}.application-summary{display:grid;grid-template-columns:57px 1fr auto;align-items:center;gap:15px;padding:24px}.student-avatar{width:57px;height:57px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,var(--p-green),#39aa82);color:#fff;font-size:1.25rem;font-weight:900}.application-summary h2{margin:5px 0 2px;font-size:1.25rem}.application-summary p{margin:0;color:#75877f;font-size:.65rem}.status-chip{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.54rem;font-weight:900;text-transform:uppercase}.status-draft{background:#eef2f0;color:#60736b}.status-submitted,.status-under_review{background:#e9f3ff;color:#236fc4}.status-documents_verified,.status-admitted{background:#e5f7ef;color:#087151}.status-fee_pending{background:#fff4d8;color:#a66a00}.status-rejected,.status-withdrawn{background:#fff0f0;color:#b64a4a}.progress-ring{width:69px;height:69px;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;background:radial-gradient(circle,#fff 57%,transparent 59%),conic-gradient(var(--p-green) calc(var(--progress)*1%),#e2ebe7 0)}.progress-ring strong{font-size:.8rem;line-height:1}.progress-ring small{margin-top:3px;color:#81918a;font-size:.48rem}.application-message{display:flex;align-items:center;gap:10px;padding:13px 24px;border-top:1px solid #e8efec;border-bottom:1px solid #e8efec;background:#f8fbfa;color:var(--p-green)}.application-message span{font-size:.66rem}.application-message b{margin-right:3px}.application-actions{display:flex;gap:8px;padding:18px 24px}.student-records{padding:0 24px 24px}.record-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px;border-radius:12px;background:#173f33;color:#fff}.record-heading span{display:flex;align-items:center;gap:8px;font-size:.68rem;font-weight:850}.record-heading strong{font-size:.65rem}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:14px}.record-grid section{padding:16px;border:1px solid var(--p-line);border-radius:12px}.record-grid h3{margin:0 0 10px;font-size:.75rem}.record-grid p{color:var(--p-muted);font-size:.63rem}.record-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid #e8efec}.record-row span{display:flex;flex-direction:column}.record-row b{font-size:.66rem}.record-row small{color:#83938d;font-size:.55rem}.record-row em{padding:3px 7px;border-radius:999px;font-size:.51rem;font-style:normal;font-weight:850}.result-pass,.fee-paid{background:#e5f7ef;color:#087151}.result-fail,.fee-unpaid{background:#fff0f0;color:#b84b4b}.fee-partial{background:#fff5df;color:#a46a00}.portal-empty{padding:55px;border:1px solid var(--p-line);border-radius:18px;background:#fff;text-align:center}.portal-empty>svg{color:var(--p-green)}.portal-empty h2{margin:10px 0 4px}.portal-empty p{margin:0 0 18px;color:var(--p-muted)}
.form-head{padding:33px 0;background:linear-gradient(105deg,#e9f7f1,#fff 72%);border-bottom:1px solid var(--p-line)}.form-head>.portal-container{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.form-head a{display:flex;align-items:center;gap:3px;margin-bottom:10px;color:#687d74;font-size:.63rem;font-weight:800}.form-head h1{margin:5px 0 3px;font-size:2rem;letter-spacing:-.04em}.form-head p{margin:0;color:var(--p-muted);font-size:.68rem}.form-head__status{width:230px}.form-head__status span{display:block;margin-bottom:7px;color:var(--p-green);font-size:.62rem;font-weight:850;text-align:right}.form-head__status i{height:7px;display:block;overflow:hidden;border-radius:10px;background:#dbe8e2}.form-head__status b{height:100%;display:block;border-radius:10px;background:linear-gradient(90deg,var(--p-green),#4ab58e)}.admission-form-section{padding:33px 0 70px}.admission-form-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:22px;align-items:start}.form-steps{position:sticky;top:18px;display:grid;gap:5px;padding:9px;border:1px solid var(--p-line);border-radius:15px;background:#fff;box-shadow:0 8px 30px rgba(25,70,54,.06)}.form-steps a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;color:#75877f}.form-steps a:hover,.form-steps a.active{background:#edf8f3;color:var(--p-green)}.form-steps a i{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #d3e1db;border-radius:9px;font-size:.56rem;font-style:normal;font-weight:900}.form-steps a.active i{border-color:var(--p-green);background:var(--p-green);color:#fff}.form-steps a.done:not(.active) i{border-color:#b7dbc9;background:#e4f6ee;color:var(--p-green)}.form-steps a span{display:flex;min-width:0;flex-direction:column}.form-steps a small{font-size:.51rem;text-transform:uppercase}.form-steps a b{font-size:.64rem}.form-workspace{min-width:0}.step-form,.review-panel{padding:25px;border:1px solid var(--p-line);border-radius:16px;background:#fff;box-shadow:0 8px 30px rgba(25,70,54,.055)}.step-intro{display:flex;align-items:flex-start;gap:12px;margin-bottom:23px;padding-bottom:18px;border-bottom:1px solid #e7eeeb}.step-intro>span{width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:#e8f7f1;color:var(--p-green)}.step-intro h2{margin:1px 0 3px;font-size:1.15rem}.step-intro p{margin:0;color:var(--p-muted);font-size:.67rem}.portal-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-fields .span-2{grid-column:span 2}.parent-panels{display:grid;grid-template-columns:1fr 1fr;gap:15px}.parent-panels>section{padding:17px;border:1px solid #dbe8e2;border-radius:13px;background:#fbfdfc}.parent-panels h3{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:.75rem}.parent-panels h3 i{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:#e7f6ef;color:var(--p-green);font-size:.65rem;font-style:normal}.parent-panels>section:nth-child(2) h3 i{background:#edf3ff;color:var(--p-blue)}.subsection-title{margin:26px 0 16px;padding-top:22px;border-top:1px solid #e7eeeb}.subsection-title span{font-size:.78rem;font-weight:850}.subsection-title p{margin:3px 0 0;color:var(--p-muted);font-size:.61rem}.step-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:27px;padding-top:20px;border-top:1px solid #e7eeeb}.photo-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photo-upload{display:flex;flex-direction:column;padding:13px;border:1px dashed #afc9be;border-radius:13px;background:#f9fcfb;cursor:pointer}.photo-upload:hover{border-color:var(--p-green);background:#f1faf6}.photo-preview{height:205px;display:grid;place-items:center;overflow:hidden;margin-bottom:12px;border-radius:10px;background:#e8f2ee;color:#789087}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-preview span{font-size:.59rem}.photo-upload>strong{font-size:.68rem}.photo-upload>small{margin-top:3px;color:#83938c;font-size:.55rem}.photo-upload>input,.document-upload>input{position:absolute;opacity:0;pointer-events:none}.document-upload-list{display:grid;gap:9px}.document-upload{min-height:66px;display:grid;grid-template-columns:41px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 13px;border:1px dashed #b4cac1;border-radius:11px;background:#fbfdfc;cursor:pointer}.document-upload:hover{border-color:var(--p-green);background:#f2faf6}.document-upload.uploaded{border-style:solid;border-color:#bde0d1;background:#f3fbf7}.document-upload>span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#e8f5f0;color:var(--p-green)}.document-upload>div{display:flex;min-width:0;flex-direction:column}.document-upload strong{font-size:.68rem}.document-upload small{max-width:560px;overflow:hidden;color:#83938c;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.document-upload em{padding:6px 9px;border-radius:7px;background:#fff;color:var(--p-green);font-size:.57rem;font-style:normal;font-weight:850}.review-missing{margin-bottom:18px;padding:14px;border:1px solid #eccaca;border-radius:10px;background:#fff3f3;color:#9e4040}.review-missing strong{font-size:.7rem}.review-missing ul{margin:5px 0 0;padding-left:18px;font-size:.62rem}.review-ready{display:flex;align-items:center;gap:11px;margin-bottom:18px;padding:14px;border:1px solid #bfe1d2;border-radius:11px;background:#edfaf4;color:var(--p-green)}.review-ready span{display:flex;flex-direction:column}.review-ready strong{font-size:.72rem}.review-ready small{font-size:.59rem}.review-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.review-sections section{padding:16px;border:1px solid var(--p-line);border-radius:11px}.review-sections h3{margin:0 0 10px;font-size:.76rem}.review-sections dl{display:grid;grid-template-columns:70px 1fr;gap:5px;margin:0}.review-sections dt{color:#87968f;font-size:.55rem}.review-sections dd{margin:0;overflow-wrap:anywhere;font-size:.61rem;font-weight:750}.review-sections a{display:inline-block;margin-top:12px;color:var(--p-green);font-size:.57rem;font-weight:850}.pdf-order-note{display:flex;align-items:flex-start;gap:11px;margin-top:14px;padding:14px;border-radius:11px;background:#f0f5ff;color:var(--p-blue)}.pdf-order-note>div{display:flex;flex-direction:column}.pdf-order-note strong{font-size:.68rem}.pdf-order-note span{margin-top:2px;color:#60748b;font-size:.58rem}.submit-form{margin-top:18px;padding-top:18px;border-top:1px solid #e7eeeb}.submit-form>.portal-check{padding:14px;border:1px solid #d3e2dc;border-radius:11px;background:#f9fcfb}
.toast-region{position:fixed;z-index:100;right:22px;top:98px;width:min(410px,calc(100vw - 28px));display:grid;gap:10px;pointer-events:none}.app-toast{--toast-accent:#087f5b;position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) 27px;gap:11px;overflow:hidden;padding:14px 12px 17px;border:1px solid #d6e5df;border-radius:13px;background:#fff;box-shadow:0 18px 50px rgba(20,55,43,.18);pointer-events:auto}.toast-error{--toast-accent:#c84b4b}.toast-warning{--toast-accent:#d88a00}.toast-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--toast-accent) 12%,#fff);color:var(--toast-accent)}.app-toast strong{font-size:.72rem}.app-toast p{margin:2px 0 0;color:#687b73;font-size:.63rem}.app-toast ul{margin:5px 0 0;padding-left:16px;font-size:.58rem}.app-toast>button{width:27px;height:27px;border:0;border-radius:7px;background:#f2f6f4;color:#6d8077}.toast-progress{position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--toast-accent);transform-origin:left;animation:portalToast var(--toast-duration,6s) linear forwards}.app-toast.is-leaving{opacity:0;transform:translateX(20px);transition:.25s}@keyframes portalToast{to{transform:scaleX(0)}}
@media(max-width:980px){.auth-grid{grid-template-columns:1fr;gap:20px}.auth-story{padding-bottom:0}.auth-story h1{font-size:3.7rem}.auth-story ol{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr}.registration-card{max-width:390px}.document-ready{align-items:flex-start;flex-direction:column}.admission-form-layout{grid-template-columns:1fr}.form-steps{position:static;grid-template-columns:repeat(6,minmax(110px,1fr));overflow-x:auto}.form-steps a{min-width:120px}.parent-panels{grid-template-columns:1fr}.review-sections{grid-template-columns:1fr 1fr}.photo-preview{height:175px}}
@media(max-width:700px){:root{--p-container:calc(100% - 24px)}.portal-header{height:70px}.portal-brand img{width:36px;height:42px}.portal-brand strong{max-width:170px;overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.portal-brand small{font-size:.48rem}.portal-header nav>a:not(.portal-header__cta),.portal-header nav form{display:none}.portal-header__cta{padding:8px 10px!important;font-size:.6rem!important}.portal-footer>div{align-items:center;flex-direction:column;justify-content:center;gap:3px}.portal-auth{padding:35px 0}.auth-story h1{font-size:2.75rem}.auth-story ol{grid-template-columns:1fr}.auth-form-card{padding:24px 18px;border-radius:18px}.portal-form-row,.portal-fields{grid-template-columns:1fr}.portal-fields .span-2{grid-column:auto}.process-hero{padding:45px 0}.process-grid h1{font-size:3rem}.registration-card{min-width:0}.process-section{padding:40px 0 60px}.process-steps{grid-template-columns:1fr}.process-steps article{grid-template-columns:50px 1fr;padding:18px}.process-steps article>span{width:48px;height:48px}.document-ready ul{display:grid;grid-template-columns:1fr 1fr}.process-actions{flex-direction:column}.process-actions .portal-button{width:100%}.portal-dashboard-head{padding:42px 0 65px}.application-summary{grid-template-columns:49px 1fr}.student-avatar{width:49px;height:49px}.progress-ring{display:none}.application-actions{align-items:stretch;flex-direction:column}.record-grid{grid-template-columns:1fr}.record-heading{align-items:flex-start;flex-direction:column}.form-head>.portal-container{align-items:flex-start;flex-direction:column}.form-head__status{width:100%}.form-head__status span{text-align:left}.admission-form-section{padding-top:18px}.form-steps{margin:0 -12px;padding:8px 12px;border-right:0;border-left:0;border-radius:0}.step-form,.review-panel{padding:18px 14px}.photo-upload-grid{grid-template-columns:1fr}.photo-preview{height:260px}.review-sections{grid-template-columns:1fr}.step-actions{align-items:stretch;flex-direction:column-reverse}.step-actions .portal-button{width:100%}.document-upload{grid-template-columns:37px minmax(0,1fr)}.document-upload>span{width:36px;height:36px}.document-upload em{display:none}.toast-region{right:14px;top:79px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portal-button,.app-toast{transition:none}.toast-progress{animation:none}}
.portal-check input:focus-visible+i{border-color:var(--p-green);outline:3px solid rgba(47,128,237,.18);outline-offset:2px}.photo-upload:focus-within,.document-upload:focus-within{border-color:var(--p-green);outline:3px solid rgba(47,128,237,.15);outline-offset:2px}

/* Optional-file and correction workflow */
.status-incomplete{background:#fff4d8;color:#9a6200}.status-needs_correction{background:#fff0e8;color:#a54016}.optional-file-note{display:flex;align-items:center;gap:8px;margin:-8px 0 18px;padding:10px 12px;border:1px solid #d6e3ef;border-radius:10px;background:#f3f8ff;color:#356a99;font-size:.62rem}.review-incomplete{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px;padding:14px;border:1px solid #efcf8e;border-radius:11px;background:#fff8e7;color:#8a5b00}.review-incomplete>div{min-width:0}.review-incomplete strong{font-size:.72rem}.review-incomplete p{margin:3px 0 5px;color:#735f35;font-size:.61rem}.review-incomplete details{font-size:.6rem}.review-incomplete summary{cursor:pointer;font-weight:850}.review-incomplete ul{margin:6px 0 0;padding-left:18px}.problem-comment-card,.application-problem{display:flex;align-items:flex-start;gap:12px;border:1px solid #efbd88;border-radius:13px;background:linear-gradient(135deg,#fff8e9,#fffdf8);color:#8c3f16}.problem-comment-card{margin-bottom:18px;padding:16px}.problem-comment-card>span,.application-problem>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:#fff0d9;color:#b45309}.problem-comment-card>div,.application-problem>div{min-width:0;display:flex;flex-direction:column}.problem-comment-card small,.application-problem small{color:#a35c27;font-size:.54rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.problem-comment-card strong,.application-problem strong{font-size:.75rem}.problem-comment-card p,.application-problem p{margin:4px 0 0;color:#684c38;font-size:.66rem;white-space:pre-line}.problem-comment-card em{margin-top:6px;color:#96745c;font-size:.54rem;font-style:normal}.application-problem{margin:0 24px;padding:15px;border-radius:12px}.application-message:has(+ .application-actions){}.application-card:has(.status-incomplete) .progress-ring,.application-card:has(.status-needs_correction) .progress-ring{background:radial-gradient(circle,#fff 57%,transparent 59%),conic-gradient(#e09a18 calc(var(--progress)*1%),#eee6d8 0)}
@media(max-width:700px){.application-problem{margin:0 14px}.problem-comment-card,.application-problem{padding:13px}.optional-file-note{align-items:flex-start}.review-incomplete{padding:12px}}
