:root{--custom-primary:#10243a;}:root{--custom-hover:#004d40;}:root{--custom-accent:#1290ce;}:root{--custom-canvas:#f2f5f8;}:root{--custom-surface:#ffffff;}:root{--custom-text:#172531;}:root{--custom-muted:#586779;}:root{--custom-border:#dbe3e9;}:root{--custom-nav:#10243a;}:root{--custom-navtext:#ffffff;}:root{--green:var(--custom-primary);--green-dark:var(--custom-hover);--site-primary:var(--custom-primary);--site-canvas:var(--custom-canvas);--site-ink:var(--custom-text);--site-border:var(--custom-border);--primary:var(--custom-primary);--primary-hover:var(--custom-hover);--accent:var(--custom-accent);--blue:var(--custom-primary);--bg:var(--custom-canvas);--card:var(--custom-surface);--background:var(--custom-canvas);--surface:var(--custom-surface);--text:var(--custom-text);--muted:var(--custom-muted);--border:var(--custom-border);--nav-bg:var(--custom-nav);--teal:var(--custom-primary);--teal-hover:var(--custom-hover);--mail-green:var(--custom-primary);--mail-green-dark:var(--custom-hover);--civ-accent:var(--custom-primary);--civ-bg:var(--custom-canvas);--rr-teal:var(--custom-primary);--rr-bg:var(--custom-canvas);--accent-dark:var(--custom-hover);--ink:var(--custom-text);--line:var(--custom-border);--paper:var(--custom-surface)}
body{font-family:"Segoe UI",system-ui,sans-serif!important;color:var(--custom-text);background-color:var(--custom-canvas)}
.site-global-announcement{background:var(--custom-accent);color:#071824;text-align:center;padding:10px 18px;font-size:13px;font-weight:750;line-height:1.4}
.site-brand-logo{display:inline-block!important;object-fit:contain!important;max-width:none!important;height:44px!important;width:auto!important;max-width:88px!important;vertical-align:middle;margin-right:10px;border-radius:4px!important;flex:none}
.site-brand-standalone{display:inline-flex!important;align-items:center;gap:10px}
:where(.navbar,.topbar,.top,.app-top,.site-header,.auth-header,.shell>.sidebar,.brand-side){background-color:var(--custom-nav)!important;background-image:none!important;color:var(--custom-navtext)!important}
:where(.navbar,.topbar,.top,.app-top,.site-header) a{color:var(--custom-navtext)}
:where(.btn-primary,.btn-green,.btn-login,.btn-register,.btn-service,.primary-btn,.compose-btn,.create-btn,.btn.primary,.btn.primary-action){background-color:var(--custom-primary)!important;background-image:none!important;border-color:var(--custom-primary)!important;color:#fff!important}
:where(.btn-primary,.btn-green,.btn-login,.btn-register,.btn-service,.primary-btn,.compose-btn,.create-btn,.btn.primary):hover{background-color:var(--custom-hover)!important;border-color:var(--custom-hover)!important}
:where(.card,.panel,.admin-card,.stat-card,.quick-card,.auth-card,.form-card){border-radius:12px!important;border-color:var(--custom-border)}
:where(.btn,button,input,select,textarea){border-radius:9px}
:where(.container,.page,.main-container){max-width:1440px}
:where(input,select,textarea):focus-visible{outline-color:var(--custom-accent)!important}
:where(.card-header,.panel-head){background-image:none!important}
body.portal:not(.dark){--accent:var(--custom-primary);--accent-dark:var(--custom-hover);--canvas:var(--custom-canvas);--surface:var(--custom-surface);--ink:var(--custom-text);--muted:var(--custom-muted);--line:var(--custom-border)}
.brand-side .brand-icon{background-color:var(--custom-accent)!important}
/* Remove the coloured icon tile behind uploaded site logos on every portal.
   Leave the navigation/sidebar backgrounds and default no-logo monograms intact. */
.site-brand-logo{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;outline:0!important;padding:0!important}
.site-logo-container--mark,
:is(.brand-icon,.brand-mark,.civ-logo-icon,.rr-brandmark,.brand-shield,.logo-square,.logo-mark,.brand .logo):has(> img.site-brand-logo){
  background:transparent!important;background-color:transparent!important;
  background-image:none!important;border:0!important;box-shadow:none!important;
  outline:0!important;border-radius:0!important;padding:0!important;
  width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
  overflow:visible!important;
}
.site-logo-container--mark > .site-brand-logo,
:is(.brand-icon,.brand-mark,.civ-logo-icon,.rr-brandmark,.brand-shield,.logo-square,.logo-mark,.brand .logo) > .site-brand-logo{
  display:block!important;margin:0!important;border-radius:0!important;
}
.brand-lockup .brand-name strong{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.25}
.brand-top .brand-name{font-size:15px!important;line-height:1.35!important}
:where(.sidebar,.topbar,.shell .sidebar,.app .sidebar){--nav:var(--custom-nav);--accent:var(--custom-primary)}
/* Keep incident grade colours, statuses and service-specific warnings intact. */
.hero,.welcome-hero,.page-hero,.profile-hero{background-image:url("\/site\/uploads\/aebcbc51766dddacadfbd6798b76eb7eb453.png")!important;background-size:cover!important;background-position:center!important}
body:has(.auth-layout),body:has(.login-card),body.auth-page{background-image:url("\/site\/uploads\/1291a8c0c1447335d120e7fd9abbc1cbcfab.png")!important;background-position:center!important;background-size:cover!important}

/* Administrator CSS overrides */
