.user-programme-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:36px 0 28px}
.user-programme-heading h1{font-size:36px;line-height:1.2;letter-spacing:-.025em;margin:0 0 10px;overflow-wrap:anywhere}
.user-programme-heading .hero-lead{font-size:15px;margin:0;max-width:68ch}
.user-programme-heading .btn-primary{flex-shrink:0;margin-top:4px}
.programmes-page #myProgrammeContent{max-width:none}
.programmes-page .composition-covered{--composition-color:#38945c}
.programmes-page .composition-priority{--composition-color:#e4a839}
.programmes-page .composition-both{--composition-color:#8269a9}
.programmes-page .composition-not-important{--composition-color:#71858c}
.programmes-page .composition-not-assessed{--composition-color:#dce4df}
.programmes-page .admin-tabs a{display:inline-flex;align-items:center;min-height:44px;border:1px solid transparent;border-radius:999px;padding:9px 16px;color:var(--muted);font-size:13px;font-weight:600}
.programmes-page .admin-tabs a[aria-current=page]{border-color:var(--line);background:var(--mint2);color:var(--ink)}
.user-programme-section{padding-top:0;padding-bottom:56px}
.user-programme-list{border-top:1px solid var(--line)}
.user-programme-row{display:grid;grid-template-columns:minmax(0,1fr) 140px auto;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.user-programme-identity h3{font-size:18px;line-height:1.4;margin:0 0 8px;overflow-wrap:anywhere}
.user-programme-identity .programme-context{margin:0 0 10px;font-size:12px}
.user-programme-state{text-transform:capitalize;color:var(--muted);font-size:12px}
.user-programme-assessments{display:flex;flex-wrap:wrap;gap:12px 28px;margin:16px 0 0}
.user-programme-assessments>div{display:grid;gap:6px;min-width:155px}
.user-programme-assessments dt{color:var(--muted);font-size:12px;font-weight:600}
.user-programme-assessments dd{justify-self:start;margin:0;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.4}
.user-programme-assessments .is-available{background:var(--mint2);color:var(--green-ink)}
.user-programme-assessments .is-pending{background:#f0f2ed;color:var(--muted)}
.user-programme-row.is-syllabus-only{grid-template-columns:minmax(0,1fr) auto}
.programmes-page #myProgrammeContent>.user-programme-assessments{margin:0 0 24px}
.user-programme-progress{font-size:12px;font-variant-numeric:tabular-nums;display:grid;gap:8px}
.user-programme-progress progress{width:100%;height:6px;accent-color:var(--teal)}
.user-programme-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.user-programme-actions .btn-primary,.user-programme-actions .btn-secondary{min-height:44px;font-size:12px;padding:11px 16px}
.user-programme-search{display:grid;gap:8px;max-width:480px;margin-bottom:16px}
.user-programme-search label{font-size:13px;font-weight:600}
.user-programme-search input{padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:14px;min-width:0}
.user-programme-count{color:var(--muted);font-size:12px;margin:0 0 12px}
.user-programme-empty{padding:32px 0;max-width:65ch}
.user-programme-empty h3{font-size:22px;margin:0 0 10px}
.user-programme-empty p{font-size:14px;margin:0;line-height:1.7}
.user-programme-back{display:inline-block;color:var(--teal);font-size:13px;font-weight:600;margin-bottom:24px;text-decoration:underline;text-underline-offset:4px}
.user-programme-view-title{font-size:24px;margin:28px 0 18px;font-weight:600}
.account-programmes-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px 0 20px}
.account-programmes-head h2{font-size:26px;margin:0 0 8px}
.account-programmes-head p{font-size:13px;color:var(--muted);margin:0}
.account-page #accountPanel{display:block}
.account-page #accountPanel[hidden]{display:none}
.account-page .account-programme-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:28px}
.account-page .account-programme-bar #logoutButton{width:auto;margin-left:auto}
.account-page .account-programme-bar small{font-size:11px}
.account-page.is-signed-in .hero{padding:32px 0}
.account-page.is-signed-in .hero h1{font-size:36px;line-height:1.2}
.account-page.is-signed-in .hero .breadcrumb{margin-bottom:20px}
.account-page .account-security{margin-top:40px;border-top:1px solid var(--line);padding-top:20px;max-width:760px}
.account-security>summary{font-weight:600;font-size:18px;cursor:pointer;min-height:44px;padding:10px 0}
.account-security .account-password{padding:20px 0}
.account-password h2{font-size:24px;margin:0 0 10px}
.account-password>p{font-size:14px;line-height:1.6;margin:0 0 20px}
.account-security .assessment-nav{justify-content:flex-start}
.user-programme-search input:focus-visible,.user-programme-row a:focus-visible,.account-security>summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:1100px){.user-programme-row{grid-template-columns:minmax(0,1fr) 140px}.user-programme-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:600px){.user-programme-heading{display:block;padding:26px 0 24px}.user-programme-heading h1{font-size:28px}.user-programme-heading .btn-primary{margin-top:20px}.user-programme-row{grid-template-columns:minmax(0,1fr);gap:14px;padding:22px 0}.user-programme-progress{max-width:220px}.user-programme-actions{grid-column:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.user-programme-actions a{text-align:center}.account-programmes-head{display:block}.account-programmes-head .btn-primary{margin-top:16px}.user-programme-heading .programme-context{display:flex;flex-wrap:wrap;gap:8px}}
@media(max-width:600px){.account-page .account-programme-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;text-align:left}.account-page .account-programme-bar #logoutButton{grid-column:1/-1;justify-self:start;margin:0}.account-page.is-signed-in .hero h1{font-size:28px}}
@media(max-width:600px){.user-programme-row.is-syllabus-only{grid-template-columns:minmax(0,1fr)}.user-programme-row.is-syllabus-only .user-programme-actions{display:flex}.user-programme-assessments{gap:12px 20px}}
