:root{
  --navy:#10233f;--navy-deep:#0a1830;--maroon:#7a1f2b;--gold:#c4a15a;
  --parchment:#f6f2e9;--ink:#1c1c1c;--muted:#5c6470;--line:#e2dccd;
}
.ltusp-wrap{max-width:1180px;margin:0 auto;padding:24px;font-family:Georgia,"Source Serif 4",serif;color:var(--ink)}
.ltusp-card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:26px;margin-bottom:20px}
.ltusp-eyebrow{font-family:Inter,sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin:0 0 4px}
.ltusp-dash-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.ltusp-dash-head h2{font-family:"Cormorant Garamond",Georgia,serif;margin:0;font-size:2rem;color:var(--navy)}
.ltusp-idcard{background:var(--navy);color:#fff;padding:12px 18px;border-radius:6px;text-align:right}
.ltusp-idcard span{display:block;font-family:Inter,sans-serif;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.ltusp-idcard strong{font-size:1.2rem;letter-spacing:.04em}
.ltusp-card h3{font-family:"Cormorant Garamond",Georgia,serif;color:var(--navy);font-size:1.5rem;margin:0 0 12px}
.ltusp-detail{width:100%;border-collapse:collapse}
.ltusp-detail td{padding:9px 0;border-bottom:1px solid var(--line);font-size:.98rem}
.ltusp-detail td:first-child{color:var(--muted);font-family:Inter,sans-serif;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;width:35%}
.ltusp-pill{font-family:Inter,sans-serif;font-size:.74rem;font-weight:600;padding:4px 12px;border-radius:20px;background:var(--parchment)}
.ltusp-pill-active{background:#e3f3e6;color:#1e7a39}
.ltusp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}
.ltusp-tile{background:#fff;border:1px solid var(--line);border-radius:6px;padding:20px;position:relative}
.ltusp-tile h3{font-size:1.3rem;margin-bottom:6px}
.ltusp-tile p{color:var(--muted);font-size:.9rem;margin:0}
.ltusp-soon{display:inline-block;margin-top:12px;font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gold);background:var(--parchment);padding:4px 10px;border-radius:12px}
.ltusp-btn{font-family:Inter,sans-serif;font-weight:600;font-size:.95rem;background:var(--gold);color:var(--navy-deep);border:none;padding:13px 28px;border-radius:3px;cursor:pointer;letter-spacing:.02em;width:100%}
.ltusp-btn:hover{background:#d4b56e}
.ltusp-login{max-width:440px;margin:0 auto}
.ltusp-login-head{text-align:center;margin-bottom:18px}
.ltusp-login-head h2{font-family:"Cormorant Garamond",Georgia,serif;color:var(--navy);margin:0;font-size:1.8rem}
.ltusp-login-head p{color:var(--gold);font-family:Inter,sans-serif;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.ltusp-intro{color:var(--muted);font-size:.94rem;margin-bottom:18px}
.ltusp-field{margin-bottom:16px}
.ltusp-field label{display:block;font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--navy);margin-bottom:6px}
.ltusp-field input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:4px;font-family:Georgia,serif;font-size:1rem;box-sizing:border-box}
.ltusp-field input:focus{outline:2px solid var(--gold);border-color:var(--gold)}
.ltusp-forgot{font-family:Inter,sans-serif;font-size:.82rem;margin-top:10px;text-align:center}
.ltusp-msg{margin-top:14px;font-family:Inter,sans-serif;font-size:.9rem;text-align:center}
.ltusp-msg.error{color:#a02929}
.ltusp-msg.success{color:#1e7a39}
.ltusp-logout{font-family:Inter,sans-serif;font-size:.85rem;margin:0}
@media(max-width:640px){.ltusp-grid{grid-template-columns:1fr}}

/* Fees page */
.ltusp-backlink{font-family:Inter,sans-serif;font-size:.85rem;color:var(--muted);text-decoration:none}
.ltusp-pill-unpaid{background:#fbeaea;color:#a02929}
.ltusp-fee-summary{display:flex;gap:30px}
.ltusp-fee-summary span{display:block;font-family:Inter,sans-serif;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ltusp-fee-summary strong{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.8rem;color:var(--navy)}
.ltusp-fee-table{width:100%;border-collapse:collapse}
.ltusp-fee-table th{text-align:left;font-family:Inter,sans-serif;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:8px 0;border-bottom:2px solid var(--line)}
.ltusp-fee-table td{padding:14px 0;border-bottom:1px solid var(--line);vertical-align:middle}
.ltusp-ngn{font-family:Inter,sans-serif;font-size:.78rem;color:var(--muted)}
.ltusp-optional{font-family:Inter,sans-serif;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--gold);margin-left:6px}
.ltusp-muted{color:var(--muted);font-family:Inter,sans-serif;font-size:.9rem}

/* ---- Left-side dashboard shell ---- */
.ltusp-shell{display:flex;gap:30px;align-items:flex-start;max-width:1180px;margin:0 auto}
.ltusp-side{flex:0 0 270px;position:sticky;top:20px}
.ltusp-side-card{background:var(--navy);color:#fff;border-radius:8px 8px 0 0;padding:18px 16px}
.ltusp-side-name{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.25rem;font-weight:600;line-height:1.2}
.ltusp-side-id{font-family:Inter,sans-serif;font-size:.78rem;letter-spacing:.06em;color:var(--gold);margin-top:3px}
.ltusp-side-prog{font-family:Inter,sans-serif;font-size:.76rem;color:#c9d2e0;margin-top:6px}
.ltusp-menu{display:flex;flex-direction:column;border:1px solid var(--line);border-top:none;border-radius:0 0 8px 8px;overflow:hidden}
.ltusp-menu-link{display:block;padding:13px 16px;font-family:Inter,sans-serif;font-size:.92rem;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--line);background:#fff;transition:background .12s}
.ltusp-menu-link:last-child{border-bottom:none}
.ltusp-menu-link:hover{background:var(--parchment)}
.ltusp-menu-link.is-active{background:var(--parchment);border-left:4px solid var(--gold);font-weight:600;padding-left:12px}
.ltusp-menu-logout{color:var(--maroon)}
.ltusp-main{flex:1;min-width:0}
.ltusp-receipt-link{font-family:Inter,sans-serif;font-size:.82rem;color:var(--navy);text-decoration:underline}
@media(max-width:760px){
  .ltusp-shell{flex-direction:column}
  .ltusp-side{flex:1 1 auto;position:static;width:100%}
}

/* ---- LMS (Learning) ---- */
.ltusp-lms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:14px}
.ltusp-lms-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px;text-decoration:none;transition:border-color .12s,transform .12s}
.ltusp-lms-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.ltusp-lms-code{font-family:Inter,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--gold);text-transform:uppercase}
.ltusp-lms-name{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.2rem;color:var(--navy);line-height:1.2}
.ltusp-lms-meta{font-family:Inter,sans-serif;font-size:.78rem;color:var(--muted);margin-top:4px}
.ltusp-lms-section{border:1px solid var(--line);border-radius:8px;margin-bottom:14px;overflow:hidden}
.ltusp-lms-section-title{margin:0;padding:12px 16px;background:var(--parchment);font-family:"Cormorant Garamond",Georgia,serif;font-size:1.25rem;color:var(--navy)}
.ltusp-lms-lessons{list-style:none;margin:0;padding:6px 0}
.ltusp-lms-lessons li{padding:10px 16px;border-top:1px solid var(--line);font-size:.96rem}
.ltusp-lms-lessons li:first-child{border-top:none}
