/* Institutional navigation, independent from examination and monitoring scripts. */
.platform-nav{display:flex;flex-wrap:wrap;gap:18px 24px;background:#fff;border:1px solid #dce6df;border-top:3px solid #015428;border-radius:12px;padding:18px 20px;margin-bottom:16px;box-shadow:0 3px 12px #142c1b05}.platform-nav-group{display:flex;flex-direction:column;gap:7px}.platform-nav-caption{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#65736b}.platform-nav-links{display:flex;flex-wrap:wrap;gap:5px}.platform-nav-links a{display:block;padding:8px 11px;border-radius:7px;color:#36463d;font-size:14px;font-weight:600;line-height:1.3}.platform-nav-links a:hover{background:#f0f6f2;color:#015428}.platform-nav-links a.is-active{background:#015428;color:#fff}.platform-breadcrumb{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 2px 20px;margin-bottom:8px;border-bottom:1px solid #dce6df}.platform-breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;margin:0;padding:0;font-size:13px}.platform-breadcrumb li{display:flex;align-items:center;overflow-wrap:anywhere}.platform-breadcrumb li+li:before{content:'›';padding:0 10px;color:#93a397}.platform-breadcrumb li[aria-current=page]{color:#36463d;font-weight:600}.platform-role{background:#e7f0ea;color:#015428;border:1px solid #cddfd3;border-radius:20px;padding:4px 12px;font-size:12px;white-space:nowrap}body.app-wide>header{border-top:4px solid #015428;border-bottom:1px solid #dce6df;background:white}.app-wide .header-user{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.app-wide .header-user>span{font-size:12px;color:#65736b}.app-wide .section-heading,.app-wide .heading{gap:16px;flex-wrap:wrap}.app-wide h1{font-size:clamp(25px,3vw,34px);letter-spacing:-.6px}.app-wide main>footer{border-top:1px solid #dce6df;margin-top:36px;padding-top:20px}
@media(max-width:700px){.platform-nav{gap:14px;padding:14px}.platform-nav-group{width:100%}.platform-nav-links a{font-size:13px;padding:8px 10px}.platform-breadcrumb{align-items:flex-start}.platform-role{display:none}.app-wide .brand span{font-size:10px;letter-spacing:.5px}.app-wide .header-user{justify-content:flex-end}.platform-breadcrumb ol{font-size:12px}}

.platform-nav .platform-nav-links a[aria-current="page"],.platform-nav .platform-nav-links a[aria-current="page"]:hover{background:#015428;color:#fff;box-shadow:inset 0 -3px 0 #b83c32}

/* Compact profile: photograph and two-line identity. */
.app-wide .header-user{gap:20px;flex-wrap:nowrap}.header-profile{display:flex;align-items:center;gap:12px;min-width:0;color:#182238;padding:6px 8px;border-radius:9px}.header-profile:hover{background:#f0f6f2}.header-profile-avatar{width:42px;height:42px;object-fit:cover;border-radius:12px;flex-shrink:0}.header-profile-initials{display:grid;place-items:center;background:#e5f0e8;color:#015428;font-weight:700;font-size:15px;border:1px solid #cddfd3}.header-profile-info{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.35}.header-profile-info strong{font-size:14px;font-weight:700}.header-profile-info small{font-size:12px;color:#748197}.app-wide .header-user form{margin:0}.app-wide .header-user .text-button{font-size:13px;padding:8px 10px}
@media(max-width:700px){.app-wide .header-user{width:100%;justify-content:space-between;gap:12px}.header-profile-info strong{font-size:13px;overflow-wrap:anywhere}.header-profile-avatar{width:38px;height:38px}.header-profile{padding-left:0}}

/* Left navigation with independent scrolling and persistent active item. */
.app-wide main.platform-shell{display:grid;grid-template-columns:246px minmax(0,1fr);gap:28px;align-items:start;padding:24px clamp(16px,2vw,40px)}
.platform-sidebar{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow-y:auto;display:flex;flex-direction:column;flex-wrap:nowrap;gap:20px;width:100%;margin:0;padding:20px 14px;border-top:3px solid #015428;box-shadow:none}
.platform-sidebar .platform-nav-group{width:100%;gap:8px}.platform-sidebar .platform-nav-caption{color:#263e30;font-size:12px;font-weight:800;letter-spacing:.04em;padding:0 10px}.platform-sidebar .platform-nav-links{display:flex;flex-direction:column;gap:4px}.platform-sidebar .platform-nav-links a{font-weight:400;font-size:14px;padding:11px 12px;line-height:1.4;border-radius:7px}.platform-sidebar .platform-nav-links a[aria-current="page"]{font-weight:700;background:#015428;color:#fff;box-shadow:inset 3px 0 0 #b83c32}.platform-content{min-width:0}.platform-content>.platform-breadcrumb{padding-top:0}.platform-content>footer{margin-top:36px}.platform-sidebar a:focus-visible{outline-offset:-2px}
@media(max-width:900px){.app-wide main.platform-shell{grid-template-columns:210px minmax(0,1fr);gap:20px}.platform-sidebar{padding:16px 10px}.platform-sidebar .platform-nav-links a{font-size:13px}}
@media(max-width:700px){.app-wide main.platform-shell{display:block;padding:20px 16px}.platform-sidebar{position:static;max-height:none;margin-bottom:20px;gap:14px}.platform-sidebar .platform-nav-links{flex-direction:row;flex-wrap:wrap}.platform-sidebar .platform-nav-links a{padding:8px 10px}.platform-sidebar .platform-nav-caption{font-size:11px}.platform-content>.platform-breadcrumb{padding-top:4px}}

.platform-sidebar{min-height:calc(100vh - 170px)}.platform-sidebar-bottom{margin-top:auto;padding-top:18px;border-top:1px solid #dce6df}.platform-sidebar-bottom form{margin:0;display:block}.platform-sidebar-bottom .platform-logout{width:100%;display:flex;justify-content:center;background:#fceeee;color:#ad302b;border:1px solid #f5d7d5;border-radius:8px;font-size:14px;font-weight:600;padding:11px 12px}.platform-sidebar-bottom .platform-logout:hover{background:#f9dfdc;border-color:#e9b5af}.platform-sidebar-bottom .platform-logout:focus-visible{outline:3px solid #b83c32;outline-offset:2px}@media(max-width:700px){.platform-sidebar{min-height:0}.platform-sidebar-bottom{margin-top:4px}}

/* Fixed desktop navigation; only the menu scrolls internally. */
@media(min-width:701px){
 body.app-wide>header{position:sticky;top:0;z-index:100;background:#fff}
 .app-wide main.platform-shell{--sidebar-width:246px;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
 .platform-shell>.platform-sidebar{position:fixed;top:calc(var(--platform-header-height,120px) + 24px);left:clamp(16px,2vw,40px);width:var(--sidebar-width);height:calc(100dvh - var(--platform-header-height,120px) - 48px);min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;z-index:90}
 .platform-shell>.platform-content{grid-column:2}
}
@media(min-width:701px) and (max-width:900px){.app-wide main.platform-shell{--sidebar-width:210px}}
