/* Shared visual rules, scoped to the public Nodom theme. */
html body.anc-campus.alo-unified{--au-navy:#243859;--au-blue:#2877bd;--au-line:#cedae5;--au-tint:#f4f7fc;--au-radius:12px}
html body.anc-campus.alo-unified .site-header{padding:0!important;background:#fff!important;border-bottom:1px solid var(--au-line)!important}
html body.anc-campus.alo-unified .site-header .header-inner{padding-block:10px!important;gap:12px!important;min-height:0!important}
html body.anc-campus.alo-unified .site-header .brand{padding:7px 12px!important;margin:0!important;border-radius:10px!important;gap:10px!important;min-height:0!important}
html body.anc-campus.alo-unified .site-header .brand img{height:52px!important;width:auto!important;max-height:52px!important;object-fit:contain!important}
html body.anc-campus.alo-unified .site-header .brand strong{font-size:21px!important;line-height:1.5!important}
html body.anc-campus.alo-unified .site-header .brand small{font-size:15px!important;line-height:1.5!important}
html body.anc-campus.alo-unified .site-header :is(.nrm-mobile-account,.anc-basket-link,.menu-toggle){box-sizing:border-box!important;min-height:44px!important;min-width:44px!important;padding:7px 12px!important;font-size:16px!important;border-radius:8px!important;border:1px solid var(--au-line)!important;box-shadow:none!important}
html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading{display:block!important;background:var(--au-tint)!important;border:0!important;border-bottom:1px solid var(--au-line)!important;padding:14px 0!important;margin:0!important;min-height:0!important}
html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading>.container{display:flex!important;flex-direction:column!important;align-items:center!important;gap:7px!important;max-width:1180px!important;width:calc(100% - 32px)!important;padding:0!important;margin:0 auto!important;box-sizing:border-box!important}
html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading .breadcrumbs{display:flex!important;justify-content:center!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;font-size:14px!important;line-height:1.5!important;margin:0!important;color:#607188!important}
html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading .kicker,html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading>.container>p{display:none!important}
html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading h1{display:block!important;font-family:inherit!important;font-size:25px!important;font-weight:700!important;line-height:1.6!important;color:var(--au-navy)!important;text-align:center!important;margin:0!important;padding:0!important;max-width:100%!important;word-break:normal!important;overflow-wrap:break-word!important;letter-spacing:normal!important}
html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading h1::after,html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading h1::before{content:none!important;display:none!important}
html body.anc-campus.alo-unified #main>:is(.section,.alnodom-sections-page){padding-block:18px!important;margin:0!important}
html body.anc-campus.alo-unified #main :is(.alnodom-sections-shell,.container.narrow){max-width:1100px!important}
html body.anc-campus.alo-unified #main :is(#alnodom-thesis-total-highlight,.alnodom-total-counter){display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:12px!important;padding:10px 16px!important;margin:0 0 12px!important;min-height:0!important;width:auto!important;max-width:100%!important;border:1px solid var(--au-line)!important;border-radius:var(--au-radius)!important;background:#fff!important;box-shadow:none!important}
html body.anc-campus.alo-unified #main :is(#alnodom-thesis-total-highlight,.alnodom-total-counter) :is(span,.alnodom-total-title){font-size:17px!important;line-height:1.5!important;margin:0!important}
html body.anc-campus.alo-unified #main :is(#alnodom-thesis-total-highlight,.alnodom-total-counter) :is(strong,.alnodom-total-value){font-size:28px!important;line-height:1.2!important;white-space:nowrap!important;margin:0!important}
html body.anc-campus.alo-unified #main .alnodom-sections-header{display:block!important;margin:0!important;padding:0!important}
html body.anc-campus.alo-unified #main .alnodom-sections-header>div:first-child:not(.alnodom-total-counter){display:none!important}
html body.anc-campus.alo-unified #main .alnodom-sections-shell>p{display:none!important}
html body.anc-campus.alo-unified #main :is(form.filter-panel,form.nus-search,form.alnodom-section-search){padding:14px!important;margin:0 0 14px!important;background:#fff!important;border:1px solid var(--au-line)!important;border-radius:var(--au-radius)!important;box-shadow:none!important;box-sizing:border-box!important}
html body.anc-campus.alo-unified #main form.filter-panel{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:8px 12px!important;align-items:end!important}
html body.anc-campus.alo-unified #main form.filter-panel .filter-search{grid-column:span 2!important}
html body.anc-campus.alo-unified #main :is(form.filter-panel,form.nus-search,form.alnodom-section-search) label{display:block!important;font-size:16px!important;line-height:1.45!important;margin:0 0 5px!important;padding:0!important;font-weight:700!important;color:var(--au-navy)!important}
html body.anc-campus.alo-unified #main :is(form.filter-panel,form.nus-search,form.alnodom-section-search) :is(input:not([type=hidden]),select,button){height:44px!important;min-height:44px!important;padding:7px 10px!important;font-size:16px!important;line-height:1.5!important;border-radius:8px!important;box-sizing:border-box!important;max-width:100%!important;min-width:0!important;margin:0!important}
html body.anc-campus.alo-unified #main form.filter-panel .alo-subject-lookup{height:36px!important;min-height:36px!important;font-size:14px!important;margin-bottom:5px!important}
html body.anc-campus.alo-unified #main form.filter-panel>button{grid-column:span 1!important}
html body.anc-campus.alo-unified #main :is(form.filter-panel,form.nus-search,form.alnodom-section-search) button{background:var(--au-blue)!important;border:1px solid var(--au-blue)!important;color:#fff!important;font-weight:700!important;box-shadow:none!important}
html body.anc-campus.alo-unified #main :is(form.nus-search,form.alnodom-section-search)>div{display:flex!important;gap:8px!important;flex-wrap:wrap!important;align-items:center!important;margin:0!important}
html body.anc-campus.alo-unified #main :is(form.nus-search,form.alnodom-section-search) input:not([type=hidden]){flex:1 1 240px!important;width:auto!important}
html body.anc-campus.alo-unified #main form.nus-search select{flex:1 1 180px!important;width:auto!important}
html body.anc-campus.alo-unified #main :is(form.nus-search,form.alnodom-section-search) button{flex:0 0 90px!important;width:auto!important}
html body.anc-campus.alo-unified #main form.nus-search a{padding:7px 12px!important;min-height:44px!important;box-sizing:border-box!important;border:1px solid var(--au-line)!important;border-radius:8px!important;background:var(--au-tint)!important;color:var(--au-navy)!important;font-size:16px!important}
html body.anc-campus.alo-unified #main #alo-my-selections{margin-block:12px!important;padding:10px 14px!important}
html body.anc-campus.alo-unified #main #alo-my-selections>summary{font-size:17px!important;line-height:1.5!important;min-height:24px!important}
html body.anc-campus.alo-unified #main :is(.nus-policy-notice,article.prose){padding:18px!important;border-radius:var(--au-radius)!important}
html body.anc-campus.alo-unified #main article.prose>:is(p,ul,ol){font-size:19px!important;line-height:1.85!important;margin-block:0 14px!important}
html body.anc-campus.alo-unified #main article.prose p span[style*="font-size"]{font-size:inherit!important;line-height:inherit!important}
html body.anc-campus.alo-unified #main article.prose p:empty{display:none!important}
html body.anc-campus.alo-unified #main .nrm-portal{font-size:17px!important;line-height:1.8!important}
html body.anc-campus.alo-unified #main .nrm .nrm-card{padding:18px!important;margin-block:12px!important;border-radius:var(--au-radius)!important}
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid{gap:12px!important}
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid :is(h2,h3){font-size:23px!important;line-height:1.5!important;margin:0 0 12px!important}
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid label{font-size:16px!important;line-height:1.6!important;margin:8px 0!important}
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid :is(input:not([type=checkbox]):not([type=hidden]),select,button){font-size:16px!important;min-height:44px!important;padding:8px 10px!important;border-radius:8px!important}
html body.anc-campus.alo-unified #main .nrm :is(button,input[type=submit]){background:var(--au-blue)!important;border-color:var(--au-blue)!important;color:#fff!important}
html body.anc-campus .alo-trust-footer{display:block!important;grid-column:1/-1!important;width:calc(100% - 32px)!important;max-width:1180px!important;margin:16px auto 0!important;padding:16px 0!important;border-block:1px solid #cedae555!important;box-sizing:border-box!important}
html body.anc-campus .alo-trust-footer h2{font-size:18px!important;color:inherit!important;margin:0 0 10px!important;text-align:center!important}
html body.anc-campus .alo-trust-footer ul{list-style:none!important;padding:0!important;margin:0!important;display:flex!important;justify-content:center!important;gap:8px 18px!important;flex-wrap:wrap!important}
html body.anc-campus .alo-trust-footer a{display:inline-block!important;color:inherit!important;font-size:16px!important;line-height:1.6!important;padding:5px 2px!important;text-decoration:underline!important;text-underline-offset:4px!important}
html body.anc-campus .site-footer a[data-alo-managed-duplicate]{display:none!important}
html body.anc-campus.alo-unified :is(a,button,input,select,summary):focus-visible{outline:3px solid #5a91c4!important;outline-offset:3px!important}
@media(max-width:1000px){html body.anc-campus.alo-unified #main form.filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:700px){
 html body.anc-campus.alo-unified .site-header .header-inner{display:grid!important;grid-template-columns:1fr auto 1fr!important;gap:8px!important;padding-block:8px!important}
 html body.anc-campus.alo-unified .site-header .brand{grid-column:1/-1!important;grid-row:1!important;width:100%!important;justify-content:center!important;box-sizing:border-box!important;padding:6px 10px!important}
 html body.anc-campus.alo-unified .site-header .brand img{height:46px!important;max-height:46px!important}
 html body.anc-campus.alo-unified .site-header .brand strong{font-size:19px!important}
 html body.anc-campus.alo-unified .site-header .brand small{font-size:14px!important}
 html body.anc-campus.alo-unified .site-header .menu-toggle{grid-column:1!important;grid-row:2!important;justify-self:start!important}
 html body.anc-campus.alo-unified .site-header .nrm-mobile-account{grid-column:2!important;grid-row:2!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:15px!important}
 html body.anc-campus.alo-unified .site-header .anc-basket-link{grid-column:3!important;grid-row:2!important;justify-self:end!important;white-space:nowrap!important;font-size:14px!important}
 html body.anc-campus.alo-unified .site-header .site-nav{grid-column:1/-1!important;grid-row:3!important}
 html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading{padding-block:10px!important}
 html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading h1{font-size:22px!important}
 html body.anc-campus.alo-unified #main>section.page-hero.alo-page-heading .breadcrumbs{font-size:13px!important}
 html body.anc-campus.alo-unified #main>:is(.section,.alnodom-sections-page){padding-block:14px!important}
 html body.anc-campus.alo-unified #main form.filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:12px!important;gap:8px 10px!important}
 html body.anc-campus.alo-unified #main form.filter-panel .filter-search{grid-column:1/-1!important}
 html body.anc-campus.alo-unified #main form.filter-panel>button{grid-column:span 1!important}
 html body.anc-campus.alo-unified #main form.filter-panel>a{grid-column:span 1!important;align-self:center!important;text-align:center!important;font-size:14px!important}
 html body.anc-campus.alo-unified #main :is(#alnodom-thesis-total-highlight,.alnodom-total-counter){padding:9px 12px!important;gap:10px!important;margin-bottom:10px!important}
 html body.anc-campus.alo-unified #main :is(#alnodom-thesis-total-highlight,.alnodom-total-counter) :is(span,.alnodom-total-title){font-size:16px!important}
 html body.anc-campus.alo-unified #main :is(#alnodom-thesis-total-highlight,.alnodom-total-counter) :is(strong,.alnodom-total-value){font-size:26px!important}
 html body.anc-campus.alo-unified #main article.prose>:is(p,ul,ol){font-size:18px!important;line-height:1.85!important}
 html body.anc-campus.alo-unified #main :is(.nus-policy-notice,article.prose){padding:14px!important}
 html body.anc-campus.alo-unified #main form.nus-search input:not([type=hidden]){flex-basis:100%!important}
 html body.anc-campus.alo-unified #main form.nus-search select{flex:1 1 calc(60% - 8px)!important}
 html body.anc-campus.alo-unified #main .nrm .nrm-card{padding:14px!important;margin-block:8px!important}
 html body.anc-campus .alo-trust-footer ul{gap:4px 14px!important}
}

/* Keep the primary search short; additional filters remain available. */
html body.anc-campus.alo-unified #main form.filter-panel{grid-template-columns:minmax(0,1fr) 120px!important}
html body.anc-campus.alo-unified #main form.filter-panel .filter-search{grid-column:1!important;grid-row:1!important}
html body.anc-campus.alo-unified #main form.filter-panel>button{grid-column:2!important;grid-row:1!important}
html body.anc-campus.alo-unified #main form.filter-panel>a{grid-column:1/-1!important;grid-row:3!important}
html body.anc-campus.alo-unified #main form.filter-panel .alo-search-filters{grid-column:1/-1!important;grid-row:2!important;margin:0!important;padding:0!important;border:0!important}
html body.anc-campus.alo-unified #main form.filter-panel .alo-search-filters>summary{font-size:15px!important;line-height:1.6!important;color:var(--au-navy)!important;cursor:pointer;min-height:36px!important;display:list-item!important;padding:5px 0!important;font-weight:700!important}
html body.anc-campus.alo-unified #main .alo-filter-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;align-items:end!important;padding-top:7px!important}
html body.anc-campus.alo-unified #main .alo-filter-grid>div{min-width:0!important}
html body.anc-campus.alo-unified #main .alo-search-filters:not([open])>.alo-filter-grid{display:none!important}
html body.anc-campus.alo-unified #main .filter-panel .alo-spelling,html body.anc-campus.alo-unified #main .filter-panel .alo-search-status{grid-column:1/-1!important;grid-row:auto!important}
@media(max-width:700px){
 html body.anc-campus.alo-unified #main form.filter-panel{grid-template-columns:minmax(0,1fr) 100px!important}
 html body.anc-campus.alo-unified #main form.filter-panel .filter-search{grid-column:1/-1!important;grid-row:1!important}
 html body.anc-campus.alo-unified #main form.filter-panel>button{grid-column:2!important;grid-row:2!important}
 html body.anc-campus.alo-unified #main form.filter-panel .alo-search-filters{grid-column:1!important;grid-row:2!important}
 html body.anc-campus.alo-unified #main form.filter-panel .alo-search-filters[open]{grid-column:1/-1!important;grid-row:3!important}
 html body.anc-campus.alo-unified #main form.filter-panel>a{grid-column:1/-1!important;grid-row:4!important}
 html body.anc-campus.alo-unified #main .alo-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
/* Auth panels are stacked, so tab buttons never stretch alongside a long form. */
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid{display:block!important;max-width:680px!important;margin-inline:auto!important;min-width:0!important}
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid>.alr-tabs{display:flex!important;align-items:stretch!important;gap:8px!important;padding:8px!important;margin:0 0 12px!important;min-width:0!important;height:auto!important}
html body.anc-campus.alo-unified #main .nrm .nrm-auth-grid>.alr-tabs button{flex:1 1 0!important;min-width:0!important;min-height:44px!important;height:auto!important;max-height:80px!important;font-size:15px!important;line-height:1.5!important;padding:8px!important;margin:0!important}
html body.anc-campus.alo-unified #main .nrm .alr-tab[aria-selected=false]{background:#fff!important;color:var(--au-navy)!important;border-color:var(--au-line)!important}
html body.anc-campus.alo-unified #main .nrm .alr-tab[aria-selected=true]{background:var(--au-blue)!important;color:#fff!important}
html body.anc-campus.alo-unified #main .nrm .alr-panel[hidden]{display:none!important}
html body.anc-campus.alo-unified.nrm-account-page #main article.prose{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
html body.anc-campus.alo-unified .site-header .header-inner{box-sizing:border-box!important}
@media(max-width:700px){html body.anc-campus.alo-unified .site-header .header-inner{width:calc(100% - 24px)!important;max-width:100%!important;grid-template-columns:minmax(44px,1fr) auto minmax(70px,1fr)!important}html body.anc-campus.alo-unified .site-header .anc-basket-link{padding-inline:6px!important;max-width:100%!important}.alo-filter-grid label{min-height:0!important}}
