.DashboardCard_card__UKxgu {
    padding: 0;
  }
  
  .DashboardCard_cardContent__8THxL {
    padding: 30px;
  }
  
  .DashboardCard_headTitle__UznNV {
    font-family: 'DM Serif Display', serif;
  }
  
  .DashboardCard_titleBox__QZdXz {
    text-align: center;
    width: 100%;
  }
  
  .DashboardCard_titleText__mDOcj {
    color: #6E3B80;
    font-size: 2.3rem;
    font-family: 'DM Serif Display', serif;
    text-shadow: 2px 2px 4px #989595;
    font-weight: bold;
  }
  
.register_image__nNc7R{
    display: flex;
    justify-content: center;
}

.register_logo__hwMrb {
    display: flex; /* Ensures the div containing the logo behaves like a flex container */
    justify-content: center; /* Centers the logo horizontally */
    align-items: center; /* Centers the logo vertically */
    text-align: center; /* Ensures content inside stays centered */
    width: 95%; /* Ensures it stretches across the parent container */
    margin-bottom: 1.6rem;
    /* background-color: #e6eaed; */
  }

  .register_fullHeightCenter__kZgDu {
    height: 100vh;
  }

  .register_title__H0KRk {
    margin-bottom: 16px; /* mb-2 (theme spacing * 2) */
  }  

  /* authregister.module.css */

/* Input Fields */
.register_inputField__NaDQm .MuiOutlinedInput-root {
  border-radius: 25px;
  background-color: #e6eaed;
}

.register_inputField__NaDQm .MuiOutlinedInput-notchedOutline {
  border-radius: 25px;
  border-color: #ccc;
}

.register_inputField__NaDQm .MuiInputLabel-root {
  color: #6b6b6b;
}

.register_inputField__NaDQm .Mui-focused .MuiInputLabel-root {
  color: #6b6b6b;
}

/* Disabled Inputs */
.register_inputField__NaDQm .Mui-disabled {
  opacity: 0.7;
}

/* Button container */
.register_buttonContainer__vSVAt {
  margin-top: 1.5rem !important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px !important; /* spacing between buttons */
  flex-wrap: wrap;
}

/* Back to Login button */
.register_backButton__CfDi6 {
  background-color: #e6eaed !important;
  color: #6b6b6b !important;
  font-weight: bold;
  border-radius: 20px !important;
  text-transform: none;
  padding: 0.3rem 1rem !important;
  min-width: 120px;
}

.register_backButton__CfDi6:hover {
  background-color: #d9dfe3;
}

/* Sign Up button */
.register_actionButton__H0wJK {
  background-color: #f9c7c7 !important;
  color: #d15151 !important;
  font-weight: bold;
  border-radius: 20px !important;
  text-transform: none;
  padding: 0.3rem 1rem !important;
  min-width: 120px !important;
}

.register_actionButton__H0wJK:hover {
  background-color: #f6aaaa !important;
}

  
  @media (min-width: 600px) {
    .register_fullHeightCenter__kZgDu {
      padding: 32px !important;
    }
  }
  @media (min-width: 900px) {
    .register_fullHeightCenter__kZgDu {
      padding: 48px;
    }
  }
  
  .register_logo__hwMrb {
    text-align: center;
    margin-bottom: 24px;
  }
  
  .register_stackWrapper___dG_t {
    width: 100%;
    max-width: 500px;
  }
  
  .register_cardBox__56x6k {
    max-width: 100%;
    z-index: 1;
    padding: 24px;
  }
  
  @media (min-width: 600px) {
    .register_cardBox__56x6k {
      padding: 32px;
    }
  }
  
  .register_loginLink__xjzAN {
    text-decoration: none;
    color: var(--mui-palette-primary-main);
    font-weight: 600;
  }
  
.SystemAdminPage_paper___V8mP {
    padding: 32px;
    text-align: center;
    background-color: #f9f5ff;
  }
  
  .SystemAdminPage_header__32TMU {
    color: #4a235a;
    margin-bottom: 16px;
  }
  
  .SystemAdminPage_description__mU7eR {
    margin-bottom: 24px;
  }
  
  .SystemAdminPage_list__5mdCr {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: left;
  }
  
  .SystemAdminPage_listItem__f6XhF {
    width: 100%;
    margin-bottom: 8px;
  }
  
  @media (min-width: 600px) {
    .SystemAdminPage_listItem__f6XhF {
      width: 48%;
    }
  }
  
  @media (min-width: 900px) {
    .SystemAdminPage_listItem__f6XhF {
      width: 45%;
    }
  }
  
  .SystemAdminPage_icon__i1t_D {
    color: green;
  }
  
  .SystemAdminPage_listText__gWCAX {
    font-weight: bold;
  }
  
  .SystemAdminPage_button__lNMV0 {
    margin-top: 24px;
    background-color: #4a235a;
    color: white;
    font-weight: bold;
    border-radius: 8px;
    width: 100%;
    max-width: 400px;
  }
  
  .SystemAdminPage_button__lNMV0:hover {
    background-color: #6e3b80;
  }
  
.profile_avatar__6egUq {
    width: 120px;
    height: 120px;
    margin: 0 auto;
    border: 3px solid #f5f5f5;
  }
  
  .profile_hiddenInput__QJX8s {
    display: none;
  }
  
  .profile_uploadButton__hpX3V {
    background-color: #DB724B;
    color: #FFFFFF;
    font-weight: bold;
    border-radius: 25px;
    padding: 8px 20px;
    min-width: 120px;
  }
  
  .profile_uploadButton__hpX3V:hover {
    background-color: #F5C9CC;
    color: #DB724B;
  }
  
  .profile_roleField__snX9B input.profile_Mui-disabled___Wk2_ {
    color: rgba(0, 0, 0, 0.6);
  }
  
  .profile_buttonRow__pEFM5 {
    display: flex;
    justify-content: space-between;
    margin-top: 16px;
  }
  
  .profile_discardButton__lAh2c {
    background-color: #F5C9CC;
    color: #DB724B;
    font-weight: bold;
    border-radius: 25px;
    padding: 8px 20px;
    min-width: 120px;
  }
  
  .profile_discardButton__lAh2c:hover {
    background-color: #DB724B;
    color: #F5C9CC;
  }
  
  .profile_saveButton__aZnow {
    background-color: #6E3B80;
    color: #DED2F7;
    font-weight: bold;
    border-radius: 25px;
    padding: 8px 20px;
    min-width: 120px;
  }
  
  .profile_saveButton__aZnow:hover {
    background-color: #DED2F7;
    color: #6E3B80;
  }
  
/* pagecontainer.module.css */

.pagecontainer_container__0MuYi {
    padding: 0 16px;
    max-width: 1200px;
    margin: 0 auto;
  }

/* authLogin.module.css */

/* ================== Utility ================== */

.authLogin_visuallyHidden__SXRd8 {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ================== Input wrapper + placeholder ================== */

.authLogin_inputField__31bi4 {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

.authLogin_inputField__31bi4 input {
  width: 100%;
  padding: 12px 16px;
  border-radius: 25px;
  border: 1px solid #ccc;
  background-color: #e6eaed;
  outline: none;
  font-size: 0.95rem;
  box-sizing: border-box;
}

.authLogin_inputField__31bi4 input::placeholder {
  color: #6b6b6b;
  opacity: 1;
}

.authLogin_inputField__31bi4 input:focus {
  border-color: #b39ddb; /* soft purple */
  box-shadow: 0 0 0 2px rgba(179, 157, 219, 0.25);
}

/* Password field container */
.authLogin_passwordBox__0Hdfv {
  margin-top: 16px;
}

/* Wrap input + toggle button on the same line */
.authLogin_passwordInputWrapper__jcv5Z {
  display: flex;
  align-items: center;
  border-radius: 25px;
  background-color: #e6eaed;
  border: 1px solid #ccc;
  padding-right: 4px;
}

/* Inside the wrapper, the input fills the space */
.authLogin_passwordInputWrapper__jcv5Z input {
  border: none;
  background: transparent;
  padding: 12px 16px;
  flex: 1 1;
  border-radius: 25px;
  outline: none;
  font-size: 0.95rem;
}

.authLogin_passwordInputWrapper__jcv5Z input::placeholder {
  color: #6b6b6b;
  opacity: 1;
}

.authLogin_passwordInputWrapper__jcv5Z input:focus {
  outline: none;
}

/* Show/Hide button */
.authLogin_passwordToggleButton__sN6fy {
  border: none;
  background: none;
  cursor: pointer;
  padding: 0 12px;
  font-size: 0.8rem;
  color: #6b6b6b;
  border-radius: 999px;
}

.authLogin_passwordToggleButton__sN6fy:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

/* ================== Field error text ================== */

.authLogin_fieldError___rey5 {
  margin-top: 4px;
  margin-bottom: 0;
  font-size: 0.8rem;
  color: #d32f2f;
  text-align: left;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

/* ================== Buttons ================== */

.authLogin_buttonRow__mNvJ_ {
  margin-top: 24px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 48px;
}

/* Reset button defaults */
.authLogin_buttonRow__mNvJ_ button {
  border: none;
  cursor: pointer;
  font-size: 0.95rem;
  padding: 10px 18px;
}

/* Log In button */
.authLogin_loginButton__9Xu62 {
  width: 100%;
  max-width: 130px;
  background-color: #d8b9f2;
  color: #5a2d82;
  font-weight: bold;
  border-radius: 20px;
  text-transform: none;
  transition: background-color 0.2s ease, transform 0.1s ease;
}

.authLogin_loginButton__9Xu62:hover:not(:disabled) {
  background-color: #cba2e5;
  transform: translateY(-1px);
}

/* Sign Up button */
.authLogin_signupButton__NTd0R {
  width: 100%;
  max-width: 130px;
  background-color: #f9c7c7;
  color: #d15151;
  font-weight: bold;
  border-radius: 20px;
  text-transform: none;
  transition: background-color 0.2s ease, transform 0.1s ease;
}

.authLogin_signupButton__NTd0R:hover:not(:disabled) {
  background-color: #f6aaaa;
  transform: translateY(-1px);
}

/* Disabled state */
.authLogin_loginButton__9Xu62:disabled,
.authLogin_signupButton__NTd0R:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

/* ================== Error alert (top of form) ================== */

.authLogin_errorAlert__7PBSD {
  max-width: 500px;
  margin: 0 auto 16px auto;
  padding: 10px 12px;
  border-radius: 8px;
  background-color: #fdecea;
  color: #b71c1c;
  font-size: 0.9rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  box-sizing: border-box;
}

.authLogin_errorAlert__7PBSD button {
  border: none;
  background: none;
  cursor: pointer;
  font-size: 1.1rem;
  line-height: 1;
  color: #b71c1c;
}

/* ================== Loader overlay ================== */

.authLogin_loaderOverlay__ZYppS {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.authLogin_loadingText__OgCj8 {
  margin-bottom: 16px;
  color: #5a2d82;
  font-size: 1rem;
}

/* Simple CSS spinner */
.authLogin_spinner__8rptn {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 3px solid #e0d4ee;
  border-top-color: #6e3b80;
  animation: authLogin_spin__NP0CY 0.8s linear infinite;
}

@keyframes authLogin_spin__NP0CY {
  to {
    transform: rotate(360deg);
  }
}

/* ================== Logo (if used on page) ================== */

.authLogin_logoWrapper__JJXIu {
  margin-top: 100px;
  margin-bottom: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 16px;
  width: 100%;
  box-sizing: border-box;
}

.authLogin_logoImage__c2vSa {
  width: 100%;
  max-width: 450px;
  height: auto;
  object-fit: contain;
}

.FullScreenLoader_overlay__AlVMD {
  position: fixed;
  inset: 0;
  z-index: 1300;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background-color: #faf5ff; /* lighter paint cost */
  pointer-events: none;       /* ⭐ does not block LCP */
}

.FullScreenLoader_card__BNf2m {
  width: 100%;
  max-width: 360px;
  padding: 20px 22px 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow:
    0 18px 40px rgba(15,23,42,0.08),
    0 0 0 1px rgba(226,232,240,0.7);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.FullScreenLoader_logoWrapper__eYsbu {
  width: 100%;
  text-align: center;
}

.FullScreenLoader_simpleSpinner__O68RK {
  width: 28px;
  height: 28px;
  border: 3px solid #ddd;
  border-top-color: #7E57C2;
  border-radius: 50%;
  animation: FullScreenLoader_spin__K0kr4 0.6s linear infinite;
}

@keyframes FullScreenLoader_spin__K0kr4 {
  to { transform: rotate(360deg); }
}

.FullScreenLoader_message__qmmhW {
  margin-top: 4px;
  font-size: 14px;
  font-weight: 600;
  color: #111827;
}

.FullScreenLoader_subMessage__UAqE8 {
  font-size: 12px;
  color: #6b7280;
}

/* InviteNewUser.module.css */
.InviteNewUser_container__LDhb_ {
    display: flex;
    flex-direction: column;
  }
  
  .InviteNewUser_formBox__uOOls {
    margin-bottom: 24px; /* mb={3} -> theme.spacing(3) == 8*3 */
  }
  
  .InviteNewUser_fullWidth__nJiUQ {
    width: 100%;
  }
  
  .InviteNewUser_marginNormal__q1E8X {
    margin-top: 16px;
    margin-bottom: 8px;
  }
  
/* dashboardHeader.module.css */
.dashboardHeader_headerContainer__xQY7_ {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  
  .dashboardHeader_title__dupAd {
    font-weight: bold;
  }
  
/* UserTable.module.css */

.UserTable_tableContainer___0k8U {
    margin-top: 16px; /* Equivalent to MUI's mt: 2 */
  }
  
  .UserTable_button__rkvNF {
    margin-left: 8px; /* Equivalent to MUI's ml: 1 */
  }
  
  .UserTable_revokeButton__k7fys {
    margin-left: 8px;
    color: red;
  }
  
/* admin.module.css */
.admin_progress__SoXum {
    margin-top: 16px;
  }
  
.dashboardcard_card__yd6Rv {
    padding: 0;
    width: 100%;
  }
  
  .dashboardcard_headerCardContent__dJKkn {
    width: 100%;
  }
  
  .dashboardcard_defaultCardContent__MbvSx {
    padding: 30px;
    width: 100%;
    display: block;
    box-sizing: border-box;
  }
  
  .dashboardcard_titleBox__oddcu {
    text-align: center;
    width: 100%;
  }
  
  .dashboardcard_title__4bKXG {
    color: #6E3B80;
    font-size: 2.3rem;
    font-family: 'DM Serif Display', serif;
    font-weight: bold;
  }
  
  .dashboardcard_headTitle__uulU9 {
    font-family: 'DM Serif Display', serif;
  }
  
/* ========================== Page Layout & Shell ========================== */

.addmetricspage_addMetricsPage__vN5zh {
  min-height: 100vh;
  padding: 40px 24px 60px;
  background:
    radial-gradient(circle at top left, #fdfbff 0, #f3ebff 32%, #f9f5ff 100%);
  font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: #020617;
  box-sizing: border-box;
}

.addmetricspage_metricsContainer__8lvS9 {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* =============================== Header Row ============================== */

.addmetricspage_headerRow__GxsEC {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(260px, 1fr);
  grid-column-gap: 32px;
  column-gap: 32px;
  grid-row-gap: 12px;
  row-gap: 12px;
  align-items: flex-start;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.28);
}

.addmetricspage_headerSection__vy0NX {
  max-width: 640px;
}

.addmetricspage_heading__uEH1_ {
  font-family: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  font-size: 32px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
  margin: 0 0 10px;
}

.addmetricspage_highlightText__DX1_X {
  color: #cc704b;
}

.addmetricspage_subtext__3vZnz {
  font-size: 14px;
  color: #4b425e;
  line-height: 1.7;
  margin: 0;
}

/* Header meta (consistent with Users / Secure Data / Pricing) */

.addmetricspage_headerRight__KCaOh {
  display: inline-grid;
  justify-self: end;
  grid-auto-rows: min-content;
  row-gap: 10px;
  padding: 10px 16px;
  border-radius: 16px;
  background: rgba(249, 250, 251, 0.96);
  border: 1px solid rgba(209, 213, 219, 0.9);
}

.addmetricspage_billingMeta__nbROO {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.addmetricspage_metaLabel__EUXPj {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #9ca3af;
}

.addmetricspage_metaValue__jh6lW {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
}

/* ========================== Status / Info Banner ========================= */

.addmetricspage_statusBanner__st6JI {
  margin-top: 4px;
  border-radius: 18px;
  padding: 14px 18px;
  background: linear-gradient(
    90deg,
    rgba(110, 58, 129, 0.06),
    rgba(110, 58, 129, 0.015)
  );
  border: 1px solid rgba(110, 58, 129, 0.16);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.addmetricspage_statusBannerLeft__ElJdM {
  display: flex;
  align-items: center;
  gap: 12px;
}

.addmetricspage_statusPill__bpDVd {
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #6e3a81;
  color: #f9fafb;
  box-shadow: 0 8px 18px rgba(110, 58, 129, 0.35);
}

.addmetricspage_statusText__TVckj {
  font-size: 13px;
  color: #111827;
}

.addmetricspage_statusBannerRight___50uI {
  max-width: 360px;
}

.addmetricspage_statusMetaText__oPx2_ {
  font-size: 12px;
  color: #4b425e;
}

/* =============================== Cards Row =============================== */

.addmetricspage_cardsRow__GrhCz {
  margin-top: 6px;
}

/* Card shell – modern, subtle glassy feel */

.addmetricspage_card__Uu_WJ {
  position: relative;
  border-radius: 24px !important;
  border: 1px solid rgba(229, 231, 235, 0.96);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  transition:
    box-shadow 0.2s ease,
    transform 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease;
}

.addmetricspage_card__Uu_WJ::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0;
  background: radial-gradient(
    circle at top left,
    rgba(110, 58, 129, 0.08),
    transparent 60%
  );
  transition: opacity 0.2s ease;
  pointer-events: none;
}

.addmetricspage_cardAction__ayXzG {
  height: 100%;
  display: flex !important;
  align-items: stretch;
}

.addmetricspage_card__Uu_WJ:hover {
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.14);
  transform: translateY(-3px);
  border-color: rgba(110, 58, 129, 0.32);
  background-color: #ffffff;
}

.addmetricspage_card__Uu_WJ:hover::before {
  opacity: 1;
}

.addmetricspage_card__Uu_WJ:focus-within {
  outline: 2px solid #6e3a81;
  outline-offset: 2px;
}

/* Card content */

.addmetricspage_cardContent__j34Z1 {
  padding: 24px 22px 18px !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.addmetricspage_cardIconBadge__brsFr {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: rgba(110, 58, 129, 0.09);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 6px;
}

.addmetricspage_cardIcon__otcS_ {
  font-size: 20px;
}

.addmetricspage_cardTitle__znNhk {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #111827;
}

.addmetricspage_cardBodyText__bQrvv {
  font-size: 13px;
  color: #4b5563;
  line-height: 1.6;
}

.addmetricspage_cardFootnote__kXEBr {
  margin-top: 6px;
  font-size: 12px;
  color: #6b7280;
}

/* Defer heavy sections below the hero from initial rendering */
.addmetricspage_statusBanner__st6JI,
.addmetricspage_cardsRow__GrhCz {
  content-visibility: auto;
  contain-intrinsic-size: 220px;
}

/* Softer card shadow (still nice, cheaper to paint) */
.addmetricspage_card__Uu_WJ {
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
}

/* On hover, you can still go bigger */
.addmetricspage_card__Uu_WJ:hover {
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.12);
}

.addmetricspage_addMetricsPage__vN5zh {
  /* ...existing styles... */
  background:
    radial-gradient(circle at top left, #fdfbff 0, #f3ebff 40%, #f9f5ff 100%);
}


/* =============================== Responsive ============================== */

@media (max-width: 1024px) {
  .addmetricspage_addMetricsPage__vN5zh {
    padding: 32px 16px 40px;
  }

  .addmetricspage_headerRow__GxsEC {
    grid-template-columns: minmax(0, 1fr);
  }

  .addmetricspage_headerRight__KCaOh {
    justify-self: stretch;
    align-items: flex-start;
  }
}

@media (max-width: 768px) {
  .addmetricspage_heading__uEH1_ {
    font-size: 26px;
  }

  .addmetricspage_statusBanner__st6JI {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .addmetricspage_heading__uEH1_ {
    font-size: 22px;
  }

  .addmetricspage_statusBanner__st6JI {
    padding: 12px 14px;
  }
}

.UnauthorizedAccess_root__ZUeNP {
    min-height: 60vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 16px;
    box-sizing: border-box;
    background:
      radial-gradient(circle at top left, #f9fafb 0, #f3f4f6 40%, #eef2ff 100%);
  }
  
  .UnauthorizedAccess_card__pTuZZ {
    width: 100%;
    max-width: 560px;
    background-color: #ffffff;
    border-radius: 16px;
    padding: 28px 24px 24px;
    box-shadow:
      0 18px 45px rgba(15, 23, 42, 0.08),
      0 0 0 1px rgba(148, 163, 184, 0.15);
    box-sizing: border-box;
  }
  
  .UnauthorizedAccess_pill__u6Rl9 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(248, 113, 113, 0.08);
    color: #b91c1c;
    margin-bottom: 10px;
  }
  
  .UnauthorizedAccess_title__Nixk5 {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 8px;
  }
  
  .UnauthorizedAccess_subtitle___kCoP {
    font-size: 14px;
    line-height: 1.6;
    color: #4b5563;
    margin: 0 0 12px;
  }
  
  .UnauthorizedAccess_hint___5GvT {
    font-size: 13px;
    line-height: 1.6;
    color: #6b7280;
    margin: 0 0 20px;
  }
  
  .UnauthorizedAccess_actionsRow__hW4_X {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
  }
  
  .UnauthorizedAccess_primaryButton__FBI9U {
    text-transform: none;
    font-weight: 600;
    border-radius: 999px;
    padding: 6px 18px;
  }
  
  .UnauthorizedAccess_secondaryButton__Rumd3 {
    text-transform: none;
    font-weight: 500;
    border-radius: 999px;
    padding: 6px 14px;
  }
  
  /* Small screens */
  @media (max-width: 600px) {
    .UnauthorizedAccess_card__pTuZZ {
      padding: 22px 18px 18px;
    }
  
    .UnauthorizedAccess_title__Nixk5 {
      font-size: 20px;
    }
  
    .UnauthorizedAccess_subtitle___kCoP {
      font-size: 13px;
    }
  }
  
.managed-organizations_page__bDFwu {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.managed-organizations_headerRow__pi6jZ {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  align-items: flex-start;
}

.managed-organizations_title__1HOKX {
  font-weight: 700;
  color: #18343d;
  margin-bottom: 8px;
}

.managed-organizations_subtitle__uXnys {
  max-width: 760px;
  color: #55656d;
  line-height: 1.6;
}

.managed-organizations_summaryGrid__fBdCr {
  display: grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  grid-gap: 12px;
  gap: 12px;
  min-width: min(100%, 420px);
}

.managed-organizations_summaryCard__5_LKR,
.managed-organizations_formCard__N88jh,
.managed-organizations_listCard__KQOew,
.managed-organizations_organisationCard__1kMuR {
  border: 1px solid #d8e2e6;
  border-radius: 20px;
  background: linear-gradient(180deg, #ffffff 0%, #f6faf8 100%);
}

.managed-organizations_summaryCard__5_LKR {
  padding: 16px;
}

.managed-organizations_summaryLabel__7wE2J,
.managed-organizations_kpiLabel__DJP53 {
  display: block;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #65757d;
  margin-bottom: 6px;
}

.managed-organizations_summaryValue__I_SuY {
  color: #143640;
  font-size: 1rem;
}

.managed-organizations_bodyGrid__NRFUB {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  grid-gap: 20px;
  gap: 20px;
}

.managed-organizations_formCard__N88jh,
.managed-organizations_listCard__KQOew {
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.managed-organizations_cardTitle__nY5mh {
  font-weight: 700;
  color: #163842;
}

.managed-organizations_cardSubtitle__risae {
  color: #5d6d74;
  line-height: 1.6;
}

.managed-organizations_primaryButton__nTvj9 {
  align-self: flex-start;
}

.managed-organizations_organisationList__O6hkD {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.managed-organizations_organisationCard__1kMuR {
  padding: 18px;
}

.managed-organizations_organisationHeader__Zrf2e,
.managed-organizations_organisationFooter__KAABE {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.managed-organizations_organisationName__vto7m {
  font-weight: 700;
  color: #163842;
}

.managed-organizations_organisationMeta__kJaNv,
.managed-organizations_footerText__z2FY_ {
  color: #617078;
}

.managed-organizations_kpiGrid__4nHyL {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  margin: 16px 0;
}

.managed-organizations_kpi__S6Ha9 {
  background: #edf5f2;
  border-radius: 14px;
  padding: 14px;
  color: #193b44;
}

@media (max-width: 1024px) {
  .managed-organizations_bodyGrid__NRFUB {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .managed-organizations_summaryGrid__fBdCr,
  .managed-organizations_kpiGrid__4nHyL {
    grid-template-columns: 1fr;
  }
}

/* primu-sustivate-nextjs-serverless/src/app/(DashboardLayout)/dashboard/manual-entry/manualmetricentry.module.css */
/* ========================== Page Layout & Shell ========================== */

.manualmetricentry_manualPage__F6DV0 {
  min-height: 100vh;
  padding: 40px 24px 60px;
  background:
    radial-gradient(circle at top left, #fdfbff 0, #f3ebff 32%, #f9f5ff 100%);
  font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont,
    sans-serif;
  color: #020617;
  box-sizing: border-box;
}

.manualmetricentry_manualContainer__VgwhV {
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Back link */

.manualmetricentry_backButton__WlW5V {
  align-self: flex-start;
  margin-bottom: 4px;
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
  border-color: rgba(148, 163, 184, 0.9) !important;
  color: #4b5563 !important;
  background-color: #ffffff !important;
}

.manualmetricentry_backButton__WlW5V:hover {
  background-color: #f9fafb !important;
}

/* =============================== Form Surface ============================ */

.manualmetricentry_formSurface__aPZKC {
  border-radius: 24px;
  border: 1px solid rgba(229, 231, 235, 0.96);
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
  padding: 22px 22px 20px;
}

/* Header */

.manualmetricentry_headerRow__FeUMo {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.manualmetricentry_pageTitle__fPKHr {
  font-family: 'DM Serif Display', Georgia, serif;
  font-size: 34px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
  margin: 0 0 10px;
}

.manualmetricentry_highlightText__d63zn {
  color: #cc704b;
}

.manualmetricentry_pageSubtitle__7sRYn {
  font-size: 13px;
  color: #4b425e;
  line-height: 1.7;
  max-width: 640px;
}

/* =============================== Form Body =============================== */

.manualmetricentry_formWrapper__T7Ydu {
  margin-top: 4px;
}

/* Top row label + toggle */

.manualmetricentry_rowBetween__hj1Kk {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

/* Section label */

.manualmetricentry_sectionLabel__0Ebn5 {
  font-size: 13px;
  font-weight: 600;
  color: #4b425e;
}

/* =========================== Toggle group (mode) ========================= */
/* Match the pill-style segmented controls used on Upload / Pricing */

.manualmetricentry_toggleGroup__KltDw {
  display: inline-flex;
  gap: 0;
  padding: 2px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.7);
  background: rgba(249, 245, 255, 0.96);
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

/* underlying MUI toggle buttons (scoped) */
.manualmetricentry_toggleGroup__KltDw .MuiToggleButton-root {
  border: 0;
  padding: 8px 16px;
  text-transform: none;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  color: #4b425e;
  border-radius: 999px !important;
}

/* remove internal hard border, use small gap instead */
.manualmetricentry_toggleGroup__KltDw
  .MuiToggleButtonGroup-grouped + .MuiToggleButtonGroup-grouped {
  margin-left: 2px;
  border-left: none;
}

/* selected state – purple pill with white text */
.manualmetricentry_toggleGroup__KltDw .Mui-selected {
  background: radial-gradient(circle at top left, #7a3c94 0, #5f2e73 100%);
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(110, 58, 129, 0.32);
}

/* hover */
.manualmetricentry_toggleGroup__KltDw .MuiToggleButton-root:hover {
  background-color: rgba(255, 255, 255, 0.98);
}

/* ============================ Section helpers ============================ */

.manualmetricentry_sectionSpacer__vt2V4 {
  margin-top: 12px;
}

.manualmetricentry_metricLabel__uAiDq {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
  margin-bottom: 4px;
}

/* Radio row */

.manualmetricentry_radioRow__puoee {
  margin-top: 2px;
}

/* Make radio labels slightly smaller for dense layout */
.manualmetricentry_radioRow__puoee .MuiFormControlLabel-label {
  font-size: 12px;
  color: #374151;
}

/* =============================== Submit Row ============================== */

.manualmetricentry_submitSection__6Kbfq {
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}

.manualmetricentry_submitButton__q5Paz {
  background: linear-gradient(135deg, #6e3a81, #b35b3c) !important;
  color: #f9fafb !important;
  font-weight: 600 !important;
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 8px 20px !important;
  box-shadow: 0 12px 30px rgba(110, 58, 129, 0.24) !important;
}

.manualmetricentry_submitButton__q5Paz:disabled {
  background: #d1d5db !important;
  box-shadow: none !important;
  color: #f9fafb !important;
}

.manualmetricentry_submitButton__q5Paz:hover:not(:disabled) {
  background: linear-gradient(135deg, #5d316d, #9c4f35) !important;
}

/* Alerts */

.manualmetricentry_feedbackMessage__B9Em4 {
  font-size: 12px;
}

/* =============================== Responsive ============================== */

@media (max-width: 1024px) {
  .manualmetricentry_manualPage__F6DV0 {
    padding: 32px 16px 40px;
  }

  .manualmetricentry_headerRow__FeUMo {
    flex-direction: column;
  }

  .manualmetricentry_rowBetween__hj1Kk {
    flex-direction: column;
    align-items: flex-start;
  }

  .manualmetricentry_toggleGroup__KltDw {
    align-self: flex-start;
  }
}

@media (max-width: 768px) {
  .manualmetricentry_pageTitle__fPKHr {
    font-size: 24px;
  }
}

@media (max-width: 480px) {
  .manualmetricentry_pageTitle__fPKHr {
    font-size: 22px;
  }

  .manualmetricentry_formSurface__aPZKC {
    padding: 18px 16px 16px;
  }
}


/* Rounded inputs inside the manual-entry surface */
.manualmetricentry_formSurface__aPZKC .MuiOutlinedInput-root {
  border-radius: 999px;              /* pill-style corners */
  background-color: #fbfbff;         /* soft background to match the UI */
}

/* keep the notch itself rounded too */
.manualmetricentry_formSurface__aPZKC .MuiOutlinedInput-notchedOutline {
  border-radius: 999px;
}

/* focus state – keep it clean and consistent */
.manualmetricentry_formSurface__aPZKC .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline {
  border-color: #6e3a81;
  box-shadow: 0 0 0 1px rgba(110, 58, 129, 0.15);
}

/* primu-sustivate-nextjs-serverless/src/app/(DashboardLayout)/benchmarking/benchmarking.module.css */

/* ========================== Page Layout & Shell ========================== */

.benchmarking_benchmarkingPage__FTAmr {
  min-height: 100vh;
  padding: 40px 24px 60px;
  background: radial-gradient(circle at top left, #fdfbff 0, #f3ebff 32%, #f9f5ff 100%);
  font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: #020617;
  box-sizing: border-box;
}

.benchmarking_benchmarkingContainer__WHe3g {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* =============================== Header Row ============================== */

.benchmarking_headerRow__xdZWG {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(260px, 1fr);
  grid-column-gap: 32px;
  column-gap: 32px;
  grid-row-gap: 12px;
  row-gap: 12px;
  align-items: flex-start;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.3);
}

.benchmarking_headerSection__8r4Kx {
  max-width: 640px;
}

.benchmarking_heading__1OItl {
  font-family: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
  margin: 0 0 10px;
}

.benchmarking_highlightText__mMWga {
  color: #cc704b;
}

.benchmarking_subtext__YFdq0 {
  font-size: 14px;
  color: #4b425e;
  line-height: 1.7;
  margin: 0;
}

.benchmarking_headerRight__U_4kS {
  display: inline-grid;
  justify-self: end;
  grid-auto-rows: min-content;
  row-gap: 10px;
  padding: 10px 16px;
  border-radius: 16px;
  background: rgba(249, 250, 251, 0.9);
  border: 1px solid rgba(209, 213, 219, 0.9);
}

.benchmarking_billingMeta__U4B3t {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.benchmarking_metaLabel__j8Pti {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #9ca3af;
}

.benchmarking_metaValue__5Z9aZ {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
}

/* ========================== Context Banner ========================== */

.benchmarking_contextBanner__IhpU9 {
  margin-top: 4px;
  border-radius: 18px;
  padding: 14px 18px;
  background: linear-gradient(90deg, rgba(110, 58, 129, 0.06), rgba(110, 58, 129, 0.015));
  border: 1px solid rgba(110, 58, 129, 0.16);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  position: relative;
}

.benchmarking_contextBannerLeft__i2L9D {
  display: flex;
  align-items: center;
  gap: 12px;
}

.benchmarking_contextPill__5l5Ce {
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #6e3a81;
  color: #f9fafb;
  box-shadow: 0 8px 18px rgba(110, 58, 129, 0.35);
}

.benchmarking_contextText__ZPyU2 {
  font-size: 13px !important;
  color: #111827 !important;
}

/* ======================= Dashboard Section Shell ========================= */

.benchmarking_dashboardSection__71XJT {
  margin-top: 4px;
}

.benchmarking_dashboardShell__oTUyD {
  border-radius: 24px;
  background-color: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
  padding: 18px 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.benchmarking_dashboardHeader__Yuah9 {
  border-bottom: 1px solid #e5e7eb;
  padding-bottom: 8px;
  margin-bottom: 6px;
}

.benchmarking_dashboardTitle__oRnlV {
  font-size: 15px;
  font-weight: 600;
  color: #111827;
  margin: 0 0 4px;
}

.benchmarking_dashboardSubtitle__QTWOl {
  font-size: 13px;
  color: #4b5563;
  margin: 0;
}

.benchmarking_dashboardBody__eKO_H {
  min-height: 520px;
}

/* ======================= TOP: Recommendations Hero ====================== */

.benchmarking_recoHero__2KTrj {
  border-radius: 22px;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: linear-gradient(180deg, rgba(110, 58, 129, 0.07), rgba(255, 255, 255, 0.9));
  box-shadow: 0 16px 42px rgba(2, 6, 23, 0.08);
  overflow: hidden;
  margin-bottom: 12px;
}

.benchmarking_recoHeroTop___w6OR {
  padding: 16px 16px 14px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
  flex-wrap: wrap;
}

.benchmarking_recoHeroTitle__tQwv8 {
  font-size: 18px;
  font-weight: 950;
  color: #0f172a;
  letter-spacing: -0.01em;
}

.benchmarking_recoHeroSub__fJ143 {
  margin-top: 4px;
  font-size: 13px;
  color: #475569;
  line-height: 1.45;
}

.benchmarking_recoHeroMeta__PRvj7 {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  justify-items: end;
}

.benchmarking_recoPill__obAUv {
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 950;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.06);
  white-space: nowrap;
}

.benchmarking_recoPillMuted___Hj1R {
  opacity: 0.75;
}

.benchmarking_recoPillGood__LvGl5 {
  border-color: rgba(34, 197, 94, 0.28);
  background: rgba(34, 197, 94, 0.10);
}

.benchmarking_recoPillWarn__s7tBp {
  border-color: rgba(245, 158, 11, 0.30);
  background: rgba(245, 158, 11, 0.12);
}

.benchmarking_recoPillNeutral__4azSh {
  border-color: rgba(59, 130, 246, 0.24);
  background: rgba(59, 130, 246, 0.08);
}

.benchmarking_recoMiniPills__yC3aR {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.benchmarking_recoMiniPill__Te4AF {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.75);
  white-space: nowrap;
}

.benchmarking_recoHeroBody__iEW_W {
  padding: 14px 16px 16px;
}

.benchmarking_recoEmpty__idqP7 {
  padding: 14px;
  border-radius: 16px;
  border: 1px dashed rgba(15, 23, 42, 0.22);
  background: rgba(255, 255, 255, 0.75);
  color: #475569;
  font-size: 13px;
}

.benchmarking_recoGrid__H1olD {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  grid-gap: 12px;
  gap: 12px;
}

.benchmarking_recoMain__ahzg9 {
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 10px 24px rgba(2, 6, 23, 0.06);
  padding: 12px;
  min-width: 0;
}

.benchmarking_recoSide__xDBka {
  display: grid;
  grid-gap: 12px;
  gap: 12px;
  min-width: 0;
}

.benchmarking_recoSideCard__jhW9j {
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 10px 24px rgba(2, 6, 23, 0.06);
  padding: 12px;
  min-width: 0;
}

.benchmarking_recoSectionHeader__qcAU6 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(15, 23, 42, 0.02);
}

.benchmarking_recoSectionTitle__wtjpK {
  font-size: 12px;
  font-weight: 950;
  color: #0f172a;
}

.benchmarking_recoSectionHint__XzhoC {
  font-size: 12px;
  opacity: 0.75;
  white-space: nowrap;
}

.benchmarking_recoList__Kmg7G {
  margin-top: 10px;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.benchmarking_recoItem__h6LRi {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #fff;
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.05);
}

.benchmarking_recoIndex__SYHoA {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  font-weight: 950;
  font-size: 12px;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: rgba(110, 58, 129, 0.10);
  color: #4c1d95;
}

.benchmarking_recoText__qeTbb {
  font-size: 13px;
  color: #0f172a;
  line-height: 1.5;
  min-width: 0;
}

.benchmarking_recoChips__wf5u0 {
  margin-top: 10px;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.benchmarking_recoChip__nmglQ {
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(15, 23, 42, 0.015);
  font-size: 12px;
  line-height: 1.45;
}

.benchmarking_recoEmptySmall__gGt5_ {
  font-size: 12px;
  opacity: 0.75;
  padding: 8px 2px;
}

.benchmarking_recoInputRows__D_9Af {
  margin-top: 10px;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.benchmarking_recoInputRow__7M_vp {
  display: grid;
  grid-template-columns: min-content min-content 1fr;
  grid-gap: 10px;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #fff;
}

.benchmarking_recoTag__Q7ZnZ {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(15, 23, 42, 0.03);
}

.benchmarking_recoInputVal__9aosy {
  font-weight: 950;
  color: #0f172a;
  white-space: nowrap;
}

.benchmarking_recoInputHint__YJFvt {
  font-size: 12px;
  opacity: 0.75;
  text-align: right;
}

/* ======================= AI Layout ====================== */

.benchmarking_aiTopBar__Rso5_ {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}

.benchmarking_aiTopLeft__wKlTE {
  display: flex;
  align-items: flex-end;
  gap: 14px;
  flex-wrap: wrap;
  min-width: 0;
}

.benchmarking_aiTopRight__QY8nS {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 140px;
}

.benchmarking_statusPill__sSWp3 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(15, 23, 42, 0.03);
  box-shadow: 0 10px 24px rgba(2, 6, 23, 0.06);
  white-space: nowrap;
}

.benchmarking_statusDot__dD6UZ {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #94a3b8;
}

.benchmarking_statusDotRunning__M5rOA {
  background: #f59e0b;
}

.benchmarking_statusDotReady__zVqbo {
  background: #22c55e;
}

.benchmarking_statusText__gh4lg {
  font-size: 12px;
  font-weight: 900;
  color: #0f172a;
  opacity: 0.8;
}

.benchmarking_companyBlock__mah6N {
  min-width: 240px;
}

.benchmarking_smallLabel__q2XpX {
  font-size: 12px;
  opacity: 0.7;
}

.benchmarking_companyValue__nXf5T {
  font-weight: 900;
  color: #0f172a;
  margin-top: 2px;
  max-width: 360px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.benchmarking_yearBlock___p93Y {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
}

.benchmarking_yearSelect__eRnDf {
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  min-width: 140px;
  font-weight: 900;
  background: #fff;
  outline: none;
}

.benchmarking_yearSelect__eRnDf:focus {
  border-color: rgba(110, 58, 129, 0.55);
  box-shadow: 0 0 0 4px rgba(110, 58, 129, 0.12);
}

.benchmarking_pillsRow__9AURS {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  font-size: 12px;
  padding-bottom: 2px;
}

.benchmarking_pill__39VUp {
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  font-weight: 900;
  white-space: nowrap;
}

.benchmarking_pillOff__BJULX {
  background: rgba(15, 23, 42, 0.06);
}

.benchmarking_pillEnergyOn__c3HMK {
  background: rgba(34, 197, 94, 0.12);
}

.benchmarking_pillWaterOn__thVq3 {
  background: rgba(59, 130, 246, 0.12);
}

.benchmarking_pillWasteOn__exZ0E {
  background: rgba(245, 158, 11, 0.14);
}

.benchmarking_errorBox__As5_S {
  padding: 12px;
  border-radius: 12px;
  border: 1px solid rgba(220, 38, 38, 0.35);
  background: rgba(220, 38, 38, 0.06);
  color: #b91c1c;
  white-space: pre-wrap;
  margin-bottom: 12px;
}

.benchmarking_uploadLink__bCEkU {
  display: inline-block;
  padding: 8px 16px;
  background-color: #3b82f6;
  color: white;
  text-decoration: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  transition: background-color 0.2s ease;
}

.benchmarking_uploadLink__bCEkU:hover {
  background-color: #2563eb;
}

/* Grid / cards */
.benchmarking_aiGrid__pnUcF {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  align-items: stretch;
}

.benchmarking_cardSpan3__qqimf {
  grid-column: span 3;
  min-width: 0;
}

.benchmarking_cardSpan4__nIk_G {
  grid-column: span 4;
  min-width: 0;
}

.benchmarking_cardSpan8__bPgYC {
  grid-column: span 8;
  min-width: 0;
}

.benchmarking_metricCard__AbEzi {
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 26px rgba(2, 6, 23, 0.06);
  padding: 16px;
  height: 100%;
  min-width: 0;
  overflow: hidden;
}

.benchmarking_metricCardTop__EMg_f {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.benchmarking_kicker__CfdkW {
  font-size: 12px;
  opacity: 0.7;
}

.benchmarking_metricTitle__CQnDl {
  font-size: 13px;
  font-weight: 900;
  margin-top: 2px;
  color: #0f172a;
}

.benchmarking_trendText__0wSYd {
  font-size: 12px;
  font-weight: 900;
  color: #0f172a;
  opacity: 0.85;
  white-space: nowrap;
}

.benchmarking_trendValue__D75Qr {
  opacity: 0.7;
}

.benchmarking_miniChartWrap__O0Lx6 {
  height: 78px;
  margin-top: 10px;
}

.benchmarking_bigChartWrap__YvXeO {
  height: 210px;
  margin-top: 10px;
}

.benchmarking_cardHeaderRow__BlIjw {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: baseline;
}

.benchmarking_mutedRight__Sjmbu {
  font-size: 12px;
  opacity: 0.75;
  font-weight: 900;
  white-space: nowrap;
}

.benchmarking_chartTall__lPKNo {
  height: 220px;
  margin-top: 12px;
}

.benchmarking_chartMid__UWP2m {
  height: 190px;
  margin-top: 12px;
}

.benchmarking_helperText__1t1FN {
  margin-top: 6px;
  font-size: 12px;
  opacity: 0.75;
  line-height: 1.4;
}

/* Donut */
.benchmarking_donutWrap__KMkb0 {
  position: relative;
  height: 210px;
  margin-top: 10px;
  display: grid;
  place-items: center;
}

.benchmarking_donutChart__bTtQS {
  width: 100%;
  height: 100%;
}

.benchmarking_donutOverlay__4uLCY {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  pointer-events: none;
  text-align: center;
}

.benchmarking_donutValue__7MTJR {
  font-size: 26px;
  font-weight: 900;
  color: #0f172a;
  line-height: 1.1;
}

.benchmarking_donutLabel__QoSIK {
  font-size: 12px;
  opacity: 0.7;
  margin-top: -2px;
}

/* Forecast footer */
.benchmarking_forecastFooter__7pK6l {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 6px;
}

.benchmarking_bigValue__r2d3K {
  font-weight: 900;
}

.benchmarking_rightAlign__elK5i {
  text-align: right;
}

/* Model notes */
.benchmarking_modelNotes__YkCrP {
  margin-top: 12px;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
}

.benchmarking_noteRow__RQo3D {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(15, 23, 42, 0.02);
}

.benchmarking_noteLabel__dKc7F {
  font-size: 12px;
  opacity: 0.75;
}

.benchmarking_noteValue__uwzk7 {
  font-size: 12px;
  font-weight: 900;
  color: #0f172a;
  text-align: right;
}

.benchmarking_noteHint__6wSNo {
  font-size: 12px;
  opacity: 0.75;
  line-height: 1.45;
}

/* ======================= Mapping Panel (kept) ====================== */

.benchmarking_mappingPanel__rYEkU {
  margin-top: 14px;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: linear-gradient(180deg, #ffffff, rgba(15, 23, 42, 0.01));
  box-shadow: 0 14px 34px rgba(2, 6, 23, 0.07);
  min-width: 0;
}

.benchmarking_mappingTop__i622o {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-gap: 14px;
  gap: 14px;
  align-items: start;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.25);
  margin-bottom: 14px;
}

.benchmarking_mappingTopLeft__1ZZkR {
  min-width: 0;
}

.benchmarking_mappingTitle__iBj4Q {
  font-size: 18px;
  font-weight: 950;
  color: #0f172a;
  letter-spacing: -0.01em;
}

.benchmarking_mappingDesc__04W_O {
  margin-top: 6px;
  font-size: 13px;
  color: #475569;
  line-height: 1.55;
  max-width: 720px;
}

.benchmarking_mappingCards__HvaSj {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
}

.benchmarking_mappingCard__uhfTj {
  grid-column: span 4;
  min-width: 0;
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #fff;
  box-shadow: 0 10px 24px rgba(2, 6, 23, 0.06);
  overflow: hidden;
}

.benchmarking_mappingCardHeader__v_oGS {
  padding: 14px 14px 12px;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.02), rgba(15, 23, 42, 0));
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.benchmarking_mappingCardHeaderLeft__SiuWW {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.benchmarking_mappingChip__KBF_r {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: rgba(15, 23, 42, 0.05);
  color: #0f172a;
  flex-shrink: 0;
}

.benchmarking_mappingCardTitle___fRdR {
  font-size: 14px;
  font-weight: 950;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.benchmarking_mappingModelName__I_pwF {
  font-size: 12px;
  color: #475569;
  white-space: nowrap;
}

.benchmarking_mappingModelNameStrong__sJ_5H {
  font-weight: 900;
  color: #0f172a;
}

.benchmarking_mappingTable__hVdrG {
  padding: 12px 14px 14px;
}

.benchmarking_mappingTableHead__lcNtw {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(15, 23, 42, 0.02);
}

.benchmarking_mappingTh__nIRBk {
  font-size: 12px;
  font-weight: 900;
  color: #0f172a;
}

.benchmarking_mappingTableBody__dxYJ8 {
  margin-top: 10px;
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.benchmarking_mappingTr__G33zF {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-gap: 10px;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #fff;
}

.benchmarking_mappingTdLeft__KIyWz {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.benchmarking_mappingTdRight__ngBoM {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: #0f172a;
  font-size: 12px;
}

.benchmarking_codePill__hxsP5 {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  border: 1px solid rgba(15, 23, 42, 0.10);
  background: rgba(15, 23, 42, 0.03);
  color: #0b1220;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}

.benchmarking_arrow__MQorB {
  opacity: 0.55;
  font-weight: 900;
}

.benchmarking_modelMetricText__XXkvU {
  font-weight: 800;
  color: #0f172a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.benchmarking_mappingFooter__YHJqK {
  padding: 0 14px 14px;
}

.benchmarking_mappingFooterHint__WqPjP {
  font-size: 12px;
  opacity: 0.75;
}

.benchmarking_mappingCallout__yOpmd {
  margin-top: 14px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(59, 130, 246, 0.06);
  border: 1px solid rgba(59, 130, 246, 0.18);
}

.benchmarking_mappingCalloutIcon__vIrO9 {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  font-weight: 900;
  font-size: 12px;
  color: #1d4ed8;
  background: rgba(59, 130, 246, 0.14);
  border: 1px solid rgba(59, 130, 246, 0.22);
  flex-shrink: 0;
}

.benchmarking_mappingCalloutText__U58iw {
  font-size: 12px;
  color: #1f2937;
  line-height: 1.55;
}

/* Tag colors used across */
.benchmarking_tagEnergy__yKHLx {
  background: rgba(124, 58, 237, 0.10);
  border-color: rgba(124, 58, 237, 0.24);
  color: #4c1d95;
}

.benchmarking_tagWater__uqPi5 {
  background: rgba(37, 99, 235, 0.10);
  border-color: rgba(37, 99, 235, 0.24);
  color: #1e3a8a;
}

.benchmarking_tagWaste__KxBpZ {
  background: rgba(245, 158, 11, 0.12);
  border-color: rgba(245, 158, 11, 0.28);
  color: #92400e;
}

/* Responsive */
@media (max-width: 1200px) {
  .benchmarking_cardSpan3__qqimf {
    grid-column: span 6;
  }
  .benchmarking_cardSpan8__bPgYC {
    grid-column: span 12;
  }
  .benchmarking_cardSpan4__nIk_G {
    grid-column: span 12;
  }
  .benchmarking_companyValue__nXf5T {
    max-width: 280px;
  }
  .benchmarking_mappingCard__uhfTj {
    grid-column: span 12;
  }
  .benchmarking_recoGrid__H1olD {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 1024px) {
  .benchmarking_benchmarkingPage__FTAmr {
    padding: 32px 16px 40px;
  }
  .benchmarking_headerRow__xdZWG {
    grid-template-columns: minmax(0, 1fr);
  }
  .benchmarking_headerRight__U_4kS {
    justify-self: stretch;
    align-items: flex-start;
  }
}

@media (max-width: 768px) {
  .benchmarking_heading__1OItl {
    font-size: 28px;
  }
  .benchmarking_dashboardShell__oTUyD {
    padding: 16px 14px 14px;
  }
  .benchmarking_companyValue__nXf5T {
    max-width: 240px;
  }
  .benchmarking_mappingTr__G33zF,
  .benchmarking_mappingTableHead__lcNtw {
    grid-template-columns: minmax(0, 1fr);
  }
  .benchmarking_mappingModelName__I_pwF {
    display: none;
  }
  .benchmarking_recoHeroMeta__PRvj7 {
    justify-items: start;
  }
}

@media (max-width: 480px) {
  .benchmarking_heading__1OItl {
    font-size: 24px;
  }
  .benchmarking_contextBanner__IhpU9 {
    flex-direction: column;
    align-items: flex-start;
  }
  .benchmarking_companyBlock__mah6N {
    min-width: 0;
    width: 100%;
  }
  .benchmarking_companyValue__nXf5T {
    max-width: 100%;
  }
}

/* dashboard.module.css */

/* ================== Generic layout ================== */

.dashboard_dashboardRoot__tL2pj {
  width: 100%;
}

/* Flex grid to replace MUI Grid */
.dashboard_gridRow__aB5CU {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  margin-top: 24px;
  align-items: stretch; /* make children the same height */
}

.dashboard_gridColHalf__NSk2l {
  flex: 1 1 100%;
  display: flex; /* so the ChartContainer can stretch */
}

.dashboard_gridColHalf__NSk2l > * {
  flex: 1 1 auto; /* ChartContainer fills the column */
}

.dashboard_gridColFull__alg4b {
  flex: 1 1 100%;
}

/* 2 columns on medium+ screens */
@media (min-width: 900px) {
  .dashboard_gridColHalf__NSk2l {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: calc(50% - 16px);
  }
}

/* ================== Loading state ================== */

/* ✅ Card-sized loader (used inside ChartContainers) */
.dashboard_loadingBox__iXnTF {
  min-height: 260px;             /* was 100vh -> caused huge empty containers */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 24px;
}

/* ✅ Full page loader (use this only for route-level loading) */
.dashboard_fullPageLoading__8ZA15 {
  height: calc(100vh - 140px);
  min-height: 520px;
}

.dashboard_loadingText__KCxM6 {
  margin-top: 16px;
  color: #555;
}

/* Simple spinner */
.dashboard_spinner__QPeX3 {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 3px solid #e0d4ee;
  border-top-color: #6e3b80;
  animation: dashboard_spin__f5dIZ 0.8s linear infinite;
}

@keyframes dashboard_spin__f5dIZ {
  to {
    transform: rotate(360deg);
  }
}

/* ================== Assessment selector ================== */

.dashboard_assessmentHeader__sgCCf {
  display: flex;
  align-items: center;
  gap: 8px;
}

.dashboard_assessmentLabel__0vAIW {
  font-size: 0.85rem;
  font-weight: 600;
  color: #555;
}

.dashboard_selectDropdown__BYT2C {
  font-size: 13px;
  padding: 4px 8px;
  border-radius: 6px;
  border: 1px solid #ccc;
  background-color: #fafafa;
  outline: none;
}

.dashboard_selectDropdown__BYT2C:focus {
  border-color: #b39ddb;
  box-shadow: 0 0 0 2px rgba(179, 157, 219, 0.25);
}

/* ================== Score blocks ================== */

/* Both charts use the same fixed inner height so the cards match */
.dashboard_pieChartBox__RQYh7,
.dashboard_trendChartBox__jUg4_ {
  height: 280px;
  width: 100%;
  display: flex;
  flex-direction: column;
}

/* Center the doughnut chart nicely with button below */
.dashboard_pieChartBox__RQYh7 {
  align-items: center;
  justify-content: center;
  gap: 16px;
}

.dashboard_viewScoresButtonWrapper__BEwiE {
  margin-top: 12px;
  text-align: center;
}

.dashboard_viewScoresButton__Igfqr {
  background-color: #e67e22;
  color: #ffffff;
  border-radius: 25px;
  padding: 8px 32px;
  font-weight: bold;
  border: none;
  cursor: pointer;
  font-size: 0.95rem;
  transition: background-color 0.2s ease, transform 0.1s ease;
}

.dashboard_viewScoresButton__Igfqr:hover {
  background-color: #cf6f1c;
  transform: translateY(-1px);
}

/* Let the trend chart fill its box (Recharts uses height: 100%) */
.dashboard_trendChartBox__jUg4_ {
  padding-top: 4px;
  justify-content: flex-start;
}

/* ================== Metrics sections ================== */

.dashboard_metricsSection__8ocWN {
  margin-top: 48px;
}

.dashboard_actionButtonWrapper__CpJxg {
  text-align: right;
  margin-bottom: 16px;
}

.dashboard_actionButtonStack__tRXYb {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 16px;
  flex-wrap: wrap;
}

/* Outlined button style (for actions / secondary) */
.dashboard_outlinedButton__HSXkx {
  border: 1px solid #6e3b80;
  background-color: transparent;
  color: #6e3b80;
  border-radius: 25px;
  font-weight: bold;
  padding: 8px 18px;
  cursor: pointer;
  font-size: 0.9rem;
  text-transform: none;
  transition: background-color 0.2s ease, color 0.2s ease,
    transform 0.1s ease;
}

.dashboard_outlinedButton__HSXkx:hover {
  background-color: rgba(110, 59, 128, 0.08);
  transform: translateY(-1px);
}

/* Primary purple button */
.dashboard_primaryButton__PSe3l {
  border: none;
  background-color: #6e3b80;
  color: #ffffff;
  border-radius: 25px;
  font-weight: bold;
  padding: 8px 18px;
  cursor: pointer;
  font-size: 0.9rem;
  text-transform: none;
  transition: background-color 0.2s ease, transform 0.1s ease;
}

.dashboard_primaryButton__PSe3l:hover {
  background-color: #5a2d6b;
  transform: translateY(-1px);
}

.dashboard_metricsTitle__enhX3 {
  color: #6e3b80;
  font-weight: bold;
  margin: 0;
}

.dashboard_sectionHeader__6Vkav {
  margin-top: 8px;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Download report wrapper */
.dashboard_reportDownloadWrapper__con4t {
  margin-top: 24px;
  margin-bottom: 32px;
  max-width: 400px;
}

/* ================== Empty state (Professional) ================== */

.dashboard_emptyChartsBox__lpmdm {
  margin-top: 16px;
  position: relative;
}

/* ✅ New premium empty state card */
.dashboard_emptyStateCard__A4ICC {
  border: 1px dashed rgba(110, 59, 128, 0.35);
  background: linear-gradient(
    180deg,
    rgba(110, 59, 128, 0.06),
    rgba(110, 59, 128, 0.02)
  );
  border-radius: 16px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  min-height: 240px;
}

.dashboard_emptyStateTitle__dVHjT {
  font-size: 1.05rem;
  font-weight: 800;
  color: #3d2350;
  margin: 0;
  text-align: center;
}

.dashboard_emptyStateSubtitle__ZfmqK {
  font-size: 0.92rem;
  color: #5a5a5a;
  margin: 0;
  text-align: center;
  max-width: 560px;
  line-height: 1.35;
}

.dashboard_emptyStateActions__Z6L7N {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}

.dashboard_emptyText__b2M1J {
  margin-top: 16px;
  text-align: center;
  font-size: 0.9rem;
  color: #555;
}

.dashboard_centeredButtonRow__vDvhp {
  margin-top: 16px;
  display: flex;
  justify-content: center;
}

/* ================== Social section ================== */

.dashboard_socialFilterWrapper__YAnPI {
  margin-bottom: 16px;
}

.dashboard_socialChartBox__mVnXq {
  height: 320px;
}

.dashboard_errorAlert__nK97V {
  margin-bottom: 16px;
  padding: 10px 12px;
  border-radius: 8px;
  background-color: #fdecea;
  color: #b71c1c;
  font-size: 0.9rem;
}

/* Empty social state */
.dashboard_socialEmptyTextBlock__jssWT {
  text-align: center;
  margin-top: 16px;
}

.dashboard_horizontalButtonRow__3OMTF {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

/* ================== Misc ================== */

/* Reuse for text under placeholders etc. */
.dashboard_emptyChartsBox__lpmdm p {
  margin: 0;
}

.monthrangefilter_filterBox__szmeD {
    margin-bottom: 16px;
  }
  
  .monthrangefilter_heading__rdZxN {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 8px;
  }
  
  .monthrangefilter_label__CEy9o {
    font-size: 0.9rem;
    margin-bottom: 4px;
  }
  
.filterScopePanel_sectionTitle__RZ8U4 {
    font-weight: bold;
    text-transform: uppercase;
  }
  
  .filterScopePanel_container__N1djD {
    margin-bottom: 16px;
  }
  
  .filterScopePanel_sectionWrapper__iClrr {
    margin-top: 10px;
    margin-bottom: 8px;
  }
  
/* Card shell */
.esgfilters_filterCard__lyJUS {
  border-radius: 16px;
  padding: 20px;
}

/* Header row */
.esgfilters_headerRow__714Q_ {
  margin-bottom: 4px;
}

.esgfilters_toolbarRight__Z1HH6 {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.esgfilters_toolbarGroup__lTeKv {
  background: rgba(249, 245, 255, 0.96);        /* soft lilac */
  border: 1px solid rgba(209, 213, 219, 0.8);
  padding: 8px 10px;
  border-radius: 14px;
}

.esgfilters_toolbarLabel__dSrgA {
  font-weight: 600;
  color: #6e3a81;                               /* brand purple */
  font-size: 0.85rem;
}

/* Segmented controls look */
.esgfilters_toggleGroup__TPeJ4 .MuiToggleButton-root {
  text-transform: none;
  padding: 6px 14px;
  border-radius: 999px !important;
  border: 1px solid rgba(209, 213, 219, 0.9);
  background-color: #ffffff;
  color: #4b5563;
}

/* unselected */
.esgfilters_toggleButton__YEMlL {
  background: #ffffff;
}

/* selected state – stronger, consistent with rest of app */
.esgfilters_toggleButtonSelected__j12gg {
  background: radial-gradient(circle at top left, #7a3c94 0, #5f2e73 100%) !important;
  color: #f9fafb !important;
  border-color: rgba(110, 58, 129, 0.95) !important;
  box-shadow: 0 8px 22px rgba(110, 58, 129, 0.25);
}

/* Divider between header and advanced */
.esgfilters_divider__g3tyG {
  margin: 12px 0 4px;
}

/* Advanced section */
.esgfilters_advanced__p1B36 {
  background: transparent;
}

.esgfilters_advancedSummary___E7tE {
  padding: 0;
  min-height: 40px;
}

.esgfilters_sectionTitle__HpAEI {
  font-weight: 700;
  color: #6e3a81;                               /* brand purple heading */
}

.esgfilters_advancedBody__i_SKX {
  padding-left: 0;
  padding-right: 0;
}

.esgfilters_group__l8v5N {
  margin-bottom: 18px;
}

.esgfilters_groupLabel__urEGL {
  font-size: 0.9rem;
  font-weight: 600;
  color: #6b7280;
  margin-bottom: 8px;
}

.esgfilters_advActions__4afu1 {
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}

/* Responsive polish */
@media (max-width: 899px) {
  .esgfilters_toolbarRight__Z1HH6 {
    justify-content: flex-start;
  }
}

/* primu-sustivate-nextjs-serverless/src/app/(DashboardLayout)/components/styles/chartcontainer.module.css */

/* ================= CONTAINER ================= */

.chartcontainer_container__D7ZNH {
  margin-bottom: 32px;
  border-radius: 16px;
  background: #ffffff;
  padding: 20px 24px 40px; /* extra bottom padding */
  box-sizing: border-box;
}

/* Header row (title + icon + right content) */
.chartcontainer_header__hf6s6 {
  margin-bottom: 16px;
}

/* ================= ICONS ================= */

/* Left header icon (black circle, white glyph) */
.chartcontainer_headerIcon__FHeT4 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background-color: #000000; /* black background */
}

/* Any SVG inside gets white stroke/fill */
.chartcontainer_headerIcon__FHeT4 svg {
  color: #ffffff;
  stroke: #ffffff;
  font-size: 20px;
}

/* Calendar icon pill on the right side */
.chartcontainer_iconPill__tSSDI {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background-color: #000000; /* black background */
}

/* Calendar glyph itself is white */
.chartcontainer_calendarIcon__4Z5Dm {
  color: #ffffff;
}

/* ================= DATE BADGE ================= */

.chartcontainer_dateBox__VWrBK {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 4px 12px 4px 10px;
  background-color: #fafafa;
}

.chartcontainer_dateText__n_Qw3 {
  color: #666666;
  font-size: 0.85rem;
}

/* ================= CONTENT DIVIDER ================= */

.chartcontainer_divider__OEnsp {
  border-bottom: 1px solid #e0e0e0;
  margin-bottom: 16px;
}

/* ================= CHART AREA ================= */

/* Wrapper around each chart */
.chartcontainer_chartContent__GFto7 {
  width: 100%;
  min-height: 320px;      /* instead of fixed height 350 */
  padding-bottom: 16px;   /* safety gap under x-axis labels */
  box-sizing: border-box;
  position: relative;     /* lets children do abs positioning if needed */
}

/* ================= EMPTY STATE ================= */

.chartcontainer_emptyChartPlaceholder__kzyTG {
  border: 1px dashed #ccc;
  border-radius: 12px;
  height: 400px;
  background: linear-gradient(
    135deg,
    #f9f9f9 25%,
    #f3f3f3 25%,
    #f3f3f3 50%,
    #f9f9f9 50%,
    #f9f9f9 75%,
    #f3f3f3 75%,
    #f3f3f3
  );
  background-size: 40px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.chartcontainer_emptyChartText__4NPQW {
  color: #aaa;
}

/* primu-sustivate-nextjs-serverless/src/components/placeholders/styles/chartsempty.module.css */

.chartsempty_emptyContainer__3Ch6U {
  width: 100%;
  min-height: 220px;          /* enough room to look like a chart */
  height: 100%;               /* grow only as much as the parent needs */
  box-sizing: border-box;

  border: 1px dashed #e0e0e0;
  border-radius: 12px;
  background-color: #fafafa;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 24px;              /* keep text away from edges */
}

.chartsempty_emptyText__BBNID {
  color: #999;
  font-weight: 500;
  text-align: center;
  line-height: 1.4;
}

/* Optional: on very small screens, make it a bit shorter */
@media (max-width: 600px) {
  .chartsempty_emptyContainer__3Ch6U {
    min-height: 160px;
    padding: 16px;
  }
}

.SocialFrequencyToggle_pillGroup__wkVNW {
    border-radius: 999px;
    border: 1px solid #c89fdb;
    overflow: hidden;
    background: #fff;
  }
  
  .SocialFrequencyToggle_pillBtn__wAoEP {
    text-transform: none !important;
    padding: 6px 16px !important;
    border-radius: 999px !important;
    background: transparent;
    color: #6e3b80 !important;
    font-weight: 600 !important;
  }
  
  .SocialFrequencyToggle_pillBtn__wAoEP:hover {
    background: rgba(110, 59, 128, 0.06) !important;
  }
  
  .SocialFrequencyToggle_active__lRp49 {
    background: #6e3b80 !important;
    color: #fff !important;
  }
  
/* Popper root */
.MonthPicker_pickerPopper__1NRCK .MuiPaper-root {
    border: 1px solid #ead8f3;
    box-shadow: 0 6px 24px rgba(110, 59, 128, 0.15);
    border-radius: 14px;
    overflow: hidden;
  }
  
  /* Layout padding */
  .MonthPicker_pickerPopper__1NRCK .MuiPickersLayout-root {
    padding: 8px 8px 0 8px;
  }
  
  /* Year selector buttons */
  .MonthPicker_pickerPopper__1NRCK .MuiPickersYear-yearButton {
    border-radius: 10px;
  }
  .MonthPicker_pickerPopper__1NRCK .MuiPickersYear-yearButton.Mui-selected {
    background: #6e3b80 !important;
    color: #fff !important;
  }
  .MonthPicker_pickerPopper__1NRCK .MuiPickersYear-yearButton:focus-visible {
    outline: 2px solid rgba(110, 59, 128, 0.35);
  }
  
  /* Month grid buttons */
  .MonthPicker_pickerPopper__1NRCK .MuiPickersMonth-monthButton {
    border-radius: 10px;
  }
  .MonthPicker_pickerPopper__1NRCK .MuiPickersMonth-monthButton.Mui-selected {
    background: #6e3b80 !important;
    color: #fff !important;
  }
  .MonthPicker_pickerPopper__1NRCK .MuiPickersMonth-monthButton:focus-visible {
    outline: 2px solid rgba(110, 59, 128, 0.35);
  }
  
  /* Action bar ("Clear", "This month") */
  .MonthPicker_actionBar__xY2xT .MuiButton-textPrimary {
    color: #6e3b80 !important;
    text-transform: none !important;
    font-weight: 600;
  }
  
.SocialFilterBar_toolbar__KtBSX {
    background: #f7eefb; /* soft lilac */
    border: 1px solid #ead8f3;
    border-radius: 16px;
    padding: 12px;
  }
  
  .SocialFilterBar_row__Q2uX8 {
    margin: 0;
  }
  
  .SocialFilterBar_toggleWrap__aWSwk {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  
  .SocialFilterBar_inlineHint__KfsTv {
    color: #6e3b80;
    opacity: 0.7;
  }
  
  /* Consistent disabled look without odd spacing */
  .SocialFilterBar_disabledField__nfP_C .MuiInputBase-root.Mui-disabled {
    background: #eeeeee;
    border-radius: 10px;
  }
  .SocialFilterBar_disabledField__nfP_C .MuiOutlinedInput-notchedOutline {
    border-color: #e0e0e0 !important;
  }
  .SocialFilterBar_disabledField__nfP_C .MuiFormLabel-root.Mui-disabled {
    color: #9e9e9e;
  }
  
  /* Tame the native placeholder mask for <input type="month"> (WebKit/Chromium) */
  .SocialFilterBar_monthField__kC_KX input::-webkit-datetime-edit {
    color: rgba(0, 0, 0, 0.45); /* make the dashes faint */
  }
  .SocialFilterBar_monthField__kC_KX input:focus::-webkit-datetime-edit {
    color: inherit; /* normal color on focus */
  }
  /* Tighten internal spacing of the month control */
  .SocialFilterBar_monthField__kC_KX input::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  
/* primu-sustivate-nextjs-serverless/src/app/(DashboardLayout)/dashboard/environment/environment.module.css */

/* ========================== Page Layout & Shell ========================== */

.environment_environmentPage__mgHL0 {
  min-height: 100vh;
  padding: 40px 24px 60px;
  background:
    radial-gradient(circle at top left, #fdfbff 0, #f3ebff 32%, #f9f5ff 100%);
  font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: #020617;
  box-sizing: border-box;
}

.environment_environmentContainer__zEeSF {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* =============================== Header Row ============================== */

.environment_headerRow__rYRgi {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(260px, 1fr);
  grid-column-gap: 32px;
  column-gap: 32px;
  grid-row-gap: 12px;
  row-gap: 12px;
  align-items: flex-start;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.3);
}

.environment_headerSection__voc8M {
  max-width: 640px;
}

/* Back button (ghost-style) */

.environment_backButton__T67aT {
  border: none;
  background: transparent;
  color: #6e3a81;
  font-size: 13px;
  padding: 0;
  margin-bottom: 8px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.environment_backButton__T67aT:hover {
  text-decoration: underline;
}

.environment_backIcon__L__bw {
  font-size: 16px;
}

/* Heading */

.environment_heading__lBMu2 {
  font-family: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
  margin: 0 0 10px;
}

.environment_highlightText__xUVbC {
  color: #cc704b;
}

.environment_yearSuffix__AgfDC {
  font-size: 18px;
  font-weight: 500;
  color: #4b5563;
}

.environment_subtext__c_r6h {
  font-size: 14px;
  color: #4b425e;
  line-height: 1.7;
  margin: 0;
}

/* Header right meta + export */

.environment_headerRight__eVg5c {
  display: inline-grid;
  justify-self: end;
  grid-auto-rows: min-content;
  row-gap: 10px;
  padding: 10px 16px;
  border-radius: 16px;
  background: rgba(249, 250, 251, 0.9);
  border: 1px solid rgba(209, 213, 219, 0.9);
}

.environment_billingMeta__rsTg_ {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.environment_metaLabel__OJW2N {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #9ca3af;
}

.environment_metaValue__GcWIN {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
}

.environment_exportButton__nbSeX {
  margin-top: 4px !important;
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  background-color: #6e3a81 !important;
}

.environment_exportButton__nbSeX:hover {
  background-color: #5e3470 !important;
}

/* ========================== Status Banner ========================== */

.environment_statusBanner__pLGig {
  margin-top: 4px;
  border-radius: 18px;
  padding: 14px 18px;
  background: linear-gradient(
    90deg,
    rgba(110, 58, 129, 0.06),
    rgba(110, 58, 129, 0.015)
  );
  border: 1px solid rgba(110, 58, 129, 0.16);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.environment_statusBannerLeft__hsfrk {
  display: flex;
  align-items: center;
  gap: 12px;
}

.environment_statusPill__GtJbd {
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #6e3a81;
  color: #f9fafb;
  box-shadow: 0 8px 18px rgba(110, 58, 129, 0.35);
}

.environment_statusText__9jDMd {
  font-size: 13px;
  color: #111827;
}

/* =========================== Filter Section ============================ */

.environment_filterSection__0D_40 {
  margin-top: 4px;
}

/* =========================== Metrics Section ============================ */

.environment_metricsSection__EJhHK {
  margin-top: 10px;
}

/* For chart loaders used by dynamic imports */

.environment_chartLoaderBox__6Mv7d {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 28px 0;
}

/* =========================== Loading Styles ============================ */
/* (Used by other pages that import this module, e.g. Social) */

.environment_loadingBox__oiQJk {
  min-height: 220px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.environment_loadingText__52cFA {
  font-size: 13px;
  color: #6b7280;
}

/* ============================= Error / Fallback ========================= */
/* Not currently used on this page but kept for reuse consistency */

.environment_fullPageCenter__7Dc98 {
  min-height: 100vh;
  padding: 32px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f5ff;
}

.environment_errorCard__L6aHO {
  max-width: 420px;
  width: 100%;
  border-radius: 24px;
  padding: 24px 22px 20px;
  background: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.environment_errorTitle__kMD81 {
  font-size: 16px;
  font-weight: 600;
  color: #b91c1c;
  margin: 0 0 6px;
}

.environment_errorBody__Y6wPG {
  font-size: 13px;
  color: #4b5563;
  margin: 0;
}

.environment_errorActions__T61O7 {
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
}

.environment_refreshButton__07LNu {
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
}

/* =============================== Responsive ================================ */

@media (max-width: 1024px) {
  .environment_environmentPage__mgHL0 {
    padding: 32px 16px 40px;
  }

  .environment_headerRow__rYRgi {
    grid-template-columns: minmax(0, 1fr);
  }

  .environment_headerRight__eVg5c {
    justify-self: stretch;
    align-items: flex-start;
  }
}

@media (max-width: 768px) {
  .environment_heading__lBMu2 {
    font-size: 28px;
  }

  .environment_statusBanner__pLGig {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .environment_heading__lBMu2 {
    font-size: 24px;
  }
}

.EnvironmentalReportDownload_wrapper__xRRDR {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  
  .EnvironmentalReportDownload_toggleRow___MMGw {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  
  .EnvironmentalReportDownload_primaryButton__HCeHG {
    background-color: #4b256b !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    text-transform: none !important;
    border-radius: 8px !important;
    padding: 0.6rem 1rem !important;
    font-size: 0.9rem !important;
    line-height: 1.4 !important;
  }
  
  .EnvironmentalReportDownload_panel__0rUgK {
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-radius: 12px;
    background-color: #ffffff;
    box-shadow:
      0 10px 15px -3px rgba(0, 0, 0, 0.07),
      0 4px 6px -4px rgba(0, 0, 0, 0.07);
    padding: 1rem 1rem 1.25rem;
    max-width: 400px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  
  .EnvironmentalReportDownload_header__6Vg6C {
    display: flex;
    flex-direction: column;
  }
  
  .EnvironmentalReportDownload_title__6eXyE {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    color: #111827;
    margin: 0 0 0.25rem 0;
  }
  
  .EnvironmentalReportDownload_desc__dVLtw {
    font-size: 0.85rem;
    line-height: 1.4;
    color: #4b5563;
    margin: 0;
  }
  
  .EnvironmentalReportDownload_formSection__aFiAi {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }
  
  .EnvironmentalReportDownload_label___GybH {
    font-size: 0.8rem;
    font-weight: 500;
    color: #374151;
    display: block;
  }
  
  .EnvironmentalReportDownload_yearField__0HufW {
    /* we rely mostly on MUI defaults */
  }
  
  .EnvironmentalReportDownload_yearHelper__qahOM {
    font-size: 0.75rem;
    line-height: 1.2;
    color: #6b7280;
    margin-top: 0.25rem;
  }
  
  .EnvironmentalReportDownload_metricsGroup__hB4Eb {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
  
  .EnvironmentalReportDownload_metricsLabel__66u17 {
    font-size: 0.8rem;
    font-weight: 500;
    color: #374151;
  }
  
  .EnvironmentalReportDownload_metricItem__pgErU {
    font-size: 0.9rem;
    line-height: 1.4;
    color: #111827;
    align-items: flex-start;
  }
  
  .EnvironmentalReportDownload_tip__cF5r4 {
    font-size: 0.75rem;
    line-height: 1.2;
    color: #6b7280;
  }
  
  .EnvironmentalReportDownload_actionsRow____zym {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
  }
  
  .EnvironmentalReportDownload_cancelButton__13rT3 {
    text-transform: none !important;
    border-radius: 8px !important;
    font-size: 0.9rem !important;
    line-height: 1.4 !important;
  }
  
  .EnvironmentalReportDownload_statusError__YI1iE {
    font-size: 0.8rem;
    line-height: 1.4;
    font-weight: 500;
  }
  
  .EnvironmentalReportDownload_statusSuccess__QJ8rF {
    font-size: 0.8rem;
    line-height: 1.4;
    font-weight: 500;
  }
  
/* src/app/(DashboardLayout)/dashboard/score-history/scorehistory.module.css */

/* ========================== Page Layout & Shell ========================== */

.scorehistory_historyPage__keIcK {
  min-height: 100vh;
  padding: 40px 24px 60px;
  background:
    radial-gradient(circle at top left, #fdfbff 0, #f3ebff 32%, #f9f5ff 100%);
  font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: #020617;
  box-sizing: border-box;
}

.scorehistory_historyContainer__eoOl6 {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* =============================== Header Row ============================== */

.scorehistory_headerRow__YpJjR {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(260px, 1fr);
  grid-column-gap: 32px;
  column-gap: 32px;
  grid-row-gap: 12px;
  row-gap: 12px;
  align-items: flex-start;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.3);
}

.scorehistory_headerSection__GOFf9 {
  max-width: 640px;
}

/* Back button as subtle ghost button */

.scorehistory_backButton__NfPsU {
  border: none;
  background: transparent;
  color: #6e3a81;
  font-size: 13px;
  padding: 0;
  margin-bottom: 8px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.scorehistory_backButton__NfPsU:hover {
  text-decoration: underline;
}

.scorehistory_heading__BNz_h {
  font-family: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
  margin: 0 0 10px;
}

.scorehistory_highlightText__O5Zh_ {
  color: #cc704b;
}

.scorehistory_subtext__2jzHv {
  font-size: 14px;
  color: #4b425e;
  line-height: 1.7;
  margin: 0;
}

.scorehistory_submeta__n1LqO {
  margin-top: 8px;
  font-size: 13px;
  color: #4b5563;
}

.scorehistory_submeta__n1LqO span {
  font-weight: 600;
}

/* Header right meta card */

.scorehistory_headerRight__jF7hu {
  display: inline-grid;
  justify-self: end;
  grid-auto-rows: min-content;
  row-gap: 10px;
  padding: 10px 16px;
  border-radius: 16px;
  background: rgba(249, 250, 251, 0.9);
  border: 1px solid rgba(209, 213, 219, 0.9);
}

.scorehistory_billingMeta__7ybW4 {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.scorehistory_metaLabel__4Gb6Y {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #9ca3af;
}

.scorehistory_metaValue__x8_lT {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
}

/* ========================== Status Banner ========================== */

.scorehistory_statusBanner__Ucof8 {
  margin-top: 4px;
  border-radius: 18px;
  padding: 14px 18px;
  background: linear-gradient(
    90deg,
    rgba(110, 58, 129, 0.06),
    rgba(110, 58, 129, 0.015)
  );
  border: 1px solid rgba(110, 58, 129, 0.16);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.scorehistory_statusBannerLeft__UhyEg {
  display: flex;
  align-items: center;
  gap: 12px;
}

.scorehistory_statusPill__ggK5w {
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #6e3a81;
  color: #f9fafb;
  box-shadow: 0 8px 18px rgba(110, 58, 129, 0.35);
}

.scorehistory_statusText__4qhsx {
  font-size: 13px;
  color: #111827;
}

/* ============================ Charts Section ============================ */

.scorehistory_chartsSection__SQb_q {
  margin-top: 8px;
}

.scorehistory_chartGrid__B7szv {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.2fr);
  grid-gap: 20px;
  gap: 20px;
}

.scorehistory_chartCard___ziuB {
  border-radius: 22px;
  background-color: #ffffff;
  border: 1px solid rgba(229, 231, 235, 0.96);
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
  padding: 18px 18px 14px;
  display: flex;
  flex-direction: column;
  min-height: 260px;
}

.scorehistory_chartHeader__6l0Pi {
  margin-bottom: 8px;
}

.scorehistory_chartTitle__ph8GU {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  color: #111827;
}

.scorehistory_chartSubtitle__RX_Gb {
  margin: 0;
  font-size: 12px;
  color: #6b7280;
}

.scorehistory_chartBody__7mQvD {
  margin-top: 6px;
  flex: 1 1;
}

/* Chart loader fallback */

.scorehistory_chartLoaderBox__jIXOY {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 28px 0;
}

/* Loading / error states */

.scorehistory_sectionCardLoading__xp_p2,
.scorehistory_sectionCardError__pO4Xv {
  border-radius: 18px;
  padding: 18px 16px;
  border: 1px dashed rgba(148, 163, 184, 0.7);
  background-color: #f9fafb;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: #4b5563;
}

.scorehistory_errorTitleSmall__FAQNm {
  font-size: 14px;
  font-weight: 600;
  color: #b91c1c;
}

.scorehistory_errorBodySmall__wmY_1 {
  font-size: 13px;
  color: #4b5563;
}

/* Empty state */

.scorehistory_emptyState__vXgli {
  border-radius: 20px;
  padding: 26px 20px;
  border: 1px dashed rgba(148, 163, 184, 0.8);
  background-color: #f9fafb;
  text-align: left;
}

.scorehistory_emptyTitle__ASKSQ {
  font-weight: 600;
  margin-bottom: 4px;
}

.scorehistory_emptyBody__ytPwU {
  font-size: 13px;
  color: #4b5563;
  margin-bottom: 10px;
}

.scorehistory_primaryCta__iLpp_ {
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 7px 16px !important;
  font-size: 13px !important;
}

/* ==================== Assessments (List of Cards) ==================== */

.scorehistory_assessmentsSection__jC4lw {
  margin-top: 10px;
}

.scorehistory_sectionHeading__lFgvR {
  font-size: 18px;
  font-weight: 700;
  color: #111827;
  margin: 0 0 4px;
}

.scorehistory_sectionSubcopy__ADGtL {
  font-size: 13px;
  color: #4b5563;
  margin: 0 0 10px;
}

.scorehistory_assessmentList__9xGfH {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.scorehistory_assessmentCard__wRGM5 {
  border-radius: 20px;
  padding: 16px 16px 14px;
  background-color: #ffffff;
  border: 1px solid rgba(229, 231, 235, 0.96);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

.scorehistory_assessmentHeader__QfcZd {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.scorehistory_assessmentLabel___6Jsv {
  font-size: 12px;
  font-weight: 600;
  color: #6e3a81;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin: 0 0 2px;
}

.scorehistory_assessmentDate__QKgiB {
  font-size: 14px;
  font-weight: 600;
  color: #111827;
  margin: 0;
}

.scorehistory_assessmentMeta__oSSt3 {
  text-align: right;
}

.scorehistory_assessmentMetaLabel__hnaN_ {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #9ca3af;
  display: block;
}

.scorehistory_assessmentMetaValue__uzezx {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
}

/* Individual score cards */

.scorehistory_scoreCard__DV_We {
  border-radius: 18px;
  padding: 12px 12px 10px;
  background-color: #f9fafb;
  border: 1px solid rgba(229, 231, 235, 0.96);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  outline: none;
}

.scorehistory_scoreCard__DV_We:focus-visible {
  outline: 2px solid #6e3a81;
  outline-offset: 2px;
}

.scorehistory_scoreIconWrap__OzRZH {
  border-radius: 999px;
  background-color: #ffffff;
  padding: 4px;
  border: 1px solid rgba(229, 231, 235, 0.96);
}

.scorehistory_scoreLabel__DZZkk {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
  margin: 4px 0 0;
}

.scorehistory_scoreValue__48Kos {
  font-size: 18px;
  font-weight: 700;
  color: #111827;
  margin: 0;
}

/* ============================= Error / Loading ============================ */

.scorehistory_fullPageCenter__57DG9 {
  min-height: 100vh;
  padding: 32px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f5ff;
}

.scorehistory_errorCard__nm0CY {
  max-width: 420px;
  width: 100%;
  border-radius: 24px;
  padding: 24px 22px 20px;
  background: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.scorehistory_errorTitle__7mP3k {
  font-size: 16px;
  font-weight: 600;
  color: #b91c1c;
  margin: 0 0 6px;
}

.scorehistory_errorBody__lMxV2 {
  font-size: 13px;
  color: #4b5563;
  margin: 0;
}

.scorehistory_errorActions__dAGRa {
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
}

.scorehistory_refreshButton__hfuMZ {
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
}

/* =============================== Responsive ================================ */

@media (max-width: 1024px) {
  .scorehistory_historyPage__keIcK {
    padding: 32px 16px 40px;
  }

  .scorehistory_headerRow__YpJjR {
    grid-template-columns: minmax(0, 1fr);
  }

  .scorehistory_headerRight__jF7hu {
    justify-self: stretch;
    align-items: flex-start;
  }

  .scorehistory_chartGrid__B7szv {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 768px) {
  .scorehistory_heading__BNz_h {
    font-size: 28px;
  }

  .scorehistory_statusBanner__Ucof8 {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .scorehistory_heading__BNz_h {
    font-size: 24px;
  }
}

/* Card shell for organisation block – matches other inner cards */

.profileOrg_orgCard__x2_HF {
  border-radius: 20px;
  border: 1px solid rgba(229, 231, 235, 0.96);
  background-color: #ffffff;
  box-shadow: 0 16px 44px rgba(15, 23, 42, 0.08);
  padding: 20px 20px 18px;
}

/* Header */

.profileOrg_orgHeader__iZoPA {
  margin-bottom: 14px;
}

.profileOrg_orgTitle__1zZEq {
  font-size: 15px;
  font-weight: 600;
  color: #111827;
  margin-bottom: 2px;
}

.profileOrg_orgSubtitle__RHG7C {
  font-size: 12px;
  color: #6b7280;
  line-height: 1.6;
}

/* Loading */

.profileOrg_orgLoading__Mm3qY {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 120px;
}

/* Alerts */

.profileOrg_fullWidthAlert__uwqYw {
  width: 100%;
}

.profileOrg_infoAlert__jJJV5 {
  font-size: 13px;
}

/* ======================= Inputs – rounded & soft ======================= */

.profileOrg_field__AhGIu {
  background-color: #f9fafb;
  border-radius: 999px; /* wrapper */
}

.profileOrg_fieldDisabled__LKaZB {
  background-color: #f9fafb;
  border-radius: 999px;
}

/* root of MUI OutlinedInput */
.profileOrg_outlinedInputRoot__WSpn_ {
  border-radius: 999px !important;
  background-color: #f9fafb;
}

/* round the actual outline */
.profileOrg_outlinedInputRoot__WSpn_ fieldset {
  border-radius: 999px;
  border-color: #e5e7eb;
}

/* hover state */
.profileOrg_outlinedInputRoot__WSpn_:hover fieldset {
  border-color: #d1d5db;
}

/* focus state – subtle brand purple */
.profileOrg_outlinedInputRoot__WSpn_.profileOrg_Mui-focused__wCu8j fieldset,
.profileOrg_outlinedInputRoot__WSpn_:focus-within fieldset {
  border-color: #6e3b80;
}

/* labels */

.profileOrg_label__Xmgc0 {
  color: #6b7280 !important;
  font-size: 0.9rem !important;
}

.profileOrg_labelDisabled__AtkQ2 {
  color: #9ca3af !important;
}

/* =========================== Actions row =========================== */

.profileOrg_actionsRow__glCgB {
  display: flex;
  justify-content: flex-end;
}

/* Primary CTA */

.profileOrg_saveButton__ZdydA {
  text-transform: none !important;
  font-weight: 600 !important;
  border-radius: 999px !important;
  padding: 8px 22px !important;
  background: linear-gradient(135deg, #6e3b80, #b35b3c) !important;
  color: #f9fafb !important;
  box-shadow: 0 14px 30px rgba(110, 58, 129, 0.28);
}

.profileOrg_saveButton__ZdydA:disabled {
  background: #d1d5db !important;
  color: #f9fafb !important;
  box-shadow: none !important;
}

.profileOrg_saveButton__ZdydA:hover:not(:disabled) {
  background: linear-gradient(135deg, #5d316d, #9c4f35) !important;
}

/* Responsive */

@media (max-width: 480px) {
  .profileOrg_orgCard__x2_HF {
    padding: 18px 16px 16px;
  }
}

/* unauthorized.module.css */
/* src/app/(DashboardLayout)/dashboard/social/social.module.css */

/* ========================== Page Layout & Shell ========================== */

.social_socialPage__Y0q4a {
  min-height: 100vh;
  padding: 40px 24px 60px;
  background:
    radial-gradient(circle at top left, #fdfbff 0, #f3ebff 32%, #f9f5ff 100%);
  font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: #020617;
  box-sizing: border-box;
}

.social_socialContainer__01irB {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* =============================== Header Row ============================== */

.social_headerRow__PGr_2 {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(260px, 1fr);
  grid-column-gap: 32px;
  column-gap: 32px;
  grid-row-gap: 12px;
  row-gap: 12px;
  align-items: flex-start;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.3);
}

.social_headerSection__qYJgc {
  max-width: 640px;
}

/* Back button (ghost) */

.social_backButton__qejud {
  border: none;
  background: transparent;
  color: #6e3a81;
  font-size: 13px;
  padding: 0;
  margin-bottom: 8px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.social_backButton__qejud:hover {
  text-decoration: underline;
}

.social_backIcon__0S8J1 {
  font-size: 16px;
}

/* Heading */

.social_heading__ukf_0 {
  font-family: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  font-size: 34px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
  margin: 0 0 10px;
}

.social_highlightText__paRC7 {
  color: #cc704b;
}

.social_yearSuffix__93A6I {
  font-size: 18px;
  font-weight: 500;
  color: #4b5563;
}

.social_subtext__IV2pY {
  font-size: 14px;
  color: #4b425e;
  line-height: 1.7;
  margin: 0;
}

/* Header right meta + export */

.social_headerRight__NsOxn {
  display: inline-grid;
  justify-self: end;
  grid-auto-rows: min-content;
  row-gap: 10px;
  padding: 10px 16px;
  border-radius: 16px;
  background: rgba(249, 250, 251, 0.9);
  border: 1px solid rgba(209, 213, 219, 0.9);
}

.social_billingMeta__pDI9z {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.social_metaLabel__56_c0 {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #9ca3af;
}

.social_metaValue__uSySf {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
}

.social_exportButton__TEO1Q {
  margin-top: 4px !important;
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  background-color: #6e3a81 !important;
}

.social_exportButton__TEO1Q:hover {
  background-color: #5e3470 !important;
}

/* ========================== Status Banner ========================== */

.social_statusBanner__sO7iR {
  margin-top: 4px;
  border-radius: 18px;
  padding: 14px 18px;
  background: linear-gradient(
    90deg,
    rgba(110, 58, 129, 0.06),
    rgba(110, 58, 129, 0.015)
  );
  border: 1px solid rgba(110, 58, 129, 0.16);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.social_statusBannerLeft__BnqKt {
  display: flex;
  align-items: center;
  gap: 12px;
}

.social_statusPill__25SFl {
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #6e3a81;
  color: #f9fafb;
  box-shadow: 0 8px 18px rgba(110, 58, 129, 0.35);
}

.social_statusText__FufOU {
  font-size: 13px;
  color: #111827;
}

/* =========================== Filter Section ============================ */

.social_filterSection__nLl2A {
  margin-top: 4px;
}

/* Error banner */

.social_errorBanner__DKusw {
  margin-top: 8px;
}

/* =========================== Metrics Section ============================ */

/* space below the header + filters, similar to environment .metricsSection */
.social_metricsSection__yuon5 {
  margin-top: 32px;
  margin-bottom: 48px;
}

/* Optional grid spacing for KPI row */
.social_kpiGrid__PCMv8 {
  margin-bottom: 16px;
}

/* KPI row layout (if used inside SocialKpis) */
.social_kpiRow__EIue3 {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.social_kpiCard__kP2_X {
  flex: 1 1 250px;
  min-width: 220px;
  background-color: #ffffff;
  border-radius: 6px;
  border: 1px solid rgba(110, 59, 128, 0.15);
  box-shadow: 0 2px 4px rgba(110, 59, 128, 0.15);
  padding: 16px;
}

.social_kpiLabel__yHcRv {
  color: #4b4761;
  font-size: 0.85rem;
  font-weight: 500;
  margin-bottom: 6px;
}

.social_kpiValue__1NAAw {
  color: #000;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.2;
}

/* Chart body inside DashboardCard */
.social_chartBody__mbrpB {
  padding: 16px;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* For charts with "no data" states */
.social_noDataCentered__NCLRf {
  flex: 1 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #4b4761;
  font-size: 0.9rem;
  text-align: center;
}

/* Shared chart loader */
.social_chartLoaderBox__dabqk {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 28px 0;
}

/* ========================== Empty / CTA State ========================== */

.social_emptyState__S_CUM {
  border-radius: 20px;
  padding: 26px 20px;
  border: 1px dashed rgba(148, 163, 184, 0.8);
  background-color: #f9fafb;
  text-align: center;
  margin-top: 16px;
}

.social_emptyTitle__6Zfgb {
  font-weight: 600;
  margin-bottom: 4px;
}

.social_emptyBody__Wv7Q2 {
  font-size: 13px;
  color: #4b5563;
  margin-bottom: 10px;
}

.social_emptyCtas__lzvkE {
  margin-top: 6px;
}

.social_primaryCta__mwKIU {
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 7px 16px !important;
  font-size: 13px !important;
}

.social_secondaryCta__Oyl3X {
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 7px 16px !important;
  font-size: 13px !important;
}

/* ============================= Error / Loading ============================ */

.social_fullPageCenter__qLGhk {
  min-height: 100vh;
  padding: 32px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f5ff;
}

.social_errorCard__bv0yP {
  max-width: 420px;
  width: 100%;
  border-radius: 24px;
  padding: 24px 22px 20px;
  background: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.social_errorTitle__YH5ve {
  font-size: 16px;
  font-weight: 600;
  color: #b91c1c;
  margin: 0 0 6px;
}

.social_errorBody__3w57o {
  font-size: 13px;
  color: #4b5563;
  margin: 0;
}

.social_errorActions__tSXW7 {
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
}

.social_refreshButton__YweFC {
  text-transform: none !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
}

/* =============================== Responsive ================================ */

@media (max-width: 1024px) {
  .social_socialPage__Y0q4a {
    padding: 32px 16px 40px;
  }

  .social_headerRow__PGr_2 {
    grid-template-columns: minmax(0, 1fr);
  }

  .social_headerRight__NsOxn {
    justify-self: stretch;
    align-items: flex-start;
  }
}

@media (max-width: 768px) {
  .social_heading__ukf_0 {
    font-size: 28px;
  }

  .social_statusBanner__sO7iR {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .social_heading__ukf_0 {
    font-size: 24px;
  }
}

.HireTurnoverForm_formRoot__o_8iw {
    display: block;
  }
  
  .HireTurnoverForm_formTitle__4rCXr {
    color: #6E3B80;
    font-weight: 700;
    margin-bottom: 12px;
  }
  
  .HireTurnoverForm_stack__MoDIK {
    width: 100%;
  }
  
  .HireTurnoverForm_field__y_myY {
    /* keep fields consistent height and radius with your design system */
  }
  
  .HireTurnoverForm_actions__8VmIQ {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
  }
  
  .HireTurnoverForm_submitButton__hy7D7 {
    text-transform: none;
    border-radius: 24px;
    padding: 8px 20px;
    background-color: #6E3B80 !important;
  }
  
  .HireTurnoverForm_submitButton__hy7D7:hover {
    background-color: #5a316d !important;
  }
  
.BenefitsForm_formRoot___XIhG {
  display: block;
}

.BenefitsForm_formTitle__aK1Q_ {
  color: #6E3B80;
  font-weight: 700;
  margin-bottom: 12px;
}

.BenefitsForm_stack__AS_ji {
  width: 100%;
}

.BenefitsForm_field__twJ4C {
  /* keep fields consistent height and radius with your design system */
}

.BenefitsForm_actions__SNwAB {
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}

.BenefitsForm_submitButton__HH_od {
  text-transform: none;
  border-radius: 24px;
  padding: 8px 20px;
  background-color: #6E3B80 !important;
}

.BenefitsForm_submitButton__HH_od:hover {
  background-color: #5a316d !important;
}

.ParentalLeaveForm_formRoot__Ozewq {
    display: block;
  }
  
  .ParentalLeaveForm_formTitle__FwmcW {
    color: #6E3B80;
    font-weight: 700;
    margin-bottom: 12px;
  }
  
  .ParentalLeaveForm_stack__uDCOx {
    width: 100%;
  }
  
  .ParentalLeaveForm_field__BGYwe {
    /* keep fields consistent height and radius with your design system */
  }
  
  .ParentalLeaveForm_actions__NHTkj {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
  }
  
  .ParentalLeaveForm_submitButton__5JKjq {
    text-transform: none;
    border-radius: 24px;
    padding: 8px 20px;
    background-color: #6E3B80 !important;
  }
  
  .ParentalLeaveForm_submitButton__5JKjq:hover {
    background-color: #5a316d !important;
  }
  
.chartStyles_loadingBox__KEL_e {
    padding: 24px;
    text-align: center;
  }
  
  .chartStyles_loadingText__wERuw {
    margin-top: 8px;
  }
  
  .chartStyles_avatar__RSBbZ {
    background-color: #111;
    width: 32px;
    height: 32px;
  }
  
  .chartStyles_icon__uT630 {
    color: #fff;
  }
  
/* primu-sustivate-nextjs-serverless/src/app/(DashboardLayout)/components/styles/chartStyles.module.css */

/* Wrapper specific to WasteGeneratedChart */
.chartStyles_chartWrapperWaste__2C481 {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 4px 0 32px; /* ⬅️ extra space at the bottom of the card */
  }
  
  /* Legend row above the chart */
  .chartStyles_chartLegendRow__AFtw7 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    align-items: center;
    justify-content: flex-start;
  }
  
  /* Single legend item */
  .chartStyles_legendItem__yUbjg {
    display: inline-flex;
    align-items: center;
    gap: 6px;
  }
  
  /* Color box */
  .chartStyles_legendSwatch__yKry2 {
    width: 10px;
    height: 10px;
    border-radius: 2px;
  }
  
  /* Legend label text */
  .chartStyles_legendLabel__LzyjP {
    font-size: 13px;
    color: #111827;
  }
  
  /* Chart area itself */
  .chartStyles_chartInnerWaste__Q9z0h {
    width: 100%;
    height: 320px; /* enough height so the bottom doesn’t feel cramped */
  }
  
  /* You already had these, but just in case */
  .chartStyles_loadingBox__r98gY {
    min-height: 260px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    justify-content: center;
  }
  
  .chartStyles_loadingText__GLp9h {
    font-size: 14px;
    color: #4b5563;
  }
  
