/* Approved To Action interface font; SIL Open Font Licence in /brand/Inter-OFL.txt. */
@font-face{font-family:Inter;src:url('/brand/Inter-variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
/* SPDX-License-Identifier: MIT */
:root{--site-sidebar-width:15rem;--site-header-height:5rem}
:root[data-menu-collapsed=true]{--site-sidebar-width:4.5rem}
body{padding-left:var(--site-sidebar-width)}
header.site-header{display:contents;padding:0;border:0;background:transparent}
.site-sidebar{position:fixed;inset:0 auto 0 0;width:var(--site-sidebar-width);height:100dvh;z-index:40;display:flex;flex-direction:column;gap:.75rem;padding:1rem .75rem;background:#edf2ed;color:#203f3a;border-right:1px solid #cbd8d2;overflow-y:auto;overscroll-behavior:contain}
.site-sidebar .brand{display:flex;align-items:center;min-height:44px;text-decoration:none;color:#203f3a;margin:0;padding:.35rem .5rem}
.site-sidebar .brand strong{font-size:1.5rem;font-weight:750;letter-spacing:-.04em}.brand-short{display:none}
#site-menu-toggle{display:flex;align-items:center;gap:.65rem;min-height:44px;width:100%;margin:0;padding:.6rem .75rem;border:1px solid #a7beb4;border-radius:.5rem;background:#fff;color:#244e43;cursor:pointer;font-size:.85rem;text-align:left}
#site-navigation{display:flex;flex-direction:column;gap:.3rem;margin:0;padding:0;border:0}
#site-navigation a{display:flex;align-items:center;gap:.75rem;min-height:46px;padding:.65rem .75rem;border-radius:.45rem;color:#244e43;text-decoration:none;font-size:.9rem;line-height:1.3;overflow-wrap:anywhere}
#site-navigation .nav-icon{display:grid;place-items:center;flex:0 0 1.5rem;width:1.5rem;font-size:1.2rem;font-weight:650}
#site-navigation a:hover{background:#dce9df}#site-navigation a[aria-current=page]{background:#215c54;color:#fff}
:root[data-menu-collapsed=true] .site-sidebar{padding:1rem .5rem}:root[data-menu-collapsed=true] .brand-full,:root[data-menu-collapsed=true] .nav-label,:root[data-menu-collapsed=true] .menu-label{display:none}
:root[data-menu-collapsed=true] .brand-short{display:inline}:root[data-menu-collapsed=true] .site-sidebar .brand,:root[data-menu-collapsed=true] #site-navigation a,:root[data-menu-collapsed=true] #site-menu-toggle{justify-content:center;padding:.6rem .25rem}
.site-topbar{position:sticky;top:0;z-index:20;display:grid;gap:.6rem;padding:1rem clamp(1rem,3vw,2rem);background:#fff;color:#203f3a;border-bottom:1px solid #cbd8d2}
.site-brand-row{display:flex;align-items:center;gap:1rem;min-width:0;flex-wrap:wrap}.site-area{font-size:1rem;font-weight:650;color:#35584e}
.site-account-actions{display:flex;gap:.5rem;align-items:center;margin-left:auto;flex-wrap:wrap}.site-header .site-account-actions button{margin:0;min-height:44px;padding:.5rem .75rem}
.app-submenu{display:flex;gap:.35rem;overflow-x:auto;max-width:100%;margin:0;border:0;padding:.15rem 0;white-space:nowrap}
.app-submenu a{display:inline-flex;align-items:center;min-height:44px;padding:.6rem .85rem;border-radius:.4rem;color:#244e43;text-decoration:none;font-size:.9rem;font-weight:550}
.app-submenu a:hover{background:#edf3ee}.app-submenu a[aria-current=page]{background:#e2eee7;box-shadow:inset 0 -3px #215c54;color:#173f35}
.site-header :focus-visible{outline:3px solid #aa6610;outline-offset:2px}.site-environment{margin:0;font-size:.78rem;line-height:1.4;color:#52665e}.site-header [hidden]{display:none!important}
.skip:focus,.shared-home-runtime .skip:focus{position:fixed;top:.5rem;left:calc(var(--site-sidebar-width) + .5rem);z-index:50;background:white;padding:.75rem}
html{scroll-padding-top:calc(var(--site-header-height) + 1rem)}.fra-toolbar{top:var(--site-header-height)}.fra-section,.fra-collections,.fra-responsible-review{scroll-margin-top:calc(var(--site-header-height) + 8rem)}
/* The shared home uses the same permanent left rail, not a second workspace menu. */
#workspace{display:grid;grid-template-columns:minmax(0,1fr)}#workspace>.workspace-nav{display:none}#workspace>.context-control,#workspace>#retained-draft,#workspace>.workspace-view{grid-column:1}
@media(max-width:60rem){:root:not([data-menu-collapsed=false]){--site-sidebar-width:4.5rem}.site-topbar{padding:.75rem 1rem}.site-account-actions{margin-left:0}.site-header .site-account-actions button{font-size:.82rem}}
@media(max-width:40rem){:root[data-menu-collapsed=false]{--site-sidebar-width:11rem}.site-sidebar{padding:.6rem .5rem}#site-navigation a{font-size:.82rem;padding:.6rem .45rem;gap:.45rem}.site-topbar{padding:.65rem .75rem}.site-environment{font-size:.72rem}.app-submenu a{padding:.55rem .65rem}.site-brand-row{gap:.5rem}.fra-section,.fra-collections,.fra-responsible-review{scroll-margin-top:calc(var(--site-header-height) + 1rem)}}
@media print{body{padding-left:0}.site-sidebar,.site-topbar{display:none}html{scroll-padding-top:0}.fra-toolbar{position:static}}
/* Clearer hierarchy: product links first, account tools below, always on the left. */
.site-sidebar{background:#f0f5f1;padding:1.25rem .85rem;gap:1rem;border-right-color:#d8e3db}.site-sidebar .brand{padding:.3rem .65rem}.site-sidebar .brand strong{font-size:1.55rem;color:#174c40}#site-menu-toggle{background:transparent;border-color:transparent;min-height:36px;padding:.4rem .7rem;font-size:.78rem;color:#5a7569}#site-menu-toggle:hover{background:#e2ece5}#site-navigation{flex:1;gap:.4rem}#site-navigation a{font-weight:550;border-radius:8px;padding:.7rem .8rem;color:#49665a}#site-navigation a[aria-current=page]{background:#215c4c;color:white;box-shadow:0 2px 5px #1c493315}#site-navigation a[data-main-area=administration]{margin-top:auto;border-top:1px solid #d5e1d8;border-radius:0;padding-top:1.2rem}#site-navigation a[data-main-area=administration][aria-current=page]{border-radius:8px}.site-topbar{padding:.85rem clamp(1rem,3vw,2rem) .5rem;gap:.4rem}.site-area{font-size:.85rem;font-weight:650;color:#617a6d}.app-submenu{gap:.75rem}.app-submenu a{padding:.6rem .15rem;border-radius:0;border-bottom:3px solid transparent;font-size:.88rem}.app-submenu a:hover{background:transparent;color:#174c40;border-bottom-color:#bfd3c5}.app-submenu a[aria-current=page]{background:transparent;box-shadow:none;border-bottom-color:#215c4c;color:#174c40;font-weight:700}#site-navigation .nav-icon{font-size:1.05rem}.site-header a,.site-header button{transition:background-color .15s,color .15s}@media(prefers-reduced-motion:reduce){.site-header a,.site-header button{transition:none}}@media(max-width:40rem){.site-sidebar{padding:.75rem .5rem}.app-submenu{gap:.8rem}.site-topbar{padding:.65rem .75rem .25rem}#site-navigation a{padding:.65rem .4rem}.site-sidebar .brand{padding:.25rem}#site-menu-toggle{padding:.4rem .25rem}}

/* Consistent first-party line icons replace platform-dependent text glyphs. */
#site-navigation .nav-icon{font-size:0!important}#site-navigation .nav-icon::before{content:"";display:block;width:20px;height:20px;background:currentColor;mask:var(--nav-icon) center/contain no-repeat;-webkit-mask:var(--nav-icon) center/contain no-repeat}
#site-navigation a[data-main-area=home]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2010%2012%203l9%207v11H3Z%20M9%2021v-8h6v8%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=apps]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203h7v7H3Z%20M14%203h7v7h-7Z%20M3%2014h7v7H3Z%20M14%2014h7v7h-7Z%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=explore]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%204v16%20M4%2012h16%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=fra]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%202h8l5%205v15H6Z%20M14%202v6h5%20M9%2012h7%20M9%2016h7%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=administration]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2021h18%20M5%2021V7h14v14%20M9%207V3h6v4%20M9%2011h1%20M14%2011h1%20M9%2015h1%20M14%2015h1%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=billing]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h18v14H3Z%20M3%2010h18%20M7%2015h3%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=security]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202%203%206v6c0%205%209%2010%209%2010s9-5%209-10V6Z%20M8%2012l3%203%205-6%22%2F%3E%3C%2Fsvg%3E")}
.app-submenu{flex-wrap:nowrap}
/* On phones expansion overlays the compact rail instead of squeezing the page. */
@media(max-width:40rem){:root[data-menu-collapsed=false] body{padding-left:4.5rem}.site-sidebar{box-shadow:2px 0 10px #203f3a08}}

/* Complete line icons for Tools and Documents destinations. */
#site-navigation a[data-main-area=my-tools]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%206a5%205%200%200%200-6%206l-5%205a2%202%200%200%200%203%203l5-5a5%205%200%200%200%206-6l-3%203-3-3Z%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=explore-tools]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%204a6%206%200%201%200%200%2012%206%206%200%200%200%200-12%20M14.5%2014.5%2021%2021%22%2F%3E%3C%2Fsvg%3E")}
#site-navigation a[data-main-area=documents]{--nav-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h6l2%202h8v13H4Z%20M4%207V3h7l2%202%22%2F%3E%3C%2Fsvg%3E")}

.organisation-settings-sections{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 1rem;padding:.5rem 0;border-bottom:1px solid #cbd9d3}
.organisation-settings-sections a{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid #cbd9d3;border-radius:.35rem;text-decoration:none;background:#fff;color:#20594e;font-weight:600}
.organisation-settings-sections a[aria-current=page]{background:#20594e;color:white;border-color:#20594e}
.organisation-settings-sections a:focus-visible{outline:3px solid #ac7300;outline-offset:2px}

.app-administration{margin:0 0 1rem;padding:.65rem .85rem;border:1px solid #cbd9d3;border-radius:.4rem;background:#fff}.app-administration>summary{cursor:pointer;font-weight:700;color:#20594e}.app-administration h2{font-size:1.15rem;margin:.75rem 0 .35rem}.app-administration p{margin:.4rem 0}.app-admin-actions{display:flex;flex-wrap:wrap;gap:.4rem}.app-admin-actions a,.app-administration button{display:inline-flex;padding:.45rem .7rem;border:1px solid #cbd9d3;border-radius:.35rem;text-decoration:none;margin:.25rem .25rem .25rem 0}

/* Shared app presentation: navigation is distinct from record actions. */
@media screen{
html[data-app-brand]{--app-accent:#146c63;--app-tint:#eaf5f2;--app-line:#ccd9d5}
html:is([data-app-brand=contacts],[data-app-brand=policies]){--app-accent:#225e9d;--app-tint:#edf3fb}
html:is([data-app-brand=matrix],[data-app-brand=procedures]){--app-accent:#436d2c;--app-tint:#eff6e9}
html:is([data-app-brand=tasks],[data-app-brand=rotas],[data-app-brand=assets-issues]){--app-accent:#006b83;--app-tint:#e7f5fa}
html[data-app-brand=meetings]{--app-accent:#6545a4;--app-tint:#f2edfa}
html[data-app-brand=hr]{--app-accent:#9a3d71;--app-tint:#faedf4}
html[data-app-brand=scopeworks]{--app-accent:#345d85;--app-tint:#eef3f8}
html[data-app-brand=fra]{--app-accent:#a83c2c;--app-tint:#fbefec}
html:is([data-app-brand=organisation-access],[data-app-brand=organisation-area-access]){--app-accent:#4e5c70;--app-tint:#eef1f5}
html[data-app-brand] main{min-width:0}
html[data-app-brand] main>header:not(.site-header){display:block;padding:0;border:0;background:transparent;margin:0 0 1rem}
html[data-app-brand] main :is(h1,h2,h3){line-height:1.2}
html[data-app-brand] main p{margin-block:.5rem .75rem;line-height:1.5}
html[data-app-brand] main :is(button,.button,.app-admin-actions a){min-height:44px;border-radius:.4rem;font-weight:600;line-height:1.3;padding:.55rem .8rem}
html[data-app-brand] main button:not(:disabled){cursor:pointer}
html[data-app-brand] main :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #aa6610;outline-offset:3px}
html[data-app-brand] main button:disabled{cursor:not-allowed;opacity:.55}
html[data-app-brand] :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu){display:flex;flex-direction:row;flex-wrap:wrap;gap:.35rem;padding:.35rem 0;margin:.5rem 0 1rem;border:0;border-bottom:1px solid var(--app-line);background:transparent}
html[data-app-brand] :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is(button,a){display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;min-height:44px;margin:0;padding:.55rem .75rem;border:1px solid transparent;border-radius:.4rem;background:transparent;color:var(--app-accent);text-decoration:none;font-size:.9rem;line-height:1.3;box-shadow:none;white-space:normal}
html[data-app-brand] :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is([aria-current=page],[aria-pressed=true],.active){background:var(--app-tint);border-color:var(--app-line);color:var(--app-accent);box-shadow:inset 0 -3px var(--app-accent);font-weight:700}
html[data-app-brand] :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is(button,a):hover:not(:disabled){background:var(--app-tint)}
html[data-app-brand=policies] .policy-app{display:block}
html[data-app-brand=policies] .policy-app>aside>h2{display:none}
html[data-app-brand=policies] .policy-app aside nav a{width:auto}
/* Ordinary registers share density. Calendar and risk heat-map cells retain meaning. */
html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property],[data-app-brand=organisation-access],[data-app-brand=organisation-area-access]) main table{width:100%;border-collapse:collapse;text-align:left;background:white}
html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property],[data-app-brand=organisation-access],[data-app-brand=organisation-area-access]) main :is(th,td){padding:.6rem .75rem;border-bottom:1px solid var(--app-line);vertical-align:top;line-height:1.4}
html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property]) main th{background:var(--app-tint);font-weight:700}
html[data-app-brand] main td button{margin:.1rem;white-space:nowrap}
html[data-app-brand=keys] main table{min-width:50rem}
html[data-app-brand] main .scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
html[data-app-brand] .app-administration{padding:.5rem .75rem}
html[data-app-brand] .app-administration>summary{min-height:44px;align-content:center;color:var(--app-accent)}
html[data-app-brand] .app-admin-actions a{color:var(--app-accent);background:var(--app-tint)}
@media(max-width:40rem){html[data-app-brand] main{padding-inline:1rem}html[data-app-brand] .site-topbar .app-submenu{flex-wrap:wrap}html[data-app-brand] main h1{font-size:clamp(1.65rem,6vw,2.2rem)}}
}
@media print{html[data-app-brand] .app-administration,html[data-app-brand] .organisation-settings-sections{display:none!important}html[data-app-brand] main table{min-width:0}html[data-app-brand] main .scroll{overflow:visible}}

html[data-app-brand] [hidden]{display:none!important}

/* Keep key-copy actions visible inside the available app width. */
html[data-app-brand=keys] main table.keys-register{min-width:0;table-layout:fixed}
html[data-app-brand=keys] main table.keys-register th:nth-child(1){width:30%}
html[data-app-brand=keys] main table.keys-register th:nth-child(2){width:28%}
html[data-app-brand=keys] main table.keys-register th:nth-child(3){width:18%}
html[data-app-brand=keys] main table.keys-register th:nth-child(4){width:24%}
html[data-app-brand=keys] main table.keys-register :is(th,td,button){overflow-wrap:anywhere;white-space:normal}
html[data-app-brand=keys] main table.keys-register button{max-width:100%;margin-inline:0}
@media(max-width:40rem){
 html[data-app-brand=keys] main table.keys-register,html[data-app-brand=keys] main table.keys-register :is(tbody,tr,td){display:block;width:100%;box-sizing:border-box}
 html[data-app-brand=keys] main table.keys-register thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 html[data-app-brand=keys] main table.keys-register tr{border-bottom:1px solid #cbd8d2;padding:.4rem}
 html[data-app-brand=keys] main table.keys-register td{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:.5rem;border:0;padding:.4rem}
 html[data-app-brand=keys] main table.keys-register td::before{content:attr(data-label);font-weight:600}
 html[data-app-brand=keys] main table.keys-register td>small{grid-column:2}
 html[data-app-brand=keys] main table.keys-register td br{display:none}
}

/* To Action presentation release, 27 October 2026.
   Shared geometry and approved tokens; authority, record values and print layouts stay app-owned. */
@media screen{
html{--ink:#202831;--muted:#56616d;--green:#14766e;--surface:#fff;--line:#ccd9d5}
html body{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;color:var(--ink);background:#f6f7f3;line-height:1.5}
html[data-app-brand] :is(#main,main) :is(.rotas-candidate,#hr){font-family:inherit;color:var(--ink)}
html[data-app-brand] :is(#main,main){max-width:1280px;margin:0 auto;padding:16px 24px;min-width:0}
html[data-app-brand=home] main{padding:0 16px}
html[data-app-brand] :is(#main,main) h1,html[data-app-brand] #main #hr h1{font-size:32px;line-height:1.2;font-weight:700;letter-spacing:-.035em;margin:4px 0 12px;color:var(--ink)}
html[data-app-brand] :is(#main,main) h2{font-size:22px;line-height:1.25;margin:16px 0 8px}
html[data-app-brand] :is(#main,main) h3{font-size:18px;line-height:1.3;margin:12px 0 6px}
html[data-app-brand] :is(#main,main) p{margin:4px 0 8px;line-height:1.5;overflow-wrap:anywhere}
html[data-app-brand] :is(#main,main) :is(.eyebrow,.status,.muted,.field-help){color:var(--muted)}
html[data-app-brand] :is(#main,main) .eyebrow{font-size:12px;letter-spacing:.1em;margin:0 0 4px}
html[data-app-brand] #main .meetings>header,html[data-app-brand] #main #hr>header,html[data-app-brand] main>header:not(.site-header){background:transparent;display:block;margin:0 0 12px;padding:0 0 8px;border:0}
html[data-app-brand] :is(#main,main) :is(button,.button){font-family:inherit;font-size:14px;font-weight:600;line-height:1.35;min-height:44px;max-width:100%;padding:10px 14px;border:1px solid var(--green);border-radius:6px;background:var(--green);color:#fff;vertical-align:middle;text-decoration:none;overflow-wrap:anywhere}
html[data-app-brand] :is(#main,main) :is(button.secondary,a.button.secondary){background:white;color:var(--green);border-color:#94aaa4}
html[data-app-brand] :is(#main,main) :is(button.danger,button.destructive){background:#a33127;color:white;border-color:#a33127}
html[data-app-brand] :is(#main,main) button:disabled{cursor:not-allowed;opacity:1;background:#edf1ef;color:#56616d;border-color:#cbd5d1}
html[data-app-brand] :is(#main,main) :is(input,select,textarea){font-family:inherit;font-size:16px;line-height:1.4;min-height:44px;border-radius:6px;padding:9px 12px}
html[data-app-brand] :is(#main,main) input:is([type=checkbox],[type=radio]){min-height:20px;padding:0;width:20px;height:20px;display:inline-block}
html[data-app-brand] :is(#main,main) label{margin:8px 0;font-size:14px;line-height:1.4}
html[data-app-brand] :is(#main,main) :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #a96314;outline-offset:3px}
html #site-menu-toggle{min-height:44px}
html .site-sidebar{gap:8px;padding-top:16px}
html #site-navigation{gap:2px}
html #site-navigation a{min-height:44px;padding:10px 12px}
html #site-navigation a[aria-current=page]{background:#14766e}
html .site-topbar{padding:8px 24px;gap:4px}
html .site-account-actions button{min-height:44px;font:600 14px/1.35 Inter,system-ui,sans-serif}
/* Compact surrounding space, rather than shrinking interactive targets. */
html #workspace>.workspace-view{padding:16px 0 24px}
html #workspace>.context-control{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 0;padding:8px 12px;max-width:100%;border-radius:6px;min-height:0}
html #workspace>.context-control p{margin:0}
html #workspace>.context-control button{margin:0}
html #workspace>#retained-draft{margin:12px 0 0}
html[data-app-brand] :is(#main,main) :is(.contact-form,.contact-search,.card,.form-card,.panel,.auth-card){padding:16px;gap:12px}
html[data-app-brand] #main #hr :is(section,.card),html[data-app-brand] #main .layout>section{padding:16px;margin:12px 0}
html[data-app-brand] #main #hr details{margin:12px 0;padding:8px 0}
html[data-app-brand] .app-administration{margin:0 0 12px;padding:4px 12px}
html[data-app-brand] .app-administration>summary{min-height:44px}
html[data-app-brand] :is(.policy-access,.lp-access)>a.button{display:inline-flex;align-items:center;margin:4px 0 8px}
/* One tab treatment, including HR destinations and Assets/Issues. */
html[data-app-brand] :is(#main,main,.site-topbar) :is(.app-submenu,#keys-navigation,#scope-root nav,nav[aria-label="Risk Matrix pages"],nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections){display:flex;flex-direction:row;flex-wrap:wrap;gap:4px;margin:8px 0 12px;padding:0 0 4px;border:0;border-bottom:1px solid var(--line);background:transparent}
html[data-app-brand] :is(#main,main,.site-topbar) :is(.app-submenu,#keys-navigation,#scope-root nav,nav[aria-label="Risk Matrix pages"],nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections)>:is(a,button){display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;min-height:44px;margin:0;padding:10px 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--app-accent,#14766e);font-size:14px;line-height:1.35;font-weight:600;text-decoration:none;box-shadow:none;white-space:normal}
html[data-app-brand] :is(#main,main,.site-topbar) :is(.app-submenu,#keys-navigation,#scope-root nav,nav[aria-label="Risk Matrix pages"],nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections)>:is([aria-current=page],[aria-pressed=true],.active){background:var(--app-tint,#eaf5f2);border-color:var(--line);box-shadow:inset 0 -3px var(--app-accent,#14766e);font-weight:700}
/* Ordinary register geometry only; calendars and risk heat maps are excluded. */
html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property],[data-app-brand=assets-issues],[data-app-brand=organisation-access],[data-app-brand=organisation-area-access]) :is(#main,main) :is(th,td){padding:8px 12px;text-align:left;vertical-align:top;line-height:1.4;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property],[data-app-brand=assets-issues]) :is(#main,main) th{background:var(--app-tint,#eaf5f2);color:var(--ink);font-size:14px}
html[data-app-brand] #main #controls .toolbar{align-items:end;gap:8px;margin:8px 0 12px}
html[data-app-brand] #main #controls .toolbar label{margin:0}
html[data-app-brand] #main #diary-filters{padding:12px;gap:8px 12px;margin:12px 0}
html[data-app-brand] #main #diary-filters :is(label,p){margin:0}
html[data-app-brand] #main #calendar td button{background:white;color:var(--ink);border-color:var(--line);text-align:left}
html[data-app-brand=matrix] #main :is(#first,#next,[data-risk]),html[data-app-brand=procedures] #main [data-open]{background:white;color:var(--green);border-color:#94aaa4}
html[data-app-brand=keys] main>p.notice{background:#edf3f1;color:var(--muted);padding:8px 12px}
html[data-app-brand=buildings] .compliance-main .workspace-heading{gap:8px}
html[data-app-brand=buildings] .compliance-main .workspace-heading>p{max-width:85ch;font-size:14px}
html[data-app-brand=buildings] .compliance-main .workspace-heading>label{margin:0}
html[data-app-brand=buildings] .compliance-content .panel{padding:16px}
html[data-app-brand=fra] .fra-directory{padding-top:16px}
@media(max-width:640px){
 html[data-app-brand] :is(#main,main){padding:12px 16px}
 html[data-app-brand=home] main{padding:0 12px}
 html[data-app-brand] :is(#main,main) h1,html[data-app-brand] #main #hr h1{font-size:28px}
 html[data-app-brand] :is(#main,main) h2{font-size:20px}
 html .site-topbar{padding:8px 12px}
 html #site-navigation a{padding:10px 6px}
 html #workspace>.workspace-view{padding-top:12px}
 html[data-app-brand] #main #controls .toolbar>*{max-width:100%}
 html[data-app-brand] #main #diary-filters{grid-template-columns:1fr}
 html[data-app-brand] #main #diary-filters>*{grid-column:1}
}
}
@media screen{
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view) .app-card :is(h2,h3){font-size:14px;line-height:1.3;margin:0}
html[data-app-brand] main .pin-button{background:#fff;color:#14766e;border-color:#94aaa4;min-width:44px;min-height:44px}
html[data-app-brand] main .text-button{background:transparent;color:#14766e;border-color:transparent}
html[data-app-brand=fra] main#assessments{padding:16px 24px 24px}
html[data-app-brand=fra] #assessments .documents-heading{margin-bottom:12px}
html[data-app-brand=fra] #assessments .new-assessment-panel{padding:16px;margin-bottom:16px;gap:16px}
html[data-app-brand=fra] #assessments .organisation-summary{padding:8px 12px;margin-bottom:16px}
html[data-app-brand=fra] #assessments .document-open{background:transparent;color:#202831;text-align:left;padding:16px;min-height:12rem;border:0;gap:12px}
html[data-app-brand=fra] #assessments .document-open:hover{background:#eaf5f2}
html[data-app-brand=fra] #assessments .buy-fra{background:#14766e;border-color:#14766e;color:white;min-height:44px}
html[data-app-brand=keys] main :is(section,article){padding:16px;margin:12px 0}
html[data-app-brand=procedures] #main [data-read]{background:white;color:#14766e;border-color:#94aaa4}
@media(max-width:640px){html[data-app-brand=fra] main#assessments{padding:12px 16px 24px}}
}
@media screen{
html[data-app-brand=buildings] :is(#main,main) .workspace-heading{gap:4px}
html[data-app-brand=buildings] :is(#main,main) .workspace-heading>:is(p,h1,label){margin:0}
html[data-app-brand=buildings] :is(#main,main) .save-status:empty{display:none}
html[data-app-brand=buildings] :is(#main,main) .starter-forms>button{background:#fff;color:#14766e;border-color:#94aaa4}
}
@media screen{
/* A record is a secondary entry point; metadata must stay readable on its surface. */
html[data-app-brand] #main .meetings button.record{background:#fff;color:#202831;border-color:#94aaa4;text-align:left}
html[data-app-brand] #main .meetings button.record:hover{background:#f2edfa}
html[data-app-brand] #main .meetings button.record span{color:#56616d}
}
@media screen{
/* Short pages must not distribute spare viewport height between grid rows. */
html #workspace{align-content:start}
/* Reserve a real grid column for Pin rather than overlapping the app name. */
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view) .app-card{grid-template-columns:24px minmax(0,1fr) 44px}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view) .app-card :is(h2,h3){padding-right:0}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view) .app-card .pin-button{position:static;grid-column:3;grid-row:1;justify-self:end;align-self:start;margin:0;min-width:44px;min-height:44px}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view) .app-card.is-unavailable :is(h2,h3){grid-column:2/-1}
}

/* To Action bright presentation: website paper/ink palette, product accents. */
@media screen{
html[data-app-brand]{--ink:#202831;--muted:#56616d;--surface:#fff;--line:#dce1e6;--app-line:#dce1e6;--brand-gold:#de941f;--brand-teal:#14766e}
html body{background:#fff;color:#202831}
html .site-sidebar{background:#fff;border-right-color:#dce1e6;color:#202831}
html .site-sidebar .brand,html .site-sidebar .brand strong{color:#202831}
html #site-menu-toggle{color:#56616d}
html #site-menu-toggle:hover,html #site-navigation a:hover{background:#f4f5f7;color:#202831}
html #site-navigation a{color:#38424e;border:1px solid transparent;border-left:3px solid transparent}
html #site-navigation a[aria-current=page]{background:#fff7e7;color:#202831;border-color:#f0dfbb;border-left:3px solid #de941f;box-shadow:none}
html #site-navigation a[data-main-area=administration]{border-top-color:#dce1e6}
html .site-topbar{background:#fff;color:#202831;border-bottom-color:#dce1e6}
html .site-area{color:#56616d}
html .site-header .site-account-actions button{background:#fff;color:#202831;border-color:#dce1e6}
html .site-header .site-account-actions button:hover{background:#f4f5f7;border-color:#14766e}
html .site-environment,html .notice{background:#f4f5f7;color:#56616d;border-color:#dce1e6}
html #workspace>.context-control{background:#f4f5f7;color:#202831;border:1px solid #dce1e6}
html #workspace>.context-control button{color:#14766e}
html[data-app-brand] :is(#main,main) :is(.card,.form-card,.panel,.auth-card,.app-administration){background:#fff;border-color:#dce1e6}
html[data-app-brand] .app-administration>summary{color:#202831}
html[data-app-brand] :is(#main,main) :is(input,select,textarea){background:#fff;color:#202831;border-color:#c8d0d9}
html[data-app-brand] :is(#main,main) :is(button,.button){background:#fff;color:var(--app-accent,#14766e);border-color:#c8d0d9}
html[data-app-brand] :is(#main,main) :is(button[type=submit],button.primary,a.button.primary){background:var(--app-accent,#14766e);border-color:var(--app-accent,#14766e);color:#fff}
html[data-app-brand] :is(#main,main) :is(button.secondary,a.button.secondary){background:#fff;color:var(--app-accent,#14766e);border-color:#c8d0d9}
html[data-app-brand] :is(#main,main) :is(button.danger,button.destructive){background:#a33127;border-color:#a33127;color:#fff}
html[data-app-brand] :is(#main,main) button:disabled{background:#f4f5f7;border-color:#dce1e6;color:#687482}
html[data-app-brand=risk]{--app-accent:#436d2c;--app-tint:#eff6e9}
html[data-app-brand] .app-card{--card-accent:#14766e;background:#fff;border-color:#dce1e6;border-top:3px solid var(--card-accent);box-shadow:0 2px 6px #20283106}
html[data-app-brand] .app-card:has(img[src$="contacts-mark-colour.svg"]),html[data-app-brand] .app-card:has(img[src$="policies-mark-colour.svg"]),html[data-app-brand] .app-card:has(img[src$="resource-library-mark-colour.svg"]){--card-accent:#225e9d}
html[data-app-brand] .app-card:has(img[src$="meetings-mark-colour.svg"]){--card-accent:#6545a4}
html[data-app-brand] .app-card:has(img[src$="risk-matrix-mark-colour.svg"]),html[data-app-brand] .app-card:has(img[src$="risk-assessments-mark-colour.svg"]),html[data-app-brand] .app-card:has(img[src$="procedures-mark-colour.svg"]){--card-accent:#436d2c}
html[data-app-brand] .app-card:has(img[src$="tasks-mark-colour.svg"]),html[data-app-brand] .app-card:has(img[src$="rotas-mark-colour.svg"]),html[data-app-brand] .app-card:has(img[src$="issues-mark-colour.svg"]){--card-accent:#006b83}
html[data-app-brand] .app-card:has(img[src$="scopeworks-mark-colour.svg"]){--card-accent:#345d85}
html[data-app-brand] .app-card:has(img[src$="staffline-mark-colour.svg"]){--card-accent:#9a3d71}
html[data-app-brand] .app-card:has(img[src$="fra-mark-colour.svg"]){--card-accent:#a83c2c}
html[data-app-brand] .app-card:has(img[src$="preaching-plan-mark-colour.svg"]){--card-accent:#84459a}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card>button:not(.pin-button){background:#fff;border-color:var(--card-accent);color:var(--card-accent)}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card>button:not(.pin-button):not(:disabled):hover{background:var(--card-accent);color:#fff}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card .pin-button{background:#fff;color:#56616d;border-color:#dce1e6;box-shadow:none}
html[data-app-brand] .app-card .app-status{background:#f4f5f7;color:#38424e}
html[data-app-brand] .app-card.is-unavailable{--card-accent:#a8b1bc;background:#f7f8fa}
html[data-app-brand] .app-card.is-unavailable .app-status{background:#edf0f3;color:#56616d}
html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property],[data-app-brand=assets-issues]) :is(#main,main) th{background:#f4f5f7;color:#202831}
html .app-submenu a[aria-current=page]{background:#fff7e7;color:#202831;box-shadow:inset 0 -3px #de941f}
html .organisation-settings-sections a[aria-current=page]{background:#fff7e7;color:#202831;border-color:#de941f}
html .risk-note{background:#f4f5f7;color:#202831;border-left-color:var(--app-accent,#14766e)}
}

/* Compact catalogue cards: one title, optional favourite and one launch action. */
@media screen{
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card.is-ready{grid-template-rows:minmax(44px,auto) minmax(44px,auto);gap:8px;padding:12px;border-top-width:2px;border-radius:10px}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card.is-ready>button.app-launch{grid-row:2;grid-column:1/-1;justify-self:end;width:auto;min-width:90px;background:#f4f5f7;color:var(--card-accent);border-color:transparent;border-radius:8px;margin:0;padding:10px 14px}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card>button.app-launch::after{content:" →";margin-left:8px}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card.is-ready>button.app-launch:hover{background:var(--card-accent);color:#fff}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card button.pin-button.secondary{border:0;border-radius:50%;color:#687482;background:transparent;box-shadow:none}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card .pin-button:hover{background:#fff7e7;color:#875309}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card .pin-button[aria-pressed=true]{color:#875309;background:#fff7e7}
}

/* Cleaner controls across native apps and tools; calendars and risk cells remain app-owned. */
@media screen{
html[data-app-brand]{background:#fff;--control-radius:8px;--card-radius:10px;--control-surface:#f4f5f7;--control-border:#dce1e6}
html[data-app-brand] :is(#main,main) :is(button,.button,.app-admin-actions a){border-radius:var(--control-radius);font-size:14px;font-weight:600;line-height:1.35;min-height:44px;padding:10px 14px;text-decoration:none;box-shadow:none}
html[data-app-brand] :is(#main,main) :is(button,.button,.app-admin-actions a):where(:not(:disabled):not(.primary):not(.danger):not(.destructive):not([type=submit])){background:var(--control-surface);color:var(--app-accent,#14766e);border-color:transparent}
html[data-app-brand] :is(#main,main) :is(button,.button,.app-admin-actions a):where(:not(:disabled):not(.primary):not(.danger):not(.destructive):not([type=submit])):hover{background:var(--app-tint,#eaf5f2);border-color:var(--control-border);filter:none}
html[data-app-brand] :is(#main,main) :is(button.primary,a.button.primary,button[type=submit]){background:var(--app-accent,#14766e);color:#fff;border-color:var(--app-accent,#14766e)}
html[data-app-brand] :is(#main,main) :is(button.danger,button.destructive){background:#a33127;color:#fff;border-color:#a33127}
html[data-app-brand] :is(#main,main) :is(button,.button):disabled{background:#f4f5f7;color:#687482;border-color:#dce1e6;opacity:1;cursor:not-allowed}
html[data-app-brand] :is(#main,main) :is(.panel,.form-card,.card,.auth-card,.app-administration,fieldset){border-radius:var(--card-radius);border-color:var(--control-border);box-shadow:none}
html[data-app-brand] :is(#main,main) :is(.panel,.form-card,.card){padding:14px}
html[data-app-brand] :is(#main,main) button.record{background:#fff;border:1px solid var(--control-border);border-radius:var(--card-radius);text-align:left;padding:14px}
html[data-app-brand] .app-administration>summary{font-size:14px;font-weight:600;min-height:44px;color:#38424e}
html[data-app-brand] .site-header .site-account-actions button{font-size:14px;border-radius:var(--control-radius);min-height:44px;background:#f4f5f7;border-color:transparent;color:#38424e;box-shadow:none}
html[data-app-brand] :is(#main,main,.site-topbar) :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Risk Assessment pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu){gap:4px;margin:8px 0 12px;padding:4px 0 8px;border-bottom:1px solid #dce1e6;background:transparent}
html[data-app-brand] :is(#main,main,.site-topbar) :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Risk Assessment pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is(button,a){border:1px solid transparent;border-radius:8px;background:transparent;color:#56616d;box-shadow:none;font-size:14px;font-weight:600;padding:10px 12px;min-height:44px;margin:0;text-decoration:none;filter:none}
html[data-app-brand] :is(#main,main,.site-topbar) :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Risk Assessment pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is(button,a):not(:disabled):hover{background:#f4f5f7;color:#202831;border-color:transparent;filter:none}
html[data-app-brand] :is(#main,main,.site-topbar) :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Risk Assessment pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is([aria-current=page],[aria-pressed=true],[aria-selected=true],.active){background:#fff7e7;color:#70450a;border-color:#f0dfbb;box-shadow:none;font-weight:600}
/* Keep catalogue favourites and launch controls subordinate to the app title. */
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card button.pin-button.secondary{background:transparent;border:0;color:#687482;border-radius:50%;padding:8px}
html[data-app-brand] :is(#apps-view,#my-tools-view,#explore-view,#explore-tools-view,#home-view) .app-card button.pin-button.secondary[aria-pressed=true]{background:#fff7e7;color:#875309}
html[data-app-brand] :is(#main,main) :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #a96314;outline-offset:3px}
@media(prefers-reduced-motion:no-preference){html[data-app-brand] :is(button,.button){transition:background-color .15s,border-color .15s,color .15s}}
}

@media screen{html[data-app-brand] body{min-height:100dvh}}
@media screen{
/* Informational cards use white paper; semantic alerts and calendar ratings keep their colours. */
html[data-app-brand] :is(#main,main) :is(.home-welcome,.new-assessment-panel,.fra-section-intro){background:#fff;border-color:#dce1e6;border-radius:10px;padding:14px;box-shadow:none}
html[data-app-brand] :is(#main,main) :is(.organisation-summary,.admin-summary,.annual-offer,#history-output,#invite-result){background:#f4f5f7;border-color:#dce1e6;color:#38424e;border-radius:8px;padding:10px 14px}
html[data-app-brand] :is(#main,main) .fra-section-intro{border-left:3px solid #de941f}
html[data-app-brand=fra] #assessments .new-assessment-action .buy-fra{background:var(--app-accent);border-color:var(--app-accent);border-radius:8px;min-height:44px;font-size:14px;padding:10px 14px;color:#fff}
}


/* Compact operational density — screen only; preserve root/rem geometry and print. */
@media screen {
 :root{--ui-text:14px;--ui-text-small:13px;--ui-line-height:1.45;--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-control-height:44px}
 html[data-app-brand] body{font-size:var(--ui-text);line-height:var(--ui-line-height)}
 html[data-app-brand] :is(#main,main){margin-block:12px;padding-block:0}
 html[data-app-brand] :is(#main,main) h1,html[data-app-brand] #main #hr h1{font-size:26px;line-height:1.2;margin:8px 0 12px;letter-spacing:-.025em}
 html[data-app-brand] :is(#main,main) h2{font-size:20px;line-height:1.25;margin:16px 0 8px}
 html[data-app-brand] :is(#main,main) h3{font-size:16px;line-height:1.3;margin:12px 0 6px}
 html[data-app-brand] :is(#main,main) p{margin-block:4px;line-height:var(--ui-line-height)}
 html[data-app-brand] :is(#main,main) :is(.intro,.status-note,.field-help,.email-guidance,.app-detail){line-height:var(--ui-line-height);margin-block:6px 12px}
 html[data-app-brand] :is(#main,main) :is(ul,ol){margin-block:8px;padding-left:24px}
 html[data-app-brand] :is(#main,main) li{margin-block:4px}
 html[data-app-brand] :is(#main,main) label{font-size:14px;line-height:1.4;margin-block:8px}
 html[data-app-brand] :is(#main,main) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:14px;line-height:1.4;padding:8px 10px;margin-top:4px;min-height:var(--ui-control-height)}
 html[data-app-brand] :is(#main,main) textarea{min-height:88px}
 html[data-app-brand] :is(#main,main) :is(button,.button,.app-admin-actions a){min-height:var(--ui-control-height);padding:8px 12px;font-size:14px;line-height:1.35}
 html[data-app-brand] .site-header .site-account-actions button{min-height:var(--ui-control-height);padding:8px 12px}
 html[data-app-brand] :is(#main,main) :is(.grid,.form-cards,.records-grid,.history-list){gap:12px;margin-block:12px}
 html[data-app-brand] :is(#main,main) :is(.card,.panel,.form-card,.auth-card){padding:14px}
 html[data-app-brand] :is(#main,main) details{padding-block:12px}
 html[data-app-brand] :is(#main,main) summary{min-height:var(--ui-control-height);align-content:center}
 html[data-app-brand] .site-topbar{gap:4px;padding-block:10px}
 html[data-app-brand] #site-navigation{gap:2px}
 html[data-app-brand] #site-navigation a{min-height:var(--ui-control-height);font-size:14px;padding:8px 10px}
 html[data-app-brand] .app-submenu{gap:4px;margin-block:4px 8px;padding-block:2px 4px}
 html[data-app-brand] .app-submenu :is(button,a){min-height:var(--ui-control-height);padding:8px 10px;font-size:14px}
 html[data-app-brand] :is(#main,main) :is(small,.muted,.field-help,.status-note,.eyebrow){font-size:13px}
 html[data-app-brand] :is(#main,main,.site-topbar) :is(#keys-navigation,#scope-root nav,#main nav[aria-label="Risk Matrix pages"],#main nav[aria-label="Risk Assessment pages"],#main nav[aria-label="Procedures pages"],nav[aria-label="Contact categories"],nav[aria-label="HR views"],nav[aria-label="HR destinations"],nav[aria-label="Meeting views"],nav[aria-label="Rotas sections"],#nav[aria-label="Work areas"],.safety-categories,.policy-app aside nav,.organisation-settings-sections,.app-submenu)>:is(button,a){min-height:var(--ui-control-height);padding:8px 10px;font-size:14px}
 /* Registers only: calendar/scheduler/heat-map cells retain their semantic geometry. */
 html:is([data-app-brand=keys],[data-app-brand=contacts],[data-app-brand=policies],[data-app-brand=scopeworks],[data-app-brand=lost-property],[data-app-brand=organisation-access],[data-app-brand=organisation-area-access]) main :is(th,td){padding:8px 10px;font-size:14px;line-height:1.4}
}
@media screen and (min-width:901px) and (pointer:fine){:root{--ui-control-height:36px}}
@media screen and (max-width:900px){
 html[data-app-brand] :is(#main,main){margin-block:8px}
 html[data-app-brand] :is(#main,main) h1,html[data-app-brand] #main #hr h1{font-size:24px}
 html[data-app-brand] :is(#main,main) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}
 html[data-app-brand] :is(#main,main) :is(.card,.panel,.form-card,.auth-card){padding:12px}
}

/* Central app settings: same compact buttons as the application catalogue. */
.app-settings-card{display:flex;flex-direction:column;gap:.5rem;padding:.9rem}.app-settings-card h2{font-size:1rem;margin:0}.app-settings-card .app-icon{width:28px;height:28px}.app-settings-card a.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:.5rem .8rem;border:1px solid #117d83;border-radius:.4rem;background:#117d83;color:#fff;text-decoration:none;font-weight:600}.app-settings-card a.secondary{background:#fff;color:#14676d}.app-settings-card p{margin:.25rem 0}
