/**
 * KagaCDA v1.0.0 - restrained institutional interface standard.
 * Product Owner: Mustapha Abubakar.
 * Developed by Sahel Lode Integrated Nigeria Ltd.
 */
:root{
  --kaga-blue:#075f91;
  --kaga-blue-deep:#12384f;
  --kaga-red:#df2d34;
  --kaga-green:#0799db;
  --kaga-ink:#182a36;
  --kaga-muted:#60727d;
  --kaga-line:#d8e1e6;
  --kaga-soft:#f4f7f8;
}

/* Plain, purposeful surfaces: no decorative top arcs or artificial accents. */
.panel,.cards article,.work,.application,.bank-panel,.pending-panel,
.privacy-create,.privacy-list article,.request-card,.notification-count,
.notification-list,.receipt,.official-receipt,.locked-document{
  border-top-width:1px!important;
  border-radius:4px!important;
  box-shadow:none!important;
}
.panel::before,.panel::after,.cards article::before,.work::before,
.application::before,.application::after{display:none!important;content:none!important}

.auth-v310 .panel,.recovery-page .panel{border:1px solid var(--kaga-line)!important}
.recovery-page .panel{width:min(485px,100%)}
.recovery-brand{text-align:center;margin-bottom:25px}
.recovery-brand .recovery-logo{display:block;width:92px;height:92px;margin:0 auto 13px;object-fit:contain}
.recovery-brand .eyebrow{margin:0;color:var(--kaga-blue)}
.recovery-return{margin:18px 0 0;text-align:center}
.recovery-return a{display:inline-block;padding:9px 15px;border:1px solid var(--kaga-line);border-radius:3px;text-decoration:none;font-weight:700}

body.portal-shell-enabled{padding-left:280px;background:var(--kaga-soft)}
.portal-sidebar{
  width:280px;
  padding:18px 16px;
  background:#fff!important;
  color:var(--kaga-ink);
  border-right:1px solid var(--kaga-line);
  box-shadow:none;
}
.portal-brand{display:block;padding:5px 8px 20px;text-align:center;border-bottom:1px solid var(--kaga-line)}
.portal-brand img{display:block;width:82px;height:82px;margin:0 auto 9px;padding:0;background:transparent;border-radius:0;object-fit:contain}
.portal-brand strong{color:var(--kaga-blue-deep);font-size:1.15rem;letter-spacing:.01em}
.portal-brand span{margin-top:3px;color:var(--kaga-muted);font-size:.74rem}
.portal-nav{padding:14px 0}
.portal-nav section{margin-bottom:15px}
.portal-nav h2{margin:0 10px 5px;color:#758892;font-size:.65rem;letter-spacing:.09em}
.portal-nav a{margin:2px 0;padding:9px 11px;color:#344b59;border:1px solid transparent;border-radius:3px;font-size:.86rem}
.portal-nav a:hover{background:#f3f7f9;color:var(--kaga-blue-deep);border-color:#e0e7eb}
.portal-nav a.active{background:#eaf3f7;color:var(--kaga-blue-deep);border-color:#c8dce6;font-weight:750}
.portal-nav a.active::before{display:none!important;content:none!important}
.portal-signout{color:#a5242b!important;border-top:1px solid var(--kaga-line)}
.portal-signout:hover{color:var(--kaga-red)!important;background:#fff5f5}

.portal-shell-enabled .notice,.portal-shell-enabled .error,
.portal-shell-enabled .privacy-safe,.official-receipt .receipt-note{
  border-left-width:1px!important;
}
.portal-page-footer,.site-footer{background:#fff;border-top:1px solid var(--kaga-line)}
.portal-shell-enabled>.top{display:none!important}
.portal-shell-enabled>main{width:auto;max-width:none}
.portal-shell-enabled [class*="card"],.portal-shell-enabled [class*="panel"],
.portal-shell-enabled [class*="kpi"],.portal-shell-enabled .work{
  border-top-width:1px!important;
}
.application-preview{border-top:1px solid var(--kaga-line)!important;box-shadow:0 16px 45px rgba(24,42,54,.16)!important}
.public-register>header{border-bottom:1px solid var(--kaga-line)!important}

/* Public application header and footer use the colours taken from the logo. */
.application-header{
  min-height:86px;
  background:#f8fcfe!important;
  border:1.5px solid #0799db!important;
  box-shadow:none!important;
}
.application-header strong{color:#075f91!important}
.application-header>div>span{color:#425f70!important}
.application-header nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.application-header nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:8px 16px;
  background:#fff;
  color:#075f91!important;
  border:1.5px solid #0799db;
  border-radius:8px;
  font-weight:750;
  text-decoration:none;
}
.application-header nav a:hover,.application-header nav a:focus-visible{
  background:#eaf7fc;
  border-color:#075f91;
  outline:3px solid rgba(7,153,219,.18);
  outline-offset:2px;
}
.application-hero{
  position:relative;
  overflow:hidden;
  background:#f2f9fc!important;
  color:#17384e!important;
  border:1.5px solid #0799db!important;
  border-radius:14px!important;
  box-shadow:0 8px 22px rgba(7,95,145,.08)!important;
}
.application-hero::before{display:none!important;content:none!important}
.application-hero .eyebrow{color:#c9252d!important}
.application-hero h1{color:#075f91!important}
.application-hero>p:not(.eyebrow){color:#334f60!important;line-height:1.7}
.application-hero .fee-strip span,.application-hero .fee-strip strong{
  background:#fff!important;
  color:#17384e!important;
  border:1px solid #b8d8e7;
  border-radius:9px!important;
  box-shadow:none!important;
}
.application-hero .fee-strip b{color:#075f91}
.application-hero .fee-strip>strong{
  display:flex;
  align-items:center;
  border-color:#d7b63f;
  color:#6c5310!important;
}
.application-hero .fee-strip-single{grid-template-columns:1fr!important}
.application-hero .fee-strip-single>strong{justify-content:center;min-height:56px;font-size:1.05rem}
.site-footer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:100%!important;
  padding:20px max(24px,calc((100% - 1100px)/2))!important;
  text-align:left!important;
}
.site-footer strong{color:#075f91!important}
.site-footer span{margin-left:auto;text-align:right}
.site-footer a{color:#075f91!important;font-weight:750}

/* Humanised notification controls with a conventional selected state. */
.notification-tools nav{display:flex;gap:8px}
.notification-tools nav a{padding:9px 15px;border:1px solid var(--kaga-line);border-radius:3px;background:#fff;color:#455b68;text-decoration:none}
.notification-tools nav a.active{border-color:#9dbdce;background:#edf5f8;color:var(--kaga-blue-deep);font-weight:750}
.notification-tools nav a::after{display:none!important;content:none!important}
.notification-item{border-left:0!important}

/* Receipt watermark stays behind readable transaction information. */
.official-receipt,.receipt{position:relative;isolation:isolate;overflow:hidden}
.official-receipt::before,.receipt::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:18% 24%;
  background:url('/assets/kacoda-logo.png') center/contain no-repeat;
  opacity:.055;
}

/* Certificate remains beside the menu on screen and prints as one landscape page. */
.portal-shell-enabled .certificate-page{padding:22px;overflow:auto}
.portal-shell-enabled .certificate{max-width:100%;transform-origin:top left}
.certificate .citation{margin-top:5mm!important;font-size:4.2mm!important;line-height:1.55!important}
.certificate .cert-meta{margin-top:5mm!important;gap:20mm!important}
.certificate .cert-meta b{font-size:3.8mm!important}
.certificate .cert-meta span{font-size:2.7mm!important}

@media(max-width:900px){
  body.portal-shell-enabled{padding-left:0}
  .portal-sidebar{transform:translateX(-105%)}
  .portal-menu-open .portal-sidebar{transform:translateX(0)}
}

@media(max-width:700px){
  .application-header{align-items:flex-start;flex-direction:column;padding-top:14px;padding-bottom:14px}
  .application-header nav{width:100%}
  .application-header nav a{flex:1}
  .site-footer{align-items:flex-start!important;flex-direction:column!important;gap:7px!important}
  .site-footer span{margin-left:0;text-align:left}
}

@media print{
  @page{size:A4 landscape;margin:0}
  body.portal-shell-enabled{padding-left:0!important;background:#fff!important}
  .portal-sidebar,.portal-menu-toggle,.portal-page-footer,.portal-print-letterhead{display:none!important}
  .portal-shell-enabled .certificate-page{padding:0!important;overflow:visible!important}
  .certificate{width:297mm!important;height:210mm!important;max-width:none!important;margin:0!important;page-break-after:avoid;page-break-inside:avoid}
  .official-receipt::before,.receipt::before{opacity:.055!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
