:root {
  --paper:#f5f8fc;
  --paper-2:#edf3f9;
  --paper-3:#e1eaf4;
  --white-card:#ffffff;
  --ink:#10233f99;
  --ink-full:#10233f;
  --ink-soft:#40536d;
  --ink-muted:#6f8096;
  --ink-faint:#9aa9ba;
  --navy:#082b4f;
  --blue:#0b5fa5;
  --blue-mid:#1679c5;
  --blue-light:#eaf5ff;
  --sky:#1b83d5;
  --gold:#ff7657;
  --accent:#ff7657;
  --border:#dce6f0;
  --border-mid:#c9d7e5;
  --green:#138a66;
  --red:#d94b55;
  --font:'Manrope',sans-serif;
  --font-display:'Plus Jakarta Sans',sans-serif;
  --sh-sm:0 2px 8px rgba(8,43,79,.06);
  --sh-md:0 12px 30px rgba(8,43,79,.09);
  --sh-lg:0 22px 60px rgba(8,43,79,.14);
}

html{background:var(--paper)}
body a{text-decoration:none}
body{
  font-family:var(--font)!important;
  color:var(--ink-full);
  background:
    radial-gradient(circle at 5% 4%,rgba(27,131,213,.07),transparent 24rem),
    var(--paper)!important;
  animation:none!important;
}
h1,h2,h3,h4,h5,h6,.logo-name,.foot-brand{font-family:var(--font-display)!important}

.site-nav{
  height:72px!important;
  padding:0 28px!important;
  background:rgba(255,255,255,.88)!important;
  border-bottom:0!important;
  box-shadow:0 8px 30px rgba(8,43,79,.045);
  backdrop-filter:blur(18px) saturate(150%)!important;
}
.nav-in{
  max-width:1320px!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;
}
.nav-in:hover{background:transparent!important;border-color:transparent!important}
.logo img{width:46px!important;height:46px!important}
.nav-links{gap:3px!important}
.nav-links a{
  font-family:var(--font)!important;
  font-size:.78rem!important;
  font-weight:700!important;
  color:var(--ink-soft)!important;
  padding:9px 11px!important;
  border-radius:11px!important;
}
.nav-links a:hover{background:var(--blue-light)!important;color:var(--blue)!important;transform:none!important}
.nav-links a.active{background:var(--blue-light)!important;color:var(--blue)!important}
.nbtn-solid,.btn-primary,.btn-accent{
  color:#fff!important;
  background:linear-gradient(135deg,var(--blue),var(--blue-mid))!important;
  box-shadow:0 8px 20px rgba(11,95,165,.2);
}
.nbtn-solid,.nbtn-ghost,.user-avatar-btn,.btn{font-family:var(--font)!important;border-radius:12px!important}
.nbtn-solid:hover,.btn-primary:hover,.btn-accent:hover{transform:translateY(-1px)!important;box-shadow:0 12px 26px rgba(11,95,165,.27)!important}
.user-avatar-btn{background:var(--paper)!important;border:1px solid var(--border)!important;padding:6px 10px!important}
.user-avatar{background:linear-gradient(135deg,var(--navy),var(--blue-mid))!important}
.user-dropdown-menu{border-radius:16px!important;border-color:var(--border)!important;box-shadow:var(--sh-lg)!important}

.container,.cw{max-width:1320px!important}
.card,.fsb,.hot,.ih-panel,.sum,.detail-sec,.profile-content{
  background:#fff!important;
  border:1px solid var(--border)!important;
  box-shadow:var(--sh-sm)!important;
}
.card{border-radius:18px!important}
.card:hover{box-shadow:var(--sh-md)!important}
.form-control,input,select,textarea{font-family:var(--font)!important}
.form-control,input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=date],select,textarea{
  border-color:var(--border)!important;
  background:#fff!important;
  border-radius:12px!important;
}
.form-control:focus,input:focus,select:focus,textarea:focus{
  border-color:var(--sky)!important;
  box-shadow:0 0 0 4px rgba(27,131,213,.11)!important;
}
.btn{font-weight:800!important;letter-spacing:-.01em;padding:11px 20px!important}
.btn-outline{background:#fff!important;border:1px solid var(--border-mid)!important;color:var(--ink-full)!important}
.btn-outline:hover{border-color:var(--blue)!important;color:var(--blue)!important;background:var(--blue-light)!important}
.badge,.tag{border-radius:999px!important}
.badge-blue{background:var(--blue-light)!important;color:var(--blue)!important}
.badge-green{background:#e9f8f2!important;color:#087456!important}
.badge-red{background:#fff0f1!important;color:#bd3642!important}
.badge-gray{background:var(--paper-2)!important;color:var(--ink-soft)!important}

.page-header,.bk-hero,.pp-hero,.ih-head{
  background:
    radial-gradient(circle at 78% 12%,rgba(96,199,255,.28),transparent 18rem),
    linear-gradient(125deg,#062744 0%,#0a4f84 58%,#1079b8 100%)!important;
}

/* Banz notification island */
.messages-container{
  position:fixed!important;right:24px;top:88px;z-index:1000;
  width:min(410px,calc(100vw - 32px));margin:0!important;padding:0!important;
}
.alert{
  position:relative;overflow:hidden;
  min-height:78px;margin:0 0 12px!important;padding:14px 44px 14px 14px!important;
  display:grid!important;grid-template-columns:40px 1fr;align-items:center;gap:12px!important;
  border:1px solid rgba(255,255,255,.75)!important;border-radius:18px!important;
  color:var(--ink-full)!important;background:rgba(255,255,255,.94)!important;
  box-shadow:0 22px 60px rgba(8,43,79,.18)!important;
  backdrop-filter:blur(18px) saturate(150%);
  animation:banzAlertIn .38s cubic-bezier(.16,1,.3,1)!important;
}
.alert-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center}
.alert-icon svg{width:19px;height:19px}
.alert-copy{display:flex;flex-direction:column;line-height:1.35}
.alert-copy strong{font:800 .82rem var(--font-display);color:var(--ink-full)}
.alert-copy>span{font:500 .78rem var(--font);color:var(--ink-muted);margin-top:2px}
.alert-success .alert-icon{background:#e7f8f1;color:#087456}
.alert-error .alert-icon{background:#fff0f1;color:#bd3642}
.alert-warning .alert-icon{background:#fff5e8;color:#b96516}
.alert-info .alert-icon,.alert:not(.alert-success):not(.alert-error):not(.alert-warning) .alert-icon{background:var(--blue-light);color:var(--blue)}
.alert-close{position:absolute;right:12px;top:12px;width:26px;height:26px;border-radius:9px;color:var(--ink-faint);font-size:20px;line-height:1}
.alert-close:hover{background:var(--paper-2);color:var(--ink-full)}
.alert-progress{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--blue-mid);transform-origin:left;animation:banzProgress 6.2s linear forwards}
.alert-success .alert-progress{background:var(--green)}.alert-error .alert-progress{background:var(--red)}.alert-warning .alert-progress{background:#e38a2c}
.alert-leaving{animation:banzAlertOut .26s ease forwards!important}
@keyframes banzAlertIn{from{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:none}}
@keyframes banzAlertOut{to{opacity:0;transform:translateX(30px) scale(.97)}}
@keyframes banzProgress{to{transform:scaleX(0)}}

footer{background:#061f38!important;padding-top:64px!important}
.foot-brand b{color:#69c6ff!important}
.foot-links a:hover{color:#fff!important}

@media(max-width:900px){
  .site-nav{height:64px!important;padding:0 16px!important}
  .messages-container{top:76px;right:16px}
}

/* The mobile drawer is independent from the desktop navigation. */
.mob-sidebar{
  top:0!important;right:0!important;left:auto!important;bottom:0!important;
  width:min(360px,92vw)!important;height:100dvh!important;
  padding:0!important;background:#f8fbfe!important;border:0!important;
  border-radius:24px 0 0 24px!important;
  box-shadow:-24px 0 70px rgba(3,28,50,.24)!important;
  transform:translateX(110%)!important;overflow:hidden!important;
}
.mob-sidebar.open{transform:translateX(0)!important}
.mob-sidebar:before{display:none!important}
.mob-sidebar-head{
  min-height:78px!important;padding:16px 18px!important;
  border-bottom:1px solid var(--border)!important;background:#fff!important;
}
.mob-sidebar-head .logo img{width:52px!important;height:52px!important}
.mob-close{width:40px!important;height:40px!important;border:0!important;border-radius:13px!important;background:var(--paper-2)!important;color:var(--navy)!important}
.mob-sidebar .mob-nav{
  position:static!important;display:flex!important;flex:1!important;
  height:auto!important;min-height:0!important;width:100%!important;
  margin:0!important;padding:18px 14px!important;
  flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
  gap:4px!important;background:transparent!important;border:0!important;
  box-shadow:none!important;backdrop-filter:none!important;overflow-y:auto!important;
}
.mob-nav-label{padding:13px 12px 7px;color:var(--ink-faint);font-size:.59rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mob-sidebar .mob-link{
  display:grid!important;grid-template-columns:38px 1fr auto!important;align-items:center!important;
  width:100%!important;margin:0!important;padding:10px 11px!important;border-radius:14px!important;
  color:var(--ink-soft)!important;font:700 .83rem/1.2 var(--font)!important;text-align:left!important;
}
.mob-sidebar .mob-link i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(8,43,79,.06)}
.mob-sidebar .mob-link small{padding:4px 7px;border-radius:999px;background:#fff0ed;color:#d8583d;font-size:.53rem;font-weight:800;text-transform:uppercase}
.mob-sidebar .mob-link:hover,.mob-sidebar .mob-link.active{background:var(--blue-light)!important;color:var(--blue)!important}
.mob-sidebar-foot{padding:14px!important;background:#fff!important;border-top:1px solid var(--border)!important}
.mob-sidebar-foot a{display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
.mob-backdrop{background:rgba(3,24,43,.56)!important;backdrop-filter:blur(8px)!important}
@media(max-width:520px){
  .site-nav .logo img{width:42px!important;height:42px!important}
  .mob-sidebar{width:calc(100vw - 26px)!important}
}
