/* ======================================================================
   THE AUTISM CLINIC CRM — NEXT UI V26
   Complete visual system. Functionality intentionally unchanged.
   ====================================================================== */

:root{
  --bg:#f4f6f9!important;
  --surface:#ffffff!important;
  --surface2:#f8fafc!important;
  --border:#e4e9f0!important;
  --border2:#d4dce7!important;
  --text:#172033!important;
  --text1:#172033!important;
  --text2:#344258!important;
  --text3:#66758b!important;
  --text4:#91a0b4!important;
  --blue:#f26a45!important;
  --blue-light:#fff1ec!important;
  --blue-dark:#d95432!important;
  --green:#12805c!important;
  --green-light:#eaf8f2!important;
  --amber:#b87318!important;
  --amber-light:#fff7e8!important;
  --red:#d84738!important;
  --red-light:#fff0ee!important;
  --purple:#7557d9!important;
  --teal:#1689a7!important;
  --sidebar-w:236px!important;
  --topbar-h:68px!important;
  --radius:16px!important;
  --shadow:0 1px 2px rgba(16,24,40,.03),0 8px 24px rgba(16,24,40,.045)!important;
  --shadow-md:0 10px 30px rgba(20,32,52,.10)!important;
  --shadow-lg:0 28px 80px rgba(20,32,52,.18)!important;
  --crm-slate:#303943;
  --crm-slate-2:#39434e;
  --crm-orange:#f26a45;
  --crm-orange-soft:#fff1ec;
  --crm-line:#e4e9f0;
}

html,body{background:var(--bg)!important;color:var(--text)!important;font-family:'DM Sans',Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
body{letter-spacing:-.005em;}
*{scrollbar-width:thin;scrollbar-color:#c7d0dc transparent;}
*::-webkit-scrollbar{width:9px;height:9px;}
*::-webkit-scrollbar-track{background:transparent;}
*::-webkit-scrollbar-thumb{background:#c7d0dc;border-radius:999px;border:2px solid transparent;background-clip:padding-box;}
*::-webkit-scrollbar-thumb:hover{background:#aeb9c7;background-clip:padding-box;}

/* ---------- Login: split, calm and professional ---------- */
#login-screen{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:6vh 7vw!important;
  background:#f6f8fb!important;
  overflow:hidden!important;
  isolation:isolate;
}
#login-screen::before{
  content:"Clinic operations,\A simplified.\A\APatients, appointments, billing and clinical workflows in one secure workspace.";
  white-space:pre-line;
  position:absolute;
  inset:0 auto 0 0;
  width:52%;
  display:flex;
  align-items:flex-end;
  padding:8vw 7vw;
  color:#fff;
  font-size:clamp(18px,2.2vw,34px);
  line-height:1.18;
  font-weight:800;
  letter-spacing:-.035em;
  background:
    radial-gradient(circle at 78% 18%,rgba(242,106,69,.95) 0 8%,transparent 9%),
    radial-gradient(circle at 26% 78%,rgba(255,255,255,.10) 0 18%,transparent 19%),
    linear-gradient(145deg,#27313b 0%,#37424d 52%,#242c35 100%);
  z-index:-1;
}
#login-screen::after{
  content:"";
  position:absolute;
  left:38%;top:16%;
  width:220px;height:220px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:44px;
  transform:rotate(18deg);
  z-index:-1;
}
#login-screen .login-box{
  width:min(430px,100%)!important;
  max-width:430px!important;
  padding:34px!important;
  background:#fff!important;
  border:1px solid #e1e7ef!important;
  border-radius:24px!important;
  box-shadow:0 26px 70px rgba(31,42,58,.15)!important;
}
#login-screen .login-logo{margin:0 0 24px!important;align-items:flex-start!important;}
#login-screen .login-logo-img{width:176px!important;max-height:58px!important;object-fit:contain!important;object-position:left center!important;}
#login-screen .login-title{font-size:28px!important;line-height:1.1!important;font-weight:850!important;letter-spacing:-.035em!important;color:#182235!important;margin-bottom:8px!important;text-align:left!important;}
#login-screen .login-subtitle{font-size:14px!important;line-height:1.55!important;color:#738196!important;text-align:left!important;margin-bottom:24px!important;}
#login-screen .form-group{margin-bottom:15px!important;}
#login-screen label,#login-screen .login-role-label{font-size:11px!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.09em!important;font-weight:800!important;color:#77869a!important;margin-bottom:8px!important;}
#login-screen input{height:46px!important;border:1px solid #d9e0e9!important;border-radius:12px!important;padding:0 14px!important;font-size:14px!important;background:#fff!important;color:#172033!important;}
#login-screen input:focus{border-color:var(--crm-orange)!important;box-shadow:0 0 0 4px rgba(242,106,69,.12)!important;}
#login-screen .login-role-tabs{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:6px!important;padding:5px!important;background:#f3f5f8!important;border:1px solid #e8edf3!important;border-radius:13px!important;margin-bottom:18px!important;}
#login-screen .login-role-tab{height:36px!important;padding:0 7px!important;border-radius:9px!important;color:#65758a!important;font-size:11.5px!important;font-weight:750!important;}
#login-screen .login-role-tab.active{background:#fff!important;color:#d95432!important;box-shadow:0 2px 8px rgba(16,24,40,.08)!important;}
#login-screen .login-btn{height:48px!important;border-radius:12px!important;background:var(--crm-orange)!important;color:#fff!important;font-size:14px!important;font-weight:850!important;box-shadow:0 10px 20px rgba(242,106,69,.20)!important;}
#login-screen .login-btn:hover{background:#dd5936!important;transform:translateY(-1px);}
#login-screen .login-hint{font-size:11.5px!important;color:#97a3b2!important;margin-top:14px!important;}
#login-screen .login-footnote{font-size:11px!important;color:#a5afbd!important;line-height:1.5!important;margin-top:16px!important;text-align:center!important;}
#login-screen .login-error{border-radius:12px!important;border:1px solid #ffd2cb!important;background:#fff3f1!important;color:#b43d2b!important;}

/* ---------- Application shell ---------- */
#sidebar{
  width:var(--sidebar-w)!important;
  min-width:var(--sidebar-w)!important;
  height:100vh!important;
  background:linear-gradient(180deg,#343d47 0%,#2b333c 100%)!important;
  border-right:0!important;
  box-shadow:8px 0 30px rgba(31,42,55,.08)!important;
  color:#fff!important;
  overflow:hidden!important;
}
#sidebar .sidebar-logo{
  height:var(--topbar-h)!important;
  min-height:var(--topbar-h)!important;
  padding:11px 17px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.018)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
#sidebar .sidebar-logo-img{width:160px!important;max-height:46px!important;object-fit:contain!important;object-position:left center!important;filter:brightness(0) invert(1)!important;opacity:.96!important;}
#sidebar .sidebar-nav{padding:14px 10px 18px!important;overflow-y:auto!important;}
#sidebar .nav-section{margin-bottom:10px!important;}
#sidebar .nav-label{padding:12px 12px 6px!important;color:#93a0ae!important;font-size:9.5px!important;font-weight:800!important;letter-spacing:.12em!important;}
#sidebar .nav-item{
  min-height:42px!important;
  margin:3px 0!important;
  padding:8px 10px!important;
  gap:10px!important;
  border-radius:11px!important;
  color:#dbe2ea!important;
  background:transparent!important;
  font-size:12.5px!important;
  font-weight:600!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
#sidebar .nav-item:hover{background:rgba(255,255,255,.075)!important;color:#fff!important;transform:none!important;}
#sidebar .nav-item.active{background:#fff!important;color:#29333d!important;box-shadow:0 7px 18px rgba(0,0,0,.13)!important;}
#sidebar .nav-icon{
  width:28px!important;height:28px!important;min-width:28px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-radius:8px!important;
  color:#ff8a68!important;
  background:rgba(242,106,69,.10)!important;
  border:1px solid rgba(242,106,69,.14)!important;
  font-size:14px!important;
}
#sidebar .nav-item.active .nav-icon{background:var(--crm-orange-soft)!important;border-color:#ffd4c7!important;color:var(--crm-orange)!important;}
#sidebar .nav-badge{background:var(--crm-orange)!important;color:#fff!important;border:2px solid #343d47!important;font-size:9px!important;}
#sidebar .sidebar-footer{padding:12px!important;border-top:1px solid rgba(255,255,255,.08)!important;background:rgba(0,0,0,.06)!important;}
#sidebar .sidebar-user{display:none!important;}
#sidebar .logout-btn{height:38px!important;border-radius:10px!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(255,255,255,.05)!important;color:#dce3eb!important;font-size:12px!important;font-weight:700!important;}
#sidebar .logout-btn:hover{background:rgba(242,106,69,.13)!important;border-color:rgba(242,106,69,.45)!important;color:#ffb09a!important;}

#main{margin-left:var(--sidebar-w)!important;width:calc(100vw - var(--sidebar-w))!important;max-width:calc(100vw - var(--sidebar-w))!important;background:var(--bg)!important;overflow:hidden!important;}
#topbar{
  width:100%!important;
  height:var(--topbar-h)!important;
  min-height:var(--topbar-h)!important;
  padding:0 22px!important;
  gap:12px!important;
  background:rgba(255,255,255,.97)!important;
  border:0!important;
  border-bottom:1px solid var(--crm-line)!important;
  border-radius:0!important;
  box-shadow:0 1px 0 rgba(16,24,40,.02)!important;
  backdrop-filter:blur(16px)!important;
}
#topbar .page-title{font-size:15px!important;font-weight:800!important;color:#263449!important;letter-spacing:-.015em!important;}
#topbar .search-wrap{flex:1 1 360px!important;max-width:520px!important;margin-left:12px!important;}
#topbar .search-wrap input{height:40px!important;border-radius:12px!important;border:1px solid #dfe5ed!important;background:#f7f9fb!important;color:#182235!important;padding-left:40px!important;font-size:13px!important;}
#topbar .search-wrap input:focus{background:#fff!important;border-color:#f3a18a!important;box-shadow:0 0 0 4px rgba(242,106,69,.10)!important;}
#topbar .search-icon{left:13px!important;color:#7f8da0!important;font-size:16px!important;}
#topbar .hub-quick-add,#topbar .topbar-icon-btn,#topbar .hub-notif-btn{
  width:38px!important;height:38px!important;min-width:38px!important;
  border-radius:11px!important;border:1px solid #e1e7ee!important;background:#fff!important;color:#607086!important;
  box-shadow:none!important;
}
#topbar .hub-quick-add:hover,#topbar .topbar-icon-btn:hover,#topbar .hub-notif-btn:hover{border-color:#f2b19e!important;background:#fff6f2!important;color:#e35e3b!important;}
#topbar .hub-assistant-chip{height:38px!important;border-radius:11px!important;padding:0 12px!important;border:1px solid #e1e7ee!important;background:#fff!important;color:#344258!important;font-size:12px!important;font-weight:750!important;}
#topbar .hub-assistant-icon{color:var(--crm-orange)!important;}
#topbar .hub-inline-btn{height:38px!important;border-radius:11px!important;padding:0 13px!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;}
#topbar .hub-inline-btn.btn-primary{background:var(--crm-orange)!important;border-color:var(--crm-orange)!important;color:#fff!important;box-shadow:none!important;}
#topbar .hub-inline-btn.btn-ghost{background:#fff!important;border:1px solid #dfe5ed!important;color:#344258!important;}
#topbar .hub-account-chip{height:40px!important;border:0!important;border-left:1px solid #e3e8ef!important;border-radius:0!important;padding:0 0 0 14px!important;background:transparent!important;color:#2e3b4e!important;gap:8px!important;}
#topbar .hub-account-avatar{width:32px!important;height:32px!important;background:#303943!important;color:#fff!important;border-radius:10px!important;font-size:10px!important;font-weight:850!important;}
#topbar .hub-account-name{font-size:12px!important;font-weight:800!important;}
#topbar .hub-account-caret{font-size:10px!important;color:#8b98a9!important;}
#topbar .topbar-utility-icons{display:flex!important;gap:6px!important;}

#content{padding:22px 24px 32px!important;background:var(--bg)!important;overflow-y:auto!important;overflow-x:hidden!important;}
#content>.page{max-width:1680px!important;margin:0 auto!important;}
.page{animation:crmPageIn .18s ease-out;}
@keyframes crmPageIn{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}

/* ---------- Shared headings ---------- */
.page>.section-header,.page .section-header{
  min-height:auto!important;
  margin:0 0 16px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.section-header>div:first-child{min-width:0!important;}
.section-title{font-size:23px!important;line-height:1.18!important;font-weight:850!important;letter-spacing:-.035em!important;color:#18263a!important;}
.section-sub{font-size:12.5px!important;line-height:1.45!important;color:#7d8b9e!important;margin-top:4px!important;}
.section-header>div:last-child{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;}

/* ---------- Buttons ---------- */
.btn,.wa-btn,button[class*="-btn"]{font-family:inherit;}
.btn{min-height:38px!important;border-radius:11px!important;padding:0 13px!important;gap:7px!important;font-size:12px!important;font-weight:780!important;line-height:1!important;box-shadow:none!important;}
.btn-primary{background:var(--crm-orange)!important;border:1px solid var(--crm-orange)!important;color:#fff!important;}
.btn-primary:hover{background:#df5b38!important;border-color:#df5b38!important;transform:translateY(-1px);}
.btn-ghost{background:#fff!important;border:1px solid #dce3eb!important;color:#344258!important;}
.btn-ghost:hover{background:#f8fafc!important;border-color:#cbd5e0!important;color:#1f2d40!important;}
.btn-green{background:#12805c!important;color:#fff!important;}
.btn-red{background:#d84738!important;color:#fff!important;}
.btn-amber{background:#b87318!important;color:#fff!important;}
.btn-purple{background:#7557d9!important;color:#fff!important;}
.btn-sm{min-height:34px!important;padding:0 10px!important;font-size:11px!important;border-radius:9px!important;}
button:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(242,106,69,.20)!important;outline-offset:1px!important;}

/* ---------- Cards, KPIs and panels ---------- */
.card,.metric-card,.stat-block,.settings-section,.clinic-card,.cal-sync-section,.billing-filter-panel,.crm-inline-filter-panel,.crm-patient-filter-panel,.all-appt-toolbar,.crm-appt-toolbar-stable,.pf-card{
  background:#fff!important;
  border:1px solid var(--crm-line)!important;
  border-radius:16px!important;
  box-shadow:0 1px 2px rgba(16,24,40,.02),0 7px 22px rgba(16,24,40,.035)!important;
}
.card{padding:16px!important;}
.card-header{margin-bottom:14px!important;gap:12px!important;}
.card-title{font-size:14px!important;font-weight:830!important;color:#233148!important;letter-spacing:-.015em!important;}
.card-subtitle{font-size:11.5px!important;color:#8794a6!important;}
.metric-card,.stat-block{padding:17px!important;min-width:0!important;position:relative!important;overflow:hidden!important;}
.metric-card::after,.stat-block::after{content:"";position:absolute;right:-26px;top:-30px;width:82px;height:82px;border-radius:50%;background:rgba(242,106,69,.035);pointer-events:none;}
.metric-icon{width:36px!important;height:36px!important;border-radius:10px!important;margin-bottom:14px!important;font-size:16px!important;background:#fff3ef!important;color:#e35e3b!important;}
.metric-val,.stat-block-val{font-size:26px!important;line-height:1!important;font-weight:850!important;color:#17263a!important;letter-spacing:-.035em!important;}
.metric-label,.stat-block-label{font-size:11.5px!important;line-height:1.4!important;color:#7f8da0!important;margin-top:6px!important;font-weight:650!important;}
.grid2,.grid3,.grid4{gap:14px!important;}
.mt16{margin-top:14px!important;}

/* ---------- Filter panels ---------- */
.crm-inline-filter-panel,.crm-patient-filter-panel,.all-appt-toolbar.crm-appt-filter-panel,.billing-filter-panel{
  padding:14px!important;
  margin:0 0 14px!important;
}
.crm-inline-filter-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:0 0 10px!important;margin:0 0 11px!important;border-bottom:1px solid #edf1f5!important;}
.crm-inline-filter-title,.all-appt-filter-label,.crm-filter-field>span,.billing-filter-grid label{
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  color:#8997a9!important;
}
.crm-inline-filter-grid,.all-appt-filter-grid,.billing-filter-grid{gap:10px!important;align-items:end!important;}
.crm-filter-field{gap:6px!important;}
.filter-select,.crm-filter-field select,.crm-filter-field input,.all-appt-filter-field input,.all-appt-filter-field select,.billing-filter-grid input,.billing-filter-grid select{
  height:40px!important;
  min-height:40px!important;
  padding:0 12px!important;
  border:1px solid #dce3eb!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#26364b!important;
  font-size:12px!important;
  font-weight:600!important;
}
.filter-select:focus,.crm-filter-field select:focus,.crm-filter-field input:focus,.all-appt-filter-field input:focus,.all-appt-filter-field select:focus{border-color:#f19c83!important;box-shadow:0 0 0 3px rgba(242,106,69,.10)!important;}

/* ---------- Appointment switcher ---------- */
#page-allappointments>.crm-appt-toolbar-stable,#page-calendar>.crm-appt-toolbar-stable{
  min-height:58px!important;
  padding:9px 11px!important;
  margin:0 0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:nowrap!important;
  gap:12px!important;
  position:relative!important;
  top:auto!important;
  z-index:10!important;
}
.crm-appt-tabs,.crm-cal-tabs{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:4px!important;background:#f3f5f8!important;border:1px solid #e8edf3!important;border-radius:12px!important;}
.crm-appt-tab,.crm-cal-tab,.cal-view-tab{
  height:36px!important;
  min-width:96px!important;
  padding:0 12px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  border:0!important;border-radius:9px!important;background:transparent!important;color:#637286!important;
  font-size:11.5px!important;font-weight:780!important;white-space:nowrap!important;
}
.crm-appt-tab.active,.crm-cal-tab.active,.cal-view-tab.active{background:#fff!important;color:#d95432!important;box-shadow:0 2px 8px rgba(18,31,48,.08)!important;}
.crm-appt-tab-icon{width:15px!important;height:15px!important;stroke:currentColor!important;stroke-width:1.9!important;fill:none!important;}
.crm-appt-action-row,.crm-appt-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;margin-left:auto!important;}
.crm-appt-action-row button,.crm-appt-actions button{height:38px!important;border-radius:10px!important;padding:0 13px!important;font-size:11.5px!important;font-weight:800!important;white-space:nowrap!important;}
.crm-appt-action-secondary{background:#fff!important;border:1px solid #dce3eb!important;color:#344258!important;}
.crm-appt-action-primary{background:var(--crm-orange)!important;border:1px solid var(--crm-orange)!important;color:#fff!important;}
.crm-appt-stats{gap:6px!important;}
.crm-appt-chip{height:32px!important;padding:0 10px!important;border-radius:999px!important;border:1px solid #e2e7ee!important;background:#fff!important;color:#6d7b8e!important;font-size:10.5px!important;}

/* ---------- Tables ---------- */
.tbl-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;border:1px solid #e5eaf0!important;border-radius:13px!important;background:#fff!important;}
table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;color:#26364b!important;}
thead th{padding:11px 10px!important;background:#f8fafc!important;border-bottom:1px solid #e6ebf1!important;color:#8290a2!important;font-size:9.5px!important;line-height:1.25!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.075em!important;white-space:nowrap!important;}
tbody td{padding:11px 10px!important;border-bottom:1px solid #edf1f5!important;color:#344258!important;font-size:11.5px!important;line-height:1.4!important;background:#fff!important;vertical-align:middle!important;}
tbody tr:last-child td{border-bottom:0!important;}
tbody tr:hover td{background:#fbfcfd!important;}
.td-name{font-size:12px!important;font-weight:820!important;color:#1f2f44!important;}
.td-sub{font-size:10.5px!important;color:#8a97a8!important;margin-top:2px!important;}
.td-actions{gap:5px!important;}
.tbl-wrap .btn,.tbl-wrap .wa-btn{min-height:30px!important;height:30px!important;padding:0 8px!important;border-radius:8px!important;font-size:10px!important;font-weight:800!important;white-space:nowrap!important;}

/* ---------- Badges ---------- */
.badge,.pf-chip,.status-pill{
  min-height:24px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid transparent!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:820!important;
  white-space:nowrap!important;
}
.badge-new,.badge-pending{background:#fff5e9!important;color:#a85d08!important;border-color:#ffe0b8!important;}
.badge-confirmed,.badge-paid,.badge-completed,.badge-arrived{background:#eaf8f2!important;color:#0e7150!important;border-color:#c4ebdc!important;}
.badge-unpaid,.badge-noshow,.badge-refused,.badge-rejected{background:#fff0ee!important;color:#b43d31!important;border-color:#ffd0ca!important;}
.badge-partial,.badge-in-progress{background:#f2efff!important;color:#6549bd!important;border-color:#dcd4ff!important;}
.badge-routine{background:#eef5fb!important;color:#436986!important;border-color:#d6e5f1!important;}
.badge-urgent{background:#fff0ee!important;color:#b43d31!important;border-color:#ffd0ca!important;}

/* ---------- Forms and modals ---------- */
label{font-size:10.5px!important;font-weight:800!important;color:#6e7d90!important;margin-bottom:6px!important;}
input[type=text],input[type=email],input[type=tel],input[type=date],input[type=time],input[type=number],input[type=password],select,textarea{
  min-height:40px!important;
  padding:8px 12px!important;
  border:1px solid #d9e1ea!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#213149!important;
  font-size:12.5px!important;
  line-height:1.35!important;
}
textarea{min-height:88px!important;}
input:focus,select:focus,textarea:focus{border-color:#f19c83!important;box-shadow:0 0 0 3px rgba(242,106,69,.10)!important;}
.modal-overlay{background:rgba(24,34,49,.52)!important;backdrop-filter:blur(3px)!important;padding:24px!important;}
.modal{border-radius:18px!important;border:1px solid rgba(255,255,255,.7)!important;box-shadow:var(--shadow-lg)!important;background:#fff!important;}
.modal-header{padding:16px 19px!important;border-bottom:1px solid #e8edf2!important;background:#fff!important;}
.modal-title{font-size:15px!important;font-weight:850!important;color:#223148!important;}
.modal-close{width:32px!important;height:32px!important;border-radius:9px!important;background:#f5f7f9!important;color:#6d7c8f!important;}
.modal-body{padding:18px 19px!important;}
.modal-footer{padding:13px 19px!important;border-top:1px solid #e8edf2!important;background:#fafbfc!important;}

/* ---------- Calendar ---------- */
.cal-header{margin-bottom:13px!important;gap:12px!important;}
.cal-title{font-size:15px!important;font-weight:850!important;color:#223148!important;}
.cal-nav-btn{width:34px!important;height:34px!important;border-radius:9px!important;border:1px solid #dce3eb!important;background:#fff!important;color:#5e6e83!important;}
.cal-grid,.week-grid{border-color:#e5eaf0!important;border-radius:14px!important;overflow:hidden!important;}
.cal-day-header,.wg-header{padding:9px!important;background:#f8fafc!important;color:#8492a4!important;border-color:#e7ecf2!important;font-size:9.5px!important;letter-spacing:.07em!important;}
.cal-cell{min-height:104px!important;padding:7px!important;border-color:#e8edf2!important;background:#fff!important;}
.cal-cell:hover,.wg-slot:hover{background:#fff8f5!important;}
.cal-cell.today{background:#fff8f5!important;}
.cal-date-num{font-size:11px!important;color:#5d6c7f!important;}
.cal-date-num.today-num{width:24px!important;height:24px!important;background:var(--crm-orange)!important;color:#fff!important;}
.appt-chip,.wg-appt{min-height:22px!important;padding:3px 6px!important;border-radius:6px!important;font-size:9.5px!important;font-weight:750!important;}

/* ---------- Patient file ---------- */
#detail-panel,.detail-panel{
  width:min(1280px,calc(100vw - var(--sidebar-w) - 28px))!important;
  max-width:calc(100vw - var(--sidebar-w) - 28px)!important;
  right:14px!important;top:82px!important;bottom:14px!important;
  border:1px solid #dfe5ec!important;border-radius:20px!important;background:#f5f7fa!important;
  box-shadow:0 28px 80px rgba(28,40,58,.20)!important;overflow:hidden!important;
}
#detail-panel .dp-header{padding:16px 20px!important;background:#fff!important;border-bottom:1px solid #e7ecf2!important;}
#detail-panel .dp-avatar{width:48px!important;height:48px!important;border-radius:13px!important;font-size:16px!important;}
#detail-panel .dp-name{font-size:21px!important;font-weight:850!important;color:#1d2c41!important;}
#detail-panel .dp-sub{font-size:11.5px!important;color:#8390a2!important;}
#detail-panel .dp-tabs{padding:9px 16px!important;gap:6px!important;background:#f8fafc!important;border-bottom:1px solid #e6ebf1!important;}
#detail-panel .dp-tab{height:34px!important;padding:0 11px!important;border-radius:9px!important;border:1px solid #e2e7ed!important;background:#fff!important;color:#667589!important;font-size:10.5px!important;font-weight:800!important;}
#detail-panel .dp-tab.active{background:#fff1ec!important;border-color:#ffd2c5!important;color:#d95432!important;}
#detail-panel .dp-body{padding:16px!important;background:#f5f7fa!important;}
.patient-file-shell{grid-template-columns:260px minmax(0,1fr) 270px!important;gap:14px!important;}
.pf-card{padding:14px!important;border-radius:15px!important;}
.pf-kicker{font-size:9px!important;letter-spacing:.10em!important;color:#8b98aa!important;margin-bottom:8px!important;}
.pf-title{font-size:17px!important;color:#213149!important;}
.pf-meta{font-size:11.5px!important;color:#738196!important;}
.pf-row{padding:8px 0!important;}
.pf-label{font-size:9px!important;color:#8d99aa!important;}
.pf-val{font-size:11.5px!important;color:#26364b!important;}
.pf-kpis{gap:10px!important;margin-bottom:12px!important;}
.pf-kpi{padding:13px!important;border-radius:14px!important;border:1px solid #e3e8ee!important;}
.pf-kpi-label{font-size:9px!important;}
.pf-kpi-value{font-size:17px!important;}
.pf-kpi-sub{font-size:10px!important;}
.pf-outline-btn{height:36px!important;border-radius:10px!important;font-size:11px!important;}
.dp-close{width:34px!important;height:34px!important;border-radius:10px!important;}

/* ---------- Pipeline and task lists ---------- */
.pipeline{gap:10px!important;}
.pipeline-col{min-width:195px!important;}
.pipeline-col-header{padding:10px 11px!important;border-radius:12px 12px 0 0!important;font-size:11px!important;}
.pipeline-cards{padding:8px!important;border-radius:0 0 12px 12px!important;background:#eef2f6!important;}
.pipeline-card{padding:10px!important;border-radius:10px!important;border:1px solid #e0e6ed!important;box-shadow:none!important;}
.pc-name{font-size:11.5px!important;font-weight:820!important;}
.pc-info,.pc-time{font-size:10px!important;}
.task-item,.billing-item,.timeline-item{border-radius:12px!important;border-color:#e4e9f0!important;}

/* ---------- Settings / admin pages ---------- */
.settings-tabs{gap:5px!important;padding:5px!important;border-radius:13px!important;background:#eef2f6!important;border:1px solid #e2e7ed!important;}
.settings-tab{min-height:36px!important;border-radius:9px!important;font-size:10.5px!important;font-weight:800!important;color:#657488!important;}
.settings-tab.active{background:#fff!important;color:#d95432!important;box-shadow:0 2px 8px rgba(18,31,48,.07)!important;}
.settings-section{padding:16px!important;margin-bottom:14px!important;}
.settings-section-title{font-size:13px!important;font-weight:850!important;color:#223148!important;}

/* ---------- Notifications / admin dropdown ---------- */
.crm-admin-menu,.notif-panel{border:1px solid #dfe5ec!important;border-radius:16px!important;background:#fff!important;box-shadow:0 22px 60px rgba(25,37,53,.17)!important;overflow:hidden!important;}
.crm-admin-menu-item{min-height:44px!important;padding:9px 12px!important;border-radius:9px!important;font-size:11.5px!important;color:#344258!important;}
.crm-admin-menu-item:hover{background:#f7f9fb!important;}
.crm-admin-menu-icon{color:var(--crm-orange)!important;background:#fff1ec!important;border-radius:8px!important;}

/* ---------- Night mode ---------- */
body.crm-night-mode{
  --bg:#161b22!important;
  --surface:#20262e!important;
  --surface2:#252c35!important;
  --border:#343d48!important;
  --border2:#424c58!important;
  --text:#edf2f7!important;
  --text1:#edf2f7!important;
  --text2:#d6dde7!important;
  --text3:#a9b4c2!important;
  --text4:#7f8b9b!important;
  --crm-line:#343d48!important;
  background:#161b22!important;color:#edf2f7!important;
}
body.crm-night-mode #main,body.crm-night-mode #content{background:#161b22!important;}
body.crm-night-mode #topbar{background:#20262e!important;border-bottom-color:#343d48!important;}
body.crm-night-mode #topbar .page-title,body.crm-night-mode #topbar .hub-account-name{color:#eef2f6!important;}
body.crm-night-mode #topbar .search-wrap input{background:#262d36!important;border-color:#3b4551!important;color:#fff!important;}
body.crm-night-mode #topbar .hub-quick-add,body.crm-night-mode #topbar .topbar-icon-btn,body.crm-night-mode #topbar .hub-notif-btn,body.crm-night-mode #topbar .hub-assistant-chip,body.crm-night-mode #topbar .hub-inline-btn.btn-ghost{background:#262d36!important;border-color:#3b4551!important;color:#cbd4df!important;}
body.crm-night-mode .card,body.crm-night-mode .metric-card,body.crm-night-mode .stat-block,body.crm-night-mode .settings-section,body.crm-night-mode .clinic-card,body.crm-night-mode .cal-sync-section,body.crm-night-mode .billing-filter-panel,body.crm-night-mode .crm-inline-filter-panel,body.crm-night-mode .crm-patient-filter-panel,body.crm-night-mode .all-appt-toolbar,body.crm-night-mode .crm-appt-toolbar-stable,body.crm-night-mode .pf-card,body.crm-night-mode .modal,body.crm-night-mode .crm-admin-menu,body.crm-night-mode .notif-panel{background:#20262e!important;border-color:#343d48!important;color:#edf2f7!important;box-shadow:none!important;}
body.crm-night-mode .section-title,body.crm-night-mode .card-title,body.crm-night-mode .metric-val,body.crm-night-mode .stat-block-val,body.crm-night-mode .modal-title,body.crm-night-mode .pf-title,body.crm-night-mode .pf-val,body.crm-night-mode .td-name{color:#edf2f7!important;}
body.crm-night-mode .section-sub,body.crm-night-mode .card-subtitle,body.crm-night-mode .metric-label,body.crm-night-mode .stat-block-label,body.crm-night-mode .pf-meta,body.crm-night-mode .pf-label,body.crm-night-mode .td-sub{color:#9facbc!important;}
body.crm-night-mode input,body.crm-night-mode select,body.crm-night-mode textarea,body.crm-night-mode .filter-select{background:#262d36!important;border-color:#3c4652!important;color:#edf2f7!important;}
body.crm-night-mode .crm-inline-filter-head,body.crm-night-mode .modal-header,body.crm-night-mode .modal-footer{border-color:#343d48!important;background:#20262e!important;}
body.crm-night-mode .tbl-wrap,body.crm-night-mode table{background:#20262e!important;border-color:#343d48!important;}
body.crm-night-mode thead th{background:#252c35!important;border-color:#343d48!important;color:#9facbc!important;}
body.crm-night-mode tbody td{background:#20262e!important;border-color:#303944!important;color:#d8e0ea!important;}
body.crm-night-mode tbody tr:hover td{background:#252c35!important;}
body.crm-night-mode .btn-ghost,body.crm-night-mode .crm-appt-action-secondary,body.crm-night-mode .pf-outline-btn{background:#262d36!important;border-color:#3c4652!important;color:#d8e0ea!important;}
body.crm-night-mode .crm-appt-tabs,body.crm-night-mode .crm-cal-tabs,body.crm-night-mode .settings-tabs{background:#181e25!important;border-color:#343d48!important;}
body.crm-night-mode .crm-appt-tab.active,body.crm-night-mode .crm-cal-tab.active,body.crm-night-mode .settings-tab.active{background:#2a323c!important;color:#ff9a7e!important;box-shadow:none!important;}
body.crm-night-mode .cal-day-header,body.crm-night-mode .wg-header{background:#252c35!important;border-color:#343d48!important;}
body.crm-night-mode .cal-cell,body.crm-night-mode .wg-slot{background:#20262e!important;border-color:#343d48!important;}
body.crm-night-mode .cal-cell:hover,body.crm-night-mode .wg-slot:hover,body.crm-night-mode .cal-cell.today{background:#2b2928!important;}
body.crm-night-mode #detail-panel,body.crm-night-mode .detail-panel{background:#171d24!important;border-color:#343d48!important;}
body.crm-night-mode #detail-panel .dp-header,body.crm-night-mode #detail-panel .dp-tabs{background:#20262e!important;border-color:#343d48!important;}
body.crm-night-mode #detail-panel .dp-body{background:#171d24!important;}

/* ---------- Responsive ---------- */
@media(max-width:1380px){
  :root{--sidebar-w:220px!important;}
  #topbar{padding:0 16px!important;}
  #topbar .topbar-utility-icons{display:none!important;}
  #topbar .hub-account-name{display:none!important;}
  .patient-file-shell{grid-template-columns:240px minmax(0,1fr)!important;}
  .patient-file-shell>div:last-child{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
  .patient-file-shell>div:last-child .pf-card{margin-top:0!important;}
}
@media(max-width:1120px){
  #topbar .hub-inline-btn.btn-ghost,#topbar .hub-assistant-chip span:last-child{display:none!important;}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #page-allappointments>.crm-appt-toolbar-stable,#page-calendar>.crm-appt-toolbar-stable{flex-wrap:wrap!important;}
  .crm-appt-action-row,.crm-appt-actions{margin-left:0!important;}
}
@media(max-width:900px){
  #login-screen{justify-content:center!important;padding:22px!important;}
  #login-screen::before,#login-screen::after{display:none!important;}
  #sidebar{width:260px!important;min-width:260px!important;transform:translateX(-102%)!important;box-shadow:20px 0 50px rgba(0,0,0,.25)!important;}
  #sidebar.mobile-open,#sidebar.open{transform:translateX(0)!important;}
  #main{margin-left:0!important;width:100vw!important;max-width:100vw!important;}
  #topbar{padding:0 12px!important;}
  #topbar .page-title{display:none!important;}
  #topbar .search-wrap{margin-left:0!important;max-width:none!important;}
  #topbar .hub-inline-btn,#topbar .topbar-utility-icons{display:none!important;}
  #content{padding:16px!important;}
  .section-title{font-size:21px!important;}
  .grid2,.grid3{grid-template-columns:1fr!important;}
  .patient-file-shell{grid-template-columns:1fr!important;}
  .patient-file-shell>div:last-child{grid-column:auto!important;grid-template-columns:1fr!important;}
  #detail-panel,.detail-panel{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;left:8px!important;right:8px!important;top:76px!important;bottom:8px!important;}
}
@media(max-width:680px){
  #login-screen .login-box{padding:25px!important;border-radius:20px!important;}
  #login-screen .login-role-tabs{grid-template-columns:repeat(2,1fr)!important;}
  #content{padding:13px!important;}
  .page>.section-header,.page .section-header{align-items:flex-start!important;}
  .section-header>div:last-child{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;}
  .section-header>div:last-child>*{width:100%!important;}
  .grid4{grid-template-columns:1fr!important;}
  .crm-appt-tabs,.crm-cal-tabs{width:100%!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;}
  .crm-appt-tab,.crm-cal-tab{min-width:0!important;width:100%!important;padding:0 6px!important;font-size:10px!important;}
  .crm-appt-action-row,.crm-appt-actions{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;}
  .crm-appt-action-row button,.crm-appt-actions button{width:100%!important;}
  .form-row{grid-template-columns:1fr!important;}
  .modal-overlay{padding:10px!important;align-items:flex-end!important;}
  .modal{max-height:94vh!important;border-radius:18px 18px 0 0!important;}
}

/* ======================================================================
   PUBLIC BOOKING — same visual language
   ====================================================================== */
body.bk-portal{
  --blue:#f26a45!important;--blue-light:#fff1ec!important;--blue-dark:#d95432!important;
  background:#f4f6f9!important;color:#172033!important;font-family:'DM Sans',Inter,ui-sans-serif,system-ui,sans-serif!important;
}
.bk-portal .bk-header{height:72px!important;padding:0 max(22px,calc((100vw - 1180px)/2))!important;background:#fff!important;border-bottom:1px solid #e4e9f0!important;box-shadow:none!important;}
.bk-portal .bk-header-icon{width:160px!important;height:52px!important;background:transparent!important;border-radius:0!important;}
.bk-portal .bk-header-icon img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important;}
.bk-portal .bk-header-name,.bk-portal .bk-header-tag{display:none!important;}
.bk-portal .bk-header-sub{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-weight:850!important;color:#7f8da0!important;}
.bk-portal .bk-hero{padding:58px 20px 44px!important;background:linear-gradient(145deg,#303943 0%,#3c4651 100%)!important;color:#fff!important;}
.bk-portal .bk-hero::before{content:"";position:absolute!important;inset:auto 8% -80px auto!important;width:220px!important;height:220px!important;border-radius:50%!important;background:rgba(242,106,69,.17)!important;filter:blur(2px)!important;}
.bk-portal .bk-hero-badge{display:inline-flex!important;padding:7px 11px!important;border-radius:999px!important;background:rgba(255,255,255,.09)!important;border:1px solid rgba(255,255,255,.14)!important;color:#ffd2c6!important;font-size:10px!important;font-weight:850!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
.bk-portal .bk-hero h1{font-size:clamp(32px,5vw,54px)!important;line-height:1.02!important;letter-spacing:-.055em!important;margin:15px 0 12px!important;}
.bk-portal .bk-title-light{color:#fff!important;}.bk-portal .bk-title-accent{color:#ff9a7e!important;}
.bk-portal .bk-hero p{max-width:600px!important;color:#cfd7e0!important;font-size:15px!important;line-height:1.55!important;}
.bk-portal .steps-bar{background:#fff!important;border-bottom:1px solid #e4e9f0!important;box-shadow:none!important;}
.bk-portal .steps-inner{max-width:960px!important;padding:14px 20px!important;}
.bk-portal .bk-step-num{width:29px!important;height:29px!important;background:#eef2f6!important;color:#7c899a!important;border:0!important;font-size:10px!important;font-weight:850!important;}
.bk-portal .bk-step.active .bk-step-num,.bk-portal .bk-step.done .bk-step-num{background:#f26a45!important;color:#fff!important;}
.bk-portal .bk-step-label{font-size:10px!important;font-weight:750!important;color:#7b899a!important;}
.bk-portal .bk-step.active .bk-step-label{color:#d95432!important;}
.bk-portal .book-main{max-width:1000px!important;padding:28px 20px 70px!important;}
.bk-portal .bk-panel{background:#fff!important;border:1px solid #e3e8ef!important;border-radius:22px!important;padding:28px!important;box-shadow:0 16px 50px rgba(31,42,58,.07)!important;}
.bk-portal .bk-panel-title{font-size:25px!important;font-weight:850!important;letter-spacing:-.04em!important;color:#1d2c41!important;}
.bk-portal .bk-panel-sub{font-size:13px!important;color:#7d8b9e!important;margin-top:6px!important;margin-bottom:22px!important;}
.bk-portal .patient-type-card,.bk-portal .doctor-card,.bk-portal .treatment-card,.bk-portal .bk-cal-card,.bk-portal .bk-slots-card,.bk-portal .duration-panel{border:1px solid #dfe5ed!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;}
.bk-portal .patient-type-card:hover,.bk-portal .doctor-card:hover,.bk-portal .treatment-card:hover{border-color:#f3a18a!important;background:#fff8f5!important;transform:translateY(-1px)!important;}
.bk-portal .patient-type-card.selected,.bk-portal .doctor-card.selected,.bk-portal .treatment-card.selected{border-color:#f26a45!important;background:#fff5f1!important;box-shadow:0 0 0 3px rgba(242,106,69,.10)!important;}
.bk-portal .patient-type-icon,.bk-portal .doctor-avatar,.bk-portal .treatment-icon{background:#fff1ec!important;color:#d95432!important;}
.bk-portal .bk-field-label{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:850!important;color:#758397!important;}
.bk-portal .bk-field-input{min-height:46px!important;border:1px solid #d9e1ea!important;border-radius:12px!important;background:#fff!important;color:#213149!important;font-size:13px!important;}
.bk-portal .bk-field-input:focus{border-color:#f19c83!important;box-shadow:0 0 0 4px rgba(242,106,69,.10)!important;}
.bk-portal .cp-btn{min-height:44px!important;border-radius:12px!important;font-size:12px!important;font-weight:850!important;}
.bk-portal .cp-btn-amber{background:#f26a45!important;border-color:#f26a45!important;color:#fff!important;box-shadow:0 9px 20px rgba(242,106,69,.17)!important;}
.bk-portal .cp-btn-ghost{background:#fff!important;border:1px solid #dce3eb!important;color:#344258!important;}
.bk-portal .bk-cal-day.selected,.bk-portal .bk-slot.selected,.bk-portal .duration-pill.selected{background:#f26a45!important;border-color:#f26a45!important;color:#fff!important;}

/* ======================================================================
   PATIENT PORTAL — same visual language
   ====================================================================== */
body.cp-portal{
  --cp-amber:#f26a45!important;--cp-amber-dark:#d95432!important;--cp-amber-light:#fff1ec!important;
  background:#f4f6f9!important;color:#172033!important;font-family:'DM Sans',Inter,ui-sans-serif,system-ui,sans-serif!important;
}
.cp-portal .cp-loading{background:#f4f6f9!important;}
.cp-portal .cp-preloader-logo{width:190px!important;}
.cp-portal #cp-login{background:#f4f6f9!important;}
.cp-portal .cp-login-inner{max-width:980px!important;display:grid!important;grid-template-columns:1fr 430px!important;gap:0!important;background:#fff!important;border:1px solid #e2e7ee!important;border-radius:26px!important;overflow:hidden!important;box-shadow:0 28px 80px rgba(31,42,58,.14)!important;}
.cp-portal .cp-login-logo{min-height:590px!important;margin:0!important;padding:50px!important;background:linear-gradient(145deg,#303943 0%,#3b4651 100%)!important;display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;}
.cp-portal .cp-login-logo::after{content:"Your care journey, in one place.";display:block!important;position:absolute!important;left:48px!important;bottom:55px!important;max-width:320px!important;color:#fff!important;font-size:34px!important;font-weight:850!important;line-height:1.08!important;letter-spacing:-.045em!important;}
.cp-portal .cp-login-logo-only{width:190px!important;filter:brightness(0) invert(1)!important;}
.cp-portal .cp-login-box{padding:46px 38px!important;border:0!important;border-radius:0!important;box-shadow:none!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
.cp-portal .cp-login-title{font-size:28px!important;font-weight:850!important;letter-spacing:-.04em!important;color:#1d2c41!important;}
.cp-portal .cp-login-sub{font-size:13px!important;line-height:1.55!important;color:#7b899b!important;}
.cp-portal .cp-field-label{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:850!important;color:#758397!important;}
.cp-portal .cp-field-input{min-height:46px!important;border:1px solid #d9e1ea!important;border-radius:12px!important;background:#fff!important;color:#213149!important;}
.cp-portal .cp-field-input:focus{border-color:#f19c83!important;box-shadow:0 0 0 4px rgba(242,106,69,.10)!important;}
.cp-portal .cp-btn{min-height:44px!important;border-radius:12px!important;font-size:12px!important;font-weight:850!important;}
.cp-portal .cp-btn-amber{background:#f26a45!important;border-color:#f26a45!important;color:#fff!important;}
.cp-portal .cp-btn-ghost{background:#fff!important;border:1px solid #dce3eb!important;color:#344258!important;}
.cp-portal .cp-header{height:72px!important;padding:0 max(20px,calc((100vw - 1180px)/2))!important;background:#fff!important;border-bottom:1px solid #e3e8ef!important;box-shadow:none!important;}
.cp-portal .cp-header-logo-icon{width:160px!important;height:50px!important;background:transparent!important;border-radius:0!important;}
.cp-portal .cp-header-logo-icon img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important;}
.cp-portal .cp-brand-copy{display:none!important;}
.cp-portal .cp-avatar{background:#303943!important;color:#fff!important;border-radius:11px!important;}
.cp-portal .cp-logout-btn{border-radius:10px!important;border:1px solid #dce3eb!important;background:#fff!important;color:#526176!important;}
.cp-portal .cp-pages{background:#f4f6f9!important;}
.cp-portal .cp-inner{max-width:1120px!important;padding:28px 20px 90px!important;}
.cp-portal .cp-greeting-card,.cp-portal .cp-card,.cp-portal .cp-next-card,.cp-portal .cp-alert-card,.cp-portal .cp-quick-btn,.cp-portal .cp-summary-card{
  background:#fff!important;border:1px solid #e3e8ef!important;border-radius:18px!important;box-shadow:0 8px 26px rgba(31,42,58,.045)!important;
}
.cp-portal .cp-greeting-card{padding:24px!important;background:linear-gradient(135deg,#303943 0%,#3b4651 100%)!important;border:0!important;color:#fff!important;}
.cp-portal .cp-greeting-name{font-size:25px!important;font-weight:850!important;letter-spacing:-.04em!important;color:#fff!important;}
.cp-portal .cp-greeting-sub{color:#cbd4de!important;}
.cp-portal .cp-section-title{font-size:14px!important;font-weight:850!important;color:#243249!important;margin:24px 0 12px!important;}
.cp-portal .cp-quick-grid{gap:12px!important;}
.cp-portal .cp-quick-btn{padding:17px!important;text-align:left!important;}
.cp-portal .cp-quick-btn:hover{border-color:#f2a088!important;background:#fff8f5!important;transform:translateY(-1px)!important;}
.cp-portal .cp-quick-btn-icon{width:38px!important;height:38px!important;border-radius:11px!important;background:#fff1ec!important;color:#d95432!important;}
.cp-portal .cp-bottom-nav{background:rgba(255,255,255,.96)!important;border-top:1px solid #e3e8ef!important;box-shadow:0 -8px 28px rgba(31,42,58,.06)!important;backdrop-filter:blur(14px)!important;}
.cp-portal .cp-nav-item{color:#8290a2!important;font-size:10px!important;font-weight:750!important;}
.cp-portal .cp-nav-item.active{color:#d95432!important;}

@media(max-width:780px){
  .bk-portal .bk-header{padding:0 16px!important;}
  .bk-portal .bk-header-icon{width:140px!important;}
  .bk-portal .bk-panel{padding:20px!important;border-radius:18px!important;}
  .bk-portal .steps-inner{overflow-x:auto!important;justify-content:flex-start!important;}
  .cp-portal .cp-login-inner{display:block!important;max-width:430px!important;border-radius:22px!important;}
  .cp-portal .cp-login-logo{min-height:auto!important;padding:28px 30px!important;}
  .cp-portal .cp-login-logo::after{display:none!important;}
  .cp-portal .cp-login-box{padding:30px 24px!important;}
  .cp-portal .cp-header{padding:0 16px!important;}
  .cp-portal .cp-header-logo-icon{width:135px!important;}
}
