*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#172337;line-height:1.65}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}.top{position:fixed;top:0;left:0;right:0;z-index:100;background:#031b3b;color:#d9e4f2;font-size:13px}.top .wrap{height:38px;display:flex;justify-content:space-between;align-items:center}.top a:hover{color:#f5c94b}header{position:fixed;top:38px;left:0;right:0;z-index:99;background:#fff;border-bottom:1px solid #e7ebf0;box-shadow:0 2px 12px #031b3b10}.navrow{min-height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain}.brand b{display:block;color:#062957;font:700 20px Georgia,serif;letter-spacing:1px}.brand small{display:block;color:#777;font-size:9px;letter-spacing:1.3px;text-transform:uppercase}.navrow nav{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:bold}.navrow nav a{padding:9px 0}.navrow nav a:hover{color:#b57d00}.navrow .cta{background:#e9ad19;color:#031b3b;padding:11px 18px;border-radius:4px}#menu{display:none;border:0;background:none;font-size:28px;color:#062957}main{padding-top:120px}.hero{background:linear-gradient(90deg,rgba(3,27,59,.98),rgba(3,27,59,.84));color:#fff}.hero-grid{min-height:610px;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.gold{color:#e9ad19;font-weight:800;font-size:12px;letter-spacing:2.2px;text-transform:uppercase}.hero h1{font:700 clamp(44px,6vw,75px)/1.05 Georgia,serif;margin:12px 0}.hero h1 em{color:#e9ad19;font-style:normal}.lead{font-size:18px;color:#d5e0ee;max-width:680px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.btn{display:inline-block;padding:13px 22px;border-radius:4px;font-weight:800}.goldbtn{background:#e9ad19;color:#031b3b}.outline{border:1px solid #fff;color:#fff}.whitebtn{background:#fff;color:#062957;margin-left:8px}.note{color:#bdccdd;font-size:13px}.hero-card{padding:35px;background:#ffffff10;border:1px solid #ffffff25;border-radius:18px}.hero-card img{width:155px;background:#fff;padding:12px;border-radius:10px}.hero-card h3{font:700 25px Georgia,serif}.hero-card p{color:#cfdaea}.stats{background:#e9ad19;color:#031b3b}.statsgrid{display:grid;grid-template-columns:repeat(4,1fr)}.statsgrid div{padding:22px 15px;display:flex;align-items:center;gap:4px;border-right:1px solid #031b3b22;font-size:12px;font-weight:bold;text-transform:uppercase}.statsgrid b{font:700 27px Georgia,serif;margin-right:12px}.section{padding:90px 0}.light{background:#f5f7fa}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.logo-panel{padding:55px;background:linear-gradient(145deg,#edf2f8,#fff);border:1px solid #e2e7ee;border-radius:18px;box-shadow:0 18px 50px #031b3b14}.logo-panel img{max-width:430px;margin:auto}.section h2,.heading h2,.recognition h2,.admissions h2,.contact h2{font:700 clamp(32px,4vw,48px)/1.12 Georgia,serif;color:#062957;margin:10px 0 20px}.split p,.heading>p:last-child,.contact>div>p{color:#667085}.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;font-size:14px;font-weight:bold}.checks span:first-letter{color:#e9ad19}.heading{text-align:left;max-width:720px;margin:0 0 45px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cards article{background:#fff;padding:30px;border:1px solid #e1e6ed;border-radius:14px;position:relative;min-height:260px;transition:.25s}.cards article:hover{transform:translateY(-5px);box-shadow:0 18px 45px #031b3b12}.cards i{position:absolute;right:18px;top:10px;font:700 40px Georgia,serif;color:#e8edf3}.cards strong{display:grid;place-items:center;width:50px;height:50px;background:#062957;color:#e9ad19;border-radius:7px}.cards h3{font:700 21px Georgia,serif;color:#062957}.cards p{font-size:14px;color:#667085}.cards a{font-weight:bold;color:#062957;font-size:13px}.recognition{padding:30px 0 0}.rec{background:#062957;color:#fff;padding:42px 52px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:30px}.rec h2{color:#fff}.rec p:not(.gold){color:#cad6e5;max-width:750px}.rec>b{font:900 52px Georgia,serif;color:#e9ad19;border:2px solid #e9ad19;padding:12px 22px;border-radius:9px}.why{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.why div{background:#f5f7fa;border-top:4px solid #e9ad19;padding:25px;min-height:205px}.why b{color:#e9ad19}.why h3{font:700 20px Georgia,serif;color:#062957}.why p{font-size:14px;color:#667085}.admissions{background:#031b3b;color:#fff;padding:70px 0}.adm{display:flex;justify-content:space-between;align-items:center;gap:30px}.adm h2{color:#fff}.adm p:not(.gold){color:#cbd7e6}.contact{display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.details{display:grid;gap:15px;margin-top:25px}.details>a,.details>span{display:flex;gap:15px;align-items:center;color:#062957;font-size:18px}.details span span{font-size:12px;color:#77808d}.details b{font-size:15px}.contactcard{background:#fff;padding:35px;text-align:left;border-radius:18px;box-shadow:0 18px 50px #031b3b12}.contactcard img{width:135px;margin:0}.contactcard h3{font:700 24px Georgia,serif;color:#062957}footer{background:#02152e;color:#b8c7d9;padding:35px 0}.foot{display:flex;align-items:center;justify-content:space-between;gap:20px}.foot .brand img{width:55px;background:#fff;border-radius:8px}.foot p{font-size:12px}
.student-login-link {
  font-weight: 700;
}
.portalbtn {
  background: #ffffff;
  color: #092f57;
  border: 1px solid rgba(9,47,87,.18);
}
.portalbtn:hover {
  transform: translateY(-1px);
}

@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-card{display:none}.cards{grid-template-columns:1fr 1fr}.why{grid-template-columns:1fr 1fr}.split,.contact{grid-template-columns:1fr}}@media(max-width:700px){main{padding-top:120px}#menu{display:block}.navrow nav{display:none;position:absolute;left:18px;right:18px;top:82px;background:#fff;padding:15px;box-shadow:0 15px 40px #0002;flex-direction:column;align-items:stretch;gap:5px}.navrow nav.open{display:flex}.top .wrap{font-size:11px;gap:10px}.statsgrid{grid-template-columns:1fr 1fr}.statsgrid div{border-bottom:1px solid #031b3b22}.cards,.why{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.rec,.adm,.foot{flex-direction:column;align-items:flex-start}.section{padding:65px 0}.hero-grid{padding:65px 0}.foot{text-align:left}.foot .brand{margin:0}}
.cardapply{display:inline-block;margin-top:18px;color:#e9ad19;font-weight:800;font-size:14px}.whygrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.whygrid>div{background:#f5f7fa;border-top:4px solid #e9ad19;padding:28px;min-height:190px}.whygrid b{color:#e9ad19;font:700 14px Arial}.whygrid h3{font:700 22px Georgia,serif;color:#062957}.whygrid p{color:#667085;font-size:14px}.applysection{background:#fff}.applysection .heading{text-align:center;margin-left:auto;margin-right:auto}.applysection form{max-width:980px;margin:auto}.formbox{background:#f5f7fa;border:1px solid #e1e6ed;border-radius:18px;padding:32px;box-shadow:0 18px 50px #031b3b0d}.formintro{border-bottom:1px solid #dde3eb;padding-bottom:20px;margin-bottom:24px}.formintro span{font-size:11px;font-weight:900;letter-spacing:2px;color:#b57d00}.formintro h3{margin:4px 0;color:#062957;font:700 28px Georgia,serif}.formintro p{margin:0;color:#667085;font-size:13px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.formgrid label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:800;color:#26364d}.formgrid .full{grid-column:1/-1}.formgrid input,.formgrid select,.formgrid textarea{width:100%;border:1px solid #d7dee8;background:#fff;border-radius:7px;padding:13px 14px;font:inherit;font-size:14px;color:#172337;outline:none}.formgrid textarea{resize:vertical}.formgrid input:focus,.formgrid select:focus,.formgrid textarea:focus{border-color:#e9ad19;box-shadow:0 0 0 3px #e9ad1920}.consent{display:flex;gap:10px;align-items:flex-start;margin:22px 0;color:#667085;font-size:12px;line-height:1.5}.consent input{margin-top:3px;accent-color:#e9ad19}.submit{border:0;cursor:pointer;font:800 14px Arial}.submit:disabled{opacity:.7;cursor:wait}.privacy{font-size:12px;color:#7b8490;margin:15px 0 0}.honeypot{display:none!important}.topin{height:38px}.contactcard img{object-fit:contain}.contactcard p{color:#667085}@media(max-width:900px){.whygrid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.formgrid{grid-template-columns:1fr}.formgrid .full{grid-column:auto}.formbox{padding:22px}.whygrid{grid-template-columns:1fr}.whitebtn{margin-left:0;margin-top:8px}.adm .btn{margin-bottom:8px}.hero-card{display:block}.hero-grid{gap:35px}.hero-card img{width:125px}}


/* =========================================================
   UNIFY COLLEGE — STABILITY / MOBILE POLISH
   Keeps the existing design; fixes header, image alignment,
   accidental zoom and horizontal layout movement.
   ========================================================= */

html{
  scroll-behavior:auto;
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body{
  min-width:0;
  width:100%;
  overflow-x:hidden;
  overscroll-behavior-x:none;
}

img{
  max-width:100%;
}

header,
.top{
  width:100%;
  max-width:100vw;
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

main{
  width:100%;
  overflow:hidden;
}

section[id]{
  scroll-margin-top:125px;
}

/* Make the middle/About logo sit exactly inside its panel */
.logo-panel{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.logo-panel img{
  display:block;
  width:min(100%,430px);
  max-width:430px;
  height:auto;
  object-fit:contain;
  margin:0 auto;
}

/* Keep the hero logo stable too */
.hero-card img{
  display:block;
  height:auto;
  object-fit:contain;
}

/* Prevent accidental horizontal scaling/overflow from controls */
input,
select,
textarea,
button{
  max-width:100%;
}

button,
a,
input,
select,
textarea{
  touch-action:manipulation;
}

/* Mobile: one stable header, no jumping navigation */
@media(max-width:700px){
  .top{
    position:fixed;
    height:38px;
  }

  header{
    position:fixed;
    top:38px;
    height:82px;
  }

  .navrow{
    height:82px;
    min-height:82px;
  }

  main{
    padding-top:120px;
  }

  .navrow nav{
    top:82px;
    max-height:calc(100vh - 130px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }

  .brand{
    min-width:0;
  }

  .brand img{
    flex:0 0 50px;
    width:50px;
    height:50px;
  }

  .brand b{
    font-size:17px;
    white-space:nowrap;
  }

  .brand small{
    font-size:8px;
  }

  .hero-grid{
    min-height:auto;
  }

  .logo-panel{
    min-height:260px;
    padding:30px;
  }

  .logo-panel img{
    width:min(100%,330px);
  }

  .formgrid input,
  .formgrid select,
  .formgrid textarea{
    font-size:16px;
  }
}

@media(max-width:390px){
  .wrap{
    width:calc(100% - 28px);
  }

  .top .wrap{
    font-size:10px;
  }

  .top .wrap > span:last-child{
    white-space:nowrap;
  }

  .brand{
    gap:7px;
  }

  .brand img{
    flex-basis:46px;
    width:46px;
    height:46px;
  }

  .brand b{
    font-size:15px;
  }

  .brand small{
    font-size:7px;
    letter-spacing:1px;
  }

  #menu{
    font-size:26px;
    padding:4px;
  }
}

/* ========================================
   APPLICATION PAYMENT PROOF
   ======================================== */
.paymentbox {
  margin-top: 22px;
}
.paymentnotice {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin: 0 0 22px;
  padding: 17px 18px;
  border: 1px solid rgba(212,175,55,.38);
  border-left: 4px solid #d4af37;
  border-radius: 12px;
  background: rgba(212,175,55,.07);
}
.paymentnotice strong {
  color: #d4af37;
  white-space: nowrap;
}
.paymentnotice span {
  color: #5d6470;
  line-height: 1.55;
}
.filefield input[type="file"] {
  padding: 12px;
  background: #fff;
  cursor: pointer;
}
.filefield small {
  display: block;
  margin-top: 8px;
  color: #7a808a;
  font-size: .82rem;
  line-height: 1.4;
}
.paymentbox .privacy {
  margin-top: 14px;
}
@media (max-width:700px) {
  .paymentnotice {
    display: block;
  }
  .paymentnotice strong {
    display: block;
    margin-bottom: 5px;
  }
}
/* =========================================================
   UNIFY COLLEGE — STUDENT & ADMIN PORTAL
   ========================================================= */
.portal-page{background:#f5f7fa;color:#172337;min-height:100vh}.portal-shell{min-height:100vh;display:flex;flex-direction:column}.portal-header{height:92px;background:#fff;border-bottom:1px solid #e3e8ef;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100% - 1160px)/2));position:sticky;top:0;z-index:10}.portal-header .brand img{width:56px;height:56px}.portal-back{font-weight:800;color:#062957;font-size:14px}.portal-main{flex:1;width:min(1160px,calc(100% - 36px));margin:auto;padding:55px 0}.portal-login{min-height:65vh;display:grid;place-items:center}.portal-login-card{width:min(500px,100%);background:#fff;border:1px solid #e1e6ed;border-radius:18px;padding:38px;box-shadow:0 20px 60px #031b3b12}.portal-login-card h1{font:700 44px/1.1 Georgia,serif;color:#062957;margin:8px 0 12px}.portal-login-card>p:not(.gold){color:#667085;margin-bottom:28px}.portal-login-card form{display:grid;gap:17px}.portal-login-card label,.admin-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:800;color:#26364d}.portal-login-card input,.admin-form input,.admin-form select{border:1px solid #d7dee8;background:#fff;border-radius:7px;padding:13px 14px;font:inherit;font-size:14px;color:#172337;outline:none}.portal-login-card input:focus,.admin-form input:focus,.admin-form select:focus{border-color:#e9ad19;box-shadow:0 0 0 3px #e9ad1920}.portal-message{min-height:20px;color:#a33b2b;font-size:13px;margin:0}.portal-help{margin-top:24px;padding-top:20px;border-top:1px solid #e3e8ef;display:grid;gap:4px;font-size:12px;color:#77808d}.portal-help strong{color:#062957}.dashboard-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.dashboard-top h1{font:700 42px/1.1 Georgia,serif;color:#062957;margin:6px 0}.dashboard-top p:not(.gold){color:#667085;margin:0}.outline-dark{border:1px solid #062957;background:#fff;color:#062957}.dashboard-grid{display:grid;grid-template-columns:310px 1fr;gap:22px}.profile-card,.results-card,.admin-panel{background:#fff;border:1px solid #e1e6ed;border-radius:18px;box-shadow:0 18px 50px #031b3b0b}.profile-card{padding:30px}.avatar{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#062957;color:#e9ad19;font:700 24px Georgia,serif;margin-bottom:20px}.profile-card h2{font:700 25px Georgia,serif;color:#062957;margin:0 0 3px}.profile-card>p{color:#7b8490;font-size:13px}.profile-list{display:grid;gap:15px;margin-top:28px;padding-top:22px;border-top:1px solid #e3e8ef}.profile-list span{display:grid;gap:2px}.profile-list small,.summary-row small{color:#7b8490;font-size:11px;text-transform:uppercase;letter-spacing:1px}.profile-list b{color:#26364d;font-size:14px}.results-card{padding:30px}.results-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.results-heading h2,.panel-head h2{font:700 30px Georgia,serif;color:#062957;margin:5px 0}.status-pill,.mini-status{display:inline-block;padding:6px 11px;border-radius:99px;background:#e8f5eb;color:#26733b;font-size:11px;font-weight:800}.summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.summary-row>div{background:#f5f7fa;border-radius:10px;padding:16px}.summary-row strong{display:block;font:700 24px Georgia,serif;color:#062957;margin-top:3px}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:620px}.table-wrap th,.table-wrap td{text-align:left;padding:14px 12px;border-bottom:1px solid #e3e8ef;font-size:13px}.table-wrap th{color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.7px;background:#f9fafb}.portal-footer{background:#02152e;color:#b8c7d9;padding:25px;text-align:center;font-size:12px}.admin-tabs{display:flex;gap:4px;margin-bottom:18px}.admin-tabs button{border:1px solid #d7dee8;background:#fff;color:#062957;padding:11px 18px;border-radius:7px;font-weight:800;cursor:pointer}.admin-tabs button.active{background:#062957;color:#fff}.admin-panel{padding:28px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.panel-head p{color:#667085;margin:0}.admin-form{padding:20px;background:#f5f7fa;border:1px solid #e1e6ed;border-radius:12px;margin-bottom:22px}.admin-form .formgrid{margin-bottom:18px}.admin-form .full{grid-column:1/-1}
@media(max-width:800px){.portal-header{padding:0 18px}.portal-header .brand small{font-size:8px}.portal-back{font-size:12px}.dashboard-grid{grid-template-columns:1fr}.portal-main{padding:35px 0}.dashboard-top{align-items:flex-start}.dashboard-top h1{font-size:34px}.summary-row{grid-template-columns:1fr 1fr}.panel-head{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.portal-header .brand img{width:48px;height:48px}.portal-header .brand b{font-size:16px}.portal-back{font-size:11px}.portal-login-card,.results-card,.profile-card,.admin-panel{padding:22px}.portal-login-card h1{font-size:36px}.summary-row{grid-template-columns:1fr}.dashboard-top{flex-direction:column}.admin-form .formgrid{grid-template-columns:1fr}.admin-form .full{grid-column:auto}}

/* First administrator setup */
.setup-card { width:min(560px,100%); }
.setup-warning { display:flex; gap:12px; align-items:flex-start; margin:0 0 24px; padding:14px 15px; border:1px solid rgba(212,175,55,.38); border-left:4px solid #d4af37; border-radius:10px; background:#fffaf0; color:#667085; font-size:13px; line-height:1.5; }
.setup-warning strong { color:#062957; white-space:nowrap; }
.setup-card form { display:grid; gap:16px; }
.setup-card .portal-help a { color:#062957; font-weight:800; text-decoration:none; }

/* LocalStorage test additions — existing design preserved */
.local-test-badge{display:inline-block;margin-top:8px;padding:6px 9px;border-radius:999px;background:#f5f0df;color:#7a5b00;font-size:.78rem;font-weight:800;letter-spacing:.02em}
.admin-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.danger-btn{border:1px solid #a84c43;background:#fff;color:#8b3028}
.table-action{border:0;background:transparent;text-decoration:underline;font-weight:700;cursor:pointer}
.password-field{position:relative;display:flex;align-items:stretch}
.password-field input{flex:1;min-width:0;padding-right:74px!important}
.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#1d3557;font-weight:700;padding:8px 6px;cursor:pointer}
.password-toggle:hover{text-decoration:underline}
.form-note{font-size:.88rem;line-height:1.5;margin:0 0 12px;color:#667085}
@media (max-width:700px){.admin-actions{width:100%}.admin-actions .btn{flex:1}.admin-results-table{margin-top:18px}}

/* Authentication views: once logged in/created, the login/setup card must disappear. */
[hidden] {
    display: none !important;
}
