:root{
  --blue:#1F6FEA; --deep:#075E92; --teal:#12BFC4; --aqua:#7FE7E1;
  --spaMint:#E9FFFB; --spaMist:#F4FCFF; --spaSand:#F8F4EE;
  --ink:#1f2937; --muted:#64748b; --line:#d6e8ef; --soft:#f5fcfb; --white:#fff;
  --shadow:0 22px 60px rgba(7,94,146,.13); --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);
  background:radial-gradient(circle at 8% 2%,rgba(94,230,224,.32),transparent 31rem),
             radial-gradient(circle at 92% 0%,rgba(18,104,243,.18),transparent 34rem),var(--soft);
}
a{color:inherit;text-decoration:none} button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 36px));margin:0 auto}
.launch-bar{background:linear-gradient(90deg,var(--deep),var(--blue),var(--teal));color:#fff;text-align:center;font-weight:900;padding:10px 14px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(219,229,240,.8)}
.nav{height:84px;display:flex;justify-content:space-between;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:12px;font-weight:950}
.logo-mark{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--blue),var(--teal));box-shadow:0 14px 32px rgba(18,104,243,.23);display:grid;place-items:center;overflow:hidden;flex:0 0 auto}
.logo-mark svg{width:40px;height:40px}.logo-mark img{width:100%;height:100%;object-fit:cover}
.logo-copy{line-height:1}.logo-copy strong{font-size:29px;letter-spacing:-1px}.logo-copy .spa{color:var(--blue)}.logo-copy .flow{color:var(--teal)}
.logo-copy small{display:block;font-size:11px;font-weight:900;letter-spacing:.45px;color:var(--muted);margin-top:3px}
.nav-links{display:flex;align-items:center;gap:20px;font-weight:900;color:#334155}
.nav-links a:hover{color:var(--blue)}.mobile-menu{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:13px 18px;border-radius:16px;font-weight:950;border:1px solid transparent;cursor:pointer;transition:.18s ease;text-align:center}
.btn-primary{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;box-shadow:0 12px 32px rgba(18,104,243,.25)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 16px 40px rgba(18,104,243,.33)}
.btn-secondary{background:#fff;color:var(--deep);border-color:var(--line)}.btn-secondary:hover{border-color:var(--blue);color:var(--blue)}
.btn-danger{background:#fff;color:#b91c1c;border-color:#fecaca}.btn-danger:hover{background:#fff1f2}
.hero{padding:76px 0 58px}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:46px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #cceaff;color:var(--deep);padding:10px 14px;border-radius:999px;font-weight:950;font-size:14px;box-shadow:0 8px 26px rgba(7,60,140,.07)}
h1,h2,h3{margin:0;color:var(--deep);letter-spacing:-.04em} h1{font-size:clamp(44px,7vw,82px);line-height:.95;margin-top:18px}
h2{font-size:clamp(32px,4.5vw,56px);line-height:1} h3{font-size:24px;line-height:1.1}
.lead{font-size:21px;line-height:1.65;color:#475569;margin:24px 0 0;max-width:700px}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.quick-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;max-width:670px}
.quick-points div{background:rgba(255,255,255,.76);border:1px solid var(--line);border-radius:16px;padding:13px 14px;font-weight:900;color:#334155}
.demo-card,.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:0 8px 26px rgba(7,60,140,.06)}
.demo-card{background:rgba(255,255,255,.9);border-radius:32px;box-shadow:var(--shadow);padding:24px;overflow:hidden;position:relative}
.demo-head{display:flex;justify-content:space-between;align-items:center;position:relative}.dots{display:flex;gap:6px}.dots i{width:12px;height:12px;border-radius:50%;background:#cbd5e1}.dots i:nth-child(2){background:var(--aqua)}.dots i:nth-child(3){background:var(--blue)}
.mock-row{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:14px}
.mock-row strong{font-size:22px;color:var(--deep)}.pill{border-radius:999px;padding:7px 10px;background:var(--blue);color:#fff;font-size:12px;font-weight:950;white-space:nowrap}.pill.teal{background:var(--teal)}
.section{padding:74px 0}.section-head{max-width:820px;margin-bottom:34px}.section-head p{font-size:19px;line-height:1.6;color:var(--muted);margin:16px 0 0}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.icon{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,rgba(18,104,243,.13),rgba(15,194,192,.17));display:grid;place-items:center;font-size:26px;color:var(--blue);font-weight:950}.card h3{margin-top:14px}.card p{color:var(--muted);line-height:1.56}
.dark-cta{background:linear-gradient(135deg,var(--deep),var(--blue));color:#fff}.dark-cta h2{color:#fff}.dark-cta p{color:#dbeafe}
.pricing{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}.price-card{display:flex;flex-direction:column;position:relative}.price-card.featured{border:2px solid var(--blue);box-shadow:var(--shadow);transform:translateY(-8px)}
.ribbon{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:950}.price{font-size:42px;font-weight:950;color:var(--blue);margin-top:16px}.price small{font-size:15px;color:var(--muted)}.original{font-weight:900;color:#94a3b8;text-decoration:line-through}
.features{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px;color:#475569}.features li:before{content:"✓";font-weight:950;color:var(--teal);margin-right:8px}
.page-hero{padding:62px 0 28px}.notice{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:18px;padding:16px;font-weight:850;line-height:1.5}.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.info{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}
.form-shell{display:grid;grid-template-columns:1fr 340px;gap:24px;margin-top:30px}.form-grid{display:grid;gap:18px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
label{display:block;font-size:14px;font-weight:950;color:#334155;margin-bottom:8px}
input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px 15px;color:#334155;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(18,104,243,.1)}
.check{display:flex;gap:10px;align-items:flex-start;color:#64748b;line-height:1.45;font-size:14px}.check input{width:auto;margin-top:3px}
.login-box{max-width:460px;margin:52px auto}
.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background:#f8fbff}.sidebar{background:#fff;border-right:1px solid var(--line);padding:24px;position:sticky;top:0;height:100vh}.side-links{display:grid;gap:8px;margin-top:28px}.side-links a{padding:13px 14px;border-radius:16px;font-weight:950;color:#475569}.side-links a:hover,.side-links a.active{background:#eff6ff;color:var(--blue)}
.main{padding:30px}.business-header{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:28px;padding:18px;box-shadow:0 8px 26px rgba(7,60,140,.06)}.business-logo-large{width:86px;height:86px;border-radius:22px;background:linear-gradient(135deg,var(--blue),var(--teal));display:grid;place-items:center;color:#fff;font-size:28px;font-weight:950;overflow:hidden}.business-logo-large img{width:100%;height:100%;object-fit:cover}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px}.stat{cursor:pointer;transition:.18s ease}.stat:hover{transform:translateY(-2px);border-color:var(--blue);box-shadow:var(--shadow)}.stat h3{font-size:42px;margin-top:7px}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:separate;border-spacing:0 10px;min-width:760px}.table th{text-align:left;color:#64748b;font-size:13px;padding:0 14px}.table td{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px;color:#334155}.table td:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px;font-weight:950;color:var(--deep)}.table td:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}
.empty-state{text-align:center;padding:44px 22px;border:2px dashed #cbd5e1;border-radius:24px;background:#fff}.empty-state h3{margin-top:0}.empty-state p{color:var(--muted)}
.soap-layout{display:grid;grid-template-columns:420px 1fr;gap:22px;margin-top:24px}.map-panel{background:linear-gradient(135deg,#eef8ff,#effffb);border:1px solid #cfe9ff;border-radius:24px;padding:20px}.map-human{height:360px;background:white;border:3px dashed rgba(18,104,243,.35);border-radius:90px;position:relative;overflow:hidden}.map-human:before{content:"";position:absolute;top:28px;left:50%;transform:translateX(-50%);width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--teal))}.map-human:after{content:"";position:absolute;top:115px;left:50%;transform:translateX(-50%);width:135px;height:190px;border-radius:60px;background:linear-gradient(135deg,rgba(18,104,243,.78),rgba(15,194,192,.76))}
.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span,.tags button{border:1px solid var(--line);background:white;border-radius:999px;padding:8px 11px;font-weight:900;color:#334155;font-size:12px}.tags button{cursor:pointer}.tags button.active,.tags button:hover{background:var(--blue);border-color:var(--blue);color:#fff}.selected-output{margin-top:12px;background:#f8fbff;border:1px solid var(--line);border-radius:16px;padding:13px;color:#334155;font-weight:850}
.booking-shell{display:grid;grid-template-columns:1fr 380px;gap:24px;margin-top:30px}.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.slot{border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px;font-weight:900;cursor:pointer}.slot:hover,.slot.active{background:var(--blue);color:#fff;border-color:var(--blue)}.slot[disabled]{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.footer{background:#061b3f;color:#fff;padding:56px 0;margin-top:60px}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:28px}.footer a,.footer p{color:#dbeafe;line-height:1.7}.footer h4{margin:0 0 12px;color:white}
@media(max-width:980px){.hero-grid,.grid-2,.grid-3,.grid-4,.pricing,.form-shell,.app-shell,.soap-layout,.stat-grid,.booking-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.nav-links{display:none}.mobile-menu{display:inline-flex}.footer-grid{grid-template-columns:1fr 1fr}.business-header{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.container{width:min(100% - 28px,1180px)}.nav{height:auto;padding:14px 0}.logo-copy strong{font-size:24px}.hero{padding-top:42px}h1{font-size:43px}.quick-points,.two,.three,.footer-grid,.slot-grid{grid-template-columns:1fr}.pricing .price-card.featured{transform:none}}

.service-setup-form .btn{width:100%;}
.service-thumb{width:82px;height:82px;object-fit:cover;border-radius:16px;border:1px solid #dbe5f0;}

.password-wrap{position:relative}
.password-wrap input{padding-right:54px}
.password-toggle{
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:38px;
  height:38px;
  border:1px solid #dbe5f0;
  border-radius:12px;
  background:#fff;
  color:#073C8C;
  font-weight:950;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.password-toggle:hover{border-color:#1268F3;color:#1268F3;background:#f8fbff}

.logo-image-wide{height:154px;width:auto;max-width:728px;object-fit:contain;display:block}
.sidebar .logo-image-wide{height:102px;max-width:364px}
.footer .logo-image-wide{height:117px;max-width:560px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.18))}
.site-header{box-shadow:0 8px 30px rgba(7,94,146,.06)}
.spa-panel{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(233,255,251,.92));border:1px solid #cbeeea;border-radius:28px;padding:22px}
.booth-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#ecfeff;color:#075E92;border:1px solid #a5f3fc;padding:7px 10px;font-size:12px;font-weight:950}
.slug-preview{word-break:break-all;font-weight:950;color:var(--deep)}

/* v18 persistent business context */
.business-context-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(233,255,251,.94));
  border:1px solid #cbeeea;
  border-radius:22px;
  padding:14px 16px;
  margin-bottom:22px;
  box-shadow:0 8px 26px rgba(7,94,146,.06);
}
.business-context-left{display:flex;align-items:center;gap:12px}
.business-context-logo{
  width:54px;
  height:54px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--blue),var(--teal));
  display:grid;
  place-items:center;
  overflow:hidden;
  flex:0 0 auto;
}
.business-context-logo img{width:100%;height:100%;object-fit:cover}
.business-context-title{line-height:1.1}
.business-context-title small{
  display:block;
  color:#64748b;
  font-weight:900;
  font-size:12px;
  letter-spacing:.35px;
  text-transform:uppercase;
}
.business-context-title strong{
  display:block;
  color:var(--deep);
  font-size:22px;
  font-weight:950;
}
.business-context-meta{
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
.booking-business-hero{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(233,255,251,.92));
  border:1px solid #cbeeea;
  border-radius:30px;
  padding:22px;
  box-shadow:0 12px 36px rgba(7,94,146,.08);
}

/* v19 footer credit */
.site-credit{
  border-top:1px solid rgba(219,234,254,.22);
  margin-top:34px;
  padding-top:22px;
  text-align:center;
  color:#dbeafe;
  font-size:13px;
  line-height:1.6;
}
.site-credit a{
  color:#7FE7E1;
  font-weight:950;
  text-decoration:none;
}
.site-credit a:hover{
  color:#ffffff;
  text-decoration:underline;
}

/* v21 larger prominent logo */
.nav{
  min-height:128px;
  height:auto;
  padding:16px 0;
}
.site-header .logo{
  flex:0 0 auto;
}
@media(max-width:980px){
  .logo-image-wide{height:154px;width:auto;max-width:728px;object-fit:contain;display:block}
  .sidebar .logo-image-wide{height:102px;max-width:364px}
  .nav{min-height:104px}
}
@media(max-width:640px){
  .logo-image-wide{height:154px;width:auto;max-width:728px;object-fit:contain;display:block}
  .sidebar .logo-image-wide{height:102px;max-width:364px}
  .footer .logo-image-wide{height:117px;max-width:560px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.18))}
  .nav{min-height:92px}
}

/* v23 medical condition checklist */
.condition-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.condition-group{
  border:1px solid #d6e8ef;
  border-radius:18px;
  padding:14px;
  background:#fff;
}
.condition-group h4{
  margin:0 0 10px;
  color:var(--deep);
}
.condition-group .check{
  margin:8px 0;
}
@media(max-width:760px){
  .condition-grid{grid-template-columns:1fr}
}

/* v24 logo correction */
.nav{min-height:195px;height:auto;padding:22px 0;}
.site-header .logo{
  flex:0 0 auto;
}
.site-header .container.nav{
  align-items:center;
}
@media(max-width:980px){
  .logo-image-wide{height:154px;width:auto;max-width:728px;object-fit:contain;display:block}
  .sidebar .logo-image-wide{height:102px;max-width:364px}
  .nav{min-height:122px}
}
@media(max-width:640px){
  .logo-image-wide{height:154px;width:auto;max-width:728px;object-fit:contain;display:block}
  .sidebar .logo-image-wide{height:102px;max-width:364px}
  .footer .logo-image-wide{height:117px;max-width:560px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.18))}
  .nav{min-height:106px}
}

/* v25: header logo increased approximately 30% larger */
.site-header .logo-image-wide{
  height:154px !important;
  max-width:728px !important;
}
.nav{
  min-height:195px !important;
  padding-top:22px !important;
  padding-bottom:22px !important;
}
@media(max-width:980px){
  .site-header .logo-image-wide{height:120px !important;max-width:507px !important}
  .nav{min-height:159px !important}
}
@media(max-width:640px){
  .site-header .logo-image-wide{height:99px !important;max-width:416px !important}
  .nav{min-height:138px !important}
}

/* v26 calendar appointment management */
.calendar-tools{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:18px 0 22px;
}
.appt-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
}
.btn-small{
  border:0;
  border-radius:12px;
  padding:8px 10px;
  font-weight:950;
  cursor:pointer;
}
.btn-danger{background:#fee2e2;color:#991b1b}
.btn-warning{background:#fef3c7;color:#92400e}
.btn-soft{background:#e0f2fe;color:#075985}
.appt-card{
  border-left:9px solid var(--blue);
  position:relative;
}
.appt-card.cancelled{
  opacity:.62;
  text-decoration:none;
  background:#f8fafc;
}
.appt-color-dot{
  display:inline-block;
  width:12px;
  height:12px;
  border-radius:999px;
  margin-right:7px;
  vertical-align:-1px;
}
.color-choice-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.color-input{
  width:54px;
  height:40px;
  border:1px solid #d6e8ef;
  border-radius:12px;
  padding:3px;
  background:#fff;
}
.blocked-time-card{
  border-left:9px solid #64748b;
  background:#f8fafc;
}
@media(max-width:900px){
  .calendar-tools{grid-template-columns:1fr}
}

/* v27: tighten header spacing below logo/navigation */
.site-header{
  padding-bottom:0 !important;
}
.nav{
  min-height:0 !important;
  height:auto !important;
  padding-top:10px !important;
  padding-bottom:10px !important;
  align-items:center !important;
}
.site-header .container.nav{
  min-height:0 !important;
}
.site-header .logo{
  display:flex !important;
  align-items:center !important;
  line-height:0 !important;
}
.site-header .logo-image-wide{
  height:154px !important;
  max-width:728px !important;
  display:block !important;
  margin:0 !important;
}
.nav-links{
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
}
.nav-actions{
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
}
@media(max-width:980px){
  .nav{padding-top:8px !important;padding-bottom:8px !important}
  .site-header .logo-image-wide{height:120px !important;max-width:507px !important}
}
@media(max-width:640px){
  .nav{padding-top:6px !important;padding-bottom:6px !important}
  .site-header .logo-image-wide{height:99px !important;max-width:416px !important}
}

/* v28 password complexity */
.password-rules{
  margin-top:10px;
  padding:12px 14px;
  border:1px solid #d6e8ef;
  border-radius:16px;
  background:#f8fffe;
}
.password-rules strong{
  color:var(--deep);
}
.password-rules ul{
  margin:8px 0 0 18px;
  padding:0;
}
.password-rules li{
  margin:4px 0;
  color:#64748b;
  font-weight:800;
}
.password-rules li.valid{
  color:#047857;
}
.password-rules li.invalid{
  color:#b91c1c;
}
.password-match-note{
  font-size:13px;
  font-weight:900;
  margin-top:6px;
}
.password-match-note.valid{color:#047857}
.password-match-note.invalid{color:#b91c1c}

/* v30 interactive SOAP anatomy model */
.soap-anatomy-layout{display:grid;grid-template-columns:minmax(360px,1.2fr) minmax(320px,.8fr);gap:22px;align-items:start}
.anatomy-viewer-card{overflow:hidden;padding:0}
.anatomy-toolbar{display:flex;gap:10px;flex-wrap:wrap;padding:16px;border-bottom:1px solid #d6e8ef;background:linear-gradient(135deg,#ffffff,#e9fffb)}
.anatomy-stage{position:relative;height:680px;min-height:560px;background:radial-gradient(circle at 50% 25%,rgba(127,231,225,.30),transparent 18rem),linear-gradient(180deg,#f9fffe,#eefbf9);cursor:grab;user-select:none;overflow:hidden}
.anatomy-stage:active{cursor:grabbing}
.anatomy-model{position:absolute;left:50%;top:50%;width:360px;height:610px;transform:translate(-50%,-50%);transform-origin:center center;transition:transform .12s ease-out}
.anatomy-model svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 24px 30px rgba(7,94,146,.18))}
.muscle-group{cursor:pointer;transition:filter .15s, opacity .15s, transform .15s}
.muscle-group:hover{filter:brightness(1.08) drop-shadow(0 0 8px rgba(18,191,196,.65))}
.muscle-group.selected{filter:brightness(1.15) drop-shadow(0 0 13px rgba(31,111,234,.85))}
.muscle-label{font-size:11px;font-weight:900;fill:#12345a;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;pointer-events:none}
.skeleton-line{fill:none;stroke:#d8e2ea;stroke-width:5;stroke-linecap:round;opacity:.9}
.bone-fill{fill:#f4f6f8;stroke:#cbd5df;stroke-width:2}
.anatomy-note-panel .selected-muscle-name{font-size:28px;color:var(--deep);font-weight:950;margin:0 0 6px}
.saved-muscle-note{border-left:7px solid var(--teal);padding:12px;border-radius:16px;background:#f8fffe;margin:10px 0}
.model-help{position:absolute;bottom:14px;left:14px;right:14px;background:rgba(255,255,255,.88);border:1px solid #cbeeea;border-radius:16px;padding:10px 12px;font-size:13px;font-weight:800;color:#64748b}
@media(max-width:980px){.soap-anatomy-layout{grid-template-columns:1fr}.anatomy-stage{height:620px}}
@media(max-width:560px){.anatomy-stage{height:560px}.anatomy-model{width:310px;height:550px}}

/* v31 global login status bar */
.login-status-bar{
  position:sticky;
  top:0;
  z-index:9999;
  background:linear-gradient(135deg,#075E92,#12BFC4);
  color:#ffffff;
  box-shadow:0 10px 28px rgba(7,94,146,.18);
}
.login-status-inner{
  max-width:1180px;
  margin:0 auto;
  padding:9px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  font-size:14px;
  font-weight:900;
}
.login-status-left{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.login-status-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#fca5a5;
  box-shadow:0 0 0 4px rgba(255,255,255,.16);
}
.login-status-dot.logged-in{
  background:#86efac;
}
.login-status-name{
  color:#ffffff;
  font-weight:950;
}
.login-status-role{
  opacity:.88;
}
.login-status-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.login-status-actions a,
.login-status-actions button{
  border:1px solid rgba(255,255,255,.42);
  color:#ffffff;
  background:rgba(255,255,255,.12);
  border-radius:999px;
  padding:7px 12px;
  font-size:13px;
  font-weight:950;
  text-decoration:none;
  cursor:pointer;
}
.login-status-actions a:hover,
.login-status-actions button:hover{
  background:rgba(255,255,255,.22);
}
@media(max-width:640px){
  .login-status-inner{
    padding:8px 14px;
    font-size:13px;
  }
  .login-status-actions a,
  .login-status-actions button{
    padding:6px 10px;
    font-size:12px;
  }
}

/* v32 force global login status bar visibility */
.login-status-bar{
  display:block !important;
  position:sticky !important;
  top:0 !important;
  width:100% !important;
  z-index:2147483647 !important;
  min-height:42px !important;
}
body{
  overflow-x:hidden;
}

/* v33: remove excess whitespace above and below the header bar */
.login-status-bar{
  min-height:0 !important;
}
.login-status-inner{
  padding-top:4px !important;
  padding-bottom:4px !important;
  line-height:1.1 !important;
}

.site-header{
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

.site-header .container,
.site-header .container.nav,
.nav{
  min-height:0 !important;
  height:auto !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  align-items:center !important;
}

.site-header .logo{
  margin:0 !important;
  padding:0 !important;
  line-height:0 !important;
  display:flex !important;
  align-items:center !important;
}

.site-header .logo-image-wide{
  height:154px !important;
  max-height:154px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}

.nav-links,
.nav-actions{
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  align-items:center !important;
}

.nav-links a,
.nav-actions a,
.nav-actions button{
  margin-top:0 !important;
  margin-bottom:0 !important;
}

.hero,
.page-head,
.main{
  margin-top:0 !important;
}

.site-header + .hero,
.site-header + main,
.site-header + .main{
  margin-top:0 !important;
  padding-top:0 !important;
}

@media(max-width:980px){
  .site-header .logo-image-wide{
    height:120px !important;
    max-height:120px !important;
  }
}

@media(max-width:640px){
  .site-header .logo-image-wide{
    height:99px !important;
    max-height:99px !important;
  }
}

/* v35 top-login-bar dropdown navigation */
.top-nav-menu{
  position:relative;
  display:inline-flex;
  align-items:center;
}
.top-nav-menu-button{
  border:1px solid rgba(255,255,255,.42);
  color:#ffffff;
  background:rgba(255,255,255,.12);
  border-radius:999px;
  padding:7px 12px;
  font-size:13px;
  font-weight:950;
  text-decoration:none;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:7px;
  line-height:1;
}
.top-nav-menu-button:hover,
.top-nav-menu-button:focus{
  background:rgba(255,255,255,.22);
  outline:none;
}
.top-nav-dropdown{
  display:none;
  position:absolute;
  right:0;
  top:calc(100% + 9px);
  min-width:245px;
  background:#ffffff;
  border:1px solid #d6e8ef;
  border-radius:18px;
  box-shadow:0 22px 60px rgba(7,94,146,.22);
  padding:8px;
  z-index:2147483647;
}
.top-nav-dropdown.open{
  display:block;
}
.top-nav-dropdown a{
  display:block;
  color:#075E92 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:12px !important;
  padding:11px 12px !important;
  font-size:14px !important;
  font-weight:950 !important;
  text-decoration:none !important;
}
.top-nav-dropdown a:hover{
  background:#e9fffb !important;
  color:#1F6FEA !important;
}
.top-nav-dropdown .nav-section-label{
  display:block;
  padding:8px 12px 4px;
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.5px;
  text-transform:uppercase;
}
.header-menu-button,
.mobile-menu-toggle,
button[onclick="toggleMobileMenu()"]{
  display:none !important;
}
@media(max-width:760px){
  .top-nav-dropdown{
    right:auto;
    left:0;
    min-width:230px;
  }
  .login-status-actions{
    width:100%;
    justify-content:flex-start;
  }
}

/* v36 FAQ / Contact / auth guard */
.faq-list{
  display:grid;
  gap:16px;
}
.faq-item{
  border:1px solid #d6e8ef;
  border-radius:22px;
  background:#fff;
  padding:20px;
  box-shadow:0 10px 28px rgba(7,94,146,.06);
}
.faq-item h3{
  margin:0 0 8px;
  color:var(--deep);
}
.contact-grid{
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(320px,.9fr);
  gap:22px;
  align-items:start;
}
.contact-card{
  border-left:8px solid var(--teal);
}
.protected-page-message{
  max-width:780px;
  margin:38px auto;
  padding:28px;
  border-radius:28px;
  background:linear-gradient(135deg,#fff,#e9fffb);
  border:1px solid #cbeeea;
  box-shadow:0 18px 48px rgba(7,94,146,.12);
  text-align:center;
}
@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr}
}

/* v37 tighter top/header bars and client portal */
.login-status-inner{padding-top:2px!important;padding-bottom:2px!important;min-height:0!important;line-height:1!important}
.login-status-actions a,.login-status-actions button,.top-nav-menu-button{padding:5px 10px!important;font-size:12px!important;line-height:1!important}
.login-status-left{line-height:1!important}.login-status-bar{min-height:0!important}
.site-header,.site-header .container.nav,.nav{padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important;min-height:0!important}
.nav-links a,.nav-actions a,.nav-actions button{padding-top:4px!important;padding-bottom:4px!important;margin-top:0!important;margin-bottom:0!important}
.client-booking-grid{display:grid;grid-template-columns:minmax(340px,1fr) minmax(340px,1fr);gap:22px;align-items:start}
.client-portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.client-portal-card{border-left:8px solid var(--teal)}
.billing-auth-box{border:1px solid #cbeeea;border-radius:20px;padding:16px;background:#f8fffe}
.charge-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e2edf2;padding:9px 0}.charge-row:last-child{border-bottom:0}
@media(max-width:900px){.client-booking-grid,.client-portal-grid{grid-template-columns:1fr}}

/* v38 FAQ/contact sizing and spacing cleanup */
body.faq-page .hero.compact,
body.contact-page .hero.compact{
  padding-top:18px !important;
  padding-bottom:18px !important;
}
body.faq-page .hero.compact h1,
body.contact-page .hero.compact h1{
  font-size:clamp(30px,4vw,48px) !important;
  line-height:1.05 !important;
  margin-bottom:8px !important;
}
body.faq-page .hero.compact p,
body.contact-page .hero.compact p{
  font-size:16px !important;
  max-width:760px !important;
  margin-bottom:0 !important;
}
body.faq-page .section,
body.contact-page .section{
  padding-top:22px !important;
}
body.faq-page .faq-list{
  gap:10px !important;
}
body.faq-page .faq-item{
  padding:14px 16px !important;
  border-radius:16px !important;
}
body.faq-page .faq-item h3{
  font-size:18px !important;
  margin-bottom:4px !important;
}
body.faq-page .faq-item p,
body.contact-page .card p{
  font-size:15px !important;
  line-height:1.45 !important;
}
body.contact-page .card{
  padding:20px !important;
}
body.contact-page h2{
  font-size:24px !important;
}
body.contact-page h3{
  font-size:18px !important;
}
body.contact-page .btn,
body.faq-page .btn{
  padding:10px 16px !important;
  font-size:14px !important;
  border-radius:999px !important;
}
body.contact-page input,
body.contact-page textarea{
  font-size:15px !important;
  padding:11px 12px !important;
}
.signup-plan-card.selected,
.plan-option.selected{
  border-color:#12BFC4 !important;
  box-shadow:0 0 0 4px rgba(18,191,196,.15), 0 16px 36px rgba(7,94,146,.14) !important;
}
.client-account-fields{
  border:1px solid #cbeeea;
  border-radius:20px;
  padding:16px;
  background:#f8fffe;
}

/* v39 aggressive header whitespace removal */
.login-status-bar,
.login-status-inner{
  min-height:0 !important;
  margin:0 !important;
}
.login-status-inner{
  padding:1px 18px !important;
  gap:6px !important;
  line-height:1 !important;
}
.login-status-left,
.login-status-actions{
  min-height:0 !important;
  line-height:1 !important;
  gap:6px !important;
}
.login-status-actions a,
.login-status-actions button,
.top-nav-menu-button{
  padding:4px 9px !important;
  font-size:12px !important;
  line-height:1 !important;
  min-height:0 !important;
}

.site-header{
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
  min-height:0 !important;
}
.site-header .container,
.site-header .container.nav,
.nav{
  margin:0 auto !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  min-height:0 !important;
  height:auto !important;
  line-height:1 !important;
}
.site-header .logo{
  margin:0 !important;
  padding:0 !important;
  line-height:0 !important;
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.site-header .logo-image-wide{
  display:block !important;
  height:112px !important;
  max-height:112px !important;
  width:auto !important;
  margin:-10px 0 !important;
  padding:0 !important;
  object-fit:contain !important;
}
.nav-links,
.nav-actions{
  margin:0 !important;
  padding:0 !important;
  gap:8px !important;
  line-height:1 !important;
  min-height:0 !important;
}
.nav-links a,
.nav-actions a,
.nav-actions button{
  margin:0 !important;
  padding:4px 7px !important;
  line-height:1 !important;
  min-height:0 !important;
}
.site-header + main,
.site-header + .main,
.site-header + .hero,
main > .hero:first-child,
main > .page-head:first-child{
  margin-top:0 !important;
  padding-top:8px !important;
}
.booking-time-help{
  display:block;
  margin-top:6px;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
@media(max-width:980px){
  .site-header .logo-image-wide{
    height:96px !important;
    max-height:96px !important;
    margin:-8px 0 !important;
  }
}
@media(max-width:640px){
  .site-header .logo-image-wide{
    height:76px !important;
    max-height:76px !important;
    margin:-6px 0 !important;
  }
}

/* v40 top navigation login + highlighted client login */
.login-status-actions .client-login-highlight{
  background:linear-gradient(135deg,#dc2626,#f97316) !important;
  border-color:rgba(255,255,255,.65) !important;
  color:#ffffff !important;
  box-shadow:0 8px 18px rgba(220,38,38,.28);
}
.login-status-actions .client-login-highlight:hover{
  background:linear-gradient(135deg,#b91c1c,#ea580c) !important;
  color:#ffffff !important;
}
.client-login-callout{
  border:2px solid #f97316 !important;
  box-shadow:0 0 0 4px rgba(249,115,22,.13), 0 18px 48px rgba(7,94,146,.12) !important;
}

/* v41 fix top login bar alignment and force logged-out buttons visible */
.login-status-bar{
  width:100% !important;
  left:0 !important;
  right:0 !important;
  box-sizing:border-box !important;
}
.login-status-inner{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:22px !important;
  padding-right:22px !important;
  box-sizing:border-box !important;
  justify-content:space-between !important;
}
.login-status-left{
  flex:0 1 auto !important;
}
.login-status-actions{
  flex:0 1 auto !important;
  margin-left:auto !important;
  justify-content:flex-end !important;
}
.login-status-actions a,
.login-status-actions button,
.top-nav-menu-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
}
.login-status-actions .client-login-highlight{
  display:inline-flex !important;
  background:linear-gradient(135deg,#dc2626,#f97316) !important;
  border-color:rgba(255,255,255,.7) !important;
  color:#ffffff !important;
}
@media(max-width:760px){
  .login-status-inner{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .login-status-actions{
    width:auto !important;
    margin-left:0 !important;
    justify-content:flex-start !important;
  }
}

/* v42 dropdown menu vertical layout and naming fixes */
.top-nav-dropdown{
  display:none !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:0 !important;
}
.top-nav-dropdown.open{
  display:flex !important;
}
.top-nav-dropdown a,
.top-nav-dropdown .nav-section-label{
  width:100% !important;
  display:block !important;
  box-sizing:border-box !important;
  text-align:left !important;
  white-space:normal !important;
}
.top-nav-dropdown a{
  margin:0 !important;
}
.login-status-actions .client-login-highlight{
  background:linear-gradient(135deg,#dc2626,#f97316) !important;
  border-color:rgba(255,255,255,.7) !important;
  color:#ffffff !important;
}

/* v43 booking page font and spacing consistency */
body.booking-page .hero.compact{
  padding-top:18px !important;
  padding-bottom:18px !important;
}
body.booking-page .hero.compact h1{
  font-size:clamp(30px,4vw,48px) !important;
  line-height:1.05 !important;
  margin-bottom:8px !important;
}
body.booking-page .hero.compact p{
  font-size:16px !important;
  line-height:1.45 !important;
  max-width:820px !important;
  margin-top:6px !important;
  margin-bottom:0 !important;
}
body.booking-page .section{
  padding-top:22px !important;
  padding-bottom:34px !important;
}
body.booking-page .client-booking-grid{
  gap:18px !important;
}
body.booking-page .card{
  padding:20px !important;
  border-radius:22px !important;
}
body.booking-page .card h2{
  font-size:24px !important;
  line-height:1.15 !important;
  margin-top:0 !important;
  margin-bottom:8px !important;
}
body.booking-page .card h3{
  font-size:18px !important;
  line-height:1.2 !important;
  margin-top:16px !important;
  margin-bottom:8px !important;
}
body.booking-page .card h4{
  font-size:15px !important;
  margin-top:0 !important;
  margin-bottom:8px !important;
}
body.booking-page .card p,
body.booking-page .card small,
body.booking-page .booking-time-help{
  font-size:14px !important;
  line-height:1.45 !important;
}
body.booking-page label{
  font-size:14px !important;
}
body.booking-page input,
body.booking-page select,
body.booking-page textarea{
  font-size:15px !important;
  padding:11px 12px !important;
}
body.booking-page .btn{
  padding:10px 16px !important;
  font-size:14px !important;
  border-radius:999px !important;
}
body.booking-page .form-grid{
  gap:12px !important;
}
body.booking-page .two,
body.booking-page .three{
  gap:12px !important;
}
body.booking-page .notice{
  margin:10px 0 12px !important;
  padding:12px 14px !important;
  font-size:14px !important;
}
body.booking-page .condition-grid{
  gap:10px !important;
  margin-top:10px !important;
}
body.booking-page .condition-group{
  padding:12px !important;
  border-radius:16px !important;
}
body.booking-page .check{
  gap:8px !important;
  margin:6px 0 !important;
  font-size:14px !important;
  line-height:1.35 !important;
}
body.booking-page .client-account-fields{
  padding:14px !important;
  border-radius:18px !important;
  margin:4px 0 !important;
}
body.booking-page #existingClientPortal .card{
  margin-bottom:0 !important;
}
body.booking-page .client-portal-grid{
  gap:14px !important;
}
body.booking-page .saved-muscle-note{
  padding:10px 12px !important;
  margin:8px 0 !important;
  border-radius:14px !important;
}
body.booking-page .charge-row{
  padding:8px 0 !important;
}
body.booking-page hr{
  margin:14px 0 !important;
}
@media(max-width:900px){
  body.booking-page .client-booking-grid{
    gap:14px !important;
  }
  body.booking-page .section{
    padding-top:18px !important;
  }
}

/* v44 dropdown section spacing */
.top-nav-dropdown .nav-section-label{
  margin-top:12px !important;
  padding-top:12px !important;
  border-top:1px solid #d6e8ef !important;
}
.top-nav-dropdown .nav-section-label:first-child{
  margin-top:0 !important;
  padding-top:8px !important;
  border-top:0 !important;
}
.top-nav-dropdown a + .nav-section-label{
  margin-top:14px !important;
}
.top-nav-dropdown a{
  margin-bottom:2px !important;
}

/* v45 staff/client booking panel */
.staff-client-booking-panel{
  margin-top:18px;
}
.staff-client-booking-panel .staff-booking-note{
  border-left:7px solid #1F6FEA;
  background:#f8fbff;
}
.staff-client-booking-panel[hidden]{
  display:none !important;
}

/* v47 SpaFlow visual marketing polish */
:root{
  --sf-aqua:#12BFC4;
  --sf-blue:#1F6FEA;
  --sf-ink:#123047;
  --sf-mint:#E9FFFB;
  --sf-lavender:#F1F0FF;
  --sf-gold:#F7B267;
}
body{
  background:
    radial-gradient(circle at 10% 0%, rgba(18,191,196,.12), transparent 28%),
    radial-gradient(circle at 95% 12%, rgba(31,111,234,.10), transparent 26%),
    linear-gradient(180deg,#ffffff 0%,#f6fbff 38%,#ffffff 100%) !important;
}
.site-header{
  background:rgba(255,255,255,.92) !important;
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(18,191,196,.16) !important;
  box-shadow:0 10px 32px rgba(18,63,94,.06) !important;
}
.site-header .logo-image-wide{
  height:168px !important;
  max-height:168px !important;
  margin:-18px 0 !important;
}
.nav-links a{
  position:relative;
}
.nav-links a::after{
  content:"";
  position:absolute;
  left:10%;
  right:10%;
  bottom:-7px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--sf-aqua),var(--sf-blue));
  opacity:0;
  transform:scaleX(.5);
  transition:.2s ease;
}
.nav-links a:hover::after{
  opacity:1;
  transform:scaleX(1);
}
.hero{
  position:relative;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  inset:22px 4% auto auto;
  width:280px;
  height:280px;
  border-radius:999px;
  background:
    radial-gradient(circle at 35% 35%,rgba(255,255,255,.75),transparent 22%),
    linear-gradient(135deg,rgba(18,191,196,.18),rgba(31,111,234,.14),rgba(247,178,103,.14));
  filter:blur(.2px);
  z-index:0;
}
.hero::after{
  content:"";
  position:absolute;
  right:8%;
  bottom:24px;
  width:160px;
  height:160px;
  border-radius:36px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,.1)),
    linear-gradient(135deg,rgba(18,191,196,.18),rgba(31,111,234,.18));
  transform:rotate(10deg);
  box-shadow:0 24px 70px rgba(31,111,234,.12);
  z-index:0;
}
.hero > .container{
  position:relative;
  z-index:1;
}
.badge{
  box-shadow:0 8px 22px rgba(18,191,196,.15) !important;
}
.card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  border-color:rgba(18,191,196,.18) !important;
}
.card:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 50px rgba(18,63,94,.12) !important;
}
.btn-primary{
  background:linear-gradient(135deg,var(--sf-aqua),var(--sf-blue)) !important;
  box-shadow:0 14px 28px rgba(31,111,234,.20) !important;
}
.btn-secondary{
  background:linear-gradient(135deg,#ffffff,#eefcff) !important;
  border-color:rgba(18,191,196,.35) !important;
}
.visual-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:28px;
}
.visual-tile{
  border:1px solid rgba(18,191,196,.22);
  border-radius:26px;
  padding:18px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(233,255,251,.72));
  box-shadow:0 16px 42px rgba(18,63,94,.08);
  min-height:135px;
}
.visual-icon{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  margin-bottom:12px;
  background:linear-gradient(135deg,rgba(18,191,196,.16),rgba(31,111,234,.16));
  font-size:28px;
}
.visual-tile h3{
  margin:0 0 6px;
  font-size:18px;
  color:var(--sf-ink);
}
.visual-tile p{
  margin:0;
  font-size:14px;
  line-height:1.45;
}
.flow-diagram{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  align-items:stretch;
  margin:28px 0 8px;
}
.flow-step{
  position:relative;
  border-radius:24px;
  padding:18px 14px;
  text-align:center;
  background:linear-gradient(180deg,#fff,#f0fffc);
  border:1px solid rgba(18,191,196,.22);
  box-shadow:0 12px 34px rgba(18,63,94,.08);
}
.flow-step:not(:last-child)::after{
  content:"→";
  position:absolute;
  right:-14px;
  top:42%;
  font-size:24px;
  color:var(--sf-aqua);
  font-weight:900;
}
.flow-step strong{
  display:block;
  font-size:15px;
  color:var(--sf-ink);
  margin-top:6px;
}
.flow-step span{
  display:block;
  width:44px;
  height:44px;
  margin:0 auto;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-size:24px;
  background:linear-gradient(135deg,rgba(18,191,196,.16),rgba(31,111,234,.16));
}
.dashboard-mockup{
  border-radius:30px;
  padding:18px;
  background:linear-gradient(135deg,#123047,#1F6FEA);
  box-shadow:0 28px 80px rgba(31,111,234,.25);
  color:#fff;
}
.mockup-top{
  display:flex;
  gap:8px;
  margin-bottom:14px;
}
.mockup-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
}
.mockup-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:12px;
}
.mockup-panel{
  border-radius:20px;
  padding:14px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
}
.mockup-line{
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.5);
  margin:9px 0;
}
.mockup-line.short{width:55%}
.mockup-line.med{width:75%}
.sf-stat-ribbon{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:24px;
}
.sf-stat{
  border-radius:24px;
  padding:18px;
  background:linear-gradient(135deg,#fff,#f6fffe);
  border:1px solid rgba(18,191,196,.22);
  text-align:center;
}
.sf-stat strong{
  display:block;
  font-size:30px;
  color:var(--sf-blue);
}
.sf-watermark{
  position:relative;
}
.sf-watermark::before{
  content:"SpaFlow";
  position:absolute;
  right:20px;
  bottom:10px;
  font-size:56px;
  font-weight:900;
  color:rgba(18,191,196,.07);
  pointer-events:none;
}
@media(max-width:980px){
  .site-header .logo-image-wide{
    height:144px !important;
    max-height:144px !important;
    margin:-14px 0 !important;
  }
  .visual-strip,.flow-diagram,.sf-stat-ribbon{
    grid-template-columns:1fr 1fr;
  }
  .flow-step:not(:last-child)::after{display:none}
}
@media(max-width:640px){
  .site-header .logo-image-wide{
    height:112px !important;
    max-height:112px !important;
    margin:-10px 0 !important;
  }
  .visual-strip,.flow-diagram,.sf-stat-ribbon,.mockup-grid{
    grid-template-columns:1fr;
  }
  .hero::before,.hero::after{display:none}
}

/* v48 feature detail pages and linked homepage feature cards */
.feature-card-link{
  display:block;
  color:inherit;
  text-decoration:none;
}
.feature-card-link:hover{
  text-decoration:none;
}
.feature-detail-hero{
  position:relative;
  overflow:hidden;
}
.feature-detail-layout{
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(320px,.9fr);
  gap:28px;
  align-items:center;
}
.feature-visual-card{
  min-height:360px;
  border-radius:34px;
  padding:24px;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.9),transparent 22%),
    linear-gradient(135deg,rgba(18,191,196,.18),rgba(31,111,234,.15),rgba(247,178,103,.14));
  border:1px solid rgba(18,191,196,.25);
  box-shadow:0 24px 70px rgba(18,63,94,.14);
  display:grid;
  place-items:center;
}
.feature-illustration{
  width:100%;
  max-width:460px;
  border-radius:30px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.75);
  padding:22px;
  box-shadow:0 18px 50px rgba(18,63,94,.14);
}
.feature-illustration svg{
  width:100%;
  height:auto;
  display:block;
}
.feature-bullets{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.feature-bullet{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px;
  border-radius:20px;
  background:linear-gradient(135deg,#fff,#f7fffe);
  border:1px solid rgba(18,191,196,.20);
}
.feature-bullet span{
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,rgba(18,191,196,.18),rgba(31,111,234,.14));
}
.feature-page .section{
  padding-top:30px;
}
.feature-page h2{
  margin-bottom:10px;
}
.related-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.related-feature-grid a{
  text-decoration:none;
  color:inherit;
}
@media(max-width:900px){
  .feature-detail-layout,.related-feature-grid{grid-template-columns:1fr}
}

/* v49 business settings save button spacing */
.business-settings-save-row{
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:12px !important;
  margin:26px 0 30px !important;
  padding:18px 0 22px !important;
  clear:both !important;
  border-top:1px solid rgba(18,191,196,.18);
  border-bottom:1px solid rgba(18,191,196,.10);
}
.business-settings-save-row .btn,
.business-settings-save-row button{
  position:relative !important;
  z-index:2 !important;
  margin:0 !important;
}
.settings-section,
.settings-card,
#businessSettingsForm{
  overflow:visible !important;
}

/* v50 settings page sections + logged-in footer consistency */
.settings-quick-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0 24px !important;
  padding:16px;
  border-radius:24px;
  background:linear-gradient(135deg,#ffffff,#f3fffd);
  border:1px solid rgba(18,191,196,.22);
  box-shadow:0 12px 32px rgba(18,63,94,.07);
}
.settings-quick-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 13px;
  border-radius:999px;
  color:#123047;
  background:#ffffff;
  border:1px solid rgba(18,191,196,.30);
  text-decoration:none;
  font-size:13px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(18,63,94,.05);
}
.settings-quick-links a:hover{
  background:linear-gradient(135deg,#E9FFFB,#ffffff);
  color:#1F6FEA;
  text-decoration:none;
}
.settings-collapsible-section{
  margin:24px 0 !important;
  padding:0 !important;
  border:1px solid rgba(18,191,196,.24) !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#ffffff,#fbfffe) !important;
  box-shadow:0 18px 48px rgba(18,63,94,.09) !important;
  overflow:hidden !important;
  scroll-margin-top:120px;
}
.settings-collapsible-section + .settings-collapsible-section{
  margin-top:30px !important;
}
.settings-collapse-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:18px 20px;
  background:linear-gradient(135deg,rgba(18,191,196,.11),rgba(31,111,234,.07));
  border-bottom:1px solid rgba(18,191,196,.18);
}
.settings-collapse-title{
  margin:0 !important;
  font-size:22px !important;
  line-height:1.15 !important;
  color:#123047 !important;
}
.settings-collapse-toggle{
  flex:0 0 auto;
  border:1px solid rgba(18,191,196,.35) !important;
  background:#ffffff !important;
  color:#123047 !important;
  border-radius:999px !important;
  padding:8px 13px !important;
  font-size:13px !important;
  font-weight:900 !important;
  cursor:pointer;
}
.settings-collapse-toggle:hover{
  background:#E9FFFB !important;
}
.settings-collapse-content{
  padding:20px !important;
}
.settings-collapsible-section.is-collapsed .settings-collapse-content{
  display:none !important;
}
.business-settings-save-row{
  margin:28px 0 34px !important;
  padding:20px 0 24px !important;
  clear:both !important;
}
body.logged-in-page .site-footer,
body.logged-in-app .site-footer,
body.dashboard-page .site-footer,
body.settings-page .site-footer,
body.calendar-page .site-footer,
body.clients-page .site-footer,
body.soap-page .site-footer,
body.staff-dashboard-page .site-footer,
body.staff-calendar-page .site-footer{
  background:linear-gradient(135deg,#123047,#1F6FEA) !important;
  color:#ffffff !important;
  border-top:0 !important;
  box-shadow:0 -18px 50px rgba(18,63,94,.14);
}
body.logged-in-page .site-footer a,
body.logged-in-app .site-footer a,
body.dashboard-page .site-footer a,
body.settings-page .site-footer a,
body.calendar-page .site-footer a,
body.clients-page .site-footer a,
body.soap-page .site-footer a,
body.staff-dashboard-page .site-footer a,
body.staff-calendar-page .site-footer a{
  color:#E9FFFB !important;
}
body.logged-in-page .site-footer p,
body.logged-in-app .site-footer p,
body.dashboard-page .site-footer p,
body.settings-page .site-footer p,
body.calendar-page .site-footer p,
body.clients-page .site-footer p,
body.soap-page .site-footer p,
body.staff-dashboard-page .site-footer p,
body.staff-calendar-page .site-footer p{
  color:rgba(255,255,255,.86) !important;
}

/* v51 settings save fixes + scheduling/category cleanup */
.settings-save-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-left:12px;
  padding:10px 14px;
  border-radius:999px;
  background:#e8fff8;
  border:1px solid rgba(34,197,94,.35);
  color:#166534;
  font-weight:900;
  font-size:13px;
}
.settings-save-status::before{
  content:"✓";
  width:20px;
  height:20px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#22c55e;
  color:#fff;
}
#settings-section-scheduling-rules .settings-collapse-toggle{
  display:none !important;
}
#settings-section-scheduling-rules .settings-collapse-content{
  display:block !important;
}
#settings-section-scheduling-rules{
  margin-bottom:40px !important;
}
#settings-section-business-hours{
  margin-top:40px !important;
}
.settings-sub-save-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin:18px 0 22px !important;
  padding:16px 0 !important;
  border-top:1px solid rgba(18,191,196,.14);
  border-bottom:1px solid rgba(18,191,196,.08);
}
.category-add-hidden,
[data-category-add-hidden="true"]{
  display:none !important;
}

/* v52 rebuilt settings navigation and hidden sections */
.settings-v52-links{
  display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 26px;padding:16px;border-radius:24px;
  background:linear-gradient(135deg,#fff,#f3fffd);border:1px solid rgba(18,191,196,.24);
  box-shadow:0 12px 32px rgba(18,63,94,.08)
}
.settings-v52-links button{
  border:1px solid rgba(18,191,196,.35);background:#fff;color:#123047;border-radius:999px;
  padding:10px 14px;font-size:13px;font-weight:900;cursor:pointer
}
.settings-v52-links button.active,.settings-v52-links button:hover{
  background:linear-gradient(135deg,#12BFC4,#1F6FEA);color:#fff
}
.settings-v52-panel{
  display:none;margin:28px 0!important;padding:0!important;border-radius:28px!important;
  border:1px solid rgba(18,191,196,.24)!important;background:linear-gradient(180deg,#fff,#fbfffe)!important;
  box-shadow:0 18px 48px rgba(18,63,94,.09)!important;overflow:hidden!important
}
.settings-v52-panel.active{display:block!important}
.settings-v52-panel-head{
  padding:18px 20px;background:linear-gradient(135deg,rgba(18,191,196,.12),rgba(31,111,234,.08));
  border-bottom:1px solid rgba(18,191,196,.18)
}
.settings-v52-panel-head h2{margin:0!important;font-size:22px!important;color:#123047!important}
.settings-v52-panel-body{padding:22px!important}
.settings-v52-save-row{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:22px 0 0!important;padding:18px 0 0!important;
  border-top:1px solid rgba(18,191,196,.16)
}
.settings-v52-status{
  display:none;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#e8fff8;
  border:1px solid rgba(34,197,94,.35);color:#166534;font-weight:900;font-size:13px
}
.settings-v52-status.show{display:inline-flex}
.settings-v52-status::before{content:"✓";width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:#22c55e;color:#fff}
.category-add-hidden,[data-category-add-hidden="true"]{display:none!important}

/* v53 client ZIP helper styling */
.zip-format-help{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}

/* v54 client invite / first login setup */
.client-invite-status{
  margin:18px auto !important;
  max-width:1120px;
  border-left:7px solid #22c55e;
}
.client-invite-status .btn{
  margin:10px 8px 0 0;
}
.client-login-setup-card{
  margin:20px 0 26px !important;
  border-left:7px solid #1F6FEA !important;
}

/* v55 clients email notification and staff-only controls */
.sf-email-site-notice{
  max-width:1120px;
  margin:18px auto !important;
  border-left:7px solid #22c55e;
  opacity:0;
  transform:translateY(-6px);
  transition:.2s ease;
}
.sf-email-site-notice.show{
  opacity:1;
  transform:translateY(0);
}
.btn-small{
  padding:7px 11px !important;
  font-size:12px !important;
  margin:4px !important;
}
button.disabled,
input.disabled{
  opacity:.55 !important;
  cursor:not-allowed !important;
}

/* v57 client intake countdown */
.intake-countdown-card{
  margin:10px 0 !important;
  padding:12px 14px !important;
  border-radius:18px !important;
  border:1px solid rgba(18,191,196,.24) !important;
  background:linear-gradient(135deg,#ffffff,#f7fffe) !important;
  display:grid;
  gap:5px;
}
.intake-countdown-card strong{
  color:#123047;
}
.intake-countdown-card span{
  font-weight:900;
}
.intake-countdown-card small{
  color:#64748b;
  font-weight:700;
}
.intake-current{
  border-left:7px solid #22c55e !important;
}
.intake-expired,
.intake-missing{
  border-left:7px solid #f97316 !important;
}
.sf-intake-site-notice{
  max-width:1120px;
  margin:18px auto !important;
  border-left:7px solid #22c55e;
  opacity:0;
  transform:translateY(-6px);
  transition:.2s ease;
}
.sf-intake-site-notice.show{
  opacity:1;
  transform:translateY(0);
}
.intake-invite-panel{
  margin:20px 0 26px !important;
  border-left:7px solid #1F6FEA !important;
}

/* v58 final settings-page section controller */
.settings-v58-links{
  position:sticky;
  top:48px;
  z-index:9000;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0 28px;
  padding:14px;
  border-radius:24px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(12px);
  border:1px solid rgba(18,191,196,.24);
  box-shadow:0 12px 32px rgba(18,63,94,.10);
}
.settings-v58-links button{
  border:1px solid rgba(18,191,196,.35);
  background:#fff;
  color:#123047;
  border-radius:999px;
  padding:10px 14px;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
}
.settings-v58-links button.active,
.settings-v58-links button:hover{
  background:linear-gradient(135deg,#12BFC4,#1F6FEA);
  color:#fff;
}
.settings-v58-panel{
  display:none !important;
  margin:28px 0 !important;
  padding:0 !important;
  border-radius:28px !important;
  border:1px solid rgba(18,191,196,.24) !important;
  background:linear-gradient(180deg,#fff,#fbfffe) !important;
  box-shadow:0 18px 48px rgba(18,63,94,.09) !important;
  overflow:hidden !important;
  scroll-margin-top:150px;
}
.settings-v58-panel.active{
  display:block !important;
}
.settings-v58-panel-head{
  padding:18px 20px;
  background:linear-gradient(135deg,rgba(18,191,196,.12),rgba(31,111,234,.08));
  border-bottom:1px solid rgba(18,191,196,.18);
}
.settings-v58-panel-head h2{
  margin:0 !important;
  font-size:22px !important;
  color:#123047 !important;
}
.settings-v58-panel-body{
  padding:22px !important;
}
.settings-v58-save-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin:22px 0 0 !important;
  padding:18px 0 0 !important;
  border-top:1px solid rgba(18,191,196,.16);
}
.settings-v58-status{
  display:none;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:#e8fff8;
  border:1px solid rgba(34,197,94,.35);
  color:#166534;
  font-weight:900;
  font-size:13px;
}
.settings-v58-status.show{display:inline-flex}
.settings-v58-status::before{
  content:"✓";
  width:20px;
  height:20px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#22c55e;
  color:#fff;
}
.settings-v58-toast{
  position:fixed;
  right:20px;
  bottom:22px;
  z-index:2147483647;
  max-width:360px;
  padding:14px 16px;
  border-radius:18px;
  background:#123047;
  color:#fff;
  box-shadow:0 18px 48px rgba(18,63,94,.22);
  display:none;
  font-weight:900;
}
.settings-v58-toast.show{display:block}
body.settings-page .settings-quick-links,
body.settings-page .settings-v52-links:not(#settingsQuickLinksV58),
body.settings-page .settings-v50-links,
body.settings-page .settings-v51-links,
body.settings-page .settings-v52-panel:not([id^="settings-v58-"]),
body.settings-page .settings-collapsible-section{
  display:none !important;
}
body.settings-page .business-settings-save-row:not(.settings-v58-save-row),
body.settings-page button{
  max-width:100%;
}
@media(max-width:760px){
  .settings-v58-links{top:42px}
}

/* v62 profile photos and login bar avatar */
.login-avatar-wrap{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-right:7px;
  vertical-align:middle;
}
.login-avatar{
  width:28px;
  height:28px;
  border-radius:999px;
  object-fit:cover;
  border:2px solid rgba(18,191,196,.45);
  box-shadow:0 4px 10px rgba(18,63,94,.14);
  vertical-align:middle;
}
.login-avatar-fallback{
  display:inline-grid;
  place-items:center;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA);
  color:#fff;
  font-weight:900;
  font-size:12px;
}
.client-photo-upload-field{
  margin:10px 0;
}
.client-photo-upload-field small{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-weight:700;
}
.client-photo-manager-card{
  margin:20px 0 24px !important;
  border-left:7px solid #12BFC4 !important;
}
.client-photo-manager-row{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}
.client-photo-manager-row .login-avatar{
  width:82px;
  height:82px;
  font-size:28px;
}
.client-photo-save-status{
  display:inline-block;
  margin-left:10px;
  font-weight:900;
  color:#166534;
}

/* v63 settings page: native visible sections */
.settings-v63-links{
  position:sticky;
  top:48px;
  z-index:9000;
  display:flex !important;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0 28px;
  padding:14px;
  border-radius:24px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  border:1px solid rgba(18,191,196,.24);
  box-shadow:0 12px 32px rgba(18,63,94,.10);
}
.settings-v63-links button{
  border:1px solid rgba(18,191,196,.35);
  background:#fff;
  color:#123047;
  border-radius:999px;
  padding:10px 14px;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
}
.settings-v63-links button.active,
.settings-v63-links button:hover{
  background:linear-gradient(135deg,#12BFC4,#1F6FEA);
  color:#fff;
}
.settings-v63-section{
  display:block !important;
  margin:28px 0 !important;
  border-radius:28px !important;
  border:1px solid rgba(18,191,196,.24) !important;
  background:linear-gradient(180deg,#fff,#fbfffe) !important;
  box-shadow:0 18px 48px rgba(18,63,94,.09) !important;
  overflow:hidden !important;
  scroll-margin-top:150px;
}
.settings-v63-section summary{
  list-style:none;
  cursor:pointer;
  padding:18px 20px;
  background:linear-gradient(135deg,rgba(18,191,196,.12),rgba(31,111,234,.08));
  border-bottom:1px solid rgba(18,191,196,.18);
  display:flex;
  flex-direction:column;
  gap:4px;
}
.settings-v63-section summary::-webkit-details-marker{display:none}
.settings-v63-section summary span{
  font-size:22px;
  font-weight:950;
  color:#123047;
}
.settings-v63-section summary small{
  color:#64748b;
  font-weight:800;
}
.settings-v63-section summary::after{
  content:"Expand";
  position:absolute;
  right:32px;
  margin-top:2px;
  border:1px solid rgba(18,191,196,.35);
  background:#fff;
  color:#123047;
  border-radius:999px;
  padding:7px 12px;
  font-size:12px;
  font-weight:900;
}
.settings-v63-section[open] summary::after{content:"Collapse"}
.settings-v63-body{
  display:block !important;
  padding:22px !important;
}
.settings-v63-save-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin:22px 0 0 !important;
  padding:18px 0 0 !important;
  border-top:1px solid rgba(18,191,196,.16);
}
.settings-v63-status{
  display:none;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:#e8fff8;
  border:1px solid rgba(34,197,94,.35);
  color:#166534;
  font-weight:900;
  font-size:13px;
}
.settings-v63-status.show{display:inline-flex}
.settings-v63-status::before{
  content:"✓";
  width:20px;
  height:20px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#22c55e;
  color:#fff;
}
.settings-v63-toast{
  position:fixed;
  right:20px;
  bottom:22px;
  z-index:2147483647;
  max-width:360px;
  padding:14px 16px;
  border-radius:18px;
  background:#123047;
  color:#fff;
  box-shadow:0 18px 48px rgba(18,63,94,.22);
  display:none;
  font-weight:900;
}
.settings-v63-toast.show{display:block}
body.settings-page .settings-quick-links,
body.settings-page .settings-v52-links,
body.settings-page .settings-v58-links,
body.settings-page .settings-v52-panel,
body.settings-page .settings-v58-panel,
body.settings-page .settings-collapsible-section{
  display:none !important;
}
@media(max-width:760px){
  .settings-v63-links{top:42px}
  .settings-v63-section summary::after{position:static;width:max-content;margin-top:8px}
}

/* v64 stable top login avatar and remove old phone-login dropdown arrow */
.login-avatar-wrap.sf-v64-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-right:8px !important;
  flex:0 0 auto !important;
}
.login-avatar-wrap.sf-v64-avatar .login-avatar{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  display:inline-grid !important;
  place-items:center !important;
  vertical-align:middle !important;
}
body.booking-page #existingClientPortal select[name*="phone" i],
body.booking-page #existingClientPortal select[id*="phone" i],
body.booking-page #existingClientPortal select[name*="method" i],
body.booking-page #existingClientPortal select[id*="method" i],
body.booking-page #existingClientLogin select,
body.booking-page .existing-client-login select,
body.booking-page .client-login-card select{
  display:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  background-image:none !important;
}

/* v65 phone formatting */
input[type="tel"][data-sf-v65-phone-format="true"],
input[data-sf-v65-phone-format="true"]{
  letter-spacing:.01em;
}

/* v66 logged-in left sidebar logo 75% bigger */
body.logged-in-page .sidebar .logo,
.app-shell .sidebar .logo{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px 12px 22px !important;
}
body.logged-in-page .sidebar .logo img,
body.logged-in-page .sidebar .logo-image-wide,
body.logged-in-page .sidebar .logo-image,
.app-shell .sidebar .logo img,
.app-shell .sidebar .logo-image-wide,
.app-shell .sidebar .logo-image{
  width:175% !important;
  max-width:340px !important;
  height:auto !important;
  transform:scale(1) !important;
  object-fit:contain !important;
}
body.logged-in-page .sidebar,
.app-shell .sidebar{
  overflow:visible !important;
}
body.logged-in-page .side-links,
.app-shell .side-links{
  margin-top:12px !important;
}
@media(max-width:900px){
  body.logged-in-page .sidebar .logo img,
  body.logged-in-page .sidebar .logo-image-wide,
  body.logged-in-page .sidebar .logo-image,
  .app-shell .sidebar .logo img,
  .app-shell .sidebar .logo-image-wide,
  .app-shell .sidebar .logo-image{
    width:150% !important;
    max-width:280px !important;
  }
}

/* v67 settings business logo preview and fixed save status */
.business-logo-preview-v67{
  min-height:90px;
  border:1px solid rgba(18,191,196,.28);
  border-radius:20px;
  padding:14px;
  display:flex;
  align-items:center;
  gap:14px;
  background:linear-gradient(135deg,#ffffff,#f7fffe);
  margin:8px 0 10px;
}
.business-logo-preview-v67 img{
  width:120px;
  max-height:90px;
  object-fit:contain;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 20px rgba(18,63,94,.10);
  padding:8px;
}
.business-logo-preview-v67 strong{
  display:block;
  color:#123047;
  font-weight:950;
}
.business-logo-preview-v67 small,
.business-logo-upload-btn-v67 + input + small,
.business-logo-preview-empty{
  display:block;
  color:#64748b;
  font-weight:800;
  margin-top:4px;
}
.business-logo-file-input-v67{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
}
.business-logo-upload-btn-v67{
  display:inline-flex !important;
  width:max-content !important;
  cursor:pointer !important;
  margin:4px 0 4px !important;
}
.settings-v63-status.error,
.settings-v58-status.error{
  background:#fff1f2 !important;
  border-color:rgba(244,63,94,.35) !important;
  color:#9f1239 !important;
}
.settings-v63-status.error::before,
.settings-v58-status.error::before{
  content:"!";
  background:#f43f5e !important;
}

/* v68 Reports page */
.reports-hero{
  display:grid;
  grid-template-columns:1.4fr .8fr;
  gap:24px;
  align-items:center;
  margin:14px 0 22px;
  padding:28px;
  border-radius:32px;
  background:linear-gradient(135deg,rgba(18,191,196,.13),rgba(31,111,234,.12),rgba(124,58,237,.10));
  border:1px solid rgba(18,191,196,.24);
  overflow:hidden;
}
.reports-hero h1{font-size:clamp(34px,5vw,62px); margin:8px 0}
.reports-hero-art{
  min-height:210px;
  border-radius:30px;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA 60%,#7C3AED);
  color:#fff;
  display:grid;
  place-items:center;
  position:relative;
  box-shadow:0 24px 70px rgba(31,111,234,.25);
}
.reports-hero-art strong{font-size:34px;letter-spacing:.08em;text-align:center;z-index:2}
.reports-hero-art .orb{position:absolute;border-radius:999px;background:rgba(255,255,255,.18)}
.reports-hero-art .one{width:115px;height:115px;top:18px;right:26px}
.reports-hero-art .two{width:88px;height:88px;bottom:22px;left:24px}
.reports-hero-art .three{width:42px;height:42px;top:48px;left:56px}
.reports-controls{margin:18px 0 22px!important}
.reports-filter-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:14px;
}
.reports-grid{
  display:grid;
  grid-template-columns:repeat( auto-fit, minmax(260px, 1fr));
  gap:18px;
  margin:22px 0 28px;
}
.report-card{
  border-radius:28px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(18,191,196,.22);
  box-shadow:0 16px 46px rgba(18,63,94,.09);
  cursor:pointer;
  transition:.22s ease;
}
.report-card:hover,.report-card.active{
  transform:translateY(-4px);
  box-shadow:0 24px 70px rgba(31,111,234,.16);
  border-color:rgba(31,111,234,.42);
}
.report-card-image svg{width:100%;display:block}
.report-card-body{padding:18px}
.report-card-body h3{margin:0 0 8px;color:#123047}
.report-card-body p{min-height:68px;color:#64748b;font-weight:700}
.report-view-shell{margin-top:24px}
.report-toolbar{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  position:sticky;
  top:48px;
  z-index:100;
}
.report-toolbar h2{margin:0}
.report-toolbar p{margin:5px 0 0;color:#64748b;font-weight:700}
.report-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.report-output{margin-top:16px!important;padding:24px!important}
.empty-report-state{text-align:center;padding:45px 20px}
.report-print-header{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:18px;
  align-items:center;
  margin-bottom:22px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(18,191,196,.18);
}
.report-mini-image svg{width:180px;border-radius:22px}
.report-print-header h2{margin:6px 0;font-size:32px;color:#123047}
.report-summary-cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:14px;
  margin:18px 0 24px;
}
.report-kpi{
  padding:18px;
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#f7fffe);
  border:1px solid rgba(18,191,196,.22);
  box-shadow:0 10px 30px rgba(18,63,94,.07);
}
.report-kpi span{display:block;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.report-kpi strong{display:block;font-size:24px;color:#123047;margin-top:6px}
.report-kpi small{display:block;color:#64748b;font-weight:700;margin-top:5px}
.report-table-wrap{overflow:auto;border-radius:20px;border:1px solid rgba(18,191,196,.18);margin:14px 0 26px}
.report-table{width:100%;border-collapse:collapse;background:#fff}
.report-table th{
  background:linear-gradient(135deg,#123047,#1F6FEA);
  color:#fff;
  text-align:left;
  padding:12px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.report-table td{padding:12px;border-bottom:1px solid rgba(18,191,196,.12);font-weight:700;color:#334155}
.report-table tr:nth-child(even) td{background:#f8fbff}
.dashboard-report-visual,.report-chart-card{
  display:grid;
  grid-template-columns:minmax(220px,.8fr) 1fr;
  gap:20px;
  align-items:center;
  padding:20px;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(18,191,196,.10),rgba(31,111,234,.08));
  border:1px solid rgba(18,191,196,.18);
}
.dashboard-report-visual svg{width:100%;border-radius:22px}
.sales-trend-chart{width:100%;min-height:260px;background:#fff;border-radius:22px;border:1px solid rgba(18,191,196,.18)}
@media(max-width:900px){
  .reports-hero,.report-print-header,.dashboard-report-visual,.report-chart-card{grid-template-columns:1fr}
  .reports-filter-grid{grid-template-columns:1fr 1fr}
  .report-toolbar{position:static;display:block}
  .report-toolbar-actions{justify-content:flex-start;margin-top:12px}
}
@media print{
  body.printing-report *{visibility:hidden!important}
  body.printing-report #activeReportPrintable,
  body.printing-report #activeReportPrintable *{visibility:visible!important}
  body.printing-report #activeReportPrintable{
    position:absolute!important;
    left:0!important;top:0!important;
    width:100%!important;
    background:#fff!important;
    padding:20px!important;
  }
  body.printing-report .report-mini-image svg,
  body.printing-report .report-card-image svg{max-height:120px}
  body.printing-report .report-table-wrap{overflow:visible!important}
  body.printing-report .report-toolbar{display:none!important}
}

/* v69 logged-in left sidebar logo 20% smaller than prior oversized version */
body.logged-in-page .sidebar .logo,
.app-shell .sidebar .logo{
  padding:20px 12px 18px !important;
}
body.logged-in-page .sidebar .logo img,
body.logged-in-page .sidebar .logo-image-wide,
body.logged-in-page .sidebar .logo-image,
.app-shell .sidebar .logo img,
.app-shell .sidebar .logo-image-wide,
.app-shell .sidebar .logo-image{
  width:140% !important;
  max-width:272px !important;
  height:auto !important;
  object-fit:contain !important;
}
@media(max-width:900px){
  body.logged-in-page .sidebar .logo img,
  body.logged-in-page .sidebar .logo-image-wide,
  body.logged-in-page .sidebar .logo-image,
  .app-shell .sidebar .logo img,
  .app-shell .sidebar .logo-image-wide,
  .app-shell .sidebar .logo-image{
    width:120% !important;
    max-width:224px !important;
  }
}

/* v70 Business Owner role label support */
.role-business-owner,
.badge-business-owner{
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  color:#fff !important;
}

/* v71 report business/generated-by banner */
.report-business-banner{
  display:grid;
  grid-template-columns:1.35fr .95fr;
  gap:18px;
  align-items:center;
  padding:20px;
  margin:0 0 22px;
  border-radius:28px;
  background:
    radial-gradient(circle at 10% 20%, rgba(255,255,255,.28), transparent 30%),
    linear-gradient(135deg,#123047,#1F6FEA 58%,#12BFC4);
  color:#fff;
  box-shadow:0 22px 64px rgba(18,63,94,.18);
  overflow:hidden;
}
.report-business-block,
.report-generated-block{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
}
.report-business-logo{
  width:96px;
  height:96px;
  border-radius:24px;
  object-fit:contain;
  background:#fff;
  padding:10px;
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  flex:0 0 auto;
}
.report-business-block h2{
  margin:0 0 7px !important;
  color:#fff !important;
  font-size:30px !important;
  line-height:1.05;
}
.report-business-details{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  font-weight:800;
  opacity:.94;
}
.report-business-details span{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
}
.report-generated-block{
  justify-content:flex-end;
  padding:14px;
  border-radius:24px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
}
.report-generated-photo{
  width:74px;
  height:74px;
  border-radius:999px;
  object-fit:cover;
  background:#fff;
  border:3px solid rgba(255,255,255,.66);
  box-shadow:0 12px 28px rgba(0,0,0,.16);
  flex:0 0 auto;
}
.report-banner-fallback{
  display:grid;
  place-items:center;
  font-size:28px;
  font-weight:950;
  color:#fff;
  background:linear-gradient(135deg,#12BFC4,#7C3AED);
}
.report-generated-label{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:950;
  opacity:.82;
}
.report-generated-block strong{
  display:block;
  color:#fff;
  font-size:20px;
  margin:3px 0;
}
.report-generated-block small{
  display:block;
  color:rgba(255,255,255,.88);
  font-weight:800;
}
@media(max-width:900px){
  .report-business-banner{
    grid-template-columns:1fr;
  }
  .report-generated-block{
    justify-content:flex-start;
  }
}
@media print{
  .report-business-banner{
    break-inside:avoid;
    box-shadow:none !important;
    print-color-adjust:exact;
    -webkit-print-color-adjust:exact;
  }
}

/* v72 login bar avatar: user photo only, fallback initial if no user photo */
.login-avatar-wrap.sf-v72-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-right:8px !important;
  flex:0 0 auto !important;
}
.login-avatar-wrap.sf-v72-avatar .login-avatar{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  display:inline-grid !important;
  place-items:center !important;
}

/* v73 logged-in sidebar polish: remove top whitespace and style vertical links */
body.logged-in-page .app-shell .sidebar,
.app-shell .sidebar{
  padding-top:0 !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(18,191,196,.18), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f4fffe 52%,#eef6ff 100%) !important;
  border-right:1px solid rgba(18,191,196,.22) !important;
  box-shadow:12px 0 38px rgba(18,63,94,.07) !important;
}

body.logged-in-page .sidebar .logo,
.app-shell .sidebar .logo{
  margin-top:0 !important;
  padding:6px 10px 12px !important;
  min-height:unset !important;
  background:linear-gradient(135deg,rgba(18,191,196,.10),rgba(31,111,234,.08)) !important;
  border-bottom:1px solid rgba(18,191,196,.18) !important;
  border-radius:0 0 26px 26px !important;
}

body.logged-in-page .sidebar .logo img,
body.logged-in-page .sidebar .logo-image-wide,
body.logged-in-page .sidebar .logo-image,
.app-shell .sidebar .logo img,
.app-shell .sidebar .logo-image-wide,
.app-shell .sidebar .logo-image{
  display:block !important;
  margin:0 auto !important;
}

body.logged-in-page .side-links,
.app-shell .side-links{
  display:flex !important;
  flex-direction:column !important;
  gap:9px !important;
  margin:14px 10px 18px !important;
  padding:12px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(18,191,196,.20) !important;
  box-shadow:0 14px 36px rgba(18,63,94,.08) !important;
  backdrop-filter:blur(10px) !important;
}

body.logged-in-page .side-links a,
.app-shell .side-links a{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  min-height:42px !important;
  padding:11px 14px !important;
  border-radius:18px !important;
  color:#123047 !important;
  font-weight:900 !important;
  text-decoration:none !important;
  background:linear-gradient(135deg,#ffffff,#f8fffe) !important;
  border:1px solid rgba(18,191,196,.18) !important;
  box-shadow:0 8px 22px rgba(18,63,94,.05) !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease !important;
}

body.logged-in-page .side-links a::before,
.app-shell .side-links a::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  box-shadow:0 0 0 4px rgba(18,191,196,.10) !important;
  flex:0 0 auto;
}

body.logged-in-page .side-links a:hover,
.app-shell .side-links a:hover{
  transform:translateX(4px) !important;
  border-color:rgba(31,111,234,.40) !important;
  box-shadow:0 14px 32px rgba(31,111,234,.13) !important;
  background:linear-gradient(135deg,#ffffff,#effbff) !important;
}

body.logged-in-page .side-links a.active,
.app-shell .side-links a.active{
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA 58%,#7C3AED) !important;
  border-color:rgba(255,255,255,.28) !important;
  box-shadow:0 16px 38px rgba(31,111,234,.22) !important;
}

body.logged-in-page .side-links a.active::before,
.app-shell .side-links a.active::before{
  background:#fff !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.20) !important;
}

@media(max-width:900px){
  body.logged-in-page .sidebar .logo,
  .app-shell .sidebar .logo{
    padding-top:4px !important;
  }
  body.logged-in-page .side-links,
  .app-shell .side-links{
    margin:10px !important;
    padding:10px !important;
  }
}

/* v74 clients action buttons and intake dedupe polish */
.client-action-toolbar-v74{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:center !important;
  margin-top:10px !important;
}
.client-action-pill{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:36px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  border:1px solid rgba(18,191,196,.24) !important;
  background:linear-gradient(135deg,#ffffff,#f7fffe) !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  text-decoration:none !important;
  box-shadow:0 8px 22px rgba(18,63,94,.07) !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  cursor:pointer !important;
}
.client-action-pill:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(31,111,234,.42) !important;
  box-shadow:0 14px 32px rgba(31,111,234,.14) !important;
}
.client-action-icon{
  width:26px !important;
  height:26px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 auto !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  box-shadow:0 6px 14px rgba(31,111,234,.22) !important;
}
.client-action-icon svg{
  width:15px !important;
  height:15px !important;
  fill:currentColor !important;
}
.client-action-label{
  white-space:nowrap !important;
}
.client-action-profile .client-action-icon{
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
}
.client-action-password .client-action-icon{
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
}
.client-action-email .client-action-icon,
.client-action-intake .client-action-icon{
  background:linear-gradient(135deg,#F59E0B,#EF4444) !important;
}
.client-action-edit .client-action-icon{
  background:linear-gradient(135deg,#10B981,#12BFC4) !important;
}
.intake-countdown-card + .intake-countdown-card{
  display:none !important;
}
[data-intake-countdown-client] + [data-intake-countdown-client]{
  display:none !important;
}

/* v75 top login bar image and text 30% bigger */
#globalLoginStatusBar,
.login-status-bar,
.login-status{
  font-size:130% !important;
  line-height:1.25 !important;
}

#globalLoginStatusBar *,
.login-status-bar *,
.login-status *{
  font-size:inherit !important;
}

#globalLoginStatusBar .login-avatar,
#globalLoginStatusBar .login-avatar-wrap .login-avatar,
.login-status-bar .login-avatar,
.login-status-bar .login-avatar-wrap .login-avatar,
.login-status .login-avatar,
.login-status .login-avatar-wrap .login-avatar{
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  min-height:36px !important;
  font-size:16px !important;
}

#globalLoginStatusBar .login-avatar-wrap,
.login-status-bar .login-avatar-wrap,
.login-status .login-avatar-wrap{
  margin-right:10px !important;
}

#globalLoginStatusBar button,
#globalLoginStatusBar a,
.login-status-bar button,
.login-status-bar a,
.login-status button,
.login-status a{
  padding:10px 15px !important;
  min-height:38px !important;
  border-radius:999px !important;
}

#globalLoginStatusBar .top-nav-dropdown,
.login-status-bar .top-nav-dropdown,
.login-status .top-nav-dropdown{
  font-size:14px !important;
}

/* v76 login page header/title sizing: more compact */
body.login-page .hero,
body.login-page .auth-hero,
body.login-page .page-hero,
body.login-page .login-hero,
body.login-page .signup-hero,
body.login-page .card.hero,
body.login-page .main > section:first-child,
body.signup-page .hero,
body.signup-page .auth-hero,
body.signup-page .page-hero,
body.signup-page .login-hero,
body.signup-page .signup-hero,
body.signup-page .card.hero,
body.signup-page .main > section:first-child,
body.booking-page #existingClientPortal .hero,
body.booking-page #existingClientPortal .auth-hero,
body.booking-page #existingClientPortal .page-hero{
  padding-top:18px !important;
  padding-bottom:18px !important;
  margin-top:10px !important;
  margin-bottom:14px !important;
}

body.login-page h1,
body.login-page .hero h1,
body.login-page .auth-hero h1,
body.login-page .page-hero h1,
body.login-page .login-hero h1,
body.signup-page h1,
body.signup-page .hero h1,
body.signup-page .auth-hero h1,
body.signup-page .page-hero h1,
body.signup-page .signup-hero h1,
body.booking-page #existingClientPortal h1,
body.booking-page #existingClientPortal h2{
  font-size:clamp(26px, 3.2vw, 42px) !important;
  line-height:1.05 !important;
  margin:6px 0 8px !important;
  letter-spacing:-.03em !important;
}

body.login-page .lead,
body.login-page .hero p,
body.login-page .auth-hero p,
body.login-page .page-hero p,
body.login-page .login-hero p,
body.signup-page .lead,
body.signup-page .hero p,
body.signup-page .auth-hero p,
body.signup-page .page-hero p,
body.signup-page .signup-hero p,
body.booking-page #existingClientPortal .lead,
body.booking-page #existingClientPortal p{
  font-size:15px !important;
  line-height:1.45 !important;
  margin:6px 0 0 !important;
  max-width:760px !important;
}

body.login-page .badge,
body.signup-page .badge,
body.booking-page #existingClientPortal .badge{
  font-size:11px !important;
  padding:6px 10px !important;
}

/* Catch login-style pages even if body class was not added */
body:has(form[action*="login"]) .hero h1,
body:has(input[type="password"]) .hero h1{
  font-size:clamp(26px, 3.2vw, 42px) !important;
  line-height:1.05 !important;
  margin:6px 0 8px !important;
}
body:has(form[action*="login"]) .hero p,
body:has(input[type="password"]) .hero p{
  font-size:15px !important;
  line-height:1.45 !important;
}
@media(max-width:700px){
  body.login-page h1,
  body.signup-page h1,
  body.booking-page #existingClientPortal h1,
  body.booking-page #existingClientPortal h2{
    font-size:28px !important;
  }
  body.login-page .lead,
  body.signup-page .lead,
  body.booking-page #existingClientPortal .lead,
  body.booking-page #existingClientPortal p{
    font-size:14px !important;
  }
}

/* v77 top login bar 20% smaller than v75 and logged-in headers 25% smaller */
#globalLoginStatusBar,
.login-status-bar,
.login-status{
  font-size:104% !important;
  line-height:1.22 !important;
}
#globalLoginStatusBar *,
.login-status-bar *,
.login-status *{
  font-size:inherit !important;
}
#globalLoginStatusBar .login-avatar,
#globalLoginStatusBar .login-avatar-wrap .login-avatar,
.login-status-bar .login-avatar,
.login-status-bar .login-avatar-wrap .login-avatar,
.login-status .login-avatar,
.login-status .login-avatar-wrap .login-avatar{
  width:29px !important;
  height:29px !important;
  min-width:29px !important;
  min-height:29px !important;
  font-size:14px !important;
}
#globalLoginStatusBar .login-avatar-wrap,
.login-status-bar .login-avatar-wrap,
.login-status .login-avatar-wrap{
  margin-right:8px !important;
}
#globalLoginStatusBar button,
#globalLoginStatusBar a,
.login-status-bar button,
.login-status-bar a,
.login-status button,
.login-status a{
  padding:8px 12px !important;
  min-height:32px !important;
  border-radius:999px !important;
}
#globalLoginStatusBar .top-nav-dropdown,
.login-status-bar .top-nav-dropdown,
.login-status .top-nav-dropdown{
  font-size:13px !important;
}

/* Logged-in page title/description headers 25% smaller and more compact */
body.logged-in-page .main > .hero h1,
body.logged-in-page .main > .page-hero h1,
body.logged-in-page .main > .dashboard-hero h1,
body.logged-in-page .main > .reports-hero h1,
body.logged-in-page .main > section:first-child h1,
body.logged-in-page .main h1:first-child{
  font-size:clamp(24px, 3vw, 42px) !important;
  line-height:1.06 !important;
  margin-top:4px !important;
  margin-bottom:8px !important;
  letter-spacing:-.03em !important;
}
body.logged-in-page .main > .hero .lead,
body.logged-in-page .main > .page-hero .lead,
body.logged-in-page .main > .dashboard-hero .lead,
body.logged-in-page .main > .reports-hero .lead,
body.logged-in-page .main > section:first-child .lead,
body.logged-in-page .main > .hero p,
body.logged-in-page .main > .page-hero p,
body.logged-in-page .main > .dashboard-hero p,
body.logged-in-page .main > .reports-hero p,
body.logged-in-page .main > section:first-child > p{
  font-size:15px !important;
  line-height:1.45 !important;
  margin-top:4px !important;
  max-width:820px !important;
}
body.logged-in-page .main > .hero,
body.logged-in-page .main > .page-hero,
body.logged-in-page .main > .dashboard-hero,
body.logged-in-page .main > .reports-hero,
body.logged-in-page .main > section:first-child{
  padding-top:18px !important;
  padding-bottom:18px !important;
  margin-bottom:16px !important;
}
@media(max-width:700px){
  body.logged-in-page .main > .hero h1,
  body.logged-in-page .main > .page-hero h1,
  body.logged-in-page .main > .dashboard-hero h1,
  body.logged-in-page .main > .reports-hero h1,
  body.logged-in-page .main > section:first-child h1,
  body.logged-in-page .main h1:first-child{
    font-size:26px !important;
  }
  body.logged-in-page .main > .hero .lead,
  body.logged-in-page .main > .page-hero .lead,
  body.logged-in-page .main > .dashboard-hero .lead,
  body.logged-in-page .main > .reports-hero .lead,
  body.logged-in-page .main > section:first-child .lead,
  body.logged-in-page .main > section:first-child > p{
    font-size:14px !important;
  }
}

/* v78 Spa-modern logged-in sidebar navigation */
body.logged-in-page .app-shell .sidebar,
.app-shell .sidebar{
  background:
    radial-gradient(circle at 24% 2%, rgba(18,191,196,.24), transparent 30%),
    radial-gradient(circle at 86% 38%, rgba(124,58,237,.10), transparent 34%),
    linear-gradient(180deg,#fffdf9 0%,#f6fffd 46%,#eef7ff 100%) !important;
  border-right:1px solid rgba(18,191,196,.24) !important;
  box-shadow:14px 0 44px rgba(18,63,94,.08) !important;
}

body.logged-in-page .sidebar .logo,
.app-shell .sidebar .logo{
  background:
    linear-gradient(135deg,rgba(255,255,255,.92),rgba(240,255,253,.86)),
    radial-gradient(circle at 50% 0%, rgba(18,191,196,.18), transparent 50%) !important;
  border-bottom:1px solid rgba(18,191,196,.20) !important;
  border-radius:0 0 30px 30px !important;
  box-shadow:0 14px 32px rgba(18,63,94,.07) !important;
}

body.logged-in-page .side-links,
.app-shell .side-links{
  position:relative !important;
  margin:14px 10px 18px !important;
  padding:16px 12px 18px !important;
  gap:10px !important;
  border-radius:30px !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.68)),
    radial-gradient(circle at 16% 6%, rgba(18,191,196,.16), transparent 34%) !important;
  border:1px solid rgba(18,191,196,.22) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 18px 46px rgba(18,63,94,.09) !important;
  backdrop-filter:blur(14px) !important;
}

body.logged-in-page .side-links::before,
.app-shell .side-links::before{
  content:"Spa Workspace";
  display:block;
  margin:0 8px 8px !important;
  color:#64748b !important;
  font-size:11px !important;
  font-weight:950 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

body.logged-in-page .side-links a,
.app-shell .side-links a{
  position:relative !important;
  min-height:46px !important;
  padding:12px 13px 12px 15px !important;
  border-radius:20px !important;
  color:#123047 !important;
  font-size:14px !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(246,255,253,.92)) !important;
  border:1px solid rgba(18,191,196,.20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 9px 24px rgba(18,63,94,.06) !important;
  overflow:hidden !important;
}

body.logged-in-page .side-links a::before,
.app-shell .side-links a::before{
  content:"" !important;
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:14px !important;
  background:
    linear-gradient(135deg,rgba(18,191,196,.18),rgba(31,111,234,.14)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.80) !important;
}

body.logged-in-page .side-links a::after,
.app-shell .side-links a::after{
  position:absolute !important;
  left:22px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  color:#1F6FEA !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
  z-index:2 !important;
}

/* Spa-aligned mini icons based on destination/text */
body.logged-in-page .side-links a[href*="dashboard"]::after,
.app-shell .side-links a[href*="dashboard"]::after{ content:"✦" !important; }
body.logged-in-page .side-links a[href*="reports"]::after,
.app-shell .side-links a[href*="reports"]::after{ content:"▧" !important; }
body.logged-in-page .side-links a[href*="calendar"]::after,
.app-shell .side-links a[href*="calendar"]::after{ content:"◷" !important; }
body.logged-in-page .side-links a[href*="clients"]::after,
body.logged-in-page .side-links a[href*="client-profile"]::after,
.app-shell .side-links a[href*="clients"]::after,
.app-shell .side-links a[href*="client-profile"]::after{ content:"☘" !important; }
body.logged-in-page .side-links a[href*="soap"]::after,
.app-shell .side-links a[href*="soap"]::after{ content:"✍" !important; }
body.logged-in-page .side-links a[href*="settings"]::after,
.app-shell .side-links a[href*="settings"]::after{ content:"⚙" !important; }
body.logged-in-page .side-links a[href*="booking"]::after,
.app-shell .side-links a[href*="booking"]::after{ content:"♡" !important; }
body.logged-in-page .side-links a[href*="index"]::after,
.app-shell .side-links a[href*="index"]::after{ content:"⌂" !important; }

body.logged-in-page .side-links a:hover,
.app-shell .side-links a:hover{
  transform:translateX(5px) scale(1.01) !important;
  color:#0f2940 !important;
  border-color:rgba(31,111,234,.38) !important;
  background:
    linear-gradient(135deg,#ffffff,#effcff) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 16px 36px rgba(31,111,234,.13) !important;
}

body.logged-in-page .side-links a:hover::before,
.app-shell .side-links a:hover::before{
  background:linear-gradient(135deg,rgba(18,191,196,.24),rgba(124,58,237,.16)) !important;
}

body.logged-in-page .side-links a.active,
.app-shell .side-links a.active{
  color:#fff !important;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.24), transparent 26%),
    linear-gradient(135deg,#12BFC4 0%,#1F6FEA 58%,#7C3AED 100%) !important;
  border-color:rgba(255,255,255,.36) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 18px 42px rgba(31,111,234,.24) !important;
}

body.logged-in-page .side-links a.active::before,
.app-shell .side-links a.active::before{
  background:rgba(255,255,255,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34) !important;
}

body.logged-in-page .side-links a.active::after,
.app-shell .side-links a.active::after{
  color:#fff !important;
}

body.logged-in-page .side-links a[href*="booking"],
.app-shell .side-links a[href*="booking"]{
  margin-top:6px !important;
  border-color:rgba(18,191,196,.30) !important;
}

body.logged-in-page .side-links a[href*="booking"]::before,
.app-shell .side-links a[href*="booking"]::before{
  background:linear-gradient(135deg,rgba(244,114,182,.18),rgba(18,191,196,.18)) !important;
}

body.logged-in-page .side-links a[href*="booking"]::after,
.app-shell .side-links a[href*="booking"]::after{
  color:#db2777 !important;
}

body.logged-in-page .side-links a[href*="index"],
.app-shell .side-links a[href*="index"]{
  color:#475569 !important;
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(248,250,252,.78)) !important;
}

body.logged-in-page .side-links a[href*="index"]::after,
.app-shell .side-links a[href*="index"]::after{
  color:#64748b !important;
}

@media(max-width:900px){
  body.logged-in-page .side-links::before,
  .app-shell .side-links::before{
    margin-bottom:6px !important;
  }
  body.logged-in-page .side-links a,
  .app-shell .side-links a{
    min-height:42px !important;
    font-size:13px !important;
  }
}

/* v79 logged-in sidebar/logo/header final cleanup */

/* Remove the extra logo box/cutoff panel below the left logo */
body.logged-in-page .sidebar .logo,
.app-shell .sidebar .logo{
  background:transparent !important;
  border:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:4px 10px 8px !important;
  margin:0 !important;
  overflow:visible !important;
}
body.logged-in-page .sidebar .logo::before,
body.logged-in-page .sidebar .logo::after,
.app-shell .sidebar .logo::before,
.app-shell .sidebar .logo::after{
  display:none !important;
  content:none !important;
}
body.logged-in-page .side-links,
.app-shell .side-links{
  margin-top:6px !important;
}
body.logged-in-page .side-links::before,
.app-shell .side-links::before{
  display:none !important;
  content:none !important;
}

/* Keep user avatar visible when a real image exists */
#globalLoginStatusBar .sf-v79-avatar img.login-avatar,
.login-status-bar .sf-v79-avatar img.login-avatar,
.login-status .sf-v79-avatar img.login-avatar{
  display:block !important;
  object-fit:cover !important;
  background:#fff !important;
}

/* Make logged-in page header titles/descriptions much smaller, including calendar.html */
body.logged-in-page .main h1,
body.logged-in-page .main .hero h1,
body.logged-in-page .main .page-hero h1,
body.logged-in-page .main .dashboard-hero h1,
body.logged-in-page .main .reports-hero h1,
body.logged-in-page .main section:first-child h1,
body.logged-in-page .main > h1:first-child{
  font-size:clamp(20px, 2vw, 30px) !important;
  line-height:1.08 !important;
  margin:2px 0 6px !important;
  letter-spacing:-.02em !important;
}

body.logged-in-page .main .lead,
body.logged-in-page .main .hero .lead,
body.logged-in-page .main .page-hero .lead,
body.logged-in-page .main .dashboard-hero .lead,
body.logged-in-page .main .reports-hero .lead,
body.logged-in-page .main section:first-child .lead,
body.logged-in-page .main .hero p,
body.logged-in-page .main .page-hero p,
body.logged-in-page .main .dashboard-hero p,
body.logged-in-page .main .reports-hero p,
body.logged-in-page .main section:first-child > p{
  font-size:13px !important;
  line-height:1.34 !important;
  margin:2px 0 0 !important;
  max-width:720px !important;
}

body.logged-in-page .main .hero,
body.logged-in-page .main .page-hero,
body.logged-in-page .main .dashboard-hero,
body.logged-in-page .main .reports-hero,
body.logged-in-page .main section:first-child{
  padding-top:10px !important;
  padding-bottom:10px !important;
  margin-top:6px !important;
  margin-bottom:10px !important;
}

/* Extra compact treatment for simple title blocks like Calendar */
body.logged-in-page .main > h1:first-child + p,
body.logged-in-page .main > .lead:first-of-type{
  font-size:13px !important;
  line-height:1.34 !important;
  margin-top:2px !important;
}

@media(max-width:700px){
  body.logged-in-page .main h1,
  body.logged-in-page .main .hero h1,
  body.logged-in-page .main .page-hero h1,
  body.logged-in-page .main section:first-child h1{
    font-size:22px !important;
  }
  body.logged-in-page .main .lead,
  body.logged-in-page .main .hero p,
  body.logged-in-page .main .page-hero p,
  body.logged-in-page .main section:first-child > p{
    font-size:12px !important;
  }
}

/* v80 header alignment and top-login avatar fix */

/* Header/title blocks: a little bigger than v79 but still compact, aligned inside content margin */
body.logged-in-page .main h1,
body.logged-in-page .main .hero h1,
body.logged-in-page .main .page-hero h1,
body.logged-in-page .main .dashboard-hero h1,
body.logged-in-page .main .reports-hero h1,
body.logged-in-page .main section:first-child h1,
body.logged-in-page .main > h1:first-child{
  font-size:clamp(24px, 2.45vw, 36px) !important;
  line-height:1.12 !important;
  margin:4px 0 7px !important;
  letter-spacing:-.025em !important;
  max-width:100% !important;
}

body.logged-in-page .main .lead,
body.logged-in-page .main .hero .lead,
body.logged-in-page .main .page-hero .lead,
body.logged-in-page .main .dashboard-hero .lead,
body.logged-in-page .main .reports-hero .lead,
body.logged-in-page .main section:first-child .lead,
body.logged-in-page .main .hero p,
body.logged-in-page .main .page-hero p,
body.logged-in-page .main .dashboard-hero p,
body.logged-in-page .main .reports-hero p,
body.logged-in-page .main section:first-child > p,
body.logged-in-page .main > h1:first-child + p{
  font-size:14.5px !important;
  line-height:1.42 !important;
  margin:2px 0 0 !important;
  max-width:min(920px, 100%) !important;
}

body.logged-in-page .main .hero,
body.logged-in-page .main .page-hero,
body.logged-in-page .main .dashboard-hero,
body.logged-in-page .main .reports-hero,
body.logged-in-page .main section:first-child{
  width:100% !important;
  box-sizing:border-box !important;
  padding:14px 18px !important;
  margin:8px 0 14px !important;
}

/* Simple pages like calendar.html often use bare h1 + paragraph; align them with the same content margin */
body.logged-in-page .main > h1:first-child,
body.logged-in-page .main > h1:first-child + p{
  margin-left:0 !important;
  padding-left:0 !important;
  box-sizing:border-box !important;
}

/* Top login bar image must render as actual user photo when available */
#globalLoginStatusBar .sf-v80-avatar,
.login-status-bar .sf-v80-avatar,
.login-status .sf-v80-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-right:8px !important;
  vertical-align:middle !important;
}
#globalLoginStatusBar .sf-v80-avatar img.login-avatar,
.login-status-bar .sf-v80-avatar img.login-avatar,
.login-status .sf-v80-avatar img.login-avatar{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  object-fit:cover !important;
  object-position:center !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.34) !important;
}
#globalLoginStatusBar .sf-v80-avatar .login-avatar-fallback,
.login-status-bar .sf-v80-avatar .login-avatar-fallback,
.login-status .sf-v80-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  color:#fff !important;
  font-weight:950 !important;
}

@media(max-width:700px){
  body.logged-in-page .main h1,
  body.logged-in-page .main .hero h1,
  body.logged-in-page .main .page-hero h1,
  body.logged-in-page .main section:first-child h1{
    font-size:24px !important;
  }
  body.logged-in-page .main .lead,
  body.logged-in-page .main .hero p,
  body.logged-in-page .main .page-hero p,
  body.logged-in-page .main section:first-child > p,
  body.logged-in-page .main > h1:first-child + p{
    font-size:13.5px !important;
  }
  body.logged-in-page .main .hero,
  body.logged-in-page .main .page-hero,
  body.logged-in-page .main section:first-child{
    padding:12px 14px !important;
  }
}

/* v81 fixed responsive logged-in sidebar */
body.logged-in-page .app-shell,
.app-shell{
  align-items:stretch !important;
}

/* Desktop/tablet: logo + vertical links stay fixed while page content scrolls */
@media(min-width:901px){
  body.logged-in-page .sidebar,
  .app-shell .sidebar{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    bottom:0 !important;
    height:100vh !important;
    max-height:100vh !important;
    width:clamp(210px, 18vw, 285px) !important;
    z-index:900 !important;
    overflow:hidden !important;
    display:flex !important;
    flex-direction:column !important;
  }

  body.logged-in-page .sidebar .logo,
  .app-shell .sidebar .logo{
    flex:0 0 auto !important;
    width:100% !important;
  }

  body.logged-in-page .side-links,
  .app-shell .side-links{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain !important;
    scrollbar-width:thin !important;
    padding-bottom:18px !important;
  }

  body.logged-in-page .side-links::-webkit-scrollbar,
  .app-shell .side-links::-webkit-scrollbar{
    width:6px !important;
  }
  body.logged-in-page .side-links::-webkit-scrollbar-thumb,
  .app-shell .side-links::-webkit-scrollbar-thumb{
    background:rgba(18,191,196,.35) !important;
    border-radius:999px !important;
  }

  body.logged-in-page .main,
  .app-shell .main{
    margin-left:clamp(210px, 18vw, 285px) !important;
    width:calc(100% - clamp(210px, 18vw, 285px)) !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
}

/* Medium height screens: compress logo/link spacing so nav still fits */
@media(min-width:901px) and (max-height:760px){
  body.logged-in-page .sidebar .logo,
  .app-shell .sidebar .logo{
    padding:2px 8px 4px !important;
  }

  body.logged-in-page .sidebar .logo img,
  body.logged-in-page .sidebar .logo-image-wide,
  body.logged-in-page .sidebar .logo-image,
  .app-shell .sidebar .logo img,
  .app-shell .sidebar .logo-image-wide,
  .app-shell .sidebar .logo-image{
    max-width:230px !important;
    width:118% !important;
  }

  body.logged-in-page .side-links,
  .app-shell .side-links{
    gap:7px !important;
    padding:10px !important;
    margin:6px 8px 10px !important;
  }

  body.logged-in-page .side-links a,
  .app-shell .side-links a{
    min-height:38px !important;
    padding:9px 10px 9px 12px !important;
    font-size:12.5px !important;
  }

  body.logged-in-page .side-links a::before,
  .app-shell .side-links a::before{
    width:25px !important;
    height:25px !important;
    min-width:25px !important;
  }

  body.logged-in-page .side-links a::after,
  .app-shell .side-links a::after{
    left:19px !important;
    font-size:13px !important;
  }
}

/* Very short screens: keep sidebar fixed and allow only its links to scroll */
@media(min-width:901px) and (max-height:620px){
  body.logged-in-page .sidebar .logo img,
  body.logged-in-page .sidebar .logo-image-wide,
  body.logged-in-page .sidebar .logo-image,
  .app-shell .sidebar .logo img,
  .app-shell .sidebar .logo-image-wide,
  .app-shell .sidebar .logo-image{
    max-width:195px !important;
    width:105% !important;
  }

  body.logged-in-page .side-links a,
  .app-shell .side-links a{
    min-height:34px !important;
    padding-top:7px !important;
    padding-bottom:7px !important;
  }
}

/* Mobile: sidebar becomes normal/responsive so it does not cover content */
@media(max-width:900px){
  body.logged-in-page .sidebar,
  .app-shell .sidebar{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    bottom:auto !important;
    height:auto !important;
    max-height:none !important;
    width:100% !important;
    overflow:visible !important;
  }

  body.logged-in-page .main,
  .app-shell .main{
    margin-left:0 !important;
    width:100% !important;
  }

  body.logged-in-page .side-links,
  .app-shell .side-links{
    overflow:visible !important;
  }
}

/* v82 force real top-login user photo to display when available */
#globalLoginStatusBar .sf-v82-avatar,
.login-status-bar .sf-v82-avatar,
.login-status .sf-v82-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-right:8px !important;
  vertical-align:middle !important;
  flex:0 0 auto !important;
}
#globalLoginStatusBar .sf-v82-avatar .login-avatar,
.login-status-bar .sf-v82-avatar .login-avatar,
.login-status .sf-v82-avatar .login-avatar{
  width:29px !important;
  height:29px !important;
  min-width:29px !important;
  min-height:29px !important;
  max-width:29px !important;
  max-height:29px !important;
  border-radius:999px !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  object-fit:cover !important;
  object-position:center center !important;
  overflow:hidden !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.42) !important;
  box-shadow:0 4px 12px rgba(18,63,94,.16) !important;
}
#globalLoginStatusBar .sf-v82-avatar .login-avatar-fallback,
.login-status-bar .sf-v82-avatar .login-avatar-fallback,
.login-status .sf-v82-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:14px !important;
  font-weight:950 !important;
}

/* v83 logged-in page header alignment/indent fix */

/* Give the main content a consistent inner gutter so simple title blocks like Calendar
   do not sit too far left against the fixed sidebar/content edge. */
@media(min-width:901px){
  body.logged-in-page .main,
  .app-shell .main{
    padding-left:clamp(34px, 3.2vw, 58px) !important;
    padding-right:clamp(24px, 2.8vw, 44px) !important;
    box-sizing:border-box !important;
  }
}

/* Indent and align bare headers/descriptions on logged-in pages. */
body.logged-in-page .main > h1:first-child,
body.logged-in-page .main > h1:first-child + p,
body.logged-in-page .main > .lead:first-of-type{
  margin-left:clamp(18px, 1.6vw, 34px) !important;
  margin-right:clamp(18px, 1.6vw, 34px) !important;
  padding-left:0 !important;
  max-width:calc(100% - clamp(36px, 3.2vw, 68px)) !important;
  box-sizing:border-box !important;
}

/* Indent card/hero style headers as a complete block so title and description line up. */
body.logged-in-page .main > .hero,
body.logged-in-page .main > .page-hero,
body.logged-in-page .main > .dashboard-hero,
body.logged-in-page .main > .reports-hero,
body.logged-in-page .main > section:first-child{
  margin-left:clamp(18px, 1.6vw, 34px) !important;
  margin-right:clamp(18px, 1.6vw, 34px) !important;
  width:auto !important;
  max-width:calc(100% - clamp(36px, 3.2vw, 68px)) !important;
  box-sizing:border-box !important;
}

/* If a page has the title and description inside the first section, line the text up
   inside that section instead of hugging the edge. */
body.logged-in-page .main > section:first-child h1,
body.logged-in-page .main > section:first-child .lead,
body.logged-in-page .main > section:first-child > p,
body.logged-in-page .main > .hero h1,
body.logged-in-page .main > .hero .lead,
body.logged-in-page .main > .hero p,
body.logged-in-page .main > .page-hero h1,
body.logged-in-page .main > .page-hero .lead,
body.logged-in-page .main > .page-hero p,
body.logged-in-page .main > .dashboard-hero h1,
body.logged-in-page .main > .dashboard-hero .lead,
body.logged-in-page .main > .dashboard-hero p{
  text-align:left !important;
}

/* Calendar and similar pages: keep title/description compact but properly inset. */
body.logged-in-page .main > h1:first-child{
  font-size:clamp(24px, 2.45vw, 36px) !important;
  line-height:1.12 !important;
  margin-top:12px !important;
  margin-bottom:7px !important;
}
body.logged-in-page .main > h1:first-child + p{
  font-size:14.5px !important;
  line-height:1.42 !important;
  margin-top:0 !important;
  margin-bottom:16px !important;
}

/* Mobile should keep normal full-width alignment. */
@media(max-width:900px){
  body.logged-in-page .main,
  .app-shell .main{
    padding-left:16px !important;
    padding-right:16px !important;
  }

  body.logged-in-page .main > h1:first-child,
  body.logged-in-page .main > h1:first-child + p,
  body.logged-in-page .main > .lead:first-of-type,
  body.logged-in-page .main > .hero,
  body.logged-in-page .main > .page-hero,
  body.logged-in-page .main > .dashboard-hero,
  body.logged-in-page .main > .reports-hero,
  body.logged-in-page .main > section:first-child{
    margin-left:0 !important;
    margin-right:0 !important;
    max-width:100% !important;
  }
}

/* v84 top-login role/profile edit link */
#globalLoginStatusBar .sf-v84-role-badge,
.login-status-bar .sf-v84-role-badge,
.login-status .sf-v84-role-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:6px 10px !important;
  margin:0 8px !important;
  border-radius:999px !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  box-shadow:0 6px 16px rgba(31,111,234,.18) !important;
  white-space:nowrap !important;
}
#globalLoginStatusBar .sf-v84-edit-profile-link,
.login-status-bar .sf-v84-edit-profile-link,
.login-status .sf-v84-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 11px !important;
  min-height:30px !important;
  margin:0 8px 0 0 !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#f4fffd) !important;
  border:1px solid rgba(18,191,196,.28) !important;
  box-shadow:0 7px 18px rgba(18,63,94,.08) !important;
  white-space:nowrap !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
#globalLoginStatusBar .sf-v84-edit-profile-link:hover,
.login-status-bar .sf-v84-edit-profile-link:hover,
.login-status .sf-v84-edit-profile-link:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(31,111,234,.44) !important;
  box-shadow:0 12px 24px rgba(31,111,234,.14) !important;
}
#globalLoginStatusBar .sf-v84-edit-profile-icon,
.login-status-bar .sf-v84-edit-profile-icon,
.login-status .sf-v84-edit-profile-icon{
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
  box-shadow:0 5px 12px rgba(124,58,237,.20) !important;
}
#globalLoginStatusBar .sf-v84-edit-profile-icon svg,
.login-status-bar .sf-v84-edit-profile-icon svg,
.login-status .sf-v84-edit-profile-icon svg{
  width:14px !important;
  height:14px !important;
  fill:currentColor !important;
}
@media(max-width:700px){
  #globalLoginStatusBar .sf-v84-edit-profile-text,
  .login-status-bar .sf-v84-edit-profile-text,
  .login-status .sf-v84-edit-profile-text{
    display:none !important;
  }
  #globalLoginStatusBar .sf-v84-role-badge,
  .login-status-bar .sf-v84-role-badge,
  .login-status .sf-v84-role-badge{
    font-size:11px !important;
    padding:6px 8px !important;
    margin:0 5px !important;
  }
}

/* v85 top dropdown menu scroll fix */
#globalLoginStatusBar .top-nav-dropdown,
.login-status-bar .top-nav-dropdown,
.login-status .top-nav-dropdown,
.top-nav-dropdown{
  max-height:calc(100vh - 82px) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  scrollbar-width:thin !important;
  z-index:99999 !important;
  box-sizing:border-box !important;
  padding-bottom:16px !important;
}

#globalLoginStatusBar .top-nav-dropdown::-webkit-scrollbar,
.login-status-bar .top-nav-dropdown::-webkit-scrollbar,
.login-status .top-nav-dropdown::-webkit-scrollbar,
.top-nav-dropdown::-webkit-scrollbar{
  width:8px !important;
}

#globalLoginStatusBar .top-nav-dropdown::-webkit-scrollbar-thumb,
.login-status-bar .top-nav-dropdown::-webkit-scrollbar-thumb,
.login-status .top-nav-dropdown::-webkit-scrollbar-thumb,
.top-nav-dropdown::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#12BFC4,#1F6FEA) !important;
  border-radius:999px !important;
}

#globalLoginStatusBar .top-nav-dropdown::-webkit-scrollbar-track,
.login-status-bar .top-nav-dropdown::-webkit-scrollbar-track,
.login-status .top-nav-dropdown::-webkit-scrollbar-track,
.top-nav-dropdown::-webkit-scrollbar-track{
  background:rgba(18,191,196,.10) !important;
  border-radius:999px !important;
}

/* Make sure dropdown is positioned inside the viewport on shorter screens */
#globalLoginStatusBar .top-nav-dropdown.show,
.login-status-bar .top-nav-dropdown.show,
.login-status .top-nav-dropdown.show,
.top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-dropdown[style*="display: block"],
.login-status-bar .top-nav-dropdown[style*="display: block"],
.login-status .top-nav-dropdown[style*="display: block"],
.top-nav-dropdown[style*="display: block"]{
  top:100% !important;
  bottom:auto !important;
}

/* Shorter screens need extra compact dropdown links so all sections are reachable */
@media(max-height:760px){
  #globalLoginStatusBar .top-nav-dropdown,
  .login-status-bar .top-nav-dropdown,
  .login-status .top-nav-dropdown,
  .top-nav-dropdown{
    max-height:calc(100vh - 66px) !important;
    padding-top:8px !important;
    padding-bottom:12px !important;
  }

  #globalLoginStatusBar .top-nav-dropdown a,
  #globalLoginStatusBar .top-nav-dropdown button,
  .login-status-bar .top-nav-dropdown a,
  .login-status-bar .top-nav-dropdown button,
  .login-status .top-nav-dropdown a,
  .login-status .top-nav-dropdown button,
  .top-nav-dropdown a,
  .top-nav-dropdown button{
    min-height:32px !important;
    padding-top:8px !important;
    padding-bottom:8px !important;
  }

  #globalLoginStatusBar .top-nav-dropdown .nav-section-label,
  .login-status-bar .top-nav-dropdown .nav-section-label,
  .login-status .top-nav-dropdown .nav-section-label,
  .top-nav-dropdown .nav-section-label{
    margin-top:8px !important;
    margin-bottom:4px !important;
    padding-top:4px !important;
  }
}

@media(max-height:560px){
  #globalLoginStatusBar .top-nav-dropdown,
  .login-status-bar .top-nav-dropdown,
  .login-status .top-nav-dropdown,
  .top-nav-dropdown{
    max-height:calc(100vh - 48px) !important;
  }
}

/* v86 repair logged-in page display + top bar profile status */

/* Fix logged-in page shell after prior broad sidebar rules */
@media(min-width:901px){
  body.logged-in-page .app-shell{
    display:grid !important;
    grid-template-columns:clamp(210px, 18vw, 285px) minmax(0,1fr) !important;
    align-items:stretch !important;
  }
  body.logged-in-page .app-shell .sidebar{
    position:sticky !important;
    top:0 !important;
    left:auto !important;
    bottom:auto !important;
    height:100vh !important;
    max-height:100vh !important;
    width:auto !important;
    z-index:80 !important;
    overflow:hidden !important;
    display:flex !important;
    flex-direction:column !important;
  }
  body.logged-in-page .app-shell .main{
    grid-column:2 !important;
    margin-left:0 !important;
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
}

/* Never show the old unclickable role pill/button */
#globalLoginStatusBar .sf-v84-role-badge,
.login-status-bar .sf-v84-role-badge,
.login-status .sf-v84-role-badge{
  display:none !important;
}

/* Clean rebuilt login status */
#globalLoginStatusBar .sf-v86-status-wrap,
.login-status-bar .sf-v86-status-wrap,
.login-status .sf-v86-status-wrap{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  margin-right:10px !important;
  white-space:nowrap !important;
  vertical-align:middle !important;
}

#globalLoginStatusBar .sf-v86-avatar,
.login-status-bar .sf-v86-avatar,
.login-status .sf-v86-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  margin-right:0 !important;
}

#globalLoginStatusBar .sf-v86-avatar .login-avatar,
.login-status-bar .sf-v86-avatar .login-avatar,
.login-status .sf-v86-avatar .login-avatar{
  width:31px !important;
  height:31px !important;
  min-width:31px !important;
  min-height:31px !important;
  max-width:31px !important;
  max-height:31px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.42) !important;
  box-shadow:0 5px 14px rgba(18,63,94,.16) !important;
}

#globalLoginStatusBar .sf-v86-avatar .login-avatar-fallback,
.login-status-bar .sf-v86-avatar .login-avatar-fallback,
.login-status .sf-v86-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:14px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v86-login-text,
.login-status-bar .sf-v86-login-text,
.login-status .sf-v86-login-text{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  color:#123047 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v86-login-text strong,
.login-status-bar .sf-v86-login-text strong,
.login-status .sf-v86-login-text strong{
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v86-role-line,
.login-status-bar .sf-v86-role-line,
.login-status .sf-v86-role-line{
  color:#1F6FEA !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v86-edit-profile-link,
.login-status-bar .sf-v86-edit-profile-link,
.login-status .sf-v86-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 11px !important;
  min-height:30px !important;
  margin-left:3px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#f4fffd) !important;
  border:1px solid rgba(18,191,196,.28) !important;
  box-shadow:0 7px 18px rgba(18,63,94,.08) !important;
}

#globalLoginStatusBar .sf-v86-edit-icon,
.login-status-bar .sf-v86-edit-icon,
.login-status .sf-v86-edit-icon{
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
  box-shadow:0 5px 12px rgba(124,58,237,.20) !important;
}
#globalLoginStatusBar .sf-v86-edit-icon svg,
.login-status-bar .sf-v86-edit-icon svg,
.login-status .sf-v86-edit-icon svg{
  width:14px !important;
  height:14px !important;
  fill:currentColor !important;
}

/* Dropdown scroll fix without breaking the page shell */
#globalLoginStatusBar .top-nav-dropdown,
.login-status-bar .top-nav-dropdown,
.login-status .top-nav-dropdown,
.top-nav-dropdown{
  max-height:min(640px, calc(100vh - 78px)) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  z-index:99999 !important;
}

@media(max-width:900px){
  body.logged-in-page .app-shell{
    display:block !important;
  }
  body.logged-in-page .app-shell .sidebar{
    position:relative !important;
    height:auto !important;
    max-height:none !important;
    width:100% !important;
  }
  #globalLoginStatusBar .sf-v86-login-text,
  .login-status-bar .sf-v86-login-text,
  .login-status .sf-v86-login-text{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:2px !important;
  }
  #globalLoginStatusBar .sf-v86-edit-profile-link span:last-child,
  .login-status-bar .sf-v86-edit-profile-link span:last-child,
  .login-status .sf-v86-edit-profile-link span:last-child{
    display:none !important;
  }
}

/* v87 one clean top login status, no duplicate role/edit buttons */
#globalLoginStatusBar .sf-v84-role-badge,
.login-status-bar .sf-v84-role-badge,
.login-status .sf-v84-role-badge,
#globalLoginStatusBar .sf-v84-edit-profile-link,
.login-status-bar .sf-v84-edit-profile-link,
.login-status .sf-v84-edit-profile-link,
#globalLoginStatusBar .sf-v86-status-wrap,
.login-status-bar .sf-v86-status-wrap,
.login-status .sf-v86-status-wrap{
  display:none !important;
}

#globalLoginStatusBar .sf-v87-status-wrap,
.login-status-bar .sf-v87-status-wrap,
.login-status .sf-v87-status-wrap{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  margin-right:10px !important;
  white-space:nowrap !important;
  vertical-align:middle !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v87-avatar,
.login-status-bar .sf-v87-avatar,
.login-status .sf-v87-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v87-avatar .login-avatar,
.login-status-bar .sf-v87-avatar .login-avatar,
.login-status .sf-v87-avatar .login-avatar{
  width:31px !important;
  height:31px !important;
  min-width:31px !important;
  min-height:31px !important;
  max-width:31px !important;
  max-height:31px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.42) !important;
  box-shadow:0 5px 14px rgba(18,63,94,.16) !important;
}

#globalLoginStatusBar .sf-v87-avatar .login-avatar-fallback,
.login-status-bar .sf-v87-avatar .login-avatar-fallback,
.login-status .sf-v87-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:14px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v87-login-text,
.login-status-bar .sf-v87-login-text,
.login-status .sf-v87-login-text{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  color:#123047 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v87-login-text strong,
.login-status-bar .sf-v87-login-text strong,
.login-status .sf-v87-login-text strong{
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v87-role-line,
.login-status-bar .sf-v87-role-line,
.login-status .sf-v87-role-line{
  color:#1F6FEA !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v87-edit-profile-link,
.login-status-bar .sf-v87-edit-profile-link,
.login-status .sf-v87-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 11px !important;
  min-height:30px !important;
  margin-left:3px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#f4fffd) !important;
  border:1px solid rgba(18,191,196,.28) !important;
  box-shadow:0 7px 18px rgba(18,63,94,.08) !important;
}

#globalLoginStatusBar .sf-v87-edit-icon,
.login-status-bar .sf-v87-edit-icon,
.login-status .sf-v87-edit-icon{
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
  box-shadow:0 5px 12px rgba(124,58,237,.20) !important;
}
#globalLoginStatusBar .sf-v87-edit-icon svg,
.login-status-bar .sf-v87-edit-icon svg,
.login-status .sf-v87-edit-icon svg{
  width:14px !important;
  height:14px !important;
  fill:currentColor !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v87-login-text,
  .login-status-bar .sf-v87-login-text,
  .login-status .sf-v87-login-text{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:2px !important;
    font-size:12px !important;
  }
  #globalLoginStatusBar .sf-v87-edit-profile-link span:last-child,
  .login-status-bar .sf-v87-edit-profile-link span:last-child,
  .login-status .sf-v87-edit-profile-link span:last-child{
    display:none !important;
  }
}

/* v88 keep existing logged-in text; add image + edit next to it only */
#globalLoginStatusBar .sf-v84-role-badge,
.login-status-bar .sf-v84-role-badge,
.login-status .sf-v84-role-badge,
#globalLoginStatusBar .sf-v84-edit-profile-link,
.login-status-bar .sf-v84-edit-profile-link,
.login-status .sf-v84-edit-profile-link,
#globalLoginStatusBar .sf-v86-status-wrap,
.login-status-bar .sf-v86-status-wrap,
.login-status .sf-v86-status-wrap,
#globalLoginStatusBar .sf-v87-status-wrap,
.login-status-bar .sf-v87-status-wrap,
.login-status .sf-v87-status-wrap{
  display:none !important;
}

#globalLoginStatusBar .sf-v88-original-status,
.login-status-bar .sf-v88-original-status,
.login-status .sf-v88-original-status{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  white-space:nowrap !important;
  color:#123047 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v88-original-status strong,
.login-status-bar .sf-v88-original-status strong,
.login-status .sf-v88-original-status strong{
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v88-role-line,
.login-status-bar .sf-v88-role-line,
.login-status .sf-v88-role-line{
  color:#1F6FEA !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v88-inline-tools,
.login-status-bar .sf-v88-inline-tools,
.login-status .sf-v88-inline-tools{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  margin-left:8px !important;
  margin-right:10px !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
}

#globalLoginStatusBar .sf-v88-avatar,
.login-status-bar .sf-v88-avatar,
.login-status .sf-v88-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v88-avatar .login-avatar,
.login-status-bar .sf-v88-avatar .login-avatar,
.login-status .sf-v88-avatar .login-avatar{
  width:31px !important;
  height:31px !important;
  min-width:31px !important;
  min-height:31px !important;
  max-width:31px !important;
  max-height:31px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.42) !important;
  box-shadow:0 5px 14px rgba(18,63,94,.16) !important;
}

#globalLoginStatusBar .sf-v88-avatar .login-avatar-fallback,
.login-status-bar .sf-v88-avatar .login-avatar-fallback,
.login-status .sf-v88-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:14px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v88-edit-profile-link,
.login-status-bar .sf-v88-edit-profile-link,
.login-status .sf-v88-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 11px !important;
  min-height:30px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#f4fffd) !important;
  border:1px solid rgba(18,191,196,.28) !important;
  box-shadow:0 7px 18px rgba(18,63,94,.08) !important;
}

#globalLoginStatusBar .sf-v88-edit-icon,
.login-status-bar .sf-v88-edit-icon,
.login-status .sf-v88-edit-icon{
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
  box-shadow:0 5px 12px rgba(124,58,237,.20) !important;
}
#globalLoginStatusBar .sf-v88-edit-icon svg,
.login-status-bar .sf-v88-edit-icon svg,
.login-status .sf-v88-edit-icon svg{
  width:14px !important;
  height:14px !important;
  fill:currentColor !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v88-original-status,
  .login-status-bar .sf-v88-original-status,
  .login-status .sf-v88-original-status{
    flex-wrap:wrap !important;
    font-size:12px !important;
  }
  #globalLoginStatusBar .sf-v88-edit-profile-link span:last-child,
  .login-status-bar .sf-v88-edit-profile-link span:last-child,
  .login-status .sf-v88-edit-profile-link span:last-child{
    display:none !important;
  }
}

/* v89 highlight Staff Login button in yellow on top login bar */
#globalLoginStatusBar a[href*="login.html"],
#globalLoginStatusBar a[href$="login.html"],
#globalLoginStatusBar a[href="./login.html"],
#globalLoginStatusBar a[href="login.html"],
.login-status-bar a[href*="login.html"],
.login-status a[href*="login.html"]{
  background:linear-gradient(135deg,#FFF7B0 0%,#FFD84D 48%,#F59E0B 100%) !important;
  color:#3b2600 !important;
  border:1px solid rgba(245,158,11,.58) !important;
  box-shadow:0 8px 20px rgba(245,158,11,.24) !important;
  font-weight:950 !important;
}

#globalLoginStatusBar a[href*="login.html"]:hover,
#globalLoginStatusBar a[href$="login.html"]:hover,
#globalLoginStatusBar a[href="./login.html"]:hover,
#globalLoginStatusBar a[href="login.html"]:hover,
.login-status-bar a[href*="login.html"]:hover,
.login-status a[href*="login.html"]:hover{
  background:linear-gradient(135deg,#FFF2A8 0%,#FACC15 48%,#EA580C 100%) !important;
  color:#2b1900 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 12px 26px rgba(245,158,11,.32) !important;
}

/* Also catch Staff Login if rendered as a button or dropdown-style link without a predictable href */
#globalLoginStatusBar a,
#globalLoginStatusBar button,
.login-status-bar a,
.login-status-bar button,
.login-status a,
.login-status button{
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease !important;
}

#globalLoginStatusBar .sf-v89-staff-login-highlight,
.login-status-bar .sf-v89-staff-login-highlight,
.login-status .sf-v89-staff-login-highlight,
.top-nav-dropdown .sf-v89-staff-login-highlight{
  background:linear-gradient(135deg,#FFF7B0 0%,#FFD84D 48%,#F59E0B 100%) !important;
  color:#3b2600 !important;
  border:1px solid rgba(245,158,11,.58) !important;
  box-shadow:0 8px 20px rgba(245,158,11,.24) !important;
  font-weight:950 !important;
}
#globalLoginStatusBar .sf-v89-staff-login-highlight:hover,
.login-status-bar .sf-v89-staff-login-highlight:hover,
.login-status .sf-v89-staff-login-highlight:hover,
.top-nav-dropdown .sf-v89-staff-login-highlight:hover{
  background:linear-gradient(135deg,#FFF2A8 0%,#FACC15 48%,#EA580C 100%) !important;
  color:#2b1900 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 12px 26px rgba(245,158,11,.32) !important;
}

/* v90 hide all earlier duplicate login-bar fragments and style one clean bar */
#globalLoginStatusBar .sf-v84-role-badge,
#globalLoginStatusBar .sf-v84-edit-profile-link,
#globalLoginStatusBar .sf-v86-status-wrap,
#globalLoginStatusBar .sf-v87-status-wrap,
#globalLoginStatusBar .sf-v88-inline-tools,
#globalLoginStatusBar .sf-v88-original-status,
.login-status-bar .sf-v84-role-badge,
.login-status-bar .sf-v84-edit-profile-link,
.login-status-bar .sf-v86-status-wrap,
.login-status-bar .sf-v87-status-wrap,
.login-status-bar .sf-v88-inline-tools,
.login-status-bar .sf-v88-original-status,
.login-status .sf-v84-role-badge,
.login-status .sf-v84-edit-profile-link,
.login-status .sf-v86-status-wrap,
.login-status .sf-v87-status-wrap,
.login-status .sf-v88-inline-tools,
.login-status .sf-v88-original-status{
  display:none !important;
}

#globalLoginStatusBar .sf-v90-status,
.login-status-bar .sf-v90-status,
.login-status .sf-v90-status{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  margin-right:10px !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v90-online-dot,
.login-status-bar .sf-v90-online-dot,
.login-status .sf-v90-online-dot{
  width:10px !important;
  height:10px !important;
  min-width:10px !important;
  border-radius:999px !important;
  background:#22c55e !important;
  box-shadow:0 0 0 4px rgba(34,197,94,.13) !important;
}

#globalLoginStatusBar .sf-v90-avatar,
.login-status-bar .sf-v90-avatar,
.login-status .sf-v90-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

#globalLoginStatusBar .sf-v90-avatar .login-avatar,
.login-status-bar .sf-v90-avatar .login-avatar,
.login-status .sf-v90-avatar .login-avatar{
  width:31px !important;
  height:31px !important;
  min-width:31px !important;
  min-height:31px !important;
  max-width:31px !important;
  max-height:31px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.42) !important;
  box-shadow:0 5px 14px rgba(18,63,94,.16) !important;
}

#globalLoginStatusBar .sf-v90-avatar .login-avatar-fallback,
.login-status-bar .sf-v90-avatar .login-avatar-fallback,
.login-status .sf-v90-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:14px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v90-login-text,
.login-status-bar .sf-v90-login-text,
.login-status .sf-v90-login-text{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  color:#123047 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v90-login-text strong,
.login-status-bar .sf-v90-login-text strong,
.login-status .sf-v90-login-text strong{
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v90-role,
.login-status-bar .sf-v90-role,
.login-status .sf-v90-role{
  color:#1F6FEA !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v90-edit-profile-link,
.login-status-bar .sf-v90-edit-profile-link,
.login-status .sf-v90-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 11px !important;
  min-height:30px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#f4fffd) !important;
  border:1px solid rgba(18,191,196,.28) !important;
  box-shadow:0 7px 18px rgba(18,63,94,.08) !important;
}

#globalLoginStatusBar .sf-v90-edit-icon,
.login-status-bar .sf-v90-edit-icon,
.login-status .sf-v90-edit-icon{
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
  box-shadow:0 5px 12px rgba(124,58,237,.20) !important;
}
#globalLoginStatusBar .sf-v90-edit-icon svg,
.login-status-bar .sf-v90-edit-icon svg,
.login-status .sf-v90-edit-icon svg{
  width:14px !important;
  height:14px !important;
  fill:currentColor !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v90-login-text,
  .login-status-bar .sf-v90-login-text,
  .login-status .sf-v90-login-text{
    flex-wrap:wrap !important;
    font-size:12px !important;
  }
  #globalLoginStatusBar .sf-v90-edit-profile-link span:last-child,
  .login-status-bar .sf-v90-edit-profile-link span:last-child,
  .login-status .sf-v90-edit-profile-link span:last-child{
    display:none !important;
  }
}

/* v91 clean single-row login bar; hide all old duplicate fragments */
#globalLoginStatusBar .sf-v84-role-badge,
#globalLoginStatusBar .sf-v84-edit-profile-link,
#globalLoginStatusBar .sf-v86-status-wrap,
#globalLoginStatusBar .sf-v87-status-wrap,
#globalLoginStatusBar .sf-v88-inline-tools,
#globalLoginStatusBar .sf-v88-original-status,
#globalLoginStatusBar .sf-v90-status,
.login-status-bar .sf-v84-role-badge,
.login-status-bar .sf-v84-edit-profile-link,
.login-status-bar .sf-v86-status-wrap,
.login-status-bar .sf-v87-status-wrap,
.login-status-bar .sf-v88-inline-tools,
.login-status-bar .sf-v88-original-status,
.login-status-bar .sf-v90-status{
  display:none !important;
}

#globalLoginStatusBar.sf-v91-clean-login-bar{
  overflow:visible !important;
}

#globalLoginStatusBar .sf-v91-login-inner,
.login-status-bar .sf-v91-login-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  width:100% !important;
  min-height:52px !important;
  box-sizing:border-box !important;
}

#globalLoginStatusBar .sf-v91-status-left,
.login-status-bar .sf-v91-status-left{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  min-width:0 !important;
  white-space:nowrap !important;
}

#globalLoginStatusBar .sf-v91-actions,
.login-status-bar .sf-v91-actions{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v91-avatar,
.login-status-bar .sf-v91-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v91-avatar .login-avatar,
.login-status-bar .sf-v91-avatar .login-avatar{
  width:31px !important;
  height:31px !important;
  min-width:31px !important;
  min-height:31px !important;
  max-width:31px !important;
  max-height:31px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#fff !important;
  border:2px solid rgba(18,191,196,.42) !important;
  box-shadow:0 5px 14px rgba(18,63,94,.16) !important;
}

#globalLoginStatusBar .sf-v91-avatar .login-avatar-fallback,
.login-status-bar .sf-v91-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:14px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v91-login-copy,
.login-status-bar .sf-v91-login-copy{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  color:#123047 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v91-login-copy .login-status-name,
.login-status-bar .sf-v91-login-copy .login-status-name{
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v91-login-copy .login-status-role,
.login-status-bar .sf-v91-login-copy .login-status-role{
  color:#1F6FEA !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v91-edit-profile-link,
.login-status-bar .sf-v91-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 11px !important;
  min-height:30px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#123047 !important;
  font-size:12px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#f4fffd) !important;
  border:1px solid rgba(18,191,196,.28) !important;
  box-shadow:0 7px 18px rgba(18,63,94,.08) !important;
}

#globalLoginStatusBar .sf-v91-edit-icon,
.login-status-bar .sf-v91-edit-icon{
  width:23px !important;
  height:23px !important;
  min-width:23px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
  box-shadow:0 5px 12px rgba(124,58,237,.20) !important;
}

#globalLoginStatusBar .sf-v91-edit-icon svg,
.login-status-bar .sf-v91-edit-icon svg{
  width:14px !important;
  height:14px !important;
  fill:currentColor !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v91-login-inner,
  .login-status-bar .sf-v91-login-inner{
    flex-wrap:wrap !important;
    gap:8px !important;
  }
  #globalLoginStatusBar .sf-v91-status-left,
  .login-status-bar .sf-v91-status-left{
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v91-login-copy,
  .login-status-bar .sf-v91-login-copy{
    font-size:12px !important;
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v91-edit-profile-link span:last-child,
  .login-status-bar .sf-v91-edit-profile-link span:last-child{
    display:none !important;
  }
}

/* v92 login bar contrast, smaller edit button, restored avatar styling */
#globalLoginStatusBar.sf-v92-clean-login-bar,
#globalLoginStatusBar.sf-v91-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
  color:#ffffff !important;
  border-bottom:1px solid rgba(255,255,255,.18) !important;
}

#globalLoginStatusBar .sf-v91-login-copy,
#globalLoginStatusBar .sf-v92-login-copy,
.login-status-bar .sf-v91-login-copy,
.login-status-bar .sf-v92-login-copy{
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.28) !important;
  font-size:13px !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v91-login-copy .login-status-name,
#globalLoginStatusBar .sf-v92-login-copy .login-status-name,
.login-status-bar .sf-v91-login-copy .login-status-name,
.login-status-bar .sf-v92-login-copy .login-status-name{
  color:#ffffff !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v91-login-copy .login-status-role,
#globalLoginStatusBar .sf-v92-login-copy .login-status-role,
.login-status-bar .sf-v91-login-copy .login-status-role,
.login-status-bar .sf-v92-login-copy .login-status-role{
  color:#dffaff !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v92-login-inner,
.login-status-bar .sf-v92-login-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  width:100% !important;
  min-height:48px !important;
  box-sizing:border-box !important;
}

#globalLoginStatusBar .sf-v92-status-left,
.login-status-bar .sf-v92-status-left{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
  white-space:nowrap !important;
}

#globalLoginStatusBar .sf-v92-avatar,
.login-status-bar .sf-v92-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v92-avatar .login-avatar,
.login-status-bar .sf-v92-avatar .login-avatar{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  min-height:30px !important;
  max-width:30px !important;
  max-height:30px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#fff !important;
  border:2px solid rgba(255,255,255,.78) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.18) !important;
}

#globalLoginStatusBar .sf-v92-avatar .login-avatar-fallback,
.login-status-bar .sf-v92-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:13px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v91-edit-profile-link,
#globalLoginStatusBar .sf-v92-edit-profile-link,
.login-status-bar .sf-v91-edit-profile-link,
.login-status-bar .sf-v92-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:5px 8px !important;
  min-height:24px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#0f2940 !important;
  font-size:10.5px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#edfdf9) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
}

#globalLoginStatusBar .sf-v91-edit-icon,
#globalLoginStatusBar .sf-v92-edit-icon,
.login-status-bar .sf-v91-edit-icon,
.login-status-bar .sf-v92-edit-icon{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
}

#globalLoginStatusBar .sf-v91-edit-icon svg,
#globalLoginStatusBar .sf-v92-edit-icon svg,
.login-status-bar .sf-v91-edit-icon svg,
.login-status-bar .sf-v92-edit-icon svg{
  width:11px !important;
  height:11px !important;
  fill:currentColor !important;
}

#globalLoginStatusBar .sf-v92-actions,
.login-status-bar .sf-v92-actions{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  flex:0 0 auto !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v92-login-inner,
  .login-status-bar .sf-v92-login-inner{
    flex-wrap:wrap !important;
    gap:8px !important;
  }
  #globalLoginStatusBar .sf-v92-status-left,
  .login-status-bar .sf-v92-status-left{
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v92-login-copy,
  .login-status-bar .sf-v92-login-copy{
    font-size:12px !important;
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v92-edit-profile-link span:last-child,
  .login-status-bar .sf-v92-edit-profile-link span:last-child{
    display:none !important;
  }
}

/* v93 authoritative top login bar: high contrast, one status, working controls */
#globalLoginStatusBar.sf-v93-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
  color:#ffffff !important;
  border-bottom:1px solid rgba(255,255,255,.20) !important;
  overflow:visible !important;
  z-index:9999 !important;
}

#globalLoginStatusBar .sf-v93-login-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  width:100% !important;
  min-height:48px !important;
  box-sizing:border-box !important;
}

#globalLoginStatusBar .sf-v93-status-left,
#globalLoginStatusBar .sf-v93-actions{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
  white-space:nowrap !important;
}

#globalLoginStatusBar .sf-v93-actions{
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v93-login-copy{
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.30) !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v93-login-copy .login-status-name{
  color:#ffffff !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v93-login-copy .login-status-role{
  color:#dffaff !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v93-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v93-avatar .login-avatar{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  min-height:30px !important;
  max-width:30px !important;
  max-height:30px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#fff !important;
  border:2px solid rgba(255,255,255,.78) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.18) !important;
}

#globalLoginStatusBar .sf-v93-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:13px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v93-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:5px 8px !important;
  min-height:24px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#0f2940 !important;
  font-size:10.5px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#edfdf9) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
}

#globalLoginStatusBar .sf-v93-edit-icon{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
}

#globalLoginStatusBar .sf-v93-edit-icon svg{
  width:11px !important;
  height:11px !important;
  fill:currentColor !important;
}

#globalLoginStatusBar .sf-v93-menu-button,
#globalLoginStatusBar .sf-v93-logout-button{
  cursor:pointer !important;
}

#globalLoginStatusBar .top-nav-dropdown{
  max-height:min(640px, calc(100vh - 78px)) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  z-index:99999 !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v93-login-inner{
    flex-wrap:wrap !important;
    gap:8px !important;
  }
  #globalLoginStatusBar .sf-v93-status-left{
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v93-login-copy{
    font-size:12px !important;
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v93-edit-profile-link span:last-child{
    display:none !important;
  }
}



/* v94 final top login bar fixes: user photo + working menu */
#globalLoginStatusBar.sf-v94-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
  color:#ffffff !important;
  border-bottom:1px solid rgba(255,255,255,.20) !important;
  overflow:visible !important;
  z-index:9999 !important;
}

#globalLoginStatusBar .sf-v94-login-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  width:100% !important;
  min-height:48px !important;
  box-sizing:border-box !important;
}

#globalLoginStatusBar .sf-v94-status-left,
#globalLoginStatusBar .sf-v94-actions{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
  white-space:nowrap !important;
}

#globalLoginStatusBar .sf-v94-actions{
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v94-login-copy{
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.30) !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#globalLoginStatusBar .sf-v94-login-copy .login-status-name{
  color:#ffffff !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v94-login-copy .login-status-role{
  color:#dffaff !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v94-avatar{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

#globalLoginStatusBar .sf-v94-avatar .login-avatar{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  min-height:30px !important;
  max-width:30px !important;
  max-height:30px !important;
  border-radius:999px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#fff !important;
  border:2px solid rgba(255,255,255,.78) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.18) !important;
}

#globalLoginStatusBar .sf-v94-avatar .login-avatar-fallback{
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  font-size:13px !important;
  font-weight:950 !important;
}

#globalLoginStatusBar .sf-v94-edit-profile-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:5px 8px !important;
  min-height:24px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  color:#0f2940 !important;
  font-size:10.5px !important;
  font-weight:950 !important;
  line-height:1 !important;
  background:linear-gradient(135deg,#ffffff,#edfdf9) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
}

#globalLoginStatusBar .sf-v94-edit-icon{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
}

#globalLoginStatusBar .sf-v94-edit-icon svg{
  width:11px !important;
  height:11px !important;
  fill:currentColor !important;
}

#globalLoginStatusBar .top-nav-menu{
  position:relative !important;
}

#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute !important;
  right:0 !important;
  top:calc(100% + 8px) !important;
  max-height:min(640px, calc(100vh - 78px)) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  z-index:99999 !important;
}

#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{
  display:block !important;
}

#globalLoginStatusBar .sf-v94-menu-button,
#globalLoginStatusBar .sf-v94-logout-button{
  cursor:pointer !important;
}

@media(max-width:760px){
  #globalLoginStatusBar .sf-v94-login-inner{
    flex-wrap:wrap !important;
    gap:8px !important;
  }
  #globalLoginStatusBar .sf-v94-status-left{
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v94-login-copy{
    font-size:12px !important;
    flex-wrap:wrap !important;
  }
  #globalLoginStatusBar .sf-v94-edit-profile-link span:last-child{
    display:none !important;
  }
}



/* v95 login.html layout: bring staff login section above the fold */
body.login-page-v95{
  min-height:100vh !important;
}

body.login-page-v95 .main,
body.login-page-v95 main{
  padding-top:18px !important;
  padding-bottom:28px !important;
}

/* Make the login page hero compact so the form is visible without scrolling */
body.login-page-v95 .hero,
body.login-page-v95 .page-hero,
body.login-page-v95 section.hero,
body.login-page-v95 .auth-hero{
  padding-top:18px !important;
  padding-bottom:14px !important;
  margin-top:6px !important;
  margin-bottom:12px !important;
  min-height:0 !important;
}

body.login-page-v95 .hero h1,
body.login-page-v95 .page-hero h1,
body.login-page-v95 .auth-hero h1,
body.login-page-v95 h1{
  font-size:clamp(28px, 3vw, 44px) !important;
  line-height:1.08 !important;
  margin:0 0 8px !important;
}

body.login-page-v95 .hero p,
body.login-page-v95 .page-hero p,
body.login-page-v95 .auth-hero p,
body.login-page-v95 .lead{
  font-size:15px !important;
  line-height:1.38 !important;
  margin-top:4px !important;
  margin-bottom:0 !important;
}

body.login-page-v95 form,
body.login-page-v95 .auth-card,
body.login-page-v95 .login-card,
body.login-page-v95 .sf-v95-login-priority{
  margin-top:8px !important;
}

body.login-page-v95 .grid,
body.login-page-v95 .cards-grid,
body.login-page-v95 .auth-grid{
  align-items:start !important;
  gap:18px !important;
}

body.login-page-v95 section{
  padding-top:12px !important;
  padding-bottom:12px !important;
}

body.login-page-v95 input,
body.login-page-v95 select{
  min-height:42px !important;
}

body.login-page-v95 button,
body.login-page-v95 .button,
body.login-page-v95 .btn{
  min-height:40px !important;
}

body.login-page-v95 .sf-v95-login-priority{
  max-width:520px !important;
  margin:8px auto 18px !important;
  position:relative !important;
  z-index:2 !important;
}

@media(min-width:900px){
  body.login-page-v95 .main,
  body.login-page-v95 main{
    max-width:1120px !important;
  }

  body.login-page-v95 .hero + section,
  body.login-page-v95 .page-hero + section,
  body.login-page-v95 .auth-hero + section{
    margin-top:0 !important;
  }
}

@media(max-width:760px){
  body.login-page-v95 .main,
  body.login-page-v95 main{
    padding-top:10px !important;
  }

  body.login-page-v95 .hero,
  body.login-page-v95 .page-hero,
  body.login-page-v95 .auth-hero{
    padding-top:10px !important;
    padding-bottom:8px !important;
  }

  body.login-page-v95 .hero h1,
  body.login-page-v95 .page-hero h1,
  body.login-page-v95 h1{
    font-size:26px !important;
  }
}



/* v96 reports link + avatar initials + realistic SOAP anatomy model */
#globalLoginStatusBar .sf-v96-avatar .login-avatar-fallback,
#globalLoginStatusBar .sf-v94-avatar .login-avatar-fallback{
  font-size:11.5px !important;
  letter-spacing:.02em !important;
}

/* Realistic SOAP muscle model */
.sf-v96-soap-realistic-wrap{
  background:linear-gradient(145deg,#07111d,#101827) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:22px !important;
  padding:18px !important;
  box-shadow:0 18px 45px rgba(2,8,23,.28) !important;
  color:#fff !important;
}

.sf-v96-soap-model-title{
  font-size:18px !important;
  font-weight:950 !important;
  color:#fff !important;
  margin-bottom:4px !important;
}

.sf-v96-soap-model-help{
  font-size:13px !important;
  color:rgba(255,255,255,.78) !important;
  margin-bottom:12px !important;
}

.sf-v96-muscle-model{
  position:relative !important;
  width:min(100%, 560px) !important;
  margin:0 auto !important;
  background:#000 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10), 0 14px 40px rgba(0,0,0,.32) !important;
}

.sf-v96-muscle-model img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  user-select:none !important;
  pointer-events:none !important;
}

.sf-v96-muscle-hotspot{
  position:absolute !important;
  transform:translate(-50%,-50%) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  background:rgba(20,184,166,.04) !important;
  cursor:pointer !important;
  padding:0 !important;
  min-height:0 !important;
  opacity:.55 !important;
  transition:background .15s ease, box-shadow .15s ease, opacity .15s ease, transform .15s ease !important;
}

.sf-v96-muscle-hotspot:hover,
.sf-v96-muscle-hotspot.selected{
  opacity:1 !important;
  background:rgba(34,211,238,.26) !important;
  box-shadow:0 0 0 2px rgba(34,211,238,.38), 0 0 24px rgba(34,211,238,.38) !important;
  transform:translate(-50%,-50%) scale(1.04) !important;
}

.sf-v96-muscle-hotspot span{
  position:absolute !important;
  left:50% !important;
  bottom:calc(100% + 6px) !important;
  transform:translateX(-50%) !important;
  background:rgba(2,8,23,.94) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:10px !important;
  padding:5px 8px !important;
  font-size:11px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  opacity:0 !important;
  pointer-events:none !important;
  box-shadow:0 10px 22px rgba(0,0,0,.28) !important;
}

.sf-v96-muscle-hotspot:hover span{
  opacity:1 !important;
}

.sf-v96-muscle-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:12px !important;
}

.sf-v96-muscle-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  padding:7px 9px !important;
  border-radius:999px !important;
  color:#053344 !important;
  background:linear-gradient(135deg,#ccfbf1,#e0f2fe) !important;
  font-size:12px !important;
  font-weight:900 !important;
}

.sf-v96-muscle-chip button{
  width:18px !important;
  height:18px !important;
  min-height:18px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#ef4444 !important;
  color:#fff !important;
  font-size:13px !important;
  line-height:1 !important;
  cursor:pointer !important;
  display:inline-grid !important;
  place-items:center !important;
  padding:0 !important;
}

.sf-v96-muscle-empty{
  color:rgba(255,255,255,.72) !important;
  font-size:12px !important;
}



/* v97 final login bar and SOAP muscle model */
#globalLoginStatusBar.sf-v97-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
  color:#ffffff !important;
  border-bottom:1px solid rgba(255,255,255,.20) !important;
  overflow:visible !important;
  z-index:9999 !important;
}
#globalLoginStatusBar .sf-v97-login-inner{
  display:flex !important; align-items:center !important; justify-content:space-between !important;
  gap:16px !important; width:100% !important; min-height:48px !important; box-sizing:border-box !important;
}
#globalLoginStatusBar .sf-v97-status-left,#globalLoginStatusBar .sf-v97-actions{
  display:inline-flex !important; align-items:center !important; gap:8px !important; min-width:0 !important; white-space:nowrap !important;
}
#globalLoginStatusBar .sf-v97-actions{ flex:0 0 auto !important; }
#globalLoginStatusBar .sf-v97-login-copy{
  color:#fff !important; text-shadow:0 1px 2px rgba(0,0,0,.30) !important;
  font-size:13px !important; line-height:1.1 !important; font-weight:850 !important;
}
#globalLoginStatusBar .sf-v97-login-copy .login-status-name{ color:#fff !important; font-weight:950 !important; }
#globalLoginStatusBar .sf-v97-login-copy .login-status-role{ color:#dffaff !important; font-weight:950 !important; }
#globalLoginStatusBar .sf-v97-avatar{ display:inline-flex !important; align-items:center !important; justify-content:center !important; }
#globalLoginStatusBar .sf-v97-avatar .login-avatar{
  width:30px !important; height:30px !important; min-width:30px !important; min-height:30px !important;
  max-width:30px !important; max-height:30px !important; border-radius:999px !important;
  object-fit:cover !important; object-position:center !important; display:block !important;
  background:#fff !important; border:2px solid rgba(255,255,255,.78) !important; box-shadow:0 5px 14px rgba(0,0,0,.18) !important;
}
#globalLoginStatusBar .sf-v97-avatar .login-avatar-fallback{
  display:inline-grid !important; place-items:center !important; color:#fff !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important; font-size:11.5px !important; letter-spacing:.02em !important; font-weight:950 !important;
}
#globalLoginStatusBar .sf-v97-edit-profile-link{
  display:inline-flex !important; align-items:center !important; gap:5px !important; padding:5px 8px !important; min-height:24px !important;
  border-radius:999px !important; text-decoration:none !important; color:#0f2940 !important; font-size:10.5px !important; font-weight:950 !important;
  line-height:1 !important; background:linear-gradient(135deg,#ffffff,#edfdf9) !important; border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 5px 14px rgba(0,0,0,.14) !important;
}
#globalLoginStatusBar .sf-v97-edit-icon{
  width:18px !important; height:18px !important; min-width:18px !important; border-radius:999px !important;
  display:inline-grid !important; place-items:center !important; color:#fff !important; background:linear-gradient(135deg,#7C3AED,#1F6FEA) !important;
}
#globalLoginStatusBar .sf-v97-edit-icon svg{ width:11px !important; height:11px !important; fill:currentColor !important; }
#globalLoginStatusBar .top-nav-menu{ position:relative !important; }
#globalLoginStatusBar .top-nav-dropdown{
  display:none; position:absolute !important; right:0 !important; top:calc(100% + 8px) !important;
  max-height:min(640px, calc(100vh - 78px)) !important; overflow-y:auto !important; overflow-x:hidden !important; z-index:99999 !important;
}
#globalLoginStatusBar .top-nav-dropdown.show,#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{ display:block !important; }

/* Hide prior duplicated SOAP model generations when v97 is active */
body:has(#sfV97SoapModelHost) .sf-v96-soap-realistic-wrap{ display:none !important; }

.sf-v97-soap-realistic-wrap{
  background:#fff !important; border:1px solid rgba(15,23,42,.12) !important; border-radius:22px !important; padding:18px !important;
  box-shadow:0 18px 45px rgba(15,23,42,.12) !important; color:#0f172a !important;
}
.sf-v97-soap-model-title{ font-size:18px !important; font-weight:950 !important; color:#0f172a !important; margin-bottom:4px !important; }
.sf-v97-soap-model-help{ font-size:13px !important; color:#475569 !important; margin-bottom:12px !important; }
.sf-v97-muscle-model{
  position:relative !important; width:min(100%, 560px) !important; margin:0 auto !important; background:#fff !important;
  border-radius:18px !important; overflow:hidden !important; box-shadow:inset 0 0 0 1px rgba(15,23,42,.10), 0 14px 40px rgba(15,23,42,.10) !important;
}
.sf-v97-muscle-model img{ width:100% !important; height:auto !important; display:block !important; user-select:none !important; pointer-events:none !important; }
.sf-v97-muscle-hotspot{
  position:absolute !important; transform:translate(-50%,-50%) !important; border:1px solid rgba(14,165,233,.20) !important;
  border-radius:999px !important; background:rgba(14,165,233,.05) !important; cursor:pointer !important; padding:0 !important; min-height:0 !important;
  opacity:.6 !important; transition:background .15s ease, box-shadow .15s ease, opacity .15s ease, transform .15s ease !important;
}
.sf-v97-muscle-hotspot:hover,.sf-v97-muscle-hotspot.selected{
  opacity:1 !important; background:rgba(14,165,233,.24) !important; box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 24px rgba(14,165,233,.25) !important;
  transform:translate(-50%,-50%) scale(1.04) !important;
}
.sf-v97-muscle-hotspot span{
  position:absolute !important; left:50% !important; bottom:calc(100% + 6px) !important; transform:translateX(-50%) !important;
  background:rgba(15,23,42,.96) !important; color:#fff !important; border-radius:10px !important; padding:5px 8px !important; font-size:11px !important;
  font-weight:850 !important; white-space:nowrap !important; opacity:0 !important; pointer-events:none !important; box-shadow:0 10px 22px rgba(15,23,42,.28) !important;
}
.sf-v97-muscle-hotspot:hover span{ opacity:1 !important; }
.sf-v97-muscle-chips{ display:flex !important; flex-wrap:wrap !important; gap:8px !important; margin-top:12px !important; }
.sf-v97-muscle-chip{
  display:inline-flex !important; align-items:center !important; gap:6px !important; padding:7px 9px !important; border-radius:999px !important;
  color:#053344 !important; background:linear-gradient(135deg,#ccfbf1,#e0f2fe) !important; font-size:12px !important; font-weight:900 !important;
}
.sf-v97-muscle-chip button{
  width:18px !important; height:18px !important; min-height:18px !important; border:0 !important; border-radius:999px !important;
  background:#ef4444 !important; color:#fff !important; font-size:13px !important; line-height:1 !important; cursor:pointer !important; display:inline-grid !important; place-items:center !important; padding:0 !important;
}
.sf-v97-muscle-empty{ color:#64748b !important; font-size:12px !important; }
@media(max-width:760px){
  #globalLoginStatusBar .sf-v97-login-inner{ flex-wrap:wrap !important; gap:8px !important; }
  #globalLoginStatusBar .sf-v97-status-left{ flex-wrap:wrap !important; }
  #globalLoginStatusBar .sf-v97-login-copy{ font-size:12px !important; flex-wrap:wrap !important; }
  #globalLoginStatusBar .sf-v97-edit-profile-link span:last-child{ display:none !important; }
}



/* v98 compact realistic SOAP model + final login avatar styles */
#globalLoginStatusBar.sf-v98-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
  color:#fff !important; overflow:visible !important; z-index:9999 !important;
}
#globalLoginStatusBar .sf-v98-login-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;min-height:48px!important;}
#globalLoginStatusBar .sf-v98-status-left,#globalLoginStatusBar .sf-v98-actions{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important;}
#globalLoginStatusBar .sf-v98-login-copy{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important;font-size:13px!important;font-weight:850!important;}
#globalLoginStatusBar .sf-v98-login-copy .login-status-name{color:#fff!important;font-weight:950!important;}
#globalLoginStatusBar .sf-v98-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important;}
#globalLoginStatusBar .sf-v98-avatar .login-avatar{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important;border-radius:999px!important;object-fit:cover!important;display:block!important;background:#fff!important;border:2px solid rgba(255,255,255,.78)!important;}
#globalLoginStatusBar .sf-v98-avatar .login-avatar-fallback{display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;font-size:11.5px!important;font-weight:950!important;letter-spacing:.02em!important;}
#globalLoginStatusBar .sf-v98-edit-profile-link{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 8px!important;min-height:24px!important;border-radius:999px!important;text-decoration:none!important;color:#0f2940!important;font-size:10.5px!important;font-weight:950!important;line-height:1!important;background:linear-gradient(135deg,#fff,#edfdf9)!important;border:1px solid rgba(255,255,255,.72)!important;}
#globalLoginStatusBar .sf-v98-edit-icon{width:18px!important;height:18px!important;min-width:18px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#7C3AED,#1F6FEA)!important;}
#globalLoginStatusBar .sf-v98-edit-icon svg{width:11px!important;height:11px!important;fill:currentColor!important;}
#globalLoginStatusBar .top-nav-menu{position:relative!important;}
#globalLoginStatusBar .top-nav-dropdown{display:none;position:absolute!important;right:0!important;top:calc(100% + 8px)!important;max-height:min(640px, calc(100vh - 78px))!important;overflow-y:auto!important;z-index:99999!important;}
#globalLoginStatusBar .top-nav-dropdown.show,#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important;}

body:has(#sfV98SoapModelHost) .sf-v96-soap-realistic-wrap,
body:has(#sfV98SoapModelHost) .sf-v97-soap-realistic-wrap{display:none!important;}

.sf-v98-soap-realistic-wrap{background:#fff!important;border:1px solid rgba(15,23,42,.12)!important;border-radius:18px!important;padding:12px!important;box-shadow:0 12px 32px rgba(15,23,42,.10)!important;color:#0f172a!important;max-width:460px!important;margin:0 auto 14px!important;}
.sf-v98-soap-model-title{font-size:15px!important;font-weight:950!important;color:#0f172a!important;margin-bottom:3px!important;}
.sf-v98-soap-model-help{font-size:11.5px!important;color:#475569!important;margin-bottom:8px!important;line-height:1.3!important;}
.sf-v98-muscle-model{position:relative!important;width:min(100%, 360px)!important;margin:0 auto!important;background:#fff!important;border-radius:14px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.10),0 8px 22px rgba(15,23,42,.08)!important;}
.sf-v98-muscle-model img{width:100%!important;height:auto!important;display:block!important;user-select:none!important;pointer-events:none!important;}
.sf-v98-muscle-hotspot{position:absolute!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(14,165,233,.22)!important;border-radius:999px!important;background:rgba(14,165,233,.06)!important;cursor:pointer!important;padding:0!important;min-height:0!important;opacity:.55!important;}
.sf-v98-muscle-hotspot:hover{opacity:1!important;background:rgba(14,165,233,.25)!important;box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 18px rgba(14,165,233,.24)!important;}
.sf-v98-muscle-hotspot span{position:absolute!important;left:50%!important;bottom:calc(100% + 5px)!important;transform:translateX(-50%)!important;background:rgba(15,23,42,.96)!important;color:#fff!important;border-radius:9px!important;padding:4px 7px!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important;}
.sf-v98-muscle-hotspot:hover span{opacity:1!important;}
.sf-v98-muscle-chips{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:8px!important;}
.sf-v98-active-label{font-size:11px!important;font-weight:950!important;color:#0f172a!important;background:#f1f5f9!important;border-radius:999px!important;padding:6px 8px!important;}
.sf-v98-muscle-chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:6px 8px!important;border-radius:999px!important;color:#053344!important;background:linear-gradient(135deg,#ccfbf1,#e0f2fe)!important;font-size:11px!important;font-weight:900!important;}
.sf-v98-muscle-chip button{width:17px!important;height:17px!important;min-height:17px!important;border:0!important;border-radius:999px!important;background:#ef4444!important;color:#fff!important;font-size:12px!important;line-height:1!important;cursor:pointer!important;display:inline-grid!important;place-items:center!important;padding:0!important;}
.sf-v98-muscle-empty{color:#64748b!important;font-size:11px!important;}
.sf-v98-soap-target.sf-v98-active-soap-field{outline:2px solid rgba(14,165,233,.6)!important;box-shadow:0 0 0 4px rgba(14,165,233,.12)!important;}



/* v99 final login and compact 3D front/back SOAP */
#globalLoginStatusBar.sf-v99-clean-login-bar{background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;color:#fff!important;overflow:visible!important;z-index:9999!important}
#globalLoginStatusBar .sf-v99-login-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;min-height:48px!important}
#globalLoginStatusBar .sf-v99-status-left,#globalLoginStatusBar .sf-v99-actions{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important}
#globalLoginStatusBar .sf-v99-login-copy{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important;font-size:13px!important;font-weight:850!important}
#globalLoginStatusBar .sf-v99-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v99-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v99-avatar .login-avatar{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important;border-radius:999px!important;object-fit:cover!important;display:block!important;background:#fff!important;border:2px solid rgba(255,255,255,.78)!important}
#globalLoginStatusBar .sf-v99-avatar .login-avatar-fallback{display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;font-size:11.5px!important;font-weight:950!important;letter-spacing:.02em!important}
#globalLoginStatusBar .sf-v99-edit-profile-link{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 8px!important;min-height:24px!important;border-radius:999px!important;text-decoration:none!important;color:#0f2940!important;font-size:10.5px!important;font-weight:950!important;line-height:1!important;background:linear-gradient(135deg,#fff,#edfdf9)!important;border:1px solid rgba(255,255,255,.72)!important}
#globalLoginStatusBar .sf-v99-edit-icon{width:18px!important;height:18px!important;min-width:18px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#7C3AED,#1F6FEA)!important}
#globalLoginStatusBar .sf-v99-edit-icon svg{width:11px!important;height:11px!important;fill:currentColor!important}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{display:none;position:absolute!important;right:0!important;top:calc(100% + 8px)!important;max-height:min(640px, calc(100vh - 78px))!important;overflow-y:auto!important;z-index:99999!important}
#globalLoginStatusBar .top-nav-dropdown.show,#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

body:has(#sfV99SoapModelHost) .sf-v96-soap-realistic-wrap,
body:has(#sfV99SoapModelHost) .sf-v97-soap-realistic-wrap,
body:has(#sfV99SoapModelHost) .sf-v98-soap-realistic-wrap{display:none!important}

.sf-v99-soap-realistic-wrap{background:#fff!important;border:1px solid rgba(15,23,42,.12)!important;border-radius:16px!important;padding:10px!important;box-shadow:0 10px 26px rgba(15,23,42,.10)!important;color:#0f172a!important;max-width:430px!important;margin:0 auto 12px!important}
.sf-v99-soap-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-bottom:7px!important}
.sf-v99-soap-model-title{font-size:14px!important;font-weight:950!important;color:#0f172a!important;margin-bottom:2px!important}
.sf-v99-soap-model-help{font-size:10.5px!important;color:#475569!important;line-height:1.25!important}
.sf-v99-rotate-buttons{display:flex!important;gap:5px!important;flex:0 0 auto!important}
.sf-v99-rotate-buttons button{font-size:10px!important;font-weight:950!important;min-height:24px!important;padding:4px 8px!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;cursor:pointer!important}
.sf-v99-rotate-buttons button.active{background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;color:#fff!important}
.sf-v99-muscle-model{position:relative!important;width:min(100%, 320px)!important;margin:0 auto!important;background:#fff!important;border-radius:14px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.10),0 8px 20px rgba(15,23,42,.08)!important}
.sf-v99-muscle-model img{width:100%!important;height:auto!important;display:block!important;user-select:none!important;pointer-events:none!important}
.sf-v99-muscle-hotspot{position:absolute!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(14,165,233,.22)!important;border-radius:999px!important;background:rgba(14,165,233,.05)!important;cursor:pointer!important;padding:0!important;min-height:0!important;opacity:.5!important}
.sf-v99-muscle-hotspot:hover{opacity:1!important;background:rgba(14,165,233,.25)!important;box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 18px rgba(14,165,233,.24)!important}
.sf-v99-muscle-hotspot span{position:absolute!important;left:50%!important;bottom:calc(100% + 5px)!important;transform:translateX(-50%)!important;background:rgba(15,23,42,.96)!important;color:#fff!important;border-radius:8px!important;padding:4px 7px!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}
.sf-v99-muscle-hotspot:hover span{opacity:1!important}
.sf-v99-muscle-chips{display:flex!important;flex-wrap:wrap!important;gap:5px!important;margin-top:7px!important}
.sf-v99-active-label{font-size:10.5px!important;font-weight:950!important;color:#0f172a!important;background:#f1f5f9!important;border-radius:999px!important;padding:5px 7px!important}
.sf-v99-muscle-chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 7px!important;border-radius:999px!important;color:#053344!important;background:linear-gradient(135deg,#ccfbf1,#e0f2fe)!important;font-size:10.5px!important;font-weight:900!important}
.sf-v99-muscle-chip button{width:16px!important;height:16px!important;min-height:16px!important;border:0!important;border-radius:999px!important;background:#ef4444!important;color:#fff!important;font-size:11px!important;line-height:1!important;cursor:pointer!important;display:inline-grid!important;place-items:center!important;padding:0!important}
.sf-v99-muscle-empty{color:#64748b!important;font-size:10.5px!important}
.sf-v99-soap-target.sf-v99-active-soap-field{outline:2px solid rgba(14,165,233,.6)!important;box-shadow:0 0 0 4px rgba(14,165,233,.12)!important}



/* v100 final authoritative login and compact realistic front/back SOAP */
#globalLoginStatusBar.sf-v100-clean-login-bar{background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;color:#fff!important;overflow:visible!important;z-index:9999!important}
#globalLoginStatusBar .sf-v100-login-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;min-height:48px!important}
#globalLoginStatusBar .sf-v100-status-left,#globalLoginStatusBar .sf-v100-actions{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important}
#globalLoginStatusBar .sf-v100-login-copy{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important;font-size:13px!important;font-weight:850!important}
#globalLoginStatusBar .sf-v100-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v100-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v100-avatar .login-avatar{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important;border-radius:999px!important;object-fit:cover!important;display:block!important;background:#fff!important;border:2px solid rgba(255,255,255,.78)!important}
#globalLoginStatusBar .sf-v100-avatar .login-avatar-fallback{display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;font-size:11.5px!important;font-weight:950!important;letter-spacing:.02em!important}
#globalLoginStatusBar .sf-v100-edit-profile-link{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 8px!important;min-height:24px!important;border-radius:999px!important;text-decoration:none!important;color:#0f2940!important;font-size:10.5px!important;font-weight:950!important;line-height:1!important;background:linear-gradient(135deg,#fff,#edfdf9)!important;border:1px solid rgba(255,255,255,.72)!important}
#globalLoginStatusBar .sf-v100-edit-icon{width:18px!important;height:18px!important;min-width:18px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#7C3AED,#1F6FEA)!important}
#globalLoginStatusBar .sf-v100-edit-icon svg{width:11px!important;height:11px!important;fill:currentColor!important}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{display:none;position:absolute!important;right:0!important;top:calc(100% + 8px)!important;max-height:min(640px, calc(100vh - 78px))!important;overflow-y:auto!important;z-index:99999!important}
#globalLoginStatusBar .top-nav-dropdown.show,#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

body:has(#sfV100SoapModelHost) .sf-v96-soap-realistic-wrap,
body:has(#sfV100SoapModelHost) .sf-v97-soap-realistic-wrap,
body:has(#sfV100SoapModelHost) .sf-v98-soap-realistic-wrap,
body:has(#sfV100SoapModelHost) .sf-v99-soap-realistic-wrap{display:none!important}

.sf-v100-soap-realistic-wrap{background:#fff!important;border:1px solid rgba(15,23,42,.12)!important;border-radius:16px!important;padding:10px!important;box-shadow:0 10px 26px rgba(15,23,42,.10)!important;color:#0f172a!important;max-width:430px!important;margin:0 auto 12px!important}
.sf-v100-soap-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-bottom:7px!important}
.sf-v100-soap-model-title{font-size:14px!important;font-weight:950!important;color:#0f172a!important;margin-bottom:2px!important}
.sf-v100-soap-model-help{font-size:10.5px!important;color:#475569!important;line-height:1.25!important}
.sf-v100-rotate-buttons{display:flex!important;gap:5px!important;flex:0 0 auto!important}
.sf-v100-rotate-buttons button{font-size:10px!important;font-weight:950!important;min-height:24px!important;padding:4px 8px!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;cursor:pointer!important}
.sf-v100-rotate-buttons button.active{background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;color:#fff!important}
.sf-v100-muscle-model{position:relative!important;width:min(100%, 320px)!important;margin:0 auto!important;background:#fff!important;border-radius:14px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.10),0 8px 20px rgba(15,23,42,.08)!important}
.sf-v100-muscle-model img{width:100%!important;height:auto!important;display:block!important;user-select:none!important;pointer-events:none!important}
.sf-v100-muscle-hotspot{position:absolute!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(14,165,233,.22)!important;border-radius:999px!important;background:rgba(14,165,233,.05)!important;cursor:pointer!important;padding:0!important;min-height:0!important;opacity:.5!important}
.sf-v100-muscle-hotspot:hover{opacity:1!important;background:rgba(14,165,233,.25)!important;box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 18px rgba(14,165,233,.24)!important}
.sf-v100-muscle-hotspot span{position:absolute!important;left:50%!important;bottom:calc(100% + 5px)!important;transform:translateX(-50%)!important;background:rgba(15,23,42,.96)!important;color:#fff!important;border-radius:8px!important;padding:4px 7px!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}
.sf-v100-muscle-hotspot:hover span{opacity:1!important}
.sf-v100-muscle-chips{display:flex!important;flex-wrap:wrap!important;gap:5px!important;margin-top:7px!important}
.sf-v100-active-label{font-size:10.5px!important;font-weight:950!important;color:#0f172a!important;background:#f1f5f9!important;border-radius:999px!important;padding:5px 7px!important}
.sf-v100-muscle-chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 7px!important;border-radius:999px!important;color:#053344!important;background:linear-gradient(135deg,#ccfbf1,#e0f2fe)!important;font-size:10.5px!important;font-weight:900!important}
.sf-v100-muscle-chip button{width:16px!important;height:16px!important;min-height:16px!important;border:0!important;border-radius:999px!important;background:#ef4444!important;color:#fff!important;font-size:11px!important;line-height:1!important;cursor:pointer!important;display:inline-grid!important;place-items:center!important;padding:0!important}
.sf-v100-muscle-empty{color:#64748b!important;font-size:10.5px!important}
.sf-v100-soap-target.sf-v100-active-soap-field{outline:2px solid rgba(14,165,233,.6)!important;box-shadow:0 0 0 4px rgba(14,165,233,.12)!important}



/* v101 SOAP rotation controls: compact horizontal controls, moved note, no overlap */
body:has(#sfV101SoapModelHost) .sf-v96-soap-realistic-wrap,
body:has(#sfV101SoapModelHost) .sf-v97-soap-realistic-wrap,
body:has(#sfV101SoapModelHost) .sf-v98-soap-realistic-wrap,
body:has(#sfV101SoapModelHost) .sf-v99-soap-realistic-wrap,
body:has(#sfV101SoapModelHost) .sf-v100-soap-realistic-wrap{
  display:none !important;
}

.sf-v101-soap-realistic-wrap{
  background:#fff !important;
  border:1px solid rgba(15,23,42,.12) !important;
  border-radius:14px !important;
  padding:9px !important;
  box-shadow:0 10px 24px rgba(15,23,42,.10) !important;
  color:#0f172a !important;
  max-width:430px !important;
  margin:0 auto 12px !important;
  position:relative !important;
}

.sf-v101-rotate-note{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:0 0 6px !important;
  padding:5px 7px !important;
  border-radius:9px !important;
  background:#f8fafc !important;
  color:#475569 !important;
  border:1px solid rgba(15,23,42,.08) !important;
  font-size:10px !important;
  line-height:1.25 !important;
  font-weight:750 !important;
  text-align:left !important;
}

.sf-v101-soap-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  margin:0 0 6px !important;
  flex-wrap:nowrap !important;
}

.sf-v101-title-block{
  min-width:0 !important;
  flex:1 1 auto !important;
}

.sf-v101-soap-model-title{
  font-size:13px !important;
  font-weight:950 !important;
  color:#0f172a !important;
  margin:0 0 1px !important;
  line-height:1.05 !important;
}

.sf-v101-soap-model-help{
  font-size:10px !important;
  color:#475569 !important;
  line-height:1.2 !important;
  margin:0 !important;
}

.sf-v101-rotate-buttons{
  display:inline-flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:4px !important;
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

.sf-v101-rotate-buttons button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:42px !important;
  max-width:56px !important;
  min-height:20px !important;
  height:20px !important;
  padding:2px 7px !important;
  margin:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(14,165,233,.25) !important;
  background:#f8fafc !important;
  color:#0f2940 !important;
  box-shadow:none !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:950 !important;
  cursor:pointer !important;
}

.sf-v101-rotate-buttons button.active{
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  color:#fff !important;
  border-color:rgba(31,111,234,.35) !important;
}

.sf-v101-muscle-model{
  position:relative !important;
  width:min(100%, 320px) !important;
  margin:0 auto !important;
  background:#fff !important;
  border-radius:13px !important;
  overflow:hidden !important;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.10),0 8px 18px rgba(15,23,42,.08) !important;
}

.sf-v101-muscle-model img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  user-select:none !important;
  pointer-events:none !important;
}

.sf-v101-muscle-hotspot{
  position:absolute !important;
  transform:translate(-50%,-50%) !important;
  border:1px solid rgba(14,165,233,.22) !important;
  border-radius:999px !important;
  background:rgba(14,165,233,.05) !important;
  cursor:pointer !important;
  padding:0 !important;
  min-height:0 !important;
  opacity:.5 !important;
}

.sf-v101-muscle-hotspot:hover{
  opacity:1 !important;
  background:rgba(14,165,233,.25) !important;
  box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 18px rgba(14,165,233,.24) !important;
}

.sf-v101-muscle-hotspot span{
  position:absolute !important;
  left:50% !important;
  bottom:calc(100% + 5px) !important;
  transform:translateX(-50%) !important;
  background:rgba(15,23,42,.96) !important;
  color:#fff !important;
  border-radius:8px !important;
  padding:4px 7px !important;
  font-size:10px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index:5 !important;
}

.sf-v101-muscle-hotspot:hover span{
  opacity:1 !important;
}

.sf-v101-muscle-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:5px !important;
  margin-top:7px !important;
  position:relative !important;
  z-index:1 !important;
  clear:both !important;
}

.sf-v101-active-label{
  font-size:10px !important;
  font-weight:950 !important;
  color:#0f172a !important;
  background:#f1f5f9 !important;
  border-radius:999px !important;
  padding:5px 7px !important;
}

.sf-v101-muscle-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:5px 7px !important;
  border-radius:999px !important;
  color:#053344 !important;
  background:linear-gradient(135deg,#ccfbf1,#e0f2fe) !important;
  font-size:10px !important;
  font-weight:900 !important;
}

.sf-v101-muscle-chip button{
  width:16px !important;
  height:16px !important;
  min-height:16px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#ef4444 !important;
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  cursor:pointer !important;
  display:inline-grid !important;
  place-items:center !important;
  padding:0 !important;
}

.sf-v101-muscle-empty{
  color:#64748b !important;
  font-size:10px !important;
}

.sf-v101-soap-target.sf-v101-active-soap-field{
  outline:2px solid rgba(14,165,233,.6) !important;
  box-shadow:0 0 0 4px rgba(14,165,233,.12) !important;
}

@media(max-width:540px){
  .sf-v101-soap-head{
    align-items:flex-start !important;
  }
  .sf-v101-rotate-buttons button{
    min-width:38px !important;
    padding:2px 6px !important;
    font-size:8.5px !important;
  }
}



/* v102 stable login image + SOAP left-column layout/history */
#globalLoginStatusBar.sf-v102-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important; overflow:visible!important; z-index:9999!important;
}
#globalLoginStatusBar .sf-v102-login-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;min-height:48px!important}
#globalLoginStatusBar .sf-v102-status-left,#globalLoginStatusBar .sf-v102-actions{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important}
#globalLoginStatusBar .sf-v102-login-copy{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important;font-size:13px!important;font-weight:850!important}
#globalLoginStatusBar .sf-v102-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v102-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v102-avatar .login-avatar{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important;border-radius:999px!important;object-fit:cover!important;display:block!important;background:#fff!important;border:2px solid rgba(255,255,255,.78)!important}
#globalLoginStatusBar .sf-v102-avatar .login-avatar-fallback{display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;font-size:11.5px!important;font-weight:950!important;letter-spacing:.02em!important}
#globalLoginStatusBar .sf-v102-edit-profile-link{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 8px!important;min-height:24px!important;border-radius:999px!important;text-decoration:none!important;color:#0f2940!important;font-size:10.5px!important;font-weight:950!important;line-height:1!important;background:linear-gradient(135deg,#fff,#edfdf9)!important;border:1px solid rgba(255,255,255,.72)!important}
#globalLoginStatusBar .sf-v102-edit-icon{width:18px!important;height:18px!important;min-width:18px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#7C3AED,#1F6FEA)!important}
#globalLoginStatusBar .sf-v102-edit-icon svg{width:11px!important;height:11px!important;fill:currentColor!important}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{display:none;position:absolute!important;right:0!important;top:calc(100% + 8px)!important;max-height:min(640px, calc(100vh - 78px))!important;overflow-y:auto!important;z-index:99999!important}
#globalLoginStatusBar .top-nav-dropdown.show,#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

body.soap-page .page-head h1{font-size:clamp(26px,3vw,40px)!important}
body.soap-page .page-head h1::after{content:""!important}
body.soap-page .soap-anatomy-layout{
  display:grid!important;
  grid-template-columns:minmax(260px,360px) minmax(420px,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
body.soap-page .anatomy-viewer-card{
  grid-column:1!important;
  position:sticky!important;
  top:70px!important;
  align-self:start!important;
  padding:12px!important;
}
body.soap-page .anatomy-note-panel{
  grid-column:2!important;
}
body.soap-page .selected-muscle-name{
  color:#0f172a!important;
}
body:has(#sfV102SoapModelHost) .sf-v96-soap-realistic-wrap,
body:has(#sfV102SoapModelHost) .sf-v97-soap-realistic-wrap,
body:has(#sfV102SoapModelHost) .sf-v98-soap-realistic-wrap,
body:has(#sfV102SoapModelHost) .sf-v99-soap-realistic-wrap,
body:has(#sfV102SoapModelHost) .sf-v100-soap-realistic-wrap,
body:has(#sfV102SoapModelHost) .sf-v101-soap-realistic-wrap{display:none!important}

.sf-v102-soap-realistic-wrap{background:#fff!important;border:1px solid rgba(15,23,42,.12)!important;border-radius:14px!important;padding:9px!important;box-shadow:0 10px 24px rgba(15,23,42,.10)!important;color:#0f172a!important;max-width:340px!important;margin:0 auto!important}
.sf-v102-soap-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:0 0 6px!important;flex-wrap:nowrap!important}
.sf-v102-title-block{min-width:0!important;flex:1 1 auto!important}
.sf-v102-soap-model-title{font-size:13px!important;font-weight:950!important;color:#0f172a!important;margin:0 0 1px!important;line-height:1.05!important}
.sf-v102-soap-model-help{font-size:10px!important;color:#475569!important;line-height:1.2!important;margin:0!important}
.sf-v102-view-buttons{display:inline-flex!important;flex-direction:row!important;gap:4px!important;flex:0 0 auto!important;white-space:nowrap!important}
.sf-v102-view-buttons button{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:42px!important;height:20px!important;min-height:20px!important;padding:2px 7px!important;margin:0!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;box-shadow:none!important;font-size:9px!important;line-height:1!important;font-weight:950!important;cursor:pointer!important}
.sf-v102-view-buttons button.active{background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;color:#fff!important;border-color:rgba(31,111,234,.35)!important}
.sf-v102-muscle-model{position:relative!important;width:min(100%,300px)!important;margin:0 auto!important;background:#fff!important;border-radius:12px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.10),0 8px 18px rgba(15,23,42,.08)!important}
.sf-v102-muscle-model img{width:100%!important;height:auto!important;display:block!important;user-select:none!important;pointer-events:none!important}
.sf-v102-muscle-hotspot{position:absolute!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(14,165,233,.22)!important;border-radius:999px!important;background:rgba(14,165,233,.05)!important;cursor:pointer!important;padding:0!important;min-height:0!important;opacity:.5!important}
.sf-v102-muscle-hotspot:hover{opacity:1!important;background:rgba(14,165,233,.25)!important;box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 18px rgba(14,165,233,.24)!important}
.sf-v102-muscle-hotspot span{position:absolute!important;left:50%!important;bottom:calc(100% + 5px)!important;transform:translateX(-50%)!important;background:rgba(15,23,42,.96)!important;color:#fff!important;border-radius:8px!important;padding:4px 7px!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important;z-index:5!important}
.sf-v102-muscle-hotspot:hover span{opacity:1!important}
.sf-v102-muscle-chips{display:flex!important;flex-wrap:wrap!important;gap:5px!important;margin-top:7px!important;position:relative!important;z-index:1!important;clear:both!important}
.sf-v102-active-label{font-size:10px!important;font-weight:950!important;color:#0f172a!important;background:#f1f5f9!important;border-radius:999px!important;padding:5px 7px!important}
.sf-v102-muscle-chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 7px!important;border-radius:999px!important;color:#053344!important;background:linear-gradient(135deg,#ccfbf1,#e0f2fe)!important;font-size:10px!important;font-weight:900!important}
.sf-v102-muscle-chip button{width:16px!important;height:16px!important;min-height:16px!important;border:0!important;border-radius:999px!important;background:#ef4444!important;color:#fff!important;font-size:11px!important;line-height:1!important;cursor:pointer!important;display:inline-grid!important;place-items:center!important;padding:0!important}
.sf-v102-muscle-empty{color:#64748b!important;font-size:10px!important}
.sf-v102-soap-target.sf-v102-active-soap-field{outline:2px solid rgba(14,165,233,.6)!important;box-shadow:0 0 0 4px rgba(14,165,233,.12)!important}
.sf-v102-saved-soap-note{border:1px solid rgba(15,23,42,.12)!important;border-radius:14px!important;padding:12px!important;margin:10px 0!important;background:#fff!important;box-shadow:0 8px 18px rgba(15,23,42,.06)!important}
.sf-v102-note-head{display:flex!important;justify-content:space-between!important;gap:10px!important;font-size:13px!important;color:#0f172a!important}
.sf-v102-note-meta{font-size:11px!important;color:#64748b!important;margin:4px 0 8px!important}
.sf-v102-note-grid{display:grid!important;gap:6px!important;font-size:12px!important;color:#334155!important}
.sf-v102-note-actions{display:flex!important;gap:8px!important;margin-top:10px!important;flex-wrap:wrap!important}
.sf-v102-note-actions button{min-height:26px!important;padding:5px 9px!important;font-size:11px!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;font-weight:850!important;cursor:pointer!important}
@media(max-width:900px){
  body.soap-page .soap-anatomy-layout{grid-template-columns:1fr!important}
  body.soap-page .anatomy-viewer-card,body.soap-page .anatomy-note-panel{grid-column:1!important;position:relative!important;top:auto!important}
}



/* v103 hard override: SOAP left-column layout and stable login */
#globalLoginStatusBar.sf-v103-clean-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important; overflow:visible!important; z-index:99999!important;
}
#globalLoginStatusBar .sf-v103-login-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;min-height:48px!important}
#globalLoginStatusBar .sf-v103-status-left,#globalLoginStatusBar .sf-v103-actions{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important}
#globalLoginStatusBar .sf-v103-login-copy{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important;font-size:13px!important;font-weight:850!important}
#globalLoginStatusBar .sf-v103-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v103-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v103-avatar .login-avatar{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important;border-radius:999px!important;object-fit:cover!important;display:block!important;background:#fff!important;border:2px solid rgba(255,255,255,.78)!important}
#globalLoginStatusBar .sf-v103-avatar .login-avatar-fallback{display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;font-size:11.5px!important;font-weight:950!important;letter-spacing:.02em!important}
#globalLoginStatusBar .sf-v103-edit-profile-link{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 8px!important;min-height:24px!important;border-radius:999px!important;text-decoration:none!important;color:#0f2940!important;font-size:10.5px!important;font-weight:950!important;line-height:1!important;background:linear-gradient(135deg,#fff,#edfdf9)!important;border:1px solid rgba(255,255,255,.72)!important}
#globalLoginStatusBar .sf-v103-edit-icon{width:18px!important;height:18px!important;min-width:18px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important;color:#fff!important;background:linear-gradient(135deg,#7C3AED,#1F6FEA)!important}
#globalLoginStatusBar .sf-v103-edit-icon svg{width:11px!important;height:11px!important;fill:currentColor!important}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{display:none;position:absolute!important;right:0!important;top:calc(100% + 8px)!important;max-height:min(640px, calc(100vh - 78px))!important;overflow-y:auto!important;z-index:99999!important}
#globalLoginStatusBar .top-nav-dropdown.show,#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

body.soap-page .page-head h1{font-size:clamp(26px,3vw,40px)!important}
body.soap-page .soap-anatomy-layout,
body.soap-page .sf-v103-soap-layout{
  display:grid!important;
  grid-template-columns:minmax(260px,350px) minmax(420px,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
body.soap-page .anatomy-viewer-card,
body.soap-page .sf-v103-model-card{
  grid-column:1!important;
  grid-row:1!important;
  position:sticky!important;
  top:70px!important;
  align-self:start!important;
  padding:12px!important;
}
body.soap-page .anatomy-note-panel,
body.soap-page .sf-v103-note-card{
  grid-column:2!important;
  grid-row:1!important;
}
body.soap-page .selected-muscle-name{color:#0f172a!important}
body:has(#sfV103SoapModelHost) .sf-v96-soap-realistic-wrap,
body:has(#sfV103SoapModelHost) .sf-v97-soap-realistic-wrap,
body:has(#sfV103SoapModelHost) .sf-v98-soap-realistic-wrap,
body:has(#sfV103SoapModelHost) .sf-v99-soap-realistic-wrap,
body:has(#sfV103SoapModelHost) .sf-v100-soap-realistic-wrap,
body:has(#sfV103SoapModelHost) .sf-v101-soap-realistic-wrap,
body:has(#sfV103SoapModelHost) .sf-v102-soap-realistic-wrap{display:none!important}

.sf-v103-soap-realistic-wrap{background:#fff!important;border:1px solid rgba(15,23,42,.12)!important;border-radius:14px!important;padding:9px!important;box-shadow:0 10px 24px rgba(15,23,42,.10)!important;color:#0f172a!important;max-width:330px!important;margin:0 auto!important}
.sf-v103-soap-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:0 0 6px!important;flex-wrap:nowrap!important}
.sf-v103-title-block{min-width:0!important;flex:1 1 auto!important}
.sf-v103-soap-model-title{font-size:13px!important;font-weight:950!important;color:#0f172a!important;margin:0 0 1px!important;line-height:1.05!important}
.sf-v103-soap-model-help{font-size:10px!important;color:#475569!important;line-height:1.2!important;margin:0!important}
.sf-v103-view-buttons{display:inline-flex!important;flex-direction:row!important;gap:4px!important;flex:0 0 auto!important;white-space:nowrap!important}
.sf-v103-view-buttons button{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:42px!important;height:20px!important;min-height:20px!important;padding:2px 7px!important;margin:0!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;box-shadow:none!important;font-size:9px!important;line-height:1!important;font-weight:950!important;cursor:pointer!important}
.sf-v103-view-buttons button.active{background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;color:#fff!important;border-color:rgba(31,111,234,.35)!important}
.sf-v103-muscle-model{position:relative!important;width:min(100%,290px)!important;margin:0 auto!important;background:#fff!important;border-radius:12px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.10),0 8px 18px rgba(15,23,42,.08)!important}
.sf-v103-muscle-model img{width:100%!important;height:auto!important;display:block!important;user-select:none!important;pointer-events:none!important}
.sf-v103-muscle-hotspot{position:absolute!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(14,165,233,.22)!important;border-radius:999px!important;background:rgba(14,165,233,.05)!important;cursor:pointer!important;padding:0!important;min-height:0!important;opacity:.5!important}
.sf-v103-muscle-hotspot:hover{opacity:1!important;background:rgba(14,165,233,.25)!important;box-shadow:0 0 0 2px rgba(14,165,233,.38),0 0 18px rgba(14,165,233,.24)!important}
.sf-v103-muscle-hotspot span{position:absolute!important;left:50%!important;bottom:calc(100% + 5px)!important;transform:translateX(-50%)!important;background:rgba(15,23,42,.96)!important;color:#fff!important;border-radius:8px!important;padding:4px 7px!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important;z-index:5!important}
.sf-v103-muscle-hotspot:hover span{opacity:1!important}
.sf-v103-muscle-chips{display:flex!important;flex-wrap:wrap!important;gap:5px!important;margin-top:7px!important;position:relative!important;z-index:1!important;clear:both!important}
.sf-v103-active-label{font-size:10px!important;font-weight:950!important;color:#0f172a!important;background:#f1f5f9!important;border-radius:999px!important;padding:5px 7px!important}
.sf-v103-muscle-chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 7px!important;border-radius:999px!important;color:#053344!important;background:linear-gradient(135deg,#ccfbf1,#e0f2fe)!important;font-size:10px!important;font-weight:900!important}
.sf-v103-muscle-chip button{width:16px!important;height:16px!important;min-height:16px!important;border:0!important;border-radius:999px!important;background:#ef4444!important;color:#fff!important;font-size:11px!important;line-height:1!important;cursor:pointer!important;display:inline-grid!important;place-items:center!important;padding:0!important}
.sf-v103-muscle-empty{color:#64748b!important;font-size:10px!important}
.sf-v103-soap-target.sf-v103-active-soap-field{outline:2px solid rgba(14,165,233,.6)!important;box-shadow:0 0 0 4px rgba(14,165,233,.12)!important}
.sf-v103-saved-soap-note{border:1px solid rgba(15,23,42,.12)!important;border-radius:14px!important;padding:12px!important;margin:10px 0!important;background:#fff!important;box-shadow:0 8px 18px rgba(15,23,42,.06)!important}
.sf-v103-note-head{display:flex!important;justify-content:space-between!important;gap:10px!important;font-size:13px!important;color:#0f172a!important}
.sf-v103-note-meta{font-size:11px!important;color:#64748b!important;margin:4px 0 8px!important}
.sf-v103-note-grid{display:grid!important;gap:6px!important;font-size:12px!important;color:#334155!important}
.sf-v103-note-actions{display:flex!important;gap:8px!important;margin-top:10px!important;flex-wrap:wrap!important}
.sf-v103-note-actions button{min-height:26px!important;padding:5px 9px!important;font-size:11px!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;font-weight:850!important;cursor:pointer!important}
@media(max-width:900px){
  body.soap-page .soap-anatomy-layout,body.soap-page .sf-v103-soap-layout{grid-template-columns:1fr!important}
  body.soap-page .anatomy-viewer-card,body.soap-page .sf-v103-model-card,body.soap-page .anatomy-note-panel,body.soap-page .sf-v103-note-card{grid-column:1!important;grid-row:auto!important;position:relative!important;top:auto!important}
}



/* v105 no-flash login avatar: hide fallback initials while a real avatar is being hydrated */
html.sf-v105-avatar-hydrating #globalLoginStatusBar .login-avatar-fallback,
html.sf-v105-avatar-hydrating #globalLoginStatusBar [class*="avatar"] span.login-avatar,
html.sf-v105-avatar-hydrating #globalLoginStatusBar .sf-v103-avatar span,
html.sf-v105-avatar-hydrating #globalLoginStatusBar .sf-v102-avatar span,
html.sf-v105-avatar-hydrating #globalLoginStatusBar .sf-v100-avatar span,
html.sf-v105-avatar-hydrating #globalLoginStatusBar .sf-v99-avatar span,
html.sf-v105-avatar-hydrating #globalLoginStatusBar .sf-v98-avatar span{
  visibility:hidden !important;
  opacity:0 !important;
}

html.sf-v105-avatar-hydrating #globalLoginStatusBar img.login-avatar{
  visibility:visible !important;
  opacity:1 !important;
}

#globalLoginStatusBar img.login-avatar{
  transition:none !important;
}



/* v107 final SOAP/comments/avatar fixes */
#globalLoginStatusBar.sf-v107-avatar-pending .login-avatar-fallback,
#globalLoginStatusBar.sf-v107-has-photo .login-avatar-fallback{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
#globalLoginStatusBar.sf-v107-avatar-pending [class*="avatar"] span:not(.login-status-name):not(.login-status-role){
  display:none !important;
}
.sf-v107-saved-soap-note{
  border:1px solid rgba(15,23,42,.12)!important;
  border-radius:14px!important;
  padding:12px!important;
  margin:10px 0!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.06)!important;
}
.sf-v107-note-head{display:flex!important;justify-content:space-between!important;gap:10px!important;font-size:13px!important;color:#0f172a!important}
.sf-v107-note-meta{font-size:11px!important;color:#64748b!important;margin:4px 0 8px!important}
.sf-v107-note-grid{display:grid!important;gap:6px!important;font-size:12px!important;color:#334155!important}
.sf-v107-comments{margin-top:10px!important;padding-top:10px!important;border-top:1px solid rgba(15,23,42,.10)!important;font-size:12px!important}
.sf-v107-comment{background:#f8fafc!important;border:1px solid rgba(15,23,42,.08)!important;border-radius:10px!important;padding:8px!important;margin-top:6px!important}
.sf-v107-comment span{display:block!important;color:#64748b!important;font-size:10.5px!important;font-weight:850!important}
.sf-v107-comment p{margin:4px 0 0!important;color:#334155!important}
.sf-v107-note-actions{display:flex!important;gap:8px!important;margin-top:10px!important;flex-wrap:wrap!important}
.sf-v107-note-actions button,.sf-v107-comment-wrap button{min-height:26px!important;padding:5px 9px!important;font-size:11px!important;border-radius:999px!important;border:1px solid rgba(14,165,233,.25)!important;background:#f8fafc!important;color:#0f2940!important;font-weight:850!important;cursor:pointer!important}
.sf-v107-comment-wrap{display:grid!important;gap:8px!important;margin-top:8px!important}
.sf-v107-comment-wrap textarea{width:100%!important;border-radius:10px!important;border:1px solid rgba(15,23,42,.18)!important;padding:8px!important;font-size:12px!important}



/* v108 safe CSS: no observer loops */
#globalLoginStatusBar.sf-v108-has-photo .login-avatar-fallback,
#globalLoginStatusBar.sf-v108-has-photo [class*="avatar"] span.login-avatar{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
.sf-v108-saved-soap-note{
  border:1px solid rgba(15,23,42,.12)!important;
  border-radius:14px!important;
  padding:12px!important;
  margin:10px 0!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.06)!important;
}
.sf-v108-note-head{display:flex!important;justify-content:space-between!important;gap:10px!important;font-size:13px!important;color:#0f172a!important}
.sf-v108-note-meta{font-size:11px!important;color:#64748b!important;margin:4px 0 8px!important}
.sf-v108-note-grid{display:grid!important;gap:6px!important;font-size:12px!important;color:#334155!important}
.sf-v108-comments{margin-top:10px!important;padding-top:10px!important;border-top:1px solid rgba(15,23,42,.10)!important;font-size:12px!important}
.sf-v108-comment{background:#f8fafc!important;border:1px solid rgba(15,23,42,.08)!important;border-radius:10px!important;padding:8px!important;margin-top:6px!important}
.sf-v108-comment span{display:block!important;color:#64748b!important;font-size:10.5px!important;font-weight:850!important}
.sf-v108-comment p{margin:4px 0 0!important;color:#334155!important}
.sf-v108-note-actions{display:flex!important;gap:8px!important;margin-top:10px!important;flex-wrap:wrap!important}
.sf-v108-note-actions button,.sf-v108-comment-wrap button{
  min-height:26px!important;
  padding:5px 9px!important;
  font-size:11px!important;
  border-radius:999px!important;
  border:1px solid rgba(14,165,233,.25)!important;
  background:#f8fafc!important;
  color:#0f2940!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.sf-v108-comment-wrap{display:grid!important;gap:8px!important;margin-top:8px!important}
.sf-v108-comment-wrap textarea{width:100%!important;border-radius:10px!important;border:1px solid rgba(15,23,42,.18)!important;padding:8px!important;font-size:12px!important}



/* v109 SOAP client-specific history */
.sf-v109-client-required{
  margin:10px 0 !important;
  padding:10px 12px !important;
  border-radius:12px !important;
  background:#f8fafc !important;
  border:1px solid rgba(15,23,42,.10) !important;
  color:#475569 !important;
  font-size:13px !important;
  font-weight:750 !important;
}
.sf-v109-saved-soap-note{
  border:1px solid rgba(15,23,42,.12)!important;
  border-radius:14px!important;
  padding:12px!important;
  margin:10px 0!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.06)!important;
}
.sf-v109-note-head{display:flex!important;justify-content:space-between!important;gap:10px!important;font-size:13px!important;color:#0f172a!important}
.sf-v109-note-meta{font-size:11px!important;color:#64748b!important;margin:4px 0 8px!important}
.sf-v109-note-grid{display:grid!important;gap:6px!important;font-size:12px!important;color:#334155!important}
.sf-v109-comments{margin-top:10px!important;padding-top:10px!important;border-top:1px solid rgba(15,23,42,.10)!important;font-size:12px!important}
.sf-v109-comment{background:#f8fafc!important;border:1px solid rgba(15,23,42,.08)!important;border-radius:10px!important;padding:8px!important;margin-top:6px!important}
.sf-v109-comment span{display:block!important;color:#64748b!important;font-size:10.5px!important;font-weight:850!important}
.sf-v109-comment p{margin:4px 0 0!important;color:#334155!important}
.sf-v109-note-actions{display:flex!important;gap:8px!important;margin-top:10px!important;flex-wrap:wrap!important}
.sf-v109-note-actions button{
  min-height:26px!important;
  padding:5px 9px!important;
  font-size:11px!important;
  border-radius:999px!important;
  border:1px solid rgba(14,165,233,.25)!important;
  background:#f8fafc!important;
  color:#0f2940!important;
  font-weight:850!important;
  cursor:pointer!important;
}



/* v110 SOAP add-comment close/discard UI */
.sf-v110-comment-wrap{
  display:grid !important;
  gap:8px !important;
  margin-top:8px !important;
  padding:10px !important;
  border:1px solid rgba(15,23,42,.14) !important;
  border-radius:12px !important;
  background:#f8fafc !important;
}
.sf-v110-comment-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
.sf-v110-comment-head strong{
  color:#0f172a !important;
  font-size:12px !important;
  font-weight:950 !important;
}
.sf-v110-comment-x{
  width:24px !important;
  height:24px !important;
  min-height:24px !important;
  border-radius:999px !important;
  border:1px solid rgba(239,68,68,.25) !important;
  background:#fff !important;
  color:#dc2626 !important;
  font-size:18px !important;
  line-height:1 !important;
  font-weight:950 !important;
  padding:0 !important;
  cursor:pointer !important;
  display:inline-grid !important;
  place-items:center !important;
}
.sf-v110-comment-x:hover{
  background:#fee2e2 !important;
}
.sf-v110-comment-wrap textarea{
  width:100% !important;
  border-radius:10px !important;
  border:1px solid rgba(15,23,42,.18) !important;
  padding:8px !important;
  font-size:12px !important;
  resize:vertical !important;
  background:#fff !important;
}
.sf-v110-comment-actions{
  display:flex !important;
  justify-content:flex-start !important;
  gap:8px !important;
}
.sf-v110-save-comment{
  min-height:26px !important;
  padding:5px 9px !important;
  font-size:11px !important;
  border-radius:999px !important;
  border:1px solid rgba(14,165,233,.25) !important;
  background:#f8fafc !important;
  color:#0f2940 !important;
  font-weight:850 !important;
  cursor:pointer !important;
}



/* v111 phone formatting helper */
input[data-sf-v111-phone-formatted="true"]{
  letter-spacing:.01em;
}



/* v112 SOAP comment close choice */
.sf-v112-close-choice{
  display:none;
  gap:8px;
  margin-top:8px;
  padding:10px;
  border-radius:12px;
  border:1px solid rgba(239,68,68,.22);
  background:#fff7ed;
}
.sf-v112-close-message{
  font-size:12px;
  font-weight:900;
  color:#7c2d12;
}
.sf-v112-close-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sf-v112-close-actions button{
  min-height:28px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  font-size:11px !important;
  font-weight:900 !important;
  cursor:pointer !important;
}
.sf-v112-save-exit{
  border:1px solid rgba(14,165,233,.35) !important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA) !important;
  color:#fff !important;
}
.sf-v112-exit-nosave{
  border:1px solid rgba(239,68,68,.28) !important;
  background:#fee2e2 !important;
  color:#991b1b !important;
}
.sf-v112-cancel-close{
  border:1px solid rgba(15,23,42,.14) !important;
  background:#fff !important;
  color:#334155 !important;
}



/* v114 no-glitch login bar: hide until the final renderer is ready */
html.sf-v114-login-prehide #globalLoginStatusBar{
  visibility:hidden !important;
  opacity:0 !important;
}
#globalLoginStatusBar.sf-v114-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#globalLoginStatusBar .sf-v114-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
}
#globalLoginStatusBar .sf-v114-status-left,
#globalLoginStatusBar .sf-v114-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#globalLoginStatusBar .sf-v114-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#globalLoginStatusBar .sf-v114-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v114-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v114-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#globalLoginStatusBar .sf-v114-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#globalLoginStatusBar .sf-v114-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

.sf-v114-comment-wrap{
  display:grid!important;
  gap:8px!important;
  margin-top:8px!important;
  padding:10px!important;
  border:1px solid rgba(15,23,42,.14)!important;
  border-radius:12px!important;
  background:#f8fafc!important;
}
.sf-v114-comment-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.sf-v114-comment-head strong{
  color:#0f172a!important;
  font-size:12px!important;
  font-weight:950!important;
}
.sf-v114-comment-x{
  width:24px!important;
  height:24px!important;
  min-height:24px!important;
  border-radius:999px!important;
  border:1px solid rgba(239,68,68,.25)!important;
  background:#fff!important;
  color:#dc2626!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:950!important;
  padding:0!important;
  cursor:pointer!important;
  display:inline-grid!important;
  place-items:center!important;
}
.sf-v114-comment-x:hover{background:#fee2e2!important}
.sf-v114-comment-wrap textarea{
  width:100%!important;
  border-radius:10px!important;
  border:1px solid rgba(15,23,42,.18)!important;
  padding:8px!important;
  font-size:12px!important;
  resize:vertical!important;
  background:#fff!important;
}
.sf-v114-comment-actions,
.sf-v114-close-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.sf-v114-close-choice{
  gap:8px!important;
  margin-top:8px!important;
  padding:10px!important;
  border-radius:12px!important;
  border:1px solid rgba(239,68,68,.22)!important;
  background:#fff7ed!important;
}
.sf-v114-close-message{
  font-size:12px!important;
  font-weight:900!important;
  color:#7c2d12!important;
}
.sf-v114-comment-actions button,
.sf-v114-close-actions button{
  min-height:28px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.sf-v114-save-comment,
.sf-v114-save-exit{
  border:1px solid rgba(14,165,233,.35)!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  color:#fff!important;
}
.sf-v114-exit-nosave{
  border:1px solid rgba(239,68,68,.28)!important;
  background:#fee2e2!important;
  color:#991b1b!important;
}
.sf-v114-cancel-close{
  border:1px solid rgba(15,23,42,.14)!important;
  background:#fff!important;
  color:#334155!important;
}



/* v115 hard no-flicker login + reliable SOAP comment choice panel */
#globalLoginStatusBar:not(.sf-v115-ready){
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#globalLoginStatusBar.sf-v115-ready{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#globalLoginStatusBar.sf-v115-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#globalLoginStatusBar .sf-v115-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
}
#globalLoginStatusBar .sf-v115-status-left,
#globalLoginStatusBar .sf-v115-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#globalLoginStatusBar .sf-v115-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#globalLoginStatusBar .sf-v115-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v115-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v115-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#globalLoginStatusBar .sf-v115-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#globalLoginStatusBar .sf-v115-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

.sf-v115-comment-wrap{
  display:grid!important;
  gap:8px!important;
  margin-top:8px!important;
  padding:10px!important;
  border:1px solid rgba(15,23,42,.14)!important;
  border-radius:12px!important;
  background:#f8fafc!important;
}
.sf-v115-comment-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.sf-v115-comment-head strong{
  color:#0f172a!important;
  font-size:12px!important;
  font-weight:950!important;
}
.sf-v115-comment-x{
  width:24px!important;
  height:24px!important;
  min-height:24px!important;
  border-radius:999px!important;
  border:1px solid rgba(239,68,68,.25)!important;
  background:#fff!important;
  color:#dc2626!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:950!important;
  padding:0!important;
  cursor:pointer!important;
  display:inline-grid!important;
  place-items:center!important;
}
.sf-v115-comment-x:hover{background:#fee2e2!important}
.sf-v115-comment-wrap textarea{
  width:100%!important;
  border-radius:10px!important;
  border:1px solid rgba(15,23,42,.18)!important;
  padding:8px!important;
  font-size:12px!important;
  resize:vertical!important;
  background:#fff!important;
}
.sf-v115-comment-actions,
.sf-v115-close-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.sf-v115-close-choice{
  gap:8px!important;
  margin-top:8px!important;
  padding:10px!important;
  border-radius:12px!important;
  border:1px solid rgba(239,68,68,.22)!important;
  background:#fff7ed!important;
}
.sf-v115-close-message{
  font-size:12px!important;
  font-weight:900!important;
  color:#7c2d12!important;
}
.sf-v115-comment-actions button,
.sf-v115-close-actions button{
  min-height:28px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.sf-v115-save-comment,
.sf-v115-save-exit{
  border:1px solid rgba(14,165,233,.35)!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  color:#fff!important;
}
.sf-v115-exit-nosave{
  border:1px solid rgba(239,68,68,.28)!important;
  background:#fee2e2!important;
  color:#991b1b!important;
}
.sf-v115-cancel-close{
  border:1px solid rgba(15,23,42,.14)!important;
  background:#fff!important;
  color:#334155!important;
}



/* v116 logged-in sidebar transparent logo with soft SpaFlow glow */
.sidebar .brand,
.sidebar-brand,
.side-brand,
.app-sidebar .brand,
.app-sidebar .sidebar-brand,
.dashboard-sidebar .brand,
.staff-sidebar .brand,
nav.sidebar .brand,
aside .brand,
aside .sidebar-brand,
.sf-sidebar-brand,
.logo-lockup,
.sidebar-logo-wrap,
.sidebar-logo,
.side-logo{
  background:transparent !important;
  box-shadow:none !important;
}

.sidebar .brand img,
.sidebar-brand img,
.side-brand img,
.app-sidebar .brand img,
.app-sidebar .sidebar-brand img,
.dashboard-sidebar .brand img,
.staff-sidebar .brand img,
nav.sidebar .brand img,
aside .brand img,
aside .sidebar-brand img,
.sf-sidebar-brand img,
.logo-lockup img,
.sidebar-logo-wrap img,
.sidebar-logo img,
.side-logo img,
img[src*="spaflow-logo"],
img[src*="spaflow"]{
  background:transparent !important;
  mix-blend-mode:normal !important;
  border-radius:22px !important;
  filter:
    drop-shadow(0 0 10px rgba(18,191,196,.48))
    drop-shadow(0 0 22px rgba(31,111,234,.30))
    drop-shadow(0 10px 24px rgba(2,8,23,.18)) !important;
}

.sidebar .brand,
.sidebar-brand,
.side-brand,
.app-sidebar .brand,
.app-sidebar .sidebar-brand,
.dashboard-sidebar .brand,
.staff-sidebar .brand,
nav.sidebar .brand,
aside .brand,
aside .sidebar-brand,
.sf-sidebar-brand,
.logo-lockup,
.sidebar-logo-wrap{
  position:relative !important;
  isolation:isolate !important;
}

.sidebar .brand::before,
.sidebar-brand::before,
.side-brand::before,
.app-sidebar .brand::before,
.app-sidebar .sidebar-brand::before,
.dashboard-sidebar .brand::before,
.staff-sidebar .brand::before,
nav.sidebar .brand::before,
aside .brand::before,
aside .sidebar-brand::before,
.sf-sidebar-brand::before,
.logo-lockup::before,
.sidebar-logo-wrap::before{
  content:"" !important;
  position:absolute !important;
  inset:6px 10px !important;
  z-index:-1 !important;
  pointer-events:none !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(18,191,196,.30), rgba(31,111,234,.16) 42%, rgba(255,255,255,0) 72%) !important;
  filter:blur(10px) !important;
  opacity:.95 !important;
}

/* Keep logged-in left navigation logo panel see-through instead of boxed */
.sidebar .brand-card,
.sidebar-logo-card,
.logo-card,
.app-sidebar .brand-card,
.dashboard-sidebar .brand-card,
.staff-sidebar .brand-card{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

/* If any older logo renderer placed a white tile behind the image, remove it */
.sidebar [class*="logo"],
aside [class*="logo"],
.app-sidebar [class*="logo"],
.dashboard-sidebar [class*="logo"],
.staff-sidebar [class*="logo"]{
  background-color:transparent !important;
}



/* v117 corrected login visibility: never let old v115 critical rules make the bar disappear */
#globalLoginStatusBar.sf-v117-ready,
#globalLoginStatusBar.sf-v115-ready,
#globalLoginStatusBar.sf-v114-login-bar,
#globalLoginStatusBar.sf-v117-login-bar{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
html.sf-v117-login-stabilizing #globalLoginStatusBar:not(.sf-v117-ready){
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#globalLoginStatusBar.sf-v117-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#globalLoginStatusBar .sf-v117-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
}
#globalLoginStatusBar .sf-v117-status-left,
#globalLoginStatusBar .sf-v117-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#globalLoginStatusBar .sf-v117-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#globalLoginStatusBar .sf-v117-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v117-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v117-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#globalLoginStatusBar .sf-v117-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#globalLoginStatusBar .sf-v117-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}



/* v118 final login content guard: wrong old renderers may run, but their content is never visible */
#globalLoginStatusBar:not(.sf-v118-final){
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
  min-height:48px !important;
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
  color:transparent !important;
  overflow:hidden !important;
}
#globalLoginStatusBar:not(.sf-v118-final) > *{
  visibility:hidden !important;
  opacity:0 !important;
}
#globalLoginStatusBar.sf-v118-final,
#globalLoginStatusBar.sf-v118-final > *{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#globalLoginStatusBar.sf-v118-login-bar{
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#globalLoginStatusBar .sf-v118-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
}
#globalLoginStatusBar .sf-v118-status-left,
#globalLoginStatusBar .sf-v118-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#globalLoginStatusBar .sf-v118-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#globalLoginStatusBar .sf-v118-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v118-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v118-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#globalLoginStatusBar .sf-v118-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#globalLoginStatusBar .sf-v118-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}



/* v119 logged-in sidebar logo: true transparent asset with glow around only logo text/icon */
.sidebar-logo-card,
.logo-card,
.brand-card,
.sidebar .brand-card,
.sidebar .brand,
.sidebar-brand,
.side-brand,
.app-sidebar .brand,
.app-sidebar .sidebar-brand,
.dashboard-sidebar .brand,
.staff-sidebar .brand,
nav.sidebar .brand,
aside .brand,
aside .sidebar-brand,
.sf-sidebar-brand,
.logo-lockup,
.sidebar-logo-wrap,
.sidebar-logo,
.side-logo,
.sf-v116-transparent-logo-host{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border-color:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}

.sidebar .brand::before,
.sidebar-brand::before,
.side-brand::before,
.app-sidebar .brand::before,
.app-sidebar .sidebar-brand::before,
.dashboard-sidebar .brand::before,
.staff-sidebar .brand::before,
nav.sidebar .brand::before,
aside .brand::before,
aside .sidebar-brand::before,
.sf-sidebar-brand::before,
.logo-lockup::before,
.sidebar-logo-wrap::before,
.sidebar-logo::before,
.side-logo::before,
.sf-v116-transparent-logo-host::before{
  display:none !important;
  content:none !important;
}

.sidebar img.sf-v119-sidebar-logo,
aside img.sf-v119-sidebar-logo,
.app-sidebar img.sf-v119-sidebar-logo,
.dashboard-sidebar img.sf-v119-sidebar-logo,
.staff-sidebar img.sf-v119-sidebar-logo,
nav img.sf-v119-sidebar-logo{
  background:transparent !important;
  background-color:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  filter:
    drop-shadow(0 0 4px rgba(255,255,255,.35))
    drop-shadow(0 0 8px rgba(18,191,196,.54))
    drop-shadow(0 0 16px rgba(31,111,234,.38)) !important;
  mix-blend-mode:normal !important;
}

/* Remove glow/box from the overall image rectangle. The PNG itself carries glow around the logo pixels only. */
.sidebar img[src*="spaflow-logo-transparent-glow"],
aside img[src*="spaflow-logo-transparent-glow"],
.app-sidebar img[src*="spaflow-logo-transparent-glow"],
.dashboard-sidebar img[src*="spaflow-logo-transparent-glow"],
.staff-sidebar img[src*="spaflow-logo-transparent-glow"],
nav img[src*="spaflow-logo-transparent-glow"]{
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
}



/* v120 logged-in left sidebar logo: true transparent PNG, glow only around logo pixels */
.sidebar .brand,
.sidebar-brand,
.side-brand,
.app-sidebar .brand,
.app-sidebar .sidebar-brand,
.dashboard-sidebar .brand,
.staff-sidebar .brand,
nav.sidebar .brand,
aside .brand,
aside .sidebar-brand,
.sf-sidebar-brand,
.logo-lockup,
.sidebar-logo-wrap,
.sidebar-logo,
.side-logo,
.brand-card,
.sidebar-logo-card,
.logo-card,
.sf-v116-transparent-logo-host,
.sf-v119-transparent-logo-host,
.sf-v120-transparent-logo-host{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border-color:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.sidebar .brand::before,
.sidebar-brand::before,
.side-brand::before,
.app-sidebar .brand::before,
.app-sidebar .sidebar-brand::before,
.dashboard-sidebar .brand::before,
.staff-sidebar .brand::before,
nav.sidebar .brand::before,
aside .brand::before,
aside .sidebar-brand::before,
.sf-sidebar-brand::before,
.logo-lockup::before,
.sidebar-logo-wrap::before,
.sidebar-logo::before,
.side-logo::before,
.sf-v116-transparent-logo-host::before,
.sf-v119-transparent-logo-host::before,
.sf-v120-transparent-logo-host::before,
.sidebar .brand::after,
.sidebar-brand::after,
.side-brand::after,
.app-sidebar .brand::after,
.app-sidebar .sidebar-brand::after,
.dashboard-sidebar .brand::after,
.staff-sidebar .brand::after,
nav.sidebar .brand::after,
aside .brand::after,
aside .sidebar-brand::after,
.sf-sidebar-brand::after,
.logo-lockup::after,
.sidebar-logo-wrap::after,
.sidebar-logo::after,
.side-logo::after,
.sf-v116-transparent-logo-host::after,
.sf-v119-transparent-logo-host::after,
.sf-v120-transparent-logo-host::after{
  display:none !important;
  content:none !important;
  background:none !important;
  box-shadow:none !important;
}

.sidebar img.sf-v120-sidebar-logo,
aside img.sf-v120-sidebar-logo,
.app-sidebar img.sf-v120-sidebar-logo,
.dashboard-sidebar img.sf-v120-sidebar-logo,
.staff-sidebar img.sf-v120-sidebar-logo,
nav img.sf-v120-sidebar-logo,
img[src*="spaflow-sidebar-logo-transparent-glow-v120"]{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  outline:0 !important;
  filter:none !important; /* the PNG itself contains the glow around text/icon only */
  mix-blend-mode:normal !important;
  object-fit:contain !important;
  display:block !important;
}

/* Force any white logo panels on the left nav area to disappear */
.sidebar [class*="logo"],
aside [class*="logo"],
.app-sidebar [class*="logo"],
.dashboard-sidebar [class*="logo"],
.staff-sidebar [class*="logo"],
.sidebar [class*="brand"],
aside [class*="brand"],
.app-sidebar [class*="brand"],
.dashboard-sidebar [class*="brand"],
.staff-sidebar [class*="brand"]{
  background-color:transparent !important;
  background-image:none !important;
}



/* v121 hard content lock: hide old/wrong login content, never the final v121 content */
#globalLoginStatusBar{
  visibility:visible !important;
  opacity:1 !important;
  min-height:48px !important;
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
}
#globalLoginStatusBar > *:not([data-sf-v121-final-login]){
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#globalLoginStatusBar > [data-sf-v121-final-login]{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#globalLoginStatusBar.sf-v121-login-bar{
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#globalLoginStatusBar .sf-v121-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
}
#globalLoginStatusBar .sf-v121-status-left,
#globalLoginStatusBar .sf-v121-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#globalLoginStatusBar .sf-v121-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#globalLoginStatusBar .sf-v121-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v121-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v121-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#globalLoginStatusBar .sf-v121-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#globalLoginStatusBar .sf-v121-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}



/* v122 visual lock: no wrong login text/images or wrong sidebar logos are visible */
#globalLoginStatusBar{
  visibility:visible !important;
  opacity:1 !important;
  min-height:48px !important;
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%) !important;
}
#globalLoginStatusBar > *:not([data-sf-v122-final-login]){
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#globalLoginStatusBar > [data-sf-v122-final-login]{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#globalLoginStatusBar.sf-v122-login-bar{
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#globalLoginStatusBar .sf-v122-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
}
#globalLoginStatusBar .sf-v122-status-left,
#globalLoginStatusBar .sf-v122-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#globalLoginStatusBar .sf-v122-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#globalLoginStatusBar .sf-v122-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v122-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#globalLoginStatusBar .sf-v122-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#globalLoginStatusBar .sf-v122-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#globalLoginStatusBar .sf-v122-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#globalLoginStatusBar .top-nav-menu{position:relative!important}
#globalLoginStatusBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#globalLoginStatusBar .top-nav-dropdown.show,
#globalLoginStatusBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

.sidebar img[src*="spaflow"]:not([data-sf-v122-final-logo]),
aside img[src*="spaflow"]:not([data-sf-v122-final-logo]),
.app-sidebar img[src*="spaflow"]:not([data-sf-v122-final-logo]),
.dashboard-sidebar img[src*="spaflow"]:not([data-sf-v122-final-logo]),
.staff-sidebar img[src*="spaflow"]:not([data-sf-v122-final-logo]),
nav.sidebar img[src*="spaflow"]:not([data-sf-v122-final-logo]){
  visibility:hidden!important;
  opacity:0!important;
}
.sidebar img[data-sf-v122-final-logo],
aside img[data-sf-v122-final-logo],
.app-sidebar img[data-sf-v122-final-logo],
.dashboard-sidebar img[data-sf-v122-final-logo],
.staff-sidebar img[data-sf-v122-final-logo],
nav.sidebar img[data-sf-v122-final-logo]{
  visibility:visible!important;
  opacity:1!important;
}
.sf-v122-transparent-logo-host,
.sf-v120-transparent-logo-host,
.sf-v119-transparent-logo-host,
.sf-v116-transparent-logo-host{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border-color:transparent!important;
  backdrop-filter:none!important;
}
img.sf-v122-sidebar-logo{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
  border-radius:0!important;
  filter:none!important;
  object-fit:contain!important;
}



/* v123 no-compete top login bar and sidebar logo */
#globalLoginStatusBar{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
#sfV123TopLoginBar{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:48px!important;
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#sfV123TopLoginBar .sf-v123-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-height:48px!important;
  padding:0 18px!important;
  box-sizing:border-box!important;
}
#sfV123TopLoginBar .sf-v123-status-left,
#sfV123TopLoginBar .sf-v123-actions{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
#sfV123TopLoginBar .sf-v123-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#sfV123TopLoginBar .sf-v123-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#sfV123TopLoginBar .sf-v123-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#sfV123TopLoginBar .sf-v123-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#sfV123TopLoginBar .sf-v123-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#sfV123TopLoginBar .sf-v123-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#sfV123TopLoginBar .top-nav-menu{position:relative!important}
#sfV123TopLoginBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#sfV123TopLoginBar .top-nav-dropdown.show,
#sfV123TopLoginBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

.sidebar img[src*="spaflow"]:not(#sfV123SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV123SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV123SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV123SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV123SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV123SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}
#sfV123SidebarLogoHost,
.sf-v123-sidebar-logo-host{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:14px 12px 16px!important;
  margin:0 auto 8px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
#sfV123SidebarLogoImg,
.sf-v123-sidebar-logo{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:180px!important;
  width:86%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
}
#sfV123SidebarLogoHost *,
.sf-v123-sidebar-logo-host *{
  background-color:transparent!important;
}



/* v124 corrected login bar alignment and image display */
#sfV123TopLoginBar{
  display:none!important;
}
#sfV124TopLoginBar{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:none!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#sfV124TopLoginBar .sf-v124-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  max-width:1280px!important;
  min-height:48px!important;
  margin:0 auto!important;
  padding:0 18px!important;
  box-sizing:border-box!important;
}
#sfV124TopLoginBar .sf-v124-status-left{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  white-space:nowrap!important;
  min-width:0!important;
}
#sfV124TopLoginBar .sf-v124-actions{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  white-space:nowrap!important;
  margin-left:auto!important;
}
#sfV124TopLoginBar .sf-v124-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#sfV124TopLoginBar .sf-v124-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#sfV124TopLoginBar .sf-v124-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#sfV124TopLoginBar .sf-v124-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#sfV124TopLoginBar .sf-v124-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#sfV124TopLoginBar .sf-v124-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#sfV124TopLoginBar .top-nav-menu{position:relative!important}
#sfV124TopLoginBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#sfV124TopLoginBar .top-nav-dropdown.show,
#sfV124TopLoginBar .top-nav-menu.open .top-nav-dropdown{display:block!important}
@media(max-width:760px){
  #sfV124TopLoginBar .sf-v124-login-inner{
    flex-wrap:wrap!important;
    justify-content:center!important;
    padding:8px 12px!important;
  }
  #sfV124TopLoginBar .sf-v124-actions{
    margin-left:0!important;
  }
}



/* v125 no-loop top bar and sidebar logo */
#globalLoginStatusBar,
#sfV123TopLoginBar,
#sfV124TopLoginBar{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
#sfV125TopLoginBar{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:none!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;
  color:#fff!important;
  overflow:visible!important;
  z-index:99999!important;
}
#sfV125TopLoginBar .sf-v125-login-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  max-width:1280px!important;
  min-height:48px!important;
  margin:0 auto!important;
  padding:0 18px!important;
  box-sizing:border-box!important;
}
#sfV125TopLoginBar .sf-v125-status-left{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  white-space:nowrap!important;
  min-width:0!important;
}
#sfV125TopLoginBar .sf-v125-actions{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  white-space:nowrap!important;
  margin-left:auto!important;
}
#sfV125TopLoginBar .sf-v125-login-copy{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.3)!important;
  font-size:13px!important;
  font-weight:850!important;
}
#sfV125TopLoginBar .sf-v125-login-copy .login-status-name{color:#fff!important;font-weight:950!important}
#sfV125TopLoginBar .sf-v125-login-copy .login-status-role{color:#dffaff!important;font-weight:950!important}
#sfV125TopLoginBar .sf-v125-avatar .login-avatar{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.78)!important;
}
#sfV125TopLoginBar .sf-v125-avatar .login-avatar-fallback{
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  background:linear-gradient(135deg,#12BFC4,#1F6FEA)!important;
  font-size:11.5px!important;
  font-weight:950!important;
}
#sfV125TopLoginBar .sf-v125-edit-profile-link{
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 8px!important;
  min-height:24px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  color:#0f2940!important;
  font-size:10.5px!important;
  font-weight:950!important;
  background:linear-gradient(135deg,#fff,#edfdf9)!important;
}
#sfV125TopLoginBar .top-nav-menu{position:relative!important}
#sfV125TopLoginBar .top-nav-dropdown{
  display:none;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  z-index:99999!important;
  max-height:min(640px, calc(100vh - 78px))!important;
  overflow-y:auto!important;
}
#sfV125TopLoginBar .top-nav-dropdown.show,
#sfV125TopLoginBar .top-nav-menu.open .top-nav-dropdown{display:block!important}

.sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}
#sfV125SidebarLogoHost,
.sf-v125-sidebar-logo-host{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:14px 12px 16px!important;
  margin:0 auto 8px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
#sfV125SidebarLogoImg,
.sf-v125-sidebar-logo{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:180px!important;
  width:86%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
}
@media(max-width:760px){
  #sfV125TopLoginBar .sf-v125-login-inner{
    flex-wrap:wrap!important;
    justify-content:center!important;
    padding:8px 12px!important;
  }
  #sfV125TopLoginBar .sf-v125-actions{
    margin-left:0!important;
  }
}



/* v126 restore the logged-in left sidebar logo while keeping old competing logos hidden */
#sfV126SidebarLogoHost,
.sf-v126-sidebar-logo-host{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:14px 12px 16px!important;
  margin:0 auto 8px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:5!important;
}

#sfV126SidebarLogoImg,
.sf-v126-sidebar-logo{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:180px!important;
  width:86%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:6!important;
}

/* Hide only old logo images; never hide the v126 restored logo */
.sidebar img[src*="spaflow"]:not(#sfV126SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV126SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV126SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV126SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV126SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV126SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}

/* Undo v125 hiding for the restored logo if the browser sees it as a SpaFlow image */
.sidebar #sfV126SidebarLogoImg,
aside #sfV126SidebarLogoImg,
.app-sidebar #sfV126SidebarLogoImg,
.dashboard-sidebar #sfV126SidebarLogoImg,
.staff-sidebar #sfV126SidebarLogoImg,
nav.sidebar #sfV126SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}



/* v127 restored left sidebar logo: allowed through the critical CSS guard */
#sfV127SidebarLogoHost,
.sf-v127-sidebar-logo-host{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:14px 12px 16px!important;
  margin:0 auto 8px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:100!important;
}

#sfV127SidebarLogoImg,
.sf-v127-sidebar-logo{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:180px!important;
  width:86%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:101!important;
}

/* Hide old logos, but explicitly allow the restored v127 logo */
.sidebar img[src*="spaflow"]:not(#sfV127SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV127SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV127SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV127SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV127SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV127SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}

.sidebar #sfV127SidebarLogoImg,
aside #sfV127SidebarLogoImg,
.app-sidebar #sfV127SidebarLogoImg,
.dashboard-sidebar #sfV127SidebarLogoImg,
.staff-sidebar #sfV127SidebarLogoImg,
nav.sidebar #sfV127SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}



/* v128 final top-bar button formatting restore */
#sfV125TopLoginBar .sf-v125-logout-button,
#sfV125TopLoginBar button.sf-v125-logout-button,
#sfV125TopLoginBar .sf-v125-actions > button,
#sfV125TopLoginBar .sf-v125-actions > a,
#sfV125TopLoginBar .top-nav-menu-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.46)!important;
  background:rgba(255,255,255,.96)!important;
  color:#073b58!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 6px 16px rgba(2,8,23,.14)!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
#sfV125TopLoginBar .sf-v125-logout-button:hover,
#sfV125TopLoginBar .sf-v125-actions > button:hover,
#sfV125TopLoginBar .sf-v125-actions > a:hover,
#sfV125TopLoginBar .top-nav-menu-button:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 8px 20px rgba(2,8,23,.20)!important;
}

/* v128 final static authenticated sidebar logo */
#sfV128SidebarLogoHost,
a#sfV128SidebarLogoHost.logo,
.sidebar #sfV128SidebarLogoHost{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:16px 12px 18px!important;
  margin:0 auto 10px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:1000!important;
  text-decoration:none!important;
}
#sfV128SidebarLogoImg,
img#sfV128SidebarLogoImg,
.sidebar #sfV128SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:190px!important;
  width:88%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:1001!important;
}

/* Hide only legacy sidebar SpaFlow logo images, never the final v128 logo */
.sidebar img[src*="spaflow"]:not(#sfV128SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV128SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV128SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV128SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV128SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV128SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}



/* v129 stable authenticated sidebar logo using v125-compatible ID */
#sfV125SidebarLogoHost,
a#sfV125SidebarLogoHost.logo,
.sidebar #sfV125SidebarLogoHost{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:16px 12px 18px!important;
  margin:0 auto 10px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:1000!important;
  text-decoration:none!important;
}

#sfV125SidebarLogoImg,
img#sfV125SidebarLogoImg,
.sidebar #sfV125SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:190px!important;
  width:88%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:1001!important;
}

/* Hide only legacy sidebar SpaFlow logo images, never the stable final v125-id logo */
.sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}

/* v129 restore logout button formatting if earlier CSS was overridden */
#sfV125TopLoginBar .sf-v125-logout-button,
#sfV125TopLoginBar button.sf-v125-logout-button,
#sfV125TopLoginBar .sf-v125-actions > button,
#sfV125TopLoginBar .top-nav-menu-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.46)!important;
  background:rgba(255,255,255,.96)!important;
  color:#073b58!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 6px 16px rgba(2,8,23,.14)!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}



/* v130 restored categorized top dropdown menu styling */
#sfV125TopLoginBar .top-nav-dropdown{
  min-width:260px!important;
  max-width:340px!important;
  padding:10px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  border:1px solid rgba(15,41,64,.12)!important;
  box-shadow:0 18px 46px rgba(2,8,23,.22)!important;
  color:#123!important;
}
#sfV125TopLoginBar .top-nav-dropdown .nav-section-label{
  display:block!important;
  padding:10px 10px 6px!important;
  margin-top:4px!important;
  color:#087f93!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
#sfV125TopLoginBar .top-nav-dropdown a{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:34px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  color:#12384f!important;
  background:transparent!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:850!important;
  text-decoration:none!important;
  box-shadow:none!important;
  border:0!important;
}
#sfV125TopLoginBar .top-nav-dropdown a:hover{
  background:linear-gradient(135deg,rgba(18,191,196,.10),rgba(31,111,234,.08))!important;
  color:#064d68!important;
}



/* v131 cleaner compact dropdown menu typography */
#sfV125TopLoginBar .top-nav-dropdown{
  min-width:250px!important;
  max-width:320px!important;
  padding:6px!important;
  border-radius:14px!important;
  background:#ffffff!important;
  border:1px solid rgba(15,41,64,.12)!important;
  box-shadow:0 16px 36px rgba(2,8,23,.20)!important;
  color:#123!important;
}
#sfV125TopLoginBar .top-nav-dropdown .nav-section-label{
  display:block!important;
  padding:7px 8px 3px!important;
  margin:4px 0 1px!important;
  color:#087f93!important;
  font-size:10px!important;
  line-height:1.05!important;
  font-weight:850!important;
  text-transform:uppercase!important;
  letter-spacing:.075em!important;
}
#sfV125TopLoginBar .top-nav-dropdown a{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:26px!important;
  padding:5px 8px!important;
  margin:0!important;
  border-radius:9px!important;
  color:#18384b!important;
  background:transparent!important;
  font-size:12.5px!important;
  line-height:1.15!important;
  font-weight:500!important;
  text-decoration:none!important;
  box-shadow:none!important;
  border:0!important;
}
#sfV125TopLoginBar .top-nav-dropdown a:hover{
  background:linear-gradient(135deg,rgba(18,191,196,.10),rgba(31,111,234,.08))!important;
  color:#064d68!important;
  font-weight:650!important;
}

/* v131 static authenticated left sidebar logo: do not dynamically repaint */
#sfV125SidebarLogoHost,
a#sfV125SidebarLogoHost.logo,
.sidebar #sfV125SidebarLogoHost{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:16px 12px 18px!important;
  margin:0 auto 10px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:1000!important;
  text-decoration:none!important;
}
#sfV125SidebarLogoImg,
img#sfV125SidebarLogoImg,
.sidebar #sfV125SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:190px!important;
  width:88%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:1001!important;
}
.sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
aside img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.app-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.dashboard-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
.staff-sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg),
nav.sidebar img[src*="spaflow"]:not(#sfV125SidebarLogoImg){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}



/* v132 sidebar is static: no JS repaint, no hiding/showing cycle */
#sfV125SidebarLogoHost,
a#sfV125SidebarLogoHost.logo,
.sidebar #sfV125SidebarLogoHost{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:16px 12px 18px!important;
  margin:0 auto 10px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:1000!important;
  text-decoration:none!important;
}
#sfV125SidebarLogoImg,
img#sfV125SidebarLogoImg,
.sidebar #sfV125SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:190px!important;
  width:88%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:1001!important;
}

/* v132 more compact login-bar dropdown */
#sfV125TopLoginBar .top-nav-dropdown{
  min-width:248px!important;
  max-width:316px!important;
  padding:5px!important;
  border-radius:14px!important;
}
#sfV125TopLoginBar .top-nav-dropdown .nav-section-label{
  padding:6px 8px 2px!important;
  margin:3px 0 0!important;
  font-size:9.5px!important;
  font-weight:800!important;
  line-height:1!important;
}
#sfV125TopLoginBar .top-nav-dropdown a{
  min-height:24px!important;
  padding:4px 8px!important;
  margin:0!important;
  border-radius:8px!important;
  font-size:12.25px!important;
  line-height:1.12!important;
  font-weight:500!important;
}

/* v132 clients page compact action styling */
.clients-page #clientList .table{
  border-collapse:separate!important;
  border-spacing:0 8px!important;
}
.clients-page #clientList .table tr.sf-v132-client-row td{
  background:#fff!important;
  vertical-align:middle!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
.sf-v132-intake-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:750!important;
  background:#f2f6f8!important;
  color:#25475a!important;
  border:1px solid rgba(15,41,64,.10)!important;
  white-space:nowrap!important;
}
.sf-v132-intake-badge.current{
  background:rgba(18,191,196,.10)!important;
  color:#075f69!important;
  border-color:rgba(18,191,196,.25)!important;
}
.sf-v132-intake-badge.due{
  background:rgba(255,183,77,.14)!important;
  color:#7a4a00!important;
  border-color:rgba(255,183,77,.35)!important;
}
.sf-v132-action-cell{
  min-width:230px!important;
}
.sf-v132-client-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:5px!important;
}
.sf-v132-action-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:25px!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(15,41,64,.12)!important;
  background:#fff!important;
  color:#12384f!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:750!important;
  text-decoration:none!important;
  box-shadow:0 4px 12px rgba(2,8,23,.06)!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.sf-v132-action-btn.soap{
  background:linear-gradient(135deg,#073b58,#0a8ca0)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.15)!important;
}
.sf-v132-action-btn.profile{
  background:rgba(18,191,196,.10)!important;
  color:#075f69!important;
}
.sf-v132-action-btn.password{
  background:rgba(31,111,234,.08)!important;
  color:#154b9b!important;
}
.sf-v132-action-btn:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 8px 18px rgba(2,8,23,.12)!important;
}

/* v132 SOAP modal from clients list */
.sf-v132-soap-modal{
  position:fixed!important;
  inset:0!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  background:rgba(3,18,30,.58)!important;
  z-index:100000!important;
}
.sf-v132-soap-modal.open{
  display:flex!important;
}
.sf-v132-soap-modal-panel{
  width:min(980px,96vw)!important;
  max-height:88vh!important;
  overflow:auto!important;
  background:#fff!important;
  border-radius:24px!important;
  box-shadow:0 26px 70px rgba(2,8,23,.34)!important;
  border:1px solid rgba(15,41,64,.12)!important;
}
.sf-v132-soap-modal-head{
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:18px 20px!important;
  background:linear-gradient(135deg,#f7fbfc,#fff)!important;
  border-bottom:1px solid rgba(15,41,64,.10)!important;
}
.sf-v132-soap-modal-head small{
  color:#087f93!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.sf-v132-soap-modal-head h3{
  margin:3px 0 0!important;
}
.sf-v132-soap-close{
  width:34px!important;
  height:34px!important;
  border-radius:999px!important;
  border:0!important;
  background:#092f45!important;
  color:#fff!important;
  font-size:22px!important;
  cursor:pointer!important;
}
#sfV132SoapModalBody{
  padding:18px 20px 22px!important;
}
.sf-v132-soap-empty{
  padding:18px!important;
  border-radius:18px!important;
  background:#f5f9fa!important;
  color:#405b68!important;
  font-weight:700!important;
}
.sf-v132-soap-card{
  padding:16px!important;
  border-radius:18px!important;
  border:1px solid rgba(15,41,64,.10)!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(2,8,23,.06)!important;
  margin-bottom:12px!important;
}
.sf-v132-soap-card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:10px!important;
}
.sf-v132-soap-card-head strong{
  color:#073b58!important;
}
.sf-v132-soap-card-head span{
  color:#68808c!important;
  font-size:12px!important;
  font-weight:800!important;
}
.sf-v132-soap-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.sf-v132-soap-grid div{
  background:#f8fbfc!important;
  border-radius:14px!important;
  padding:10px!important;
}
.sf-v132-soap-grid b{
  display:block!important;
  color:#087f93!important;
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  margin-bottom:4px!important;
}
.sf-v132-soap-grid p,
.sf-v132-soap-comment p{
  margin:0!important;
  color:#213d4d!important;
  font-size:13px!important;
  line-height:1.35!important;
}
.sf-v132-soap-comments{
  margin-top:12px!important;
  border-top:1px solid rgba(15,41,64,.10)!important;
  padding-top:10px!important;
}
.sf-v132-soap-comments > strong{
  color:#073b58!important;
  font-size:12px!important;
}
.sf-v132-soap-comment{
  margin-top:8px!important;
  padding:9px!important;
  border-radius:12px!important;
  background:rgba(18,191,196,.08)!important;
}
.sf-v132-soap-comment span{
  display:block!important;
  color:#68808c!important;
  font-size:11px!important;
  font-weight:800!important;
  margin-bottom:3px!important;
}
@media(max-width:760px){
  .sf-v132-soap-grid{grid-template-columns:1fr!important;}
  .sf-v132-action-cell{min-width:0!important;}
}



/* v133 hard stop for authenticated sidebar visual glitch: static, no animation, no transition */
.logged-in-page .sidebar,
.logged-in-page .sidebar *,
.app-shell .sidebar,
.app-shell .sidebar *{
  transition:none!important;
  animation:none!important;
}
.logged-in-page .sidebar{
  visibility:visible!important;
  opacity:1!important;
}
#sfV125SidebarLogoHost,
a#sfV125SidebarLogoHost.logo,
.sidebar #sfV125SidebarLogoHost{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  padding:16px 12px 18px!important;
  margin:0 auto 10px!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  position:relative!important;
  z-index:1000!important;
  text-decoration:none!important;
}
#sfV125SidebarLogoImg,
img#sfV125SidebarLogoImg,
.sidebar #sfV125SidebarLogoImg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:190px!important;
  width:88%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  filter:none!important;
  position:relative!important;
  z-index:1001!important;
}
.logged-in-page .sidebar .side-links,
.logged-in-page .sidebar .side-links a{
  visibility:visible!important;
  opacity:1!important;
  transition:none!important;
  animation:none!important;
}

/* v133 final compact dropdown formatting */
#sfV125TopLoginBar .top-nav-dropdown{
  min-width:248px!important;
  max-width:316px!important;
  padding:5px!important;
  border-radius:14px!important;
}
#sfV125TopLoginBar .top-nav-dropdown .nav-section-label{
  padding:6px 8px 2px!important;
  margin:3px 0 0!important;
  font-size:9.5px!important;
  font-weight:800!important;
  line-height:1!important;
}
#sfV125TopLoginBar .top-nav-dropdown a{
  min-height:24px!important;
  padding:4px 8px!important;
  margin:0!important;
  border-radius:8px!important;
  font-size:12.25px!important;
  line-height:1.12!important;
  font-weight:500!important;
}
#sfV125TopLoginBar .top-nav-dropdown a:hover{
  font-weight:650!important;
}



/* v134 reports page: smaller, tighter, easier to scan */
.reports-page .main{
  scroll-behavior:auto!important;
}
.reports-page .reports-hero{
  padding:18px 18px!important;
  gap:14px!important;
  margin-bottom:14px!important;
}
.reports-page .reports-hero h1{
  font-size:clamp(26px,3.2vw,38px)!important;
  margin:6px 0!important;
}
.reports-page .reports-hero .lead{
  font-size:14px!important;
  line-height:1.35!important;
  max-width:760px!important;
}
.reports-page .reports-hero-art{
  transform:scale(.76)!important;
  transform-origin:center right!important;
  min-width:150px!important;
}
.reports-page .badge{
  font-size:10px!important;
  padding:5px 9px!important;
}
.reports-page .card{
  border-radius:18px!important;
}
.sf-v134-reports-controls{
  padding:14px!important;
  margin-top:12px!important;
}
.sf-v134-selection-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:12px!important;
}
.sf-v134-selection-head h2{
  font-size:18px!important;
  margin:5px 0 2px!important;
}
.sf-v134-selection-head p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.3!important;
  color:#516978!important;
}
.sf-v134-current-selection{
  min-width:190px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(18,191,196,.12),rgba(31,111,234,.10))!important;
  border:1px solid rgba(18,191,196,.22)!important;
  text-align:right!important;
}
.sf-v134-current-selection small{
  display:block!important;
  color:#087f93!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
.sf-v134-current-selection strong{
  display:block!important;
  color:#073b58!important;
  font-size:16px!important;
  margin-top:2px!important;
}
.sf-v134-current-selection.selected{
  box-shadow:0 0 0 4px rgba(18,191,196,.18)!important;
}
.sf-v134-period-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:8px 0 12px!important;
}
.sf-v134-period-tab{
  border:1px solid rgba(15,41,64,.12)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#23485a!important;
  padding:8px 12px!important;
  font-size:12px!important;
  font-weight:750!important;
  cursor:pointer!important;
  box-shadow:0 4px 12px rgba(2,8,23,.05)!important;
}
.sf-v134-period-tab.active{
  background:linear-gradient(135deg,#073b58,#0a8ca0)!important;
  color:#fff!important;
  border-color:transparent!important;
}
.sf-v134-filter-grid{
  grid-template-columns:repeat(4,minmax(140px,1fr))!important;
  gap:10px!important;
}
.sf-v134-filter-grid label{
  font-size:11px!important;
  margin-bottom:4px!important;
}
.sf-v134-filter-grid select{
  min-height:36px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  font-size:13px!important;
}
.sf-v134-select-wrap .btn{
  width:100%!important;
  min-height:36px!important;
  padding:8px 12px!important;
  border-radius:12px!important;
}
.sf-v134-pending-selection{
  margin-top:9px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  background:#f6fafb!important;
  color:#4d6674!important;
  font-size:12px!important;
}
.sf-v134-pending-selection strong{
  color:#073b58!important;
}
.reports-page .reports-grid{
  grid-template-columns:repeat(auto-fit,minmax(185px,1fr))!important;
  gap:10px!important;
  margin-top:14px!important;
}
.reports-page .report-card{
  min-height:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
.reports-page .report-card-image{
  min-height:78px!important;
  height:78px!important;
  padding:8px!important;
}
.reports-page .report-card-image svg,
.reports-page .report-mini-image svg,
.reports-page .dashboard-report-visual svg{
  max-height:86px!important;
}
.reports-page .report-card-body{
  padding:10px 11px 12px!important;
}
.reports-page .report-card-body h3{
  font-size:14px!important;
  margin:0 0 4px!important;
}
.reports-page .report-card-body p{
  font-size:12px!important;
  line-height:1.28!important;
  margin:0 0 8px!important;
}
.reports-page .report-card-body .btn{
  min-height:28px!important;
  padding:6px 9px!important;
  font-size:11px!important;
  border-radius:999px!important;
}
.reports-page .report-view-shell{
  margin-top:14px!important;
}
.reports-page .report-toolbar{
  padding:12px!important;
  gap:10px!important;
}
.reports-page .report-toolbar h2{
  font-size:18px!important;
  margin:0 0 3px!important;
}
.reports-page .report-toolbar p{
  font-size:12px!important;
  margin:0!important;
}
.reports-page .report-toolbar-actions{
  gap:6px!important;
}
.reports-page .report-toolbar-actions .btn{
  min-height:28px!important;
  padding:6px 9px!important;
  font-size:11px!important;
  border-radius:999px!important;
}
.reports-page .report-output{
  padding:12px!important;
}
.reports-page .report-print-header{
  gap:10px!important;
  padding:12px!important;
  border-radius:16px!important;
}
.reports-page .report-print-header h2{
  font-size:20px!important;
  margin:4px 0!important;
}
.reports-page .report-print-header p{
  font-size:12px!important;
  line-height:1.3!important;
}
.reports-page .report-mini-image{
  width:82px!important;
  min-width:82px!important;
}
.reports-page .report-summary-cards{
  grid-template-columns:repeat(auto-fit,minmax(135px,1fr))!important;
  gap:8px!important;
}
.reports-page .report-kpi{
  padding:10px!important;
  border-radius:14px!important;
}
.reports-page .report-kpi span{
  font-size:10px!important;
}
.reports-page .report-kpi strong{
  font-size:19px!important;
}
.reports-page .report-kpi small{
  font-size:10px!important;
}
.reports-page .report-table{
  font-size:11.5px!important;
}
.reports-page .report-table th,
.reports-page .report-table td{
  padding:7px 8px!important;
}
.reports-page .dashboard-report-visual{
  padding:12px!important;
  gap:12px!important;
}
.reports-page .dashboard-report-visual h3{
  font-size:17px!important;
}
.reports-page .dashboard-report-visual p{
  font-size:12px!important;
  line-height:1.35!important;
}
@media(max-width:760px){
  .sf-v134-selection-head{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .sf-v134-current-selection{
    text-align:left!important;
    min-width:0!important;
  }
  .sf-v134-filter-grid{
    grid-template-columns:1fr!important;
  }
  .reports-page .reports-hero-art{
    display:none!important;
  }
}



/* v135 booking page: business selector, validation highlighting, functional submit */
.sf-v135-business-select-card{
  padding:14px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(18,191,196,.10),rgba(31,111,234,.08))!important;
  border:1px solid rgba(18,191,196,.24)!important;
  box-shadow:0 8px 22px rgba(2,8,23,.06)!important;
}
.sf-v135-business-select-card label{
  font-weight:950!important;
  color:#073b58!important;
}
.required-star{
  color:#d64545!important;
  font-weight:950!important;
}
.sf-v135-missing{
  border-color:#d64545!important;
  box-shadow:0 0 0 4px rgba(214,69,69,.14)!important;
  background:#fffafa!important;
}
.sf-v135-field-error{
  display:block!important;
  margin-top:5px!important;
  color:#b42318!important;
  font-size:11px!important;
  font-weight:850!important;
}
.booking-page select.sf-v135-missing,
.booking-page input.sf-v135-missing,
.booking-page textarea.sf-v135-missing{
  outline:none!important;
}
.booking-page .form-grid .notice.warning,
.booking-page .form-grid .sf-v135-business-select-card{
  grid-column:1/-1!important;
}



/* v136 client profile first-time login notice */
.client-profile-auto-login-notice{
  padding:12px 14px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(18,191,196,.12),rgba(31,111,234,.08))!important;
  border:1px solid rgba(18,191,196,.24)!important;
  color:#073b58!important;
  font-weight:800!important;
  margin-bottom:14px!important;
}



/* v137 client login form polish */
#existingClientPortal form input[name="clientEmail"],
#existingClientPortal form input[name="clientPassword"]{
  border-radius:12px!important;
}



/* v138 full client portal */
.sf-v138-client-portal{
  display:block!important;
}
.sf-v138-portal-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:18px!important;
  margin-bottom:16px!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,rgba(7,59,88,.96),rgba(10,140,160,.92))!important;
  color:#fff!important;
  box-shadow:0 18px 44px rgba(2,8,23,.18)!important;
}
.sf-v138-profile-block{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
}
.sf-v138-profile-block h2{
  color:#fff!important;
  margin:4px 0!important;
}
.sf-v138-profile-block p,
.sf-v138-profile-block small{
  color:rgba(255,255,255,.86)!important;
  margin:0!important;
}
.sf-v138-avatar{
  width:74px!important;
  height:74px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.18)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  font-size:30px!important;
  font-weight:950!important;
  border:1px solid rgba(255,255,255,.32)!important;
}
.sf-v138-avatar.large{
  width:104px!important;
  height:104px!important;
  color:#073b58!important;
  background:#f1fbfc!important;
}
.sf-v138-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.sf-v138-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 0 16px!important;
}
.sf-v138-tabs button{
  border:1px solid rgba(15,41,64,.12)!important;
  background:#fff!important;
  color:#18384b!important;
  border-radius:999px!important;
  padding:8px 12px!important;
  font-size:12px!important;
  font-weight:850!important;
  cursor:pointer!important;
  box-shadow:0 6px 16px rgba(2,8,23,.05)!important;
}
.sf-v138-tabs button.active{
  background:linear-gradient(135deg,#073b58,#0a8ca0)!important;
  color:#fff!important;
  border-color:transparent!important;
}
.sf-v138-tab-panel{
  display:none!important;
}
.sf-v138-tab-panel.active{
  display:block!important;
}
.sf-v138-kpis{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;
  gap:10px!important;
  margin-bottom:16px!important;
}
.sf-v138-kpis div{
  padding:14px!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(2,8,23,.06)!important;
  border:1px solid rgba(15,41,64,.08)!important;
}
.sf-v138-kpis span{
  display:block!important;
  color:#087f93!important;
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  font-weight:950!important;
}
.sf-v138-kpis strong{
  display:block!important;
  color:#073b58!important;
  font-size:22px!important;
  margin:3px 0!important;
}
.sf-v138-kpis small{
  color:#667b87!important;
}
.sf-v138-grid-2{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.sf-v138-mini-card{
  padding:10px!important;
  margin:8px 0!important;
  border-radius:14px!important;
  background:#f8fbfc!important;
  border:1px solid rgba(15,41,64,.08)!important;
}
.sf-v138-mini-card strong,
.sf-v138-mini-card span,
.sf-v138-mini-card small{
  display:block!important;
}
.sf-v138-soap-note{
  padding:14px!important;
  margin:10px 0!important;
  border-radius:18px!important;
  border:1px solid rgba(15,41,64,.10)!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(2,8,23,.05)!important;
}
.sf-v138-soap-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.sf-v138-soap-head strong{
  color:#073b58!important;
}
.sf-v138-soap-head span{
  color:#657b86!important;
  font-size:12px!important;
  font-weight:800!important;
}
.sf-v138-soap-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.sf-v138-soap-grid div{
  border-radius:12px!important;
  background:#f6fafb!important;
  padding:9px!important;
}
.sf-v138-soap-grid b,
.sf-v138-comments b{
  display:block!important;
  color:#087f93!important;
  font-size:10.5px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  margin-bottom:4px!important;
}
.sf-v138-soap-grid p,
.sf-v138-comments p{
  margin:0!important;
  color:#213d4d!important;
  font-size:12.5px!important;
  line-height:1.35!important;
}
.sf-v138-comments{
  margin-top:10px!important;
  padding-top:10px!important;
  border-top:1px solid rgba(15,41,64,.08)!important;
}
.sf-v138-comments p{
  margin-top:6px!important;
  background:rgba(18,191,196,.08)!important;
  border-radius:10px!important;
  padding:8px!important;
}
.sf-v138-comments span{
  display:block!important;
  color:#667b87!important;
  font-size:10.5px!important;
  font-weight:800!important;
  margin-bottom:3px!important;
}
.sf-v138-photo-row{
  display:flex!important;
  gap:16px!important;
  align-items:center!important;
  flex-wrap:wrap!important;
}
#sfV138BillingStatus,
#sfV138ProfileStatus,
#sfV138PhotoStatus{
  display:inline-block!important;
  margin-left:8px!important;
  color:#087f93!important;
  font-weight:900!important;
}
@media(max-width:760px){
  .sf-v138-grid-2,
  .sf-v138-soap-grid{
    grid-template-columns:1fr!important;
  }
  .sf-v138-portal-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
}



/* v139 client-only restricted shell */
body.sf-v139-client-only-mode aside.sidebar nav.side-links a[href*="dashboard"],
body.sf-v139-client-only-mode aside.sidebar nav.side-links a[href*="calendar"],
body.sf-v139-client-only-mode aside.sidebar nav.side-links a[href*="clients"],
body.sf-v139-client-only-mode aside.sidebar nav.side-links a[href*="soap-notes"],
body.sf-v139-client-only-mode aside.sidebar nav.side-links a[href*="reports"],
body.sf-v139-client-only-mode aside.sidebar nav.side-links a[href*="settings"],
body.sf-v139-client-only-mode .top-nav-dropdown a[href*="dashboard"],
body.sf-v139-client-only-mode .top-nav-dropdown a[href*="calendar"],
body.sf-v139-client-only-mode .top-nav-dropdown a[href*="clients"],
body.sf-v139-client-only-mode .top-nav-dropdown a[href*="soap-notes"],
body.sf-v139-client-only-mode .top-nav-dropdown a[href*="reports"],
body.sf-v139-client-only-mode .top-nav-dropdown a[href*="settings"]{
  display:none!important;
}
.sf-v139-client-sidebar nav.side-links{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.sf-v139-client-sidebar nav.side-links a{
  display:flex!important;
  align-items:center!important;
  min-height:36px!important;
  padding:9px 12px!important;
  border-radius:12px!important;
  font-size:13px!important;
  font-weight:800!important;
}
.sf-v139-client-restricted{
  max-width:720px!important;
  margin:60px auto!important;
  text-align:center!important;
}



/* v140 dedicated client portal page */
.client-portal-page .sf-v140-client-portal-title{
  margin:0 0 18px!important;
  padding:18px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(18,191,196,.10),rgba(31,111,234,.08))!important;
  border:1px solid rgba(18,191,196,.18)!important;
}
.client-portal-page .sf-v140-client-portal-title h1{
  margin:6px 0!important;
}
.client-portal-page .sf-v140-client-portal-title p{
  margin:0!important;
  color:#4f6775!important;
}
.sf-v140-client-login-card,
.sf-v140-booking-portal-redirect,
.sf-v140-profile-portal-link{
  max-width:760px!important;
  margin:18px auto!important;
}
.sf-v140-booking-portal-redirect .btn,
.sf-v140-profile-portal-link .btn{
  margin-right:8px!important;
}
.client-portal-page #existingClientPortal{
  margin-top:0!important;
}



/* v141 client portal sidebar icons + matching top menu links */
.sf-v141-client-nav-link{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.sf-v141-nav-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.12)!important;
  font-size:15px!important;
  line-height:1!important;
}
.sf-v141-client-nav-link.active .sf-v141-nav-icon,
.sf-v141-client-nav-link:hover .sf-v141-nav-icon{
  background:rgba(18,191,196,.20)!important;
}
#sfV125TopLoginBar .top-nav-dropdown.sf-v141-client-top-dropdown{
  min-width:240px!important;
  padding:7px!important;
}
#sfV125TopLoginBar .top-nav-dropdown.sf-v141-client-top-dropdown a{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  font-weight:550!important;
}
.sf-v141-menu-icon{
  width:21px!important;
  min-width:21px!important;
  height:21px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:8px!important;
  background:rgba(18,191,196,.10)!important;
  font-size:13px!important;
  line-height:1!important;
}



/* v142 client portal cleanup/fixes */
.client-portal-page .sf-v140-client-portal-title{
  display:none!important;
}
.sf-v142-appt-card{
  position:relative!important;
}
.sf-v142-appt-actions{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:9px!important;
}
.sf-v142-mini-btn{
  border:1px solid rgba(15,41,64,.12)!important;
  background:#fff!important;
  color:#073b58!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.sf-v142-mini-btn.danger{
  background:rgba(214,69,69,.10)!important;
  color:#9f1d1d!important;
  border-color:rgba(214,69,69,.25)!important;
}
.sf-v142-fee-note{
  display:block!important;
  width:100%!important;
  color:#9f5b00!important;
  font-weight:800!important;
  margin-top:2px!important;
}
.sf-v142-reschedule-card{
  margin-top:14px!important;
  border:1px solid rgba(18,191,196,.22)!important;
  box-shadow:0 10px 24px rgba(2,8,23,.08)!important;
}
.sf-v142-cancel-fee-settings{
  margin-top:18px!important;
  border:1px solid rgba(18,191,196,.22)!important;
}
#sfV142CancellationFeeStatus{
  color:#087f93!important;
  font-weight:900!important;
  margin-left:8px!important;
}



/* v143 client portal nav click feedback */
.sf-v141-client-nav-link[href$="#billing"],
#sfV125TopLoginBar .top-nav-dropdown a[href$="#billing"]{
  cursor:pointer!important;
}



/* v144 stable client nav + public menu + billing/profile fixes */
.client-portal-page aside.sidebar nav.side-links,
.client-portal-page aside.sidebar nav.side-links *{
  transition:none!important;
  animation:none!important;
}
.client-portal-page aside.sidebar nav.side-links a.sf-v144-client-nav-link,
body.sf-v144-client-nav-ready aside.sidebar nav.side-links a.sf-v144-client-nav-link{
  background:transparent!important;
  background-color:transparent!important;
  color:#d9eef4!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
}
.client-portal-page aside.sidebar nav.side-links a.sf-v144-client-nav-link:hover,
body.sf-v144-client-nav-ready aside.sidebar nav.side-links a.sf-v144-client-nav-link:hover{
  background:rgba(255,255,255,.10)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.12)!important;
}
.client-portal-page aside.sidebar nav.side-links a.sf-v144-client-nav-link.active,
.client-portal-page aside.sidebar nav.side-links a.sf-v144-client-nav-link.is-current{
  background:rgba(18,191,196,.14)!important;
  color:#ffffff!important;
  border-color:rgba(18,191,196,.22)!important;
}
.sf-v144-nav-section{
  margin:12px 10px 4px!important;
  color:rgba(255,255,255,.58)!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.sf-v144-client-nav-link{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.sf-v144-nav-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.10)!important;
  font-size:14px!important;
}
.sf-v144-client-top-dropdown .nav-section-label{
  display:block!important;
  margin:7px 6px 3px!important;
}
.sf-v144-client-top-dropdown a{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
.sf-v144-cards-accepted{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:8px 0 10px!important;
}
.sf-v144-cards-accepted span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:78px!important;
  padding:7px 9px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#073b58,#0a8ca0)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:0 6px 16px rgba(2,8,23,.10)!important;
}
.sf-v144-card-file{
  padding:10px 12px!important;
  border-radius:14px!important;
  background:#f4fafb!important;
  border:1px solid rgba(18,191,196,.18)!important;
}
.sf-v144-payment-note{
  color:#6b7d87!important;
  font-weight:700!important;
}
#sfV144BillingStatus,
#sfV138ProfileStatus,
#sfV138PhotoStatus{
  color:#087f93!important;
  font-weight:900!important;
  margin-left:8px!important;
}
.sf-v144-none-group{
  border:1px solid rgba(18,191,196,.20)!important;
  background:rgba(18,191,196,.06)!important;
}
.sf-v144-no-allergies{
  margin-top:8px!important;
}



/* v145 no-flash final client portal */
.client-portal-page .badge,
.client-portal-page .sf-v145-head .badge,
.client-portal-page .sf-v138-profile-block .badge{display:none!important}
body.sf-v145-client-portal-lock aside.sidebar nav.side-links{opacity:0!important}
body.sf-v145-client-portal-ready aside.sidebar nav.side-links{opacity:1!important}
.client-portal-page aside.sidebar nav.side-links,
.client-portal-page aside.sidebar nav.side-links *{transition:none!important;animation:none!important}
.sf-v145-nav-section{margin:12px 10px 4px!important;color:rgba(255,255,255,.58)!important;font-size:10px!important;font-weight:950!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.sf-v145-nav-link{display:flex!important;align-items:center!important;gap:10px!important;background:transparent!important;color:#d9eef4!important;border:1px solid transparent!important;box-shadow:none!important}
.sf-v145-nav-link:hover{background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important}
.sf-v145-nav-link.active{background:rgba(18,191,196,.14)!important;color:#fff!important;border-color:rgba(18,191,196,.22)!important}
.sf-v145-nav-icon{width:24px!important;min-width:24px!important;height:24px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:9px!important;background:rgba(255,255,255,.10)!important;font-size:14px!important}
.sf-v145-client-menu a{display:flex!important;align-items:center!important;gap:8px!important}
.sf-v145-menu-icon{width:21px!important;height:21px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important;background:rgba(18,191,196,.10)!important;font-size:13px!important}
.sf-v145-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:18px!important;margin-bottom:16px!important;border-radius:24px!important;background:linear-gradient(135deg,rgba(7,59,88,.96),rgba(10,140,160,.92))!important;color:#fff!important}
.sf-v145-person{display:flex!important;align-items:center!important;gap:14px!important}
.sf-v145-person h2{color:#fff!important;margin:0 0 4px!important}
.sf-v145-person p,.sf-v145-person small{color:rgba(255,255,255,.86)!important;margin:0!important}
.sf-v145-avatar{width:74px!important;height:74px!important;border-radius:22px!important;overflow:hidden!important;background:rgba(255,255,255,.18)!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:30px!important;font-weight:950!important}
.sf-v145-avatar.large{width:104px!important;height:104px!important;color:#073b58!important;background:#f1fbfc!important}
.sf-v145-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.sf-v145-tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0 0 16px!important}
.sf-v145-tabs button{border:1px solid rgba(15,41,64,.12)!important;background:#fff!important;color:#18384b!important;border-radius:999px!important;padding:8px 12px!important;font-size:12px!important;font-weight:850!important;cursor:pointer!important}
.sf-v145-tabs button.active{background:linear-gradient(135deg,#073b58,#0a8ca0)!important;color:#fff!important;border-color:transparent!important}
.sf-v145-tab-panel{display:none!important}.sf-v145-tab-panel.active{display:block!important}
.sf-v145-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.sf-v145-mini-card{padding:10px!important;margin:8px 0!important;border-radius:14px!important;background:#f8fbfc!important;border:1px solid rgba(15,41,64,.08)!important}
.sf-v145-mini-card strong,.sf-v145-mini-card span,.sf-v145-mini-card small{display:block!important}
.sf-v145-appt-actions{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:6px!important;margin-top:9px!important}
.sf-v145-mini-btn{border:1px solid rgba(15,41,64,.12)!important;background:#fff!important;color:#073b58!important;padding:5px 8px!important;border-radius:999px!important;font-size:11px!important;font-weight:850!important;cursor:pointer!important}
.sf-v145-mini-btn.danger{background:rgba(214,69,69,.10)!important;color:#9f1d1d!important;border-color:rgba(214,69,69,.25)!important}
.sf-v145-soap-card{padding:14px!important;margin:10px 0!important;border-radius:18px!important;border:1px solid rgba(15,41,64,.10)!important;background:#fff!important}
.sf-v145-soap-card>div{display:flex!important;justify-content:space-between!important;gap:10px!important;margin-bottom:10px!important}
.sf-v145-soap-card section{background:#f6fafb!important;padding:9px!important;border-radius:12px!important;margin:8px 0!important}
.sf-v145-soap-card b{color:#087f93!important;font-size:10.5px!important;text-transform:uppercase!important}
.sf-v145-cards{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:8px 0 10px!important}
.sf-v145-cards span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:78px!important;padding:7px 9px!important;border-radius:12px!important;background:linear-gradient(135deg,#073b58,#0a8ca0)!important;color:#fff!important;font-size:12px!important;font-weight:900!important}
.sf-v145-card-file{padding:10px 12px!important;border-radius:14px!important;background:#f4fafb!important;border:1px solid rgba(18,191,196,.18)!important}
.sf-v145-status{color:#087f93!important;font-weight:900!important;margin-left:8px!important}
.sf-v145-photo-row{display:flex!important;gap:16px!important;align-items:center!important;flex-wrap:wrap!important}
.sf-v145-none-group{border:1px solid rgba(18,191,196,.20)!important;background:rgba(18,191,196,.06)!important}
.sf-v145-no-allergies{margin-top:8px!important}
@media(max-width:760px){.sf-v145-grid{grid-template-columns:1fr!important}.sf-v145-head{align-items:flex-start!important;flex-direction:column!important}}



/* v146 client portal UX fixes */
.client-portal-page #clientPortalSideLinks .sf-v145-nav-section:nth-of-type(n+2),
.client-portal-page #clientPortalSideLinks a[href="./index.html"],
.client-portal-page #clientPortalSideLinks a[href="./pricing.html"],
.client-portal-page #clientPortalSideLinks a[href="./security.html"],
.client-portal-page #clientPortalSideLinks a[href="./faq.html"],
.client-portal-page #clientPortalSideLinks a[href="./contact.html"],
.client-portal-page #clientPortalSideLinks a[href="./booking.html"]{
  display:none!important;
}
.sf-v146-client-nav .sf-v145-nav-icon,
.client-portal-page .sf-v145-nav-icon{
  background:transparent!important;
  border-radius:0!important;
  width:20px!important;
  min-width:20px!important;
  height:20px!important;
}
.client-portal-page .sf-v145-head .btn,
.client-portal-page .sf-v138-portal-head .btn{
  display:none!important;
}
.client-portal-page .main{
  min-height:100vh!important;
  display:flex!important;
  flex-direction:column!important;
}
.client-portal-page #existingClientPortal{
  flex:1 0 auto!important;
}
.client-portal-page .site-credit.sf-v146-portal-footer{
  margin-top:auto!important;
  padding:22px 18px!important;
  border-radius:22px 22px 0 0!important;
  background:linear-gradient(135deg,#062f47,#073b58 48%,#0a7082)!important;
  color:rgba(255,255,255,.88)!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 -12px 34px rgba(2,8,23,.12)!important;
}
.client-portal-page .site-credit.sf-v146-portal-footer a{
  color:#bff8ff!important;
  font-weight:900!important;
}
.sf-v146-book-btn-stable{
  transform:none!important;
  margin-top:14px!important;
}
.sf-v146-book-btn-stable:hover,
.sf-v146-book-btn-stable:focus{
  transform:none!important;
  translate:none!important;
  margin-top:14px!important;
}
.sf-v145-mini-card + .sf-v146-book-btn-stable,
.card > p + .sf-v146-book-btn-stable{
  margin-top:16px!important;
}
.sf-v146-booking-panel{
  margin-top:16px!important;
}
.sf-v146-card-logo-bar{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:10px!important;
  border:1px solid rgba(7,59,88,.18)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(2,8,23,.05)!important;
  margin:8px 0 12px!important;
}
.sf-v146-card-logo{
  width:86px!important;
  height:38px!important;
  border-radius:10px!important;
  border:1px solid rgba(15,41,64,.14)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
  background:#fff!important;
  color:#102a3a!important;
  position:relative!important;
  overflow:hidden!important;
}
.sf-v146-card-logo.visa{
  color:#163c8c!important;
  font-style:italic!important;
  font-size:16px!important;
}
.sf-v146-card-logo.amex{
  background:#2e77bc!important;
  color:#fff!important;
  font-size:14px!important;
}
.sf-v146-card-logo.disc{
  color:#111!important;
}
.sf-v146-card-logo.disc::after{
  content:""!important;
  position:absolute!important;
  right:-12px!important;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  background:linear-gradient(90deg,#f59e0b,#f97316)!important;
  opacity:.85!important;
}
.sf-v146-card-logo.mc{
  background:#fff!important;
}
.sf-v146-card-logo.mc i,
.sf-v146-card-logo.mc b{
  position:absolute!important;
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  top:5px!important;
}
.sf-v146-card-logo.mc i{
  left:22px!important;
  background:#eb001b!important;
}
.sf-v146-card-logo.mc b{
  right:22px!important;
  background:#f79e1b!important;
  opacity:.92!important;
}
.sf-v146-card-logo.mc em{
  position:relative!important;
  z-index:2!important;
  color:#111!important;
  font-size:11px!important;
  font-style:normal!important;
  margin-top:22px!important;
}
@media(max-width:720px){
  .sf-v146-card-logo-bar{flex-wrap:wrap!important}
  .sf-v146-card-logo{width:78px!important}
}



/* v147 client portal profile save/photo status */
.sf-v147-status-ok{
  color:#087f93!important;
  font-weight:950!important;
}
.sf-v147-status-warn{
  color:#9f5b00!important;
  font-weight:950!important;
}
.sf-v147-profile-save-btn,
.sf-v147-photo-save-btn{
  transform:none!important;
}
.sf-v147-profile-save-btn:hover,
.sf-v147-photo-save-btn:hover{
  transform:none!important;
}



/* v148 sticky shell, aligned cards, footer widths, icon cleanup, profile image spacing */

/* Sticky login/top bar */
#sfV125TopLoginBar,
#sfV125TopLoginBar.sf-v125-top-login-bar,
#sfV125TopLoginBar.sf-v133-top-login-bar{
  position:sticky!important;
  top:0!important;
  z-index:9999!important;
  width:100%!important;
  backdrop-filter:blur(14px)!important;
}

/* Sticky left navigation/sidebar for app pages and client portal */
body.logged-in-page .sidebar,
body.client-portal-page .sidebar,
.app-shell > .sidebar{
  position:sticky!important;
  top:56px!important;
  align-self:flex-start!important;
  height:calc(100vh - 56px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  z-index:900!important;
}

/* Remove circles/backgrounds before all left vertical nav icons */
.sidebar .sf-v145-nav-icon,
.sidebar .sf-v144-nav-icon,
.sidebar .sf-v141-nav-icon,
.sidebar .side-links a::before,
.sidebar nav a::before{
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  border:0!important;
}
.sidebar .sf-v145-nav-icon,
.sidebar .sf-v144-nav-icon,
.sidebar .sf-v141-nav-icon{
  width:20px!important;
  min-width:20px!important;
  height:20px!important;
}

/* Global page width alignment */
.main,
main.main{
  width:100%!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.main > section,
main.main > section,
.main > .card,
main.main > .card,
.main > div.card,
main.main > div.card,
#existingClientPortal,
.sf-v145-portal,
.sf-v138-client-portal{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.card,
.panel,
.table-wrap,
.reports-controls,
.sf-v145-mini-card,
.sf-v138-mini-card{
  box-sizing:border-box!important;
}

/* Equalize side-by-side boxes where the app uses grids */
.two,
.three,
.client-portal-grid,
.sf-v145-grid,
.sf-v138-grid-2,
.reports-grid,
.dashboard-grid,
.kpi-grid,
.settings-grid,
.form-grid.two,
.form-grid.three{
  align-items:stretch!important;
}
.two > *,
.three > *,
.client-portal-grid > *,
.sf-v145-grid > *,
.sf-v138-grid-2 > *,
.reports-grid > *,
.dashboard-grid > *,
.kpi-grid > *,
.settings-grid > *{
  height:100%!important;
}
.sf-v145-grid > .card,
.sf-v138-grid-2 > .card,
.client-portal-grid > .card,
.dashboard-grid > .card,
.reports-grid > .card,
.settings-grid > .card{
  display:flex!important;
  flex-direction:column!important;
}

/* Footer consistent width and darker portal footer */
.site-credit{
  width:100%!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.client-portal-page .site-credit.sf-v146-portal-footer,
.client-portal-page .site-credit{
  max-width:100%!important;
  width:100%!important;
  margin-top:auto!important;
  padding:22px 18px!important;
  border-radius:22px 22px 0 0!important;
  background:linear-gradient(135deg,#062f47,#073b58 48%,#0a7082)!important;
  color:rgba(255,255,255,.88)!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 -12px 34px rgba(2,8,23,.12)!important;
}

/* Stable profile image controls */
.sf-v148-photo-input,
#sfV148PhotoInput,
#sfV145PhotoInput,
#sfV138ClientPhotoInput{
  display:block!important;
  margin:8px 0 12px!important;
}
.sf-v148-photo-save-btn,
button[onclick*="sfV148SavePhoto"],
button[onclick*="sfV145SavePhoto"],
button[onclick*="sfV138SaveClientPhoto"],
button[onclick*="sfV62SaveExistingClientPhoto"]{
  margin-top:12px!important;
  transform:none!important;
}
.sf-v148-photo-save-btn:hover,
button[onclick*="sfV148SavePhoto"]:hover,
button[onclick*="sfV145SavePhoto"]:hover,
button[onclick*="sfV138SaveClientPhoto"]:hover,
button[onclick*="sfV62SaveExistingClientPhoto"]:hover{
  transform:none!important;
}
.sf-v148-photo-status,
.sf-v148-ok,
.sf-v148-warn{
  display:inline-block!important;
  margin-left:10px!important;
  font-weight:950!important;
}
.sf-v148-ok{color:#087f93!important}
.sf-v148-warn{color:#9f5b00!important}

@media(max-width:900px){
  body.logged-in-page .sidebar,
  body.client-portal-page .sidebar,
  .app-shell > .sidebar{
    position:relative!important;
    top:auto!important;
    height:auto!important;
  }
  #sfV125TopLoginBar{
    position:sticky!important;
    top:0!important;
  }
}



/* v149 billing spacing/total, logo flare, client portal context bar alignment */

/* Billing spacing between card-on-file line and card number field */
.sf-v149-card-file-spaced,
.sf-v145-card-file,
.sf-v144-card-file{
  margin-bottom:18px!important;
}

/* Total spent box above upcoming charges */
.sf-v149-total-spent{
  padding:14px 16px!important;
  margin:0 0 16px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(7,59,88,.96),rgba(10,140,160,.90))!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 12px 28px rgba(2,8,23,.12)!important;
}
.sf-v149-total-spent span{
  display:block!important;
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-weight:950!important;
  color:rgba(255,255,255,.72)!important;
}
.sf-v149-total-spent strong{
  display:block!important;
  margin:4px 0 2px!important;
  font-size:28px!important;
  line-height:1!important;
  color:#fff!important;
}
.sf-v149-total-spent small{
  color:rgba(255,255,255,.72)!important;
  font-weight:750!important;
}

/* Professional animated sidebar logo flare */
.sf-v149-logo-flare-host{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
.sf-v149-logo-flare-host::after{
  content:""!important;
  position:absolute!important;
  inset:8px 12px!important;
  border-radius:20px!important;
  background:linear-gradient(120deg,transparent 10%,rgba(255,255,255,.22) 45%,transparent 70%)!important;
  transform:translateX(-140%) skewX(-18deg)!important;
  animation:sfV149LogoSheen 5.5s ease-in-out infinite!important;
  pointer-events:none!important;
  z-index:2!important;
}
.sf-v149-logo-flare{
  position:relative!important;
  z-index:1!important;
  filter:drop-shadow(0 0 0 rgba(18,191,196,0))!important;
  animation:sfV149LogoGlow 6s ease-in-out infinite!important;
}
@keyframes sfV149LogoSheen{
  0%,55%,100%{transform:translateX(-140%) skewX(-18deg);opacity:0}
  68%{opacity:1}
  82%{transform:translateX(140%) skewX(-18deg);opacity:0}
}
@keyframes sfV149LogoGlow{
  0%,100%{filter:drop-shadow(0 0 0 rgba(18,191,196,0))}
  45%,58%{filter:drop-shadow(0 0 10px rgba(18,191,196,.34))}
}

/* Client Portal For bar tight under login bar and aligned to content width to the right of sidebar */
.client-portal-page [data-business-context].sf-v149-client-portal-context-bar,
.client-portal-page [data-business-context],
.client-portal-page .business-context-bar,
.client-portal-page .sf-business-context-bar,
.client-portal-page #businessContextBar{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 16px!important;
  border-top:1px solid #050505!important;
  border-bottom:1px solid rgba(7,59,88,.12)!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
  padding:10px 16px!important;
  box-sizing:border-box!important;
  background:linear-gradient(90deg,rgba(245,250,251,.98),rgba(230,247,249,.96))!important;
  color:#073b58!important;
  box-shadow:none!important;
  transform:none!important;
}
.client-portal-page #sfV125TopLoginBar{
  margin-bottom:0!important;
}
.client-portal-page .main{
  padding-top:0!important;
}


/* v150 client portal reports, streamlined identity bar, premium left nav, no divider line */
.client-portal-page .app-shell{grid-template-columns:280px minmax(0,1fr)!important;max-width:none!important;width:100%!important}
.client-portal-page .main, .client-portal-page main.main{max-width:none!important;width:100%!important;margin:0!important;padding:0 24px 24px!important;background:#f8fbff!important}
.client-portal-page [data-business-context].sf-v149-client-portal-context-bar,
.client-portal-page [data-business-context],
.client-portal-page .business-context-bar,
.client-portal-page .sf-business-context-bar,
.client-portal-page #businessContextBar{border-top:0!important;margin:0 0 14px!important;width:100%!important;max-width:100%!important;border-radius:0 0 18px 18px!important;padding:9px 16px!important;box-shadow:0 10px 24px rgba(7,59,88,.06)!important}
.client-portal-page #existingClientPortal,.client-portal-page .sf-v145-portal{width:100%!important;max-width:none!important}
.client-portal-page aside.sidebar{background:linear-gradient(180deg,#052f47 0%,#073b58 48%,#086b7d 100%)!important;border-right:0!important;box-shadow:14px 0 38px rgba(2,8,23,.14)!important}
.client-portal-page .sf-v145-client-nav{gap:7px!important;margin-top:20px!important}
.client-portal-page .sf-v145-nav-section{color:rgba(255,255,255,.56)!important;margin:16px 10px 6px!important}
.client-portal-page .sf-v145-nav-link{min-height:42px!important;padding:10px 12px!important;border-radius:15px!important;color:rgba(239,252,255,.86)!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.06)!important;font-size:14px!important;letter-spacing:.01em!important}
.client-portal-page .sf-v145-nav-link:hover{background:rgba(18,191,196,.17)!important;transform:translateX(2px)!important;transition:background .18s ease, transform .18s ease!important}
.client-portal-page .sf-v145-nav-link.active{background:linear-gradient(135deg,rgba(18,191,196,.28),rgba(255,255,255,.12))!important;border-color:rgba(18,191,196,.38)!important;box-shadow:0 10px 24px rgba(0,0,0,.11)!important}
.client-portal-page .sf-v145-nav-icon{width:24px!important;min-width:24px!important;height:24px!important;border-radius:10px!important;background:rgba(255,255,255,.10)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.client-portal-page .sf-v145-head{padding:10px 14px!important;border-radius:18px!important;min-height:70px!important;margin-bottom:12px!important;box-shadow:0 12px 32px rgba(7,59,88,.15)!important;background:linear-gradient(135deg,#073b58,#087f93)!important}
.client-portal-page .sf-v150-client-person{gap:10px!important}
.client-portal-page .sf-v145-head .sf-v145-avatar{width:48px!important;height:48px!important;border-radius:16px!important;font-size:21px!important}
.client-portal-page .sf-v150-client-meta{display:grid!important;gap:2px!important}
.client-portal-page .sf-v150-name-row{display:flex!important;align-items:center!important;gap:14px!important;flex-wrap:wrap!important}
.client-portal-page .sf-v150-name-row h2{font-size:20px!important;line-height:1.1!important;margin:0!important;color:#fff!important}
.client-portal-page .sf-v150-address{font-size:12px!important;font-weight:800!important;color:rgba(255,255,255,.78)!important;padding:4px 9px!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.12)!important}
.client-portal-page .sf-v150-client-meta p{display:flex!important;align-items:center!important;gap:8px!important;margin:2px 0 0!important;font-size:12px!important;color:rgba(255,255,255,.86)!important}
.client-portal-page .sf-v150-dot{opacity:.55!important;margin:0 3px!important}
.client-portal-page .sf-v150-client-meta small{font-size:11px!important;color:rgba(255,255,255,.68)!important}
.client-portal-page .sf-v145-tabs{margin-bottom:14px!important}
.client-portal-page .sf-v145-tabs button{padding:7px 11px!important;font-size:12px!important}
.sf-v150-reports-intro{padding:16px 18px!important;border-radius:20px!important;background:linear-gradient(135deg,rgba(7,59,88,.96),rgba(10,140,160,.9))!important;color:#fff!important;margin-bottom:14px!important}
.sf-v150-reports-intro h2{margin:0 0 4px!important;color:#fff!important}.sf-v150-reports-intro p{margin:0!important;color:rgba(255,255,255,.84)!important}
.sf-v150-report-card{margin-bottom:16px!important;overflow:hidden!important}.sf-v150-report-card-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;margin-bottom:12px!important}.sf-v150-report-card-head h3{margin:0 0 4px!important}.sf-v150-report-card-head p{margin:0!important;color:#64748b!important}.sf-v150-report-actions select{border:1px solid rgba(7,59,88,.16)!important;border-radius:999px!important;padding:8px 12px!important;font-weight:900!important;color:#073b58!important;background:#fff!important}.sf-v150-report-table-wrap{width:100%!important;overflow:auto!important;border:1px solid rgba(15,41,64,.10)!important;border-radius:16px!important}.sf-v150-report-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;min-width:900px!important;font-size:12px!important}.sf-v150-report-table th{position:sticky!important;top:0!important;background:#073b58!important;color:#fff!important;text-align:left!important;padding:10px!important;white-space:nowrap!important}.sf-v150-report-table td{padding:9px 10px!important;border-top:1px solid rgba(15,41,64,.08)!important;vertical-align:top!important;max-width:280px!important}.sf-v150-report-table tr:nth-child(even) td{background:#f8fbfc!important}
.sf-v150-logo-animated{position:relative!important;overflow:hidden!important;isolation:isolate!important}.sf-v150-logo-animated:before{content:""!important;position:absolute!important;inset:10px!important;border-radius:24px!important;background:radial-gradient(circle at 50% 50%,rgba(18,191,196,.20),transparent 62%)!important;animation:sfV150Pulse 4.8s ease-in-out infinite!important;z-index:0!important}.sf-v150-logo-animated:after{content:""!important;position:absolute!important;top:10px!important;bottom:10px!important;width:36%!important;left:-45%!important;background:linear-gradient(115deg,transparent,rgba(255,255,255,.32),transparent)!important;transform:skewX(-17deg)!important;animation:sfV150Sheen 5.8s ease-in-out infinite!important;z-index:2!important}.sf-v150-logo-img{position:relative!important;z-index:1!important;animation:sfV150Float 5.8s ease-in-out infinite!important}@keyframes sfV150Pulse{0%,100%{opacity:.45;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes sfV150Sheen{0%,55%,100%{left:-45%;opacity:0}68%{opacity:1}84%{left:112%;opacity:0}}@keyframes sfV150Float{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@media(max-width:980px){.client-portal-page .main,.client-portal-page main.main{padding:0 14px 18px!important}.client-portal-page .sf-v145-head{align-items:flex-start!important}.sf-v150-report-card-head{flex-direction:column!important}.sf-v150-name-row{gap:8px!important}}


/* v151 compact professional client portal login card */
.client-portal-page .sf-v151-client-login-card{
  max-width:520px!important;
  margin:34px auto 28px!important;
  padding:24px 26px 26px!important;
  border-radius:22px!important;
  border:1px solid rgba(18,191,196,.18)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,252,253,.96))!important;
  box-shadow:0 18px 46px rgba(17,49,69,.10)!important;
}
.client-portal-page .sf-v151-client-login-card .sf-v151-login-kicker{
  display:flex!important;
  justify-content:center!important;
  margin-bottom:8px!important;
}
.client-portal-page .sf-v151-client-login-card .badge{
  font-size:11px!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  padding:5px 10px!important;
  border-radius:999px!important;
}
.client-portal-page .sf-v151-client-login-card h2{
  margin:0 0 14px!important;
  text-align:center!important;
  font-size:24px!important;
  line-height:1.14!important;
  letter-spacing:-.03em!important;
}
.client-portal-page .sf-v151-login-helper{
  max-width:410px!important;
  margin:0 auto 22px!important;
  text-align:center!important;
  color:#607889!important;
  font-size:13.5px!important;
  line-height:1.45!important;
}
.client-portal-page .sf-v151-client-login-form{
  gap:14px!important;
  max-width:430px!important;
  margin:0 auto!important;
}
.client-portal-page .sf-v151-client-login-form label{
  display:block!important;
  margin:0 0 7px!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
  color:#35546a!important;
}
.client-portal-page .sf-v151-client-login-form input{
  min-height:42px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
  border:1px solid rgba(48,88,111,.18)!important;
  background:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
}
.client-portal-page .sf-v151-client-login-form .btn,
.client-portal-page .sf-v151-client-login-form button[type="submit"]{
  min-height:42px!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  justify-self:center!important;
  min-width:180px!important;
  margin-top:4px!important;
}
@media (max-width:640px){
  .client-portal-page .sf-v151-client-login-card{
    max-width:calc(100% - 24px)!important;
    margin:22px auto!important;
    padding:20px!important;
  }
  .client-portal-page .sf-v151-client-login-card h2{font-size:22px!important;}
}


/* v152 unauthenticated public-page streamlining + professional logo animation */
body:not(.logged-in-page) .launch-bar{
  padding:5px 12px!important;
  font-size:12px!important;
  line-height:1.25!important;
  letter-spacing:.02em!important;
}
body:not(.logged-in-page) .site-header{
  box-shadow:0 8px 24px rgba(7,94,146,.055)!important;
  border-bottom:1px solid rgba(214,232,239,.72)!important;
}
body:not(.logged-in-page) .site-header .container.nav,
body:not(.logged-in-page) .nav{
  min-height:66px!important;
  height:66px!important;
  padding:6px 0!important;
  gap:14px!important;
}
body:not(.logged-in-page) .site-header .logo{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:18px!important;
  padding:2px 4px!important;
}
body:not(.logged-in-page) .site-header .logo::before{
  content:""!important;
  position:absolute!important;
  inset:8px 5px!important;
  border-radius:18px!important;
  background:radial-gradient(circle at 50% 50%,rgba(18,191,196,.16),transparent 68%)!important;
  opacity:.75!important;
  transform:scale(.94)!important;
  animation:sfV152LogoAura 5.8s ease-in-out infinite!important;
  z-index:0!important;
  pointer-events:none!important;
}
body:not(.logged-in-page) .site-header .logo::after{
  content:""!important;
  position:absolute!important;
  top:7px!important;
  bottom:7px!important;
  width:34%!important;
  left:-42%!important;
  background:linear-gradient(112deg,transparent,rgba(255,255,255,.48),transparent)!important;
  transform:skewX(-18deg)!important;
  animation:sfV152LogoSheen 6.2s ease-in-out infinite!important;
  z-index:2!important;
  pointer-events:none!important;
}
body:not(.logged-in-page) .site-header .logo-image-wide{
  position:relative!important;
  z-index:1!important;
  height:54px!important;
  max-height:54px!important;
  max-width:210px!important;
  margin:0!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 15px rgba(7,94,146,.10))!important;
  animation:sfV152LogoFloat 5.8s ease-in-out infinite!important;
}
body:not(.logged-in-page) .nav-links{
  gap:12px!important;
  font-size:13px!important;
  line-height:1!important;
}
body:not(.logged-in-page) .nav-links a{
  padding:7px 4px!important;
  white-space:nowrap!important;
}
body:not(.logged-in-page) .nav-links .btn,
body:not(.logged-in-page) .nav-actions .btn{
  min-height:36px!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  font-size:12.5px!important;
}
body:not(.logged-in-page) .hero,
body:not(.logged-in-page) .page-hero{
  padding-top:34px!important;
  padding-bottom:24px!important;
}
body:not(.logged-in-page) .section{
  padding-top:38px!important;
  padding-bottom:38px!important;
}
body:not(.logged-in-page) .hero-grid,
body:not(.logged-in-page) .feature-detail-layout,
body:not(.logged-in-page) .two,
body:not(.logged-in-page) .form-shell,
body:not(.logged-in-page) .booking-shell{
  gap:22px!important;
}
body:not(.logged-in-page) h1{
  font-size:clamp(30px,4.8vw,52px)!important;
  line-height:1.02!important;
  margin-top:12px!important;
  letter-spacing:-.035em!important;
}
body:not(.logged-in-page) h2{
  font-size:clamp(24px,3.4vw,38px)!important;
  line-height:1.08!important;
}
body:not(.logged-in-page) h3{
  font-size:20px!important;
  line-height:1.12!important;
}
body:not(.logged-in-page) p,
body:not(.logged-in-page) li,
body:not(.logged-in-page) .card p,
body:not(.logged-in-page) .visual-tile p,
body:not(.logged-in-page) .feature-bullet p{
  font-size:14px!important;
  line-height:1.45!important;
}
body:not(.logged-in-page) .lead{
  font-size:16px!important;
  line-height:1.52!important;
  margin-top:14px!important;
  max-width:640px!important;
}
body:not(.logged-in-page) .badge{
  padding:7px 11px!important;
  font-size:12px!important;
}
body:not(.logged-in-page) .actions,
body:not(.logged-in-page) .hero-actions{
  gap:10px!important;
  margin-top:16px!important;
}
body:not(.logged-in-page) .actions .btn,
body:not(.logged-in-page) .hero-actions .btn,
body:not(.logged-in-page) main .btn{
  min-height:38px!important;
  padding:9px 14px!important;
  border-radius:13px!important;
  font-size:13px!important;
}
body:not(.logged-in-page) .quick-points{
  gap:8px!important;
  margin-top:16px!important;
}
body:not(.logged-in-page) .quick-points div{
  padding:9px 11px!important;
  border-radius:13px!important;
  font-size:13px!important;
}
body:not(.logged-in-page) .card,
body:not(.logged-in-page) .demo-card,
body:not(.logged-in-page) .booking-business-hero,
body:not(.logged-in-page) .spa-panel{
  padding:18px!important;
  border-radius:20px!important;
}
body:not(.logged-in-page) .demo-card{
  max-width:470px!important;
  justify-self:end!important;
}
body:not(.logged-in-page) .mock-row{
  padding:12px!important;
  margin-top:10px!important;
  border-radius:16px!important;
}
body:not(.logged-in-page) .mock-row strong{
  font-size:17px!important;
}
body:not(.logged-in-page) .visual-strip,
body:not(.logged-in-page) .grid-3,
body:not(.logged-in-page) .grid-4,
body:not(.logged-in-page) .pricing,
body:not(.logged-in-page) .related-feature-grid{
  gap:12px!important;
}
body:not(.logged-in-page) .visual-tile{
  padding:14px!important;
  min-height:112px!important;
  border-radius:20px!important;
}
body:not(.logged-in-page) .visual-icon,
body:not(.logged-in-page) .icon{
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  font-size:22px!important;
  margin-bottom:8px!important;
}
body:not(.logged-in-page) .flow-diagram{
  gap:9px!important;
  margin:18px 0 4px!important;
}
body:not(.logged-in-page) .flow-step{
  padding:12px 10px!important;
  border-radius:18px!important;
}
body:not(.logged-in-page) .flow-step span{
  width:34px!important;
  height:34px!important;
  border-radius:12px!important;
  font-size:18px!important;
}
body:not(.logged-in-page) .dashboard-mockup{
  padding:14px!important;
  border-radius:22px!important;
  max-width:500px!important;
  justify-self:end!important;
}
body:not(.logged-in-page) .sf-stat-ribbon{
  gap:10px!important;
  margin-top:16px!important;
}
body:not(.logged-in-page) .sf-stat{
  padding:12px!important;
  border-radius:18px!important;
}
body:not(.logged-in-page) .sf-stat strong{
  font-size:24px!important;
}
body:not(.logged-in-page) .feature-visual-card{
  min-height:240px!important;
  padding:16px!important;
  border-radius:24px!important;
}
body:not(.logged-in-page) .feature-illustration{
  max-width:360px!important;
  padding:14px!important;
  border-radius:22px!important;
}
body:not(.logged-in-page) .feature-bullets{
  gap:9px!important;
  margin-top:12px!important;
}
body:not(.logged-in-page) .feature-bullet{
  padding:11px!important;
  border-radius:16px!important;
}
body:not(.logged-in-page) .price{
  font-size:32px!important;
  margin-top:10px!important;
}
body:not(.logged-in-page) .features{
  gap:7px!important;
  margin:12px 0!important;
}
body:not(.logged-in-page) input,
body:not(.logged-in-page) select,
body:not(.logged-in-page) textarea{
  padding:10px 12px!important;
  border-radius:13px!important;
}
body:not(.logged-in-page) label{
  font-size:12.5px!important;
  margin-bottom:6px!important;
}
body:not(.logged-in-page) .login-box{
  max-width:410px!important;
  margin:32px auto!important;
}
body:not(.logged-in-page) .footer,
body:not(.logged-in-page) .site-footer{
  padding-top:34px!important;
  padding-bottom:28px!important;
  margin-top:34px!important;
}
body:not(.logged-in-page) .footer-grid{
  gap:18px!important;
}
body:not(.logged-in-page) .footer .logo-image-wide,
body:not(.logged-in-page) .footer-logo{
  height:70px!important;
  max-height:70px!important;
  max-width:250px!important;
}
@keyframes sfV152LogoAura{
  0%,100%{opacity:.45;transform:scale(.94)}
  48%{opacity:.95;transform:scale(1.03)}
}
@keyframes sfV152LogoSheen{
  0%,58%,100%{left:-42%;opacity:0}
  70%{opacity:1}
  86%{left:110%;opacity:0}
}
@keyframes sfV152LogoFloat{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-1.5px) scale(1.01)}
}
@media(max-width:980px){
  body:not(.logged-in-page) .site-header .container.nav,
  body:not(.logged-in-page) .nav{
    min-height:58px!important;
    height:auto!important;
    padding:6px 0!important;
  }
  body:not(.logged-in-page) .site-header .logo-image-wide{
    height:48px!important;
    max-height:48px!important;
    max-width:190px!important;
  }
  body:not(.logged-in-page) .hero,
  body:not(.logged-in-page) .page-hero{
    padding-top:28px!important;
  }
  body:not(.logged-in-page) .demo-card,
  body:not(.logged-in-page) .dashboard-mockup{
    justify-self:stretch!important;
    max-width:none!important;
  }
}
@media(max-width:640px){
  body:not(.logged-in-page) .site-header .logo-image-wide{
    height:42px!important;
    max-height:42px!important;
    max-width:170px!important;
  }
  body:not(.logged-in-page) .site-header .container.nav,
  body:not(.logged-in-page) .nav{
    min-height:54px!important;
  }
  body:not(.logged-in-page) h1{font-size:32px!important;}
  body:not(.logged-in-page) .section{padding-top:30px!important;padding-bottom:30px!important;}
}


/* v153 top login button colors/order polish */
#sfV125TopLoginBar .sf-v125-actions,
.login-status-actions,
.sf-v114-actions,
.sf-v115-actions,
.sf-v99-actions,
.sf-v100-actions,
.sf-v102-actions,
.sf-v103-actions{
  gap:7px!important;
  align-items:center!important;
}
#sfV125TopLoginBar a.sf-v153-staff-login-highlight,
#sfV125TopLoginBar a.sf-v89-staff-login-highlight,
.login-status-actions a.sf-v153-staff-login-highlight,
.login-status-actions a.sf-v89-staff-login-highlight,
.sf-v114-actions a.sf-v153-staff-login-highlight,
.sf-v115-actions a.sf-v153-staff-login-highlight,
#sfV125TopNavDropdown a.sf-v153-staff-login-highlight,
#topNavDropdown a.sf-v153-staff-login-highlight{
  background:linear-gradient(135deg,#fff4a8,#ffd43b)!important;
  color:#3d2a00!important;
  border:1px solid rgba(137,94,0,.26)!important;
  box-shadow:0 8px 20px rgba(255,212,59,.22)!important;
  font-weight:900!important;
}
#sfV125TopLoginBar a.sf-v153-client-login-highlight,
#sfV125TopLoginBar a.client-login-highlight,
.login-status-actions a.sf-v153-client-login-highlight,
.login-status-actions a.client-login-highlight,
.sf-v114-actions a.sf-v153-client-login-highlight,
.sf-v115-actions a.sf-v153-client-login-highlight,
#sfV125TopNavDropdown a.sf-v153-client-login-highlight,
#topNavDropdown a.sf-v153-client-login-highlight{
  background:linear-gradient(135deg,#ff6b6b,#d9272e)!important;
  color:#fff!important;
  border:1px solid rgba(133,0,10,.25)!important;
  box-shadow:0 8px 20px rgba(217,39,46,.2)!important;
  font-weight:900!important;
}
#sfV125TopLoginBar a.sf-v153-create-account,
.login-status-actions a.sf-v153-create-account{
  order:4;
}
#sfV125TopLoginBar .sf-v153-staff-login-highlight,
.login-status-actions .sf-v153-staff-login-highlight{order:2!important;}
#sfV125TopLoginBar .sf-v153-client-login-highlight,
.login-status-actions .sf-v153-client-login-highlight{order:3!important;}
#sfV125TopLoginBar .top-nav-menu,
.login-status-actions .top-nav-menu{order:1!important;}

/* v164 clean consolidated public/client styling: replaces v154-v163 layered public overrides */
body.sf-v164-public-page{--sf-v164-gutter:clamp(14px,3.2vw,42px);} 
body.sf-v164-public-page .site-header .logo.sf-v164-hide-header-logo{display:none!important;}
body.sf-v164-public-page .site-header .container.nav,
body.sf-v164-public-page .site-header .nav{justify-content:center!important;min-height:52px!important;height:auto!important;padding:6px var(--sf-v164-gutter)!important;gap:14px!important;box-sizing:border-box!important;}
body.sf-v164-public-page .site-header .nav-links{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important;text-align:center!important;}
body.sf-v164-public-page .site-header .nav-links a{padding:7px 5px!important;line-height:1!important;}
body.sf-v164-public-page #sfV125TopLoginBar,
body.sf-v164-public-page #globalLoginStatusBar,
body.sf-v164-public-page .login-status-bar{position:relative!important;overflow:visible!important;isolation:isolate!important;z-index:100000!important;min-height:42px!important;}
body.sf-v164-public-page .login-status-inner,
body.sf-v164-public-page .login-status-actions,
body.sf-v164-public-page .sf-v125-actions,
body.sf-v164-public-page .sf-v115-actions,
body.sf-v164-public-page .sf-v114-actions,
body.sf-v164-public-page .sf-v102-actions,
body.sf-v164-public-page .sf-v100-actions,
body.sf-v164-public-page .sf-v99-actions{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;flex-wrap:wrap!important;overflow:visible!important;}
body.sf-v164-public-page .sf-v164-login-action{min-height:35px!important;padding:9px 15px!important;font-size:14px!important;line-height:1!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;}
body.sf-v164-public-page .top-nav-menu{position:relative!important;z-index:2147483000!important;overflow:visible!important;}
body.sf-v164-public-page .top-nav-menu-button{min-height:35px!important;padding:9px 15px!important;font-size:14px!important;line-height:1!important;border-radius:999px!important;}
body.sf-v164-public-page .sf-v164-wordmark-cloud{position:absolute!important;inset:0!important;overflow:hidden!important;pointer-events:none!important;z-index:1!important;}
body.sf-v164-public-page .sf-v164-wordmark-cloud span{position:absolute!important;display:block!important;white-space:nowrap!important;font-size:var(--s,13px)!important;line-height:1!important;font-weight:900!important;letter-spacing:.18em!important;color:rgba(255,255,255,var(--o,.30))!important;text-shadow:0 1px 0 rgba(0,0,0,.10)!important;transform:translate(-50%,-50%) rotate(var(--r,0deg))!important;}
body.sf-v164-public-page .sf-v164-login-wordmark-bar > :not(.sf-v164-wordmark-cloud){position:relative!important;z-index:5!important;}
body.sf-v164-public-page .sf-v164-public-hero-brand{display:grid!important;grid-template-columns:minmax(280px, min(470px,36vw)) minmax(420px,1fr)!important;align-items:center!important;column-gap:clamp(14px,2.5vw,32px)!important;width:calc(100% - (var(--sf-v164-gutter) * 2))!important;margin:0 var(--sf-v164-gutter) 6px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;box-sizing:border-box!important;}
body.sf-v164-public-page .sf-v164-logo-link{display:block!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;position:relative!important;overflow:hidden!important;isolation:isolate!important;line-height:0!important;}
body.sf-v164-public-page .sf-v164-logo-img{display:block!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;animation:none!important;transform:none!important;filter:drop-shadow(0 5px 7px rgba(6,62,102,.10))!important;}
body.sf-v164-public-page .sf-v164-logo-link::before{content:""!important;position:absolute!important;top:9%!important;bottom:18%!important;left:-34%!important;width:28%!important;z-index:3!important;pointer-events:none!important;background:linear-gradient(105deg,transparent 0%,rgba(255,205,0,.1) 18%,rgba(255,222,0,.95) 37%,rgba(255,255,185,1) 50%,rgba(255,190,0,.95) 64%,transparent 88%)!important;filter:drop-shadow(0 0 10px rgba(255,220,0,.9)) drop-shadow(0 0 23px rgba(255,190,0,.72))!important;transform:skewX(-15deg)!important;mix-blend-mode:screen!important;animation:sfV164LogoSunGlare 3.6s ease-in-out infinite!important;}
@keyframes sfV164LogoSunGlare{0%,24%,100%{left:-34%;opacity:0;}34%{opacity:.98;}58%{opacity:1;}77%{left:108%;opacity:0;}}
body.sf-v164-public-page .sf-v164-wellness-panel{position:static!important;width:100%!important;min-width:0!important;margin:0!important;padding:15px 18px!important;box-sizing:border-box!important;border-radius:22px!important;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(228,248,250,.84))!important;border:1px solid rgba(18,139,164,.17)!important;box-shadow:0 10px 24px rgba(6,62,102,.07)!important;transform:none!important;animation:none!important;}
body.sf-v164-public-page .sf-v164-panel-kicker{font-size:11px!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-weight:900!important;color:#0b7590!important;margin-bottom:7px!important;}
body.sf-v164-public-page .sf-v164-wellness-panel h2{font-size:clamp(18px,1.65vw,25px)!important;line-height:1.08!important;letter-spacing:-.02em!important;margin:0 0 9px!important;color:#063e66!important;}
body.sf-v164-public-page .sf-v164-benefit-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px 14px!important;}
body.sf-v164-public-page .sf-v164-benefit-grid span{font-size:13px!important;line-height:1.25!important;color:#275166!important;font-weight:700!important;}
body.sf-v164-public-page main > .hero:first-child,
body.sf-v164-public-page main > .page-hero:first-child{padding-top:18px!important;}
body.sf-v164-public-page .top-nav-dropdown,
body.sf-v164-public-page #sfV125TopNavDropdown,
body.sf-v164-public-page #topNavDropdown,
body.sf-v164-public-page .sf-v164-dropdown{z-index:2147483647!important;box-shadow:0 28px 70px rgba(6,31,52,.35)!important;border:1px solid rgba(13,148,166,.22)!important;background:#fff!important;border-radius:18px!important;overflow-y:auto!important;visibility:visible!important;}
body.sf-v164-public-page .top-nav-menu.open .top-nav-dropdown,
body.sf-v164-public-page .top-nav-dropdown.show{display:block!important;opacity:1!important;visibility:visible!important;}
body.sf-v164-public-page .top-nav-dropdown a{background:transparent!important;color:#063e66!important;border-color:rgba(214,232,239,.9)!important;box-shadow:none!important;}
/* Compact footer retained from earlier public polish. */
body.sf-v164-public-page .footer{padding:20px var(--sf-v164-gutter) 14px!important;margin-top:24px!important;}
body.sf-v164-public-page .footer-grid{gap:12px!important;align-items:start!important;}
body.sf-v164-public-page .footer p{margin:4px 0!important;line-height:1.35!important;}
body.sf-v164-public-page .footer h4{margin:0 0 6px!important;}
body.sf-v164-public-page .footer a{line-height:1.45!important;}
body.sf-v164-public-page .site-credit{margin-top:12px!important;padding-top:10px!important;gap:4px!important;}
/* Client portal signup and authenticated navigation polish. */
.client-portal-page .sf-v164-new-client-signup,
.client-portal-page .sf-v157-new-client-signup{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin-top:12px!important;font-size:13px!important;font-weight:850!important;color:#075e92!important;text-decoration:none!important;}
.client-portal-page.sf-v164-client-nav-polish #clientPortalSideLinks a,
.client-portal-page.sf-v164-client-nav-polish aside.sidebar nav.side-links a,
.client-portal-page.sf-v164-client-nav-polish .sf-v164-client-nav-link{min-height:46px!important;padding:11px 12px!important;border-radius:16px!important;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035))!important;border:1px solid rgba(255,255,255,.12)!important;color:#eafcff!important;font-weight:850!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 18px rgba(0,0,0,.06)!important;transition:transform .15s ease, background .15s ease, border-color .15s ease!important;}
.client-portal-page.sf-v164-client-nav-polish #clientPortalSideLinks a:hover,
.client-portal-page.sf-v164-client-nav-polish aside.sidebar nav.side-links a:hover,
.client-portal-page.sf-v164-client-nav-polish .sf-v164-client-nav-link:hover{background:linear-gradient(135deg,rgba(18,191,196,.30),rgba(255,255,255,.10))!important;border-color:rgba(151,236,244,.42)!important;transform:translateX(3px)!important;}
.client-portal-page.sf-v164-client-nav-polish #clientPortalSideLinks a.active,
.client-portal-page.sf-v164-client-nav-polish aside.sidebar nav.side-links a.active,
.client-portal-page.sf-v164-client-nav-polish .sf-v164-client-nav-link.active{background:linear-gradient(135deg,#12bfc4,#0a8ca0 52%,#073b58)!important;color:#fff!important;border-color:rgba(255,255,255,.24)!important;box-shadow:0 14px 28px rgba(18,191,196,.22),inset 0 1px 0 rgba(255,255,255,.18)!important;}
@media(max-width:980px){
  body.sf-v164-public-page .sf-v164-public-hero-brand{grid-template-columns:1fr!important;row-gap:10px!important;}
  body.sf-v164-public-page .sf-v164-logo-link{max-width:min(470px,100%)!important;}
  body.sf-v164-public-page .sf-v164-benefit-grid{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  body.sf-v164-public-page .sf-v164-public-hero-brand{width:calc(100% - 24px)!important;margin-left:12px!important;margin-right:12px!important;}
  body.sf-v164-public-page .sf-v164-login-action,body.sf-v164-public-page .top-nav-menu-button{font-size:13px!important;padding:8px 12px!important;}
}

/* v165 signup cleanup + required field clarity */
.sf-v165-signup-head{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:22px;align-items:end;margin-bottom:18px}
.sf-v165-required-note{margin:0;font-size:14px}
.required-star{color:#dc2626;font-weight:950}
.sf-v165-form-shell{align-items:start}
.sf-v165-signup-form small,.sf-v165-plan-card small{display:block;margin-top:6px;color:#64748b;font-weight:750;line-height:1.35}
.sf-v165-form-section-title{font-size:13px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:#075E92;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:8px 12px;width:max-content;max-width:100%}
.sf-v165-trial-option{background:linear-gradient(135deg,#ecfeff,#f0fdf4);border:1px solid #a5f3fc;border-radius:16px;padding:13px;margin:12px 0;color:#0f766e!important}
.sf-v165-plan-card .check{margin:10px 0}
@media(max-width:980px){.sf-v165-signup-head{grid-template-columns:1fr}.sf-v165-required-note{max-width:720px}}

/* v166 public locked login bar + reset/security polish */
:root{--sf-v166-login-height:44px}
body.sf-v166-public-login-locked{padding-top:var(--sf-v166-login-height)!important;}
body.sf-v166-public-login-locked #globalLoginStatusBar,
body.sf-v166-public-login-locked .login-status-bar:first-child{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:2147483000!important;box-shadow:0 10px 28px rgba(6,31,52,.16)!important;}
body.sf-v166-public-login-locked .launch-bar{position:relative!important;z-index:50!important;}
.sf-v166-reset-form{max-width:620px;margin-inline:auto}

/* v167 hard fix: locked public login bar + stable dropdown layering */
:root{--sf-v167-login-height:46px;}
html.sf-v167-public-lock,
body.sf-v167-public-lock{scroll-padding-top:var(--sf-v167-login-height)!important;}
body.sf-v167-public-lock{padding-top:var(--sf-v167-login-height)!important;}
body.sf-v167-public-lock #sfV125TopLoginBar,
body.sf-v167-public-lock #globalLoginStatusBar,
body.sf-v167-public-lock .login-status-bar{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:2147483600!important;
  transform:none!important;
  will-change:auto!important;
  overflow:visible!important;
  isolation:isolate!important;
  box-shadow:0 8px 24px rgba(6,31,52,.18)!important;
}
body.sf-v167-public-lock .site-header,
body.sf-v167-public-lock .launch-bar,
body.sf-v167-public-lock main,
body.sf-v167-public-lock footer{position:relative!important;z-index:1!important;}
body.sf-v167-public-lock .top-nav-menu,
body.sf-v167-public-lock #sfV125TopNavMenu,
body.sf-v167-public-lock #topNavMenu{position:relative!important;z-index:2147483640!important;overflow:visible!important;}
body.sf-v167-public-lock .top-nav-dropdown,
body.sf-v167-public-lock #sfV125TopNavDropdown,
body.sf-v167-public-lock #topNavDropdown{
  position:fixed!important;
  z-index:2147483647!important;
  display:none;
  max-height:calc(100vh - var(--sf-v167-login-height) - 16px)!important;
  overflow:auto!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(6,31,52,.38)!important;
}
body.sf-v167-public-lock .top-nav-menu.open .top-nav-dropdown,
body.sf-v167-public-lock .top-nav-dropdown.show,
body.sf-v167-public-lock #sfV125TopNavDropdown.show,
body.sf-v167-public-lock #topNavDropdown.show{display:block!important;opacity:1!important;visibility:visible!important;}

/* v168 trial account controls */
.sf-v168-trial-lock-overlay{
  position:fixed!important; inset:0!important; z-index:2147483646!important;
  background:linear-gradient(135deg, rgba(3,18,38,.92), rgba(7,60,140,.88));
  display:flex!important; align-items:center!important; justify-content:center!important;
  padding:24px!important; backdrop-filter:blur(10px);
}
.sf-v168-trial-lock-card{
  width:min(760px, 100%); background:#fff; color:#0f172a; border-radius:28px;
  box-shadow:0 30px 90px rgba(0,0,0,.34); padding:30px; border:1px solid rgba(18,104,243,.14);
}
.sf-v168-trial-lock-card .badge{display:inline-flex;margin-bottom:12px}
.sf-v168-trial-lock-card h1{margin:0 0 10px;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05;color:#073C8C}
.sf-v168-trial-lock-card p{color:#42526b;line-height:1.55;margin:0 0 14px}
.sf-v168-trial-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.sf-v168-trial-actions .btn{min-height:48px}
.sf-v168-close-account{background:#fff!important;color:#b42318!important;border:1px solid rgba(180,35,24,.35)!important}
.sf-v168-trial-meta{margin-top:12px;font-size:.9rem;color:#64748b}
.sf-v168-trial-days{font-weight:900;color:#073C8C}
.sf-v168-plan-note{margin-top:10px;padding:12px 14px;border-radius:16px;background:#f0f9ff;border:1px solid #bae6fd;color:#075985;font-weight:700}

/* v170 forgot-password polish for every login surface */
.sf-v170-forgot-wrap{margin-top:.55rem;text-align:center;display:flex;justify-content:center}
.sf-v170-forgot-link{border:0;background:transparent;color:var(--blue,#1565c0);font-weight:900;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:.93rem;padding:.25rem .4rem;border-radius:999px}
.sf-v170-forgot-link:hover,.sf-v170-forgot-link:focus{background:rgba(42,124,165,.10);outline:2px solid rgba(42,124,165,.18);outline-offset:2px}
.sf-v170-reset-modal{position:fixed;inset:0;background:rgba(15,35,54,.48);z-index:2147483647;display:flex;align-items:center;justify-content:center;padding:18px}
.sf-v170-reset-card{width:min(520px,100%);background:#fff;border-radius:24px;box-shadow:0 24px 70px rgba(15,35,54,.28);padding:24px;border:1px solid rgba(42,124,165,.18)}
.sf-v170-reset-card h2{margin:.45rem 0 .35rem;font-size:1.45rem;color:var(--navy,#12324a)}
.sf-v170-reset-card p{margin:.25rem 0 1rem;color:#4a6072;line-height:1.45}
.sf-v170-reset-actions{display:flex;gap:.75rem;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-top:.5rem}
.sf-v170-reset-status{margin:.65rem 0 0;font-weight:800;color:#12324a;min-height:1.2rem}
.sf-v170-reset-status.error{color:#b42318}.sf-v170-reset-status.success{color:#027a48}


/* v171 compact sound toggle in the public login bar */
body.sf-v164-public-page .sf-v171-sound-toggle,
body.sf-v167-public-lock .sf-v171-sound-toggle,
.sf-v171-sound-toggle{
  order:5!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:35px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.34)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(226,246,250,.88))!important;
  color:#075e92!important;
  font-weight:900!important;
  font-size:13px!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:0 9px 22px rgba(6,62,102,.13), inset 0 1px 0 rgba(255,255,255,.7)!important;
  position:relative!important;
  z-index:20!important;
  white-space:nowrap!important;
}
.sf-v171-sound-toggle:hover{transform:translateY(-1px)!important;box-shadow:0 12px 26px rgba(6,62,102,.18), inset 0 1px 0 rgba(255,255,255,.8)!important;}
.sf-v171-sound-toggle.is-muted{background:linear-gradient(135deg,#f8fafc,#eef2f7)!important;color:#64748b!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important;}
.sf-v171-speaker{font-size:15px!important;line-height:1!important;filter:drop-shadow(0 1px 0 rgba(255,255,255,.6));}
.sf-v171-sound-toggle.is-muted .sf-v171-speaker{opacity:.72!important;filter:grayscale(1);}
.sf-v171-sound-label{font-size:12px!important;letter-spacing:.01em!important;}
.sf-v171-sound-waves{display:inline-flex!important;align-items:flex-end!important;gap:2px!important;width:16px!important;height:13px!important;}
.sf-v171-sound-waves i{display:block!important;width:3px!important;border-radius:99px!important;background:#12bfc4!important;height:5px!important;opacity:.45!important;transform-origin:bottom!important;}
.sf-v171-sound-toggle.is-playing .sf-v171-sound-waves i{animation:sfV171SoundBars .72s ease-in-out infinite!important;opacity:1!important;}
.sf-v171-sound-toggle.is-playing .sf-v171-sound-waves i:nth-child(2){animation-delay:.12s!important;background:#0a8ca0!important;}
.sf-v171-sound-toggle.is-playing .sf-v171-sound-waves i:nth-child(3){animation-delay:.24s!important;background:#075e92!important;}
.sf-v171-sound-toggle.is-muted .sf-v171-sound-waves i{animation:none!important;background:#94a3b8!important;opacity:.55!important;height:4px!important;}
@keyframes sfV171SoundBars{0%,100%{height:4px;transform:scaleY(.8)}50%{height:13px;transform:scaleY(1)}}
@media(max-width:720px){.sf-v171-sound-label{display:none!important}.sf-v171-sound-toggle{padding:8px 10px!important;min-width:42px!important}}


/* v172 login-only cleanup: remove public brand/logo/wellness block from login.html only */
body.login-page #sfV164PublicHeroBrand,
body.login-page #sfV154PublicLogoStage,
body.login-page .sf-v154-public-logo-stage,
body.login-page .sf-v164-public-hero-brand,
body.login-page .sf-v164-wellness-panel{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
body.login-page .login-box.card > a.logo:first-child{display:none!important;}
body.login-page .login-box.card h2{margin-top:0!important;}
body.login-page main{padding-top:clamp(20px,4vw,46px)!important;}

/* v174 login.html cleanup: staff login page should not show the public navigation logo */
body.login-page header.site-header .logo,
body.login-page header.site-header a.logo,
body.login-page header.site-header .logo-image-wide,
body.login-page header.site-header .sf-v152-public-logo-img,
body.login-page #sfV125SidebarLogoHost,
body.login-page #sfV125SidebarLogoImg{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
body.login-page header.site-header .container.nav,
body.login-page header.site-header .nav{
  justify-content:center!important;
  grid-template-columns:1fr!important;
}
body.login-page header.site-header .nav-links{
  margin-left:0!important;
  justify-content:center!important;
  width:100%!important;
}

/* v175 staff authenticated footer */
body.staff-dashboard-page .app-shell,
body.staff-calendar-page .app-shell{
  min-height:100vh!important;
}
body.staff-dashboard-page main.main,
body.staff-calendar-page main.main{
  min-height:100vh!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  padding-bottom:0!important;
}
body.staff-dashboard-page #staffDashboardContent,
body.staff-calendar-page #staffCalendarList{
  flex:0 0 auto!important;
}
body.staff-dashboard-page .sf-v175-staff-auth-footer,
body.staff-calendar-page .sf-v175-staff-auth-footer{
  width:calc(100% + 60px)!important;
  max-width:none!important;
  margin:32px -30px 0!important;
  margin-top:auto!important;
  padding:22px 30px 24px!important;
  box-sizing:border-box!important;
  border-radius:24px 24px 0 0!important;
  background:linear-gradient(135deg,#05293d 0%,#063954 48%,#0a7684 100%)!important;
  color:rgba(255,255,255,.90)!important;
  border-top:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 -14px 34px rgba(2,8,23,.16)!important;
  text-align:center!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.staff-dashboard-page .sf-v175-staff-auth-footer a,
body.staff-calendar-page .sf-v175-staff-auth-footer a{
  color:#bff8ff!important;
  font-weight:950!important;
  text-decoration:none!important;
}
body.staff-dashboard-page .sf-v175-staff-auth-footer a:hover,
body.staff-calendar-page .sf-v175-staff-auth-footer a:hover{
  color:#ffffff!important;
  text-decoration:underline!important;
}
body.staff-dashboard-page main.main > .site-credit:not(.sf-v175-staff-auth-footer),
body.staff-calendar-page main.main > .site-credit:not(.sf-v175-staff-auth-footer){
  display:none!important;
}
@media(max-width:980px){
  body.staff-dashboard-page .sf-v175-staff-auth-footer,
  body.staff-calendar-page .sf-v175-staff-auth-footer{
    width:calc(100% + 40px)!important;
    margin-left:-20px!important;
    margin-right:-20px!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
}


/* v176 staff authenticated footer hard fix: remove middle-content credit and place a true dark footer at page bottom */
body.staff-dashboard-page,
body.staff-calendar-page{
  min-height:100vh!important;
  display:flex!important;
  flex-direction:column!important;
  background:#f6fbfc!important;
}
body.staff-dashboard-page .app-shell,
body.staff-calendar-page .app-shell{
  flex:1 0 auto!important;
  min-height:auto!important;
}
body.staff-dashboard-page main.main > .site-credit,
body.staff-calendar-page main.main > .site-credit,
body.staff-dashboard-page .main .site-credit,
body.staff-calendar-page .main .site-credit{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  max-height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
}
body.staff-dashboard-page .sf-v176-staff-auth-footer,
body.staff-calendar-page .sf-v176-staff-auth-footer{
  flex:0 0 auto!important;
  width:100%!important;
  margin:0!important;
  padding:20px 24px 22px!important;
  box-sizing:border-box!important;
  background:linear-gradient(135deg,#031f30 0%,#063954 52%,#076a78 100%)!important;
  color:rgba(255,255,255,.92)!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 -14px 32px rgba(2,8,23,.18)!important;
  text-align:center!important;
  font-size:13px!important;
  line-height:1.55!important;
  letter-spacing:.01em!important;
  position:relative!important;
  z-index:5!important;
}
body.staff-dashboard-page .sf-v176-staff-auth-footer a,
body.staff-calendar-page .sf-v176-staff-auth-footer a{
  color:#bff8ff!important;
  font-weight:900!important;
  text-decoration:none!important;
}
body.staff-dashboard-page .sf-v176-staff-auth-footer a:hover,
body.staff-calendar-page .sf-v176-staff-auth-footer a:hover{
  color:#fff!important;
  text-decoration:underline!important;
}

/* v177 unified authenticated business/staff footer and sidebar navigation */
body.logged-in-page:not(.client-portal-page) {
  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  background: #f8fbff !important;
}
body.logged-in-page:not(.client-portal-page) > .app-shell {
  flex: 1 0 auto !important;
  width: 100% !important;
}
body.logged-in-page:not(.client-portal-page) main.main > .site-credit,
body.logged-in-page:not(.client-portal-page) .main .site-credit,
body.logged-in-page:not(.client-portal-page) .sf-v175-staff-auth-footer,
body.logged-in-page:not(.client-portal-page) .sf-v176-staff-auth-footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.logged-in-page:not(.client-portal-page) .sf-v177-auth-footer {
  flex: 0 0 auto !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 20px 24px 22px !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, #031f30 0%, #063954 50%, #076a78 100%) !important;
  color: rgba(255,255,255,.92) !important;
  border-top: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 -16px 34px rgba(2,8,23,.20) !important;
  text-align: center !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  letter-spacing: .01em !important;
  position: relative !important;
  z-index: 20 !important;
}
body.logged-in-page:not(.client-portal-page) .sf-v177-auth-footer a {
  color: #bff8ff !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}
body.logged-in-page:not(.client-portal-page) .sf-v177-auth-footer a:hover {
  color: #fff !important;
  text-decoration: underline !important;
}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links,
body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links {
  gap: 9px !important;
}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links a,
body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a {
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 12px 14px !important;
  border-radius: 16px !important;
  font-weight: 900 !important;
  color: #35516a !important;
  border: 1px solid rgba(18,191,196,.13) !important;
  background: rgba(255,255,255,.74) !important;
  box-shadow: 0 7px 18px rgba(15,23,42,.055) !important;
  text-decoration: none !important;
}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links a:hover,
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links a.active,
body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:hover,
body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a.active {
  color: #05364a !important;
  border-color: rgba(18,191,196,.36) !important;
  background: linear-gradient(135deg, rgba(18,191,196,.16), rgba(51,102,204,.13)) !important;
  box-shadow: 0 12px 24px rgba(18,191,196,.12) !important;
}
@media (max-width: 980px) {
  body.logged-in-page:not(.client-portal-page) .sf-v177-auth-footer {
    padding: 18px 16px 20px !important;
  }
}

/* v178 client authenticated navigation redesign: readable SpaFlow buttons */
body.client-portal-page .app-shell{
  grid-template-columns:280px minmax(0,1fr) !important;
}
body.client-portal-page aside.sidebar,
body.client-portal-page .app-shell .sidebar{
  background:
    radial-gradient(circle at 50% 0%, rgba(18,191,196,.24), transparent 38%),
    linear-gradient(180deg,#062f47 0%,#073b58 48%,#0a6f80 100%) !important;
  border-right:1px solid rgba(191,248,255,.20) !important;
  box-shadow:14px 0 42px rgba(2,8,23,.14) !important;
  padding:0 14px 18px !important;
}
body.client-portal-page .sidebar .logo,
body.client-portal-page .app-shell .sidebar .logo{
  background:rgba(255,255,255,.08) !important;
  border-bottom:1px solid rgba(255,255,255,.14) !important;
  box-shadow:none !important;
  margin:0 -14px 12px !important;
  padding:8px 10px 10px !important;
  border-radius:0 0 24px 24px !important;
}
body.client-portal-page #clientPortalSideLinks,
body.client-portal-page aside.sidebar nav.side-links,
body.client-portal-page .sf-v145-client-nav,
body.client-portal-page .sf-v146-client-nav{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  margin:10px 0 0 !important;
  padding:12px !important;
  border-radius:26px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055)) !important;
  border:1px solid rgba(191,248,255,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 16px 34px rgba(0,0,0,.12) !important;
  backdrop-filter:blur(12px) !important;
}
body.client-portal-page #clientPortalSideLinks::before,
body.client-portal-page aside.sidebar nav.side-links::before{
  content:"Client Portal" !important;
  display:block !important;
  margin:2px 8px 2px !important;
  color:#bff8ff !important;
  font-size:11px !important;
  font-weight:950 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  opacity:.96 !important;
}
body.client-portal-page .sf-v145-nav-section,
body.client-portal-page .sf-v144-nav-section{
  display:none !important;
}
body.client-portal-page #clientPortalSideLinks a,
body.client-portal-page aside.sidebar nav.side-links a,
body.client-portal-page .sf-v145-client-nav a,
body.client-portal-page .sf-v146-client-nav a,
body.client-portal-page .sf-v178-client-nav-link{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  width:100% !important;
  min-height:52px !important;
  box-sizing:border-box !important;
  padding:11px 13px !important;
  border-radius:19px !important;
  color:#073b58 !important;
  font-size:14px !important;
  font-weight:950 !important;
  line-height:1.15 !important;
  letter-spacing:-.01em !important;
  text-decoration:none !important;
  background:linear-gradient(135deg,#ffffff 0%,#effcff 100%) !important;
  border:1px solid rgba(191,248,255,.54) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 9px 20px rgba(2,8,23,.13) !important;
  overflow:hidden !important;
  transform:none !important;
  text-shadow:none !important;
}
body.client-portal-page #clientPortalSideLinks a::before,
body.client-portal-page #clientPortalSideLinks a::after,
body.client-portal-page aside.sidebar nav.side-links a::before,
body.client-portal-page aside.sidebar nav.side-links a::after,
body.client-portal-page .sf-v145-client-nav a::before,
body.client-portal-page .sf-v145-client-nav a::after,
body.client-portal-page .sf-v146-client-nav a::before,
body.client-portal-page .sf-v146-client-nav a::after{
  content:none !important;
  display:none !important;
}
body.client-portal-page .sf-v145-nav-icon,
body.client-portal-page .sf-v144-nav-icon,
body.client-portal-page .sf-v141-nav-icon{
  width:34px !important;
  min-width:34px !important;
  height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:15px !important;
  background:linear-gradient(135deg,rgba(18,191,196,.18),rgba(31,111,234,.14)) !important;
  border:1px solid rgba(18,191,196,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.90) !important;
  font-size:17px !important;
  line-height:1 !important;
  color:#073b58 !important;
}
body.client-portal-page #clientPortalSideLinks a span:last-child,
body.client-portal-page aside.sidebar nav.side-links a span:last-child{
  display:block !important;
  min-width:0 !important;
  overflow:visible !important;
  white-space:normal !important;
  color:inherit !important;
}
body.client-portal-page #clientPortalSideLinks a:hover,
body.client-portal-page aside.sidebar nav.side-links a:hover,
body.client-portal-page .sf-v178-client-nav-link:hover{
  color:#031f30 !important;
  background:linear-gradient(135deg,#ffffff 0%,#dffbff 100%) !important;
  border-color:rgba(191,248,255,.92) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 13px 26px rgba(18,191,196,.18) !important;
  transform:translateX(3px) !important;
}
body.client-portal-page #clientPortalSideLinks a.active,
body.client-portal-page aside.sidebar nav.side-links a.active,
body.client-portal-page .sf-v178-client-nav-link.active{
  color:#ffffff !important;
  background:linear-gradient(135deg,#12bfc4 0%,#0a8ca0 48%,#1f6fea 100%) !important;
  border-color:rgba(255,255,255,.48) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 16px 34px rgba(18,191,196,.28) !important;
}
body.client-portal-page #clientPortalSideLinks a.active .sf-v145-nav-icon,
body.client-portal-page aside.sidebar nav.side-links a.active .sf-v145-nav-icon,
body.client-portal-page #clientPortalSideLinks a.active .sf-v144-nav-icon,
body.client-portal-page aside.sidebar nav.side-links a.active .sf-v144-nav-icon,
body.client-portal-page #clientPortalSideLinks a.active .sf-v141-nav-icon,
body.client-portal-page aside.sidebar nav.side-links a.active .sf-v141-nav-icon{
  color:#ffffff !important;
  background:rgba(255,255,255,.20) !important;
  border-color:rgba(255,255,255,.30) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25) !important;
}
body.client-portal-page #clientPortalSideLinks a[href*="booking"],
body.client-portal-page aside.sidebar nav.side-links a[href*="booking"],
body.client-portal-page #clientPortalSideLinks a[href*="index"],
body.client-portal-page aside.sidebar nav.side-links a[href*="index"]{
  display:none !important;
}
@media(max-width:980px){
  body.client-portal-page .app-shell{grid-template-columns:1fr !important;}
  body.client-portal-page aside.sidebar,
  body.client-portal-page .app-shell .sidebar{position:relative !important;height:auto !important;padding-bottom:12px !important;}
  body.client-portal-page #clientPortalSideLinks,
  body.client-portal-page aside.sidebar nav.side-links{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:9px !important;}
  body.client-portal-page #clientPortalSideLinks::before,
  body.client-portal-page aside.sidebar nav.side-links::before{grid-column:1/-1 !important;}
  body.client-portal-page #clientPortalSideLinks a,
  body.client-portal-page aside.sidebar nav.side-links a{min-height:50px !important;}
}
@media(max-width:560px){
  body.client-portal-page #clientPortalSideLinks,
  body.client-portal-page aside.sidebar nav.side-links{grid-template-columns:1fr !important;}
}


/* v179 client portal locked gray sidebar + no-show/password styling */
body.client-portal-page .app-shell{align-items:start!important;}
body.client-portal-page aside.sidebar,
body.client-portal-page .app-shell .sidebar,
body.client-portal-page .sf-v139-client-sidebar{
  position:sticky!important;
  top:0!important;
  align-self:start!important;
  min-height:100vh!important;
  height:100vh!important;
  overflow-y:auto!important;
  background:linear-gradient(180deg,#eef2f4 0%,#d7dee3 46%,#aebbc4 100%)!important;
  border-right:1px solid rgba(82,101,113,.32)!important;
  box-shadow:14px 0 38px rgba(15,23,42,.12)!important;
}
body.client-portal-page .sidebar .logo,
body.client-portal-page .app-shell .sidebar .logo{
  background:transparent!important;
  border-bottom:1px solid rgba(82,101,113,.18)!important;
  border-radius:0!important;
}
body.client-portal-page #clientPortalSideLinks,
body.client-portal-page aside.sidebar nav.side-links,
body.client-portal-page .sf-v179-client-nav{
  background:rgba(255,255,255,.42)!important;
  border:1px solid rgba(82,101,113,.22)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 14px 28px rgba(82,101,113,.13)!important;
}
body.client-portal-page #clientPortalSideLinks::before,
body.client-portal-page aside.sidebar nav.side-links::before{color:#40515b!important;}
body.client-portal-page #clientPortalSideLinks a,
body.client-portal-page aside.sidebar nav.side-links a,
body.client-portal-page .sf-v179-client-nav-link{
  color:#123142!important;
  background:linear-gradient(135deg,#ffffff 0%,#f2f7f8 100%)!important;
  border-color:rgba(82,101,113,.22)!important;
}
body.client-portal-page #clientPortalSideLinks a.active,
body.client-portal-page aside.sidebar nav.side-links a.active{
  background:linear-gradient(135deg,#4f6877 0%,#2f4757 54%,#0f6f85 100%)!important;
  color:#fff!important;
}
body.client-portal-page.sf-v179-client-privacy a[href*="#soap"],
body.client-portal-page.sf-v179-client-privacy button[data-tab="soap"],
body.client-portal-page.sf-v179-client-privacy #sfV138Tab_soap,
body.client-portal-page.sf-v179-client-privacy #sfV145Tab_soap{display:none!important;}
.sf-v179-noshow-btn{background:#4f6877!important;color:#fff!important;border-color:#4f6877!important;}
.sf-v179-noshow-btn:hover{filter:brightness(1.06)!important;}
.sf-v179-password-card .password-wrap{display:flex!important;gap:8px!important;align-items:center!important;}
.sf-v179-password-card .password-wrap input{flex:1 1 auto!important;}
.sf-v179-password-rules{color:#475569!important;font-size:13px!important;line-height:1.45!important;}
#sfV179PasswordStatus,#sfV142CancellationFeeStatus{font-weight:800!important;color:#0f6f85!important;margin-left:8px!important;}
@media(max-width:980px){
  body.client-portal-page aside.sidebar,
  body.client-portal-page .app-shell .sidebar{position:relative!important;height:auto!important;min-height:0!important;}
}

/* v180 hard client portal stability + Spa-blue nav color */
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar,
body.client-portal-page.sf-v180-client-portal-fixed .app-shell .sidebar,
body.client-portal-page.sf-v180-client-portal-fixed .sf-v139-client-sidebar{
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  min-height:100vh!important;
  overflow-y:auto!important;
  background:linear-gradient(180deg,#d7dde2 0%,#aeb8c1 48%,#8796a1 100%)!important;
  border-right:1px solid rgba(70,84,96,.32)!important;
}
body.client-portal-page.sf-v180-client-portal-fixed .sidebar .logo,
body.client-portal-page.sf-v180-client-portal-fixed #sfV125SidebarLogoHost{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links,
body.client-portal-page.sf-v180-client-portal-fixed .sf-v180-client-nav{
  display:flex!important;
  flex-direction:column!important;
  gap:11px!important;
  margin:10px 0 0!important;
  padding:12px!important;
  background:rgba(50,62,72,.18)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:22px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 16px 28px rgba(15,23,42,.14)!important;
  opacity:1!important;
  visibility:visible!important;
}
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks::before,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links::before{content:none!important;display:none!important;}
body.client-portal-page .sf-v180-nav-title{
  color:#253748!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  padding:3px 8px 0!important;
}
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks a,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links a,
body.client-portal-page.sf-v180-client-portal-fixed .sf-v180-client-nav-btn{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  min-height:54px!important;
  box-sizing:border-box!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#0757d8 0%,#0744bf 52%,#052e8f 100%)!important;
  border:1px solid rgba(255,255,255,.45)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 22px rgba(7,68,191,.24)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.28)!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:hidden!important;
}
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks a:hover,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links a:hover,
body.client-portal-page.sf-v180-client-portal-fixed .sf-v180-client-nav-btn:hover{
  transform:translateX(3px)!important;
  background:linear-gradient(135deg,#0b67f0 0%,#0757d8 52%,#063ab0 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 14px 26px rgba(7,87,216,.30)!important;
}
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks a.active,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links a.active,
body.client-portal-page.sf-v180-client-portal-fixed .sf-v180-client-nav-btn.active{
  background:linear-gradient(135deg,#12bfc4 0%,#0757d8 48%,#042875 100%)!important;
  outline:2px solid rgba(255,255,255,.62)!important;
  outline-offset:0!important;
}
body.client-portal-page .sf-v180-client-nav-icon,
body.client-portal-page .sf-v145-nav-icon,
body.client-portal-page .sf-v144-nav-icon{
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  color:#fff!important;
  font-size:17px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18)!important;
}
body.client-portal-page.sf-v180-client-portal-fixed main.main,
body.client-portal-page.sf-v180-client-portal-fixed #existingClientPortal{
  opacity:1!important;
  visibility:visible!important;
}
body.client-portal-page.sf-v180-client-portal-fixed #sfV138Tab_soap,
body.client-portal-page.sf-v180-client-portal-fixed #sfV145Tab_soap,
body.client-portal-page.sf-v180-client-portal-fixed a[href*="#soap"],
body.client-portal-page.sf-v180-client-portal-fixed button[data-tab="soap"]{display:none!important;}
@media(max-width:980px){
  body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar,
  body.client-portal-page.sf-v180-client-portal-fixed .app-shell .sidebar{position:relative!important;height:auto!important;min-height:0!important;}
}

/* v181 strict client authenticated sidebar links */
body.sf-v181-client-auth-nav-only aside.sidebar nav.side-links,
body.sf-v181-client-auth-nav-only .sidebar .side-links{
  gap:12px!important;
}
body.sf-v181-client-auth-nav-only aside.sidebar nav.side-links a:not([data-client-auth-link="true"]),
body.sf-v181-client-auth-nav-only .sidebar .side-links a:not([data-client-auth-link="true"]){
  display:none!important;
}
body.sf-v181-client-auth-nav-only .sf-v181-client-only-link{
  display:flex!important;
}
body.sf-v181-client-auth-nav-only .sf-v181-client-nav-title{
  display:block!important;
  margin:4px 4px 8px!important;
  padding:0!important;
  color:#41515a!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}

/* v182 client portal overview attendance + intake status */
.sf-v182-intake-summary-card h3{margin-bottom:14px!important;color:#123f4b!important;}
.sf-v182-attendance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 16px;}
.sf-v182-attendance-grid div{border:1px solid rgba(16,119,140,.22);background:linear-gradient(135deg,#f6fdff,#eaf9fb);border-radius:16px;padding:12px 10px;text-align:center;box-shadow:0 10px 22px rgba(12,86,105,.08);}
.sf-v182-attendance-grid span{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#4a6870;margin-bottom:4px;}
.sf-v182-attendance-grid strong{display:block;font-size:1.65rem;line-height:1;color:#0f6f86;}
.sf-v182-intake-status{border-radius:18px;padding:14px;border:1px solid rgba(16,119,140,.2);background:#f8feff;display:grid;gap:10px;}
.sf-v182-intake-status.overdue{border-color:rgba(180,74,38,.35);background:linear-gradient(135deg,#fff9f4,#fff2e9);}
.sf-v182-intake-status.current{background:linear-gradient(135deg,#f5fffb,#e8fbf2);border-color:rgba(31,135,91,.28);}
.sf-v182-intake-status span{display:block;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#5f7378;}
.sf-v182-intake-status strong{display:block;font-size:1.12rem;color:#123f4b;margin-top:2px;}
.sf-v182-intake-status small{display:block;color:#5e6f75;margin-top:3px;}
.sf-v182-intake-btn{justify-self:start;margin-top:2px;}
.sf-v182-booking-blocked{border:1px solid rgba(180,74,38,.35)!important;background:linear-gradient(135deg,#fff9f4,#fff1e7)!important;margin-top:14px;}
.sf-v182-booking-disabled{opacity:.78;filter:saturate(.75);}
@media(max-width:720px){.sf-v182-attendance-grid{grid-template-columns:1fr;}}

/* v183 compact client profile change-password form */
body.client-portal-page #sfV179ClientPasswordCard,
body.client-portal-page .sf-v179-password-card{
  max-width:560px!important;
  padding:18px 20px!important;
  border-radius:18px!important;
}
body.client-portal-page #sfV179ClientPasswordCard h3,
body.client-portal-page .sf-v179-password-card h3{
  font-size:1.05rem!important;
  line-height:1.2!important;
  margin:0 0 6px!important;
}
body.client-portal-page #sfV179ClientPasswordCard .sf-v179-password-rules,
body.client-portal-page .sf-v179-password-card .sf-v179-password-rules{
  font-size:12px!important;
  line-height:1.35!important;
  margin:0 0 12px!important;
  max-width:500px!important;
}
body.client-portal-page #sfV179ClientPasswordCard form,
body.client-portal-page .sf-v179-password-card form,
body.client-portal-page #sfV179ClientPasswordCard .form-grid,
body.client-portal-page .sf-v179-password-card .form-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  max-width:500px!important;
}
body.client-portal-page #sfV179ClientPasswordCard label,
body.client-portal-page .sf-v179-password-card label{
  font-size:12px!important;
  font-weight:850!important;
  margin-bottom:4px!important;
}
body.client-portal-page #sfV179ClientPasswordCard .password-wrap,
body.client-portal-page .sf-v179-password-card .password-wrap{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:500px!important;
}
body.client-portal-page #sfV179ClientPasswordCard input[type="password"],
body.client-portal-page #sfV179ClientPasswordCard input[type="text"],
body.client-portal-page .sf-v179-password-card input[type="password"],
body.client-portal-page .sf-v179-password-card input[type="text"]{
  width:100%!important;
  min-height:34px!important;
  height:34px!important;
  padding:7px 10px!important;
  font-size:13px!important;
  border-radius:10px!important;
  box-sizing:border-box!important;
}
body.client-portal-page #sfV179ClientPasswordCard .password-toggle,
body.client-portal-page .sf-v179-password-card .password-toggle{
  flex:0 0 auto!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.client-portal-page #sfV179ClientPasswordCard .btn,
body.client-portal-page .sf-v179-password-card .btn{
  width:auto!important;
  justify-self:start!important;
  min-height:36px!important;
  padding:8px 16px!important;
  border-radius:12px!important;
  font-size:13px!important;
  margin-top:2px!important;
}
body.client-portal-page #sfV179PasswordStatus{
  display:inline-block!important;
  font-size:12px!important;
  margin-left:0!important;
  padding-top:2px!important;
}
@media(max-width:640px){
  body.client-portal-page #sfV179ClientPasswordCard,
  body.client-portal-page .sf-v179-password-card{max-width:100%!important;padding:16px!important;}
  body.client-portal-page #sfV179ClientPasswordCard .password-toggle,
  body.client-portal-page .sf-v179-password-card .password-toggle{padding:0 8px!important;font-size:11px!important;}
}

/* v187 safe rollback-from-v183 client portal nav/glow fixes
   Static CSS only: no mutation observers, no DOM rewriting, no render-loop risk. */
body.client-portal-page aside.sidebar nav.side-links,
body.client-portal-page #clientPortalSideLinks{
  opacity:1!important;
  visibility:visible!important;
  display:flex!important;
}
body.client-portal-page #clientPortalSideLinks a,
body.client-portal-page aside.sidebar nav.side-links a,
body.client-portal-page .sf-v180-client-nav-btn,
body.client-portal-page .sf-v181-client-only-link{
  background:linear-gradient(135deg,#0757d8 0%,#0744bf 52%,#052e8f 100%)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.45)!important;
  text-decoration:none!important;
  text-shadow:0 1px 2px rgba(0,0,0,.28)!important;
}
body.client-portal-page #clientPortalSideLinks a.active,
body.client-portal-page aside.sidebar nav.side-links a.active,
body.client-portal-page .sf-v180-client-nav-btn.active,
body.client-portal-page .sf-v181-client-only-link.active{
  background:linear-gradient(135deg,#12bfc4 0%,#0757d8 48%,#042875 100%)!important;
  color:#ffffff!important;
}
body.client-portal-page #clientPortalSideLinks a:visited,
body.client-portal-page aside.sidebar nav.side-links a:visited{color:#ffffff!important;}
body.client-portal-page .sf-v145-nav-section{display:none!important;}
body.client-portal-page #sfV125SidebarLogoHost,
body.client-portal-page .sf-v140-sidebar-logo-host,
body.client-portal-page .sidebar .logo{
  position:relative!important;
  background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.98) 0%,rgba(255,255,255,.82) 35%,rgba(255,255,255,.34) 58%,rgba(255,255,255,0) 78%)!important;
  border:0!important;
  box-shadow:0 0 34px rgba(255,255,255,.88),0 0 72px rgba(255,255,255,.46)!important;
}
body.client-portal-page #sfV125SidebarLogoImg,
body.client-portal-page .sf-v140-sidebar-logo,
body.client-portal-page .sidebar .logo img{
  filter:drop-shadow(0 0 16px rgba(255,255,255,.92)) drop-shadow(0 0 34px rgba(255,255,255,.58))!important;
}

/* v188 potential-client CSV invite import */
.sf-v188-import-card{border:1px solid rgba(15,118,110,.18);background:linear-gradient(135deg,#ffffff,#f5fbfb);box-shadow:0 14px 34px rgba(15,23,42,.08)}
.sf-v188-import-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0}
.sf-v188-import-summary{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin:12px 0}
.sf-v188-import-stat{border-radius:16px;background:#eefafa;border:1px solid rgba(15,118,110,.16);padding:12px}
.sf-v188-import-stat strong{display:block;font-size:1.35rem;color:#0f766e}.sf-v188-import-stat span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#64748b}
.sf-v188-import-table-wrap{max-height:310px;overflow:auto;border:1px solid #dbeafe;border-radius:16px;background:#fff;margin-top:12px}.sf-v188-import-table{width:100%;border-collapse:collapse;font-size:.9rem}.sf-v188-import-table th{position:sticky;top:0;background:#0f766e;color:#fff;text-align:left;padding:10px;z-index:1}.sf-v188-import-table td{padding:9px 10px;border-bottom:1px solid #e2e8f0;vertical-align:top}.sf-v188-import-table tr:nth-child(even){background:#f8fafc}.sf-v188-chip{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:.75rem;font-weight:800;background:#e0f2fe;color:#075985;margin:2px}.sf-v188-chip.sms{background:#fef3c7;color:#92400e}.sf-v188-chip.sent{background:#dcfce7;color:#166534}.sf-v188-chip.err{background:#fee2e2;color:#991b1b}.sf-v188-message-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.sf-v188-message-grid textarea{min-height:150px;font-size:.92rem}.sf-v188-send-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}.sf-v188-send-row label{display:inline-flex;gap:6px;align-items:center;font-weight:800}.sf-v188-status{margin-top:10px;font-weight:800;color:#0f766e}.sf-v188-status.error{color:#991b1b}.sf-v188-muted{color:#64748b;font-size:.88rem}.sf-v188-file{padding:12px;border:1px dashed #0f766e;border-radius:14px;background:#f0fdfa;width:100%}@media(max-width:780px){.sf-v188-import-summary,.sf-v188-message-grid{grid-template-columns:1fr}.sf-v188-import-table{font-size:.82rem}}

/* v190 settings staff edit repair + service/add-on image source chooser */
.sf-v190-image-control{border:1px solid #d7e3ee;border-radius:18px;background:#f8fbfd;padding:14px;margin-top:8px;box-shadow:0 10px 24px rgba(13,80,102,.06)}
.sf-v190-image-control h4{margin:0 0 6px;font-size:1rem;color:#153b4a}
.sf-v190-image-control p{margin:0 0 12px;color:#587080;font-size:.9rem;line-height:1.35}
.sf-v190-image-source-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 12px}
.sf-v190-source-btn{border:1px solid #b9d8e3;background:#fff;color:#164456;border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer;transition:.15s ease;font-size:.92rem}
.sf-v190-source-btn:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(13,80,102,.12)}
.sf-v190-source-btn.is-active{background:#1a9bb1;color:#fff;border-color:#1a9bb1;box-shadow:0 10px 18px rgba(26,155,177,.22)}
.sf-v190-image-panel{display:none;border-top:1px solid #dbeaf1;padding-top:12px;margin-top:8px}
.sf-v190-image-panel.is-active{display:block}
.sf-v190-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:10px;margin-top:10px}
.sf-v190-image-choice{border:3px solid transparent;background:#fff;border-radius:16px;padding:5px;cursor:pointer;box-shadow:0 8px 16px rgba(13,80,102,.08);transition:.15s ease;min-height:86px;display:flex;align-items:center;justify-content:center;position:relative}
.sf-v190-image-choice:hover{transform:translateY(-2px);border-color:#93d7e1}
.sf-v190-image-choice.is-selected{border-color:#ffc83d;box-shadow:0 0 0 3px rgba(255,200,61,.28),0 12px 22px rgba(13,80,102,.16)}
.sf-v190-image-choice.is-selected:after{content:'✓';position:absolute;top:4px;right:5px;background:#ffc83d;color:#24313a;width:22px;height:22px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.85rem}
.sf-v190-image-choice img{width:100%;height:72px;object-fit:cover;border-radius:12px;display:block}
.sf-v190-upload-row{display:grid;grid-template-columns:1fr;gap:12px}
.sf-v190-upload-row input[type=file]{background:#fff;border:1px dashed #9fc9d5;border-radius:14px;padding:12px;width:100%}
.sf-v190-existing-title{margin:12px 0 4px;font-weight:800;color:#153b4a;font-size:.92rem}
.sf-v190-empty-note{background:#fff;border:1px dashed #cbdbe4;border-radius:14px;padding:12px;color:#607888;font-size:.9rem}
.sf-v190-selected-preview{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dbeaf1;border-radius:14px;padding:8px;margin-top:10px;color:#234655;font-weight:800;font-size:.9rem}
.sf-v190-selected-preview img{width:54px;height:42px;object-fit:cover;border-radius:10px;border:1px solid #dbe5f0}
.settings-page .sf-v169-image-picker{display:none!important}
.settings-page .sf-v169-custom-note{display:none!important}
#editStaffPanel .sf-v190-staff-edit-form{gap:12px}
#editStaffPanel .sf-v190-staff-edit-form h3{margin-top:0}
#editStaffPanel .sf-v190-edit-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:8px}

/* v191 client/staff mailbox + stable client sidebar */
body.client-portal-page #clientPortalSideLinks{
  display:flex!important;flex-direction:column!important;gap:10px!important;position:relative!important;z-index:3!important;
}
body.client-portal-page #clientPortalSideLinks a,
body.client-portal-page #clientPortalSideLinks button{
  width:100%!important;box-sizing:border-box!important;border-radius:16px!important;padding:12px 13px!important;
  border:1px solid rgba(255,255,255,.38)!important;background:linear-gradient(135deg,#0b63ce,#063f9e)!important;
  color:#fff!important;font-weight:900!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;gap:10px!important;
  box-shadow:0 8px 18px rgba(2,45,100,.18)!important;cursor:pointer!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-section{color:#e6f0f8!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:950!important;margin:8px 4px 2px!important;}
body.client-portal-page #clientPortalSideLinks a:hover,
body.client-portal-page #clientPortalSideLinks button:hover{transform:translateY(-1px);filter:brightness(1.08)}
.sf-v191-mail-float,.sf-v191-mail-btn{position:relative;display:inline-flex!important;align-items:center;gap:6px;border-radius:999px!important;padding:7px 10px!important;font-weight:950!important;background:#fff!important;color:#063f9e!important;border:1px solid rgba(6,63,158,.22)!important;box-shadow:0 8px 20px rgba(15,23,42,.16)!important;text-decoration:none!important;cursor:pointer!important}
.sf-v191-mail-float{position:fixed!important;right:18px!important;top:12px!important;z-index:2147483000!important}
.sf-v191-mail-badge{min-width:18px;height:18px;border-radius:999px;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:950;padding:0 5px;box-shadow:0 0 0 2px #fff}
.sf-v191-mail-badge:empty{display:none!important}
.sf-v191-mail-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 rgba(34,197,94,.7);animation:sfV191Pulse 1.2s infinite}.sf-v191-mail-dot.off{background:#94a3b8;animation:none}
@keyframes sfV191Pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.65)}70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
.sf-v191-mail-modal{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:2147483100;display:flex;align-items:center;justify-content:center;padding:18px}
.sf-v191-mail-panel{width:min(980px,96vw);max-height:88vh;overflow:auto;background:#f8fbff;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.8)}
.sf-v191-mail-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:18px 20px;background:linear-gradient(135deg,#063f9e,#0f766e);color:#fff;border-radius:24px 24px 0 0}
.sf-v191-mail-body{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:14px;padding:16px}.sf-v191-mail-card{background:#fff;border:1px solid #dbeafe;border-radius:18px;padding:14px;box-shadow:0 8px 24px rgba(15,23,42,.08)}
.sf-v191-msg-row{border:1px solid #e2e8f0;border-radius:14px;padding:10px;margin-bottom:8px;cursor:pointer;background:#fff}.sf-v191-msg-row.unread{border-color:#0ea5e9;background:#eff6ff}.sf-v191-msg-row small{color:#64748b}.sf-v191-msg-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.sf-v191-mail-panel textarea{min-height:110px}.sf-v191-intake-update{margin-top:18px}.sf-v191-profile-image-row{display:flex;align-items:center;gap:14px;margin-bottom:12px}.sf-v191-profile-image-row img{width:92px;height:92px;border-radius:22px;object-fit:cover;border:3px solid #fff;box-shadow:0 8px 24px rgba(15,23,42,.18);background:#eef2f7}
@media(max-width:800px){.sf-v191-mail-body{grid-template-columns:1fr}.sf-v191-mail-float{right:10px;top:10px}}

/* v192 homepage analytics and multi-role staff UI */
.sf-v192-site-analytics{padding-top:28px;padding-bottom:34px;background:linear-gradient(135deg,rgba(239,248,255,.96),rgba(240,255,251,.92));}
.sf-v192-analytics-head{max-width:860px;margin-bottom:18px;}
.sf-v192-analytics-head h2{margin:10px 0 6px;font-size:clamp(24px,3vw,38px);color:#073c8c;}
.sf-v192-analytics-head p{margin:0;color:#475569;font-size:15px;}
.sf-v192-analytics-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:stretch;}
.sf-v192-analytics-card{border:1px solid rgba(15,194,192,.28);background:rgba(255,255,255,.9);border-radius:20px;padding:16px 14px;box-shadow:0 14px 32px rgba(7,60,140,.10);position:relative;overflow:hidden;}
.sf-v192-analytics-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#073c8c,#0fc2c0);}
.sf-v192-analytics-card small{display:block;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:11px;}
.sf-v192-analytics-card strong{display:block;margin:5px 0;font-size:clamp(28px,4vw,44px);line-height:1;color:#073c8c;}
.sf-v192-analytics-card span{display:block;color:#475569;font-size:13px;font-weight:700;}
.sf-v192-role-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-top:10px;}
.sf-v192-role-check-grid label{display:flex;align-items:center;gap:8px;border:1px solid #dbe5f0;border-radius:14px;padding:9px 10px;background:#f8fafc;color:#073c8c;font-weight:800;font-size:13px;}
.sf-v192-role-check-grid input{width:auto!important;min-height:auto!important;}
select#staffRole[multiple], select[name="staffRole"][multiple]{min-height:155px!important;padding:8px!important;}
@media(max-width:980px){.sf-v192-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.sf-v192-analytics-grid{grid-template-columns:1fr;}}


/* v193 align authenticated mail button with login-bar controls and use a bolder envelope icon */
#globalLoginStatusBar .login-status-actions{align-items:center!important;}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-btn,
#globalLoginStatusBar .login-status-actions .sf-v193-mail-btn{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:36px!important;
  height:36px!important;
  padding:8px 14px!important;
  margin:0!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.45)!important;
  background:linear-gradient(135deg,#f8fbff,#dbeafe)!important;
  color:#063f9e!important;
  font-size:13px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  box-shadow:0 8px 18px rgba(2,45,100,.18)!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  vertical-align:middle!important;
  transform:none!important;
}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-btn:hover,
#globalLoginStatusBar .login-status-actions .sf-v193-mail-btn:hover{
  background:linear-gradient(135deg,#ffffff,#bfdbfe)!important;
  color:#032f75!important;
  transform:translateY(-1px)!important;
}
.sf-v193-mail-icon{
  width:20px!important;
  height:20px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 20px!important;
}
.sf-v193-mail-icon svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
  fill:currentColor!important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.55))!important;
}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-dot{
  width:9px!important;
  height:9px!important;
  flex:0 0 9px!important;
  margin:0!important;
}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-badge{
  position:static!important;
  min-width:19px!important;
  height:19px!important;
  font-size:11px!important;
  line-height:19px!important;
  margin-left:0!important;
}
#globalLoginStatusBar .login-status-actions .sf-v193-mail-label{
  display:inline-block!important;
  font-weight:950!important;
}
.sf-v191-mail-float.sf-v193-mail-float{
  gap:8px!important;
  min-height:38px!important;
  padding:9px 14px!important;
  background:linear-gradient(135deg,#f8fbff,#dbeafe)!important;
  color:#063f9e!important;
  border:1px solid rgba(6,63,158,.24)!important;
}
@media(max-width:640px){
  #globalLoginStatusBar .login-status-actions .sf-v193-mail-label{display:none!important;}
  #globalLoginStatusBar .login-status-actions .sf-v191-mail-btn,
  #globalLoginStatusBar .login-status-actions .sf-v193-mail-btn{padding:8px 10px!important;min-width:42px!important;}
}

/* v194: make authenticated top-bar Mail button match Logout/Menu sizing, centering, and color */
#globalLoginStatusBar .login-status-actions .sf-v191-mail-btn,
#globalLoginStatusBar .login-status-actions .sf-v193-mail-btn,
.login-status-bar .login-status-actions .sf-v191-mail-btn,
.login-status-bar .login-status-actions .sf-v193-mail-btn{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  gap:6px!important;
  height:auto!important;
  min-height:32px!important;
  max-height:none!important;
  padding:8px 12px!important;
  margin:0!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  background:rgba(255,255,255,.12)!important;
  color:#ffffff!important;
  font-size:inherit!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  vertical-align:middle!important;
  transform:none!important;
}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-btn:hover,
#globalLoginStatusBar .login-status-actions .sf-v193-mail-btn:hover,
.login-status-bar .login-status-actions .sf-v191-mail-btn:hover,
.login-status-bar .login-status-actions .sf-v193-mail-btn:hover{
  background:rgba(255,255,255,.22)!important;
  color:#ffffff!important;
  transform:none!important;
}
#globalLoginStatusBar .login-status-actions .sf-v193-mail-icon,
.login-status-bar .login-status-actions .sf-v193-mail-icon{
  width:1em!important;
  height:1em!important;
  min-width:1em!important;
  flex:0 0 1em!important;
  color:currentColor!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
#globalLoginStatusBar .login-status-actions .sf-v193-mail-icon svg,
.login-status-bar .login-status-actions .sf-v193-mail-icon svg{
  width:1em!important;
  height:1em!important;
  fill:currentColor!important;
  color:currentColor!important;
  filter:none!important;
  display:block!important;
}
#globalLoginStatusBar .login-status-actions .sf-v193-mail-label,
.login-status-bar .login-status-actions .sf-v193-mail-label{
  color:currentColor!important;
  font-size:inherit!important;
  font-weight:950!important;
  line-height:1!important;
}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-dot,
.login-status-bar .login-status-actions .sf-v191-mail-dot{
  width:.55em!important;
  height:.55em!important;
  flex:0 0 .55em!important;
  margin:0!important;
}
#globalLoginStatusBar .login-status-actions .sf-v191-mail-badge,
.login-status-bar .login-status-actions .sf-v191-mail-badge{
  position:static!important;
  min-width:1.3em!important;
  height:1.3em!important;
  padding:0 .35em!important;
  font-size:.72em!important;
  line-height:1.3em!important;
  margin-left:0!important;
  align-self:center!important;
}
@media(max-width:640px){
  #globalLoginStatusBar .login-status-actions .sf-v191-mail-btn,
  #globalLoginStatusBar .login-status-actions .sf-v193-mail-btn,
  .login-status-bar .login-status-actions .sf-v191-mail-btn,
  .login-status-bar .login-status-actions .sf-v193-mail-btn{
    padding:6px 10px!important;
    min-height:30px!important;
    min-width:auto!important;
  }
}

/* v197: show authenticated Mail button in the active v125 public/login bar */
#sfV125TopLoginBar .sf-v125-actions .sf-v197-v125-mail-btn,
#sfV125TopLoginBar .sf-v125-actions .sf-v191-mail-btn,
#sfV125TopLoginBar .sf-v125-actions .sf-v193-mail-btn{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  gap:6px!important;
  min-height:30px!important;
  height:auto!important;
  padding:7px 12px!important;
  margin:0!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.46)!important;
  background:rgba(255,255,255,.96)!important;
  color:#073b58!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  box-shadow:0 6px 16px rgba(2,8,23,.14)!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  transform:none!important;
  vertical-align:middle!important;
  white-space:nowrap!important;
}
#sfV125TopLoginBar .sf-v125-actions .sf-v197-v125-mail-btn:hover,
#sfV125TopLoginBar .sf-v125-actions .sf-v191-mail-btn:hover,
#sfV125TopLoginBar .sf-v125-actions .sf-v193-mail-btn:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 8px 20px rgba(2,8,23,.20)!important;
  color:#073b58!important;
}
#sfV125TopLoginBar .sf-v125-actions .sf-v193-mail-icon{
  width:1em!important;
  height:1em!important;
  min-width:1em!important;
  flex:0 0 1em!important;
  color:currentColor!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
#sfV125TopLoginBar .sf-v125-actions .sf-v193-mail-icon svg{
  width:1em!important;
  height:1em!important;
  fill:currentColor!important;
  color:currentColor!important;
  filter:none!important;
  display:block!important;
}
#sfV125TopLoginBar .sf-v125-actions .sf-v193-mail-label{
  color:currentColor!important;
  font-size:inherit!important;
  font-weight:950!important;
  line-height:1!important;
}
#sfV125TopLoginBar .sf-v125-actions .sf-v191-mail-dot{
  width:.55em!important;
  height:.55em!important;
  flex:0 0 .55em!important;
  margin:0!important;
}
#sfV125TopLoginBar .sf-v125-actions .sf-v191-mail-badge{
  position:static!important;
  min-width:1.3em!important;
  height:1.3em!important;
  padding:0 .35em!important;
  font-size:.72em!important;
  line-height:1.3em!important;
  margin-left:0!important;
  align-self:center!important;
}
@media(max-width:640px){
  #sfV125TopLoginBar .sf-v125-actions .sf-v193-mail-label{display:none!important;}
  #sfV125TopLoginBar .sf-v125-actions .sf-v197-v125-mail-btn{padding:6px 10px!important;min-height:30px!important;}
}

/* v198 pricing alignment fix: keep package cards locked in place */
body.pricing-page .pricing,
.pricing{
  align-items:stretch!important;
}
body.pricing-page .pricing .price-card,
.pricing .price-card{
  height:100%!important;
  min-height:520px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  transform:none!important;
  transition:box-shadow .18s ease,border-color .18s ease,background .18s ease!important;
}
body.pricing-page .pricing .price-card.featured,
.pricing .price-card.featured{
  transform:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
}
body.pricing-page .pricing .price-card:hover,
body.pricing-page .pricing .card:hover,
.pricing .price-card:hover,
.pricing .card:hover{
  transform:none!important;
}
body.pricing-page .pricing .price-card .features,
.pricing .price-card .features{
  flex:1 1 auto!important;
}
body.pricing-page .pricing .price-card .btn,
.pricing .price-card .btn{
  margin-top:auto!important;
  transform:none!important;
}
body.pricing-page .pricing .price-card .btn:hover,
.pricing .price-card .btn:hover{
  transform:none!important;
}
@media(max-width:980px){
  body.pricing-page .pricing .price-card,
  .pricing .price-card{
    min-height:auto!important;
  }
}

/* v199 compact client authenticated sidebar navigation
   Goal: keep all client portal links visible without vertical scrolling. Static CSS only. */
body.client-portal-page aside.sidebar,
body.client-portal-page .app-shell .sidebar,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar,
body.client-portal-page.sf-v180-client-portal-fixed .app-shell .sidebar{
  padding-left:10px!important;
  padding-right:10px!important;
  padding-bottom:10px!important;
  overflow-y:hidden!important;
}
body.client-portal-page .sidebar .logo,
body.client-portal-page .app-shell .sidebar .logo,
body.client-portal-page #sfV125SidebarLogoHost,
body.client-portal-page.sf-v180-client-portal-fixed #sfV125SidebarLogoHost{
  margin:0 -10px 7px!important;
  padding:5px 8px 6px!important;
  min-height:0!important;
  border-radius:0!important;
}
body.client-portal-page #sfV125SidebarLogoImg,
body.client-portal-page .sidebar .logo img,
body.client-portal-page .sf-v140-sidebar-logo{
  max-height:88px!important;
  width:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
}
body.client-portal-page #clientPortalSideLinks,
body.client-portal-page aside.sidebar nav.side-links,
body.client-portal-page .sf-v145-client-nav,
body.client-portal-page .sf-v146-client-nav,
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links{
  gap:6px!important;
  margin:6px 0 0!important;
  padding:8px!important;
  border-radius:18px!important;
}
body.client-portal-page #clientPortalSideLinks::before,
body.client-portal-page aside.sidebar nav.side-links::before,
body.sf-v181-client-auth-nav-only .sf-v181-client-nav-title{
  font-size:9px!important;
  line-height:1!important;
  margin:0 5px 2px!important;
  letter-spacing:.10em!important;
}
body.client-portal-page #clientPortalSideLinks a,
body.client-portal-page #clientPortalSideLinks button,
body.client-portal-page aside.sidebar nav.side-links a,
body.client-portal-page aside.sidebar nav.side-links button,
body.client-portal-page .sf-v145-client-nav a,
body.client-portal-page .sf-v145-client-nav button,
body.client-portal-page .sf-v146-client-nav a,
body.client-portal-page .sf-v146-client-nav button,
body.client-portal-page .sf-v178-client-nav-link,
body.client-portal-page .sf-v180-client-nav-btn,
body.client-portal-page .sf-v181-client-only-link,
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks a,
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks button,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links a,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links button{
  min-height:37px!important;
  height:auto!important;
  padding:6px 8px!important;
  gap:8px!important;
  border-radius:12px!important;
  font-size:12px!important;
  line-height:1.05!important;
  letter-spacing:0!important;
  font-weight:850!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 6px 13px rgba(7,68,191,.18)!important;
  transform:none!important;
}
body.client-portal-page #clientPortalSideLinks button,
body.client-portal-page aside.sidebar nav.side-links button{
  border:1px solid rgba(255,255,255,.45)!important;
  cursor:pointer!important;
  text-align:left!important;
  font-family:inherit!important;
}
body.client-portal-page #clientPortalSideLinks a:hover,
body.client-portal-page #clientPortalSideLinks button:hover,
body.client-portal-page aside.sidebar nav.side-links a:hover,
body.client-portal-page aside.sidebar nav.side-links button:hover,
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks a:hover,
body.client-portal-page.sf-v180-client-portal-fixed #clientPortalSideLinks button:hover,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links a:hover,
body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar nav.side-links button:hover{
  transform:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 15px rgba(7,87,216,.22)!important;
}
body.client-portal-page .sf-v180-client-nav-icon,
body.client-portal-page .sf-v145-nav-icon,
body.client-portal-page .sf-v144-nav-icon,
body.client-portal-page .sf-v141-nav-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  border-radius:9px!important;
  font-size:13px!important;
}
body.client-portal-page #clientPortalSideLinks a span:last-child,
body.client-portal-page #clientPortalSideLinks button span:last-child,
body.client-portal-page aside.sidebar nav.side-links a span:last-child,
body.client-portal-page aside.sidebar nav.side-links button span:last-child{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media(max-width:980px){
  body.client-portal-page aside.sidebar,
  body.client-portal-page .app-shell .sidebar,
  body.client-portal-page.sf-v180-client-portal-fixed aside.sidebar,
  body.client-portal-page.sf-v180-client-portal-fixed .app-shell .sidebar{overflow-y:visible!important;}
  body.client-portal-page #sfV125SidebarLogoImg,
  body.client-portal-page .sidebar .logo img{max-height:82px!important;}
}

/* v200 client portal cancellation confirmation modal */
.sf-v200-cancel-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:22px;font-family:inherit}
.sf-v200-cancel-backdrop{position:absolute;inset:0;background:rgba(10,24,34,.62);backdrop-filter:blur(3px)}
.sf-v200-cancel-card{position:relative;width:min(540px,calc(100vw - 28px));background:#fff;border-radius:22px;box-shadow:0 26px 80px rgba(0,0,0,.34);border:1px solid rgba(41,122,140,.22);padding:26px;color:#17313b}
.sf-v200-cancel-x{position:absolute;right:16px;top:14px;width:34px;height:34px;border:0;border-radius:999px;background:#eef5f6;color:#20404b;font-size:24px;line-height:1;cursor:pointer}
.sf-v200-cancel-kicker{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#e8f6f7;color:#247a8c;font-weight:800;font-size:12px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px}
.sf-v200-cancel-card h2{margin:0 38px 8px 0;font-size:24px;line-height:1.15;color:#102b35}
.sf-v200-cancel-copy{margin:0 0 16px;color:#425b64;font-size:14px;line-height:1.5}
.sf-v200-cancel-appt{border:1px solid rgba(41,122,140,.2);background:linear-gradient(135deg,#f6fbfb,#edf6f7);border-radius:16px;padding:14px 16px;margin-bottom:14px;display:grid;gap:4px}
.sf-v200-cancel-appt strong{font-size:16px;color:#13313a}.sf-v200-cancel-appt span{font-size:14px;color:#244a54}.sf-v200-cancel-appt small{font-size:12px;color:#60747b}
.sf-v200-cancel-fee-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.sf-v200-cancel-fee-grid div{border-radius:16px;background:#f7fafb;border:1px solid rgba(16,43,53,.12);padding:13px 14px}.sf-v200-cancel-fee-grid span{display:block;color:#617980;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}.sf-v200-cancel-fee-grid strong{font-size:20px;color:#102b35}
.sf-v200-cancel-note{margin:10px 0 18px;color:#526a72;font-size:13px;line-height:1.45}.sf-v200-cancel-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.sf-v200-confirm-btn{background:#b83232!important;border-color:#b83232!important;color:#fff!important}.sf-v200-keep-btn{background:#eef5f6!important;color:#17313b!important;border:1px solid rgba(16,43,53,.16)!important}.sf-v200-cancel-modal-open{overflow:hidden}
@media(max-width:560px){.sf-v200-cancel-card{padding:22px 18px}.sf-v200-cancel-fee-grid{grid-template-columns:1fr}.sf-v200-cancel-actions{display:grid}.sf-v200-cancel-actions .btn{width:100%}}

/* v202 support button, top client menu reliability, and support staff dashboard */
.login-status-actions .sf-v202-support-btn,
.sf-v125-actions .sf-v202-support-btn,
.sf-v115-actions .sf-v202-support-btn,
.sf-v114-actions .sf-v202-support-btn,
.sf-v100-actions .sf-v202-support-btn,
.sf-v99-actions .sf-v202-support-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
  height:32px!important;min-height:32px!important;padding:0 12px!important;border-radius:999px!important;
  border:1px solid rgba(255,255,255,.28)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;
  font-size:13px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;cursor:pointer!important;
  transform:none!important;box-shadow:none!important;vertical-align:middle!important;white-space:nowrap!important;
}
.sf-v202-support-btn svg{width:16px!important;height:16px!important;display:block!important;fill:currentColor!important;color:inherit!important}.sf-v202-support-btn span{color:inherit!important}
.sf-v202-support-btn:hover{background:rgba(255,255,255,.2)!important;transform:none!important}
body.client-portal-page .top-nav-dropdown.show, body.client-portal-page #topNavDropdown.show{display:block!important;z-index:2147483600!important;position:absolute!important}.top-nav-menu.open .top-nav-dropdown{display:block!important}
.sf-v202-support-modal{position:fixed;inset:0;z-index:2147483640;display:flex;align-items:center;justify-content:center;padding:20px}.sf-v202-support-backdrop{position:absolute;inset:0;background:rgba(8,25,32,.62);backdrop-filter:blur(3px)}.sf-v202-support-panel{position:relative;width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:24px;border:1px solid rgba(41,122,140,.22);box-shadow:0 30px 90px rgba(0,0,0,.36);padding:22px;color:#17313b}.sf-v202-support-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.sf-v202-support-head strong{font-size:22px;color:#102b35}.sf-v202-support-head small{display:block;margin-top:4px;color:#64748b}.sf-v202-support-form{display:grid;gap:14px}.sf-v202-support-form input,.sf-v202-support-form textarea{width:100%}.sf-v202-support-form textarea{min-height:140px}.sf-v202-support-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.sf-v202-support-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#12313d,#225b67);color:#fff;margin:20px 0}.sf-v202-support-hero h1{margin:6px 0;font-size:34px;color:#fff}.sf-v202-support-hero p{color:rgba(255,255,255,.82);margin:0}.sf-v202-analytics-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin:16px 0}.sf-v202-analytics-grid div{border-radius:18px;border:1px solid rgba(41,122,140,.18);background:linear-gradient(135deg,#f7fbfc,#eef7f8);padding:16px}.sf-v202-analytics-grid span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:900}.sf-v202-analytics-grid strong{display:block;margin-top:6px;font-size:30px;color:#17313b}.sf-v202-ticket{border:1px solid rgba(41,122,140,.18);border-radius:18px;padding:16px;margin:12px 0;background:#fff}.sf-v202-ticket.unread{box-shadow:inset 4px 0 0 #2b98ad;background:#f7fcfd}.sf-v202-ticket-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.sf-v202-ticket-top small{display:block;color:#64748b;margin-top:4px}.sf-v202-ticket-files{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.sf-v202-ticket-files a{font-weight:900;color:#247a8c}.sf-v202-ticket-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.sf-v202-support-login{display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,420px);gap:24px;align-items:start;margin:42px auto;max-width:1060px;padding:0 18px}.sf-v202-support-login h1{font-size:36px;margin:8px 0}.sf-v202-support-login p{color:#526a72;line-height:1.55}.required{color:#b83232;font-weight:950}@media(max-width:980px){.sf-v202-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-v202-support-login{grid-template-columns:1fr}.sf-v202-support-hero{display:grid}.login-status-actions .sf-v202-support-btn,.sf-v125-actions .sf-v202-support-btn{height:30px!important;font-size:12px!important;padding:0 10px!important}}

/* v220 client portal left navigation hard repair: readable hover + button-based sidebar */
body.client-portal-page #clientPortalSideLinks,
body.client-portal-page aside.sidebar nav.side-links{
  pointer-events:auto!important;
  z-index:50!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v220-client-nav-btn,
body.client-portal-page aside.sidebar nav.side-links .sf-v220-client-nav-btn,
body.client-portal-page #clientPortalSideLinks a.sf-v145-nav-link,
body.client-portal-page #clientPortalSideLinks button.sf-v145-nav-link,
body.client-portal-page aside.sidebar nav.side-links a.sf-v145-nav-link,
body.client-portal-page aside.sidebar nav.side-links button.sf-v145-nav-link{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:37px!important;
  padding:6px 8px!important;
  gap:8px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.50)!important;
  background:linear-gradient(135deg,#0757d8 0%,#0647bf 52%,#042c83 100%)!important;
  color:#ffffff!important;
  text-decoration:none!important;
  text-align:left!important;
  font-family:inherit!important;
  font-size:12px!important;
  line-height:1.05!important;
  font-weight:850!important;
  letter-spacing:0!important;
  text-shadow:0 1px 2px rgba(0,0,0,.38)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 6px 13px rgba(7,68,191,.18)!important;
  cursor:pointer!important;
  transform:none!important;
  filter:none!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v220-client-nav-btn:visited,
body.client-portal-page #clientPortalSideLinks a.sf-v145-nav-link:visited,
body.client-portal-page aside.sidebar nav.side-links a.sf-v145-nav-link:visited{color:#ffffff!important;}
body.client-portal-page #clientPortalSideLinks .sf-v220-client-nav-btn:hover,
body.client-portal-page aside.sidebar nav.side-links .sf-v220-client-nav-btn:hover,
body.client-portal-page #clientPortalSideLinks a.sf-v145-nav-link:hover,
body.client-portal-page #clientPortalSideLinks button.sf-v145-nav-link:hover,
body.client-portal-page aside.sidebar nav.side-links a.sf-v145-nav-link:hover,
body.client-portal-page aside.sidebar nav.side-links button.sf-v145-nav-link:hover{
  background:linear-gradient(135deg,#053fbd 0%,#07318f 58%,#021a55 100%)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.72)!important;
  text-shadow:0 1px 3px rgba(0,0,0,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 16px rgba(2,26,85,.35)!important;
  transform:none!important;
  filter:none!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v220-client-nav-btn.active,
body.client-portal-page aside.sidebar nav.side-links .sf-v220-client-nav-btn.active,
body.client-portal-page #clientPortalSideLinks a.sf-v145-nav-link.active,
body.client-portal-page aside.sidebar nav.side-links a.sf-v145-nav-link.active{
  background:linear-gradient(135deg,#12bfc4 0%,#0757d8 48%,#03276f 100%)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.78)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 10px 20px rgba(18,191,196,.22)!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v220-client-nav-btn span,
body.client-portal-page #clientPortalSideLinks .sf-v220-client-nav-btn .sf-v145-nav-icon,
body.client-portal-page #clientPortalSideLinks a.sf-v145-nav-link span,
body.client-portal-page #clientPortalSideLinks button.sf-v145-nav-link span{color:#ffffff!important;}
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-section,
body.client-portal-page #clientPortalSideLinks .sf-v219-nav-heading{
  color:#f7fbff!important;
  opacity:1!important;
  text-shadow:0 1px 2px rgba(0,0,0,.35)!important;
}

/* v221 client portal nav/menu no-flicker readability fix */
body.client-portal-page #clientPortalSideLinks,
body.client-portal-page aside.sidebar nav.side-links{visibility:visible!important;opacity:1!important;}
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-link,
body.client-portal-page #clientPortalSideLinks .sf-v221-client-nav-btn,
body.client-portal-page aside.sidebar nav.side-links .sf-v145-nav-link,
body.client-portal-page aside.sidebar nav.side-links .sf-v221-client-nav-btn{
  background:linear-gradient(135deg,#0784a8,#0aa7c8)!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
  transform:none!important;
  text-shadow:0 1px 2px rgba(0,0,0,.35)!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-link:hover,
body.client-portal-page #clientPortalSideLinks .sf-v221-client-nav-btn:hover,
body.client-portal-page aside.sidebar nav.side-links .sf-v145-nav-link:hover,
body.client-portal-page aside.sidebar nav.side-links .sf-v221-client-nav-btn:hover{
  background:linear-gradient(135deg,#044f68,#077d99)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.42)!important;
  transform:none!important;
  filter:none!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-link span,
body.client-portal-page #clientPortalSideLinks .sf-v221-client-nav-btn span,
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-icon,
body.client-portal-page aside.sidebar nav.side-links .sf-v145-nav-link span,
body.client-portal-page aside.sidebar nav.side-links .sf-v221-client-nav-btn span{
  color:#ffffff!important;
}
body.client-portal-page #clientPortalSideLinks .sf-v145-nav-link.active,
body.client-portal-page #clientPortalSideLinks .sf-v221-client-nav-btn.active,
body.client-portal-page aside.sidebar nav.side-links .sf-v145-nav-link.active,
body.client-portal-page aside.sidebar nav.side-links .sf-v221-client-nav-btn.active{
  background:linear-gradient(135deg,#063f56,#055e78)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.55)!important;
}
body.client-portal-page #sfV125TopNavDropdown a:hover,
body.client-portal-page #sfV125TopNavDropdown button:hover,
body.client-portal-page #topNavDropdown a:hover,
body.client-portal-page #topNavDropdown button:hover,
body.client-portal-page .top-nav-dropdown a:hover,
body.client-portal-page .top-nav-dropdown button:hover,
body.client-portal-page .sf-v221-client-menu-link:hover{
  background:#063f56!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.35)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.4)!important;
}
body.client-portal-page #sfV125TopNavDropdown button.sf-v221-client-menu-link,
body.client-portal-page #topNavDropdown button.sf-v221-client-menu-link,
body.client-portal-page .top-nav-dropdown button.sf-v221-client-menu-link{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 10px!important;
  border-radius:10px!important;
  border:1px solid transparent!important;
  background:transparent!important;
  color:#ffffff!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
}

/* v222 waitlist workflow */
.sf-v222-waitlist-prompt{margin-top:10px;padding:10px 12px;border-radius:14px;border:1px solid rgba(14,165,233,.25);background:rgba(240,249,255,.95);color:#0f172a;font-size:13px;line-height:1.35}
.sf-v222-waitlist-btn{margin-top:8px;padding:8px 12px;font-size:13px;min-height:34px}
.sf-v222-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:18px}
.sf-v222-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.sf-v222-panel{position:relative;z-index:1;width:min(720px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(15,23,42,.35);padding:20px;border:1px solid rgba(18,191,196,.25)}
.sf-v222-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;border-bottom:1px solid #e2e8f0;padding-bottom:12px}
.sf-v222-head strong{display:block;font-size:20px;color:#0f172a}.sf-v222-head small{display:block;color:#64748b;margin-top:3px}.sf-v222-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:12px;color:#1e293b}.sf-v222-soon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:8px}.sf-v222-soon{border:1px solid #cbd5e1;border-radius:14px;padding:8px 10px;background:#fff;display:flex;align-items:center;gap:8px;font-size:13px}.sf-v222-soon:has(input:checked){border-color:#12bfc4;background:#ecfeff;box-shadow:0 0 0 2px rgba(18,191,196,.14)}.sf-v222-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.sf-v222-staff-waitlist{margin:0 0 22px;border-left:5px solid #12bfc4}.sf-v222-staff-waitlist .table td{vertical-align:top}.sf-v222-waitlist-stat{cursor:pointer;border-left:5px solid #12bfc4}.sf-v222-pulse{animation:sfV222Pulse .9s ease}@keyframes sfV222Pulse{0%,100%{box-shadow:none}35%{box-shadow:0 0 0 5px rgba(18,191,196,.25)}}

/* v224 global top menu repair for public and staff authenticated pages */
.top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
.top-nav-menu .top-nav-dropdown,#sfV125TopNavDropdown,#topNavDropdown,.top-nav-dropdown{z-index:1000000!important;}
.top-nav-menu .top-nav-dropdown.show,#sfV125TopNavDropdown.show,#topNavDropdown.show,.top-nav-dropdown.show{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
.top-nav-dropdown a,.top-nav-dropdown button,#sfV125TopNavDropdown a,#sfV125TopNavDropdown button,#topNavDropdown a,#topNavDropdown button{color:#fff!important;text-decoration:none!important;}
.top-nav-dropdown a:hover,.top-nav-dropdown button:hover,#sfV125TopNavDropdown a:hover,#sfV125TopNavDropdown button:hover,#topNavDropdown a:hover,#topNavDropdown button:hover{background:#052e8f!important;color:#fff!important;}
body.client-portal-page .top-nav-dropdown a,body.client-portal-page .top-nav-dropdown button{background:#123967!important;color:#fff!important;}
body.client-portal-page .top-nav-dropdown a:hover,body.client-portal-page .top-nav-dropdown button:hover{background:#052e8f!important;color:#fff!important;}

/* v227 final public/staff top-menu readability and dropdown repair */
body:not(.client-portal-page) .top-nav-dropdown,
body:not(.client-portal-page) #sfV125TopNavDropdown,
body:not(.client-portal-page) #topNavDropdown{
  background:linear-gradient(180deg,#0f2442 0%,#071a33 100%)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:18px!important;
  padding:10px!important;
  box-shadow:0 28px 70px rgba(2,8,23,.42)!important;
  z-index:2147483000!important;
}
body:not(.client-portal-page) .top-nav-dropdown.show,
body:not(.client-portal-page) .top-nav-menu.open .top-nav-dropdown,
body:not(.client-portal-page) #sfV125TopNavDropdown.show,
body:not(.client-portal-page) #topNavDropdown.show{
  display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
}
body:not(.client-portal-page) .top-nav-dropdown a,
body:not(.client-portal-page) .top-nav-dropdown button,
body:not(.client-portal-page) #sfV125TopNavDropdown a,
body:not(.client-portal-page) #sfV125TopNavDropdown button,
body:not(.client-portal-page) #topNavDropdown a,
body:not(.client-portal-page) #topNavDropdown button{
  width:100%!important;box-sizing:border-box!important;background:#123967!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;margin:5px 0!important;padding:10px 11px!important;text-align:left!important;text-decoration:none!important;font-weight:850!important;display:flex!important;align-items:center!important;gap:8px!important;box-shadow:none!important;
}
body:not(.client-portal-page) .top-nav-dropdown a.sf-v153-staff-login-highlight,
body:not(.client-portal-page) .top-nav-dropdown a.sf-v89-staff-login-highlight,
body:not(.client-portal-page) .top-nav-dropdown a.sf-v153-client-login-highlight,
body:not(.client-portal-page) .top-nav-dropdown a.client-login-highlight,
body:not(.client-portal-page) #sfV125TopNavDropdown a.sf-v153-staff-login-highlight,
body:not(.client-portal-page) #sfV125TopNavDropdown a.sf-v153-client-login-highlight,
body:not(.client-portal-page) #topNavDropdown a.sf-v153-staff-login-highlight,
body:not(.client-portal-page) #topNavDropdown a.sf-v153-client-login-highlight{
  background:#123967!important;color:#fff!important;border-color:rgba(255,255,255,.18)!important;
}
body:not(.client-portal-page) .top-nav-dropdown a:hover,
body:not(.client-portal-page) .top-nav-dropdown button:hover,
body:not(.client-portal-page) #sfV125TopNavDropdown a:hover,
body:not(.client-portal-page) #sfV125TopNavDropdown button:hover,
body:not(.client-portal-page) #topNavDropdown a:hover,
body:not(.client-portal-page) #topNavDropdown button:hover{
  background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;
}

/* v234: client portal logo glare removal safety override */
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host:before,
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host:after{
  content:none!important;
  display:none!important;
  background:none!important;
  filter:none!important;
  box-shadow:none!important;
}
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host{
  background:transparent!important;
  filter:none!important;
  box-shadow:none!important;
}
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host img{
  filter:none!important;
  box-shadow:none!important;
  background:transparent!important;
}


/* v237: client portal sidebar uses opaque SpaFlow logo; no transparent/glare replacement */
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host:before,
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host:after{content:none!important;display:none!important;background:none!important;filter:none!important;box-shadow:none!important;}
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host img,
body.client-portal-page #clientPortalSidebarLogo{
  content:url('../images/spaflow-client-sidebar-logo-opaque-v237.png?v=237')!important;
  display:block!important;visibility:visible!important;opacity:1!important;
  width:218px!important;max-width:218px!important;max-height:96px!important;height:auto!important;
  object-fit:contain!important;background:#f7fafc!important;border-radius:14px!important;padding:3px!important;
  filter:none!important;box-shadow:none!important;transform:none!important;
}

/* v239 definitive client portal logo fallback */
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host{
  background:transparent url('../images/spaflow-client-sidebar-logo-v239.png?v=239') center center / contain no-repeat!important;
  min-height:112px!important;height:112px!important;padding:0!important;margin:0 0 10px!important;
  filter:none!important;box-shadow:none!important;border:0!important;overflow:visible!important;
}
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host::before,
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host::after{content:none!important;display:none!important;}
body.client-portal-page #clientPortalSidebarLogo,
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host img{
  content:normal!important;display:block!important;visibility:visible!important;opacity:1!important;
  width:230px!important;max-width:230px!important;max-height:104px!important;height:auto!important;
  object-fit:contain!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;filter:none!important;box-shadow:none!important;
}


/* v240 client portal sidebar logo card: white spa-style border, no glow/glare */
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host{
  background:radial-gradient(circle at 16% 18%, rgba(18,191,196,.08), transparent 34%),radial-gradient(circle at 88% 82%, rgba(13,91,216,.07), transparent 32%),#fff!important;
  border:2px solid rgba(18,191,196,.72)!important;
  border-top-color:rgba(13,91,216,.72)!important;
  border-bottom-color:rgba(0,150,156,.78)!important;
  border-radius:18px!important;
  box-shadow:0 10px 22px rgba(15,36,66,.18), inset 0 0 0 1px rgba(255,255,255,.88)!important;
  filter:none!important;
  overflow:hidden!important;
}
body.client-portal-page .sf-v223-sidebar .sf-v223-logo-host img,
body.client-portal-page #clientPortalSidebarLogo{
  display:block!important;visibility:visible!important;opacity:1!important;content:normal!important;
  width:214px!important;max-width:100%!important;max-height:92px!important;height:auto!important;
  object-fit:contain!important;background:transparent!important;border:0!important;filter:none!important;box-shadow:none!important;
}

/* v242: Professional SpaFlow login-bar layout/banner */
#sfV125TopLoginBar .sf-v242-brand-banner,
#globalLoginStatusBar .sf-v242-brand-banner,
.login-status-bar .sf-v242-brand-banner{
  position:relative; overflow:hidden; min-height:32px; border:1px solid rgba(155,231,255,.34);
  border-radius:999px; background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(18,191,196,.12));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 8px 22px rgba(2,8,23,.16);
  padding:5px 13px 5px 9px; display:inline-flex; align-items:center; gap:9px; color:#fff; white-space:nowrap;
}
#sfV125TopLoginBar .sf-v242-brand-banner:before,
#globalLoginStatusBar .sf-v242-brand-banner:before,
.login-status-bar .sf-v242-brand-banner:before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.26;
  background:radial-gradient(circle at 12% 48%,rgba(155,231,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 86% 35%,rgba(255,255,255,.65) 0 1.5px,transparent 3px),linear-gradient(120deg,transparent 0 28%,rgba(255,255,255,.18) 30%,transparent 36% 100%);
}
#sfV125TopLoginBar .sf-v242-brand-icon,
#globalLoginStatusBar .sf-v242-brand-icon,
.login-status-bar .sf-v242-brand-icon{position:relative;width:24px;height:24px;border-radius:999px;background:rgba(255,255,255,.95);box-shadow:0 0 12px rgba(255,255,255,.38);display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;}
#sfV125TopLoginBar .sf-v242-brand-icon svg,
#globalLoginStatusBar .sf-v242-brand-icon svg,
.login-status-bar .sf-v242-brand-icon svg{width:18px;height:18px;display:block;}
#sfV125TopLoginBar .sf-v242-brand-text,
#globalLoginStatusBar .sf-v242-brand-text,
.login-status-bar .sf-v242-brand-text{position:relative;display:flex;flex-direction:column;line-height:1.02;}
#sfV125TopLoginBar .sf-v242-brand-text strong,
#globalLoginStatusBar .sf-v242-brand-text strong,
.login-status-bar .sf-v242-brand-text strong{font-size:.9rem;letter-spacing:.06em;font-weight:950;}
#sfV125TopLoginBar .sf-v242-brand-text small,
#globalLoginStatusBar .sf-v242-brand-text small,
.login-status-bar .sf-v242-brand-text small{font-size:.62rem;font-weight:800;color:#c9fbff;letter-spacing:.02em;}
#sfV125TopLoginBar.sf-v242-bar-organized .sf-v125-login-inner,
#globalLoginStatusBar.sf-v242-bar-organized .login-status-inner,
.login-status-bar.sf-v242-bar-organized .login-status-inner{justify-content:flex-start!important;gap:14px!important;}
#sfV125TopLoginBar.sf-v242-bar-organized .sf-v125-status-left,
#globalLoginStatusBar.sf-v242-bar-organized .login-status-left,
.login-status-bar.sf-v242-bar-organized .login-status-left{gap:8px!important;flex:0 1 auto!important;min-width:0!important;}
#sfV125TopLoginBar.sf-v242-bar-organized .sf-v125-actions,
#globalLoginStatusBar.sf-v242-bar-organized .login-status-actions,
.login-status-bar.sf-v242-bar-organized .login-status-actions{margin-left:auto!important;justify-content:flex-end!important;gap:10px!important;}
@media(max-width:900px){#sfV125TopLoginBar .sf-v242-brand-banner,#globalLoginStatusBar .sf-v242-brand-banner,.login-status-bar .sf-v242-brand-banner{display:none!important;}}

/* v254 popup login and employee portal polish */
.sf-v254-client-login-popup body,.sf-v254-client-login-popup{background:linear-gradient(180deg,#f7feff 0%,#eef8ff 100%)!important;}
body.sf-v254-client-login-popup .app-shell{display:block!important;min-height:auto!important;}
body.sf-v254-client-login-popup aside.sidebar,body.sf-v254-client-login-popup footer,body.sf-v254-client-login-popup .footer,body.sf-v254-client-login-popup .launch-bar,body.sf-v254-client-login-popup header.site-header,body.sf-v254-client-login-popup .sf-v254-popup-hide-extra{display:none!important;}
body.sf-v254-client-login-popup main.main,body.sf-v254-client-login-popup main{margin:0!important;padding:22px 16px 30px!important;display:flex!important;justify-content:center!important;align-items:flex-start!important;}
body.sf-v254-client-login-popup #sfV125TopLoginBar,body.sf-v254-client-login-popup .sf-v254-popup-login-bar{display:flex!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483600!important;background:#fff!important;border-bottom:1px solid rgba(11,91,139,.13)!important;box-shadow:0 10px 28px rgba(7,87,216,.08)!important;min-height:76px!important;padding:10px 18px!important;align-items:center!important;justify-content:center!important;}
.sf-v254-popup-logo-only{display:flex;align-items:center;justify-content:center;width:100%;}
.sf-v254-popup-logo-only img{display:block!important;max-width:360px!important;width:min(88vw,360px)!important;height:auto!important;object-fit:contain!important;}
body.sf-v254-client-login-popup #sfV223LoginForm,body.sf-v254-client-login-popup .sf-v223-card{max-width:520px!important;width:100%!important;}
.sf-v254-employee-login-link{font-weight:950!important;color:#0757d8!important;text-decoration:none!important;border-radius:999px!important;padding:9px 12px!important;background:rgba(18,191,196,.12)!important;box-shadow:inset 0 0 0 1px rgba(18,191,196,.22)!important;}
.sf-v254-employee-login-link:hover{background:rgba(18,191,196,.2)!important;}
.sf-v254-employee-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:22px;}
.sf-v254-employee-report{width:100%;border-collapse:separate;border-spacing:0 8px;}
.sf-v254-employee-report td{background:#f7fbff;padding:10px 12px;border-top:1px solid rgba(11,91,139,.12);border-bottom:1px solid rgba(11,91,139,.12);}
.sf-v254-employee-report td:first-child{border-left:1px solid rgba(11,91,139,.12);border-radius:12px 0 0 12px;font-weight:800;color:#315465;}
.sf-v254-employee-report td:last-child{border-right:1px solid rgba(11,91,139,.12);border-radius:0 12px 12px 0;text-align:right;color:#083f75;}
.sf-v254-mail-status{font-weight:850;color:#0a578b;min-height:22px;}
.sf-v254-mail-row{border:1px solid rgba(11,91,139,.12);border-radius:16px;padding:12px;margin:10px 0;background:#f8fcff;}
.sf-v254-mail-row strong{display:block;color:#083f75;}
.sf-v254-mail-row small{display:block;color:#5d7685;margin:3px 0 8px;}
.sf-v254-mail-row p{margin:0;color:#304d5d;white-space:pre-wrap;}

/* v256 client public-page top bar mirrors client portal login bar */
.sf-v256-hide-old-global-bar{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar{display:block!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483000!important;background:linear-gradient(135deg,#071426 0%,#0f2442 42%,#0757d8 100%)!important;box-shadow:0 12px 32px rgba(2,8,23,.24)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;overflow:visible!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.24;background-image:radial-gradient(circle at 8% 35%,rgba(155,231,255,.75) 0 2px,transparent 3px),radial-gradient(circle at 29% 72%,rgba(255,255,255,.55) 0 1.5px,transparent 3px),radial-gradient(circle at 52% 28%,rgba(18,191,196,.45) 0 2px,transparent 4px),radial-gradient(circle at 76% 64%,rgba(155,231,255,.55) 0 1.5px,transparent 4px),linear-gradient(115deg,transparent 0 18%,rgba(255,255,255,.08) 18% 19%,transparent 19% 38%,rgba(155,231,255,.08) 38% 39%,transparent 39% 100%);background-size:260px 48px,310px 48px,360px 48px,410px 48px,220px 48px;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v256-public-login-inner{position:relative;z-index:2;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:72px!important;padding:8px 18px!important;max-width:1440px!important;margin:0 auto!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-status-left{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;color:#fff!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .login-status-dot{width:11px;height:11px;border-radius:999px;background:#9be7ff;box-shadow:0 0 0 4px rgba(155,231,255,.16);}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-avatar{width:38px;height:38px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#0757d8;font-weight:900;overflow:hidden;box-shadow:0 8px 18px rgba(0,0,0,.18);}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-login-copy{font-weight:800;color:#f8fbff;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .login-status-name{color:#9be7ff;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .login-status-role{color:rgba(255,255,255,.78);font-weight:700;}
#sfV125TopLoginBar.sf-v256-public-client-topbar a,#sfV125TopLoginBar.sf-v256-public-client-topbar button{font-family:inherit;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-edit-profile-link,#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v223-mail-button,#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v223-support-button,#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-menu-button,#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-logout-button{border:1px solid rgba(155,231,255,.32)!important;background:rgba(255,255,255,.1)!important;color:#fff!important;text-decoration:none!important;border-radius:999px!important;padding:9px 13px!important;font-weight:900!important;line-height:1!important;box-shadow:0 8px 18px rgba(0,0,0,.12)!important;cursor:pointer!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-edit-profile-link:hover,#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v223-mail-button:hover,#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v223-support-button:hover,#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-menu-button:hover,#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-logout-button:hover{background:rgba(155,231,255,.18)!important;transform:translateY(-1px);}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v223-mail-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:900;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:220px!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v256-public-logo{display:flex!important;align-items:center!important;justify-content:center!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v256-public-logo img{width:232px!important;max-width:30vw!important;max-height:62px!important;object-fit:contain!important;display:block!important;filter:drop-shadow(0 8px 18px rgba(0,0,0,.2));}
#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-menu{position:relative!important;display:inline-flex!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown{position:absolute!important;right:0!important;top:calc(100% + 10px)!important;min-width:270px!important;max-height:72vh!important;overflow:auto!important;background:#fff!important;border:1px solid rgba(7,87,216,.14)!important;border-radius:18px!important;padding:10px!important;box-shadow:0 22px 60px rgba(2,8,23,.22)!important;display:none;z-index:2147483200!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-menu.open .top-nav-dropdown,#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown.show,#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown.open{display:block!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown a{display:flex!important;align-items:center!important;width:100%!important;padding:10px 12px!important;border-radius:12px!important;color:#0f2442!important;text-decoration:none!important;font-weight:800!important;box-shadow:none!important;background:transparent!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown a:hover{background:rgba(7,87,216,.08)!important;color:#0757d8!important;}
#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown .nav-section-label{display:block!important;padding:10px 12px 6px!important;color:#64748b!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:11px!important;font-weight:950!important;}
@media (max-width:900px){#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v256-public-login-inner{align-items:flex-start!important;flex-direction:column!important;}#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v125-actions{width:100%!important;justify-content:flex-start!important;}#sfV125TopLoginBar.sf-v256-public-client-topbar .sf-v256-public-logo img{max-width:260px!important;width:220px!important;}#sfV125TopLoginBar.sf-v256-public-client-topbar .top-nav-dropdown{left:0!important;right:auto!important;}}

/* v256 unified popup and authenticated staff/client bars */
body.sf-v256-staff-login-popup-clean #globalLoginStatusBar,
body.sf-v256-staff-login-popup-clean .login-status-bar,
body.sf-v256-staff-login-popup-clean header,
body.sf-v256-staff-login-popup-clean nav,
body.sf-v256-staff-login-popup-clean .navbar,
body.sf-v256-staff-login-popup-clean .site-header,
body.sf-v256-staff-login-popup-clean .top-header,
body.sf-v256-staff-login-popup-clean .sf-v125-top-login-bar:not(.sf-v256-keep-popup-logo){display:none!important;}
body.sf-v256-staff-login-popup-clean .sf-v254-popup-login-bar{display:flex!important;}
.sf-v256-staff-topbar{position:sticky!important;top:0!important;z-index:99999!important;background:linear-gradient(135deg,#0f2442,#14365f)!important;border-bottom:1px solid rgba(255,255,255,.12)!important;box-shadow:0 10px 30px rgba(15,36,66,.18)!important;padding:0!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
.sf-v256-staff-topbar .sf-v256-bar-inner{min-height:64px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:8px 16px!important;box-sizing:border-box!important;}
.sf-v256-staff-topbar .sf-v256-status-left{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;min-width:0!important;}
.sf-v256-staff-topbar .login-status-dot{width:10px!important;height:10px!important;border-radius:999px!important;background:#25d366!important;box-shadow:0 0 0 4px rgba(37,211,102,.18)!important;flex:0 0 auto!important;}
.sf-v256-staff-topbar .sf-v125-avatar{width:36px!important;height:36px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:linear-gradient(135deg,#eaffff,#b7edf3)!important;color:#0b4263!important;font-weight:900!important;font-size:15px!important;overflow:hidden!important;box-shadow:0 0 0 2px rgba(255,255,255,.35)!important;}
.sf-v256-staff-topbar .sf-v125-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.sf-v256-staff-topbar .sf-v256-login-copy{color:#eaf8ff!important;font-size:13px!important;font-weight:800!important;line-height:1.2!important;white-space:nowrap!important;}
.sf-v256-staff-topbar .login-status-name{color:#fff!important;font-weight:900!important;}
.sf-v256-staff-topbar .login-status-role{color:#9fe6ee!important;font-size:12px!important;font-weight:800!important;}
.sf-v256-staff-topbar .sf-v256-logo img{display:block!important;height:42px!important;width:auto!important;max-width:260px!important;object-fit:contain!important;filter:drop-shadow(0 8px 14px rgba(0,0,0,.16))!important;}
.sf-v256-staff-topbar .sf-v256-bar-btn,
.sf-v256-staff-topbar .top-nav-menu-button,
.sf-v256-staff-topbar .sf-v256-logout-button{appearance:none!important;border:1px solid rgba(255,255,255,.32)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border-radius:999px!important;padding:9px 13px!important;font-size:13px!important;line-height:1!important;font-weight:850!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:34px!important;box-shadow:none!important;cursor:pointer!important;}
.sf-v256-staff-topbar .sf-v256-bar-btn:hover,
.sf-v256-staff-topbar .top-nav-menu-button:hover,
.sf-v256-staff-topbar .sf-v256-logout-button:hover{background:rgba(255,255,255,.2)!important;transform:translateY(-1px)!important;}
.sf-v256-staff-topbar .sf-v256-logout-button{background:#fff!important;color:#0f2442!important;border-color:#fff!important;}
.sf-v256-staff-topbar .top-nav-menu{position:relative!important;display:inline-flex!important;}
.sf-v256-staff-topbar .top-nav-dropdown{position:absolute!important;right:0!important;top:calc(100% + 10px)!important;min-width:250px!important;background:#fff!important;color:#123!important;border:1px solid rgba(11,91,139,.14)!important;border-radius:18px!important;box-shadow:0 22px 52px rgba(15,36,66,.22)!important;padding:10px!important;display:none!important;z-index:100000!important;}
.sf-v256-staff-topbar .top-nav-dropdown.show{display:block!important;}
.sf-v256-staff-topbar .top-nav-dropdown a,
.sf-v256-staff-topbar .top-nav-dropdown button{display:flex!important;width:100%!important;box-sizing:border-box!important;text-align:left!important;border:0!important;background:transparent!important;color:#17324d!important;border-radius:12px!important;padding:10px 12px!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;box-shadow:none!important;justify-content:flex-start!important;}
.sf-v256-staff-topbar .top-nav-dropdown a:hover,
.sf-v256-staff-topbar .top-nav-dropdown button:hover{background:#edf8fb!important;color:#075e92!important;transform:none!important;}
.sf-v256-staff-topbar .nav-section-label{display:block!important;padding:8px 12px 5px!important;color:#64748b!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;}
@media(max-width:820px){.sf-v256-staff-topbar .sf-v256-logo{display:none!important}.sf-v256-staff-topbar .sf-v256-login-copy{white-space:normal!important}.sf-v256-staff-topbar .sf-v256-bar-inner{justify-content:flex-start!important}.sf-v256-staff-topbar .sf-v256-status-left{width:100%!important}.sf-v256-staff-topbar .top-nav-dropdown{right:auto!important;left:0!important}}

/* v257 support staff hard gate */
body.support-staff-page.sf-v257-support-hard-gated{background:linear-gradient(135deg,#eff9ff 0%,#ffffff 48%,#eefcf7 100%);min-height:100vh;}
body.support-staff-page.sf-v257-support-hard-gated #globalLoginStatusBar,
body.support-staff-page.sf-v257-support-hard-gated .login-status-bar,
body.support-staff-page.sf-v257-support-hard-gated .sf-v125-top-login-bar,
body.support-staff-page.sf-v257-support-hard-gated .sf-v256-staff-topbar,
body.support-staff-page.sf-v257-support-hard-gated header,
body.support-staff-page.sf-v257-support-hard-gated nav,
body.support-staff-page.sf-v257-support-hard-gated .navbar,
body.support-staff-page.sf-v257-support-hard-gated .site-header,
body.support-staff-page.sf-v257-support-hard-gated .top-header,
body.support-staff-page.sf-v257-support-hard-gated .sidebar,
body.support-staff-page.sf-v257-support-hard-gated .left-nav,
body.support-staff-page.sf-v257-support-hard-gated footer,
body.support-staff-page.sf-v257-support-hard-gated .site-footer{display:none!important;}
.sf-v257-support-login-only{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;}
.sf-v257-support-login-card{width:min(560px,100%);background:rgba(255,255,255,.96);border:1px solid rgba(30,115,150,.15);border-radius:28px;box-shadow:0 24px 80px rgba(15,88,110,.18);padding:28px;}
.sf-v257-support-logo{display:flex;justify-content:center;margin-bottom:16px;}
.sf-v257-support-logo img{max-width:300px;width:80%;height:auto;display:block;}
.sf-v257-support-login-card h1{margin:8px 0 10px;font-size:clamp(1.7rem,3vw,2.35rem);color:#103f50;}
.sf-v257-support-login-card p{color:#45616a;line-height:1.55;margin-bottom:20px;}
body.support-staff-page.sf-v257-support-authenticated .sf-v202-support-hero,
body.support-staff-page.sf-v257-support-authenticated .sf-v202-analytics-grid,
body.support-staff-page.sf-v257-support-authenticated .card{max-width:1180px;margin-left:auto;margin-right:auto;}
body.support-staff-page.sf-v257-support-authenticated .sf-v202-support-hero{margin-top:28px;}

/* v258: Employee Portal moved to public footer only */
.sf-v258-footer-employee-link-wrap{width:100%;margin-top:18px;padding-top:12px;border-top:1px solid rgba(255,255,255,.18);text-align:center;}
.footer .sf-v258-footer-employee-link-wrap,.site-footer .sf-v258-footer-employee-link-wrap{grid-column:1/-1;}
.sf-v258-footer-employee-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.88rem;font-weight:700;letter-spacing:.02em;text-decoration:none;color:inherit;opacity:.84;}
.sf-v258-footer-employee-link:hover,.sf-v258-footer-employee-link:focus{opacity:1;text-decoration:underline;}

/* v259 unified authenticated public/staff top bar cleanup */
body.sf-v259-auth-public #globalLoginStatusBar,
body.sf-v259-auth-public .login-status-bar:not(.sf-v259-auth-topbar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;overflow:hidden!important;}
.sf-v259-auth-topbar{position:sticky!important;top:0!important;z-index:10050!important;background:linear-gradient(135deg,#071426 0%,#0f2442 42%,#0757d8 100%)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;box-shadow:0 12px 32px rgba(2,8,23,.24)!important;color:#fff!important;overflow:visible!important;}
.sf-v259-auth-topbar:before{display:none!important;content:none!important;}
.sf-v259-auth-inner{max-width:1440px;margin:0 auto;min-height:64px;padding:8px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;z-index:2;}
.sf-v259-auth-left{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap;}
.sf-v259-logo{display:flex;align-items:center;text-decoration:none!important;margin-left:auto;}
.sf-v259-logo img{display:block;height:46px;width:auto;max-width:min(360px,44vw);object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.18));}
.sf-v259-avatar{width:38px;height:38px;border-radius:999px;background:linear-gradient(135deg,#e6fbff,#cfefff);color:#0f2442;display:inline-grid;place-items:center;font-weight:950;border:2px solid rgba(255,255,255,.76);box-shadow:0 8px 18px rgba(0,0,0,.18);overflow:hidden;flex:0 0 auto;}
.sf-v259-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.sf-v259-copy{font-size:.88rem;line-height:1.15;color:#eafcff;font-weight:750;white-space:nowrap;}
.sf-v259-copy .login-status-name{font-weight:950;color:#fff;}
.sf-v259-copy .login-status-role{color:#9be7ff;font-weight:850;}
.sf-v259-btn,.sf-v259-auth-topbar .top-nav-menu-button{appearance:none;border:1px solid rgba(155,231,255,.42)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border-radius:999px!important;min-height:38px!important;padding:9px 14px!important;font-size:.86rem!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;box-shadow:none!important;cursor:pointer!important;font-family:inherit!important;}
.sf-v259-btn:hover,.sf-v259-auth-topbar .top-nav-menu-button:hover{background:rgba(255,255,255,.20)!important;transform:translateY(-1px);}
.sf-v259-auth-topbar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
.sf-v259-auth-topbar .top-nav-dropdown{position:absolute!important;right:0!important;top:calc(100% + 10px)!important;display:none!important;min-width:270px!important;max-height:min(75vh,560px)!important;overflow:auto!important;background:#fff!important;color:#0f2442!important;border:1px solid #dbe8f2!important;border-radius:18px!important;box-shadow:0 24px 58px rgba(2,8,23,.24)!important;padding:9px!important;z-index:10080!important;}
.sf-v259-auth-topbar .top-nav-dropdown.show,.sf-v259-auth-topbar .top-nav-dropdown.open{display:block!important;}
.sf-v259-auth-topbar .top-nav-dropdown a{display:block!important;color:#0f2442!important;text-decoration:none!important;font-size:.88rem!important;font-weight:850!important;border-radius:12px!important;padding:9px 10px!important;}
.sf-v259-auth-topbar .top-nav-dropdown a:hover{background:#eef8ff!important;color:#0757d8!important;}
.sf-v259-auth-topbar .nav-section-label{display:block!important;margin:8px 8px 5px!important;color:#64748b!important;text-transform:uppercase!important;font-size:.68rem!important;font-weight:950!important;letter-spacing:.08em!important;}
body.sf-v259-auth-public #sfV125TopLoginBar:not(.sf-v259-auth-topbar),
body.sf-v259-auth-public .sf-v256-public-client-topbar:not(.sf-v259-auth-topbar),
body.sf-v259-auth-public .sf-v256-staff-topbar:not(.sf-v259-auth-topbar){display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;}
body.sf-v259-login-popup html,body.sf-v259-login-popup{overflow:hidden!important;}
body.sf-v259-login-popup #sfV125TopLoginBar{box-shadow:none!important;border-bottom:0!important;}
body.sf-v259-login-popup .sf-v223-card{margin:12px auto!important;}
body.sf-v259-login-popup .sf-v223-card p{font-size:.92rem!important;margin-bottom:12px!important;}
body.sf-v259-login-popup #sfV223LoginForm{gap:10px!important;}
@media(max-width:760px){.sf-v259-auth-inner{justify-content:center}.sf-v259-logo{order:-1;width:100%;justify-content:center;margin:0}.sf-v259-auth-left{justify-content:center}.sf-v259-copy{white-space:normal;text-align:center}.sf-v259-logo img{max-width:86vw;height:42px}.sf-v259-btn,.sf-v259-auth-topbar .top-nav-menu-button{font-size:.78rem!important;padding:8px 10px!important}}
body.sf-v259-auth-public header a[href*="client-portal.html"],
body.sf-v259-auth-public header a[href*="staff-login-popup.html"],
body.sf-v259-auth-public header a[href*="login.html"],
body.sf-v259-auth-public .site-header a[href*="client-portal.html"],
body.sf-v259-auth-public .site-header a[href*="staff-login-popup.html"],
body.sf-v259-auth-public .site-header a[href*="login.html"]{display:none!important;}

/* v260 authenticated public pages: hide old public chrome and keep one working SpaFlow bar */
body.sf-v260-auth-public > .launch-bar,
body.sf-v260-auth-public > header,
body.sf-v260-auth-public > .site-header,
body.sf-v260-auth-public #globalLoginStatusBar,
body.sf-v260-auth-public #sfV125TopLoginBar,
body.sf-v260-auth-public #sfV123TopLoginBar,
body.sf-v260-auth-public #sfV124TopLoginBar,
body.sf-v260-auth-public .login-status-bar:not(#sfV260AuthTopBar),
body.sf-v260-auth-public .sf-v125-top-login-bar:not(#sfV260AuthTopBar),
body.sf-v260-auth-public .sf-v256-public-client-topbar,
body.sf-v260-auth-public .sf-v256-staff-topbar,
body.sf-v260-auth-public .sf-v259-auth-topbar:not(#sfV260AuthTopBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
#sfV260AuthTopBar.sf-v260-auth-topbar{display:block!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483000!important;background:linear-gradient(135deg,#071426 0%,#0f2442 42%,#0757d8 100%)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;box-shadow:0 12px 32px rgba(2,8,23,.24)!important;color:#fff!important;overflow:visible!important;height:auto!important;min-height:0!important;}
#sfV260AuthTopBar:before,#sfV260AuthTopBar:after{display:none!important;content:none!important;background:none!important;}
.sf-v260-auth-inner{max-width:1440px;margin:0 auto;min-height:64px;padding:8px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;z-index:2;}
.sf-v260-auth-left{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap;}
.sf-v260-avatar{width:36px;height:36px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(155,231,255,.44);display:inline-flex;align-items:center;justify-content:center;font-weight:950;color:#fff;overflow:hidden;flex:0 0 36px;}
.sf-v260-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.sf-v260-copy{font-size:.92rem;font-weight:800;color:#fff;white-space:nowrap;}
.sf-v260-copy .login-status-name{font-weight:950;color:#fff;}
.sf-v260-copy .login-status-role{color:#dbeafe;font-weight:850;}
.sf-v260-btn,#sfV260AuthTopBar .top-nav-menu-button{appearance:none!important;border:1px solid rgba(155,231,255,.42)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border-radius:999px!important;min-height:38px!important;padding:9px 14px!important;font-size:.86rem!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;box-shadow:none!important;cursor:pointer!important;font-family:inherit!important;}
.sf-v260-btn:hover,#sfV260AuthTopBar .top-nav-menu-button:hover{background:rgba(255,255,255,.20)!important;transform:translateY(-1px);}
.sf-v260-logo{display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:180px!important;text-decoration:none!important;}
.sf-v260-logo img{display:block!important;width:auto!important;max-width:260px!important;height:48px!important;object-fit:contain!important;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));}
.sf-v260-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
#sfV260AuthTopBar .sf-v260-dropdown{position:absolute!important;right:0!important;top:calc(100% + 10px)!important;display:none!important;min-width:285px!important;max-height:min(75vh,560px)!important;overflow:auto!important;background:#fff!important;color:#0f2442!important;border:1px solid #dbe8f2!important;border-radius:18px!important;box-shadow:0 24px 58px rgba(2,8,23,.24)!important;padding:9px!important;z-index:2147483100!important;}
#sfV260AuthTopBar .sf-v260-dropdown.show,#sfV260AuthTopBar .sf-v260-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV260AuthTopBar .sf-v260-dropdown a{display:block!important;color:#0f2442!important;text-decoration:none!important;font-size:.88rem!important;font-weight:850!important;border-radius:12px!important;padding:9px 10px!important;}
#sfV260AuthTopBar .sf-v260-dropdown a:hover{background:#eef8ff!important;color:#0757d8!important;}
#sfV260AuthTopBar .nav-section-label{display:block!important;margin:8px 8px 5px!important;color:#64748b!important;text-transform:uppercase!important;font-size:.68rem!important;font-weight:950!important;letter-spacing:.08em!important;}
@media(max-width:760px){.sf-v260-auth-inner{justify-content:center;flex-wrap:wrap}.sf-v260-logo{order:-1;width:100%;justify-content:center!important;margin:0}.sf-v260-auth-left{justify-content:center}.sf-v260-copy{white-space:normal;text-align:center}.sf-v260-logo img{max-width:86vw;height:42px!important}.sf-v260-btn,#sfV260AuthTopBar .top-nav-menu-button{font-size:.78rem!important;padding:8px 10px!important}}


/* v262 unified client-portal styling across public, business, and staff pages */
:root{--sf262-blue:#0757d8;--sf262-blue-dark:#052e8f;--sf262-teal:#12bfc4;--sf262-navy:#0f2442;--sf262-ink:#102033;--sf262-muted:#64748b;--sf262-bg:#f4f8fb;--sf262-sidebar-top:#818892;--sf262-sidebar-bottom:#636a74;}
html,body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:var(--sf262-ink)!important;background:var(--sf262-bg)!important;}
a{color:var(--sf262-blue);}
.btn,button.btn,a.btn,.button,input[type="submit"],button[type="submit"]{border-radius:999px!important;font-weight:900!important;letter-spacing:.01em!important;min-height:36px!important;padding:9px 14px!important;border:1px solid rgba(18,191,196,.22)!important;box-shadow:0 10px 22px rgba(15,36,66,.10)!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;line-height:1.05!important;}
.btn-primary,.primary,button.btn-primary,a.btn-primary,input[type="submit"]{background:linear-gradient(135deg,var(--sf262-blue),var(--sf262-teal))!important;color:#fff!important;border-color:rgba(255,255,255,.18)!important;box-shadow:0 12px 28px rgba(7,87,216,.24)!important;}
.btn-secondary,.btn-soft,a.btn-secondary,button.btn-secondary{background:#fff!important;color:var(--sf262-navy)!important;border-color:#dbe8f2!important;}
.btn:hover,button.btn:hover,a.btn:hover{transform:translateY(-1px)!important;box-shadow:0 14px 30px rgba(15,36,66,.14)!important;}
.card,.panel,.pricing-card,.feature-card,.visual-tile,.sf-v262-card-surface{background:#fff!important;border:1px solid #e1edf8!important;border-radius:18px!important;box-shadow:0 14px 34px rgba(15,36,66,.08)!important;color:var(--sf262-ink)!important;}
input,select,textarea{border:1px solid #dbe8f2!important;border-radius:14px!important;background:#fff!important;color:var(--sf262-ink)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(18,191,196,.18)!important;border-color:var(--sf262-teal)!important;}

/* Public unauthenticated header gets the same SpaFlow visual language */
body:not(.client-portal-page) header.site-header,body:not(.client-portal-page) .site-header{background:linear-gradient(135deg,#0f2442,#14365f)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;box-shadow:0 8px 22px rgba(15,36,66,.16)!important;color:#fff!important;}
body:not(.client-portal-page) header.site-header .nav,body:not(.client-portal-page) .site-header .nav{min-height:58px!important;align-items:center!important;}
body:not(.client-portal-page) header.site-header a,body:not(.client-portal-page) .site-header a{color:#fff!important;font-weight:850!important;}
body:not(.client-portal-page) .nav-links a,body:not(.client-portal-page) .nav-links button,body:not(.client-portal-page) header.site-header .btn{border:1px solid rgba(255,255,255,.32)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;min-height:34px!important;padding:8px 12px!important;font-size:.84rem!important;font-weight:900!important;box-shadow:none!important;}
body:not(.client-portal-page) header.site-header .logo img,body:not(.client-portal-page) header.site-header .logo-image-wide{content:url('./assets/images/spaflow-client-sidebar-logo-v240.png?v=262')!important;max-height:50px!important;width:auto!important;object-fit:contain!important;filter:none!important;}

/* Business/staff authenticated pages use the client portal shell sizing and colors */
body.logged-in-page:not(.client-portal-page){background:#f4f8fb!important;min-height:100vh!important;}
body.logged-in-page:not(.client-portal-page) > .app-shell{display:grid!important;grid-template-columns:230px minmax(0,1fr)!important;min-height:calc(100vh - 44px)!important;background:#f4f8fb!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar{position:sticky!important;top:44px!important;align-self:start!important;height:calc(100vh - 44px)!important;overflow:auto!important;background:linear-gradient(180deg,var(--sf262-sidebar-top) 0%,var(--sf262-sidebar-bottom) 100%)!important;padding:12px 10px!important;box-shadow:inset -1px 0 rgba(255,255,255,.22)!important;border-right:0!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar .logo,body.logged-in-page:not(.client-portal-page) .sf-v133-sidebar-logo-host{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 0 10px!important;padding:8px 3px!important;background:transparent!important;filter:none!important;box-shadow:none!important;border-radius:18px!important;min-height:82px!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar .logo img,body.logged-in-page:not(.client-portal-page) #sfV125SidebarLogoImg,body.logged-in-page:not(.client-portal-page) .logo-image-wide{content:url('./assets/images/spaflow-client-sidebar-logo-v240.png?v=262')!important;width:165px!important;max-width:100%!important;height:auto!important;display:block!important;filter:none!important;box-shadow:none!important;background:transparent!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links,body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links{display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:4px!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links a,body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a{width:100%!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;background:#123967!important;color:#fff!important;box-shadow:0 8px 16px rgba(2,8,23,.16)!important;font-weight:850!important;font-size:.79rem!important;padding:8px 9px!important;min-height:35px!important;display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;cursor:pointer!important;text-align:left!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links a:hover,body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:hover{background:#052e8f!important;color:#fff!important;transform:none!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.logged-in-page:not(.client-portal-page) aside.sidebar nav.side-links a.active,body.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a.active{background:#0757d8!important;outline:2px solid rgba(201,251,255,.85)!important;box-shadow:0 10px 20px rgba(7,87,216,.24)!important;}
body.logged-in-page:not(.client-portal-page) main.main{min-width:0!important;padding:18px 22px 0!important;background:#f4f8fb!important;}
body.logged-in-page:not(.client-portal-page) [data-business-context],body.logged-in-page:not(.client-portal-page) .business-header{background:#fff!important;border:1px solid #e5edf5!important;border-radius:18px!important;padding:12px 16px!important;margin-bottom:14px!important;box-shadow:0 10px 28px rgba(15,36,66,.07)!important;}

/* v262 single unified authenticated top bar for public, business, and staff pages */
body.sf-v262-auth-shell > header.site-header,body.sf-v262-auth-shell > .site-header,body.sf-v262-auth-shell > .launch-bar,body.sf-v262-auth-shell #globalLoginStatusBar,body.sf-v262-auth-shell #sfV125TopLoginBar,body.sf-v262-auth-shell #sfV123TopLoginBar,body.sf-v262-auth-shell #sfV124TopLoginBar,body.sf-v262-auth-shell #sfV260AuthTopBar,body.sf-v262-auth-shell .login-status-bar:not(#sfV262UnifiedTopBar),body.sf-v262-auth-shell .sf-v125-top-login-bar:not(#sfV262UnifiedTopBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
#sfV262UnifiedTopBar{display:block!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483200!important;background:linear-gradient(135deg,#0f2442,#14365f)!important;box-shadow:0 8px 22px rgba(15,36,66,.16)!important;color:#fff!important;overflow:visible!important;border-bottom:1px solid rgba(155,231,255,.28)!important;}
#sfV262UnifiedTopBar .sf-v262-inner{min-height:44px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;padding:6px 14px!important;color:#fff!important;max-width:none!important;margin:0!important;}
#sfV262UnifiedTopBar .sf-v262-left,#sfV262UnifiedTopBar .sf-v262-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV262UnifiedTopBar .sf-v262-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV262UnifiedTopBar .sf-v262-avatar{width:28px!important;height:28px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;overflow:hidden!important;font-size:.78rem!important;font-weight:900!important;color:#fff!important;flex:0 0 28px!important;}
#sfV262UnifiedTopBar .sf-v262-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV262UnifiedTopBar .sf-v262-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important;}
#sfV262UnifiedTopBar .login-status-name{font-weight:950!important;color:#fff!important;}#sfV262UnifiedTopBar .login-status-role{color:#c9fbff!important;font-weight:900!important;}
#sfV262UnifiedTopBar .sf-v262-btn,#sfV262UnifiedTopBar .top-nav-menu-button{border:1px solid rgba(255,255,255,.36)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;padding:7px 12px!important;font-size:.82rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;gap:6px!important;cursor:pointer!important;min-height:30px!important;box-shadow:none!important;font-family:inherit!important;}
#sfV262UnifiedTopBar .sf-v262-btn:hover,#sfV262UnifiedTopBar .top-nav-menu-button:hover{background:rgba(255,255,255,.20)!important;color:#fff!important;transform:none!important;}
#sfV262UnifiedTopBar .sf-v262-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;padding:0 2px!important;margin-left:4px!important;}
#sfV262UnifiedTopBar .sf-v262-logo img{height:42px!important;max-width:210px!important;width:auto!important;display:block!important;filter:none!important;object-fit:contain!important;}
#sfV262UnifiedTopBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV262UnifiedTopBar .top-nav-dropdown{position:absolute!important;right:0!important;top:calc(100% + 8px)!important;min-width:260px!important;max-height:min(75vh,560px)!important;overflow:auto!important;background:#0f2442!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:18px!important;padding:10px!important;box-shadow:0 24px 50px rgba(2,8,23,.32)!important;display:none!important;z-index:2147483300!important;}
#sfV262UnifiedTopBar .top-nav-dropdown.show,#sfV262UnifiedTopBar .top-nav-menu.open .top-nav-dropdown{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV262UnifiedTopBar .top-nav-dropdown .nav-section-label{display:block!important;color:#c9fbff!important;font-size:.68rem!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.08em!important;margin:5px 7px 8px!important;}
#sfV262UnifiedTopBar .top-nav-dropdown a{width:100%!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#fff!important;padding:10px!important;font-size:.88rem!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;gap:8px!important;font-weight:850!important;cursor:pointer!important;box-shadow:none!important;}
#sfV262UnifiedTopBar .top-nav-dropdown a:hover{background:#073b91!important;color:#fff!important;}
body.sf-v262-auth-shell.logged-in-page:not(.client-portal-page) > .app-shell{min-height:calc(100vh - 44px)!important;}
body.sf-v262-auth-shell.logged-in-page:not(.client-portal-page) aside.sidebar{top:44px!important;height:calc(100vh - 44px)!important;}
@media(max-width:900px){#sfV262UnifiedTopBar .sf-v262-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV262UnifiedTopBar .sf-v262-actions{margin-left:0!important;justify-content:center!important}#sfV262UnifiedTopBar .sf-v262-logo{order:-1;width:100%;margin:0!important}#sfV262UnifiedTopBar .sf-v262-copy{white-space:normal!important;text-align:center!important}body.logged-in-page:not(.client-portal-page) > .app-shell{grid-template-columns:1fr!important}body.logged-in-page:not(.client-portal-page) aside.sidebar{position:relative!important;top:0!important;height:auto!important}}

/* v263: restored public logged-out top login bar using the client-portal visual language */
body.sf-v263-public-unauth > header.site-header,
body.sf-v263-public-unauth > .site-header,
body.sf-v263-public-unauth > .launch-bar,
body.sf-v263-public-unauth #globalLoginStatusBar,
body.sf-v263-public-unauth #sfV125TopLoginBar,
body.sf-v263-public-unauth #sfV123TopLoginBar,
body.sf-v263-public-unauth #sfV124TopLoginBar,
body.sf-v263-public-unauth .login-status-bar:not(#sfV263PublicLoginBar),
body.sf-v263-public-unauth .sf-v125-top-login-bar:not(#sfV263PublicLoginBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
#sfV263PublicLoginBar{position:sticky!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:2147483000!important;background:linear-gradient(135deg,#08263f 0%,#0c4b67 48%,#126f86 100%)!important;border-bottom:1px solid rgba(255,255,255,.16)!important;box-shadow:0 12px 28px rgba(7,31,52,.18)!important;color:#fff!important;overflow:visible!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
#sfV263PublicLoginBar .sf-v263-inner{min-height:50px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:6px 14px!important;max-width:none!important;margin:0!important;color:#fff!important;}
#sfV263PublicLoginBar .sf-v263-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;flex:0 0 auto!important;}
#sfV263PublicLoginBar .sf-v263-logo img{height:42px!important;max-width:220px!important;width:auto!important;object-fit:contain!important;display:block!important;filter:none!important;}
#sfV263PublicLoginBar .sf-v263-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:wrap!important;margin-left:auto!important;}
#sfV263PublicLoginBar .sf-v263-btn,#sfV263PublicLoginBar .top-nav-menu-button{border:1px solid rgba(255,255,255,.36)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;box-shadow:none!important;font-family:inherit!important;white-space:nowrap!important;}
#sfV263PublicLoginBar .sf-v263-btn:hover,#sfV263PublicLoginBar .top-nav-menu-button:hover{background:rgba(255,255,255,.20)!important;color:#fff!important;transform:none!important;text-decoration:none!important;}
#sfV263PublicLoginBar .sf-v263-signup{background:rgba(255,255,255,.18)!important;}
#sfV263PublicLoginBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV263PublicLoginBar .top-nav-dropdown{position:absolute!important;right:0!important;top:calc(100% + 10px)!important;min-width:230px!important;display:none!important;background:#fff!important;color:#0f243f!important;border:1px solid #dbe8f5!important;border-radius:18px!important;box-shadow:0 20px 44px rgba(15,36,66,.18)!important;padding:10px!important;z-index:2147483001!important;overflow:visible!important;}
#sfV263PublicLoginBar .top-nav-dropdown.show,#sfV263PublicLoginBar .top-nav-dropdown.open,#sfV263PublicLoginBar .top-nav-menu.open .top-nav-dropdown{display:block!important;}
#sfV263PublicLoginBar .top-nav-dropdown a{display:block!important;color:#0f243f!important;text-decoration:none!important;padding:10px 12px!important;border-radius:12px!important;font-size:.9rem!important;font-weight:850!important;line-height:1.2!important;}
#sfV263PublicLoginBar .top-nav-dropdown a:hover{background:#edf7fb!important;color:#0b5e74!important;}
#sfV263PublicLoginBar .nav-section-label{display:block!important;color:#0b7086!important;font-size:.74rem!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:950!important;padding:8px 12px 5px!important;}
@media(max-width:760px){#sfV263PublicLoginBar .sf-v263-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV263PublicLoginBar .sf-v263-actions{justify-content:center!important;margin-left:0!important}#sfV263PublicLoginBar .sf-v263-logo{width:100%!important}#sfV263PublicLoginBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}}

/* v264 stable single header styles */
body.sf-v264-public-unauth > header.site-header,
body.sf-v264-public-unauth > .site-header,
body.sf-v264-public-unauth > .launch-bar,
body.sf-v264-auth-shell > header.site-header,
body.sf-v264-auth-shell > .site-header,
body.sf-v264-auth-shell > .launch-bar,
body.sf-v264-public-unauth #globalLoginStatusBar,
body.sf-v264-auth-shell #globalLoginStatusBar,
body.sf-v264-public-unauth #sfV125TopLoginBar,
body.sf-v264-auth-shell #sfV125TopLoginBar,
body.sf-v264-public-unauth #sfV260AuthTopBar,
body.sf-v264-auth-shell #sfV260AuthTopBar,
body.sf-v264-public-unauth #sfV262UnifiedTopBar,
body.sf-v264-auth-shell #sfV262UnifiedTopBar,
body.sf-v264-public-unauth #sfV263PublicLoginBar,
body.sf-v264-auth-shell #sfV263PublicLoginBar,
body.sf-v264-public-unauth .login-status-bar:not(#sfV264TopBar),
body.sf-v264-auth-shell .login-status-bar:not(#sfV264TopBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
#sfV264TopBar{position:relative!important;z-index:9999!important;width:100%!important;background:linear-gradient(135deg,#083d63,#0f6c8f 52%,#2fa8ad)!important;border-bottom:1px solid rgba(255,255,255,.18)!important;box-shadow:0 12px 34px rgba(8,61,99,.18)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
#sfV264TopBar .sf-v264-inner{min-height:50px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:6px 14px!important;max-width:none!important;margin:0!important;color:#fff!important;}
#sfV264TopBar .sf-v264-left,#sfV264TopBar .sf-v264-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV264TopBar .sf-v264-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV264TopBar .sf-v264-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;flex:0 0 auto!important;margin-left:auto!important;}
#sfV264TopBar.sf-v264-public .sf-v264-logo{margin-left:0!important;}
#sfV264TopBar .sf-v264-logo img{height:42px!important;max-width:225px!important;width:auto!important;display:block!important;object-fit:contain!important;filter:none!important;}
#sfV264TopBar .sf-v264-avatar{width:30px!important;height:30px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;overflow:hidden!important;font-size:.78rem!important;font-weight:900!important;color:#fff!important;flex:0 0 30px!important;}
#sfV264TopBar .sf-v264-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV264TopBar .sf-v264-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important;}
#sfV264TopBar .login-status-role{opacity:.88!important;color:#e8f8ff!important;}
#sfV264TopBar .sf-v264-btn,#sfV264TopBar .top-nav-menu-button{border:1px solid rgba(255,255,255,.36)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;box-shadow:none!important;font-family:inherit!important;white-space:nowrap!important;}
#sfV264TopBar .sf-v264-btn:hover,#sfV264TopBar .top-nav-menu-button:hover{background:rgba(255,255,255,.20)!important;color:#fff!important;transform:none!important;text-decoration:none!important;}
#sfV264TopBar .top-nav-menu{position:relative!important;display:inline-flex!important;}
#sfV264TopBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 10px)!important;right:0!important;left:auto!important;min-width:250px!important;background:#fff!important;color:#0f2544!important;border:1px solid #dcecf7!important;border-radius:18px!important;box-shadow:0 18px 42px rgba(15,37,68,.18)!important;padding:10px!important;display:none!important;z-index:10000!important;max-height:70vh!important;overflow:auto!important;}
#sfV264TopBar .top-nav-dropdown.show,#sfV264TopBar .top-nav-dropdown.open{display:block!important;}
#sfV264TopBar .top-nav-dropdown a{display:block!important;color:#0f2544!important;text-decoration:none!important;padding:9px 10px!important;border-radius:12px!important;font-size:.9rem!important;font-weight:800!important;}
#sfV264TopBar .top-nav-dropdown a:hover{background:#eff8fb!important;color:#083d63!important;}
#sfV264TopBar .nav-section-label{display:block!important;color:#0f6c8f!important;font-size:.72rem!important;font-weight:950!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:10px 10px 4px!important;}
body.sf-v264-auth-shell.logged-in-page:not(.client-portal-page) > .app-shell{min-height:calc(100vh - 50px)!important;}
body.sf-v264-auth-shell.logged-in-page:not(.client-portal-page) aside.sidebar{top:50px!important;height:calc(100vh - 50px)!important;}
@media(max-width:800px){#sfV264TopBar .sf-v264-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV264TopBar .sf-v264-actions,#sfV264TopBar .sf-v264-left{justify-content:center!important;margin-left:0!important}#sfV264TopBar .sf-v264-logo{width:100%!important;margin:0!important}#sfV264TopBar .sf-v264-copy{white-space:normal!important;text-align:center!important}#sfV264TopBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}}


/* v266 definitive chrome authority: one top bar, fixed logo sizing, client-portal-style staff shell */
body.sf-v266-managed > .launch-bar,
body.sf-v266-managed > header.site-header,
body.sf-v266-managed > .site-header,
body.sf-v266-managed > nav,
body.sf-v266-managed #globalLoginStatusBar,
body.sf-v266-managed #sfV125TopLoginBar,
body.sf-v266-managed #sfV124TopLoginBar,
body.sf-v266-managed #sfV123TopLoginBar,
body.sf-v266-managed #sfV260AuthTopBar,
body.sf-v266-managed #sfV262UnifiedTopBar,
body.sf-v266-managed #sfV263PublicLoginBar,
body.sf-v266-managed #sfV264TopBar,
body.sf-v266-managed .login-status-bar:not(#sfV266TopBar),
body.sf-v266-managed .sf-v125-top-login-bar:not(#sfV266TopBar),
body.sf-v266-managed .sf-v259-auth-topbar:not(#sfV266TopBar),
body.sf-v266-managed .sf-v256-public-client-topbar:not(#sfV266TopBar),
body.sf-v266-managed .sf-v256-staff-topbar:not(#sfV266TopBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;}
#sfV266TopBar{display:block!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483600!important;background:linear-gradient(135deg,#0f2442 0%,#14365f 52%,#0757d8 100%)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;box-shadow:0 8px 22px rgba(15,36,66,.16)!important;color:#fff!important;overflow:visible!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;}
#sfV266TopBar .sf-v266-inner{min-height:50px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:6px 14px!important;max-width:none!important;margin:0!important;}
#sfV266TopBar .sf-v266-left,#sfV266TopBar .sf-v266-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV266TopBar .sf-v266-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV266TopBar .sf-v266-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;flex:0 0 auto!important;margin-left:auto!important;line-height:1!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;}
#sfV266TopBar.sf-v266-public .sf-v266-logo{margin-left:0!important;margin-right:auto!important;}
#sfV266TopBar .sf-v266-logo img{height:42px!important;max-height:42px!important;width:auto!important;max-width:225px!important;display:block!important;object-fit:contain!important;filter:none!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;}
#sfV266TopBar .sf-v266-avatar{width:30px!important;height:30px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;overflow:hidden!important;font-size:.78rem!important;font-weight:900!important;color:#fff!important;flex:0 0 30px!important;}
#sfV266TopBar .sf-v266-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV266TopBar .sf-v266-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important;}
#sfV266TopBar .login-status-name{font-weight:950!important;color:#fff!important;}
#sfV266TopBar .login-status-role{font-weight:850!important;color:#c9fbff!important;}
#sfV266TopBar .sf-v266-btn{border:1px solid rgba(255,255,255,.36)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;box-shadow:none!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;}
#sfV266TopBar .sf-v266-btn:hover{background:rgba(255,255,255,.20)!important;color:#fff!important;transform:none!important;text-decoration:none!important;}
#sfV266TopBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
#sfV266TopBar .top-nav-dropdown{position:absolute!important;right:0!important;top:calc(100% + 8px)!important;min-width:260px!important;max-height:min(75vh,560px)!important;overflow:auto!important;background:#fff!important;color:#0f2442!important;border:1px solid #dbe8f2!important;border-radius:18px!important;padding:9px!important;box-shadow:0 24px 58px rgba(2,8,23,.24)!important;display:none!important;z-index:2147483650!important;}
#sfV266TopBar .top-nav-dropdown.show,#sfV266TopBar .top-nav-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV266TopBar .top-nav-dropdown .nav-section-label{display:block!important;color:#64748b!important;font-size:.68rem!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.08em!important;margin:8px 8px 5px!important;}
#sfV266TopBar .top-nav-dropdown a,#sfV266TopBar .top-nav-dropdown button{width:100%!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#0f2442!important;padding:9px 10px!important;font-size:.88rem!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;gap:8px!important;font-weight:850!important;cursor:pointer!important;box-shadow:none!important;}
#sfV266TopBar .top-nav-dropdown a:hover,#sfV266TopBar .top-nav-dropdown button:hover{background:#eef8ff!important;color:#0757d8!important;}
body:not(.client-portal-page) header.site-header .logo img,
body:not(.client-portal-page) footer .logo img{height:auto!important;max-height:54px!important;width:auto!important;max-width:245px!important;object-fit:contain!important;display:block!important;background:transparent!important;border:0!important;padding:0!important;margin:0!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) > .app-shell{display:grid!important;grid-template-columns:230px minmax(0,1fr)!important;min-height:calc(100vh - 50px)!important;background:#f4f8fb!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) aside.sidebar{position:sticky!important;top:50px!important;align-self:start!important;height:calc(100vh - 50px)!important;overflow:auto!important;background:linear-gradient(180deg,#818892 0%,#636a74 100%)!important;padding:12px 10px!important;box-shadow:inset -1px 0 rgba(255,255,255,.22)!important;border:0!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 0 10px!important;padding:8px 3px!important;background:radial-gradient(circle at 16% 18%,rgba(18,191,196,.08),transparent 34%),radial-gradient(circle at 88% 82%,rgba(13,91,216,.07),transparent 32%),#fff!important;border:1px solid rgba(15,36,66,.12)!important;border-radius:18px!important;box-shadow:0 10px 22px rgba(2,8,23,.14)!important;filter:none!important;min-height:92px!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo:before,
body.sf-v266-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo:after{content:none!important;display:none!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo img{content:url('../images/spaflow-client-sidebar-logo-v240.png?v=266')!important;width:210px!important;max-width:210px!important;height:auto!important;max-height:90px!important;object-fit:contain!important;display:block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;filter:none!important;box-shadow:none!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links{display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:4px!important;padding:0!important;background:transparent!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links:before,
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links:after,
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links a:before,
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links a:after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links a{width:100%!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;background:#123967!important;color:#fff!important;box-shadow:0 8px 16px rgba(2,8,23,.16)!important;font-weight:850!important;font-size:.79rem!important;padding:8px 9px!important;min-height:35px!important;display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;cursor:pointer!important;text-align:left!important;transform:none!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links a:hover{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .side-links a.active{background:#0757d8!important;outline:2px solid rgba(201,251,255,.85)!important;box-shadow:0 10px 20px rgba(7,87,216,.24)!important;}
body.sf-v266-auth.logged-in-page:not(.client-portal-page) .main{background:#f4f8fb!important;color:#102033!important;}
@media(max-width:800px){#sfV266TopBar .sf-v266-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV266TopBar .sf-v266-actions,#sfV266TopBar .sf-v266-left{justify-content:center!important;margin-left:0!important}#sfV266TopBar .sf-v266-logo{width:100%!important;margin:0!important}#sfV266TopBar .sf-v266-copy{white-space:normal!important;text-align:center!important}#sfV266TopBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}body.sf-v266-auth.logged-in-page:not(.client-portal-page)> .app-shell{grid-template-columns:1fr!important}body.sf-v266-auth.logged-in-page:not(.client-portal-page) aside.sidebar{position:relative!important;top:0!important;height:auto!important}}

/* v267 final chrome cleanup: exactly one top bar; dropdown opens beneath menu; correct portal logo sizing */
body.sf-v267-managed > .launch-bar,
body.sf-v267-managed > header.site-header,
body.sf-v267-managed > .site-header,
body.sf-v267-managed > nav,
body.sf-v267-managed #globalLoginStatusBar,
body.sf-v267-managed #sfV125TopLoginBar,
body.sf-v267-managed #sfV124TopLoginBar,
body.sf-v267-managed #sfV123TopLoginBar,
body.sf-v267-managed #sfV260AuthTopBar,
body.sf-v267-managed #sfV262UnifiedTopBar,
body.sf-v267-managed #sfV263PublicLoginBar,
body.sf-v267-managed #sfV264TopBar,
body.sf-v267-managed #sfV266TopBar,
body.sf-v267-managed .login-status-bar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v125-top-login-bar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v259-auth-topbar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v256-public-client-topbar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v256-staff-topbar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v266-topbar:not(#sfV267TopBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;}
#sfV267TopBar{display:block!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483600!important;background:linear-gradient(135deg,#0f2442 0%,#14365f 52%,#0757d8 100%)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;box-shadow:0 8px 22px rgba(15,36,66,.16)!important;color:#fff!important;overflow:visible!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;}
#sfV267TopBar .sf-v267-inner{min-height:50px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:6px 14px!important;max-width:none!important;margin:0!important;}
#sfV267TopBar .sf-v267-left,#sfV267TopBar .sf-v267-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV267TopBar .sf-v267-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV267TopBar .sf-v267-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;flex:0 0 auto!important;margin-left:auto!important;line-height:1!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;}
#sfV267TopBar.sf-v267-public .sf-v267-logo{margin-left:0!important;margin-right:auto!important;}
#sfV267TopBar .sf-v267-logo img{height:42px!important;max-height:42px!important;width:auto!important;max-width:225px!important;display:block!important;object-fit:contain!important;filter:none!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;}
#sfV267TopBar .sf-v267-avatar{width:30px!important;height:30px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;overflow:hidden!important;font-size:.78rem!important;font-weight:900!important;color:#fff!important;flex:0 0 30px!important;}
#sfV267TopBar .sf-v267-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV267TopBar .sf-v267-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important;}
#sfV267TopBar .login-status-name{font-weight:950!important;color:#fff!important;}
#sfV267TopBar .login-status-role{font-weight:850!important;color:#c9fbff!important;}
#sfV267TopBar .sf-v267-btn{border:1px solid rgba(255,255,255,.36)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;box-shadow:none!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;}
#sfV267TopBar .sf-v267-btn:hover{background:rgba(255,255,255,.20)!important;color:#fff!important;transform:none!important;text-decoration:none!important;}
#sfV267TopBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV267TopBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:auto!important;transform:none!important;display:none!important;min-width:265px!important;max-height:min(72vh,560px)!important;overflow:auto!important;background:#fff!important;color:#0f2442!important;border:1px solid #dbe8f2!important;border-radius:18px!important;box-shadow:0 24px 58px rgba(2,8,23,.24)!important;padding:9px!important;z-index:2147483640!important;}
#sfV267TopBar .top-nav-dropdown.show,#sfV267TopBar .top-nav-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV267TopBar .top-nav-dropdown a,#sfV267TopBar .top-nav-dropdown button{display:block!important;width:100%!important;color:#0f2442!important;background:transparent!important;text-decoration:none!important;text-align:left!important;font-size:.88rem!important;font-weight:850!important;border-radius:12px!important;padding:9px 10px!important;border:0!important;box-shadow:none!important;}
#sfV267TopBar .top-nav-dropdown a:hover,#sfV267TopBar .top-nav-dropdown button:hover{background:#eef8ff!important;color:#0757d8!important;}
#sfV267TopBar .nav-section-label{display:block!important;color:#0f6c8f!important;font-size:.72rem!important;font-weight:950!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:10px 10px 4px!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) > .app-shell{display:grid!important;grid-template-columns:230px minmax(0,1fr)!important;min-height:calc(100vh - 50px)!important;background:#f4f8fb!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar{position:sticky!important;top:50px!important;align-self:start!important;height:calc(100vh - 50px)!important;overflow:auto!important;background:linear-gradient(180deg,#818892 0%,#636a74 100%)!important;padding:12px 10px!important;box-shadow:inset -1px 0 rgba(255,255,255,.22)!important;border:0!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 0 10px!important;padding:8px 3px!important;background:radial-gradient(circle at 16% 18%,rgba(18,191,196,.08),transparent 34%),radial-gradient(circle at 88% 82%,rgba(13,91,216,.07),transparent 32%),#fff!important;border:1px solid rgba(15,36,66,.12)!important;border-radius:18px!important;box-shadow:0 10px 22px rgba(2,8,23,.14)!important;filter:none!important;min-height:92px!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo:before,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo:after{content:none!important;display:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo img{content:url('../images/spaflow-client-sidebar-logo-v240.png?v=267')!important;width:210px!important;max-width:210px!important;height:auto!important;max-height:90px!important;object-fit:contain!important;display:block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;filter:none!important;box-shadow:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links{display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:4px!important;padding:0!important;background:transparent!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links:before,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links:after,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a:before,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a:after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a{width:100%!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;background:#123967!important;color:#fff!important;box-shadow:0 8px 16px rgba(2,8,23,.16)!important;font-weight:850!important;font-size:.79rem!important;padding:8px 9px!important;min-height:35px!important;display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;cursor:pointer!important;text-align:left!important;transform:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a:hover{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a.active{background:#0757d8!important;outline:2px solid rgba(201,251,255,.85)!important;box-shadow:0 10px 20px rgba(7,87,216,.24)!important;}
@media(max-width:800px){#sfV267TopBar .sf-v267-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV267TopBar .sf-v267-actions,#sfV267TopBar .sf-v267-left{justify-content:center!important;margin-left:0!important}#sfV267TopBar .sf-v267-logo{width:100%!important;margin:0!important}#sfV267TopBar .sf-v267-copy{white-space:normal!important;text-align:center!important}#sfV267TopBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}body.sf-v267-auth.logged-in-page:not(.client-portal-page)> .app-shell{grid-template-columns:1fr!important}body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar{position:relative!important;top:0!important;height:auto!important}}

/* v267 final chrome cleanup: exactly one top bar; dropdown opens beneath menu; correct portal logo sizing */
body.sf-v267-managed > .launch-bar,
body.sf-v267-managed > header.site-header,
body.sf-v267-managed > .site-header,
body.sf-v267-managed > nav,
body.sf-v267-managed #globalLoginStatusBar,
body.sf-v267-managed #sfV125TopLoginBar,
body.sf-v267-managed #sfV124TopLoginBar,
body.sf-v267-managed #sfV123TopLoginBar,
body.sf-v267-managed #sfV260AuthTopBar,
body.sf-v267-managed #sfV262UnifiedTopBar,
body.sf-v267-managed #sfV263PublicLoginBar,
body.sf-v267-managed #sfV264TopBar,
body.sf-v267-managed #sfV266TopBar,
body.sf-v267-managed .login-status-bar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v125-top-login-bar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v259-auth-topbar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v256-public-client-topbar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v256-staff-topbar:not(#sfV267TopBar),
body.sf-v267-managed .sf-v266-topbar:not(#sfV267TopBar){display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;}
#sfV267TopBar{display:block!important;visibility:visible!important;opacity:1!important;position:sticky!important;top:0!important;z-index:2147483600!important;background:linear-gradient(135deg,#0f2442 0%,#14365f 52%,#0757d8 100%)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;box-shadow:0 8px 22px rgba(15,36,66,.16)!important;color:#fff!important;overflow:visible!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;}
#sfV267TopBar .sf-v267-inner{min-height:50px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:6px 14px!important;max-width:none!important;margin:0!important;}
#sfV267TopBar .sf-v267-left,#sfV267TopBar .sf-v267-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV267TopBar .sf-v267-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV267TopBar .sf-v267-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;flex:0 0 auto!important;margin-left:auto!important;line-height:1!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;}
#sfV267TopBar.sf-v267-public .sf-v267-logo{margin-left:0!important;margin-right:auto!important;}
#sfV267TopBar .sf-v267-logo img{height:42px!important;max-height:42px!important;width:auto!important;max-width:225px!important;display:block!important;object-fit:contain!important;filter:none!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;}
#sfV267TopBar .sf-v267-avatar{width:30px!important;height:30px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;overflow:hidden!important;font-size:.78rem!important;font-weight:900!important;color:#fff!important;flex:0 0 30px!important;}
#sfV267TopBar .sf-v267-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV267TopBar .sf-v267-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important;}
#sfV267TopBar .login-status-name{font-weight:950!important;color:#fff!important;}
#sfV267TopBar .login-status-role{font-weight:850!important;color:#c9fbff!important;}
#sfV267TopBar .sf-v267-btn{border:1px solid rgba(255,255,255,.36)!important;background:rgba(255,255,255,.11)!important;color:#fff!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;box-shadow:none!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;}
#sfV267TopBar .sf-v267-btn:hover{background:rgba(255,255,255,.20)!important;color:#fff!important;transform:none!important;text-decoration:none!important;}
#sfV267TopBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV267TopBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:auto!important;transform:none!important;display:none!important;min-width:265px!important;max-height:min(72vh,560px)!important;overflow:auto!important;background:#fff!important;color:#0f2442!important;border:1px solid #dbe8f2!important;border-radius:18px!important;box-shadow:0 24px 58px rgba(2,8,23,.24)!important;padding:9px!important;z-index:2147483640!important;}
#sfV267TopBar .top-nav-dropdown.show,#sfV267TopBar .top-nav-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV267TopBar .top-nav-dropdown a,#sfV267TopBar .top-nav-dropdown button{display:block!important;width:100%!important;color:#0f2442!important;background:transparent!important;text-decoration:none!important;text-align:left!important;font-size:.88rem!important;font-weight:850!important;border-radius:12px!important;padding:9px 10px!important;border:0!important;box-shadow:none!important;}
#sfV267TopBar .top-nav-dropdown a:hover,#sfV267TopBar .top-nav-dropdown button:hover{background:#eef8ff!important;color:#0757d8!important;}
#sfV267TopBar .nav-section-label{display:block!important;color:#0f6c8f!important;font-size:.72rem!important;font-weight:950!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:10px 10px 4px!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) > .app-shell{display:grid!important;grid-template-columns:230px minmax(0,1fr)!important;min-height:calc(100vh - 50px)!important;background:#f4f8fb!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar{position:sticky!important;top:50px!important;align-self:start!important;height:calc(100vh - 50px)!important;overflow:auto!important;background:linear-gradient(180deg,#818892 0%,#636a74 100%)!important;padding:12px 10px!important;box-shadow:inset -1px 0 rgba(255,255,255,.22)!important;border:0!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 0 10px!important;padding:8px 3px!important;background:radial-gradient(circle at 16% 18%,rgba(18,191,196,.08),transparent 34%),radial-gradient(circle at 88% 82%,rgba(13,91,216,.07),transparent 32%),#fff!important;border:1px solid rgba(15,36,66,.12)!important;border-radius:18px!important;box-shadow:0 10px 22px rgba(2,8,23,.14)!important;filter:none!important;min-height:92px!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo:before,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo:after{content:none!important;display:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo img{content:url('../images/spaflow-client-sidebar-logo-v240.png?v=267')!important;width:210px!important;max-width:210px!important;height:auto!important;max-height:90px!important;object-fit:contain!important;display:block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;filter:none!important;box-shadow:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links{display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:4px!important;padding:0!important;background:transparent!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links:before,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links:after,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a:before,
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a:after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a{width:100%!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;background:#123967!important;color:#fff!important;box-shadow:0 8px 16px rgba(2,8,23,.16)!important;font-weight:850!important;font-size:.79rem!important;padding:8px 9px!important;min-height:35px!important;display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;cursor:pointer!important;text-align:left!important;transform:none!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a:hover{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v267-auth.logged-in-page:not(.client-portal-page) .side-links a.active{background:#0757d8!important;outline:2px solid rgba(201,251,255,.85)!important;box-shadow:0 10px 20px rgba(7,87,216,.24)!important;}
@media(max-width:800px){#sfV267TopBar .sf-v267-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV267TopBar .sf-v267-actions,#sfV267TopBar .sf-v267-left{justify-content:center!important;margin-left:0!important}#sfV267TopBar .sf-v267-logo{width:100%!important;margin:0!important}#sfV267TopBar .sf-v267-copy{white-space:normal!important;text-align:center!important}#sfV267TopBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}body.sf-v267-auth.logged-in-page:not(.client-portal-page)> .app-shell{grid-template-columns:1fr!important}body.sf-v267-auth.logged-in-page:not(.client-portal-page) aside.sidebar{position:relative!important;top:0!important;height:auto!important}}

/* v268 stable top bar authority */
body.sf-v268-managed > .launch-bar{display:none!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;overflow:hidden!important;}
body.sf-v268-managed > header.site-header{display:none!important;}
#sfV268TopBar{position:sticky!important;top:0!important;z-index:2147483000!important;width:100%!important;background:linear-gradient(135deg,#0f3a70 0%,#0757d8 56%,#12bfc4 100%)!important;color:#fff!important;box-shadow:0 8px 24px rgba(2,8,23,.18)!important;border-bottom:1px solid rgba(255,255,255,.22)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
#sfV268TopBar .sf-v268-inner{min-height:56px!important;display:flex!important;align-items:center!important;gap:12px!important;padding:7px 14px!important;box-sizing:border-box!important;max-width:1480px!important;margin:0 auto!important;}
#sfV268TopBar .sf-v268-logo{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0!important;line-height:1!important;flex:0 0 auto!important;}
#sfV268TopBar.sf-v268-auth-bar .sf-v268-logo{margin-left:auto!important;}
#sfV268TopBar .sf-v268-logo img{display:block!important;height:42px!important;max-height:42px!important;width:auto!important;max-width:230px!important;object-fit:contain!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;box-shadow:none!important;filter:none!important;}
#sfV268TopBar .sf-v268-actions,#sfV268TopBar .sf-v268-left{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV268TopBar .sf-v268-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV268TopBar .sf-v268-btn{border:1px solid rgba(255,255,255,.38)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:34px!important;box-shadow:none!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;}
#sfV268TopBar .sf-v268-btn:hover{background:rgba(255,255,255,.22)!important;color:#fff!important;text-decoration:none!important;transform:none!important;}
#sfV268TopBar .sf-v268-avatar{width:31px!important;height:31px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;color:#fff!important;overflow:hidden!important;font-size:.78rem!important;font-weight:900!important;flex:0 0 31px!important;}
#sfV268TopBar .sf-v268-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV268TopBar .sf-v268-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:850!important;color:#fff!important;white-space:nowrap!important;}
#sfV268TopBar .login-status-dot{width:10px!important;height:10px!important;border-radius:50%!important;background:#cbd5e1!important;box-shadow:0 0 0 3px rgba(255,255,255,.15)!important;display:inline-block!important;}
#sfV268TopBar .login-status-dot.logged-in{background:#39ff88!important;}
#sfV268TopBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
#sfV268TopBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;transform:none!important;min-width:245px!important;max-height:70vh!important;overflow:auto!important;background:#fff!important;color:#123967!important;border:1px solid rgba(15,36,66,.15)!important;border-radius:18px!important;box-shadow:0 18px 40px rgba(2,8,23,.22)!important;padding:10px!important;display:none!important;z-index:2147483001!important;}
#sfV268TopBar .top-nav-dropdown.show,#sfV268TopBar .top-nav-dropdown.open{display:block!important;}
#sfV268TopBar .top-nav-dropdown a,#sfV268TopBar .top-nav-dropdown .nav-section-label{display:block!important;text-align:left!important;}
#sfV268TopBar .top-nav-dropdown a{color:#123967!important;text-decoration:none!important;padding:9px 11px!important;border-radius:12px!important;font-weight:800!important;font-size:.86rem!important;line-height:1.2!important;}
#sfV268TopBar .top-nav-dropdown a:hover{background:#eef7ff!important;color:#0757d8!important;}
#sfV268TopBar .top-nav-dropdown .nav-section-label{font-size:.72rem!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#64748b!important;font-weight:950!important;padding:9px 11px 5px!important;}
body.sf-v268-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo img,body.sf-v268-auth:not(.client-portal-page) aside.sidebar .logo img{content:url('../images/spaflow-client-sidebar-logo-v269.png?v=269')!important;max-width:210px!important;width:210px!important;height:auto!important;max-height:90px!important;object-fit:contain!important;display:block!important;}
body.sf-v268-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:before,body.sf-v268-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:after,body.sf-v268-auth:not(.client-portal-page) aside.sidebar .side-links a:before,body.sf-v268-auth:not(.client-portal-page) aside.sidebar .side-links a:after{content:none!important;display:none!important;}
body:not(.sf-v268-managed) footer .logo img,body:not(.sf-v268-managed) header.site-header .logo img{max-height:64px!important;width:auto!important;object-fit:contain!important;}
@media(max-width:800px){#sfV268TopBar .sf-v268-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV268TopBar .sf-v268-actions,#sfV268TopBar .sf-v268-left{justify-content:center!important;margin-left:0!important}#sfV268TopBar .sf-v268-logo{width:100%!important;margin:0!important}#sfV268TopBar .sf-v268-copy{white-space:normal!important;text-align:center!important}#sfV268TopBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}}

/* v269 final header authority */
body.sf-v269-managed{--sf-v269-blue:#0757d8;--sf-v269-deep:#123967;--sf-v269-teal:#12bfc4;}
body.sf-v269-managed > .launch-bar{display:none!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;overflow:hidden!important;}
body.sf-v269-managed.sf-v269-auth > header.site-header{display:none!important;}
body.sf-v269-managed.sf-v269-public > header.site-header{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v269-managed #globalLoginStatusBar,
body.sf-v269-managed #sfV123TopLoginBar,
body.sf-v269-managed #sfV124TopLoginBar,
body.sf-v269-managed #sfV125TopLoginBar,
body.sf-v269-managed #sfV260AuthTopBar,
body.sf-v269-managed #sfV262UnifiedTopBar,
body.sf-v269-managed #sfV263PublicLoginBar,
body.sf-v269-managed #sfV264TopBar,
body.sf-v269-managed #sfV266TopBar,
body.sf-v269-managed #sfV267TopBar,
body.sf-v269-managed #sfV268TopBar,
body.sf-v269-managed .login-status-bar:not(#sfV269TopBar),
body.sf-v269-managed .sf-v125-top-login-bar,
body.sf-v269-managed .sf-v259-auth-topbar,
body.sf-v269-managed .sf-v256-public-client-topbar,
body.sf-v269-managed .sf-v256-staff-topbar,
body.sf-v269-managed .sf-v266-topbar,
body.sf-v269-managed .sf-v267-topbar,
body.sf-v269-managed .sf-v268-topbar{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
#sfV269TopBar{position:sticky!important;top:0!important;z-index:2147483000!important;width:100%!important;background:linear-gradient(135deg,#f8feff 0%,#eff9ff 52%,#e9fffb 100%)!important;color:#123967!important;box-shadow:0 8px 24px rgba(2,8,23,.14)!important;border-bottom:1px solid rgba(18,191,196,.28)!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
#sfV269TopBar .sf-v269-inner{min-height:58px!important;display:flex!important;align-items:center!important;gap:12px!important;padding:7px 14px!important;box-sizing:border-box!important;max-width:1480px!important;margin:0 auto!important;}
#sfV269TopBar .sf-v269-brand{display:inline-flex!important;align-items:center!important;gap:9px!important;text-decoration:none!important;color:#123967!important;background:rgba(255,255,255,.68)!important;border:1px solid rgba(18,191,196,.24)!important;border-radius:18px!important;padding:6px 12px 6px 8px!important;box-shadow:0 10px 24px rgba(7,87,216,.08)!important;line-height:1!important;flex:0 0 auto!important;}
#sfV269TopBar.sf-v269-auth-bar .sf-v269-brand{margin-left:auto!important;}
#sfV269TopBar .sf-v269-brand-icon{width:37px!important;height:37px!important;border-radius:13px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;box-shadow:inset 0 0 0 1px rgba(18,191,196,.2)!important;overflow:hidden!important;flex:0 0 37px!important;}
#sfV269TopBar .sf-v269-brand-icon svg{width:31px!important;height:31px!important;display:block!important;}
#sfV269TopBar .sf-v269-brand-text{display:flex!important;flex-direction:column!important;gap:3px!important;align-items:flex-start!important;white-space:nowrap!important;}
#sfV269TopBar .sf-v269-brand-text strong{font-size:1.08rem!important;line-height:1!important;font-weight:950!important;color:#0757d8!important;letter-spacing:.01em!important;}
#sfV269TopBar .sf-v269-brand-text small{font-size:.68rem!important;line-height:1!important;font-weight:800!important;color:#1f5b8f!important;letter-spacing:.02em!important;}
#sfV269TopBar .sf-v269-actions,#sfV269TopBar .sf-v269-left{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
#sfV269TopBar .sf-v269-actions{margin-left:auto!important;justify-content:flex-end!important;}
#sfV269TopBar .sf-v269-btn{border:1px solid rgba(7,87,216,.22)!important;background:#fff!important;color:#123967!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:35px!important;box-shadow:0 8px 18px rgba(7,87,216,.08)!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;}
#sfV269TopBar .sf-v269-btn:hover{background:#eef7ff!important;color:#0757d8!important;text-decoration:none!important;transform:none!important;}
#sfV269TopBar .sf-v269-primary{background:#0757d8!important;color:#fff!important;border-color:#0757d8!important;}
#sfV269TopBar .sf-v269-primary:hover{background:#0648b7!important;color:#fff!important;}
#sfV269TopBar .sf-v269-avatar{width:32px!important;height:32px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#0757d8!important;color:#fff!important;overflow:hidden!important;font-size:.78rem!important;font-weight:950!important;flex:0 0 32px!important;}
#sfV269TopBar .sf-v269-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV269TopBar .sf-v269-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:900!important;color:#123967!important;white-space:nowrap!important;}
#sfV269TopBar .login-status-role{color:#2c668f!important;font-weight:850!important;}
#sfV269TopBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
#sfV269TopBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;transform:none!important;min-width:250px!important;max-height:70vh!important;overflow:auto!important;background:#ffffff!important;color:#123967!important;border:1px solid rgba(15,36,66,.15)!important;border-radius:18px!important;box-shadow:0 18px 40px rgba(2,8,23,.22)!important;padding:10px!important;display:none!important;z-index:2147483001!important;}
#sfV269TopBar .top-nav-dropdown.show,#sfV269TopBar .top-nav-dropdown.open{display:block!important;}
#sfV269TopBar .top-nav-dropdown a,#sfV269TopBar .top-nav-dropdown .nav-section-label{display:block!important;text-align:left!important;}
#sfV269TopBar .top-nav-dropdown a{color:#123967!important;background:#fff!important;text-decoration:none!important;padding:10px 12px!important;border-radius:12px!important;font-weight:900!important;font-size:.88rem!important;line-height:1.2!important;text-shadow:none!important;}
#sfV269TopBar .top-nav-dropdown a:hover{background:#eef7ff!important;color:#0757d8!important;}
#sfV269TopBar .top-nav-dropdown .nav-section-label{font-size:.72rem!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#64748b!important;font-weight:950!important;padding:9px 11px 5px!important;background:transparent!important;}
body.sf-v269-auth.logged-in-page:not(.client-portal-page) aside.sidebar{background:linear-gradient(180deg,#0f3a70 0%,#123967 52%,#0f284a 100%)!important;color:#fff!important;border-right:1px solid rgba(255,255,255,.12)!important;}
body.sf-v269-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo{display:flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(18,191,196,.22)!important;border-radius:18px!important;padding:10px!important;margin:0 0 14px!important;min-height:74px!important;box-shadow:none!important;}
body.sf-v269-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo img{content:url('../images/spaflow-client-sidebar-logo-v269.png?v=269')!important;width:210px!important;max-width:210px!important;height:auto!important;max-height:82px!important;object-fit:contain!important;display:block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;box-shadow:none!important;filter:none!important;}
body.sf-v269-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:before,
body.sf-v269-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;}
body.sf-v269-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a{width:100%!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:12px!important;background:rgba(255,255,255,.09)!important;color:#fff!important;box-shadow:none!important;font-weight:850!important;font-size:.82rem!important;padding:9px 10px!important;min-height:38px!important;display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;text-align:left!important;}
body:not(.sf-v269-managed) footer .logo img,body:not(.sf-v269-managed) header.site-header .logo img{max-height:64px!important;width:auto!important;object-fit:contain!important;}
@media(max-width:800px){#sfV269TopBar .sf-v269-inner{justify-content:center!important;flex-wrap:wrap!important}#sfV269TopBar .sf-v269-actions,#sfV269TopBar .sf-v269-left{justify-content:center!important;margin-left:0!important}#sfV269TopBar .sf-v269-brand{width:auto!important;margin:0!important}#sfV269TopBar .sf-v269-copy{white-space:normal!important;text-align:center!important}#sfV269TopBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important}}

/* v270: attended appointment review/rating UI in client portal */
.sf-v270-addon-line{
  display:block!important;
  margin-top:4px!important;
  color:#42606b!important;
  font-size:12px!important;
}
.sf-v270-review-actions{
  margin-top:10px!important;
}
.sf-v270-review-summary{
  margin-top:8px!important;
  padding:9px 11px!important;
  border-radius:14px!important;
  border:1px solid rgba(18,191,196,.24)!important;
  background:linear-gradient(135deg,#f7fcfd,#eef9fb)!important;
  color:#17313b!important;
  font-size:13px!important;
  font-weight:750!important;
}
.sf-v270-review-note{
  color:#526a72!important;
  margin-top:-4px!important;
}
.sf-v270-review-autofill{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0 16px!important;
}
.sf-v270-review-autofill div{
  border:1px solid rgba(18,191,196,.18)!important;
  border-radius:16px!important;
  background:#f8fcfd!important;
  padding:10px 12px!important;
}
.sf-v270-review-autofill strong{
  display:block!important;
  color:#073b58!important;
  font-size:12px!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
.sf-v270-review-autofill span{
  display:block!important;
  margin-top:3px!important;
  color:#17313b!important;
  font-weight:800!important;
}
.sf-v270-rating-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:8px!important;
}
.sf-v270-rating-row label{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
  cursor:pointer!important;
}
.sf-v270-rating-row input{
  width:auto!important;
}
.sf-v270-rating-row span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(7,91,216,.18)!important;
  background:#fff!important;
  color:#073b58!important;
  font-weight:900!important;
}
.sf-v270-rating-row input:checked + span{
  background:linear-gradient(135deg,#0757d8,#12bfc4)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 8px 16px rgba(7,87,216,.18)!important;
}
@media(max-width:760px){
  .sf-v270-review-autofill{grid-template-columns:1fr!important;}
}

/* v271: make public/staff logged-in header use the same visual system as client-portal sf-v125 top bar */
body.sf-v271-managed{--sf-spa:#0757d8;--sf-spa-dark:#052e8f;--sf-teal:#12bfc4;--sf-ink:#102033;--sf-muted:#64748b;}
body.sf-v271-managed > .launch-bar,
body.sf-v271-managed > .top-header-spacer,
body.sf-v271-managed > .sf-empty-topbar{display:none!important;height:0!important;min-height:0!important;max-height:0!important;padding:0!important;margin:0!important;border:0!important;overflow:hidden!important;}
body.sf-v271-auth > header.site-header{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
body.sf-v271-public > header.site-header{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v271-managed #globalLoginStatusBar,
body.sf-v271-managed #sfV123TopLoginBar,
body.sf-v271-managed #sfV124TopLoginBar,
body.sf-v271-managed #sfV125TopLoginBar,
body.sf-v271-managed #sfV260AuthTopBar,
body.sf-v271-managed #sfV262UnifiedTopBar,
body.sf-v271-managed #sfV263PublicLoginBar,
body.sf-v271-managed #sfV264TopBar,
body.sf-v271-managed #sfV266TopBar,
body.sf-v271-managed #sfV267TopBar,
body.sf-v271-managed #sfV268TopBar,
body.sf-v271-managed #sfV269TopBar,
body.sf-v271-managed .login-status-bar:not(#sfV271TopLoginBar),
body.sf-v271-managed .sf-v125-top-login-bar:not(#sfV271TopLoginBar),
body.sf-v271-managed .sf-v259-auth-topbar,
body.sf-v271-managed .sf-v256-public-client-topbar,
body.sf-v271-managed .sf-v256-staff-topbar,
body.sf-v271-managed .sf-v266-topbar,
body.sf-v271-managed .sf-v267-topbar,
body.sf-v271-managed .sf-v268-topbar,
body.sf-v271-managed .sf-v269-topbar{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;}
#sfV271TopLoginBar{position:sticky!important;top:0!important;z-index:2147483200!important;background:linear-gradient(135deg,#071426 0%,#0f2442 42%,#0757d8 100%)!important;box-shadow:0 12px 32px rgba(2,8,23,.24)!important;border-bottom:1px solid rgba(155,231,255,.28)!important;overflow:visible!important;color:#fff!important;}
#sfV271TopLoginBar:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.24;background-image:radial-gradient(circle at 8% 35%,rgba(155,231,255,.75) 0 2px,transparent 3px),radial-gradient(circle at 29% 72%,rgba(255,255,255,.55) 0 1.5px,transparent 3px),radial-gradient(circle at 52% 28%,rgba(18,191,196,.45) 0 2px,transparent 4px),radial-gradient(circle at 76% 64%,rgba(155,231,255,.55) 0 1.5px,transparent 4px),linear-gradient(115deg,transparent 0 18%,rgba(255,255,255,.08) 18% 19%,transparent 19% 38%,rgba(155,231,255,.08) 38% 39%,transparent 39% 100%);background-size:260px 48px,310px 48px,360px 48px,410px 48px,220px 48px;}
#sfV271TopLoginBar .sf-v125-login-inner{position:relative!important;z-index:2!important;min-height:48px!important;padding:7px 16px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;}
#sfV271TopLoginBar .sf-v125-status-left{display:flex!important;align-items:center!important;gap:8px!important;flex:0 1 auto!important;min-width:0!important;}
#sfV271TopLoginBar .sf-v125-actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:8px!important;justify-content:flex-end!important;min-width:220px!important;}
#sfV271TopLoginBar .login-status-dot{width:9px!important;height:9px!important;border-radius:50%!important;background:#36d399!important;box-shadow:0 0 0 4px rgba(54,211,153,.17)!important;display:inline-block!important;flex:0 0 9px!important;}
#sfV271TopLoginBar .sf-v125-avatar{width:32px!important;height:32px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(201,251,255,.32)!important;overflow:hidden!important;font-size:.78rem!important;font-weight:950!important;flex:0 0 32px!important;box-shadow:0 6px 14px rgba(2,8,23,.18)!important;}
#sfV271TopLoginBar .sf-v125-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV271TopLoginBar .sf-v125-login-copy{font-size:.9rem!important;line-height:1.2!important;font-weight:900!important;color:#fff!important;white-space:nowrap!important;text-shadow:0 1px 2px rgba(0,0,0,.35)!important;}
#sfV271TopLoginBar .login-status-name{color:#fff!important;font-weight:950!important;}
#sfV271TopLoginBar .login-status-role{color:#c9fbff!important;font-weight:850!important;}
#sfV271TopLoginBar .sf-v125-edit-profile-link,
#sfV271TopLoginBar .sf-v125-actions button,
#sfV271TopLoginBar .sf-v125-actions a,
#sfV271TopLoginBar .sf-v125-status-left button,
#sfV271TopLoginBar .sf-v125-status-left a,
#sfV271TopLoginBar .top-nav-menu-button,
#sfV271TopLoginBar .sf-v223-mail-button,
#sfV271TopLoginBar .sf-v223-support-button,
#sfV271TopLoginBar .sf-v125-logout-button{background:rgba(255,255,255,.12)!important;border:1px solid rgba(201,251,255,.36)!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.16),0 8px 18px rgba(2,8,23,.12)!important;border-radius:999px!important;padding:8px 13px!important;font-size:.84rem!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:35px!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;}
#sfV271TopLoginBar .sf-v125-edit-profile-link:hover,
#sfV271TopLoginBar .sf-v125-actions button:hover,
#sfV271TopLoginBar .sf-v125-actions a:hover,
#sfV271TopLoginBar .sf-v125-status-left button:hover,
#sfV271TopLoginBar .sf-v125-status-left a:hover,
#sfV271TopLoginBar .top-nav-menu-button:hover,
#sfV271TopLoginBar .sf-v223-mail-button:hover,
#sfV271TopLoginBar .sf-v223-support-button:hover,
#sfV271TopLoginBar .sf-v125-logout-button:hover{background:#073b91!important;color:#fff!important;border-color:#9be7ff!important;text-decoration:none!important;}
#sfV271TopLoginBar .sf-v242-brand-banner{position:relative;overflow:hidden;min-height:32px;border:1px solid rgba(155,231,255,.32)!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(18,191,196,.12))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 8px 22px rgba(2,8,23,.18)!important;padding:5px 13px 5px 9px!important;display:inline-flex!important;align-items:center!important;gap:9px!important;color:#fff!important;white-space:nowrap!important;text-decoration:none!important;}
#sfV271TopLoginBar .sf-v242-brand-banner:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.26;background:radial-gradient(circle at 12% 48%,rgba(155,231,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 86% 35%,rgba(255,255,255,.65) 0 1.5px,transparent 3px),linear-gradient(120deg,transparent 0 28%,rgba(255,255,255,.18) 30%,transparent 36% 100%);}
#sfV271TopLoginBar .sf-v242-brand-icon{position:relative;width:24px!important;height:24px!important;border-radius:999px!important;background:rgba(255,255,255,.95)!important;box-shadow:0 0 12px rgba(255,255,255,.38)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 24px!important;}
#sfV271TopLoginBar .sf-v242-brand-icon svg{width:18px!important;height:18px!important;display:block!important;}
#sfV271TopLoginBar .sf-v242-brand-text{position:relative;display:flex!important;flex-direction:column!important;line-height:1.02!important;}
#sfV271TopLoginBar .sf-v242-brand-text strong{font-size:.9rem!important;letter-spacing:.06em!important;font-weight:950!important;color:#fff!important;}
#sfV271TopLoginBar .sf-v242-brand-text small{font-size:.62rem!important;font-weight:800!important;color:#c9fbff!important;letter-spacing:.02em!important;}
#sfV271TopLoginBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;}
#sfV271TopLoginBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;z-index:2147483300!important;display:none!important;min-width:230px!important;max-width:min(320px,calc(100vw - 24px))!important;background:linear-gradient(180deg,#0f2442 0%,#071a33 100%)!important;color:#fff!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:18px!important;box-shadow:0 28px 70px rgba(2,8,23,.46)!important;padding:10px!important;}
#sfV271TopLoginBar .top-nav-menu.open .top-nav-dropdown,
#sfV271TopLoginBar .top-nav-dropdown.show,
#sfV271TopLoginBar .top-nav-dropdown.open{display:block!important;}
#sfV271TopLoginBar .top-nav-dropdown .nav-section-label{display:block!important;color:#c9fbff!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:.66rem!important;font-weight:950!important;margin:8px 6px 5px!important;text-shadow:0 1px 2px rgba(0,0,0,.45)!important;}
#sfV271TopLoginBar .top-nav-dropdown a,
#sfV271TopLoginBar .top-nav-dropdown button{width:100%!important;background:#123967!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;margin:5px 0!important;padding:9px 10px!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;font-weight:850!important;font-size:.82rem!important;box-shadow:none!important;}
#sfV271TopLoginBar .top-nav-dropdown a:hover,
#sfV271TopLoginBar .top-nav-dropdown button:hover,
#sfV271TopLoginBar .top-nav-dropdown a:focus,
#sfV271TopLoginBar .top-nav-dropdown button:focus{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar{background:linear-gradient(180deg,#0f2442 0%,#132f52 52%,#071426 100%)!important;color:#fff!important;border-right:1px solid rgba(255,255,255,.12)!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo{display:flex!important;align-items:center!important;justify-content:center!important;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.98) 0%,rgba(255,255,255,.76) 38%,rgba(255,255,255,.18) 66%,rgba(255,255,255,0) 84%)!important;border:0!important;border-radius:18px!important;padding:8px 0!important;margin:0 0 14px!important;min-height:86px!important;filter:drop-shadow(0 0 16px rgba(255,255,255,.92)) drop-shadow(0 0 14px rgba(18,191,196,.48))!important;box-shadow:none!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .logo img{content:url('../images/spaflow-client-sidebar-logo-v269.png?v=269')!important;width:214px!important;max-width:100%!important;max-height:92px!important;object-fit:contain!important;display:block!important;opacity:1!important;visibility:visible!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;box-shadow:none!important;filter:none!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:before,
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a{width:100%!important;border:1px solid rgba(201,251,255,.28)!important;border-radius:12px!important;background:#0f2442!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.10),0 8px 16px rgba(2,8,23,.18)!important;font-weight:850!important;font-size:.82rem!important;padding:9px 10px!important;min-height:38px!important;display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;text-align:left!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:hover,
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a:focus{background:#073b91!important;color:#fff!important;outline:2px solid rgba(155,231,255,.7)!important;}
body.sf-v271-auth.logged-in-page:not(.client-portal-page) aside.sidebar .side-links a.active{background:#0757d8!important;color:#fff!important;outline:2px solid rgba(201,251,255,.9)!important;}
body.sf-v271-managed footer .logo img,body.sf-v271-managed header.site-header .logo img{max-height:64px!important;width:auto!important;object-fit:contain!important;}
@media(max-width:900px){#sfV271TopLoginBar .sf-v242-brand-banner{display:none!important;}#sfV271TopLoginBar .sf-v125-actions{min-width:0!important;flex-wrap:wrap!important;}#sfV271TopLoginBar .sf-v125-status-left{flex-wrap:wrap!important;}#sfV271TopLoginBar .sf-v125-login-inner{flex-wrap:wrap!important;justify-content:center!important;}#sfV271TopLoginBar .top-nav-dropdown{left:50%!important;right:auto!important;transform:translateX(-50%)!important;}}

/* v272: final stable top bar height and dropdown cleanup */
html, body{margin-top:0!important;padding-top:0!important;overflow-x:hidden!important;}
body.sf-v272-managed{--sf-spa:#0757d8;--sf-spa-dark:#052e8f;--sf-teal:#12bfc4;--sf-ink:#102033;--sf-muted:#64748b;margin:0!important;padding-top:0!important;overflow-x:hidden!important;}
body.sf-v272-managed > .launch-bar,
body.sf-v272-managed > .top-header-spacer,
body.sf-v272-managed > .sf-empty-topbar,
body.sf-v272-managed > .login-status-bar:not(#sfV272TopLoginBar),
body.sf-v272-managed > .sf-v125-top-login-bar:not(#sfV272TopLoginBar),
body.sf-v272-managed #globalLoginStatusBar,
body.sf-v272-managed #sfV123TopLoginBar,
body.sf-v272-managed #sfV124TopLoginBar,
body.sf-v272-managed #sfV125TopLoginBar,
body.sf-v272-managed #sfV260AuthTopBar,
body.sf-v272-managed #sfV262UnifiedTopBar,
body.sf-v272-managed #sfV263PublicLoginBar,
body.sf-v272-managed #sfV264TopBar,
body.sf-v272-managed #sfV266TopBar,
body.sf-v272-managed #sfV267TopBar,
body.sf-v272-managed #sfV268TopBar,
body.sf-v272-managed #sfV269TopBar,
body.sf-v272-managed #sfV271TopLoginBar{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;}
body.sf-v272-auth > header.site-header{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
body.sf-v272-public > header.site-header{display:block!important;visibility:visible!important;opacity:1!important;}
#sfV272TopLoginBar{position:sticky!important;top:0!important;left:0!important;right:0!important;z-index:2147483600!important;width:100%!important;max-width:100vw!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:0!important;background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;color:#fff!important;box-shadow:0 8px 20px rgba(2,8,23,.18)!important;border:0!important;border-bottom:1px solid rgba(155,231,255,.30)!important;overflow:visible!important;box-sizing:border-box!important;}
#sfV272TopLoginBar:before{content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;opacity:.16!important;background:linear-gradient(115deg,transparent 0 22%,rgba(255,255,255,.10) 23%,transparent 28% 100%)!important;}
#sfV272TopLoginBar .sf-v125-login-inner{position:relative!important;z-index:2!important;height:48px!important;min-height:48px!important;max-height:48px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 18px!important;box-sizing:border-box!important;overflow:visible!important;flex-wrap:nowrap!important;}
#sfV272TopLoginBar .sf-v125-status-left{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;white-space:nowrap!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
#sfV272TopLoginBar .sf-v125-actions{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;white-space:nowrap!important;margin-left:auto!important;min-width:0!important;flex:0 1 auto!important;overflow:visible!important;}
#sfV272TopLoginBar .login-status-dot{width:9px!important;height:9px!important;border-radius:50%!important;background:#36d399!important;box-shadow:0 0 0 4px rgba(54,211,153,.17)!important;display:inline-block!important;flex:0 0 9px!important;}
#sfV272TopLoginBar .sf-v125-avatar{width:30px!important;height:30px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(201,251,255,.32)!important;overflow:hidden!important;font-size:.75rem!important;font-weight:950!important;flex:0 0 30px!important;}
#sfV272TopLoginBar .sf-v125-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV272TopLoginBar .sf-v125-login-copy{font-size:13px!important;line-height:1.15!important;font-weight:850!important;color:#fff!important;white-space:nowrap!important;text-shadow:0 1px 2px rgba(0,0,0,.30)!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#sfV272TopLoginBar .login-status-name{color:#fff!important;font-weight:950!important;}
#sfV272TopLoginBar .login-status-role{color:#dffaff!important;font-weight:950!important;}
#sfV272TopLoginBar .sf-v125-edit-profile-link,
#sfV272TopLoginBar .sf-v125-actions button,
#sfV272TopLoginBar .sf-v125-actions a,
#sfV272TopLoginBar .top-nav-menu-button,
#sfV272TopLoginBar .sf-v223-mail-button,
#sfV272TopLoginBar .sf-v223-support-button,
#sfV272TopLoginBar .sf-v125-logout-button{background:rgba(255,255,255,.12)!important;border:1px solid rgba(201,251,255,.36)!important;color:#fff!important;border-radius:999px!important;padding:7px 12px!important;font-size:13px!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;max-height:32px!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;box-shadow:inset 0 1px rgba(255,255,255,.16),0 6px 14px rgba(2,8,23,.12)!important;}
#sfV272TopLoginBar .sf-v125-edit-profile-link:hover,
#sfV272TopLoginBar .sf-v125-actions button:hover,
#sfV272TopLoginBar .sf-v125-actions a:hover,
#sfV272TopLoginBar .top-nav-menu-button:hover,
#sfV272TopLoginBar .sf-v223-mail-button:hover,
#sfV272TopLoginBar .sf-v223-support-button:hover,
#sfV272TopLoginBar .sf-v125-logout-button:hover{background:#073b91!important;color:#fff!important;border-color:#9be7ff!important;text-decoration:none!important;}
#sfV272TopLoginBar .sf-v242-brand-banner{position:relative!important;overflow:hidden!important;height:32px!important;min-height:32px!important;max-height:32px!important;border:1px solid rgba(155,231,255,.32)!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(18,191,196,.12))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 6px 16px rgba(2,8,23,.16)!important;padding:4px 12px 4px 8px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;color:#fff!important;white-space:nowrap!important;text-decoration:none!important;flex:0 0 auto!important;}
#sfV272TopLoginBar .sf-v242-brand-icon{position:relative!important;width:23px!important;height:23px!important;border-radius:999px!important;background:rgba(255,255,255,.95)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 23px!important;}
#sfV272TopLoginBar .sf-v242-brand-icon svg{width:17px!important;height:17px!important;display:block!important;}
#sfV272TopLoginBar .sf-v242-brand-text{position:relative!important;display:flex!important;flex-direction:column!important;line-height:1.02!important;}
#sfV272TopLoginBar .sf-v242-brand-text strong{font-size:.86rem!important;letter-spacing:.06em!important;font-weight:950!important;color:#fff!important;}
#sfV272TopLoginBar .sf-v242-brand-text small{font-size:.58rem!important;font-weight:800!important;color:#c9fbff!important;letter-spacing:.02em!important;}
#sfV272TopLoginBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV272TopLoginBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;transform:none!important;z-index:2147483640!important;display:none!important;width:260px!important;min-width:260px!important;max-width:min(260px,calc(100vw - 24px))!important;background:#0f2442!important;color:#fff!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:16px!important;box-shadow:0 22px 54px rgba(2,8,23,.42)!important;padding:8px!important;box-sizing:border-box!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100vh - 72px)!important;}
#sfV272TopLoginBar .top-nav-menu.open .top-nav-dropdown,
#sfV272TopLoginBar .top-nav-dropdown.show,
#sfV272TopLoginBar .top-nav-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV272TopLoginBar .top-nav-dropdown .nav-section-label{display:block!important;color:#c9fbff!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:.66rem!important;font-weight:950!important;margin:8px 6px 5px!important;}
#sfV272TopLoginBar .top-nav-dropdown a,
#sfV272TopLoginBar .top-nav-dropdown button{width:100%!important;max-width:100%!important;background:#123967!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:11px!important;margin:4px 0!important;padding:9px 10px!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;font-weight:850!important;font-size:.82rem!important;line-height:1.15!important;box-shadow:none!important;white-space:normal!important;overflow-wrap:anywhere!important;box-sizing:border-box!important;}
#sfV272TopLoginBar .top-nav-dropdown a:hover,
#sfV272TopLoginBar .top-nav-dropdown button:hover,
#sfV272TopLoginBar .top-nav-dropdown a:focus,
#sfV272TopLoginBar .top-nav-dropdown button:focus{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v272-managed footer .logo img,body.sf-v272-managed header.site-header .logo img{max-height:64px!important;width:auto!important;object-fit:contain!important;}
@media(max-width:980px){#sfV272TopLoginBar .sf-v242-brand-banner{display:none!important;}#sfV272TopLoginBar .sf-v125-login-inner{padding:0 10px!important;}#sfV272TopLoginBar .sf-v125-edit-profile-link,#sfV272TopLoginBar .sf-v223-mail-button,#sfV272TopLoginBar .sf-v223-support-button{display:none!important;}#sfV272TopLoginBar .top-nav-dropdown{right:0!important;left:auto!important;transform:none!important;}}
@media(max-width:640px){#sfV272TopLoginBar .login-status-role{display:none!important;}#sfV272TopLoginBar .sf-v125-login-copy{max-width:34vw!important;}#sfV272TopLoginBar .sf-v125-actions{gap:5px!important;}#sfV272TopLoginBar .sf-v125-actions button,#sfV272TopLoginBar .sf-v125-actions a,#sfV272TopLoginBar .top-nav-menu-button{padding:7px 9px!important;font-size:12px!important;}}

/* v273: final public/auth header cleanup - no legacy flash, stable dropdown, sound indicator */
html body:not(.client-portal-page) > #globalLoginStatusBar,
html body:not(.client-portal-page) > #sfV123TopLoginBar,
html body:not(.client-portal-page) > #sfV124TopLoginBar,
html body:not(.client-portal-page) > #sfV125TopLoginBar,
html body:not(.client-portal-page) > #sfV260AuthTopBar,
html body:not(.client-portal-page) > #sfV262UnifiedTopBar,
html body:not(.client-portal-page) > #sfV263PublicLoginBar,
html body:not(.client-portal-page) > #sfV264TopBar,
html body:not(.client-portal-page) > #sfV266TopBar,
html body:not(.client-portal-page) > #sfV267TopBar,
html body:not(.client-portal-page) > #sfV268TopBar,
html body:not(.client-portal-page) > #sfV269TopBar,
html body:not(.client-portal-page) > #sfV271TopLoginBar,
html body:not(.client-portal-page) > #sfV272TopLoginBar,
html body:not(.client-portal-page) > .login-status-bar,
html body:not(.client-portal-page) > .launch-bar,
html body:not(.client-portal-page) > .top-header-spacer,
html body:not(.client-portal-page) > .sf-empty-topbar{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
html body > #sfV273TopLoginBar{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v273-managed{margin-top:0!important;padding-top:0!important;}
body.sf-v273-managed::before{display:none!important;content:none!important;}
#sfV273TopLoginBar{position:sticky!important;top:0!important;left:0!important;right:0!important;z-index:2147483600!important;width:100%!important;max-width:100vw!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:0!important;background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;color:#fff!important;box-shadow:0 8px 20px rgba(2,8,23,.18)!important;border:0!important;border-bottom:1px solid rgba(155,231,255,.30)!important;overflow:visible!important;box-sizing:border-box!important;}
#sfV273TopLoginBar .sf-v125-login-inner{position:relative!important;z-index:2!important;height:48px!important;min-height:48px!important;max-height:48px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 18px!important;box-sizing:border-box!important;overflow:visible!important;flex-wrap:nowrap!important;}
#sfV273TopLoginBar .sf-v125-status-left{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
#sfV273TopLoginBar .sf-v125-actions{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;white-space:nowrap!important;margin-left:auto!important;min-width:0!important;flex:0 1 auto!important;overflow:visible!important;}
#sfV273TopLoginBar .login-status-dot{width:9px!important;height:9px!important;border-radius:50%!important;background:#36d399!important;box-shadow:0 0 0 4px rgba(54,211,153,.17)!important;display:inline-block!important;flex:0 0 9px!important;}
#sfV273TopLoginBar .sf-v125-avatar{width:30px!important;height:30px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(201,251,255,.32)!important;overflow:hidden!important;font-size:.75rem!important;font-weight:950!important;flex:0 0 30px!important;}
#sfV273TopLoginBar .sf-v125-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV273TopLoginBar .sf-v125-login-copy{font-size:13px!important;line-height:1.15!important;font-weight:850!important;color:#fff!important;white-space:nowrap!important;text-shadow:0 1px 2px rgba(0,0,0,.30)!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#sfV273TopLoginBar .login-status-name{color:#fff!important;font-weight:950!important;}
#sfV273TopLoginBar .login-status-role{color:#dffaff!important;font-weight:950!important;}
#sfV273TopLoginBar .sf-v125-edit-profile-link,
#sfV273TopLoginBar .sf-v125-actions button,
#sfV273TopLoginBar .sf-v125-actions a,
#sfV273TopLoginBar .top-nav-menu-button,
#sfV273TopLoginBar .sf-v223-mail-button,
#sfV273TopLoginBar .sf-v223-support-button,
#sfV273TopLoginBar .sf-v125-logout-button{background:rgba(255,255,255,.12)!important;border:1px solid rgba(201,251,255,.36)!important;color:#fff!important;border-radius:999px!important;padding:7px 12px!important;font-size:13px!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;max-height:32px!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;box-shadow:inset 0 1px rgba(255,255,255,.16),0 6px 14px rgba(2,8,23,.12)!important;}
#sfV273TopLoginBar .sf-v273-sound-toggle::before{content:"";width:8px;height:8px;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 3px rgba(148,163,184,.18);display:inline-block;}
#sfV273TopLoginBar .sf-v273-sound-toggle.sf-v273-sound-playing::before{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.24),0 0 10px rgba(34,197,94,.75);}
#sfV273TopLoginBar .sf-v273-sound-toggle.sf-v273-sound-paused::before{background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.18);}
#sfV273TopLoginBar .sf-v125-edit-profile-link:hover,
#sfV273TopLoginBar .sf-v125-actions button:hover,
#sfV273TopLoginBar .sf-v125-actions a:hover,
#sfV273TopLoginBar .top-nav-menu-button:hover,
#sfV273TopLoginBar .sf-v223-mail-button:hover,
#sfV273TopLoginBar .sf-v223-support-button:hover,
#sfV273TopLoginBar .sf-v125-logout-button:hover{background:#073b91!important;color:#fff!important;border-color:#9be7ff!important;text-decoration:none!important;}
#sfV273TopLoginBar .sf-v242-brand-banner{position:relative!important;overflow:hidden!important;height:32px!important;min-height:32px!important;max-height:32px!important;border:1px solid rgba(155,231,255,.32)!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(18,191,196,.12))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 6px 16px rgba(2,8,23,.16)!important;padding:4px 12px 4px 8px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;color:#fff!important;white-space:nowrap!important;text-decoration:none!important;flex:0 0 auto!important;}
#sfV273TopLoginBar .sf-v242-brand-icon{position:relative!important;width:23px!important;height:23px!important;border-radius:999px!important;background:rgba(255,255,255,.95)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 23px!important;}
#sfV273TopLoginBar .sf-v242-brand-icon svg{width:17px!important;height:17px!important;display:block!important;}
#sfV273TopLoginBar .sf-v242-brand-text{position:relative!important;display:flex!important;flex-direction:column!important;line-height:1.02!important;}
#sfV273TopLoginBar .sf-v242-brand-text strong{font-size:.86rem!important;letter-spacing:.06em!important;font-weight:950!important;color:#fff!important;}
#sfV273TopLoginBar .sf-v242-brand-text small{font-size:.58rem!important;font-weight:800!important;color:#c9fbff!important;letter-spacing:.02em!important;}
#sfV273TopLoginBar .top-nav-menu{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV273TopLoginBar .top-nav-dropdown{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;transform:none!important;z-index:2147483640!important;display:none!important;width:260px!important;min-width:260px!important;max-width:min(260px,calc(100vw - 24px))!important;background:#0f2442!important;color:#fff!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:16px!important;box-shadow:0 22px 54px rgba(2,8,23,.42)!important;padding:8px!important;box-sizing:border-box!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100vh - 72px)!important;}
#sfV273TopLoginBar .top-nav-menu.open .top-nav-dropdown,
#sfV273TopLoginBar .top-nav-dropdown.show,
#sfV273TopLoginBar .top-nav-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV273TopLoginBar .top-nav-dropdown .nav-section-label{display:block!important;color:#c9fbff!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:.66rem!important;font-weight:950!important;margin:8px 6px 5px!important;}
#sfV273TopLoginBar .top-nav-dropdown a,
#sfV273TopLoginBar .top-nav-dropdown button{width:100%!important;max-width:100%!important;background:#123967!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:11px!important;margin:4px 0!important;padding:9px 10px!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;font-weight:850!important;font-size:.82rem!important;line-height:1.15!important;box-shadow:none!important;white-space:normal!important;overflow-wrap:anywhere!important;box-sizing:border-box!important;}
#sfV273TopLoginBar .top-nav-dropdown a:hover,
#sfV273TopLoginBar .top-nav-dropdown button:hover,
#sfV273TopLoginBar .top-nav-dropdown a:focus,
#sfV273TopLoginBar .top-nav-dropdown button:focus{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v273-auth > header.site-header{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
body.sf-v273-public > header.site-header{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v273-managed footer .logo img,body.sf-v273-managed header.site-header .logo img{max-height:64px!important;width:auto!important;object-fit:contain!important;}
@media(max-width:980px){#sfV273TopLoginBar .sf-v242-brand-banner{display:none!important;}#sfV273TopLoginBar .sf-v125-login-inner{padding:0 10px!important;}#sfV273TopLoginBar .sf-v125-edit-profile-link,#sfV273TopLoginBar .sf-v223-mail-button,#sfV273TopLoginBar .sf-v223-support-button{display:none!important;}#sfV273TopLoginBar .top-nav-dropdown{right:0!important;left:auto!important;transform:none!important;}}
@media(max-width:640px){#sfV273TopLoginBar .login-status-role{display:none!important;}#sfV273TopLoginBar .sf-v125-login-copy{max-width:34vw!important;}#sfV273TopLoginBar .sf-v125-actions{gap:5px!important;}#sfV273TopLoginBar .sf-v125-actions button,#sfV273TopLoginBar .sf-v125-actions a,#sfV273TopLoginBar .top-nav-menu-button{padding:7px 9px!important;font-size:12px!important;}}

/* v274: isolated top bar and dropdown. Does not use legacy .top-nav-dropdown classes, preventing old scripts from rewriting the menu. */
html body:not(.client-portal-page) > #globalLoginStatusBar,
html body:not(.client-portal-page) > #sfV123TopLoginBar,
html body:not(.client-portal-page) > #sfV124TopLoginBar,
html body:not(.client-portal-page) > #sfV125TopLoginBar,
html body:not(.client-portal-page) > #sfV260AuthTopBar,
html body:not(.client-portal-page) > #sfV262UnifiedTopBar,
html body:not(.client-portal-page) > #sfV263PublicLoginBar,
html body:not(.client-portal-page) > #sfV264TopBar,
html body:not(.client-portal-page) > #sfV266TopBar,
html body:not(.client-portal-page) > #sfV267TopBar,
html body:not(.client-portal-page) > #sfV268TopBar,
html body:not(.client-portal-page) > #sfV269TopBar,
html body:not(.client-portal-page) > #sfV271TopLoginBar,
html body:not(.client-portal-page) > #sfV272TopLoginBar,
html body:not(.client-portal-page) > #sfV273TopLoginBar,
html body:not(.client-portal-page) > .login-status-bar,
html body:not(.client-portal-page) > .launch-bar,
html body:not(.client-portal-page) > .top-header-spacer,
html body:not(.client-portal-page) > .sf-empty-topbar{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;max-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;}
html body > #sfV274TopLoginBar{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v274-managed{margin-top:0!important;padding-top:0!important;overflow-x:hidden!important;}
body.sf-v274-managed::before{display:none!important;content:none!important;}
#sfV274TopLoginBar{position:sticky!important;top:0!important;left:0!important;right:0!important;z-index:2147483600!important;width:100%!important;max-width:100vw!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:0!important;background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;color:#fff!important;box-shadow:0 8px 20px rgba(2,8,23,.18)!important;border:0!important;border-bottom:1px solid rgba(155,231,255,.30)!important;overflow:visible!important;box-sizing:border-box!important;}
#sfV274TopLoginBar .sf-v274-login-inner{position:relative!important;z-index:2!important;height:48px!important;min-height:48px!important;max-height:48px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 18px!important;box-sizing:border-box!important;overflow:visible!important;flex-wrap:nowrap!important;}
#sfV274TopLoginBar .sf-v274-status-left{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
#sfV274TopLoginBar .sf-v274-actions{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;white-space:nowrap!important;margin-left:auto!important;min-width:0!important;flex:0 1 auto!important;overflow:visible!important;}
#sfV274TopLoginBar .sf-v274-status-dot{width:9px!important;height:9px!important;border-radius:50%!important;background:#36d399!important;box-shadow:0 0 0 4px rgba(54,211,153,.17)!important;display:inline-block!important;flex:0 0 9px!important;}
#sfV274TopLoginBar .sf-v274-avatar{width:30px!important;height:30px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(201,251,255,.32)!important;overflow:hidden!important;font-size:.75rem!important;font-weight:950!important;flex:0 0 30px!important;}
#sfV274TopLoginBar .sf-v274-avatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
#sfV274TopLoginBar .sf-v274-login-copy{font-size:13px!important;line-height:1.15!important;font-weight:850!important;color:#fff!important;white-space:nowrap!important;text-shadow:0 1px 2px rgba(0,0,0,.30)!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#sfV274TopLoginBar .sf-v274-name{color:#fff!important;font-weight:950!important;}
#sfV274TopLoginBar .sf-v274-role{color:#dffaff!important;font-weight:950!important;}
#sfV274TopLoginBar .sf-v274-action{background:rgba(255,255,255,.12)!important;border:1px solid rgba(201,251,255,.36)!important;color:#fff!important;border-radius:999px!important;padding:7px 12px!important;font-size:13px!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;cursor:pointer!important;min-height:32px!important;max-height:32px!important;font-family:inherit!important;white-space:nowrap!important;appearance:none!important;box-shadow:inset 0 1px rgba(255,255,255,.16),0 6px 14px rgba(2,8,23,.12)!important;box-sizing:border-box!important;}
#sfV274TopLoginBar .sf-v274-action:hover{background:#073b91!important;color:#fff!important;border-color:#9be7ff!important;text-decoration:none!important;}
#sfV274TopLoginBar .sf-v274-sound-toggle::before{content:"";width:8px;height:8px;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 3px rgba(148,163,184,.18);display:inline-block;}
#sfV274TopLoginBar .sf-v274-sound-toggle.sf-v274-sound-playing::before{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.24),0 0 10px rgba(34,197,94,.75);}
#sfV274TopLoginBar .sf-v274-sound-toggle.sf-v274-sound-paused::before{background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.18);}
#sfV274TopLoginBar .sf-v274-brand-logo{height:36px!important;min-height:36px!important;max-height:36px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;color:#fff!important;white-space:nowrap!important;text-decoration:none!important;flex:0 0 auto!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin-left:2px!important;border-radius:0!important;}
#sfV274TopLoginBar .sf-v274-brand-logo:hover{background:transparent!important;color:#fff!important;text-decoration:none!important;filter:brightness(1.08);}
#sfV274TopLoginBar .sf-v274-brand-mark{width:30px!important;height:30px!important;border-radius:999px!important;background:rgba(255,255,255,.96)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 30px!important;box-shadow:0 4px 12px rgba(2,8,23,.16)!important;}
#sfV274TopLoginBar .sf-v274-brand-mark svg{width:22px!important;height:22px!important;display:block!important;}
#sfV274TopLoginBar .sf-v274-brand-text{display:flex!important;flex-direction:column!important;line-height:1.02!important;}
#sfV274TopLoginBar .sf-v274-brand-text strong{font-size:.9rem!important;letter-spacing:.06em!important;font-weight:950!important;color:#fff!important;}
#sfV274TopLoginBar .sf-v274-brand-text small{font-size:.6rem!important;font-weight:800!important;color:#c9fbff!important;letter-spacing:.02em!important;}
#sfV274TopLoginBar .sf-v274-menu-wrap{position:relative!important;display:inline-flex!important;align-items:center!important;overflow:visible!important;}
#sfV274TopLoginBar .sf-v274-dropdown{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;transform:none!important;z-index:2147483640!important;display:none!important;width:260px!important;min-width:260px!important;max-width:min(260px,calc(100vw - 24px))!important;background:#0f2442!important;color:#fff!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:16px!important;box-shadow:0 22px 54px rgba(2,8,23,.42)!important;padding:8px!important;box-sizing:border-box!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100vh - 72px)!important;}
#sfV274TopLoginBar .sf-v274-menu-wrap.open .sf-v274-dropdown,
#sfV274TopLoginBar .sf-v274-dropdown.show{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#sfV274TopLoginBar .sf-v274-dropdown .sf-v274-menu-label{display:block!important;color:#c9fbff!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:.66rem!important;font-weight:950!important;margin:8px 6px 5px!important;}
#sfV274TopLoginBar .sf-v274-dropdown a,
#sfV274TopLoginBar .sf-v274-dropdown button{width:100%!important;max-width:100%!important;background:#123967!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:11px!important;margin:4px 0!important;padding:9px 10px!important;text-align:left!important;text-decoration:none!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;font-weight:850!important;font-size:.82rem!important;line-height:1.15!important;box-shadow:none!important;white-space:normal!important;overflow-wrap:anywhere!important;box-sizing:border-box!important;}
#sfV274TopLoginBar .sf-v274-dropdown a:hover,
#sfV274TopLoginBar .sf-v274-dropdown button:hover,
#sfV274TopLoginBar .sf-v274-dropdown a:focus,
#sfV274TopLoginBar .sf-v274-dropdown button:focus{background:#052e8f!important;color:#fff!important;outline:2px solid rgba(18,191,196,.65)!important;}
body.sf-v274-auth > header.site-header{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
body.sf-v274-public > header.site-header{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v274-managed footer .logo img,body.sf-v274-managed header.site-header .logo img{max-height:64px!important;width:auto!important;object-fit:contain!important;}
@media(max-width:980px){#sfV274TopLoginBar .sf-v274-brand-text small{display:none!important;}#sfV274TopLoginBar .sf-v274-login-inner{padding:0 10px!important;}#sfV274TopLoginBar .sf-v274-actions{gap:5px!important;}#sfV274TopLoginBar .sf-v274-dropdown{right:0!important;left:auto!important;transform:none!important;}}
@media(max-width:640px){#sfV274TopLoginBar .sf-v274-role{display:none!important;}#sfV274TopLoginBar .sf-v274-login-copy{max-width:34vw!important;}#sfV274TopLoginBar .sf-v274-action{padding:7px 9px!important;font-size:12px!important;}#sfV274TopLoginBar .sf-v274-brand-logo{display:none!important;}}


/* v275: make logged-in public client menu match client portal links and icons */
#sfV274TopLoginBar .sf-v274-dropdown .sf-v274-client-menu-item{display:flex!important;align-items:center!important;gap:9px!important;}
#sfV274TopLoginBar .sf-v274-dropdown .sf-v274-menu-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:22px!important;min-width:22px!important;height:22px!important;font-size:1rem!important;line-height:1!important;}
#sfV274TopLoginBar .sf-v274-dropdown button.sf-v274-client-menu-item{font-family:inherit!important;cursor:pointer!important;}

/* v277: logged-out public pages keep a portal-style top login bar, while the main public nav below uses its own light website styling. */
body.sf-v277-public{
  margin-top:0!important;
  padding-top:0!important;
  overflow-x:hidden!important;
}
body.sf-v277-public > .launch-bar,
body.sf-v277-public > .top-header-spacer,
body.sf-v277-public > .sf-empty-topbar,
body.sf-v277-public > #globalLoginStatusBar,
body.sf-v277-public > #sfV123TopLoginBar,
body.sf-v277-public > #sfV124TopLoginBar,
body.sf-v277-public > #sfV125TopLoginBar,
body.sf-v277-public > #sfV260AuthTopBar,
body.sf-v277-public > #sfV262UnifiedTopBar,
body.sf-v277-public > #sfV263PublicLoginBar,
body.sf-v277-public > #sfV264TopBar,
body.sf-v277-public > #sfV266TopBar,
body.sf-v277-public > #sfV267TopBar,
body.sf-v277-public > #sfV268TopBar,
body.sf-v277-public > #sfV269TopBar,
body.sf-v277-public > #sfV271TopLoginBar,
body.sf-v277-public > #sfV272TopLoginBar,
body.sf-v277-public > #sfV273TopLoginBar,
body.sf-v277-public > .login-status-bar{
  display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;max-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;
}
body.sf-v277-public > #sfV274TopLoginBar{display:block!important;visibility:visible!important;opacity:1!important;}
body.sf-v277-public > header.site-header,
body.sf-v277-public > .site-header{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:sticky!important;
  top:48px!important;
  z-index:90!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,252,255,.96))!important;
  color:var(--deep)!important;
  border-top:0!important;
  border-bottom:1px solid rgba(18,191,196,.24)!important;
  box-shadow:0 10px 26px rgba(7,94,146,.08)!important;
  backdrop-filter:blur(18px)!important;
}
body.sf-v277-public > header.site-header .container.nav,
body.sf-v277-public > .site-header .container.nav,
body.sf-v277-public > header.site-header .nav,
body.sf-v277-public > .site-header .nav{
  min-height:68px!important;
  height:68px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:nowrap!important;
}
body.sf-v277-public > header.site-header .logo,
body.sf-v277-public > .site-header .logo{display:flex!important;align-items:center!important;min-width:0!important;}
body.sf-v277-public > header.site-header .logo img,
body.sf-v277-public > header.site-header .logo-image-wide,
body.sf-v277-public > .site-header .logo img,
body.sf-v277-public > .site-header .logo-image-wide{
  content:url('../images/spaflow-client-sidebar-logo-v269.png?v=277')!important;
  height:54px!important;
  max-height:54px!important;
  width:auto!important;
  max-width:260px!important;
  object-fit:contain!important;
  display:block!important;
  filter:none!important;
}
body.sf-v277-public > header.site-header .nav-links,
body.sf-v277-public > .site-header .nav-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  color:var(--deep)!important;
  font-weight:950!important;
}
body.sf-v277-public > header.site-header .nav-links a,
body.sf-v277-public > .site-header .nav-links a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  color:#075e92!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(18,191,196,.22)!important;
  box-shadow:0 5px 14px rgba(7,94,146,.06)!important;
  font-size:.84rem!important;
  line-height:1!important;
  text-decoration:none!important;
}
body.sf-v277-public > header.site-header .nav-links a:hover,
body.sf-v277-public > .site-header .nav-links a:hover{
  color:#fff!important;
  background:linear-gradient(135deg,var(--blue),var(--teal))!important;
  border-color:transparent!important;
}
body.sf-v277-public > header.site-header .nav-links .btn,
body.sf-v277-public > .site-header .nav-links .btn,
body.sf-v277-public > header.site-header .btn-primary,
body.sf-v277-public > .site-header .btn-primary{
  background:linear-gradient(135deg,var(--blue),var(--teal))!important;
  color:#fff!important;
  border-color:transparent!important;
  min-height:36px!important;
  padding:8px 12px!important;
}
#sfV274TopLoginBar .sf-v277-brand-logo{
  width:188px!important;
  max-width:188px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
#sfV274TopLoginBar .sf-v277-brand-logo img{
  display:block!important;
  width:auto!important;
  max-width:188px!important;
  height:38px!important;
  max-height:38px!important;
  object-fit:contain!important;
  filter:none!important;
}
#sfV274TopLoginBar .sf-v274-dropdown{
  background:#ffffff!important;
  color:#0f2442!important;
  border:1px solid rgba(7,94,146,.20)!important;
  box-shadow:0 22px 54px rgba(7,94,146,.22)!important;
}
#sfV274TopLoginBar .sf-v274-dropdown .sf-v274-menu-label{
  color:#075e92!important;
  background:#ecfeff!important;
  border:1px solid rgba(18,191,196,.22)!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  margin:8px 2px 6px!important;
}
#sfV274TopLoginBar .sf-v274-dropdown a,
#sfV274TopLoginBar .sf-v274-dropdown button{
  background:#f4fcff!important;
  color:#0f2442!important;
  border:1px solid #d6e8ef!important;
  font-weight:900!important;
}
#sfV274TopLoginBar .sf-v274-dropdown a:hover,
#sfV274TopLoginBar .sf-v274-dropdown button:hover,
#sfV274TopLoginBar .sf-v274-dropdown a:focus,
#sfV274TopLoginBar .sf-v274-dropdown button:focus{
  background:linear-gradient(135deg,var(--blue),var(--teal))!important;
  color:#fff!important;
  border-color:transparent!important;
}
@media(max-width:980px){
  body.sf-v277-public > header.site-header .container.nav,
  body.sf-v277-public > .site-header .container.nav,
  body.sf-v277-public > header.site-header .nav,
  body.sf-v277-public > .site-header .nav{height:auto!important;min-height:64px!important;padding:8px 0!important;flex-wrap:wrap!important;}
  body.sf-v277-public > header.site-header .nav-links,
  body.sf-v277-public > .site-header .nav-links{justify-content:center!important;width:100%!important;}
}

/* v278: use the exact client-portal SPAFlow wellness scheduling/client care brand banner in public login bars and public footers. */
#sfV274TopLoginBar .sf-v242-brand-banner,
footer .sf-v242-brand-banner.sf-v278-footer-brand,
.footer .sf-v242-brand-banner.sf-v278-footer-brand,
.site-footer .sf-v242-brand-banner.sf-v278-footer-brand{
  position:relative!important;
  overflow:hidden!important;
  min-height:32px!important;
  border:1px solid rgba(155,231,255,.34)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(18,191,196,.12))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 8px 22px rgba(2,8,23,.16)!important;
  padding:5px 13px 5px 9px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  color:#fff!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:max-content!important;
  height:auto!important;
}
#sfV274TopLoginBar .sf-v242-brand-banner:before,
footer .sf-v242-brand-banner.sf-v278-footer-brand:before,
.footer .sf-v242-brand-banner.sf-v278-footer-brand:before,
.site-footer .sf-v242-brand-banner.sf-v278-footer-brand:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  opacity:.26!important;
  background:radial-gradient(circle at 12% 48%,rgba(155,231,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 86% 35%,rgba(255,255,255,.65) 0 1.5px,transparent 3px),linear-gradient(120deg,transparent 0 28%,rgba(255,255,255,.18) 30%,transparent 36% 100%)!important;
}
#sfV274TopLoginBar .sf-v242-brand-icon,
footer .sf-v242-brand-banner.sf-v278-footer-brand .sf-v242-brand-icon{
  position:relative!important;
  width:24px!important;
  height:24px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 0 12px rgba(255,255,255,.38)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 24px!important;
}
#sfV274TopLoginBar .sf-v242-brand-icon svg,
footer .sf-v242-brand-banner.sf-v278-footer-brand .sf-v242-brand-icon svg{width:18px!important;height:18px!important;display:block!important;}
#sfV274TopLoginBar .sf-v242-brand-text,
footer .sf-v242-brand-banner.sf-v278-footer-brand .sf-v242-brand-text{position:relative!important;display:flex!important;flex-direction:column!important;line-height:1.02!important;}
#sfV274TopLoginBar .sf-v242-brand-text strong,
footer .sf-v242-brand-banner.sf-v278-footer-brand .sf-v242-brand-text strong{font-size:.9rem!important;letter-spacing:.06em!important;font-weight:950!important;color:#fff!important;}
#sfV274TopLoginBar .sf-v242-brand-text small,
footer .sf-v242-brand-banner.sf-v278-footer-brand .sf-v242-brand-text small{font-size:.62rem!important;font-weight:800!important;color:#c9fbff!important;letter-spacing:.02em!important;}
footer .sf-v242-brand-banner.sf-v278-footer-brand{background:linear-gradient(90deg,#063e66 0%,#058b9d 50%,#08b8ae 100%)!important;margin:0 0 12px!important;}
footer .sf-v278-footer-brand img, footer img.footer-logo{display:none!important;}
#sfV274TopLoginBar .sf-v277-brand-logo,
#sfV274TopLoginBar .sf-v278-brand-logo{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
@media(max-width:640px){#sfV274TopLoginBar .sf-v242-brand-banner{display:none!important;}}


/* v280: When a client or staff member is logged in on a public/unauthenticated page,
   keep the normal public navigation bar visible below the logged-in portal-style top bar. */
body.sf-v280-publicnav-auth{
  margin-top:0!important;
  padding-top:0!important;
  overflow-x:hidden!important;
}
body.sf-v280-publicnav-auth > header.site-header,
body.sf-v280-publicnav-auth > .site-header{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  min-height:68px!important;
  max-height:none!important;
  overflow:visible!important;
  position:sticky!important;
  top:48px!important;
  z-index:90!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,252,255,.96))!important;
  color:var(--deep)!important;
  border-top:0!important;
  border-bottom:1px solid rgba(18,191,196,.24)!important;
  box-shadow:0 10px 26px rgba(7,94,146,.08)!important;
  backdrop-filter:blur(18px)!important;
}
body.sf-v280-publicnav-auth > header.site-header .container.nav,
body.sf-v280-publicnav-auth > .site-header .container.nav,
body.sf-v280-publicnav-auth > header.site-header .nav,
body.sf-v280-publicnav-auth > .site-header .nav{
  min-height:68px!important;
  height:68px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:nowrap!important;
}
body.sf-v280-publicnav-auth > header.site-header .logo,
body.sf-v280-publicnav-auth > .site-header .logo{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
}
body.sf-v280-publicnav-auth > header.site-header .logo img,
body.sf-v280-publicnav-auth > header.site-header .logo-image-wide,
body.sf-v280-publicnav-auth > .site-header .logo img,
body.sf-v280-publicnav-auth > .site-header .logo-image-wide{
  content:url('../images/spaflow-client-sidebar-logo-v269.png?v=280')!important;
  height:54px!important;
  max-height:54px!important;
  width:auto!important;
  max-width:260px!important;
  object-fit:contain!important;
  display:block!important;
  filter:none!important;
}
body.sf-v280-publicnav-auth > header.site-header .nav-links,
body.sf-v280-publicnav-auth > .site-header .nav-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  color:var(--deep)!important;
  font-weight:950!important;
}
body.sf-v280-publicnav-auth > header.site-header .nav-links a,
body.sf-v280-publicnav-auth > .site-header .nav-links a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  color:#075e92!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(18,191,196,.22)!important;
  box-shadow:0 5px 14px rgba(7,94,146,.06)!important;
  font-size:.84rem!important;
  line-height:1!important;
  text-decoration:none!important;
}
body.sf-v280-publicnav-auth > header.site-header .nav-links a:hover,
body.sf-v280-publicnav-auth > .site-header .nav-links a:hover{
  color:#fff!important;
  background:linear-gradient(135deg,var(--blue),var(--teal))!important;
  border-color:transparent!important;
}
body.sf-v280-publicnav-auth > header.site-header .nav-links .btn,
body.sf-v280-publicnav-auth > .site-header .nav-links .btn,
body.sf-v280-publicnav-auth > header.site-header .btn-primary,
body.sf-v280-publicnav-auth > .site-header .btn-primary{
  background:linear-gradient(135deg,var(--blue),var(--teal))!important;
  color:#fff!important;
  border-color:transparent!important;
  min-height:36px!important;
  padding:8px 12px!important;
}
@media(max-width:980px){
  body.sf-v280-publicnav-auth > header.site-header .container.nav,
  body.sf-v280-publicnav-auth > .site-header .container.nav,
  body.sf-v280-publicnav-auth > header.site-header .nav,
  body.sf-v280-publicnav-auth > .site-header .nav{height:auto!important;min-height:64px!important;padding:8px 0!important;flex-wrap:wrap!important;}
  body.sf-v280-publicnav-auth > header.site-header .nav-links,
  body.sf-v280-publicnav-auth > .site-header .nav-links{justify-content:center!important;width:100%!important;}
}
