/* PadhoPlus shared UI, 2026-10. Loaded last, after component and dark-theme rules.
   Keep content geometry, test states, audio highlighting and mobile safe areas
   under their own controllers. Tokens below also serve newly added pages. */
:root{--ui-accent:#ad1858;--ui-accent-hover:#8e1248;--ui-soft:#fbf0f5;--ui-radius:16px;--ui-focus:#376ba2;--ui-shadow:0 3px 16px #1d355208;--ui-space:clamp(16px,2vw,28px)}
body{font-weight:700;line-height:1.55;-webkit-font-smoothing:antialiased}
:is(button,input,select,textarea){font-family:inherit}
:is(h1,h2,h3,h4,strong,b){font-weight:700}
:is(button,.btn,.login-btn,.text-link,.tab,summary){font-weight:700}
:is(input,textarea)::placeholder{font-weight:700;color:var(--pp-muted)}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
:is(button,.btn,a){-webkit-tap-highlight-color:transparent}
.brand-wordmark{display:block;object-fit:contain;width:180px;height:60px;max-width:100%;flex:none}
.brand{gap:0;min-width:0}.brand>span{display:block;min-width:0}.brand-tag,.dashboard-brand-caption{display:block;font-size:14px!important;letter-spacing:0!important;line-height:1.4;margin-top:-3px!important;max-width:240px;white-space:normal!important;color:var(--pp-muted)!important}
#shell :is(.site-header,.dashboard-header){box-shadow:0 1px 0 var(--pp-line);border-bottom:1px solid var(--pp-line)!important}
#shell .header-main{gap:16px;padding-block:10px;min-height:82px}
#shell .desktop-study-links{gap:3px;flex-wrap:wrap}
#shell .desktop-study-links>a{padding:9px 10px;font-size:14px;line-height:1.4;font-weight:700;border:0;border-radius:8px;white-space:nowrap;text-decoration:none;box-shadow:none!important}
#shell .desktop-study-links>a:hover{background:var(--pp-wash)!important}
#shell .desktop-study-links>a.active{background:var(--ui-soft)!important;color:var(--ui-accent)!important;box-shadow:inset 0 -2px var(--ui-accent)!important}
/* Education keeps only About beside Search; other services live inside About. */
#shell .header-main{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
#shell .header-main>.brand{grid-column:2;grid-row:1}
#shell .header-main>.menu-btn{grid-column:1;grid-row:1;align-self:center;margin-top:0}
#shell .header-main>.head-tools{grid-column:3;grid-row:1;width:auto;min-width:0;margin-left:0;align-self:center}
#shell .dashboard-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:82px;padding-block:14px}
#shell .dashboard-header .dashboard-heading{display:flex;align-items:center;justify-content:flex-start;gap:18px;padding-left:0;margin:0;min-width:0;width:auto}
#shell .dashboard-heading>.dashboard-mobile-wordmark{flex:0 0 auto}
#shell .dashboard-heading>.dashboard-greeting{min-width:0;display:grid;gap:3px}
#shell .dashboard-greeting :is(small,strong){display:block;max-width:100%;margin:0;text-align:left;white-space:normal;overflow-wrap:anywhere}
#shell .dashboard-tools{width:auto;min-width:0;flex-wrap:nowrap;align-items:center;align-self:center}
#shell .dashboard-header .dashboard-tools>#menu-btn{position:static;transform:none;flex-shrink:0}
#shell .header-search-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex:1 1 auto;max-width:100%}
#shell .header-search-row>.public-section-links{display:flex;align-items:center;gap:4px;flex:0 0 auto;min-width:0;max-width:100%;margin:0;padding:3px 0;border:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--pp-line) transparent;scroll-padding-inline:4px}
#shell .public-section-links>a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0;min-height:44px;padding:8px 10px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:inherit;font-size:16px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;white-space:nowrap;box-shadow:none}
#shell .public-section-links>a:hover{background:rgba(245,196,81,.12);border-bottom-color:#c99725;color:inherit}
#shell .public-section-links>a:is(.active,[aria-current=page]){background:transparent;border-bottom-color:#c99725;color:inherit;box-shadow:none}
#shell .public-section-links>a:focus-visible{outline:3px solid var(--ui-focus);outline-offset:0;border-radius:4px}
#shell .header-search-row>.search-mini{flex:0 0 clamp(130px,13vw,190px);width:clamp(130px,13vw,190px);min-width:0;max-width:190px;margin:0;height:44px}
@media(max-width:850px){
 #shell .header-main{grid-template-columns:auto minmax(0,1fr)}
 #shell .header-main>.brand{grid-column:1/-1;grid-row:1}
 #shell .header-main>.menu-btn{grid-column:1;grid-row:2}
 #shell .header-main>.head-tools{grid-column:2;grid-row:2;width:100%}
 #shell .dashboard-header{grid-template-columns:minmax(0,1fr);gap:12px;min-height:0;padding-block:12px}
 #shell .dashboard-header .dashboard-heading{justify-content:space-between;gap:14px}
 #shell .dashboard-heading>.dashboard-greeting{flex:1;justify-items:end}
 #shell .dashboard-greeting :is(small,strong){text-align:right}
 #shell .head-tools,#shell .dashboard-tools{width:100%;flex-wrap:wrap;gap:8px}
 #shell .head-tools>.header-search-row{flex:1 1 100%}
 #shell .dashboard-tools>.header-search-row{flex:1 1 calc(100% - 52px)}
 #shell .header-search-row{gap:6px}
 #shell .header-search-row>.search-mini{flex:0 0 100px;width:100px;max-width:100px}
 #shell .head-tools>.lang,#shell .dashboard-tools>.lang{margin-left:auto}
 #shell .public-section-links>a{padding:8px 9px;font-size:15px}
}
#shell :is(.search-mini,.account-menu>summary){border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper)!important;min-height:42px}
#shell .search-mini{max-width:230px;width:clamp(150px,15vw,215px)}
#shell .search-mini input{background:transparent;color:var(--pp-ink);font-weight:700}
#shell .search-mini:focus-within{outline:2px solid var(--ui-focus);outline-offset:2px}
#shell :is(.lang,.dashboard-tools .lang){border-color:var(--pp-line);border-radius:10px;background:var(--pp-wash)!important}
#shell .lang button{min-height:32px;padding:5px 9px;box-shadow:none!important;background:transparent!important;color:var(--pp-muted)!important}
#shell .lang button.active{background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;box-shadow:0 1px 4px #1833521a!important}
#shell .lang button::after,#shell .desktop-study-links>a::after{display:none!important}
#shell :is(.menu-btn,.dashboard-menu-btn){border-color:var(--pp-line)!important;background:var(--pp-reading-paper)!important;min-width:42px;min-height:42px;border-radius:10px;color:var(--pp-ink)!important}
#shell .login-btn{background:var(--ui-accent)!important;color:#fff!important;border:1px solid var(--ui-accent)!important;min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;font-size:14px}
#shell .dashboard-heading strong{font-size:20px;line-height:1.3;letter-spacing:-.02em}
#shell .dashboard-heading small{color:var(--pp-muted);font-weight:700}
#shell #dashboard-sidebar,#shell #main-nav{background:var(--pp-reading-paper)!important;background-image:none!important;border-color:var(--pp-line)!important;box-shadow:var(--ui-shadow)}
#shell #dashboard-sidebar .dashboard-brand-row{padding-bottom:14px;border-bottom:1px solid var(--pp-line)}
#shell #dashboard-sidebar .brand-wordmark{width:174px;height:58px}
#shell .dashboard-nav-label{font-size:14px;font-weight:700!important;letter-spacing:.08em;color:var(--pp-muted)!important;margin:24px 0 10px}
#shell :is(#dashboard-sidebar .dashboard-nav,#main-nav)>a[data-nav-art]{background:transparent!important;background-image:none!important;border:1px solid transparent!important;border-radius:9px;min-height:44px;color:var(--pp-muted)!important;font-weight:700;box-shadow:none!important}
#shell :is(#dashboard-sidebar .dashboard-nav,#main-nav)>a[data-nav-art]:hover{background:var(--pp-wash)!important;color:var(--pp-ink)!important}
#shell :is(#dashboard-sidebar .dashboard-nav,#main-nav)>a[data-nav-art]:is(.active,[aria-current=page]){background:var(--ui-soft)!important;color:var(--ui-accent)!important;border-color:transparent!important;box-shadow:inset 3px 0 var(--ui-accent)!important}
#shell :is(#dashboard-sidebar .dashboard-nav,#main-nav)>a[data-nav-art]::after{display:none!important}
#shell .app-bottom-nav{background:var(--pp-reading-paper)!important;border-top:1px solid var(--pp-line)!important;box-shadow:0 -3px 15px #19355109;padding-top:6px}
#shell .app-bottom-nav>a{color:var(--pp-muted)!important;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:10px;padding:7px 3px;min-width:0;min-height:48px;font-weight:700}
#shell .app-bottom-nav>a.active{background:var(--ui-soft)!important;color:var(--ui-accent)!important}
#shell .app-bottom-nav>a::after{display:none!important}
#shell .app-bottom-nav>a>span{font-size:14px;line-height:1.3;white-space:normal}
#shell .app-bottom-nav svg{width:21px;height:21px;stroke-width:1.8}
/* Clear page and action hierarchy, shared with future screens. */
.page>.page-top,.page .cas-heading,.ca-tests>.cat-heading{background:transparent!important;border:0!important;border-bottom:1px solid var(--pp-line)!important;border-radius:0!important;padding:6px 0 22px!important;margin-bottom:24px!important;box-shadow:none!important}
.page-top .page-title,.cas-heading h1,.cat-heading h1{font-size:clamp(25px,2.4vw,34px)!important;line-height:1.25;letter-spacing:-.025em;margin:7px 0 8px}
.page-top .crumb,.cas-eyebrow{font-size:14px!important;font-weight:700!important;letter-spacing:.1em;color:var(--pp-muted)!important}
.page-top .page-intro,.cas-heading p{font-size:14px!important;line-height:1.7;font-weight:700;color:var(--pp-muted)!important;max-width:760px}
.page :is(.card,.empty,.auth-card,.profile-card,.question-panel,.result-panel,.control-main){border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}
.card:hover{transform:none}
.page :is(.course-card,.subject-card,.test-card){border-top-width:3px}
.page :is(.course-card,.test-card) h3{font-size:21px;line-height:1.4;letter-spacing:-.01em}
.page :is(.course-card,.test-card) p{font-size:14px;line-height:1.7;font-weight:700}
.page :is(.course-card,.test-card) .overline{font-size:14px;font-weight:700;letter-spacing:.09em}
.page .topic-row{min-height:60px;padding:16px 18px;font-size:17px!important;font-weight:700!important;border-radius:12px}
.page .topic-row small{font-size:14px;font-weight:700}
:is(.btn.primary,.btn.dark){background:var(--ui-accent)!important;color:#fff!important;border:1px solid var(--ui-accent)!important;min-height:44px;border-radius:10px;box-shadow:none}
:is(.btn.primary,.btn.dark):hover:enabled{background:var(--ui-accent-hover)!important;transform:none}
.btn.subtle,.btn.light{background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;border:1px solid var(--pp-line)!important;border-radius:10px;min-height:42px}
.btn:disabled{opacity:.55;cursor:not-allowed}
.field{font-size:14px;font-weight:700;line-height:1.5}
.field :is(input,select,textarea){border:1px solid var(--pp-line);border-radius:10px;font-size:16px;min-height:44px;background:var(--pp-reading-paper);color:var(--pp-ink);font-weight:700}
.field input[type=checkbox],.field input[type=radio]{min-height:0}
.field :is(input,select,textarea):focus{border-color:var(--ui-focus)}
.empty{padding:32px 24px;border:1px dashed var(--pp-line);font-size:14px;line-height:1.7;color:var(--pp-muted)}
.empty strong{font-size:18px;font-weight:700}
/* Directory: one purpose per card; whole cards remain native links. */
.store-directory{max-width:1240px;margin-inline:auto}
.store-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
#app .store-directory .store-category{--category-color:#23486d;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;padding:22px 20px;border:1px solid var(--pp-line);border-radius:16px;background:var(--pp-reading-paper)!important;box-shadow:var(--ui-shadow);color:var(--pp-ink);transition:border-color .15s,box-shadow .15s}
#app .store-directory .store-category:nth-child(2){--category-color:#a51958}
#app .store-directory .store-category:nth-child(3){--category-color:#6751a2}
#app .store-directory .store-category:nth-child(4){--category-color:#177260}
#app .store-directory .store-category:nth-child(5){--category-color:#99651c}
.store-category-number{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--pp-wash);color:var(--category-color);font-size:14px;font-weight:700;box-shadow:inset 0 0 0 1px var(--pp-line)}
.store-category h2{font-size:18px!important;line-height:1.35;margin:3px 0 0;letter-spacing:-.01em}
.store-category p{font-size:14px;line-height:1.65;color:var(--pp-muted);margin:0 0 8px;font-weight:700}
.store-category-action{margin-top:auto;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:14px;font-weight:700;color:var(--category-color)}
#app .store-directory .store-category:hover{border-color:var(--category-color);box-shadow:0 5px 18px #2137530d}
.store-subjects{margin-top:36px;padding:24px;border:1px solid var(--pp-line);border-radius:16px;background:var(--pp-reading-paper)}
.store-section-heading h2{font-size:20px;margin:0 0 5px}.store-section-heading p{font-size:14px;color:var(--pp-muted);margin:0 0 20px}
.store-subject-links{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:10px}
.store-subject{position:relative;background:var(--pp-wash)!important;border:1px solid var(--pp-line)!important;color:var(--pp-ink)!important;font-size:14px;font-weight:700;padding:13px 32px 13px 15px;min-height:48px;line-height:1.5;border-radius:10px}
.store-subject::after{content:'→';position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--pp-muted)}
.store-subject:hover{border-color:var(--ui-accent)!important;color:var(--ui-accent)!important}
/* Forms, downloads, Help, policies and account pages use the same surfaces. */
#app .ca-store :is(.cas-selector,.cas-selected,.cas-included,.cas-download-footer){background:var(--pp-reading-paper)!important;border-color:var(--pp-line)!important;box-shadow:var(--ui-shadow);border-radius:14px}
#app .ca-store .cas-selected{border-left:3px solid var(--ui-accent)!important}
#app .ca-store :is(.cas-primary,.cas-download){background:var(--ui-accent)!important;color:#fff!important;border-color:var(--ui-accent)!important}
#app .ca-store .cas-download :is(strong,small,span){color:inherit!important}
#app .ca-store .cas-file-icon{border-color:#ffffff70}
#app :is(.student-photo-card,.student-profile-form,.student-settings form,.public-policy .policy-document,.account-policy-actions){border-color:var(--pp-line);border-radius:16px;box-shadow:var(--ui-shadow)}
#app .public-policy .policy-document p{font-weight:700;font-size:15px;line-height:1.85}
#app #support-ticket-form{max-width:760px;background:var(--pp-reading-paper)!important;background-image:none!important;padding:24px}
#auth-page .auth-brand-logo{display:block;width:240px;height:80px;object-fit:contain;max-width:100%;margin-bottom:18px}
#auth-page .auth-intro{background:#eef2f9;border-color:var(--pp-line)}
#auth-page .auth-card{border-color:var(--pp-line)}
/* Footer remains fully reachable above the existing app safe-area offset. */
.footer{border-top:1px solid var(--pp-line)!important;background:var(--pp-reading-paper)!important;margin-top:40px;padding:32px 0 22px!important}
.footer .wrap.footer-grid{display:grid;grid-template-columns:1fr .65fr 1.4fr;gap:24px 40px;align-items:start}
.footer-brand p{font-size:14px;line-height:1.7;max-width:280px;margin:8px 0;color:var(--pp-muted)}
.footer .brand-wordmark{width:172px;height:57px}.footer small{font-size:14px!important;line-height:1.7;font-weight:700;color:var(--pp-muted)!important;margin-top:0}
.footer .footer-links{display:grid;gap:8px;align-content:start}
.footer .footer-links h2{font-size:14px;color:var(--pp-ink);font-weight:700;letter-spacing:.01em;margin:12px 0 8px}
.footer .footer-links a{font-size:14px;font-weight:700;line-height:1.55;text-decoration:none;color:var(--pp-muted)!important;justify-self:start}
.footer .footer-links a:hover{color:var(--ui-accent)!important;text-decoration:underline;text-underline-offset:4px}
.footer .footer-links:last-of-type{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.footer .footer-links:last-of-type h2{grid-column:1/-1}
.footer-bottom{grid-column:1/-1;display:flex;align-items:start;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid var(--pp-line)}
.footer-bottom small:last-child{max-width:680px}
/* Existing dark preference stays an actual dark theme, including brand contrast. */
html[data-student-theme=dark]{--ui-soft:#392336;--ui-accent:#ff9ac4;--ui-accent-hover:#ffc0db;--ui-focus:#9dc6ff;--ui-shadow:0 3px 16px #0002}
html[data-student-theme=dark] :is(.brand-wordmark,.auth-brand-logo){background:#fff;border-radius:8px}
html[data-student-theme=dark] :is(.btn.primary,.btn.dark,#shell .login-btn,#app .ca-store .cas-primary,#app .ca-store .cas-download){background:#ad1858!important;color:#fff!important;border-color:#cc5687!important}
html[data-student-theme=dark] #auth-page :is(.auth-intro,.auth-card){background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important}
html[data-student-theme=dark] #auth-page :is(p,h1,h2,li,small,.auth-overline){color:var(--pp-ink)!important}
html[data-student-theme=dark] .store-category-number{color:var(--pp-ink)}
html[data-student-theme=dark] .store-category-action{color:var(--ui-accent)}
@media(min-width:1101px){#shell .head-tools{gap:10px;margin-left:auto}#shell .brand{max-width:235px}#shell .header-main{gap:16px}}
@media(min-width:851px) and (max-width:1200px){.store-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#shell .desktop-study-links>a{padding-inline:7px;font-size:14px}#shell .brand-wordmark{width:156px;height:52px}#shell .search-mini{width:160px}}
@media(max-width:850px){#shell .header-main{gap:8px;min-height:64px;padding-block:6px}#shell .brand-wordmark{width:144px;height:48px}.brand-tag{display:none!important}#shell .dashboard-mobile-wordmark{display:block}#shell .dashboard-mobile-wordmark .brand-wordmark{width:112px;height:37px}#shell .dashboard-heading strong{font-size:16px}#shell .dashboard-heading small{font-size:14px}.store-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.footer .wrap.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-brand{grid-column:1/-1}.footer .footer-links:last-of-type{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.page>.page-top,.page .cas-heading{padding-bottom:18px!important;margin-bottom:20px!important}}
@media(max-width:480px){#shell .brand-wordmark{width:124px;height:42px}#shell .header-main{gap:7px}#shell .login-btn{padding:9px 10px;font-size:14px}#shell .lang button{padding:5px 7px}.store-category-grid{grid-template-columns:1fr 1fr;gap:10px}#app .store-directory .store-category{padding:16px 13px;gap:8px}.store-category h2{font-size:16px!important}.store-category p{font-size:14px}.store-category-action{font-size:14px}.store-subjects{padding:18px 14px;margin-top:24px}.store-subject-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.store-subject{font-size:14px;padding-left:10px}.footer .wrap.footer-grid{gap:18px}.footer .footer-links a{min-height:30px;display:flex;align-items:center}.page :is(.course-card,.test-card) p{font-size:14px}}
@media(max-width:359px){.store-category-grid,.store-subject-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.store-category,.btn{transition:none!important}.btn:hover{transform:none}}
@media print{.footer,#shell{display:none!important}}

.install-card{max-width:760px;margin-inline:auto!important;padding:clamp(22px,4vw,38px)!important;background-image:none!important}
.install-brand-icon{display:block;object-fit:contain;border:1px solid var(--pp-line);border-radius:18px;margin-bottom:20px}
.install-card h1{font-size:clamp(25px,3vw,32px);line-height:1.3}.install-card h3{font-size:17px;margin:26px 0 8px}

html[data-student-theme=dark] #auth-page .field :is(input,select,textarea){background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;border-color:var(--pp-line)!important}
#shell .dashboard-heading strong{color:var(--pp-ink)!important}
#shell .dashboard-mobile-wordmark{display:block}
#shell .dashboard-mobile-wordmark .brand-wordmark{width:130px;height:43px}
@media(max-width:850px){#shell .dashboard-mobile-wordmark .brand-wordmark{width:112px;height:37px}}

/* Owner readability update: bold, larger text throughout the existing layouts. */
body{font-family:system-ui,-apple-system,"Segoe UI","Noto Sans Devanagari",sans-serif;font-size:16px}
body,body *{font-weight:700!important}
:root{--pp-muted:#43546a;--pp-line:#bdcbdc;--chooser-surface:#fff;--chooser-selected:#ffdf91;--chooser-text:#20334d;--chooser-secondary:#42546b;--chooser-border:#a7bad1}
html[data-student-theme=dark]{--pp-muted:#c0cddd;--chooser-surface:#182a40;--chooser-selected:#805116;--chooser-text:#f1f6ff;--chooser-secondary:#c0cddd;--chooser-border:#607895}
#app :is(p,li,label,select,input,textarea){font-size:16px}
#app :is(small,.crumb,.overline,.eyebrow){font-size:14px}
#app :is(input,select,textarea){line-height:1.5}
#app select{min-height:46px;max-width:100%;border:1px solid var(--chooser-border);border-radius:10px;padding:10px 12px;background-color:var(--chooser-surface);color:var(--chooser-text);cursor:pointer}
#app select option{background:var(--chooser-surface);color:var(--chooser-text);font-size:16px}
#shell .app-bottom-nav>a>span{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
#shell .brand-tag,#shell .dashboard-brand-caption{font-size:12px!important}
#shell .desktop-study-links>a{font-size:14px}
#app .ca-tests{font-family:inherit;font-size:16px;color:var(--chooser-text)}
#app .cat-ready{background:var(--chooser-surface)!important;background-image:none!important;border:1px solid var(--chooser-border)!important;border-top:4px solid #315e9b!important;box-shadow:0 6px 22px #1836540c}
#app .cat-ready :is(p,label,.cat-eyebrow,.cat-marking-profile){color:var(--chooser-secondary);font-size:15px}
#app .cat-ready h2{font-size:clamp(22px,2.3vw,28px);color:var(--chooser-text)}
#app .cat-pills>span{background:var(--pp-wash);color:var(--chooser-text);border:1px solid var(--chooser-border);font-size:14px;padding:7px 10px}
#app .ca-tests .cat-start .cat-login-start{display:flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border:1px solid #a86005!important;border-radius:10px;background:#f5a623!important;background-image:none!important;color:#302007!important;font-size:18px!important;box-shadow:0 3px 8px #a6631720;text-align:center}
#app .ca-tests .cat-start .cat-login-start:hover{background:#ef9512!important}
/* Use opaque, high-contrast choices. Selection remains visibly gold and checked. */
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options,.cat-chooser-dialog,.cas-settings-dialog):not(#ca-audio-player,#ca-voice-install){--chooser-ink:var(--chooser-text);--chooser-muted:var(--chooser-secondary);--chooser-line:var(--chooser-border);background:var(--chooser-surface)!important;color:var(--chooser-text)!important}
:is(body,#app,#shell) .ca-period-popup[data-chooser]:not(#ca-audio-player,#ca-voice-install)>.ca-popup-body{background:var(--chooser-surface)!important;padding:10px}
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options,.cat-chooser-dialog,.cas-settings-dialog):not(#ca-audio-player,#ca-voice-install) :is(.ca-topic-choices>a,.period-choice,.ca-test-links nav>a,.ca-topic-tests-link,.ca-store-links>a,.ca-state-picker-list>button,.cat-route){background:var(--chooser-surface)!important;border:1px solid var(--chooser-border)!important;border-left:4px solid #356aa0!important;color:var(--chooser-text)!important;border-radius:10px;min-height:48px;padding:12px;line-height:1.5;font-size:16px!important;box-shadow:0 2px 5px #12345608!important}
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options):not(#ca-audio-player,#ca-voice-install) :is(.ca-topic-choices>[data-topic-art][data-topic-art],.ca-state-picker-list>[data-state-art][data-state-art]){background:var(--chooser-surface)!important;border-left-color:#356aa0!important;color:var(--chooser-text)!important}
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options,.cat-chooser-dialog):not(#ca-audio-player,#ca-voice-install) :is(.ca-topic-label,.cat-route h3,.period-choice strong,.ca-test-links nav>a){font-size:16px!important;line-height:1.5;color:inherit!important}
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options,.cat-chooser-dialog):not(#ca-audio-player,#ca-voice-install) :is(a,button):is(.active,.selected,[aria-current=page],[aria-pressed=true]){background:var(--chooser-selected)!important;border-color:#ba7a12!important;color:var(--chooser-text)!important;box-shadow:inset 0 0 0 1px #ba7a12!important}
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options):not(#ca-audio-player,#ca-voice-install) :is([data-topic-art][data-topic-art],[data-state-art][data-state-art]):is(.active,.selected,[aria-current=page],[aria-pressed=true]){background:var(--chooser-selected)!important;border-left-color:#ba7a12!important}
:is(body,#app,#shell) :is(.cat-chooser-dialog,.cas-settings-dialog):not(#ca-audio-player,#ca-voice-install) :is(input,select){min-height:46px;height:auto;background:var(--chooser-surface)!important;border:1px solid var(--chooser-border)!important;border-radius:10px;font-size:16px!important;padding:10px;color:var(--chooser-text)!important}
:is(body,#app,#shell) :is(.cat-chooser-dialog,.cas-settings-dialog,.ca-state-options):not(#ca-audio-player,#ca-voice-install) :is(.cat-dialog-heading,.cas-dialog-heading,.ca-state-picker-heading,.cat-dialog-actions){background:var(--pp-wash)!important;color:var(--chooser-text)!important}
:is(body,#app,#shell) .cat-chooser-dialog:not(#ca-audio-player,#ca-voice-install) :is(.cat-dialog-heading h2,.cat-chooser-period-title){font-size:20px!important}
:is(body,#app,#shell) .cat-chooser-dialog:not(#ca-audio-player,#ca-voice-install) :is(label,.cat-popup-subtitle,.cat-chooser-status,.cat-selection-help p){font-size:15px!important;color:var(--chooser-secondary)!important}
#app .cat-chooser-dialog .cat-routes{gap:10px}
#app .cat-chooser-dialog .cat-dialog-actions button{min-height:46px;font-size:16px}
#app .cat-chooser-dialog .cat-dialog-actions .cat-primary{background:#ad1858!important;color:#fff!important;border-color:#ad1858!important}
@media(max-width:480px){#app .cat-chooser-dialog .cat-filters{grid-template-columns:1fr}#app .cat-chooser-dialog .cat-routes{grid-template-columns:repeat(2,minmax(0,1fr))}#app .cat-chooser-dialog .cat-route{padding:10px}#shell .login-btn{font-size:14px}#shell .dashboard-heading small{font-size:12px}}
/* Selection controls use the same crisp UI typeface even on reading pages. */
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options,.cat-chooser-dialog,.cas-settings-dialog,.cat-ready):not(#ca-audio-player,#ca-voice-install),
:is(body,#app,#shell) :is(.ca-period-popup[data-chooser],.ca-state-options,.cat-chooser-dialog,.cas-settings-dialog,.cat-ready):not(#ca-audio-player,#ca-voice-install) :is(button,input,select){font-family:system-ui,-apple-system,"Segoe UI","Noto Sans Devanagari",sans-serif!important}

/* App navigation already supplies destinations. Keep policies in its menu. */
body.app-navigation-visible .footer{display:none!important}
.app-policy-menu{margin-top:20px;border-top:1px solid var(--pp-line);padding-top:12px;color:var(--pp-ink)}
.app-policy-menu summary{padding:12px 8px;min-height:44px;cursor:pointer;font-size:15px}
#shell .app-policy-menu nav{display:grid;gap:4px;padding:6px 0}
#shell .app-policy-menu nav a{display:block;min-height:44px;padding:11px 10px;font-size:14px;line-height:1.5;white-space:normal;color:var(--pp-ink)!important;border-radius:8px}
#shell .app-policy-menu nav a:hover{background:var(--pp-wash)}
/* Same card width as the previous 3/2/1-column catalogue, now in one rail. */
#courses-catalog .course-catalog-grid[data-course-track]{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 44px)/3);gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--pp-line) transparent;padding:5px 0 14px;touch-action:pan-x pan-y pinch-zoom pinch-zoom;cursor:grab}
#courses-catalog [data-course-track]>.course-catalog-card{scroll-snap-align:start;scroll-snap-stop:always;align-self:stretch}
#courses-catalog [data-course-track].course-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
#courses-catalog .course-section-title{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
#courses-catalog .course-section-title>.overline{flex-basis:100%}
.course-rail-controls{display:flex;gap:8px;margin-left:auto}
.course-rail-controls button{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);color:var(--pp-ink);font-size:20px}
.course-rail-controls button:disabled{opacity:.4;cursor:default}
#course-details-dialog .course-option-validity{display:block;margin-top:7px;font-size:15px;line-height:1.55}
#course-details-dialog .course-price-option small{white-space:normal}
#course-details-dialog .course-checkout{opacity:1}
:is(#courses-catalog,#home-store) .course-tile-plan small{line-height:1.5;white-space:normal;overflow-wrap:normal}
@media(max-width:1100px){#courses-catalog .course-catalog-grid[data-course-track]{grid-auto-columns:calc((100% - 22px)/2)}}
@media(max-width:600px){#courses-catalog .course-catalog-grid[data-course-track]{grid-auto-columns:100%;gap:18px}.course-rail-controls{margin-left:0;flex-basis:100%}}

/* Photo-free Current Affairs paper in both display themes. */
#app .story[data-story-palette],#app .story[data-story-palette] *{background-image:none!important}
#app .story[data-story-palette]::before,#app .story[data-story-palette]::after{background-image:none!important}
#app .story[data-story-palette]{background-color:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;box-shadow:0 3px 14px #19314a08;border-radius:14px}
#app .story[data-story-palette] :is(h2,h3,strong,.meta,.sources,small,.story-static strong,.answer-box legend){color:var(--pp-ink)!important}
#app .story[data-story-palette] :is(.story-facts-heading,.story-facts th,.mcq-preview>summary){background:var(--pp-wash)!important;color:var(--pp-ink)!important;border-color:var(--pp-line)!important}
#app .story[data-story-palette] :is(.story-facts td,.story-facts tr:nth-child(2n) td,.story-clarification,.story-focus,.story-static,.story-comparison,.revision,.mcq-preview,.mcq-preview .answer-box){background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;border-color:var(--pp-line)!important}
#app .story[data-story-palette] :is(.story-news,.story-static,.story-facts td){line-height:1.8;text-align:justify}
#app .story[data-story-palette] :is(.story-summary,.story-static,.story-facts td){line-height:1.8;text-align:justify!important}

#app .story[data-story-palette] :is(.story-news,.story-summary,.story-static,.story-facts td){text-align-last:start; text-justify:inter-word;hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:normal!important}

/* Library download selection uses the existing responsive document controls. */
.library-items{display:grid;gap:10px;margin:16px 0;max-height:480px;overflow:auto}
.library-item{display:flex;align-items:start;gap:12px;padding:14px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper)}
.library-item input{flex:none;width:20px;height:20px;margin-top:4px}
.library-item span{min-width:0}.library-item small{display:block;margin-top:6px;color:var(--pp-muted)}
#library-downloads .card{margin-bottom:20px}#library-downloads .cas-format-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}
#library-downloads select{width:100%;min-height:46px}#library-downloads label{font-weight:700}#library-downloads [data-lib-download]{min-height:50px;margin-top:14px}

/* Subject catalogue: larger reading type and a focused, accessible topic preview.
   Scope every rule to this catalogue/dialog; existing learning pages are unchanged. */
#subject-catalogue{max-width:1280px;margin-inline:auto;color:var(--pp-ink)}
#subject-catalogue .subject-catalogue-heading{padding:4px 0 22px;margin-bottom:22px;border-bottom:1px solid var(--pp-line);background:none!important}
#subject-catalogue .subject-catalogue-heading .overline{font-size:14px;letter-spacing:.07em;color:var(--ui-accent);margin:0 0 7px}
#subject-catalogue .subject-catalogue-heading h1{font-size:clamp(30px,3vw,36px);line-height:1.25;letter-spacing:-.025em;margin:0 0 10px;color:var(--pp-ink)}
#subject-catalogue .subject-catalogue-heading p{max-width:760px;font-size:18px;line-height:1.65;margin:0;color:var(--pp-muted)}
#subject-catalogue .subject-catalogue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
#subject-catalogue .subject-catalogue-card{--subject-accent:#395c9c;--subject-tint:#edf2fc;appearance:none;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;min-height:190px;width:100%;height:100%;padding:18px 20px;border:1px solid var(--pp-line);border-top:3px solid var(--subject-accent);border-radius:15px;background:var(--pp-reading-paper)!important;background-image:none!important;color:var(--pp-ink)!important;box-shadow:var(--ui-shadow);font-family:inherit;font-size:18px;line-height:1.5;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;touch-action:manipulation}
#subject-catalogue .subject-catalogue-card.subject-tone-1{--subject-accent:#7653a3;--subject-tint:#f2edf9}
#subject-catalogue .subject-catalogue-card.subject-tone-2{--subject-accent:#916022;--subject-tint:#fbf3e5}
#subject-catalogue .subject-catalogue-card.subject-tone-3{--subject-accent:#26776b;--subject-tint:#eaf6f1}
#subject-catalogue .subject-catalogue-card.subject-tone-4{--subject-accent:#ad1858;--subject-tint:#fbecf3}
#subject-catalogue .subject-catalogue-card::before,#subject-catalogue .subject-catalogue-card::after{display:none!important}
#subject-catalogue .subject-card-heading{display:flex;align-items:center;gap:12px;min-width:0;width:100%}
#subject-catalogue .subject-card-icon{display:grid;place-items:center;width:42px;height:42px;padding:0 5px;border-radius:11px;background:var(--subject-tint);color:var(--subject-accent);font-size:21px;line-height:1;flex:0 0 42px}
#subject-catalogue .subject-catalogue-card .subject-card-title{display:block;min-width:0;font-size:26px;line-height:1.3;letter-spacing:-.02em;margin:0;color:var(--subject-accent)!important;white-space:normal;overflow-wrap:anywhere}
#subject-catalogue .subject-card-meta{display:block;font-size:15px;line-height:1.5;color:var(--pp-muted);padding-top:1px}
#subject-catalogue .subject-card-action{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:10px 12px;margin-top:auto;border:1px solid #ad1858;border-radius:9px;background:#ad1858;color:#fff!important;font-size:16px;line-height:1.4;white-space:normal}
#subject-catalogue .subject-catalogue-card:focus-visible{outline:3px solid var(--ui-focus);outline-offset:4px}
@media(hover:hover){#subject-catalogue .subject-catalogue-card:hover{border-color:var(--subject-accent);box-shadow:0 6px 18px #20334d12;transform:translateY(-2px)}#subject-catalogue .subject-catalogue-card:hover .subject-card-action{background:#8e1248;border-color:#8e1248}}

#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog{--pp-popup-paper:var(--pp-reading-paper);--pp-popup-choice:var(--pp-reading-paper);--pp-popup-ink:var(--pp-ink);--pp-popup-line:var(--pp-line);width:min(1000px,calc(100% - 32px));max-width:1000px;max-height:calc(100dvh - 32px);padding:0;margin:auto;border:1px solid var(--pp-line);border-radius:22px;background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;box-shadow:0 28px 90px #14233840;overflow:hidden;font-family:inherit}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog::backdrop{background:#15253f99;backdrop-filter:blur(3px)}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog[open]{animation:subject-preview-zoom .22s cubic-bezier(.2,.8,.2,1)}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-shell{max-height:calc(100dvh - 34px);overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:24px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-content{padding:34px;min-width:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-close{position:absolute;right:14px;top:14px;z-index:3;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--pp-line);border-radius:12px;background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;font-family:inherit;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 8px #1423380a}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading{padding:0 40px 24px 0;margin-bottom:26px;border-bottom:1px solid var(--pp-line)}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading .overline{font-size:15px;line-height:1.5;color:var(--ui-accent)!important;letter-spacing:.04em;margin-bottom:8px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading h2{font-size:30px;line-height:1.35;letter-spacing:-.02em;margin:0 0 10px;color:var(--pp-ink)!important;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading p{font-size:18px;line-height:1.7;color:var(--pp-muted)!important;margin:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:28px;align-items:start}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog :is(.subject-detail-topics,.subject-detail-sidebar,.subject-purchase-panel,.subject-materials-panel,.subject-offer){min-width:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog :is(.subject-detail-topics,.subject-purchase-panel,.subject-materials-panel)>h3{font-size:22px;line-height:1.4;color:var(--pp-ink)!important;margin:0 0 16px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-group+ .subject-topic-group{margin-top:24px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-group h4{font-size:18px;line-height:1.6;margin:0 0 10px;color:var(--pp-ink)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-list{display:grid;gap:10px;list-style:none;padding:0;margin:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-list li{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:13px 14px;border:1px solid var(--pp-line);border-radius:11px;background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;font-size:18px;line-height:1.6}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-number{display:grid;place-items:center;flex:0 0 30px;min-width:30px;min-height:30px;border-radius:8px;background:var(--pp-wash);color:var(--pp-muted)!important;font-size:15px;font-variant-numeric:tabular-nums;line-height:1.4}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog :is(.subject-topic-text,.subject-topic-list li>span:last-child){min-width:0;white-space:normal;word-break:normal;overflow-wrap:anywhere;hyphens:none}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-sidebar{display:grid;gap:16px;position:sticky;top:20px;min-width:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-purchase-panel{padding:22px;border:1px solid var(--pp-line);border-top:3px solid #ad1858;border-radius:16px;background:var(--pp-wash)!important;color:var(--pp-ink)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer+ .subject-offer{margin-top:22px;padding-top:22px;border-top:1px solid var(--pp-line)}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer h4{font-size:20px;line-height:1.5;margin:0 0 10px;color:var(--pp-ink)!important;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer p,#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog [data-subject-offers]>p{font-size:16px;line-height:1.7;color:var(--pp-muted)!important;margin:8px 0 14px;white-space:normal;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer-includes{padding-left:20px;margin:12px 0 18px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer-includes li{font-size:16px;line-height:1.7;color:var(--pp-muted)!important;margin-bottom:5px;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer fieldset{min-width:0;padding:0;margin:16px 0 0;border:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-offer legend{padding:0;font-size:16px;line-height:1.6;color:var(--pp-ink)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-choice{display:flex;align-items:flex-start;gap:12px;padding:15px;margin:10px 0;border:1px solid var(--pp-line);border-radius:11px;background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important;font-size:16px;line-height:1.55;cursor:pointer}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-choice:has(input:checked){border-color:#ad1858;box-shadow:inset 0 0 0 1px #ad1858}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-choice input{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:5px 0 0;accent-color:#ad1858}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-choice>span{min-width:0;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-amount{display:block;color:var(--pp-ink)!important;font-size:25px;line-height:1.3;margin-bottom:5px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-choice small{display:block;font-size:15px;line-height:1.6;color:var(--pp-muted)!important;white-space:normal}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-buy-action{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;padding:13px 16px;margin-top:16px;border:1px solid #ad1858!important;border-radius:11px;background:#ad1858!important;color:#fff!important;font-size:20px;line-height:1.4;text-align:center;white-space:normal;cursor:pointer;text-decoration:none}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-buy-action:hover:enabled{background:#8e1248!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-buy-action:disabled{opacity:.55;cursor:not-allowed}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-buy-note{font-size:15px!important;line-height:1.65!important;margin:12px 0 0!important;color:var(--pp-muted)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-materials-panel{padding:22px;border:1px solid var(--pp-line);border-top:3px solid var(--ui-focus);border-radius:16px;background:var(--pp-reading-paper)!important;color:var(--pp-ink)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-resource-actions{display:grid;gap:12px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-materials-action,#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-options>summary,#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-resource-actions>button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;width:100%;padding:12px 14px;border:1px solid var(--pp-line)!important;border-radius:10px;background:var(--pp-wash)!important;color:var(--pp-ink)!important;font-family:inherit;font-size:17px;line-height:1.45;text-align:left;white-space:normal;text-decoration:none;cursor:pointer}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-materials-action{border-color:var(--ui-focus)!important;color:var(--ui-focus)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-options>summary{list-style:none}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-options>summary::-webkit-details-marker{display:none}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-options>summary::after{content:'+';flex:none;font-size:22px;line-height:1}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-options[open]>summary::after{content:'−'}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-options[open]>summary{border-bottom-left-radius:0;border-bottom-right-radius:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-list{display:grid;gap:0;margin:0;padding:4px 12px;border:1px solid var(--pp-line);border-top:0;border-radius:0 0 10px 10px;background:var(--pp-reading-paper)}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-list a{display:block;min-height:44px;padding:11px 2px;background:transparent!important;border:0!important;color:var(--ui-accent)!important;font-size:16px;line-height:1.65;text-decoration:underline;text-underline-offset:4px;white-space:normal;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-demo-list a+a{border-top:1px solid var(--pp-line)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-resource-actions>button:disabled{cursor:not-allowed;color:var(--pp-muted)!important;background:var(--pp-reading-paper)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-materials-panel p{font-size:15px;line-height:1.65;margin:14px 0 0;color:var(--pp-muted)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-terms{margin-top:24px;padding-top:20px;border-top:1px solid var(--pp-line);font-size:15px;line-height:1.7;color:var(--pp-muted)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-terms :is(p,li){font-size:15px;line-height:1.7;color:var(--pp-muted)!important;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-terms a{background:transparent!important;border-color:transparent!important;display:inline-flex;align-items:center;min-height:44px;color:var(--ui-accent)!important;text-decoration:underline;text-underline-offset:4px;margin-right:16px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-empty-state{font-size:16px;line-height:1.7;padding:18px;border:1px dashed var(--pp-line);border-radius:12px;color:var(--pp-muted)!important;background:var(--pp-reading-paper)}
body:has(#subject-catalogue-dialog[open]){overflow:hidden}
@keyframes subject-preview-zoom{from{opacity:0;transform:translateY(10px) scale(.965)}to{opacity:1;transform:translateY(0) scale(1)}}
html[data-student-theme=dark] #subject-catalogue .subject-catalogue-card{--subject-accent:#94b8ff;--subject-tint:#223858}
html[data-student-theme=dark] #subject-catalogue .subject-catalogue-card.subject-tone-1{--subject-accent:#c6a7f2;--subject-tint:#352c4b}
html[data-student-theme=dark] #subject-catalogue .subject-catalogue-card.subject-tone-2{--subject-accent:#e7c385;--subject-tint:#3e3426}
html[data-student-theme=dark] #subject-catalogue .subject-catalogue-card.subject-tone-3{--subject-accent:#86cdbf;--subject-tint:#223d3a}
html[data-student-theme=dark] #subject-catalogue .subject-catalogue-card.subject-tone-4{--subject-accent:#ff9ac4;--subject-tint:#422b3c}
html[data-student-theme=dark] #subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-plan-choice:has(input:checked){border-color:var(--ui-accent);box-shadow:inset 0 0 0 1px var(--ui-accent)}
@media(max-width:1199px){#subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:899px){#subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:760px){#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-layout{grid-template-columns:minmax(0,1fr);gap:26px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-sidebar{position:static;grid-row:1}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-content{padding:28px 24px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading h2{font-size:27px}}
@media(max-width:599px){#subject-catalogue .subject-catalogue-grid{grid-template-columns:minmax(0,1fr);gap:14px}#subject-catalogue .subject-catalogue-heading{padding-bottom:20px;margin-bottom:20px}#subject-catalogue .subject-catalogue-heading h1{font-size:30px}#subject-catalogue .subject-catalogue-card{min-height:172px;padding:17px 18px;gap:10px}#subject-catalogue .subject-catalogue-card .subject-card-title{font-size:24px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:17px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-shell{max-height:calc(100dvh - 22px)}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-content{padding:28px 18px max(24px,env(safe-area-inset-bottom))}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-dialog-close{right:10px;top:10px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading{padding-right:34px;padding-bottom:20px;margin-bottom:22px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-detail-heading h2{font-size:26px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog :is(.subject-purchase-panel,.subject-materials-panel){padding:18px}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-list li{padding:12px;gap:10px}}
@media(prefers-reduced-motion:reduce){#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog[open]{animation:none}#subject-catalogue .subject-catalogue-card{transition:none}#subject-catalogue .subject-catalogue-card:hover{transform:none}}

/* Subject updates remain beside the catalogue/subject content on wide screens,
   then join the normal page flow on smaller screens. */
#app .subject-updates-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start;min-width:0;width:100%}
#app .subject-updates-main{min-width:0;container-type:inline-size;container-name:subject-cards-main}
/* Keep the established card geometry; choose columns from space left beside
   Latest Updates instead of squeezing viewport-based columns into that space. */
@supports (container-type:inline-size){
  #app .subject-updates-main #subject-catalogue .subject-catalogue-grid{grid-template-columns:minmax(0,1fr)}
  @container subject-cards-main (min-width:500px){#app .subject-updates-main #subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @container subject-cards-main (min-width:720px){#app .subject-updates-main #subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @container subject-cards-main (min-width:1120px){#app .subject-updates-main #subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
}
@supports not (container-type:inline-size){
  @media(min-width:1200px){#app .subject-updates-main #subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @media(min-width:1001px) and (max-width:1199px){#app .subject-updates-main #subject-catalogue .subject-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
}
#app #subject-latest-updates.subject-updates-rail{display:flex;flex-direction:column;gap:14px;position:sticky;top:20px;min-width:0;max-height:calc(100dvh - 40px);padding:18px;border:1px solid var(--pp-line);border-top:3px solid var(--ui-accent);border-radius:16px;background:var(--pp-reading-paper)!important;background-image:none!important;color:var(--pp-ink)!important;box-shadow:var(--ui-shadow)}
#app #subject-latest-updates>:not(.subject-updates-content){flex:none}
#app #subject-latest-updates .subject-updates-header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
#app #subject-latest-updates .subject-updates-header h2{margin:0;font-size:22px;line-height:1.35;letter-spacing:-.02em;color:var(--pp-ink)!important;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-updates-refresh{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-wash)!important;color:var(--pp-ink)!important;font-size:22px;line-height:1;cursor:pointer}
#app #subject-latest-updates .subject-updates-refresh:disabled{opacity:.6;cursor:wait}
#app #subject-latest-updates .subject-updates-content{flex:1 1 auto;min-height:100px;min-width:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pp-line) transparent;padding-right:2px}
#app #subject-latest-updates .subject-update-list{display:grid;gap:0;min-width:0}
#app #subject-latest-updates .subject-update-item{padding:16px 0;border:0;border-bottom:1px solid var(--pp-line);background:transparent!important;background-image:none!important;color:var(--pp-ink)!important;min-width:0}
#app #subject-latest-updates .subject-update-item:first-child{padding-top:0}
#app #subject-latest-updates .subject-update-item:last-child{padding-bottom:2px;border-bottom:0}
#app #subject-latest-updates .subject-update-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;font-size:14px;line-height:1.5;color:var(--pp-muted)}
#app #subject-latest-updates .subject-update-kind{display:inline-flex;align-items:center;min-height:27px;padding:3px 7px;border:1px solid var(--pp-line);border-radius:6px;background:var(--pp-wash);color:var(--pp-ink)!important;font-size:14px;line-height:1.4}
#app #subject-latest-updates .subject-update-meta time{font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
#app #subject-latest-updates .subject-update-title{margin:10px 0 7px;font-size:18px;line-height:1.5;letter-spacing:-.01em;color:var(--pp-ink)!important;white-space:normal;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-context{margin:0 0 10px;font-size:14px;line-height:1.6;color:var(--pp-muted)!important;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:9px 0;list-style:none;font-size:15px;line-height:1.5;color:var(--ui-accent)!important;cursor:pointer}
#app #subject-latest-updates .subject-update-details>summary::-webkit-details-marker{display:none}
#app #subject-latest-updates .subject-update-details>summary::after{content:'+';flex:none;font-size:20px;line-height:1}
#app #subject-latest-updates .subject-update-details[open]>summary::after{content:'−'}
#app #subject-latest-updates .subject-update-body{font-size:16px;line-height:1.75;margin:5px 0 10px;color:var(--pp-ink);white-space:pre-wrap;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-body :is(p,li){font-size:16px;line-height:1.75;color:var(--pp-ink)!important}
#app #subject-latest-updates .subject-update-body p{margin:0 0 10px}
#app #subject-latest-updates .subject-update-source-section h4{font-size:14px;line-height:1.5;margin:16px 0 6px;color:var(--pp-muted)!important}
#app #subject-latest-updates .subject-update-sources{padding-left:18px;margin:10px 0 0}
#app #subject-latest-updates .subject-update-sources li{font-size:14px;line-height:1.65;margin:4px 0;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-sources a{display:inline-block;padding:5px 0;color:var(--ui-accent)!important;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-size:15px;line-height:1.5;color:var(--ui-accent)!important;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-title>.subject-update-link{display:block;padding:4px 0;font-size:inherit;line-height:inherit;color:var(--pp-ink)!important;text-decoration:none}
#app #subject-latest-updates .subject-update-title>.subject-update-link:hover{color:var(--ui-accent)!important;text-decoration:underline}
#app #subject-latest-updates .subject-updates-empty{padding:16px 12px;border:1px dashed var(--pp-line);border-radius:10px;background:var(--pp-wash);color:var(--pp-muted);font-size:15px;line-height:1.7}
#app #subject-latest-updates .subject-updates-empty p{font-size:15px;line-height:1.7;margin:0;color:var(--pp-muted)!important}
#app #subject-latest-updates .subject-updates-empty .btn{min-height:44px;width:100%;margin-top:12px;font-size:15px}
#app #subject-latest-updates .subject-owner-tools a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-reading-paper)!important;color:var(--ui-accent)!important;font-size:14px;line-height:1.5;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-owner-tools{flex:none;display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding-top:14px;margin:0;border-top:1px solid var(--pp-line)}
@media(max-width:1000px){#app .subject-updates-layout{grid-template-columns:minmax(0,1fr);gap:26px}#app #subject-latest-updates.subject-updates-rail{position:static;max-height:none;width:100%}#app #subject-latest-updates .subject-updates-content{overflow:visible;padding-right:0}#app #subject-latest-updates .subject-owner-tools{display:flex}}
@media(max-height:650px){#app #subject-latest-updates.subject-updates-rail{position:static;max-height:none}#app #subject-latest-updates .subject-updates-content{overflow:visible}}
@media(max-width:479px){#app #subject-latest-updates.subject-updates-rail{padding:16px;gap:12px}#app #subject-latest-updates .subject-updates-header h2{font-size:21px}#app #subject-latest-updates .subject-owner-tools a{flex:1 1 auto}}

/* A subject's Latest Updates topic uses the same reading styles in normal page
   flow. These additions do not alter the catalogue cards or the right-side rail. */
#app #subject-latest-updates.subject-updates-topic{display:flex;flex-direction:column;gap:20px;position:static;width:100%;min-width:0;max-height:none;padding:clamp(18px,2.5vw,28px);border:1px solid var(--pp-line);border-top:3px solid var(--ui-accent);border-radius:16px;background:var(--pp-reading-paper)!important;background-image:none!important;color:var(--pp-ink)!important;box-shadow:var(--ui-shadow)}
#app #subject-latest-updates.subject-updates-topic .subject-updates-header{align-items:flex-start;gap:16px}
#app #subject-latest-updates.subject-updates-topic .subject-updates-header h1{min-width:0;margin:0;font-size:28px;line-height:1.4;align-self:center;overflow-wrap:anywhere}
#app #subject-latest-updates.subject-updates-topic .subject-updates-topic-intro{max-width:80ch;margin:0;font-size:16px;line-height:1.75;color:var(--pp-muted)!important;overflow-wrap:anywhere}
#app #subject-latest-updates.subject-updates-topic .subject-updates-back{display:inline-flex;align-items:center;align-self:flex-start;gap:8px;min-height:44px;max-width:100%;padding:8px 0;color:var(--ui-accent)!important;font-size:16px;line-height:1.5;white-space:normal;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
#app #subject-latest-updates.subject-updates-topic .subject-updates-content{flex:none;min-height:100px;overflow:visible;overscroll-behavior:auto;padding-right:0}
#app #subject-latest-updates.subject-updates-topic .subject-updates-list{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;width:100%}
#app #subject-latest-updates.subject-updates-topic .subject-update-item{padding-block:24px}
#app #subject-latest-updates.subject-updates-topic .subject-update-item:first-child{padding-top:0}
#app #subject-latest-updates.subject-updates-topic .subject-update-item:last-child{padding-bottom:0}
#app #subject-latest-updates.subject-updates-topic .subject-update-title{max-width:80ch;font-size:20px;line-height:1.6}
#app #subject-latest-updates.subject-updates-topic :is(.subject-update-context,.subject-update-body){max-width:85ch}
#app #subject-latest-updates.subject-updates-topic .subject-update-meta{justify-content:flex-start;gap:8px 16px}
#app #subject-latest-updates.subject-updates-topic .subject-update-meta>*{max-width:100%;min-width:0;overflow-wrap:anywhere}
#app #subject-latest-updates.subject-updates-topic .subject-updates-pagination{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px 20px;margin-top:24px;padding-top:20px;border-top:1px solid var(--pp-line);min-width:0}
#app #subject-latest-updates.subject-updates-topic .subject-updates-pagination .btn{min-height:48px;max-width:100%;padding:11px 20px;font-size:16px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
#app #subject-latest-updates.subject-updates-topic .subject-updates-pagination :is(p,[role=status],[role=alert]){margin:0;font-size:14px;line-height:1.7;color:var(--pp-muted)!important;overflow-wrap:anywhere}
#app #subject-latest-updates.subject-updates-topic .subject-updates-pagination .subject-updates-error{flex-basis:100%;min-width:0}
#app #subject-latest-updates.subject-updates-topic .subject-owner-tools{display:flex;flex-wrap:wrap;gap:10px}
#app #subject-latest-updates.subject-updates-topic .subject-owner-tools a{min-height:44px}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-list li.subject-topic-update{padding:0}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-update-link{display:flex;align-items:flex-start;gap:12px;width:100%;min-width:0;min-height:44px;padding:13px 14px;border-radius:10px;background:transparent!important;color:var(--ui-accent)!important;font-size:18px;line-height:1.6;white-space:normal;text-decoration:none;overflow-wrap:anywhere}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-update-link:hover{background:var(--pp-wash)!important}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-update-link>span:not(.subject-topic-number):not(.subject-topic-update-arrow){min-width:0;flex:1 1 auto}
#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-update-arrow{flex:0 0 auto;margin-left:auto;color:var(--ui-accent)!important}
@media(max-width:599px){#app #subject-latest-updates.subject-updates-topic{gap:16px;padding:18px}#app #subject-latest-updates.subject-updates-topic .subject-updates-header h1{font-size:25px}#app #subject-latest-updates.subject-updates-topic .subject-update-title{font-size:19px}#app #subject-latest-updates.subject-updates-topic .subject-update-item{padding-block:20px}#app #subject-latest-updates.subject-updates-topic .subject-updates-pagination .btn{width:100%}#subject-catalogue.subject-catalogue dialog#subject-catalogue-dialog.subject-catalogue-dialog .subject-topic-update-link{padding:12px;gap:10px}}

/* Subject pages retain one balanced frame for guests and signed-in students.
   Its maximum includes the existing 1280px catalogue, 24px gap and 300px rail;
   the signed-in shell continues to reserve its own navigation width. */
body.subject-page #app>.wrap.page{width:calc(100% - var(--page-gutter) - var(--page-gutter));max-width:1604px;min-width:0;margin-inline:auto}
body.subject-page #app #subject-catalogue{width:100%;min-width:0}
body.subject-page #app .subject-updates-layout{max-width:100%}
body.subject-page.app-navigation-visible #app>.wrap.page{max-width:1280px}

/* The same sourced academic feed appears in the existing home update area. */
#app #subject-latest-updates.subject-updates-home{display:flex;flex-direction:column;gap:14px;position:static;width:100%;min-width:0;padding:18px;border:1px solid var(--pp-line);border-top:3px solid var(--ui-accent);border-radius:16px;background:var(--pp-reading-paper)!important;background-image:none!important;color:var(--pp-ink)!important;box-shadow:var(--ui-shadow)}
#app #subject-latest-updates.subject-updates-home .subject-updates-content{min-width:0;overflow:visible;overscroll-behavior:auto;padding-right:0}
#app #subject-latest-updates .subject-update-subjects{margin:10px 0 0;font-size:15px;line-height:1.7;color:var(--pp-ink)!important;white-space:normal;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-subject-label{color:var(--pp-muted)!important}
#app #subject-latest-updates .subject-update-subject-link{display:inline-block;max-width:100%;padding-block:4px;color:var(--ui-accent)!important;text-decoration:underline;text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere}
#app #subject-latest-updates .subject-update-subject-link:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px;border-radius:3px}

/* App home alternates two intact panels. Only the carousel viewport clips;
   existing Current Affairs scrolling, controls and card styles stay local. */
#app [data-home-study-slider]{min-width:0;width:100%;grid-column:1;align-self:start}
#app [data-home-study-viewport]{width:100%;min-width:0;overflow:hidden;border-radius:16px}
#app [data-home-study-viewport]:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
#app [data-home-study-track]{display:flex;align-items:flex-start;width:100%;min-width:0;transition:transform 700ms cubic-bezier(.22,.61,.36,1)}
#app [data-home-study-slide]{flex:0 0 100%;width:100%;min-width:0;box-sizing:border-box}
#app [data-home-study-slide]>:is(.home-current,.subject-updates-home){width:100%;min-width:0;margin:0}
/* Keep the departing panel painted throughout its slide; inert/aria-hidden
   in the controller remove interaction and accessibility focus immediately. */
#app [data-home-study-slide][aria-hidden=true]{pointer-events:none}
/* Existing movable CA choosers live outside the card, so they follow its panel. */
.ca-period-popup[data-home-study-inactive]{display:none!important}
#app [data-home-study-slider] [data-home-study-status]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#app [data-home-study-slider] [data-home-study-status]:empty{display:none}
#app [data-home-study-slide] #subject-latest-updates.subject-updates-home{max-height:min(560px,70dvh)}
#app [data-home-study-slide] #subject-latest-updates.subject-updates-home .subject-updates-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}
/* Only the app dashboard feed moves horizontally. Full update text and its
   source/subject links keep their reading layout inside each card. */
#app #subject-latest-updates[data-subject-updates-placement=app] [data-subject-updates-scroll]{display:flex;align-items:flex-start;gap:12px;width:100%;min-width:0;overflow-x:auto;overflow-y:visible;scroll-behavior:auto;scroll-snap-type:none;direction:ltr;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--pp-line) transparent;padding-bottom:8px}
#app #subject-latest-updates[data-subject-updates-placement=app] [data-subject-updates-scroll]>.subject-update-item{flex:0 0 100%;width:100%;min-width:0;box-sizing:border-box;margin:0;padding:4px 4px 8px;border:0;white-space:normal;overflow-wrap:anywhere}
#app #subject-latest-updates[data-subject-updates-placement=app] [data-subject-updates-scroll]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px;border-radius:4px}
@media(max-width:479px){#app #subject-latest-updates.subject-updates-home{padding:16px;gap:12px}}
@media(prefers-reduced-motion:reduce){#app [data-home-study-track]{transition:none}}

/* Private PDF guidance uses the same readable account surfaces on web and app. */
dialog.pdf-password-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);box-sizing:border-box;overflow:auto;padding:24px;border:1px solid var(--pp-line);border-radius:16px;background:var(--pp-reading-paper);color:var(--pp-ink);box-shadow:var(--ui-shadow);font:inherit}
dialog.pdf-password-dialog::backdrop{background:rgb(15 23 42 / .55)}
.pdf-password-dialog header{display:flex;align-items:flex-start;gap:16px;justify-content:space-between}
.pdf-password-dialog h2{margin:0;font-size:24px;line-height:1.4}
.pdf-password-dialog header button{flex:0 0 44px;min-height:44px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-surface);color:var(--pp-ink);font-size:24px;cursor:pointer}
.pdf-password-dialog p{font-size:16px;line-height:1.7}
.pdf-password-dialog .pdf-password-value{display:block;padding:16px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-wash);font-size:26px;font-weight:800;letter-spacing:.04em;overflow-wrap:anywhere;user-select:all}
.pdf-password-dialog .btn{min-height:46px;width:100%}
.pdf-password-dialog input{max-width:100%;min-height:44px;font:inherit}
.pdf-password-dialog [role=alert]{color:var(--pp-ink);font-weight:700}

/* Shared About service cards, with one direct destination per card. */
.about-services{margin:0 0 28px;min-width:0}
.about-services>h2{font-size:22px;margin:0 0 16px;color:var(--pp-ink)}
.about-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.about-service-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;border:1px solid var(--pp-line);border-top:4px solid #c99725;border-radius:13px;background:var(--pp-reading-paper);color:var(--pp-ink);min-width:0;text-decoration:none}
.about-service-card:nth-child(2){border-top-color:#b4236c}.about-service-card:nth-child(3){border-top-color:#357862}.about-service-card:nth-child(4){border-top-color:#566ca4}
.about-service-card h3{font-size:22px;line-height:1.4;margin:0;color:var(--pp-ink);overflow-wrap:break-word}
.about-service-card p{font-size:16px;line-height:1.7;margin:0;color:var(--pp-muted);overflow-wrap:break-word}
.about-service-open{margin-top:auto;display:inline-flex;align-items:center;gap:16px;min-height:44px;padding:10px 16px;background:#f5c451;color:#2f2108;border:1px solid #c99725;border-radius:8px;font-size:16px}
.about-service-card:hover{border-color:#c99725;box-shadow:var(--ui-shadow)}
.about-service-card:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
@media(max-width:600px){.about-service-grid{grid-template-columns:minmax(0,1fr)}.about-service-card{padding:20px}.about-service-card h3{font-size:20px}}

/* Guest support stays readable without exposing contact destinations. */
.support-intro{max-width:920px;margin-bottom:24px}.support-intro h2{font-size:24px}.support-intro p{font-size:16px;line-height:1.7}
.support-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:start;max-width:1180px}
.support-layout>section,.support-contact-fields>*{min-width:0}.support-layout h2{font-size:22px;line-height:1.4;margin:0 0 18px}
.support-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.support-layout .field{margin-bottom:18px}.support-layout input:not([type=checkbox]),.support-layout textarea{width:100%;min-width:0;font-size:16px}
.support-tracking{padding:24px;background:var(--pp-reading-paper);color:var(--pp-ink)}.support-note,.support-tracking>p{font-size:14px;line-height:1.7;color:var(--pp-muted)}
.support-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0;font-size:14px;line-height:1.7}.support-consent input{flex:none;width:18px;height:18px;margin-top:4px}.support-consent a{text-decoration:underline}
.support-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.support-receipt{padding:24px;margin-top:18px;background:var(--pp-reading-paper);border-left:4px solid #c99725}.support-receipt dd{margin:6px 0 16px}.support-receipt code{white-space:normal;overflow-wrap:anywhere;font-size:15px}.support-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.support-request{margin-top:16px}
#support-ticket-status:empty,#support-track-status:empty{display:none}
@media(max-width:760px){.support-layout,.support-contact-fields{grid-template-columns:minmax(0,1fr)}.support-layout{gap:18px}}

.about-services{margin-top:32px}
.about-other-information{padding:20px 24px;margin-top:18px;border:1px solid var(--pp-line);border-radius:12px;background:var(--pp-reading-paper);color:var(--pp-ink)}
.about-other-information h3{font-size:18px;line-height:1.5;margin:0 0 10px}.about-other-information p{font-size:16px;line-height:1.8;margin:0;overflow-wrap:break-word}

/* Visible protected editor entry across Education and information services. */
.owner-editor-entry{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:1200}
.app-navigation-visible .owner-editor-entry{bottom:calc(var(--app-nav-height,64px) + 12px)}
.owner-editor-access-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:26px;margin:auto;border:1px solid var(--pp-line);border-radius:16px;background:var(--pp-surface);color:var(--pp-ink);box-shadow:0 22px 80px #10233c55;overflow:auto;font:700 16px/1.65 system-ui}
.owner-editor-access-dialog::backdrop{background:#10233ca6}
.owner-editor-access-dialog h2{margin:0 0 14px;font-size:24px}
.owner-editor-access-dialog p{margin:0 0 22px}
.owner-editor-access-actions{display:flex;gap:10px;flex-wrap:wrap}
.owner-editor-access-actions :is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--pp-line);border-radius:8px;font:inherit;text-decoration:none;background:var(--pp-wash);color:var(--pp-ink);cursor:pointer}
.owner-editor-access-actions a{background:#a51656;color:#fff;border-color:#a51656}
.owner-editor-access-dialog :focus-visible{outline:3px solid #cf9b25;outline-offset:3px}

/* Jobs home — owner's 19 October sketch. Keep the shared shell, real data,
   stable editor identities and native links; reserve wide-screen outer gutters. */
[data-information-app="vacancy"]:has(#jobs-home-portal){background:var(--pp-wash)}
[data-information-app="vacancy"]:has(#jobs-home-portal) .info-wrap{width:calc(100% - 48px);max-width:1392px;margin-inline:auto}
#jobs-home-portal{min-width:0;padding:0 0 22px}
#jobs-home-portal .jobs-home-shortcuts{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:15px 0}
#jobs-home-portal .jobs-home-switches{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
#jobs-home-portal .jobs-home-switches>a{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 14px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-reading-paper);color:var(--pp-ink);text-decoration:none;font-size:15px;line-height:1.5}
#jobs-home-portal .jobs-home-switches>a::before{content:"";width:9px;height:9px;border-radius:3px;background:#174d80;flex:none}
#jobs-home-portal .jobs-home-switches>a:nth-child(2)::before{background:#126b62}
#jobs-home-portal .jobs-home-switches>a:nth-child(3)::before{background:#714578}
#jobs-home-portal .jobs-home-switches>a:hover{border-color:var(--ui-accent);box-shadow:0 2px 8px #15385812}
#jobs-home-portal .jobs-home-updates-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-decoration:none;color:var(--pp-ink);font-size:14px}
#jobs-home-portal .jobs-live-dot{width:7px;height:7px;border-radius:50%;background:#208375;flex:none}
#jobs-home-portal .jobs-home-workspace{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:22px;align-items:start;min-width:0}
#jobs-home-portal :is(#jobs-category-home,#jobs-home-updates,#jobs-home-boards){min-width:0}
#jobs-home-portal #jobs-home-boards{gap:22px;margin:0}
#jobs-home-portal .jobs-category-board{grid-template-columns:minmax(0,1fr);gap:0;border:1px solid var(--pp-line);border-top:3px solid var(--category-band);border-radius:11px;box-shadow:0 3px 14px #15385808;scroll-margin-top:20px}
#jobs-home-portal .jobs-exam-main{border-radius:9px 9px 0 0;background:var(--pp-reading-paper)}
#jobs-home-portal .jobs-category-heading{padding:14px 16px;gap:10px 14px;background:var(--pp-reading-paper)}
#jobs-home-portal .jobs-category-heading h2{font-size:21px;line-height:1.5;color:var(--category-accent)}
#jobs-home-portal .jobs-category-title-group{flex:1 1 260px}
#jobs-home-portal .jobs-category-scope{font-size:14px;opacity:.9}
#jobs-home-portal .jobs-category-stats{margin-left:auto}
#jobs-home-portal .jobs-category-count{align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#jobs-home-portal .jobs-category-count>strong{font-size:25px;color:var(--category-accent)}
#jobs-home-portal .jobs-category-count>span{font-size:14px}
#jobs-home-portal .jobs-category-organisation{flex:0 1 200px}
#jobs-home-portal .jobs-category-heading select{max-width:100%;width:100%;background:var(--pp-wash);border:1px solid var(--pp-line);border-radius:7px;min-height:44px;font-size:16px;color:var(--pp-ink)}
#jobs-home-portal .jobs-category-qualification{padding:11px 16px 0;margin:0;font-size:14px;letter-spacing:.02em}
#jobs-home-portal .jobs-category-row{padding:10px 16px 14px}
#jobs-home-portal .jobs-exam-track{gap:10px;padding:3px 0 5px}
#jobs-home-portal .jobs-exam-card{border-radius:8px;box-shadow:none;background:var(--pp-reading-paper);border:1px solid var(--pp-line);padding:12px;gap:8px}
#jobs-home-portal .jobs-exam-card:hover{border-color:var(--category-accent)}
#jobs-home-portal .jobs-exam-name{font-size:16px;line-height:1.5}
#jobs-home-portal .jobs-vacancy-panel{border-radius:6px}
#jobs-home-portal .jobs-exam-notifications{border:0;border-top:1px solid var(--pp-line);border-radius:0 0 9px 9px;min-width:0}
#jobs-home-portal .jobs-exam-notifications>h3{margin:0;background:var(--category-band);color:#fff;padding:12px 16px;font-size:18px}
#jobs-home-portal .jobs-table-heading{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;padding:8px 10px;background:var(--pp-reading-paper);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
#jobs-home-portal .jobs-table-heading>h3{flex:0 0 auto;min-width:0;min-height:36px;margin:0;padding:6px 10px;background:#174d80;color:#fff;border-radius:6px;font-size:16px;line-height:24px;white-space:nowrap}
#jobs-home-portal [data-jobs-qualification-form]{flex:0 0 auto;flex-wrap:nowrap;gap:6px;max-width:none}
#jobs-home-portal .jobs-qualification-quick{flex:0 0 auto;flex-wrap:nowrap;gap:5px}
#jobs-home-portal .jobs-qualification-select{flex:0 0 auto;width:auto}
#jobs-home-portal [data-jobs-qualification-select]{width:180px;max-width:180px;background:var(--pp-reading-paper)}
#jobs-home-portal .jobs-vacancy-table{min-width:700px;font-size:14px;line-height:1.6}
#jobs-home-portal .jobs-vacancy-table :is(th,td){padding:13px 11px;border-color:var(--pp-line)}
#jobs-home-portal .jobs-vacancy-table thead th{background:#176277;color:#fff;box-shadow:0 1px 0 #134f61;font-size:14px}
#jobs-home-portal .jobs-vacancy-table tbody tr:nth-child(even){background:var(--pp-wash)}
#jobs-home-portal .jobs-vacancy-table tbody tr:hover{background:var(--category-tint)}
#jobs-home-portal .jobs-table-post-name{font-size:17px;line-height:1.6;color:var(--category-accent)}
#jobs-home-portal .jobs-table-post-count{font-size:16px;padding:2px 8px;margin-top:6px;border-radius:5px}
#jobs-home-portal .jobs-vacancy-table time{font-variant-numeric:tabular-nums;font-size:14px}
#jobs-home-portal .jobs-notice-boards{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin:0;scroll-margin-top:18px}
#jobs-home-portal .jobs-home-updates-error{grid-column:1/-1;margin:4px 7px;font-size:14px;color:var(--pp-ink)}
#jobs-home-portal .jobs-notice-board{grid-column:1;grid-row:auto;position:static;min-width:0;border-radius:10px;border:1px solid var(--pp-line);box-shadow:0 3px 14px #15385808}
#jobs-home-portal .jobs-notice-board>h2{font-size:18px!important;border-radius:9px 9px 0 0;background:#183f68;color:#fff}
#jobs-home-portal .jobs-notice-board>h2>a{justify-content:space-between;text-align:left;min-height:54px;padding:12px 15px;color:#fff;line-height:1.5}
#jobs-home-portal #jobs-notice-board-admit-card>h2{background:#146568}
#jobs-home-portal #jobs-notice-board-result>h2{background:#674477}
#jobs-home-portal #jobs-notice-board-answer-key>h2{background:#825d25}
#jobs-home-portal #jobs-notice-board-exam-date>h2{background:#315b86}
#jobs-home-portal .jobs-notice-board-description{display:none}
#jobs-home-portal .jobs-notice-scroll{max-height:240px}
#jobs-home-portal .jobs-notice-board-primary .jobs-notice-scroll{max-height:360px}
#jobs-home-portal .jobs-notice-headlines{padding:2px 15px 2px 31px}
#jobs-home-portal .jobs-notice-headlines li{padding:0;border-bottom:1px solid var(--pp-line)}
#jobs-home-portal .jobs-notice-headlines li:last-child{border-bottom:0}
#jobs-home-portal .jobs-notice-headlines a{padding:12px 0;font-size:15px;line-height:1.65;color:var(--ui-accent)}
#jobs-home-portal .jobs-notice-headlines a:visited{color:var(--category-accent,var(--pp-muted))}
#jobs-home-portal .jobs-notice-board-all{padding:9px 15px;font-size:14px;color:var(--ui-accent);background:var(--pp-wash);border-radius:0 0 9px 9px}
#jobs-home-portal .jobs-board-footnote{display:none}
#jobs-home-portal .jobs-home-tools{margin-top:18px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);min-width:0}
#jobs-home-portal .jobs-home-tools>summary{padding:16px 18px;min-height:52px;cursor:pointer;font-size:16px;color:var(--pp-ink)}
#jobs-home-portal .jobs-home-tools>.jobs-search{border:0;border-top:1px solid var(--pp-line);border-radius:0 0 10px 10px;box-shadow:none}
#jobs-home-portal #jobs-home-resources>.jobs-section{padding:0 20px 20px;margin:12px 0}
#jobs-home-portal :is(a,button,select,summary):focus-visible{outline:3px solid var(--ui-focus,var(--ui-accent));outline-offset:3px}
[data-information-app="vacancy"]:has(#jobs-home-portal) #info-main>.jobs-independent{margin:22px 0 0!important;font-size:14px;line-height:1.7}
[data-information-app="vacancy"] [data-jobs-sports-toggle]{min-height:44px;padding:8px 11px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-reading-paper);color:var(--pp-ink);font-size:14px;font-weight:800;white-space:nowrap}
[data-information-app="vacancy"] [data-jobs-sports-toggle]:hover{border-color:var(--category-accent,#174d80)}
[data-information-app="vacancy"] [data-jobs-sports-toggle][aria-pressed=true]{background:#175b78;border-color:#175b78;color:#fff;box-shadow:0 2px 6px #123e6018}
@media(max-width:1150px) and (min-width:901px){
 #jobs-home-portal .jobs-home-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px}
 #jobs-home-portal .jobs-category-heading{padding:12px}
 #jobs-home-portal .jobs-category-title-group{flex-basis:220px}
 #jobs-home-portal .jobs-category-organisation{flex-basis:180px}
}
@media(max-width:900px){
 [data-information-app="vacancy"]:has(#jobs-home-portal) .info-wrap{width:calc(100% - 32px)}
 #jobs-home-portal .jobs-home-workspace{display:flex;flex-direction:column;gap:20px}
 #jobs-home-portal #jobs-category-home,#jobs-home-portal #jobs-home-updates{width:100%}
 #jobs-home-portal .jobs-notice-boards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 #jobs-home-portal .jobs-notice-board{grid-column:auto}
 #jobs-home-portal .jobs-notice-board-primary{grid-column:1/-1}
 #jobs-home-portal .jobs-notice-board-primary .jobs-notice-scroll{max-height:260px}
 #jobs-home-portal .jobs-home-shortcuts{gap:5px}
 #jobs-home-portal .jobs-category-stats{max-width:none;order:initial}
 #jobs-home-portal .jobs-category-title-group{order:initial}
 #jobs-home-portal .jobs-category-organisation{order:initial}
}
@media(max-width:560px){
 [data-information-app="vacancy"]:has(#jobs-home-portal) .info-wrap{width:calc(100% - 24px)}
 #jobs-home-portal .jobs-home-switches{gap:6px}
 #jobs-home-portal .jobs-home-switches>a{padding:7px 10px;font-size:14px;gap:6px}
 #jobs-home-portal .jobs-category-heading{padding:12px;gap:10px}
 #jobs-home-portal .jobs-category-heading h2{font-size:19px}
 #jobs-home-portal .jobs-category-title-group{flex-basis:100%}
 #jobs-home-portal .jobs-category-organisation{flex:1 1 145px}
 #jobs-home-portal .jobs-category-stats{flex:1 1 120px}
 #jobs-home-portal .jobs-category-count{justify-content:flex-start}
 #jobs-home-portal .jobs-category-count>strong{font-size:23px}
 #jobs-home-portal .jobs-table-heading{padding:8px;gap:8px}
 #jobs-home-portal .jobs-table-heading>h3{font-size:16px}
 #jobs-home-portal [data-jobs-qualification-form]{gap:6px}
 #jobs-home-portal .jobs-qualification-quick{gap:5px}
 #jobs-home-portal .jobs-qualification-select{width:auto}
 #jobs-home-portal [data-jobs-qualification-select]{width:180px;max-width:180px}
 #jobs-home-portal .jobs-notice-boards{grid-template-columns:minmax(0,1fr)}
 #jobs-home-portal .jobs-notice-board{grid-column:1}
 #jobs-home-portal .jobs-notice-board>h2{font-size:18px!important}
 #jobs-home-portal .jobs-home-tools>summary{padding:14px}
}

[data-information-app="vacancy"][data-theme="dark"] #jobs-home-portal :is(.jobs-notice-headlines a,.jobs-notice-board-all){color:#a3d2ff}
[data-information-app="vacancy"][data-theme="dark"] #jobs-home-portal .jobs-notice-headlines a:visited{color:#ddbbff}
[data-information-app="vacancy"][data-theme="dark"] #jobs-home-portal :is(a,button,select,summary):focus-visible{outline-color:#a3d2ff}

/* Latest owner layout: update panels begin at the top of the workspace. */
#jobs-home-portal #jobs-home-updates{margin-block-start:0}

/* Government home: equal-sized recruiting body and exam summary cards. */
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip{--jobs-featured-card-width:196px;--jobs-featured-card-height:212px;padding:12px;background:var(--pp-reading-paper);border-block:1px solid var(--pp-line);min-width:0}
:is(#jobs-home-portal,#jobs-category-page) [data-category-lower-title][hidden]{display:none!important}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panels{display:flex;align-items:flex-start;gap:0;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--pp-muted) transparent;scroll-behavior:auto;touch-action:pan-x pan-y pinch-zoom}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panels>.jobs-featured-panel{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panels:focus-visible{outline:3px solid var(--ui-accent);outline-offset:-3px}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panel{display:grid;grid-template-columns:var(--jobs-featured-card-width) minmax(0,1fr);align-items:start;gap:12px;min-width:0}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panel[hidden]{display:none!important}
:is(#jobs-home-portal,#jobs-category-page) :is(.jobs-featured-body,.jobs-featured-vacancy){display:grid;grid-template-rows:minmax(0,1fr) 66px;gap:10px;width:var(--jobs-featured-card-width);height:var(--jobs-featured-card-height);min-width:0;min-height:0;box-sizing:border-box;padding:12px;border:1px solid var(--pp-line);border-radius:12px;background:var(--pp-reading-paper);color:var(--pp-ink);text-decoration:none;text-align:center;box-shadow:0 2px 5px #102e4c08;overflow-wrap:anywhere}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-body{background:#102e4c;border-color:#244f78;color:#fff}
:is(#jobs-home-portal,#jobs-category-page) [data-jobs-category-board="state"] .jobs-featured-body{background:#104c4b;border-color:#23706b}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-body:visited{color:#fff}
:is(#jobs-home-portal,#jobs-category-page) :is(.jobs-featured-body,.jobs-featured-vacancy):hover{border-color:var(--ui-accent);box-shadow:0 3px 10px #102e4c18}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:0}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-width:0;max-height:48px;margin:0;overflow:hidden;font-size:20px;font-weight:800;line-height:24px;text-wrap:balance}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-subtitle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;min-width:0;max-height:54px;overflow:hidden;font-size:14px;font-weight:700;line-height:18px;color:var(--pp-muted);text-wrap:balance}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-body .jobs-featured-subtitle{color:#e0eaf3}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-count-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:6px 4px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-wash);color:var(--pp-ink);font-variant-numeric:tabular-nums}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-body .jobs-featured-count-box{border-color:#ffffff40;background:#ffffff12;color:#fff}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-count-label{font-size:14px;font-weight:700;line-height:18px}
:is(#jobs-home-portal,#jobs-category-page) :is(.jobs-featured-body-number,.jobs-featured-posts){font-size:26px;line-height:30px;font-weight:700;letter-spacing:-.4px}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-posts>span{display:none}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-direction{display:none}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-track{display:flex;align-items:flex-start;gap:12px;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scroll-behavior:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--pp-muted) transparent;padding:0 0 8px;touch-action:pan-x pan-y pinch-zoom;cursor:grab}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-track:active{cursor:grabbing}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-vacancy{flex:0 0 var(--jobs-featured-card-width)}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-vacancy:visited{color:var(--pp-ink)}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-body:focus-visible,:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-vacancy:focus-visible{outline:3px solid var(--ui-accent);outline-offset:-3px}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-more{align-content:center;grid-template-rows:1fr 30px}
:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-empty{margin:0;padding:10px;border:1px dashed var(--pp-line);border-radius:8px;color:var(--pp-muted);font-size:14px;line-height:1.7}
@media(max-width:600px){
 :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip{--jobs-featured-card-width:152px;--jobs-featured-card-height:200px;padding:8px}
 :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panel,:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-track{gap:8px}
 :is(#jobs-home-portal,#jobs-category-page) :is(.jobs-featured-body,.jobs-featured-vacancy){padding:9px;gap:8px;grid-template-rows:minmax(0,1fr) 64px}
 :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-name{font-size:18px}
 :is(#jobs-home-portal,#jobs-category-page) :is(.jobs-featured-body-number,.jobs-featured-posts){font-size:24px}
}
@media(max-width:360px){:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip{--jobs-featured-card-width:140px}:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panel{gap:6px}}
@media(prefers-reduced-motion:reduce){:is(#jobs-home-portal,#jobs-category-page) .jobs-featured-track{scroll-behavior:auto}}

/* Shared vacancy links and workspace dimensions on every category page. */
[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) :is(.jobs-notice-headlines a,.jobs-notice-board-all,.jobs-table-post-name,.jobs-board-all,.jobs-category-all,.jobs-category-heading h2 a){color:#1556b0}
[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) :is(.jobs-notice-headlines a,.jobs-notice-board-all,.jobs-table-post-name,.jobs-board-all,.jobs-category-all,.jobs-category-heading h2 a):visited{color:#1556b0}
[data-information-app="vacancy"][data-theme="dark"] :is(#jobs-home-portal,#jobs-category-page) :is(.jobs-notice-headlines a,.jobs-notice-board-all,.jobs-table-post-name,.jobs-board-all,.jobs-category-all,.jobs-category-heading h2 a){color:#a3d2ff}
[data-information-app="vacancy"]:has(#jobs-category-page) .info-wrap{width:calc(100% - 48px);max-width:1392px}
#jobs-category-page{animation:none}
#jobs-category-page .jobs-government-workspace{display:grid;grid-template-columns:minmax(0,1fr) 292px;align-items:start;gap:22px;min-width:0}
#jobs-category-page .jobs-government-main{min-width:0}
#jobs-category-page .jobs-government-main>.jobs-featured-strip{margin:0 0 18px;border:1px solid var(--pp-line);border-radius:10px}
#jobs-category-page .jobs-government-main .jobs-organisation-grid{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))}
#jobs-category-page .jobs-government-main .jobs-category-page-filters{margin-top:0}
#jobs-category-page .jobs-government-main .jobs-table-heading{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;padding:8px 10px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
#jobs-category-page .jobs-government-main .jobs-table-heading>h2{flex:0 0 auto;min-height:36px;margin:0;padding:6px 10px;background:#174d80;color:#fff;font-size:16px;line-height:24px;white-space:nowrap}
#jobs-category-page .jobs-government-main [data-jobs-qualification-form]{flex:0 0 auto;flex-wrap:nowrap;max-width:none;gap:6px}
#jobs-category-page .jobs-government-main .jobs-qualification-quick{flex:0 0 auto;flex-wrap:nowrap;gap:5px}
#jobs-category-page .jobs-government-main .jobs-qualification-select{flex:0 0 auto;width:auto}
#jobs-category-page .jobs-government-main [data-jobs-qualification-select]{width:180px;max-width:180px}
#jobs-category-page .jobs-government-main .jobs-vacancy-table{min-width:700px;font-size:14px}
/* Category page update cards match the Jobs home dimensions. */
#jobs-category-page .jobs-government-updates{position:sticky;top:12px;align-self:start;width:calc(100% + var(--jobs-updates-scrollbar,0px));margin-inline-end:calc(-1 * var(--jobs-updates-scrollbar,0px));max-height:calc(100dvh - 24px - env(safe-area-inset-bottom,0px));min-width:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-gutter:stable}
#jobs-category-page .jobs-government-updates .jobs-notice-boards{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin:0;scroll-margin-top:18px}
#jobs-category-page .jobs-government-updates .jobs-notice-board{grid-column:1;grid-row:auto;position:static;min-width:0;border-radius:10px;border:1px solid var(--pp-line);box-shadow:0 3px 14px #15385808;background:var(--pp-reading-paper)}
#jobs-category-page .jobs-government-updates .jobs-notice-board>h2{font-size:18px!important;border-radius:9px 9px 0 0;background:#183f68;color:#fff}
#jobs-category-page .jobs-government-updates .jobs-notice-board>h2>a{justify-content:space-between;text-align:left;min-height:54px;padding:12px 15px;color:#fff;line-height:1.5}
#jobs-category-page .jobs-government-updates #jobs-notice-board-admit-card>h2{background:#146568}
#jobs-category-page .jobs-government-updates #jobs-notice-board-result>h2{background:#674477}
#jobs-category-page .jobs-government-updates #jobs-notice-board-answer-key>h2{background:#825d25}
#jobs-category-page .jobs-government-updates #jobs-notice-board-exam-date>h2{background:#315b86}
#jobs-category-page .jobs-government-updates .jobs-notice-board-description{display:none}
#jobs-category-page .jobs-government-updates .jobs-notice-scroll{max-height:240px}
#jobs-category-page .jobs-government-updates .jobs-notice-board-primary .jobs-notice-scroll{max-height:360px}
#jobs-category-page .jobs-government-updates .jobs-notice-headlines{padding:2px 15px 2px 31px}
#jobs-category-page .jobs-government-updates .jobs-notice-headlines li{padding:0;border-bottom:1px solid var(--pp-line)}
#jobs-category-page .jobs-government-updates .jobs-notice-headlines li:last-child{border-bottom:0}
#jobs-category-page .jobs-government-updates .jobs-notice-headlines a{padding:12px 0;font-size:15px;line-height:1.65;color:#1556b0}
#jobs-category-page .jobs-government-updates .jobs-notice-headlines a:visited{color:#1556b0}
#jobs-category-page .jobs-government-updates .jobs-notice-board-all{padding:9px 15px;font-size:14px;color:#1556b0;background:var(--pp-wash);border-radius:0 0 9px 9px}
[data-information-app="vacancy"][data-theme="dark"] #jobs-category-page .jobs-government-updates :is(.jobs-notice-headlines a,.jobs-notice-board-all){color:#a3d2ff}
#jobs-category-page .jobs-government-updates :is(a,.jobs-notice-scroll):focus-visible{outline:3px solid var(--ui-focus,var(--ui-accent));outline-offset:-3px}
@media(max-width:1150px) and (min-width:901px){#jobs-category-page .jobs-government-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px}}
@media(max-width:900px){
 [data-information-app="vacancy"]:has(#jobs-category-page) .info-wrap{width:calc(100% - 32px)}
 #jobs-category-page .jobs-government-workspace{display:flex;flex-direction:column;gap:20px}
 #jobs-category-page .jobs-government-main,#jobs-category-page .jobs-government-updates{width:100%}
 #jobs-category-page .jobs-government-updates{position:static;width:100%;margin-inline-end:0;max-height:none;overflow:visible;scrollbar-gutter:auto}
 #jobs-category-page .jobs-government-updates .jobs-notice-boards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 #jobs-category-page .jobs-government-updates .jobs-notice-board{grid-column:auto}
 #jobs-category-page .jobs-government-updates .jobs-notice-board-primary{grid-column:1/-1}
 #jobs-category-page .jobs-government-updates .jobs-notice-board-primary .jobs-notice-scroll{max-height:260px}
}
@media(max-width:560px){
 [data-information-app="vacancy"]:has(#jobs-category-page) .info-wrap{width:calc(100% - 24px)}
 #jobs-category-page .jobs-government-updates .jobs-notice-boards{grid-template-columns:minmax(0,1fr)}
 #jobs-category-page .jobs-government-updates .jobs-notice-board{grid-column:1}
}

/* One compact Jobs shell on every route, matching the owner's top layout. */
body[data-information-app="vacancy"] .info-wrap{width:calc(100% - 48px);max-width:1392px}
body[data-information-app="vacancy"] .info-header{display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(240px,380px) auto;align-items:center;gap:10px 14px;width:100%;max-width:100%;min-width:0;margin:0;padding:6px max(24px,calc((100% - 1392px)/2));padding-top:max(6px,env(safe-area-inset-top));border-top:0;border-bottom:1px solid var(--pp-line);background:var(--pp-reading-paper);box-shadow:none}
body[data-information-app="vacancy"] .info-header :is(.info-header-row,.info-search-row){display:contents}
body[data-information-app="vacancy"] .info-header .info-brand{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;justify-self:start;gap:0;min-width:0;max-width:100%;margin:0}
body[data-information-app="vacancy"] .info-header .info-brand .brand-wordmark{display:block;width:148px;height:40px;max-width:100%;object-fit:contain;object-position:left center;flex:none}
body[data-information-app="vacancy"] .info-header .info-brand>span{max-width:100%;margin:0;padding:0;border:0;font-size:14px;line-height:1.35;white-space:normal}
body[data-information-app="vacancy"] .info-header .info-nav{grid-column:2;grid-row:1;display:flex;align-items:center;gap:0;margin:0;padding:0;min-width:0;overflow:visible}
body[data-information-app="vacancy"] .info-header .info-nav>a{flex:none;min-height:44px;padding:6px 10px;font-size:14px;white-space:nowrap}
body[data-information-app="vacancy"] .info-header .info-header-search{grid-column:3;grid-row:1;width:100%;min-width:0;max-width:none;margin:0;border-radius:11px}
body[data-information-app="vacancy"] .info-header-search input[type=search]{padding:10px 12px;font-size:16px}
body[data-information-app="vacancy"] .info-header-search>button{min-height:44px;padding:8px 12px;margin:3px;border-radius:8px}
body[data-information-app="vacancy"] .info-header .info-controls{grid-column:4;grid-row:1;justify-self:end;display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:6px;width:auto;max-width:100%;min-width:0;margin:0}
body[data-information-app="vacancy"] .info-header .info-language button{font-size:14px;padding-inline:8px}
body[data-information-app="vacancy"] .info-header .info-language{max-width:100%;flex:none}
body[data-information-app="vacancy"] .info-header .info-account-menu{max-width:100%}
body[data-information-app="vacancy"] .info-header .info-account-menu>summary{max-width:100%;min-width:0}
body[data-information-app="vacancy"] .jobs-quick-nav{margin:6px 0 0;padding:4px 0 7px;gap:4px;border:0;background:transparent}
body[data-information-app="vacancy"] .jobs-quick-nav>a{min-height:34px;padding:5px 11px;border:1px solid #0668dc;border-radius:6px;background:#0668dc;color:#fff;font-size:14px;line-height:1.4}
body[data-information-app="vacancy"] .jobs-quick-nav>a:is(:hover,[aria-current=page]){background:#0457ba;border-color:#0457ba;color:#fff}
body[data-information-app="vacancy"] #info-main>.info-heading{padding:14px 0 12px;margin-bottom:14px}
body[data-information-app="vacancy"] #info-main>.info-heading h1{margin:4px 0 8px}
body[data-information-app="vacancy"] #info-main>.info-heading .info-disclaimer{margin-top:6px!important}
#jobs-home-portal .jobs-home-shortcuts{padding:7px 0 10px;gap:8px}
#jobs-home-portal #jobs-home-boards{gap:16px}
#jobs-category-page .jobs-category-page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 18px;margin:5px 0 12px;min-width:0}
#jobs-category-page .jobs-category-page-heading{flex:1 1 250px;min-width:0}
#jobs-category-page .jobs-category-page-heading .jobs-category-breadcrumb{margin:0 0 6px;line-height:1.5}
#jobs-category-page .jobs-category-page-heading .jobs-category-page-title{margin:0;font-size:clamp(24px,2.5vw,30px);line-height:1.3;overflow-wrap:break-word}
#jobs-category-page .jobs-category-page-heading .jobs-category-qualification{padding:0;margin:6px 0 0;line-height:1.5}
#jobs-category-page .jobs-category-page-header>.jobs-category-page-filters{flex:0 1 610px;display:flex;align-items:end;gap:8px;margin:0;padding:10px 12px;min-width:0;max-width:100%;border-radius:10px}
#jobs-category-page .jobs-category-page-header>.jobs-category-page-filters .field{flex:1 1 180px;min-width:0;max-width:100%;font-size:14px;line-height:1.4}
#jobs-category-page .jobs-category-page-filters .field>select{margin-top:5px;max-width:100%;min-height:44px;padding:8px 10px}
#jobs-category-page .jobs-category-page-filters:has(select[name=state]),#jobs-category-page .jobs-category-page-filters:has(select[name=exam]){flex:1 1 660px}
#jobs-category-page .jobs-government-main>.jobs-featured-strip{margin:0 0 12px}
#jobs-category-page .jobs-category-selected{margin:6px 0 10px}
#jobs-category-page .jobs-vacancy-stage{margin:10px 0 16px}
#jobs-category-page .jobs-vacancy-stage>header{height:auto;min-height:0;padding:9px 14px;margin-bottom:8px}
#jobs-category-page .jobs-table-heading{margin-top:0}
/* Breadcrumb, title and route action share one compact visual band. */
body[data-information-app="vacancy"] :is(.jobs-page-top,.jobs-category-page-header){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin:5px 0 14px;padding:10px 0 14px;border-bottom:1px solid var(--pp-line);min-width:0}
body[data-information-app="vacancy"] :is(.jobs-page-top-heading,.jobs-category-page-heading){flex:1 1 250px;min-width:0}
body[data-information-app="vacancy"] :is(.jobs-page-top-heading,.jobs-category-page-heading) :is(h1,.jobs-category-page-title){margin:0;font-size:clamp(24px,2.5vw,30px);line-height:1.3;letter-spacing:-.35px;overflow-wrap:anywhere}
body[data-information-app="vacancy"] :is(.jobs-page-top,.jobs-category-page-header) :is(.jobs-page-top-breadcrumb,.jobs-category-breadcrumb){display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 5px;color:var(--pp-muted);font-size:14px;line-height:1.5}
body[data-information-app="vacancy"] :is(.jobs-page-top,.jobs-category-page-header) :is(.jobs-page-top-breadcrumb,.jobs-category-breadcrumb) a{color:var(--pp-muted);text-decoration:none}
body[data-information-app="vacancy"] :is(.jobs-page-top,.jobs-category-page-header) :is(.jobs-page-top-breadcrumb,.jobs-category-breadcrumb) a:hover{color:var(--ui-accent);text-decoration:underline}
body[data-information-app="vacancy"] .jobs-page-top-action{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid var(--pp-line);border-radius:9px;background:var(--pp-wash);color:var(--pp-ink);font-size:14px;line-height:1.5;text-decoration:none}
body[data-information-app="vacancy"] .jobs-page-top-action:hover{border-color:var(--ui-accent);color:var(--ui-accent)}
body[data-information-app="vacancy"] .jobs-page-top .info-heading{padding:0;margin:0;border:0}
body[data-information-app="vacancy"] .jobs-page-top .info-eyebrow{display:none}
body[data-information-app="vacancy"] .jobs-page-top .info-disclaimer{margin:6px 0 0;font-size:14px;line-height:1.5}
body[data-information-app="vacancy"] .jobs-category-page-header>.jobs-category-page-filters{border:1px solid var(--pp-line);background:var(--pp-wash);box-shadow:none}
body[data-information-app="vacancy"] .jobs-category-page-header>.jobs-category-page-filters select{background:var(--pp-reading-paper);font-size:16px}
body[data-information-app="vacancy"] .jobs-category-page-header>.jobs-category-page-filters .info-button{min-height:44px;white-space:nowrap}
@media(min-width:1100px){
 #jobs-category-page .jobs-category-page-header>.jobs-category-page-filters:not(:has(select[name=state],select[name=exam])){flex-basis:540px;align-items:center}
 #jobs-category-page .jobs-category-page-header>.jobs-category-page-filters:not(:has(select[name=state],select[name=exam])) .field{display:flex;align-items:center;gap:8px}
 #jobs-category-page .jobs-category-page-filters:not(:has(select[name=state],select[name=exam])) .field>select{flex:1;min-width:0;margin-top:0}
}
@media(max-width:1099px){
 body[data-information-app="vacancy"] .info-header{grid-template-columns:repeat(12,minmax(0,1fr));gap:6px 10px;padding:8px 16px;padding-top:max(8px,env(safe-area-inset-top))}
 body[data-information-app="vacancy"] .info-header .info-brand{grid-column:1/6;grid-row:1}
 body[data-information-app="vacancy"] .info-header .info-controls{grid-column:6/-1;grid-row:1;flex-wrap:wrap}
 body[data-information-app="vacancy"] .info-header .info-nav{grid-column:1/3;grid-row:2}
 body[data-information-app="vacancy"] .info-header .info-header-search{grid-column:3/-1;grid-row:2}
 body[data-information-app="vacancy"] .info-header .info-nav>a{padding:5px 0;white-space:normal;text-align:left}
}
@media(max-width:900px){body[data-information-app="vacancy"] .info-wrap{width:calc(100% - 32px)}}
@media(max-width:780px){body[data-information-app="vacancy"] .jobs-quick-nav>a{min-height:44px;padding:8px 10px}}
@media(max-width:560px){
 body[data-information-app="vacancy"] .info-wrap{width:calc(100% - 24px)}
 body[data-information-app="vacancy"] .info-header{padding-inline:12px;gap:6px 8px}
 body[data-information-app="vacancy"] .info-header .info-brand{grid-column:1/6}
 body[data-information-app="vacancy"] .info-header .info-brand .brand-wordmark{width:132px;height:36px}
 body[data-information-app="vacancy"] .info-header .info-brand>span{font-size:14px;line-height:1.35}
 body[data-information-app="vacancy"] .info-header .info-controls{gap:4px}
 body[data-information-app="vacancy"] .info-header .info-account-name{display:none}
 body[data-information-app="vacancy"] .info-header .info-nav{grid-column:1/4}
 body[data-information-app="vacancy"] .info-header .info-header-search{grid-column:4/-1}
 body[data-information-app="vacancy"] .info-header-search input[type=search]{padding-inline:8px}
 body[data-information-app="vacancy"] .info-header-search>button{padding-inline:10px}
 body[data-information-app="vacancy"] .info-header-search>button>span{display:none}
 #jobs-category-page .jobs-category-page-header{gap:10px;margin-top:5px}
 #jobs-category-page .jobs-category-page-heading,#jobs-category-page .jobs-category-page-header>.jobs-category-page-filters{flex-basis:100%}
 #jobs-category-page .jobs-category-page-header>.jobs-category-page-filters{padding:10px}
 #jobs-category-page .jobs-category-page-header>.jobs-category-page-filters .field{flex:1 1 150px}
}

body[data-information-app="vacancy"] .jobs-page-top h1.jobs-sr{position:static;width:auto;height:auto;margin:0;padding:0;overflow:visible;clip:auto;clip-path:none;white-space:normal;border:0}
@media(max-width:560px){
 body[data-information-app="vacancy"] .jobs-page-top{gap:10px;margin-top:5px;padding-top:8px;padding-bottom:12px}
 body[data-information-app="vacancy"] .jobs-page-top-heading{flex-basis:100%}
 body[data-information-app="vacancy"] .jobs-page-top-action{padding:8px 12px}
}

/* A single vacancy scope bar controls the primary board and its update panels. */
body[data-information-app="vacancy"] .jobs-vacancy-scope{display:flex;align-items:center;gap:4px;min-width:0;max-width:100%;margin:0;padding:4px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-padding-inline:4px}
body[data-information-app="vacancy"] .jobs-vacancy-scope>button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:9px 14px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--pp-ink);font:700 14px/1.45 system-ui;white-space:nowrap;cursor:pointer}
body[data-information-app="vacancy"] .jobs-vacancy-scope>button:hover{border-color:var(--pp-line);background:var(--pp-wash)}
body[data-information-app="vacancy"] .jobs-vacancy-scope>button[aria-pressed=true]{border-color:#183f68;background:#183f68;color:#fff;box-shadow:0 2px 4px #15385812}
body[data-information-app="vacancy"] .jobs-vacancy-scope>button:focus-visible{outline:3px solid var(--ui-accent);outline-offset:-3px}
body[data-information-app="vacancy"] .jobs-vacancy-scope [data-home-updates-error]:not([hidden]){flex:0 0 100%;padding:4px 8px;margin:0;color:var(--ui-accent);white-space:normal}
body[data-information-app="vacancy"] .jobs-page-top-scoped{gap:10px 14px;padding:6px 0 12px;align-items:center}
body[data-information-app="vacancy"] .jobs-page-top-scoped>.jobs-page-top-heading{flex:0 1 auto}
body[data-information-app="vacancy"] .jobs-page-top-scoped .jobs-page-top-breadcrumb{margin:0}
body[data-information-app="vacancy"] .jobs-page-top-scoped h1.jobs-sr{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body[data-information-app="vacancy"] .jobs-page-top-scoped>.jobs-vacancy-scope{flex:1 1 650px}
body[data-information-app="vacancy"] .jobs-page-top-scoped>.jobs-page-top-action{margin-left:auto}
body[data-information-app="vacancy"] .jobs-category-page-header>.jobs-vacancy-scope{flex:1 1 560px}
body[data-information-app="vacancy"] #jobs-category-page .jobs-category-page-header:has(>.jobs-vacancy-scope)>.jobs-category-page-filters{flex:1 1 100%;margin:0;padding:8px 10px}
body[data-information-app="vacancy"][data-theme=dark] .jobs-vacancy-scope>button[aria-pressed=true]{background:#245782;border-color:#82afd6;color:#fff}
@media(max-width:900px){body[data-information-app="vacancy"] .jobs-page-top-scoped>.jobs-vacancy-scope{order:3;flex-basis:100%}}
@media(max-width:560px){
 body[data-information-app="vacancy"] .jobs-vacancy-scope>button{padding:9px 11px}
 body[data-information-app="vacancy"] .jobs-page-top-scoped>.jobs-page-top-heading{flex-basis:auto}
 body[data-information-app="vacancy"] .jobs-category-page-header>.jobs-vacancy-scope{flex-basis:100%}
}

/* The body/exam name and its vacancy total have distinct, non-blue surfaces. */
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip{--jobs-featured-card-width:196px;--jobs-featured-card-height:212px}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy){display:grid;grid-template-rows:minmax(0,1fr) 66px;gap:10px;width:var(--jobs-featured-card-width);height:var(--jobs-featured-card-height);min-width:0;min-height:0;padding:10px;box-sizing:border-box;border:1px solid #d9ccd5;border-radius:12px;background:#fffdfb;color:#513747;text-decoration:none;text-align:center;box-shadow:0 2px 6px #4e34460a;overflow-wrap:anywhere}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:0;padding:8px 5px;border-radius:7px;background:#f1e9ee;color:#513747}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-body .jobs-featured-label{background:#68435f;color:#fff8fc}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-subtitle{color:#715969}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-body .jobs-featured-subtitle{color:#f5e6ef}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-count-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:6px 4px;border:1px solid #e8d5ad;border-radius:7px;background:#fff1d8;color:#705018;font-variant-numeric:tabular-nums}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy):visited{color:#513747}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy):hover{border-color:#946b86;box-shadow:0 4px 12px #4e34461c}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy,.jobs-featured-panels):focus-visible{outline-color:#946b86}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-more{grid-template-rows:1fr 30px;background:#f1e9ee;color:#513747}
body[data-information-app="vacancy"][data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy){border-color:#6c5165;background:#282129;color:#f8eaf3}
body[data-information-app="vacancy"][data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-label{background:#43303f;color:#f8eaf3}
body[data-information-app="vacancy"][data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-body .jobs-featured-label{background:#67435e;color:#fff8fc}
body[data-information-app="vacancy"][data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-subtitle{color:#d9bfd0}
body[data-information-app="vacancy"][data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-count-box{border-color:#80683f;background:#443622;color:#ffe1a6}
body[data-information-app="vacancy"][data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy):visited{color:#f8eaf3}
@media(max-width:600px){
 body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip{--jobs-featured-card-width:152px;--jobs-featured-card-height:200px}
 body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip :is(.jobs-featured-body,.jobs-featured-vacancy){padding:8px;gap:8px;grid-template-rows:minmax(0,1fr) 64px}
 body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-label{padding:7px 3px}
 body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip .jobs-featured-more{grid-template-rows:1fr 30px}
}
@media(max-width:360px){body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-strip{--jobs-featured-card-width:140px}}
:is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card{--card-accent:#74516a;--card-tint:#f1e9ee;border-color:#d9ccd5;background:#fffdfb;color:#513747;border-radius:12px}
:is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card .jobs-exam-name{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;min-height:58px;padding:9px 7px;border-radius:7px;background:#f1e9ee;color:#513747;text-align:center}
:is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card .jobs-vacancy-panel{border-color:#e8d5ad;background:#fff1d8;color:#705018;border-radius:7px}
:is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card :is(.jobs-vacancy-number,.jobs-vacancy-label,.jobs-vacancy-detail){color:#705018}
:is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card:visited{color:#513747}
:is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card:hover{border-color:#946b86}
body[data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card{--card-accent:#d9bfd0;--card-tint:#43303f;background:#282129;border-color:#6c5165;color:#f8eaf3}
body[data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card .jobs-exam-name{background:#43303f;color:#f8eaf3}
body[data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card .jobs-vacancy-panel{background:#443622;border-color:#80683f;color:#ffe1a6}
body[data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card :is(.jobs-vacancy-number,.jobs-vacancy-label,.jobs-vacancy-detail){color:#ffe1a6}
body[data-theme=dark] :is(#jobs-home-portal,#jobs-category-page) .jobs-exam-card:visited{color:#f8eaf3}
body[data-information-app="vacancy"] .jobs-vacancy-scope:has([data-home-updates-error]:not([hidden])){flex-wrap:wrap}

/* Native Jobs frames reserve their own content height across scope changes. */
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) :is(.jobs-category-board,.jobs-exam-main,.jobs-exam-notifications,.jobs-notice-board){height:auto;min-height:0;align-self:start}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-notice-board{display:block;position:static}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-notice-board .jobs-notice-scroll{--jobs-notice-fallback-height:324px;height:auto;min-height:0;max-height:var(--jobs-notice-preview-height,var(--jobs-notice-fallback-height));overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-notice-headlines>li{box-sizing:border-box;min-height:0}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-notice-headlines>li>a{padding-block:7px;min-height:44px}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-notice-headlines{margin-block:0}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-notice-board-empty{margin:12px 15px!important}
body[data-information-app="vacancy"] #jobs-home-featured{margin:0 0 14px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);min-width:0}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-featured-panel{grid-template-columns:minmax(0,1fr)}

/* Vacancy reader: a clear reading hierarchy, independent of the listing rails. */
body[data-information-app="vacancy"] .jobs-notice-detail{--jobs-detail-plum:#64366f;--jobs-detail-plum-wash:#f5eef8;--jobs-detail-teal:#14645e;--jobs-detail-teal-wash:#eaf6f2;--jobs-detail-ochre:#805310;--jobs-detail-ochre-wash:#fff4dc;--jobs-detail-stripe:#f7f9fb;max-width:1120px;padding:clamp(16px,2.3vw,28px);font-size:18px;line-height:1.75;border:1px solid var(--pp-line);border-top:4px solid var(--jobs-detail-plum);border-radius:16px;background:var(--pp-reading-paper);box-shadow:0 6px 24px #24304708}
body[data-information-app="vacancy"] #info-main:has(.jobs-notice-detail)>.jobs-page-top{max-width:1120px;margin:12px auto 18px;padding:10px 0 14px}
body[data-information-app="vacancy"] #info-main:has(.jobs-notice-detail)>.jobs-page-top h1{font-size:clamp(25px,2.7vw,34px);line-height:1.35;letter-spacing:-.025em}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-breadcrumb{margin-bottom:8px;font-size:15px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-meta{gap:8px;margin-bottom:16px;font-size:15px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-meta .info-badge{padding:5px 11px;border-radius:7px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero{gap:20px;padding:22px;border-color:var(--pp-line);border-radius:12px;background:var(--jobs-detail-plum-wash)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero:not(:has(.jobs-notice-count)){grid-template-columns:minmax(0,1fr)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-label{margin-bottom:6px;font-size:15px;letter-spacing:.02em}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-post-name{color:var(--jobs-detail-plum);font-size:clamp(26px,3vw,36px);line-height:1.35;text-shadow:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-count{padding:15px 16px;background:var(--jobs-detail-ochre-wash);border-color:#d5b66c;border-radius:10px;animation:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-count-value{color:var(--jobs-detail-ochre);font-size:clamp(35px,4vw,48px);line-height:1.2;text-shadow:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero[data-current=true] .jobs-notice-count{background:var(--jobs-detail-ochre-wash);border-color:#d5b66c;animation:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero[data-current=true] :is(.jobs-notice-count-value,.jobs-notice-post-name){text-shadow:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{gap:10px;margin-top:16px;border:0;border-radius:0;overflow:visible;align-items:start}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary>div{padding:14px 16px;border:1px solid var(--pp-line);border-radius:9px;background:var(--pp-wash)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary dt{font-size:15px;line-height:1.5}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary dd{font-size:18px;line-height:1.65}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-dates{font-size:15px;gap:7px 22px;margin:15px 0 20px;padding-bottom:14px;line-height:1.6}
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-notice-reading,.jobs-post-content,.info-reading,.jobs-post-table,.info-facts dd){font-size:18px;line-height:1.75}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-content{margin:0}
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview){--jobs-section-ink:var(--jobs-detail-teal);--jobs-section-wash:var(--jobs-detail-teal-wash);padding:18px;margin:0 0 18px;border:1px solid var(--pp-line);border-radius:11px;background:var(--pp-reading-paper);min-width:0}
body[data-information-app="vacancy"] .jobs-notice-detail :is([data-post-section="quick-summary"],[data-post-section="overview"],[data-post-section="qualification"],[data-post-section="essential-qualification"],[data-post-section="selection-process"],.jobs-notice-qualification,.jobs-notice-overview){--jobs-section-ink:var(--jobs-detail-plum);--jobs-section-wash:var(--jobs-detail-plum-wash)}
body[data-information-app="vacancy"] .jobs-notice-detail :is([data-post-section="important-dates"],[data-post-section="application-fee"],[data-post-section="age-limit"],[data-post-section="latest-update"],[data-post-section="status-summary"],.jobs-notice-lifecycle){--jobs-section-ink:var(--jobs-detail-ochre);--jobs-section-wash:var(--jobs-detail-ochre-wash)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview)>h2{margin:-18px -18px 16px;padding:12px 17px;border:0;border-left:4px solid var(--jobs-section-ink);border-radius:10px 10px 0 0;background:var(--jobs-section-wash);color:var(--jobs-section-ink);font-size:23px;line-height:1.4;letter-spacing:-.015em;overflow-wrap:break-word}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(p,ul,ol){margin-block:12px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview)>:last-child{margin-bottom:0}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .info-facts>div{gap:10px 18px;padding-block:12px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .info-facts dt{font-size:16px}
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-table-wrap,.jobs-post-table-scroll){max-width:100%;margin:12px 0 0;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--pp-line);border-radius:8px;scrollbar-width:thin;scrollbar-gutter:stable}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:17px;line-height:1.65}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td){min-width:110px;padding:12px 14px;vertical-align:top;overflow-wrap:anywhere;hyphens:none;border-color:var(--pp-line)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:var(--jobs-section-wash,var(--jobs-detail-teal-wash));color:var(--jobs-section-ink,var(--jobs-detail-teal));font-size:16px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table tbody tr:nth-child(even){background:var(--jobs-detail-stripe)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading a,body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources a{color:var(--jobs-detail-teal);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-links{gap:10px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-links a{padding:8px 12px;border:1px solid var(--pp-line);border-radius:7px;background:var(--pp-wash)}
body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources{padding:18px;border:1px solid var(--pp-line);border-left:4px solid var(--jobs-detail-teal);border-radius:10px;background:var(--pp-wash);font-size:17px;line-height:1.7}
body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources h2{margin:0 0 12px;font-size:23px;line-height:1.4}
body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources ul{margin-block:10px}
body[data-information-app="vacancy"] .jobs-notice-detail .info-source-url{font-size:15px;line-height:1.6}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-footer .info-callout{margin:18px 0 2px;padding:14px 16px;background:var(--jobs-detail-ochre-wash);border-color:var(--jobs-detail-ochre);font-size:16px;line-height:1.75}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail{--jobs-detail-plum:#e3b6eb;--jobs-detail-plum-wash:#34283d;--jobs-detail-teal:#9ddcd0;--jobs-detail-teal-wash:#203d3b;--jobs-detail-ochre:#f3d08b;--jobs-detail-ochre-wash:#3c321f;--jobs-detail-stripe:#202d39}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail :is(.jobs-notice-post-name,.jobs-notice-reading :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview)>h2){color:var(--jobs-section-ink,var(--jobs-detail-plum))}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail .jobs-notice-count-value{color:var(--jobs-detail-ochre)}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail .jobs-notice-hero{background:var(--jobs-detail-plum-wash);border-color:var(--pp-line)}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:var(--jobs-section-wash,var(--jobs-detail-teal-wash));color:var(--jobs-section-ink,var(--jobs-detail-teal))}
@media(max-width:640px){
 body[data-information-app="vacancy"] .jobs-notice-detail{padding:14px;font-size:16px;border-radius:12px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero{grid-template-columns:minmax(0,1fr);gap:15px;padding:16px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-count{padding:11px 14px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{grid-template-columns:minmax(0,1fr);gap:8px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary>div{padding:12px 14px;border:1px solid var(--pp-line)}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary dd{font-size:17px}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-notice-reading,.jobs-post-content,.info-reading,.jobs-post-table,.info-facts dd){font-size:16px;line-height:1.75}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview){padding:14px;margin-bottom:14px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview)>h2{margin:-14px -14px 12px;padding:11px 13px;font-size:20px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td){padding:10px 11px;min-width:104px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{font-size:15px}
 body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources{padding:14px;font-size:16px}
 body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources h2{font-size:20px}
}
/* Browser Save as PDF: named page avoids changing other services' exports. */
@page pp-jobs-notice{size:A4;margin:14mm 13mm 15mm}
@media print{
 body[data-information-app="vacancy"]:has(.jobs-notice-detail){page:pp-jobs-notice;--pp-ink:#18212b;--pp-muted:#43505d;--pp-line:#c9ced4;--pp-reading-paper:#fff;--pp-wash:#f5f6f8;margin:0!important;padding:0!important;background:#fff!important;color:#18212b!important;font-size:11.5pt;line-height:1.5;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) :is(.info-skip,.info-controls,.info-search-row,.info-nav,.info-header-search,#jobs-quick-nav,.jobs-page-top-action,.jobs-page-top-breadcrumb,.jobs-notice-breadcrumb,.info-footer,.info-editor-ui,.ip-launch,.ip-studio,.ip-selection){display:none!important}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) .info-header{display:block!important;position:static!important;margin:0 0 4mm!important;padding:0 0 3mm!important;width:100%!important;min-height:0!important;border-bottom:1px solid #c9ced4;box-shadow:none;background:#fff!important}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) .info-header-row{display:block!important;margin:0!important;padding:0!important;width:100%!important}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) .info-brand{display:flex;align-items:center;gap:4mm;width:auto;max-width:none;color:#18212b!important}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) .info-brand .brand-wordmark{width:38mm!important;height:auto!important}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) .info-brand>span{font-size:10pt!important;border:0!important;margin:0!important;padding:0!important}
 body[data-information-app="vacancy"]:has(.jobs-notice-detail) #info-main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}
 body[data-information-app="vacancy"] #info-main:has(.jobs-notice-detail)>.jobs-page-top{display:block;max-width:none;margin:0 0 4mm!important;padding:0 0 3mm!important;break-after:avoid;page-break-after:avoid}
 body[data-information-app="vacancy"] #info-main:has(.jobs-notice-detail)>.jobs-page-top h1{font-size:19pt!important;line-height:1.3;color:#18212b!important}
 body[data-information-app="vacancy"] .jobs-notice-detail{--jobs-detail-plum:#64366f!important;--jobs-detail-plum-wash:#f5eef8!important;--jobs-detail-teal:#14645e!important;--jobs-detail-teal-wash:#eaf6f2!important;--jobs-detail-ochre:#805310!important;--jobs-detail-ochre-wash:#fff4dc!important;--jobs-detail-stripe:#f7f9fb!important;display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#18212b!important;font-size:11.5pt;line-height:1.5;overflow:visible!important}
 body[data-information-app="vacancy"] .jobs-notice-detail *{box-shadow:none!important;text-shadow:none!important;animation:none!important;transition:none!important}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(h2,h3){break-after:avoid;page-break-after:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(p,li,dd){orphans:3;widows:3}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-meta{margin-bottom:3mm;gap:2mm;font-size:10pt;break-after:avoid;page-break-after:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-meta .info-badge{padding:1mm 2mm;background:#f5f6f8!important;color:#18212b!important;border-color:#c9ced4!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero{display:grid;grid-template-columns:minmax(0,1fr) 43mm;padding:4mm;gap:4mm;background:#f5eef8!important;border-color:#d9c9df!important;break-inside:avoid;page-break-inside:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-post-name{font-size:20pt;line-height:1.3;color:#4f285b!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-label{font-size:10pt;line-height:1.4;color:#43505d!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-count{flex-direction:column;gap:1mm;padding:3mm;background:#fff4dc!important;border-color:#d5b66c!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-count-value{font-size:26pt;color:#805310!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2mm;margin:3mm 0 0}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary>div{padding:2.5mm 3mm;border:1px solid #c9ced4!important;background:#f5f6f8!important;break-inside:avoid;page-break-inside:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary :is(dt,dd){font-size:11pt;line-height:1.5;color:#18212b!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-dates{margin:3mm 0 4mm;padding-bottom:2mm;font-size:10pt;color:#43505d!important}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-notice-reading,.jobs-post-content,.info-reading,.info-facts dd){font-size:11.5pt!important;line-height:1.6!important}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview){margin:0 0 4mm!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;break-inside:auto;page-break-inside:auto;box-decoration-break:clone}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(.jobs-post-section,.jobs-notice-section,.jobs-notice-overview)>h2{margin:0 0 2mm!important;padding:2mm 3mm!important;border-radius:0!important;border-left:1mm solid var(--jobs-section-ink)!important;background:var(--jobs-section-wash)!important;color:#18212b!important;font-size:13pt!important;line-height:1.4!important;break-after:avoid;page-break-after:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(p,ul,ol){margin-block:2mm}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .info-facts>div{padding-block:2mm;gap:2mm 4mm}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .info-facts dt{font-size:11pt!important;color:#43505d!important}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-table-wrap,.jobs-post-table-scroll){display:block;overflow:visible!important;max-height:none!important;height:auto!important;margin:2mm 0 0;border-radius:0;break-inside:auto;page-break-inside:auto}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{width:100%!important;min-width:0!important;table-layout:fixed;font-size:11pt!important;line-height:1.45!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table thead{display:table-header-group}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tfoot{display:table-footer-group}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tr{break-inside:avoid;page-break-inside:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td){min-width:0!important;padding:2.3mm 2.5mm!important;font-size:11pt!important;line-height:1.45!important;color:#18212b!important;overflow-wrap:anywhere}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:var(--jobs-section-wash)!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table tbody tr:nth-child(even){background:#f7f9fb!important}
 body[data-information-app="vacancy"] .jobs-notice-detail a{min-height:0!important;color:#18212b!important;text-decoration:underline}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-links{gap:2mm}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-links a{padding:1mm 0;border:0;background:transparent}
 body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources{margin-top:4mm;padding:3mm;background:#f5f6f8!important;font-size:11pt;color:#18212b!important;break-inside:auto;page-break-inside:auto}
 body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources h2{font-size:13pt;color:#18212b!important}
 body[data-information-app="vacancy"] .jobs-notice-detail>.info-sources li{margin-bottom:2mm;break-inside:avoid;page-break-inside:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail :is(.info-source-url,.info-meta){font-size:10pt!important;color:#43505d!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-footer{display:block!important;margin:3mm 0 0}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-footer .info-callout{display:block!important;margin:0!important;padding:3mm;background:#fff4dc!important;color:#18212b!important;font-size:11pt;line-height:1.6;break-inside:avoid;page-break-inside:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-footer>.info-text-link{display:none!important}
}

/* 20 October: the approved vacancy reference, using the shared reader. */
body[data-information-app="vacancy"] .jobs-notice-detail{max-width:1280px;margin-inline:auto;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;--jobs-detail-navy:#102d53}
body[data-information-app="vacancy"] #info-main:has(.jobs-notice-detail)>.jobs-page-top{max-width:1280px;margin-bottom:12px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-breadcrumb{display:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-meta{margin:0 0 12px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero{background:var(--pp-reading-paper);border:1px solid var(--pp-line);border-top:4px solid var(--jobs-detail-navy);padding:24px;margin:0 0 22px;border-radius:12px;box-shadow:0 3px 12px #102d530a}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-post-name{font-size:clamp(24px,2.5vw,32px);color:var(--jobs-detail-navy)}
body[data-information-app="vacancy"] .jobs-detail-authority{margin:8px 0 12px;color:var(--pp-muted);font-size:16px}
body[data-information-app="vacancy"] .jobs-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start}
body[data-information-app="vacancy"] .jobs-detail-main{min-width:0}
body[data-information-app="vacancy"] .jobs-detail-sidebar{position:sticky;top:18px;display:grid;gap:16px;min-width:0}
body[data-information-app="vacancy"] .jobs-detail-sidebar>section,body[data-information-app="vacancy"] .jobs-detail-jump{border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);overflow:hidden}
body[data-information-app="vacancy"] .jobs-detail-status{padding:18px;border-top:4px solid #8a6119!important}
body[data-information-app="vacancy"] .jobs-detail-status[data-current=true]{border-top-color:#1b8a59!important}
body[data-information-app="vacancy"] .jobs-detail-status :is(p,strong){display:block;margin:0 0 10px;line-height:1.5;font-size:15px}
body[data-information-app="vacancy"] .jobs-detail-status strong{font-size:23px;color:var(--pp-ink)}
body[data-information-app="vacancy"] .jobs-detail-status .jobs-detail-status-label{color:var(--jobs-detail-teal);font-size:18px}
body[data-information-app="vacancy"] .jobs-detail-extended{color:#117749;background:#e8f7ed;border-color:#a8d7bb}
body[data-information-app="vacancy"] .jobs-detail-jump h2,body[data-information-app="vacancy"] .jobs-detail-official-actions h2{font-size:17px;margin:0;padding:14px 16px;color:#fff;background:var(--jobs-detail-navy);line-height:1.4}
body[data-information-app="vacancy"] .jobs-detail-jump{max-height:calc(100dvh - 250px);overflow:auto;scrollbar-width:thin}
body[data-information-app="vacancy"] .jobs-detail-jump a{display:block;padding:10px 16px;font-size:15px;line-height:1.5;min-height:44px;color:var(--pp-ink);text-decoration:none;border-bottom:1px solid var(--pp-line)}
body[data-information-app="vacancy"] .jobs-detail-jump a:hover,body[data-information-app="vacancy"] .jobs-detail-jump a:focus-visible{background:var(--pp-wash);color:var(--ui-accent)}
body[data-information-app="vacancy"] .jobs-detail-actions{display:flex;flex-wrap:wrap;gap:10px}
body[data-information-app="vacancy"] .jobs-detail-actions .info-button,body[data-information-app="vacancy"] .jobs-detail-official-actions .info-button{min-height:44px;padding:10px 16px;border-radius:7px;font-size:15px;line-height:1.5;color:#fff;background:#245a94;text-decoration:none}
body[data-information-app="vacancy"] .jobs-detail-actions .jobs-detail-action-notification,body[data-information-app="vacancy"] .jobs-detail-official-actions .jobs-detail-action-notification{background:#c56812;color:#fff}
body[data-information-app="vacancy"] .jobs-detail-official-actions .info-button{display:flex;margin:12px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-summary{padding:20px;margin-bottom:18px}
body[data-information-app="vacancy"] .jobs-detail-summary>h2{font-size:23px;margin:0 0 16px;padding-left:13px;border-left:4px solid #3879ba;color:var(--jobs-detail-navy);line-height:1.4}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;gap:0;border:1px solid var(--pp-line);border-radius:8px;overflow:hidden}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary>div{min-width:0;border:0;border-right:1px solid var(--pp-line);border-bottom:1px solid var(--pp-line);border-radius:0;background:transparent;padding:14px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary :is(dt,dd){overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary dt{font-size:14px;color:var(--pp-muted);margin-bottom:5px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary dd{font-size:16px;line-height:1.6}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{color:#fff;background:var(--jobs-detail-navy)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{min-width:440px;font-size:16px;line-height:1.65}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table:has(th:nth-child(5)){min-width:800px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table:has(th:nth-child(7)){min-width:1040px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td):first-child{min-width:145px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-section{scroll-margin-top:24px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading :is(.jobs-post-section,.jobs-notice-section)>h2{font-size:21px}
body[data-information-app="vacancy"] .jobs-notice-detail .info-sources{padding:18px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);font-size:16px;line-height:1.6}
body[data-information-app="vacancy"] .jobs-notice-detail .info-sources h2{font-size:21px;margin-top:0}
body[data-information-app="vacancy"] .jobs-notice-editor-dialog{width:min(1100px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;overflow:auto;border:1px solid var(--pp-line);border-radius:12px;color:var(--pp-ink);background:var(--pp-reading-paper)}
body[data-information-app="vacancy"] .jobs-notice-editor-dialog::backdrop{background:#0b1b36a8}
body[data-information-app="vacancy"] .jobs-notice-editor-toolbar{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--pp-reading-paper);border-bottom:1px solid var(--pp-line)}
body[data-information-app="vacancy"] .jobs-notice-editor-toolbar :is(h2,p){margin:0;font-size:20px}
body[data-information-app="vacancy"] .jobs-notice-editor-content{padding:18px;min-width:0}
body[data-information-app="vacancy"] .jobs-notice-editor-dialog :is(input,textarea,select){max-width:100%;font-size:16px}
body[data-information-app="vacancy"] .jobs-notice-editor-dialog .info-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
body[data-information-app="vacancy"] .jobs-notice-editor-restore{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));right:calc(20px + env(safe-area-inset-right));min-height:48px;z-index:1000;max-width:calc(100vw - 40px);box-shadow:0 4px 18px #102d5333}
body[data-information-app="vacancy"] .jobs-detail-owner-edit{margin-top:18px}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail{--jobs-detail-navy:#a6c8f1}
body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-jump h2,body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-official-actions h2,body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:#173659;color:#eaf2fc}
body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-extended{background:#173b2d;color:#a8e3bc}
@media(max-width:1000px){body[data-information-app="vacancy"] .jobs-detail-layout{grid-template-columns:minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-detail-sidebar{position:static;grid-row:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-detail-jump{max-height:230px}body[data-information-app="vacancy"] .jobs-detail-official-actions{grid-column:1/-1}body[data-information-app="vacancy"] .jobs-detail-official-actions .info-button{display:inline-flex}}
@media(max-width:600px){body[data-information-app="vacancy"] .jobs-detail-sidebar{grid-template-columns:minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-detail-jump{max-height:180px}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-hero{padding:17px}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{grid-template-columns:minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-summary{padding:14px}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{min-width:440px}body[data-information-app="vacancy"] .jobs-detail-status strong{font-size:21px}body[data-information-app="vacancy"] .jobs-notice-editor-toolbar{padding:12px}body[data-information-app="vacancy"] .jobs-notice-editor-content{padding:12px}}
@media print{body[data-information-app="vacancy"] .jobs-detail-layout{display:block}body[data-information-app="vacancy"] :is(.jobs-detail-sidebar,.jobs-detail-actions,.jobs-detail-owner-edit,.jobs-notice-editor-dialog,.jobs-notice-editor-restore){display:none!important}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{min-width:0!important}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:#eaf0f6!important;color:#18212b!important}}
/* Final confirmed screenshot: one title card, overview inset and compact tiles. */
body[data-information-app="vacancy"] .jobs-detail-heading{margin-bottom:22px;border:1px solid var(--pp-line);border-top:4px solid var(--jobs-detail-navy);border-radius:11px;background:var(--pp-reading-paper);box-shadow:0 3px 12px #102d530a}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-meta{padding:16px 22px 0;margin-bottom:0}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-hero{border:0;margin:0;box-shadow:none;padding-top:12px;grid-template-columns:minmax(0,1fr)}
body[data-information-app="vacancy"] .jobs-detail-title{font-size:clamp(25px,2.8vw,36px);line-height:1.3;letter-spacing:-.025em;margin:0 0 9px;color:var(--jobs-detail-navy);overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-label{display:inline;margin-right:7px;font-size:14px}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-post-name{display:inline;font-size:16px;color:var(--pp-ink);line-height:1.6;margin:0}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-detail-authority{margin:8px 0 12px}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count{display:flex;align-items:center;justify-content:flex-start;gap:10px;border:0;border-radius:0;padding:0;background:transparent!important;box-shadow:none}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count-value{font-size:20px;color:var(--jobs-detail-teal);line-height:1.4}
body[data-information-app="vacancy"] .jobs-detail-overview{padding:16px;margin-top:16px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-wash);font-size:16px;line-height:1.7}
body[data-information-app="vacancy"] .jobs-detail-overview h3{font-size:17px;margin:0 0 8px;color:var(--jobs-detail-navy)}
body[data-information-app="vacancy"] .jobs-detail-overview p{margin:8px 0}
body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="before-apply"]>ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:0}
body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="before-apply"] li{padding:14px;border:1px solid var(--pp-line);background:var(--pp-wash);border-radius:8px;font-size:15px;line-height:1.65;overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-eligibility-disclosure{padding:0;border:1px solid var(--pp-line);border-radius:8px;margin:10px 0;background:var(--pp-reading-paper)}
body[data-information-app="vacancy"] .jobs-eligibility-disclosure>summary{cursor:pointer;padding:13px 15px;min-height:44px;background:var(--pp-wash);font-size:16px;line-height:1.6;color:var(--pp-ink)}
body[data-information-app="vacancy"] .jobs-eligibility-disclosure>p{padding:0 16px 8px;margin-block:12px}
@media(min-width:1200px){body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="before-apply"]>ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-meta{padding:14px 16px 0}body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="before-apply"]>ul{grid-template-columns:minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-detail-title{font-size:25px}body[data-information-app="vacancy"] .jobs-detail-overview{padding:13px}}
@media print{body[data-information-app="vacancy"] .jobs-detail-heading{border:0;box-shadow:none}body[data-information-app="vacancy"] .jobs-detail-title{font-size:20pt;color:#18212b}body[data-information-app="vacancy"] .jobs-eligibility-disclosure>p{display:block}body[data-information-app="vacancy"] .jobs-eligibility-disclosure{content-visibility:visible}}
@media print{body[data-information-app="vacancy"] .jobs-eligibility-disclosure::details-content{display:block;content-visibility:visible!important}body[data-information-app="vacancy"] .jobs-eligibility-disclosure>*:not(summary){display:block!important}}
body[data-information-app="vacancy"] .jobs-detail-sidebar>.jobs-detail-status{display:block}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count{flex-direction:row;min-height:0;height:auto;text-align:left;align-self:start}

/* 21 October: one source-backed section per subject, open responsive tables. */
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-layout{display:block}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-hero{grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:16px 28px;align-items:center}
body[data-information-app="vacancy"] .jobs-detail-title{grid-column:1/-1;margin:0;color:var(--jobs-detail-navy);font-size:32px;line-height:1.35}
body[data-information-app="vacancy"] .jobs-detail-metrics{display:grid;gap:10px;min-width:0;align-self:center}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-hero .jobs-notice-count{justify-content:center;align-items:center;gap:8px;padding:12px 16px;border:2px solid var(--jobs-detail-navy);border-radius:20px;text-align:center;min-height:72px}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count .jobs-notice-label{margin:0;font-size:24px;color:var(--jobs-detail-navy)}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count-value{font-size:34px;color:var(--jobs-detail-navy)}
body[data-information-app="vacancy"] .jobs-detail-deadline{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 8px;padding:8px 10px;border:1px solid var(--pp-line);border-radius:9px;font-size:16px;color:var(--pp-ink);background:var(--pp-wash)}
body[data-information-app="vacancy"] .jobs-detail-contents{margin:0 0 20px;border:1px solid var(--pp-line);border-radius:9px;background:var(--pp-reading-paper)}
body[data-information-app="vacancy"] .jobs-detail-contents>summary{padding:12px 16px;cursor:pointer;color:var(--jobs-detail-navy);min-height:44px}
body[data-information-app="vacancy"] .jobs-detail-contents .jobs-detail-jump{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 14px;max-height:none;border:0;box-shadow:none;background:transparent}
body[data-information-app="vacancy"] .jobs-detail-contents .jobs-detail-jump>a{padding:7px 10px;border:1px solid var(--pp-line);border-radius:6px;font-size:14px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-summary{padding:16px 20px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-overview{border:0;padding:12px 0 0;background:transparent}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-overview:first-child{padding-top:0}
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-section p,.jobs-post-section li,.jobs-detail-overview p,.jobs-post-table td){text-align:start;text-align-last:auto;hyphens:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table-wrap{width:100%;max-width:100%;overflow:visible}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table,
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table:has(th:nth-child(5)),
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table:has(th:nth-child(7)){width:auto;max-width:100%;min-width:0;table-layout:auto}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td){min-width:0;max-width:none;overflow-wrap:anywhere;word-break:normal;padding:12px;vertical-align:top}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td):first-child{min-width:0;text-align:left}
body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="qualification"] .jobs-post-table :is(th,td):first-child,
body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="salary"] .jobs-post-table :is(th,td):first-child{width:auto}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td::before{display:none}
body[data-information-app="vacancy"] .jobs-post-block+.jobs-post-block{margin-top:16px}
body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-title,
body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-contents>summary,
body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-heading .jobs-notice-count :is(.jobs-notice-label,.jobs-notice-count-value){color:#e5effc}
@media(max-width:850px){
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-hero{grid-template-columns:minmax(0,1fr)}
 body[data-information-app="vacancy"] .jobs-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}
 body[data-information-app="vacancy"] .jobs-detail-title{font-size:28px}
}
@media(max-width:900px){
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{display:block;border:0}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tbody{display:grid;gap:14px}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tbody tr{display:block;border:1px solid var(--pp-line);border-radius:8px;overflow:visible;background:var(--pp-reading-paper)}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td,
 body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="qualification"] .jobs-post-table td:first-child,
 body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="salary"] .jobs-post-table td:first-child{display:block;width:auto;padding:10px 12px;border:0;border-bottom:1px solid var(--pp-line);text-align:start}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td:last-child{border-bottom:0}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td::before{display:block;content:attr(data-label);margin-bottom:4px;color:var(--pp-muted);font-size:14px;text-align:left}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td:first-child{background:var(--pp-wash);text-align:left;color:var(--pp-ink)}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td:first-child::before{color:var(--pp-muted)}
}
@media(max-width:480px){
 body[data-information-app="vacancy"] .jobs-detail-title{font-size:25px}
 body[data-information-app="vacancy"] .jobs-detail-metrics{grid-template-columns:minmax(0,1fr);gap:8px}
 body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count{min-height:60px;padding:8px 12px}
 body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count .jobs-notice-label{font-size:22px}
 body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-count-value{font-size:30px}
}
@media print{
 body[data-information-app="vacancy"] .jobs-detail-contents{display:none!important}
 body[data-information-app="vacancy"] .jobs-detail-metrics{break-inside:avoid}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{display:table!important;table-layout:auto!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table thead{display:table-header-group!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important;overflow:visible!important;white-space:normal!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tbody{display:table-row-group!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tbody tr{display:table-row!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td{display:table-cell!important;width:auto!important}
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td::before{display:none!important}
}

/* Owner's official-notice table references: plain headings and clear rules. */
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-section>h2{margin:0 0 16px;padding:0 0 12px;border:0;border-bottom:1px solid var(--pp-line);border-radius:0;background:transparent;color:var(--pp-ink);font-size:22px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table-wrap{border:0;border-radius:0;scrollbar-gutter:auto}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{border-collapse:collapse;border:1px solid var(--pp-muted)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td){border:1px solid var(--pp-muted);background:transparent}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:var(--pp-reading-paper);color:var(--pp-ink);text-align:start;line-height:1.5}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table tbody tr:nth-child(even){background:transparent}
@media(max-width:900px){body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table{border:0}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td{border:0;border-bottom:1px solid var(--pp-line)}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td:last-child{border:0}}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td.jobs-post-cell-merged{vertical-align:middle}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td.jobs-post-cell-continuation{display:none}
@media(max-width:900px){body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td.jobs-post-cell-continuation{display:block}body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td.jobs-post-cell-merged{vertical-align:top}}
@media print{body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td.jobs-post-cell-continuation{display:none!important}}

/* B1: compact open navigation, readable alignment and content-sized columns. */
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-label{display:block;margin-right:0;font-size:15px}
body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-post-name{display:block;margin:5px 0 10px;font-size:29px;line-height:1.35;color:var(--jobs-detail-navy)}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-hero .jobs-notice-count{background:#116c63!important;border-color:#116c63;border-radius:14px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-count :is(.jobs-notice-label,.jobs-notice-count-value){color:#fff}
body[data-information-app="vacancy"] .jobs-detail-deadline{background:#fff0d4;border-color:#cb8418;color:#704205}
body[data-information-app="vacancy"] .jobs-detail-deadline strong{color:inherit}
body[data-information-app="vacancy"] .jobs-detail-contents>summary{padding:10px 14px;min-height:40px;background:var(--pp-wash)}
body[data-information-app="vacancy"] .jobs-detail-contents .jobs-detail-jump{gap:7px;padding:10px 13px 13px}
body[data-information-app="vacancy"] .jobs-detail-contents .jobs-detail-jump>a{display:inline-flex;align-items:center;min-height:36px;padding:6px 9px;line-height:1.45}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td){text-align:start;text-align-last:auto}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td).jobs-post-col-numeric,
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td).jobs-post-col-code{width:1%;white-space:nowrap;text-align:center}
body[data-information-app="vacancy"] .jobs-notice-detail [data-post-section="salary"] .jobs-post-table :is(th,td):first-child{width:auto}
body[data-information-app="vacancy"][data-theme=dark] .jobs-detail-deadline{background:#443216;border-color:#b88b42;color:#ffe0a7}
@media(min-width:1000px){body[data-information-app="vacancy"] .jobs-detail-overview p{text-align:justify;text-align-last:start}}
@media(max-width:900px){
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td).jobs-post-col-numeric,
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td).jobs-post-col-code{width:auto;white-space:normal;text-align:start}
 body[data-information-app="vacancy"] .jobs-detail-contents .jobs-detail-jump>a{min-height:44px}
}
@media(max-width:600px){body[data-information-app="vacancy"] .jobs-detail-heading .jobs-notice-post-name{font-size:26px}}

/* Owner correction: restore section navigation to the desktop right sidebar. */
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-layout-with-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-template-areas:"reading sections";gap:22px;align-items:start}
body[data-information-app="vacancy"] .jobs-detail-layout-with-sidebar>.jobs-detail-main{grid-area:reading}
body[data-information-app="vacancy"] .jobs-detail-layout-with-sidebar>.jobs-detail-sidebar{grid-area:sections}
body[data-information-app="vacancy"] .jobs-detail-sidebar{grid-template-columns:minmax(0,1fr)}
body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-contents{margin:0;overflow:hidden}
body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-jump{display:flex;flex-direction:column;flex-wrap:nowrap;max-height:calc(100dvh - 100px);overflow-y:auto;padding:8px;gap:5px}
body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-jump>a{display:flex;min-height:40px;padding:8px 10px}
@media(max-width:1000px){
 body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-layout-with-sidebar{grid-template-columns:minmax(0,1fr);grid-template-areas:"sections" "reading";gap:20px}
 body[data-information-app="vacancy"] .jobs-detail-sidebar{position:static;grid-row:1;grid-template-columns:minmax(0,1fr)}
 body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-jump{flex-direction:row;flex-wrap:wrap;max-height:none;overflow:visible}
 body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-jump>a{min-height:44px}
}
@media print{body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-layout-with-sidebar{display:block}}

/* C1/C2: official selection bullets, paper schemes and ordered merit rules. */
body[data-information-app="vacancy"] .jobs-selection-bullets{margin:10px 0 18px;padding-left:24px}
body[data-information-app="vacancy"] .jobs-selection-bullets>li{margin:0 0 12px;line-height:1.65;text-align:start}
body[data-information-app="vacancy"] :is(.jobs-selection-official,.jobs-selection-merit,.jobs-selection-tie) h3,
body[data-information-app="vacancy"] .jobs-exam-paper-heading{margin:20px 0 12px;padding:0 0 8px;border-bottom:1px solid var(--pp-line);font-size:18px;line-height:1.5;color:var(--pp-ink);text-align:start}
body[data-information-app="vacancy"] .jobs-exam-paper:first-child>.jobs-exam-paper-heading{margin-top:0}
body[data-information-app="vacancy"] .jobs-exam-paper+.jobs-exam-paper{margin-top:24px}
body[data-information-app="vacancy"] .jobs-selection-cutoff-note{margin:14px 0;padding:12px 14px;border-left:3px solid #bf8b25;background:var(--pp-wash);line-height:1.65;text-align:start}
body[data-information-app="vacancy"] .jobs-selection-tie-preference :is(th,td):first-child{width:1%;white-space:nowrap}
body[data-information-app="vacancy"] .jobs-exam-footnotes{margin:10px 0 18px;font-size:15px;line-height:1.6;text-align:start}
body[data-information-app="vacancy"] .jobs-exam-footnotes p{margin:8px 0;text-align:start}
@media(max-width:900px){
 body[data-information-app="vacancy"] .jobs-selection-bullets{padding-left:21px}
 body[data-information-app="vacancy"] .jobs-selection-tie-preference :is(th,td):first-child{width:auto;white-space:normal}
}
@media print{
 body[data-information-app="vacancy"] .jobs-exam-paper-heading{break-after:avoid}
 body[data-information-app="vacancy"] .jobs-selection-cutoff-note{background:transparent;border-color:#555}
}

/* Owner's reading-size increase: 16px body to 18px, matching heading steps. */
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-post-section p,.jobs-post-section li,.jobs-post-table th,.jobs-post-table td,.jobs-detail-overview p,.jobs-notice-summary dt,.jobs-notice-summary dd,.info-sources,.jobs-notice-footer){font-size:18px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-section>h2{font-size:24px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-summary>h2{font-size:25px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-exam-paper-heading,
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-selection-official,.jobs-selection-merit,.jobs-selection-tie) h3{font-size:20px}
body[data-information-app="vacancy"] .jobs-notice-detail :is(.jobs-exam-footnotes,.jobs-exam-footnotes p){font-size:17px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-exam-paper :is(th,td).jobs-post-col-numeric{width:auto;white-space:normal}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary dt{font-size:16px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{font-size:18px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td::before{font-size:16px}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table th:is(.jobs-post-col-numeric,.jobs-post-col-code){white-space:normal}

/* C3/C4: official actions below the section menu; readable coloured headers. */
body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-official-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper)}
body[data-information-app="vacancy"] .jobs-detail-sidebar .jobs-detail-official-actions .info-button{display:flex;justify-content:center;align-items:center;width:100%;min-height:44px;margin:0}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:var(--jobs-detail-navy);color:#fff;overflow-wrap:normal;word-break:normal;white-space:normal}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table th:is(.jobs-post-col-numeric,.jobs-post-col-code){width:auto;overflow-wrap:normal;word-break:normal}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:#244c70;color:#fff}
@media(min-width:1001px){body[data-information-app="vacancy"] .jobs-detail-sidebar:has(.jobs-detail-official-actions) .jobs-detail-jump{max-height:calc(100dvh - 240px)}}

/* Owner's alignment choice: left-aligned boxes, selected long prose justified. */
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td),
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table :is(th,td):is(.jobs-post-col-numeric,.jobs-post-col-code),
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-post-table td::before,
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-summary :is(dt,dd){text-align:left;text-align-last:left}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading [data-post-section] .jobs-post-table :is(th,td){text-align:left;text-align-last:left}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-heading .jobs-notice-hero .jobs-notice-count{justify-content:flex-start;text-align:left}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-deadline{justify-content:flex-start;text-align:left}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-sidebar .jobs-detail-official-actions .info-button{justify-content:flex-start;text-align:left}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-detail-overview p,
body[data-information-app="vacancy"] .jobs-notice-detail :is([data-post-section="qualification"],[data-post-section="selection-process"],[data-post-section="merit-list"],[data-post-section="tie-breaking"],[data-post-section="documents"],[data-post-section="how-to-apply"]) :is(p,li){text-align:justify;text-align-last:left;text-justify:inter-word;hyphens:none}
body[data-information-app="vacancy"] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:#fff0dc;color:#7b3b08;text-align:left;text-align-last:left}
body[data-information-app="vacancy"][data-theme=dark] .jobs-notice-detail .jobs-notice-reading .jobs-post-table thead th{background:#edc59e;color:#482408}

/* Compact shared footers across learning and information-service pages. */
.info-footer{margin-top:24px;padding:16px 0 calc(16px + env(safe-area-inset-bottom))}
.info-footer-heading{gap:8px;margin-bottom:8px}
.info-policy-links{gap:4px 18px}
.info-footer-bottom{margin-top:12px;padding-top:10px;gap:10px}
@media(min-width:851px){.info-policy-links a,.info-footer-bottom>a{min-height:30px}}
@media(max-width:560px){.info-footer-bottom>a{margin-top:4px}}
.footer{margin-top:24px;padding:16px 0 12px!important}
.footer .wrap.footer-grid{gap:12px 24px}
.footer .footer-links{gap:4px}
.footer .footer-links h2{margin:6px 0 4px}
.footer-bottom{padding-top:10px;gap:8px}

/* Owner's uploaded Word reference, initially applied to the selected CWC notice. */
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference{--jobs-word-orange:#a94e0a;--jobs-word-border:#d9d9d9;color:var(--pp-ink)}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-title{margin:12px 0 24px;font:700 clamp(25px,2.6vw,34px)/1.4 "Bookman Old Style","Book Antiqua",Georgia,serif;color:#111;text-align:left;overflow-wrap:break-word}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:30px}
body[data-information-app="vacancy"] .jobs-word-reference :is(.jobs-word-post-card,.jobs-word-metrics-card){min-width:0;padding:18px;border:1.5px solid #f19a41;border-radius:28px;background:linear-gradient(#fff2ed,#ffd5bd);box-shadow:0 3px 5px #34201226;color:#111;font-family:"Bookman Old Style","Book Antiqua",Georgia,serif}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-post-card{display:flex;flex-direction:column;justify-content:center;text-align:center}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-post-card h2{margin:0;padding:0 0 12px;border-bottom:1px solid #a99b91;font-size:22px;line-height:1.4;color:inherit}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-post-name{margin:16px 0 8px;font-size:32px;line-height:1.4;color:inherit;overflow-wrap:break-word}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-metrics-card dl{margin:0;border:1px solid #a99b91}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-metrics-card dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-metrics-card dl>div+div{border-top:1px solid #a99b91}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-metrics-card :is(dt,dd){margin:0;padding:9px 10px;font-size:20px;line-height:1.5;font-weight:700;overflow-wrap:break-word}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-metrics-card dd{border-left:1px solid #a99b91;text-align:center}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-closing-time{display:block;font-size:17px}
body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-mode{margin:16px 0 0;text-align:center;font-size:23px;line-height:1.4}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference :is(.jobs-detail-summary,.jobs-post-section){margin:0 0 24px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference :is(.jobs-detail-summary,.jobs-post-section)>h2{margin:0 0 14px;padding:0;border:0;font-size:24px;line-height:1.4;color:var(--jobs-word-orange)}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-context-title{margin:20px 0 12px;font-size:20px;line-height:1.45;color:var(--jobs-word-orange);text-align:left}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-detail-overview{padding:0;border:0;background:transparent}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table-wrap{margin:12px 0;border:0;border-radius:0;overflow:visible;box-shadow:none}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table{width:auto;max-width:100%;min-width:0;table-layout:auto;border-collapse:collapse;font-size:18px}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table :is(th,td){border:1px solid var(--jobs-word-border);padding:11px 13px;font-size:18px;line-height:1.55;text-align:left;text-align-last:left;vertical-align:middle;overflow-wrap:break-word;white-space:normal}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table thead th{background:#fff0dc;color:#713805;word-break:normal;overflow-wrap:normal}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table tbody tr:nth-child(even){background:#f7f9fc}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference :is([data-post-section="exam-pattern"],[data-post-section="documents"]) li{text-align:left;text-align-last:left}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference [data-post-section="exam-pattern"] p{text-align:left;text-align-last:left}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-word-reference{--jobs-word-orange:#ffc18a;--jobs-word-border:#736458}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-word-reference .jobs-word-title{color:#fff2e7}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-word-reference :is(.jobs-word-post-card,.jobs-word-metrics-card){background:linear-gradient(#503c33,#382b27);border-color:#bf8b5d;color:#fff2e7}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-notice-detail.jobs-word-reference .jobs-post-table thead th{background:#edc59e;color:#482408}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-notice-detail.jobs-word-reference .jobs-post-table tbody tr:nth-child(even){background:#ffffff08}
@media(max-width:900px){body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table{display:block;width:100%}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table thead{display:none}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table tbody{display:block;width:100%}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table tr{display:block;margin-bottom:12px;border:1px solid var(--jobs-word-border)}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table td{display:block;width:auto;border:0;border-bottom:1px solid var(--jobs-word-border)}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table td:last-child{border-bottom:0}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table td.jobs-post-cell-continuation{display:block}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table td::before{display:block;margin-bottom:4px;white-space:normal;overflow-wrap:break-word;color:var(--jobs-word-orange)}}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-hero-grid{grid-template-columns:minmax(0,1fr);gap:16px}body[data-information-app="vacancy"] .jobs-word-reference :is(.jobs-word-post-card,.jobs-word-metrics-card){border-radius:20px;padding:14px}body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-post-name{font-size:28px}body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-metrics-card :is(dt,dd){font-size:18px;padding:8px}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table :is(th,td){padding:10px;font-size:17px}}
@media print{body[data-information-app="vacancy"] .jobs-word-reference .jobs-word-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr));break-inside:avoid}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table{display:table;width:100%;font-size:10pt}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table thead{display:table-header-group}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table tbody{display:table-row-group}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table tr{display:table-row;break-inside:avoid}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table :is(th,td){display:table-cell;font-size:10pt}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table td::before{display:none}body[data-information-app="vacancy"] .jobs-notice-detail.jobs-word-reference .jobs-post-table td.jobs-post-cell-continuation{display:none}}

/* Owner-approved vacancy reader: final Word/demo base, 21 October 2026. */
body[data-information-app="vacancy"] .jobs-approved-format{--jobs-approved-indigo:#304f88;--jobs-approved-teal:#16776c;--jobs-approved-line:#dbe3ed;font-size:18px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-heading{padding:0;border:0;background:transparent;box-shadow:none}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;padding:0;border:0;background:transparent;box-shadow:none}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-title{grid-column:1/-1;margin:0 0 8px;padding:0;border:0;font-family:var(--font-sans,Arial,sans-serif);font-size:30px;line-height:1.35;letter-spacing:-.4px;text-align:left;color:var(--pp-ink)}
body[data-information-app="vacancy"] .jobs-approved-format :is(.jobs-notice-post,.jobs-approved-application-card){margin:0;padding:26px 28px;border:0;border-radius:20px;box-shadow:0 6px 20px #31456b0b;min-width:0}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-post{background:linear-gradient(120deg,#edf0ff,#e5f2ff)}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-approved-application-card{background:linear-gradient(120deg,#e7f7f3,#e7f5fb)}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-post-name{font-size:28px;line-height:1.35;color:#263b79;margin:8px 0 12px;text-align:left;overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-label{font-size:14px;letter-spacing:.6px;line-height:1.4;color:#4c5c88;margin:0 0 10px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-authority{font-size:16px;color:#485879;line-height:1.5}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-metrics{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:20px;margin:0;padding:0;border:0;background:transparent}
body[data-information-app="vacancy"] .jobs-approved-format :is(.jobs-notice-count,.jobs-detail-deadline){display:flex;flex-direction:column;gap:5px;min-width:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none;text-align:left}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-count-value{font-size:46px;color:#087b70;line-height:1.1}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-deadline strong{font-size:23px;color:#1b4050}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-deadline>span{font-size:15px;color:#526e77}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-approved-mode{display:inline-block;margin:22px 0 0;padding:8px 13px;background:#ffffffc9;color:#19796a;border-radius:9px;font-size:15px;line-height:1.5}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-layout-with-sidebar{grid-template-columns:minmax(0,1fr) 265px;gap:28px;margin-top:34px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar{grid-column:2;grid-row:1;top:20px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-main{grid-column:1;grid-row:1;min-width:0}
body[data-information-app="vacancy"] .jobs-approved-format :is(.jobs-detail-summary,.jobs-post-section){background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;margin:0 0 32px}
body[data-information-app="vacancy"] .jobs-approved-format :is(.jobs-detail-summary,.jobs-post-section)>h2{color:#214c78;background:transparent;border:0;box-shadow:none;padding:0;margin:0 0 15px;font-size:23px;line-height:1.4}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-context-title{color:#26766c;font-size:20px;margin:24px 0 12px;line-height:1.5}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-overview{background:transparent;border:0;padding:0}
body[data-information-app="vacancy"] .jobs-approved-format :is(.jobs-post-section,.jobs-detail-overview) :is(p,li){font-size:18px;line-height:1.7}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-section li{margin:9px 0}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-summary{display:flex;flex-wrap:wrap;gap:8px 20px;border:0;background:transparent;margin:0 0 16px;padding:0}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-summary>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;padding:0;border:0;background:transparent;font-size:15px;color:var(--pp-muted)}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-summary :is(dt,dd){margin:0;padding:0;font-size:15px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-summary dt::after{content:':' }
body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-table{width:100%;font-size:17px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-table :is(th,td){padding:12px 14px;font-size:17px;line-height:1.6;border-color:var(--jobs-approved-line);text-align:left;text-align-last:left}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-table thead th{background:#eaf0fa;color:#25436c}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-table tbody tr:nth-child(even){background:#f8fafc}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-contents{border:1px solid #e0e6f0;border-radius:16px;background:var(--pp-reading-paper);box-shadow:0 7px 24px #243b6410;overflow:hidden}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-contents>summary{background:linear-gradient(115deg,#284b91,#6b4fb0);color:#fff;padding:18px;font-size:18px}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar .jobs-detail-jump{padding:12px;gap:8px;max-height:calc(100dvh - 150px)}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>a{--wash:#edf3ff;--edge:#d8e4fc;--accent:#527acc;--ink:#315387;padding:11px 13px 11px 17px;border:1px solid var(--edge);border-left:4px solid var(--accent);border-radius:9px;background:var(--wash);color:var(--ink);font-size:14px;min-height:44px;line-height:1.5;transition:box-shadow .15s}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>[data-jump-tone="1"]{--wash:#eaf8f4;--edge:#ccebe1;--accent:#23977f;--ink:#21695b}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>[data-jump-tone="2"]{--wash:#fff3e7;--edge:#f5dec4;--accent:#d9923a;--ink:#88571c}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>[data-jump-tone="3"]{--wash:#f2edfc;--edge:#e2d7f5;--accent:#9270c6;--ink:#6a478d}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>[data-jump-tone="4"]{--wash:#fceef3;--edge:#f3d8e3;--accent:#c66c92;--ink:#95496b}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>[data-jump-tone="5"]{--wash:#eaf6fc;--edge:#cfe8f5;--accent:#4b9fc3;--ink:#326b87}
body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>a:is(:hover,:focus-visible,[aria-current="location"]){background:var(--wash);color:var(--ink);outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 3px 10px #26334a14}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format{--jobs-approved-line:#48556b}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-notice-post{background:linear-gradient(120deg,#253451,#263d50)}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-approved-application-card{background:linear-gradient(120deg,#203e3c,#243a4c)}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format :is(.jobs-notice-post-name,.jobs-detail-authority,.jobs-notice-label,.jobs-detail-deadline strong,.jobs-detail-deadline>span){color:#d7e5f8}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-notice-count-value{color:#83dbcd}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-approved-mode{background:#31544e;color:#c8f5e7}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format :is(.jobs-detail-summary,.jobs-post-section)>h2{color:#afccec}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-post-context-title{color:#a1d9ce}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-post-table thead th{background:#2c4161;color:#e3ecfa}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-post-table tbody tr:nth-child(even){background:#ffffff06}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-approved-format .jobs-detail-jump>a{background:var(--pp-reading-paper);color:#dae7f5;border-color:var(--accent)}
@media(max-width:1000px){body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-layout-with-sidebar{grid-template-columns:minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar{position:static;grid-column:1;grid-row:1}body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-main{grid-column:1;grid-row:2}body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar .jobs-detail-jump{max-height:240px;flex-direction:row;flex-wrap:wrap}}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-hero{grid-template-columns:minmax(0,1fr)}body[data-information-app="vacancy"] .jobs-approved-format :is(.jobs-notice-post,.jobs-approved-application-card){padding:22px}body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-title{font-size:26px}body[data-information-app="vacancy"] .jobs-approved-format .jobs-notice-post-name{font-size:25px}body[data-information-app="vacancy"] .jobs-approved-format .jobs-post-table :is(th,td){font-size:16px}body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar .jobs-detail-jump{flex-direction:column;flex-wrap:nowrap}}
@media(prefers-reduced-motion:reduce){body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-jump>a{transition:none}}
@media print{body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-layout-with-sidebar{display:block}body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar{display:none}}
/* Override legacy vacancy-specific geometry within the approved surface only. */
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-detail-heading .jobs-notice-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:stretch;gap:20px;padding:0;background:transparent;box-shadow:none;border:0}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-post{align-self:stretch}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-detail-heading .jobs-notice-hero .jobs-notice-count{padding:0;border:0;border-radius:0;min-height:0;background:transparent!important;align-items:flex-start;justify-content:flex-start;text-align:left;animation:none;gap:5px}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-detail-heading .jobs-notice-hero .jobs-notice-count :is(.jobs-notice-label,.jobs-notice-count-value){color:#087b70!important}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-section>h2{border:0;padding:0;margin-bottom:15px;color:#214c78;font-size:23px}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table thead th{background:#eaf0fa;color:#25436c}
body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-section{border:0;padding:0;box-shadow:none;background:transparent;margin:0 0 32px}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-notice-detail.jobs-approved-format .jobs-detail-heading .jobs-notice-hero .jobs-notice-count :is(.jobs-notice-label,.jobs-notice-count-value){color:#83dbcd!important}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-section>h2{color:#afccec}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table thead th{background:#2c4161;color:#e3ecfa}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-detail-heading .jobs-notice-hero{grid-template-columns:minmax(0,1fr)}}

/* Jobs applicant scopes: keep every qualification control usable on narrow
   screens without an intrinsically wide toolbar enlarging the page. */
@media(max-width:640px){
 #jobs-home-portal :is(.jobs-category-board,.jobs-exam-main,.jobs-exam-notifications),
 #jobs-category-page :is(.jobs-government-main,.jobs-vacancy-stage){min-width:0;max-width:100%;box-sizing:border-box}
 #jobs-home-portal .jobs-table-heading,
 #jobs-category-page .jobs-government-main .jobs-table-heading{width:100%;max-width:100%;min-width:0;box-sizing:border-box;flex-wrap:wrap;align-items:stretch;overflow-x:visible}
 #jobs-home-portal .jobs-table-heading>h3,
 #jobs-category-page .jobs-government-main .jobs-table-heading>h2{flex:1 1 100%;min-width:0;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:break-word}
 #jobs-home-portal [data-jobs-qualification-form],
 #jobs-category-page .jobs-government-main [data-jobs-qualification-form]{flex:1 1 100%;width:100%;min-width:0;max-width:100%;box-sizing:border-box;flex-wrap:wrap}
 #jobs-home-portal .jobs-qualification-quick,
 #jobs-category-page .jobs-government-main .jobs-qualification-quick{flex:1 1 100%;min-width:0;max-width:100%;flex-wrap:wrap}
 #jobs-home-portal .jobs-qualification-select,
 #jobs-category-page .jobs-government-main .jobs-qualification-select{flex:1 1 100%;width:100%;min-width:0;max-width:100%}
 #jobs-home-portal [data-jobs-qualification-select],
 #jobs-category-page .jobs-government-main [data-jobs-qualification-select]{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
 #jobs-home-portal .jobs-vacancy-table-wrap,
 #jobs-category-page .jobs-vacancy-table-wrap{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-x:auto}
}

/* Vacancy tables retain whole words and reflow into open labelled rows when
   their natural columns cannot fit. No horizontal table scrollbar. */
@media screen{
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table :is(th,td){overflow-wrap:normal;word-break:normal;hyphens:none;white-space:normal;text-align:left;text-align-last:left}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-post-table-wrap{min-width:0;max-width:100%;box-sizing:border-box;overflow:visible}
}
@media screen and (min-width:901px){
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-post-table-wrap{overflow:visible}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table{width:100%;min-width:100%;max-width:none;table-layout:auto}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table :is(th,td){padding:clamp(10px,.85vw,12px) clamp(9px,1vw,14px);font-size:clamp(16px,1.2vw,17px);line-height:1.6}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table .jobs-post-col-text{min-width:14ch}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table td:is(.jobs-post-col-numeric,.jobs-post-col-code){width:1%;min-width:0}
}
@media screen{
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table{display:block;width:100%;min-width:0;max-width:100%;border:0}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table tbody{display:block;width:100%}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table tr{display:block;width:100%;box-sizing:border-box;margin-bottom:14px;border:1px solid var(--jobs-approved-line);border-radius:8px;background:var(--pp-reading-paper)}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table td{display:block;width:auto;min-width:0;max-width:100%;box-sizing:border-box;padding:11px 14px;border:0;border-bottom:1px solid var(--jobs-approved-line);font-size:16px;line-height:1.65;overflow-wrap:break-word;word-break:normal;white-space:normal}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table td:last-child{border-bottom:0}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-table-reflow .jobs-post-table td::before{display:block;content:attr(data-label);margin-bottom:4px;color:var(--pp-muted);font-size:14px;line-height:1.5;overflow-wrap:normal;word-break:normal;text-align:left}
 body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-contents>.jobs-detail-contents-title{margin:0;background:linear-gradient(115deg,#284b91,#6b4fb0);color:#fff;padding:18px;font-size:18px;line-height:1.5}
 body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar .jobs-detail-jump{max-height:none;overflow:visible}
 body[data-information-app="vacancy"] .jobs-approved-format .jobs-detail-sidebar.jobs-sidebar-tall{position:static}
}
@media screen and (max-width:900px){
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-notice-reading .jobs-post-table :is(th,td){min-width:0;max-width:100%;overflow-wrap:break-word}
 body[data-information-app="vacancy"] .jobs-notice-detail.jobs-approved-format .jobs-post-table td::before{overflow-wrap:normal;word-break:normal;hyphens:none}
}

/* Bank categories remain visible and keyboard accessible at every width. */
#jobs-category-page .jobs-bank-tabs{display:flex;flex:1 1 100%;flex-wrap:wrap;gap:10px;margin:0;box-sizing:border-box;padding:14px;border:1px solid var(--pp-line,#dce3ee);border-radius:16px;background:var(--pp-reading-paper,#fff);min-width:0}
#jobs-category-page .jobs-bank-tab{--bank-tone:#2856a5;display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:46px;max-width:100%;box-sizing:border-box;padding:11px 17px;border:1px solid color-mix(in srgb,var(--bank-tone) 35%,transparent);border-radius:10px;background:color-mix(in srgb,var(--bank-tone) 9%,var(--pp-reading-paper,#fff));color:var(--bank-tone);text-decoration:none;font-size:15px;font-weight:700;line-height:1.45;text-align:center;word-break:normal;overflow-wrap:normal;transition:background .15s ease,box-shadow .15s ease}
#jobs-category-page .jobs-bank-tab:nth-child(2){--bank-tone:#21654e}
#jobs-category-page .jobs-bank-tab:nth-child(3){--bank-tone:#6942a6}
#jobs-category-page .jobs-bank-tab:nth-child(4){--bank-tone:#186c7f}
#jobs-category-page .jobs-bank-tab:nth-child(5){--bank-tone:#98511b}
#jobs-category-page .jobs-bank-tab:nth-child(6){--bank-tone:#9a3c67}
#jobs-category-page .jobs-bank-tab:hover{background:color-mix(in srgb,var(--bank-tone) 17%,var(--pp-reading-paper,#fff))}
#jobs-category-page .jobs-bank-tab[aria-current="page"]{background:var(--bank-tone);border-color:var(--bank-tone);color:#fff;box-shadow:0 3px 9px color-mix(in srgb,var(--bank-tone) 22%,transparent)}
#jobs-category-page .jobs-bank-tab:focus-visible{outline:3px solid var(--ui-focus,#2379ec);outline-offset:3px}
@media(max-width:600px){#jobs-category-page .jobs-bank-tabs{gap:8px;padding:10px}#jobs-category-page .jobs-bank-tab{flex:1 1 calc(50% - 8px);padding:10px 8px;font-size:14px}}
body[data-theme="dark"] #jobs-category-page .jobs-bank-tab:not([aria-current="page"]){color:color-mix(in srgb,var(--bank-tone) 40%,#fff);border-color:color-mix(in srgb,var(--bank-tone) 65%,#fff)}

#jobs-category-page[data-section="bank"] .jobs-category-page-header>.jobs-category-page-filters{flex:1 1 100%}
#jobs-category-page[data-section="bank"] .jobs-category-page-filters .field{display:flex;flex-direction:column;align-items:stretch;gap:5px;flex:1 1 220px}
#jobs-category-page[data-section="bank"] .jobs-category-page-filters .field>:is(input,select){width:100%;min-width:0;max-width:100%;min-height:44px;box-sizing:border-box;margin:0;padding:8px 10px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-reading-paper);color:var(--pp-ink);font-size:16px}

/* 23 October: one organisation/qualification filter row above every Jobs table.
   Qualifications and opportunity types are native choices, never shortcut chips. */
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-home) .jobs-category-filter-row{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;padding:10px 14px;min-width:0;max-width:100%;box-sizing:border-box;background:var(--pp-reading-paper);border-bottom:1px solid var(--pp-line)}
body[data-information-app="vacancy"] .jobs-category-filter-row>.jobs-qualification-filter{display:contents}
body[data-information-app="vacancy"] .jobs-category-filter-row :is(.jobs-category-organisation,.jobs-qualification-select,.jobs-opportunity-select){display:flex;flex-direction:column;align-items:stretch;gap:5px;flex:1 1 160px;min-width:0;max-width:100%;width:auto;margin:0;order:0;color:var(--pp-ink);font-size:14px}
body[data-information-app="vacancy"] .jobs-category-filter-row .jobs-category-organisation{flex-grow:1.35}
body[data-information-app="vacancy"] :is(.jobs-category-filter-row,.jobs-category-page-filters) label>select{width:100%;max-width:100%;min-width:0;min-height:44px;box-sizing:border-box;padding:8px 10px;border:1px solid var(--pp-line);border-radius:8px;background:var(--pp-reading-paper);color:var(--pp-ink);font:inherit;font-size:16px}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-page-filters[data-jobs-qualification-form]{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-page-filters .field{display:flex;flex-direction:column;gap:5px;flex:1 1 165px;width:auto;max-width:100%;min-width:0}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-page-filters :is([data-jobs-qualification-select],[data-jobs-opportunity-select]){width:100%;max-width:100%;min-width:0}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-table-heading{overflow:visible;flex-wrap:wrap}
body[data-information-app="vacancy"] :is(#jobs-home-portal,#jobs-category-page) .jobs-table-heading>:is(h2,h3){flex:0 1 auto;max-width:100%;white-space:normal;overflow-wrap:break-word}
@media(max-width:640px){
 body[data-information-app="vacancy"] .jobs-category-filter-row :is(.jobs-category-organisation,.jobs-qualification-select,.jobs-opportunity-select){flex-basis:135px;min-width:0;width:auto}
 body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-page-filters .field{flex-basis:135px}
}

/* Homepage: category, count and filters occupy one compact header row. */
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading{display:flex;align-items:center;flex-wrap:nowrap;gap:6px 10px;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:6px 10px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-title-group{display:flex;align-items:center;flex:1 0 auto;flex-wrap:nowrap;gap:6px;min-width:0;order:0;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading h2{margin:0;font-size:15px;line-height:1.3;white-space:nowrap;overflow-wrap:normal}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading h2 a{display:flex;align-items:center;min-height:36px}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-scope{font-size:12px;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-stats{flex:0 0 auto;margin:0;max-width:none;order:0;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-live-count{display:inline-flex;align-items:center;flex:0 0 auto;gap:3px;white-space:nowrap;font-size:12px;line-height:1.3;color:var(--pp-ink);padding:4px 6px;border-inline-start:3px solid #16816d;background:color-mix(in srgb,#16816d 8%,var(--pp-reading-paper));border-radius:4px}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-live-count[hidden]{display:none}
body[data-information-app="vacancy"] #jobs-category-home [data-home-vacancy-stage="current"]{margin-top:0}
body[data-information-app="vacancy"] #jobs-category-home [data-home-vacancy-stage="current"]>header[hidden]{display:none}
body[data-information-app="vacancy"] #jobs-category-home .jobs-security-scope>header{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;overflow-x:auto}
body[data-information-app="vacancy"] #jobs-category-home .jobs-security-scope>header h3{white-space:nowrap;font-size:15px}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-count{flex-wrap:nowrap;gap:4px;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-count>strong{font-size:17px;line-height:1.3;white-space:nowrap;overflow-wrap:normal}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-count>span{font-size:11px;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-controls{display:flex;flex:0 0 125px;align-items:center;flex-wrap:nowrap;width:125px;min-width:0;max-width:125px;margin:0;order:0}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-controls>.field{flex:1 1 auto;min-width:0;width:100%;margin:0;order:0}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar.jobs-category-filter-row{display:flex;align-items:center;flex:0 0 auto;flex-wrap:nowrap;gap:6px;width:auto;max-width:none;min-width:0;padding:0;border:0;background:transparent;overflow:visible;order:0}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar>h3[hidden]{display:none}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar>.jobs-qualification-filter{display:flex;align-items:center;flex:0 0 auto;flex-wrap:nowrap;gap:6px;width:auto;max-width:none;min-width:0;margin:0}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar :is(.jobs-qualification-select,.jobs-opportunity-select){display:block;flex:0 0 170px;width:170px;min-width:0;max-width:170px;margin:0;order:0}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar .jobs-opportunity-select{flex-basis:185px;width:185px;max-width:185px}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar label>span,
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-controls>.field>span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading select{min-height:36px;min-width:0;width:100%;max-width:100%;box-sizing:border-box;padding:6px 22px 6px 7px;font-size:13px;line-height:1.3;text-overflow:ellipsis}
@media(max-width:640px){
 body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading{padding:4px 8px;gap:6px}
 body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading h2 a,
 body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading select{min-height:44px}
 body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-board .jobs-category-heading select{font-size:16px}
 body[data-information-app="vacancy"] #jobs-category-home .jobs-home-table-toolbar :is(.jobs-qualification-select,.jobs-opportunity-select){flex-basis:160px;width:160px;max-width:160px}
}

/* Separate application stages and government Defence/Police scopes. */
body[data-information-app="vacancy"] .jobs-home-lifecycle{margin:12px 8px;border:1px solid var(--pp-line);border-radius:10px;overflow:hidden;min-width:0;max-width:100%;background:var(--pp-reading-paper)}
body[data-information-app="vacancy"] :is(.jobs-home-lifecycle,.jobs-listing-stages .jobs-vacancy-stage)>header{padding:10px 12px;background:color-mix(in srgb,var(--pp-link,#174d80) 8%,var(--pp-reading-paper));border-bottom:1px solid var(--pp-line)}
body[data-information-app="vacancy"] .jobs-home-lifecycle>header h4{margin:0;font-size:16px;line-height:1.4;color:var(--pp-ink);overflow-wrap:break-word}
body[data-information-app="vacancy"] :is([data-home-vacancy-stage="current"],[data-vacancy-stage="current"])>header{border-inline-start:4px solid #16816d}
body[data-information-app="vacancy"] :is([data-home-vacancy-stage="upcoming"],[data-vacancy-stage="upcoming"])>header{border-inline-start:4px solid #bd7a1d}
body[data-information-app="vacancy"] [data-vacancy-stage="closed"]>header{border-inline-start:4px solid #a34b62}
body[data-information-app="vacancy"] .jobs-security-scope{min-width:0;max-width:100%;margin:14px 0;padding:10px;border:1px solid var(--pp-line);border-radius:12px;box-sizing:border-box;background:var(--pp-reading-paper)}
body[data-information-app="vacancy"] .jobs-security-scope>header{padding:10px 12px;border-radius:8px;background:color-mix(in srgb,#235f98 12%,var(--pp-reading-paper));color:var(--pp-ink)}
body[data-information-app="vacancy"] .jobs-security-scope[data-security-scope="state"]>header{background:color-mix(in srgb,#7258aa 12%,var(--pp-reading-paper))}
body[data-information-app="vacancy"] .jobs-security-scope>header :is(h2,h3){margin:0;font-size:18px;line-height:1.4;overflow-wrap:break-word}
body[data-information-app="vacancy"] [data-security-state-form] select{min-width:0;max-width:100%;min-height:44px;font-size:16px}
body[data-information-app="vacancy"] .jobs-listing-stages .info-notice-grid{display:block;min-width:0;max-width:100%}
body[data-information-app="vacancy"] .jobs-listing-stages .jobs-vacancy-stage{margin:16px 0;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-reading-paper);min-width:0;max-width:100%;overflow:hidden}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-security-scope{padding:6px}body[data-information-app="vacancy"] .jobs-home-lifecycle{margin:10px 4px}}
/* Dedicated Jobs update pages: real notices with original official-source links. */
body[data-information-app="vacancy"] .jobs-update-page{min-width:0;max-width:100%;color:var(--pp-ink)}
body[data-information-app="vacancy"] .jobs-update-page .jobs-page-top h1{display:block;margin:0;font-size:21px;line-height:1.3}
body[data-information-app="vacancy"] .jobs-update-tabs{display:flex;align-items:center;gap:7px;overflow-x:auto;max-width:100%;padding:10px 0;overscroll-behavior-x:contain}
body[data-information-app="vacancy"] .jobs-update-tabs>a{display:flex;align-items:center;flex:0 0 auto;min-height:42px;padding:7px 13px;box-sizing:border-box;border:1px solid var(--pp-line);border-radius:7px;color:var(--pp-link,#174d80);background:var(--pp-reading-paper);text-decoration:none;white-space:nowrap}
body[data-information-app="vacancy"] .jobs-update-tabs>a[aria-current="page"]{background:#174d80;color:#fff;border-color:#174d80}
body[data-information-app="vacancy"] .jobs-update-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 0 12px;font-size:14px}
body[data-information-app="vacancy"] .jobs-update-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
body[data-information-app="vacancy"] .jobs-update-item{min-width:0;padding:13px 16px;background:var(--pp-reading-paper);border:1px solid var(--pp-line);border-radius:9px;border-inline-start:4px solid #16816d}
body[data-information-app="vacancy"] .jobs-update-item h2{margin:6px 0;font-size:18px;line-height:1.5;overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-update-title{color:var(--pp-link,#174d80);text-decoration:none}
body[data-information-app="vacancy"] .jobs-update-title:hover{text-decoration:underline}
body[data-information-app="vacancy"] .jobs-update-meta{display:flex;flex-wrap:wrap;gap:5px 16px;color:var(--pp-muted);font-size:13px;line-height:1.4;overflow-wrap:anywhere}
body[data-information-app="vacancy"] .jobs-update-item-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px}
body[data-information-app="vacancy"] .jobs-update-item-actions>a{color:var(--pp-link,#174d80);min-height:32px;display:inline-flex;align-items:center}
body[data-information-app="vacancy"] .jobs-update-source{color:var(--pp-muted)}
body[data-information-app="vacancy"] .jobs-update-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0;flex-wrap:wrap}
body[data-information-app="vacancy"] .jobs-update-pagination .info-button{min-height:44px}
body[data-information-app="vacancy"] .jobs-update-empty{padding:25px 15px;background:var(--pp-reading-paper);border:1px solid var(--pp-line);border-radius:9px}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-update-item{padding:11px 12px}body[data-information-app="vacancy"] .jobs-update-item h2{font-size:16px}body[data-information-app="vacancy"] .jobs-update-tabs>a{min-height:44px}}

/* Dedicated Jobs updates: distinct category colours and a short, non-growing search. */
body[data-information-app="vacancy"] .jobs-update-toolbar{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;min-width:0;max-width:100%;padding:8px 0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
body[data-information-app="vacancy"] .jobs-update-toolbar .jobs-update-tabs{flex:0 0 auto;gap:5px;max-width:none;padding:0;overflow:visible}
body[data-information-app="vacancy"] :is([data-update-tab="recruitment"],[data-update-category="recruitment"]){--jobs-update-tone:#245d91;--jobs-update-light:#a9d0f2}
body[data-information-app="vacancy"] :is([data-update-tab="admit-card"],[data-update-category="admit-card"]){--jobs-update-tone:#17675d;--jobs-update-light:#91d9c9}
body[data-information-app="vacancy"] :is([data-update-tab="result"],[data-update-category="result"]){--jobs-update-tone:#6641a0;--jobs-update-light:#d0b6f3}
body[data-information-app="vacancy"] :is([data-update-tab="answer-key"],[data-update-category="answer-key"]){--jobs-update-tone:#8a5a18;--jobs-update-light:#f0cf93}
body[data-information-app="vacancy"] :is([data-update-tab="exam-date"],[data-update-category="exam-date"]){--jobs-update-tone:#9a3652;--jobs-update-light:#f2b2c5}
body[data-information-app="vacancy"] .jobs-update-toolbar .jobs-update-tabs>a{min-height:36px;padding:6px 9px;font-size:13px;line-height:1.3;color:var(--jobs-update-tone);border-color:color-mix(in srgb,var(--jobs-update-tone) 35%,var(--pp-line));background:color-mix(in srgb,var(--jobs-update-tone) 8%,var(--pp-reading-paper))}
body[data-information-app="vacancy"] .jobs-update-toolbar .jobs-update-tabs>a:hover{background:color-mix(in srgb,var(--jobs-update-tone) 15%,var(--pp-reading-paper));border-color:var(--jobs-update-tone)}
body[data-information-app="vacancy"] .jobs-update-toolbar .jobs-update-tabs>a[aria-current="page"]{color:#fff;background:var(--jobs-update-tone);border-color:var(--jobs-update-tone);box-shadow:inset 0 -2px 0 #0002}
body[data-information-app="vacancy"][data-theme="dark"] .jobs-update-toolbar .jobs-update-tabs>a:not([aria-current="page"]){color:var(--jobs-update-light);border-color:color-mix(in srgb,var(--jobs-update-light) 45%,var(--pp-line));background:color-mix(in srgb,var(--jobs-update-tone) 22%,var(--pp-reading-paper))}
body[data-information-app="vacancy"] .jobs-update-page .jobs-update-item{border-inline-start-color:var(--jobs-update-tone,#245d91)}
body[data-information-app="vacancy"] .jobs-update-search{display:flex;align-items:center;flex:0 0 216px;flex-wrap:nowrap;gap:5px;width:216px;min-width:216px;max-width:216px;margin:0}
body[data-information-app="vacancy"] .jobs-update-search>input[type="search"]{flex:1 1 0;width:175px;min-width:0;max-width:175px;height:36px;min-height:36px;box-sizing:border-box;margin:0;padding:6px 8px;border:1px solid var(--pp-line);border-radius:7px;background:var(--pp-reading-paper);color:var(--pp-ink);font:inherit;font-size:14px;line-height:1.3}
body[data-information-app="vacancy"] .jobs-update-search>.info-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;min-height:36px;box-sizing:border-box;margin:0;padding:0;border:1px solid var(--jobs-update-tone,#245d91);border-radius:7px;background:var(--jobs-update-tone,#245d91);color:#fff;line-height:1}
body[data-information-app="vacancy"] .jobs-update-search>.info-button:hover{filter:brightness(1.1)}
body[data-information-app="vacancy"] .jobs-update-search>.info-button>svg{display:block;flex:none}
body[data-information-app="vacancy"] .jobs-update-toolbar :is(a,input,button):focus-visible{outline:2px solid var(--pp-link,#174d80);outline-offset:2px}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-update-toolbar .jobs-update-tabs>a{min-height:44px}body[data-information-app="vacancy"] .jobs-update-search>.info-button{flex-basis:44px;width:44px;height:44px;min-height:44px}body[data-information-app="vacancy"] .jobs-update-search>input[type="search"]{height:44px;min-height:44px;font-size:16px}}

/* 24 October: standalone category headers share Home's single-row controls. */
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:6px 10px;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:5px 0 10px;padding:6px 10px;border:1px solid var(--pp-line);border-top:2px solid #174d80;border-radius:9px;background:var(--pp-reading-paper);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header :is(.jobs-category-page-heading,.jobs-category-title-group){display:flex;align-items:center;flex:1 0 auto;flex-wrap:nowrap;gap:6px;min-width:0;order:0;white-space:nowrap}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header :is(h1,h2,.jobs-category-page-title){display:flex;align-items:center;min-height:36px;margin:0;padding:0;font-size:15px;line-height:1.3;letter-spacing:0;white-space:nowrap;overflow-wrap:normal;color:var(--pp-link,#174d80)}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header .jobs-category-scope{font-size:12px;white-space:nowrap;color:var(--pp-muted)}
body[data-information-app="vacancy"] #jobs-category-page .jobs-category-compact-header .jobs-category-breadcrumb[hidden]{display:none}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header .jobs-category-stats{flex:0 0 auto;margin:0;max-width:none;order:0;white-space:nowrap}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header .jobs-category-count{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;white-space:nowrap}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header .jobs-category-count>strong{font-size:17px;line-height:1.3;white-space:nowrap;overflow-wrap:normal}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header .jobs-category-count>span{font-size:11px;white-space:nowrap}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-home-live-count{display:inline-flex;align-items:center;flex:0 0 auto;gap:3px;white-space:nowrap;font-size:12px;line-height:1.3;color:var(--pp-ink);padding:4px 6px;border-inline-start:3px solid #16816d;background:color-mix(in srgb,#16816d 8%,var(--pp-reading-paper));border-radius:4px}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-home-live-count[hidden]{display:none}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header>.jobs-category-page-filters[data-jobs-qualification-form],
body[data-information-app="vacancy"] #jobs-category-home .jobs-category-compact-header .jobs-category-filter-row,
body[data-information-app="vacancy"] #jobs-category-home .jobs-category-compact-header .jobs-qualification-filter{display:flex;align-items:center;flex:0 0 auto;flex-wrap:nowrap;gap:6px;width:auto;min-width:0;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;order:0}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters .field,
body[data-information-app="vacancy"] #jobs-category-home .jobs-category-compact-header .jobs-qualification-filter .field{display:block;flex:0 0 154px;width:154px;min-width:0;max-width:154px;margin:0;order:0}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters .jobs-opportunity-select{flex-basis:166px;width:166px;max-width:166px}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters .jobs-category-state-select{flex-basis:125px;width:125px;max-width:125px}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters .jobs-category-search{flex-basis:140px;width:140px;max-width:140px}
body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header label>span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters :is(select,input[type=search]),
body[data-information-app="vacancy"] #jobs-category-home .jobs-category-compact-header select{min-height:36px;min-width:0;width:100%;max-width:100%;box-sizing:border-box;padding:6px 22px 6px 7px;font-size:13px;line-height:1.3;text-overflow:ellipsis}
body[data-information-app="vacancy"] #jobs-category-page .jobs-category-compact-header .jobs-category-page-filters .info-button{flex:0 0 auto;min-height:36px;margin:0;padding:6px 9px;font-size:13px;line-height:1.3;white-space:nowrap}
body[data-information-app="vacancy"] #jobs-category-page :is(.jobs-table-heading,[data-vacancy-stage="current"]>header)[hidden]{display:none}
body[data-information-app="vacancy"] #jobs-category-page .jobs-security-scope>header{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;overflow-x:auto;overscroll-behavior-x:contain}
body[data-information-app="vacancy"] #jobs-category-page .jobs-security-scope>header h2{font-size:15px;line-height:1.3;white-space:nowrap}
@media(max-width:640px){
 body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header{padding:4px 8px;gap:6px}
 body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters :is(select,input[type=search]),
 body[data-information-app="vacancy"] #jobs-category-page .jobs-category-compact-header .jobs-category-page-filters .info-button,
 body[data-information-app="vacancy"] :is(#jobs-category-page,#jobs-category-home) .jobs-category-compact-header :is(h1,h2,.jobs-category-page-title){min-height:44px}
 body[data-information-app="vacancy"] #jobs-category-page .jobs-government-main .jobs-category-compact-header .jobs-category-page-filters :is(select,input[type=search]){font-size:16px}
}

/* Defence belongs to Central Government; State Police stays within State Jobs. */
body[data-information-app="vacancy"] :is(.jobs-category-heading,.jobs-category-compact-header) .jobs-government-sector-links{display:flex;align-items:center;gap:5px;flex:0 0 auto}
body[data-information-app="vacancy"] .jobs-government-sector-link{display:inline-flex;align-items:center;flex:0 0 auto;min-height:32px;box-sizing:border-box;padding:5px 8px;border:1px solid var(--pp-line);border-radius:6px;background:var(--pp-wash);color:var(--pp-link,#174d80);font-size:12px;line-height:1.3;text-decoration:none;white-space:nowrap}
body[data-information-app="vacancy"] .jobs-government-sector-link[aria-current="page"]{color:#fff;background:#174d80;border-color:#174d80}
body[data-information-app="vacancy"] .jobs-government-sector-link:focus-visible{outline:2px solid var(--pp-link,#174d80);outline-offset:2px}
@media(max-width:640px){body[data-information-app="vacancy"] .jobs-government-sector-link{min-height:44px}}

body[data-information-app="vacancy"] :is(#jobs-category-home,#jobs-category-page) .jobs-security-scope>header[hidden]{display:none}
