:root{--navy:#071257;--blue:#1646B8;--gold:#D6A73A;--ink:#111827;--muted:#667085;--line:#DCE3EC;--soft:#F4F7FB;--white:#fff;--ok:#176B42;--bad:#922828}*{box-sizing:border-box}html{background:var(--soft)}body{margin:0;background:radial-gradient(circle at 85% 0,rgba(22,70,184,.09),transparent 32rem),var(--soft);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;min-height:100vh}.student-topbar{min-height:82px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:13px clamp(18px,5vw,58px);position:sticky;top:0;z-index:20}.student-gold-line{height:4px;background:linear-gradient(90deg,var(--gold),#f1d581,var(--gold))}.student-brand{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none;min-width:0}.student-brand img{display:block;width:auto;max-width:180px;max-height:56px;object-fit:contain}.student-brand>strong{font-size:21px}.student-brand-copy{display:grid;gap:2px;border-left:1px solid rgba(255,255,255,.2);padding-left:14px}.student-brand-copy b{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#fff}.student-brand-copy small{font-size:10px;letter-spacing:.06em;color:var(--gold);font-weight:800}.student-topbar nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.student-topbar nav>a,.student-inline-form button{color:#fff;text-decoration:none;border:0;background:transparent;font:inherit;font-size:13px;font-weight:700;padding:9px 10px;border-radius:8px;cursor:pointer}.student-topbar nav>a:hover,.student-inline-form button:hover{background:rgba(255,255,255,.08)}.student-shell{width:min(1080px,calc(100% - 28px));margin:38px auto 58px}.student-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(22px,4vw,36px);box-shadow:0 18px 48px rgba(7,18,87,.075);position:relative;overflow:hidden}.student-card:before{content:"";position:absolute;top:0;left:0;width:72px;height:4px;background:var(--gold)}.student-auth{width:min(640px,100%);margin:0 auto}.student-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--blue);font-weight:900}.student-card h1{font-size:clamp(30px,5vw,44px);line-height:1.06;letter-spacing:-.04em;margin:8px 0 13px;color:var(--navy)}.student-card h2{font-size:22px;color:var(--navy);margin:0 0 10px}.student-lead{color:var(--muted);margin:0 0 24px;font-size:15px}.student-form{display:grid;gap:15px}.student-form label{display:grid;gap:6px;font-size:13px;font-weight:800;color:#344054}.student-form input,.student-form select{width:100%;padding:12px 13px;border:1px solid #CBD5E1;border-radius:10px;background:#fff;color:var(--ink);font:inherit;outline:none}.student-form input:focus,.student-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,70,184,.11)}.student-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:13px}.student-button{display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--blue);color:#fff;text-decoration:none;font:inherit;font-weight:850;border-radius:10px;padding:12px 17px;cursor:pointer;box-shadow:0 9px 24px rgba(22,70,184,.18)}.student-button:hover{filter:brightness(.96)}.student-button.secondary{background:#EEF3FF;color:var(--blue);box-shadow:none}.student-alert{border-radius:11px;padding:12px 14px;margin:0 0 18px;font-size:14px}.student-alert.error{background:#FDEBEC;color:var(--bad)}.student-alert.success{background:#E4F7EB;color:var(--ok)}.student-alert.info{background:#EAF1FF;color:#264D9A}.student-meta{font-size:13px;color:var(--muted)}.student-meta a{color:var(--blue);font-weight:700}.student-dashboard{display:grid;grid-template-columns:1.55fr 1fr;gap:18px}.student-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.student-stat{border:1px solid var(--line);border-radius:14px;padding:15px;background:linear-gradient(180deg,#fff,#fbfcff)}.student-stat span{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.student-stat strong{font-size:17px;color:var(--navy)}.student-list{display:grid;gap:11px;margin:18px 0 0}.student-list div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #EDF0F4;padding-bottom:10px}.student-list span{color:var(--muted)}.student-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:28px clamp(18px,5vw,58px);border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:12px}.student-footer>div:first-child{display:grid;gap:4px}.student-footer strong{color:var(--navy)}.student-footer-links{display:flex;gap:15px;flex-wrap:wrap}.student-footer a{color:var(--blue);font-weight:700;text-decoration:none}.student-inline-form{display:inline}.student-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.student-help{padding:14px;border-radius:12px;background:#F7F9FC;color:var(--muted);font-size:13px;border-left:3px solid var(--gold)}.student-badge{display:inline-block;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:850;background:#E5F5EC;color:var(--ok);text-transform:uppercase;letter-spacing:.06em}.student-brand-context{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.student-brand-context>div{border:1px solid var(--line);border-radius:12px;padding:13px;background:#FBFCFE}.student-brand-context span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;margin-bottom:5px}.student-brand-context strong{color:var(--navy);font-size:14px}.student-mentorship-note{margin:0 0 20px;border:1px solid #E7D8A9;background:#FFFDF5;border-radius:13px;padding:15px 16px;color:#5C502B;font-size:13px}.student-mentorship-note strong{color:var(--navy)}@media(max-width:840px){.student-topbar{align-items:flex-start}.student-brand-copy{display:none}.student-topbar nav>a[href="../"],.student-topbar nav>a[href="../mentorship.php"]{display:none}.student-dashboard{grid-template-columns:1fr}.student-stat-grid{grid-template-columns:1fr}.student-brand-context{grid-template-columns:1fr}}@media(max-width:620px){.student-topbar{min-height:70px;padding:11px 14px}.student-brand img{max-width:145px;max-height:46px}.student-topbar nav{gap:2px}.student-topbar nav>a,.student-inline-form button{font-size:12px;padding:8px}.student-shell{width:min(100% - 20px,1080px);margin-top:24px}.student-card{border-radius:16px;padding:22px 18px}.student-grid-2{grid-template-columns:1fr}.student-footer{padding:24px 18px}}

/* STUDENT MOBILE RIGHT DRAWER v3.3.2 */
.student-menu-button,
.student-nav-close,
.student-nav-head,
.student-nav-overlay{display:none}

@media(max-width:840px){
  body.student-menu-open{overflow:hidden}

  .student-topbar{
    align-items:center;
    min-height:74px;
    padding:10px 15px;
    gap:14px;
  }

  .student-brand{
    position:relative;
    z-index:21;
    flex:1 1 auto;
    max-width:calc(100% - 60px);
  }

  .student-brand img{
    max-width:145px;
    max-height:48px;
  }

  .student-brand-copy{display:none}

  .student-menu-button{
    display:inline-flex;
    width:44px;
    height:44px;
    flex:0 0 44px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:11px;
    background:rgba(255,255,255,.08);
    color:#fff;
    cursor:pointer;
    position:relative;
    z-index:61;
    -webkit-tap-highlight-color:transparent;
  }

  .student-menu-button span{
    display:block;
    width:20px;
    height:2px;
    border-radius:999px;
    background:#fff;
    transition:transform .22s ease,opacity .22s ease;
  }

  .student-menu-button.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .student-menu-button.open span:nth-child(2){opacity:0}
  .student-menu-button.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  .student-nav-overlay{
    display:block;
    position:fixed;
    inset:0;
    z-index:50;
    border:0;
    margin:0;
    padding:0;
    background:rgba(3,10,35,.56);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .25s ease,visibility .25s ease;
  }

  .student-nav-overlay.open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  .student-topbar .student-portal-nav{
    display:flex;
    position:fixed;
    top:0;
    right:0;
    z-index:60;
    width:min(86vw,340px);
    height:100vh;
    height:100dvh;
    padding:18px 18px 28px;
    background:linear-gradient(180deg,#071257 0%,#081848 100%);
    box-shadow:-20px 0 55px rgba(0,0,0,.28);
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:6px;
    flex-wrap:nowrap;
    overflow-y:auto;
    transform:translateX(104%);
    visibility:hidden;
    transition:transform .28s cubic-bezier(.2,.8,.2,1),visibility .28s ease;
  }

  .student-topbar .student-portal-nav.open{
    transform:translateX(0);
    visibility:visible;
  }

  .student-nav-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    min-height:58px;
    margin:0 0 14px;
    padding:0 0 15px;
    border-bottom:1px solid rgba(255,255,255,.14);
  }

  .student-nav-head>div{
    display:grid;
    gap:2px;
  }

  .student-nav-head strong{
    color:#fff;
    font-size:15px;
  }

  .student-nav-head small{
    color:#D6A73A;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
  }

  .student-nav-close{
    display:inline-flex;
    width:40px;
    height:40px;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.18);
    border-radius:10px;
    background:rgba(255,255,255,.08);
    color:#fff;
    font-size:27px;
    line-height:1;
    cursor:pointer;
  }

  .student-topbar .student-portal-nav>a,
  .student-topbar .student-portal-nav .student-inline-form button{
    display:flex;
    width:100%;
    min-height:46px;
    align-items:center;
    justify-content:flex-start;
    padding:11px 13px;
    border-radius:10px;
    color:#fff;
    background:transparent;
    font-size:14px;
    font-weight:750;
    text-align:left;
  }

  .student-topbar .student-portal-nav>a[href="../"],
  .student-topbar .student-portal-nav>a[href="../mentorship.php"]{
    display:flex;
  }

  .student-topbar .student-portal-nav>a:hover,
  .student-topbar .student-portal-nav>a:focus-visible,
  .student-topbar .student-portal-nav .student-inline-form button:hover,
  .student-topbar .student-portal-nav .student-inline-form button:focus-visible{
    background:rgba(255,255,255,.10);
    outline:none;
  }

  .student-topbar .student-portal-nav>a:active,
  .student-topbar .student-portal-nav .student-inline-form button:active{
    background:rgba(214,167,58,.18);
  }

  .student-topbar .student-portal-nav .student-inline-form{
    display:block;
    width:100%;
    margin-top:8px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.14);
  }

  .student-topbar .student-portal-nav .student-inline-form button{
    color:#ffd9d9;
  }

  .student-shell{
    width:min(100% - 20px,1080px);
    margin-top:24px;
  }
}

@media(max-width:420px){
  .student-topbar .student-portal-nav{
    width:min(90vw,330px);
  }
}
