.ph-site-header .ph-header-inner{position:relative;gap:32px;min-height:84px}
.ph-site-header .ph-site-nav{gap:8px;align-items:center;align-self:stretch}
.ph-site-nav>a,.ph-site-nav>button,.ph-board-menu>summary{padding:12px 13px;border-radius:7px;font-size:13px;font-weight:600;color:#53666e;background:transparent;white-space:nowrap;cursor:pointer}
.ph-site-nav>a:hover,.ph-site-nav>button:hover,.ph-board-menu>summary:hover,.ph-board-menu[open]>summary{background:#edf6f3;color:var(--teal)}
.ph-site-nav .active{background:#edf6f3;color:var(--teal)}
.ph-site-nav .active:after{display:none}
.ph-header-actions{display:flex;align-items:center;gap:12px}
.ph-board-menu>summary{display:block;list-style:none}
.ph-board-menu summary::-webkit-details-marker{display:none}
.ph-board-menu summary:focus-visible{outline:3px solid #d6a644;outline-offset:3px}
.ph-board-submenu{position:absolute;top:calc(100% - 8px);right:40px;width:580px;max-width:calc(100vw - 56px);max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:14px;padding:20px;background:white;box-shadow:0 18px 45px #102f3e20}
.ph-submenu-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;font-size:14px}
.ph-submenu-heading>a{font-size:12px;color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.ph-year-list>summary,.ph-class-list>summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;font-weight:700}
.ph-year-list>summary{padding-bottom:12px;border-bottom:1px solid var(--line);font-size:17px}
.ph-year-list>summary>span{color:var(--muted);font-size:11px;font-weight:500}
.ph-year-list>summary:after,.ph-class-list>summary:after{content:'+';margin-left:auto;color:var(--teal);font-size:18px;font-weight:500}
.ph-year-list[open]>summary:after,.ph-class-list[open]>summary:after{content:'−'}
.ph-class-lists{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:14px}
.ph-class-list>summary{font-size:13px;padding:9px 10px;background:#edf6f3;border-radius:6px;color:var(--ink)}
.ph-class-list>summary>span{font-size:10px;font-weight:500;color:var(--teal)}
.ph-class-list ul{list-style:none;margin:7px 0 0;padding:0}
.ph-class-list li>a{display:block;padding:7px 10px;font-size:12px;border-radius:5px;line-height:1.5}
.ph-class-list li>a:hover{background:#edf6f3;color:var(--teal)}
@media(min-width:768px) and (max-width:1199px){.ph-site-header .ph-header-inner{display:grid;grid-template-columns:1fr auto;gap:0 24px;padding-top:14px;padding-bottom:8px}.ph-site-header .ph-brand{grid-column:1;grid-row:1}.ph-header-actions{grid-column:2;grid-row:1}.ph-site-header .ph-site-nav{grid-column:1/-1;grid-row:2;margin:10px 0 0;justify-content:center}.ph-board-submenu{right:28px;top:calc(100% - 3px);max-height:calc(100dvh - 165px)}}
@media(max-width:767px){.ph-site-header .ph-header-inner{min-height:70px;gap:12px}.ph-header-actions{margin-left:auto;gap:8px}.ph-site-header .ph-site-nav{display:none;margin:0}.ph-site-header .ph-site-nav.is-open{display:flex;position:absolute;top:100%;left:0;right:0;align-items:stretch;flex-direction:column;gap:3px;padding:14px 20px;background:white;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #102f3e18;max-height:calc(100dvh - 105px);overflow-y:auto;overscroll-behavior:contain}.ph-site-nav>a,.ph-site-nav>button,.ph-board-menu>summary{text-align:left;padding:12px;font-size:14px}.ph-board-submenu{position:static;max-width:none;width:100%;max-height:none;overflow:visible;margin:6px 0 10px;padding:12px;box-shadow:none;background:#f7faf8}.ph-class-lists{grid-template-columns:1fr;gap:12px}.ph-class-list li>a{padding:9px 10px;font-size:13px}.ph-site-header .ph-menu-button{display:grid;place-items:center;width:40px;height:40px;padding:8px}.ph-site-header .ph-header-converter{margin-left:0}}
@media(max-width:479px){.ph-site-header .ph-header-converter>span{display:none}.ph-site-header .ph-header-converter{width:36px;height:36px;padding:8px;display:grid;place-items:center}.ph-site-header .ph-brand{font-size:23px}.ph-site-header .ph-brand small{font-size:6px;letter-spacing:1px}}
@media(max-height:680px) and (min-width:768px){.ph-board-submenu{max-height:calc(100dvh - 225px)}}
@media(max-width:767px){.ph-site-header .ph-site-nav.is-open{max-height:calc(100dvh - 185px)}}
@media print{.ph-site-header{display:none}}


/* Approved BISEStats logo: retain link text for assistive technology. */
.ph-brand{position:relative!important;width:205px!important;min-width:155px;min-height:53px;background:url('/analytics-brand/logo-colour.png') no-repeat left center!important;background-size:contain!important;display:inline-flex!important;font-size:0!important;flex-shrink:0}
.ph-brand>span,.ph-brand>svg{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ph-brand.footer-brand{width:175px!important;min-height:48px;background-image:url('/analytics-brand/logo-colour.png')!important}
@media(max-width:760px){.ph-brand{width:155px!important;min-height:43px!important}.ph-brand.footer-brand{width:155px!important}}

@media(min-width:1200px){.ph-site-header .ph-header-inner{gap:18px}.ph-site-header .ph-site-nav{gap:2px}.ph-site-nav>a,.ph-board-menu>summary{padding-left:10px;padding-right:10px}}

@media(min-width:768px){.ph-header-inner:has(.ph-nav:not(.ph-site-nav)){flex-wrap:wrap;row-gap:0}.ph-nav:not(.ph-site-nav){flex-wrap:wrap;gap:14px;align-self:center;padding:12px 0}}
