:root{
  --synovsa-orange:#f58220;
  --synovsa-orange-dark:#d96b10;
  --synovsa-black:#202124;
  --synovsa-gray:#5f6368;
  --synovsa-bg:#f5f6f7;
  --synovsa-border:#e4e7eb;
  --synovsa-card:#ffffff;
  --synovsa-red:#b42318;
  --synovsa-green:#137333;
}
html,body{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  color:var(--synovsa-black);
  background:var(--synovsa-bg);
}
button,input,select,textarea{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
a{transition:.15s ease}
h1{font-weight:850}
.synovsa-global-brand{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}
.synovsa-global-logo{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.synovsa-global-logo img{
  width:48px!important;
  height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  object-fit:contain!important;
  display:block!important;
}
.synovsa-global-brand-text{min-width:0}
.synovsa-global-name{
  font-size:16px!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  color:var(--synovsa-black)!important;
}
.synovsa-global-sub{
  margin-top:4px!important;
  font-size:8px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--synovsa-gray)!important;
}
.btn,.button,button[type=submit],input[type=submit]{
  border-radius:7px;
}
.panel,.card,.stat-card,.login-card{
  border-color:var(--synovsa-border);
}
input:focus,select:focus,textarea:focus{
  outline:none!important;
  border-color:var(--synovsa-orange)!important;
  box-shadow:0 0 0 2px rgba(245,130,32,.10)!important;
}
/* Replace legacy square S appearance wherever old wrappers remain. */
.logo-symbol,.brand-symbol,.brand-mark{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.logo-symbol img,.brand-symbol img,.brand-mark img{
  width:48px!important;
  height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  object-fit:contain!important;
  display:block!important;
}


/* FINAL MASTER HEADER BRANDING
   Approved Asset Library logo is a complete logo; never add duplicate SYNVOSA text beside it. */
.synovsa-global-brand{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  min-width:0!important;
}
.synovsa-global-logo{
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  min-height:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.synovsa-global-logo img{
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  min-height:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  object-fit:contain!important;
  display:block!important;
}
.synovsa-global-brand-text{display:none!important}
.synovsa-global-brand-fallback{
  min-width:145px!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}
.synovsa-global-brand-fallback .synovsa-global-name{display:block!important}
.synovsa-global-brand-fallback .synovsa-global-sub{display:block!important}

/* Legacy wrappers use exactly the same approved logo size. */
.logo-symbol,.brand-symbol,.brand-mark{
  width:64px!important;height:64px!important;
  min-width:64px!important;min-height:64px!important;
  max-width:64px!important;max-height:64px!important;
  padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;overflow:visible!important;
}
.logo-symbol img,.brand-symbol img,.brand-mark img{
  width:64px!important;height:64px!important;
  min-width:64px!important;min-height:64px!important;
  max-width:64px!important;max-height:64px!important;
  object-fit:contain!important;display:block!important;
}
/* Hide adjacent legacy company-name blocks when the complete logo asset is present. */
.logo-symbol + div .brand-name,
.logo-symbol + div .brand-small,
.brand-mark + div .brand-name,
.brand-mark + div .brand-small,
.brand-symbol + div .brand-name,
.brand-symbol + div .brand-subtitle{
  display:none!important;
}
