/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].rules[1].use[1]!./src/styles.scss?ngGlobalStyle ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&family=DM+Serif+Text&display=swap);
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].rules[1].use[1]!./src/styles.scss?ngGlobalStyle (1) ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;600;700;800&display=swap);
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].rules[1].use[1]!./src/styles.scss?ngGlobalStyle (2) ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ACS Chapter Portal Global Styles */
:root {
  --acs-primary-blue: #0F2144;
  --acs-navy-blue: #1A3875;
  --acs-dark-steel: #5B7785;
  --acs-steel-blue: #8AA3B0;
  --acs-light-blue: #C4D1D7;
  --acs-pale-blue: #D6DFE4;
  --acs-digital-red: #E91F00;
  --acs-plum: #492436;
  --acs-light-plum: #765C69;
  --acs-pale-plum: #ECC8C8;
  --acs-pale-gold: #FEF6E4;
  --acs-dark-red: #B62B26;
  --acs-highlight-red: #F5290A;
  --acs-carbon: #303030;
  --acs-steel: #555555;
  --acs-silver: #B1B1B1;
  --acs-veil: #9C9C9C;
  --acs-cloud: #E3E3E3;
  --acs-fog: #F3F6F7;
  --acs-success: #00892F;
  --acs-warning: #FFA800;
  --acs-error: #E91F00;
  --acs-selection: #0045D0;
  --acs-background: #F3F6F7;
  --acs-surface: #FFFFFF;
  --acs-surface-subtle: #F8F9FA;
  --acs-surface-hover: #F5F5F5;
  --acs-surface-selected: #E8F4FD;
  --acs-surface-selected-hover: #D1E9F8;
  --acs-card-bg: #FFFFFF;
  --acs-text: #303030;
  --acs-text-primary: #303030;
  --acs-text-secondary: #555555;
  --acs-border: #E3E3E3;
  --acs-hover: #D6DFE4;
  --acs-focus-ring: #0045D0;
  --acs-primary-blue-light: rgba(15, 33, 68, 0.2);
  --acs-primary-blue-bg: #f0f4f8;
  --acs-primary-blue-dark: #0a1a33;
  --acs-navy-blue-light: rgba(26, 56, 117, 0.2);
  --acs-navy-blue-bg: #f1f4f9;
  --acs-navy-blue-dark: #152b5c;
  --acs-steel-blue-light: rgba(138, 163, 176, 0.2);
  --acs-steel-blue-bg: #f0f4f8;
  --acs-steel-blue-dark: #6b8291;
  --acs-digital-red-light: rgba(233, 31, 0, 0.2);
  --acs-digital-red-bg: #fef2f2;
  --acs-digital-red-dark: #b22400;
  --acs-success-light: rgba(0, 137, 47, 0.2);
  --acs-success-bg: #f0f9f4;
  --acs-success-dark: #006b25;
  --acs-warning-light: rgba(255, 168, 0, 0.3);
  --acs-warning-bg: #fef7e0;
  --acs-warning-dark: #cc8600;
  --acs-error-light: rgba(233, 31, 0, 0.2);
  --acs-error-bg: #fef2f2;
  --acs-error-dark: #b22400;
  --acs-selection-light: rgba(0, 69, 208, 0.2);
  --acs-selection-bg: #e8f4fd;
  --acs-selection-dark: #003a9b;
  --acs-info: var(--acs-selection);
  --acs-info-light: var(--acs-selection-light);
  --acs-info-bg: var(--acs-selection-bg);
  --acs-info-dark: var(--acs-selection-dark);
  --color-primary-50: #f0f4f8;
  --color-primary-100: #d1e9f8;
  --color-primary-200: #a4d3f1;
  --color-primary-300: #76bde8;
  --color-primary-400: #4a6fa5;
  --color-primary-500: var(--acs-primary-blue);
  --color-primary-600: #0d1c39;
  --color-primary-700: #0a162d;
  --color-primary-800: #081122;
  --color-primary-900: #050c16;
  --color-secondary-50: #f8fafb;
  --color-secondary-100: #e8f0f5;
  --color-secondary-200: #d1e1ea;
  --color-secondary-300: #bad2de;
  --color-secondary-400: #a3c3d3;
  --color-secondary-500: var(--acs-steel-blue);
  --color-secondary-600: #6f828d;
  --color-secondary-700: #54626a;
  --color-secondary-800: #394146;
  --color-secondary-900: #1e2123;
  --color-success-50: #f0f9f4;
  --color-success-100: #dcf4e6;
  --color-success-200: #c2ead1;
  --color-success-300: #a8dfbc;
  --color-success-400: #54b773;
  --color-success-500: var(--acs-success);
  --color-success-600: #006b25;
  --color-success-700: #004d1b;
  --color-success-800: #003012;
  --color-success-900: #001208;
  --color-warning-50: #fef7e0;
  --color-warning-100: #fdecb3;
  --color-warning-200: #fce080;
  --color-warning-300: #fbd44d;
  --color-warning-400: #fac826;
  --color-warning-500: var(--acs-warning);
  --color-warning-600: #cc8600;
  --color-warning-700: #996400;
  --color-warning-800: #664300;
  --color-warning-900: #332100;
  --color-error-50: #fef2f2;
  --color-error-100: #fecaca;
  --color-error-200: #fca5a5;
  --color-error-300: #f87171;
  --color-error-400: #ef4444;
  --color-error-500: var(--acs-digital-red);
  --color-error-600: #b22400;
  --color-error-700: #7f1d1d;
  --color-error-800: #581c1c;
  --color-error-900: #3f1515;
  --color-gray-50: var(--acs-fog);
  --color-gray-100: #f7fafc;
  --color-gray-200: var(--acs-cloud);
  --color-gray-300: #cbd5e0;
  --color-gray-400: var(--acs-silver);
  --color-gray-500: var(--acs-veil);
  --color-gray-600: var(--acs-steel);
  --color-gray-700: #4a5568;
  --color-gray-800: var(--acs-carbon);
  --color-gray-900: #1a202c;
  --color-white: #ffffff;
  --acs-primary: var(--acs-primary-blue);
  --acs-secondary: var(--acs-steel-blue);
  --acs-danger: var(--acs-digital-red);
  --acs-font-primary: "Open Sans", Arial, sans-serif;
  --acs-font-display: "DM Serif Text", Georgia, serif;
  --acs-font-monospace: "Courier New", monospace;
  --acs-font-size-h1: 28px;
  --acs-font-size-h2: 24px;
  --acs-font-size-h3: 20px;
  --acs-font-size-body: 16px;
  --acs-font-size-small: 14px;
  --acs-font-size-caption: 12px;
  --acs-spacing-xs: 4px;
  --acs-spacing-sm: 8px;
  --acs-spacing-md: 16px;
  --acs-spacing-lg: 24px;
  --acs-spacing-xl: 32px;
  --acs-spacing-xxl: 48px;
  --acs-radius-sm: 4px;
  --acs-radius-md: 8px;
  --acs-radius-lg: 12px;
  --acs-radius-full: 9999px;
  --acs-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
  --acs-shadow-md: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
  --acs-shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
  --acs-transition-fast: 150ms ease-in-out;
  --acs-transition-base: 200ms ease-in-out;
  --acs-transition-slow: 300ms ease-in-out;
  --acs-z-dropdown: 1000;
  --acs-z-sticky: 1020;
  --acs-z-fixed: 1030;
  --acs-z-modal-backdrop: 1040;
  --acs-z-modal: 1050;
  --acs-z-popover: 1060;
  --acs-z-tooltip: 1070;
}

[data-theme=high-contrast] {
  --acs-primary: #000000;
  --acs-secondary: #404040;
  --acs-background: #FFFFFF;
  --acs-surface: #FFFFFF;
  --acs-surface-subtle: #FAFAFA;
  --acs-surface-hover: #F0F0F0;
  --acs-surface-selected: #E0E0E0;
  --acs-surface-selected-hover: #D0D0D0;
  --acs-card-bg: #FFFFFF;
  --acs-text: #000000;
  --acs-text-primary: #000000;
  --acs-text-secondary: #000000;
  --acs-border: #000000;
  --acs-hover: #F0F0F0;
  --acs-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4), 0 1px 2px rgba(0, 0, 0, 0.4);
  --acs-shadow-md: 0 3px 6px rgba(0, 0, 0, 0.4), 0 3px 6px rgba(0, 0, 0, 0.4);
  --acs-shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.4), 0 6px 6px rgba(0, 0, 0, 0.4);
}

[data-theme=dark] {
  --acs-primary-blue: #4A6FA5;
  --acs-digital-red: #FF5E4D;
  --acs-steel-blue: #B8CDD9;
  --acs-background: #1A1A1A;
  --acs-surface: #2A2A2A;
  --acs-surface-subtle: #333333;
  --acs-surface-hover: #404040;
  --acs-surface-selected: #3D5A7A;
  --acs-surface-selected-hover: #4A6B8A;
  --acs-text: #E0E0E0;
  --acs-card-bg: #2D2D2D;
  --acs-text-primary: #F0F0F0;
  --acs-text-secondary: #B0B0B0;
  --acs-border: #404040;
  --acs-hover: #3A3A3A;
  --acs-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4), 0 1px 2px rgba(0, 0, 0, 0.5);
  --acs-shadow-md: 0 3px 6px rgba(0, 0, 0, 0.5), 0 3px 6px rgba(0, 0, 0, 0.6);
  --acs-shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.6), 0 6px 6px rgba(0, 0, 0, 0.7);
}

[data-spacing=compact] {
  --acs-spacing-xs: 2px;
  --acs-spacing-sm: 4px;
  --acs-spacing-md: 8px;
  --acs-spacing-lg: 12px;
  --acs-spacing-xl: 16px;
  --acs-spacing-xxl: 24px;
}

[data-spacing=comfortable] {
  --acs-spacing-xs: 8px;
  --acs-spacing-sm: 12px;
  --acs-spacing-md: 20px;
  --acs-spacing-lg: 32px;
  --acs-spacing-xl: 48px;
  --acs-spacing-xxl: 64px;
}

@media print {
  :root {
    --acs-primary: #000000;
    --acs-secondary: #666666;
    --acs-background: #FFFFFF;
    --acs-card-bg: #FFFFFF;
    --acs-text-primary: #000000;
    --acs-text-secondary: #333333;
    --acs-border: #000000;
    --acs-shadow-sm: none;
    --acs-shadow-md: none;
    --acs-shadow-lg: none;
  }
}
body {
  font-family: var(--acs-font-primary, "Open Sans", Arial, sans-serif);
  font-size: var(--acs-font-size-body, 16px);
  line-height: 1.5;
  color: var(--acs-text-primary, var(--acs-carbon));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--acs-font-display, "DM Serif Text", Georgia, serif);
  color: var(--acs-primary-blue, #0F2144);
  margin: 0 0 var(--acs-spacing-md, 16px) 0;
  line-height: 1.2;
}

h1 {
  font-size: var(--acs-font-size-h1, 28px);
  font-weight: 400;
}

h2 {
  font-size: var(--acs-font-size-h2, 24px);
  font-weight: 400;
}

h3 {
  font-size: var(--acs-font-size-h3, 20px);
  font-weight: 400;
  color: var(--acs-text-primary, var(--acs-carbon));
}

h4 {
  font-size: 18px;
  font-weight: 400;
}

h5 {
  font-size: var(--acs-font-size-body, 16px);
  font-weight: 600;
  font-family: var(--acs-font-primary, "Open Sans", Arial, sans-serif);
}

h6 {
  font-size: var(--acs-font-size-small, 14px);
  font-weight: 600;
  font-family: var(--acs-font-primary, "Open Sans", Arial, sans-serif);
}

p {
  margin: 0 0 var(--acs-spacing-md, 16px) 0;
}

a {
  color: var(--acs-primary-blue, #0F2144);
  text-decoration: none;
  transition: color 0.2s ease;
}
a:hover {
  color: var(--acs-selection, #0045D0);
  text-decoration: underline;
}
a:focus {
  outline: 2px solid var(--acs-selection, #0045D0);
  outline-offset: 2px;
}

.text-primary {
  color: var(--acs-text-primary, var(--acs-carbon)) !important;
}

.text-secondary {
  color: var(--acs-text-secondary, var(--acs-steel)) !important;
}

.text-success {
  color: var(--acs-success, #00892F) !important;
}

.text-warning {
  color: var(--acs-warning, #FFA800) !important;
}

.text-error {
  color: var(--acs-error, #E91F00) !important;
}

.text-small {
  font-size: var(--acs-font-size-small, 14px);
}

.text-caption {
  font-size: var(--acs-font-size-caption, 12px);
  color: var(--acs-text-secondary, var(--acs-steel));
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

.font-light {
  font-weight: 300;
}

.font-normal {
  font-weight: 400;
}

.font-semibold {
  font-weight: 600;
}

.font-bold {
  font-weight: 700;
}

code, pre {
  font-family: var(--acs-font-monospace, "Courier New", monospace);
  font-size: var(--acs-font-size-small, 14px);
  background-color: rgba(var(--acs-primary-blue, #0F2144), 0.05);
  padding: 2px 4px;
  border-radius: var(--acs-radius-sm, 4px);
}

pre {
  display: block;
  padding: var(--acs-spacing-md, 16px);
  overflow-x: auto;
  line-height: 1.4;
}

@keyframes acs-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
* {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  padding: 0;
  background-color: var(--acs-background, var(--acs-fog));
  min-height: 100vh;
}

.acs-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--acs-spacing-lg, 24px);
}
@media (max-width: 767px) {
  .acs-container {
    padding: 0 var(--acs-spacing-md, 16px);
  }
}

.acs-grid {
  display: grid;
  gap: var(--acs-spacing-lg, 24px);
}
.acs-grid--2-cols {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 767px) {
  .acs-grid--2-cols {
    grid-template-columns: 1fr;
  }
}
.acs-grid--3-cols {
  grid-template-columns: repeat(3, 1fr);
}
@media (min-width: 768px) and (max-width: 1023px) {
  .acs-grid--3-cols {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .acs-grid--3-cols {
    grid-template-columns: 1fr;
  }
}
.acs-grid--4-cols {
  grid-template-columns: repeat(4, 1fr);
}
@media (min-width: 768px) and (max-width: 1023px) {
  .acs-grid--4-cols {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .acs-grid--4-cols {
    grid-template-columns: 1fr;
  }
}

.acs-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--acs-spacing-xxl, 48px);
  color: var(--acs-text-secondary, var(--acs-steel));
}

.acs-spinner {
  display: inline-block;
  width: 40px;
  height: 40px;
  border: 3px solid var(--acs-background, var(--acs-fog));
  border-top: 3px solid var(--acs-primary-blue, #0F2144);
  border-radius: 50%;
  animation: acs-spin 1s linear infinite;
}

.acs-error {
  background-color: var(--acs-card-bg, #FFFFFF);
  border-radius: var(--acs-radius-md, 8px);
  box-shadow: var(--acs-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24));
  padding: var(--acs-spacing-lg, 24px);
  transition: box-shadow 0.3s ease;
  border-left: 4px solid var(--acs-error, #E91F00);
  color: var(--acs-error, #E91F00);
}
.acs-error:hover {
  box-shadow: var(--acs-shadow-md, 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23));
}
.acs-error h3 {
  color: var(--acs-error, #E91F00);
  margin-bottom: var(--acs-spacing-sm, 8px);
}

.acs-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: var(--acs-spacing-xxl, 48px);
  text-align: center;
  color: var(--acs-text-secondary, var(--acs-steel));
}
.acs-empty-state h3 {
  color: var(--acs-text-secondary, var(--acs-steel));
  margin-bottom: var(--acs-spacing-sm, 8px);
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: var(--acs-spacing-xs, 4px) !important;
}

.mt-2 {
  margin-top: var(--acs-spacing-sm, 8px) !important;
}

.mt-3 {
  margin-top: var(--acs-spacing-md, 16px) !important;
}

.mt-4 {
  margin-top: var(--acs-spacing-lg, 24px) !important;
}

.mt-5 {
  margin-top: var(--acs-spacing-xl, 32px) !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: var(--acs-spacing-xs, 4px) !important;
}

.mb-2 {
  margin-bottom: var(--acs-spacing-sm, 8px) !important;
}

.mb-3 {
  margin-bottom: var(--acs-spacing-md, 16px) !important;
}

.mb-4 {
  margin-bottom: var(--acs-spacing-lg, 24px) !important;
}

.mb-5 {
  margin-bottom: var(--acs-spacing-xl, 32px) !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: var(--acs-spacing-xs, 4px) !important;
}

.p-2 {
  padding: var(--acs-spacing-sm, 8px) !important;
}

.p-3 {
  padding: var(--acs-spacing-md, 16px) !important;
}

.p-4 {
  padding: var(--acs-spacing-lg, 24px) !important;
}

.p-5 {
  padding: var(--acs-spacing-xl, 32px) !important;
}

.d-none {
  display: none !important;
}

.d-block {
  display: block !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-grid {
  display: grid !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.justify-start {
  justify-content: flex-start !important;
}

.justify-center {
  justify-content: center !important;
}

.justify-end {
  justify-content: flex-end !important;
}

.justify-between {
  justify-content: space-between !important;
}

.align-start {
  align-items: flex-start !important;
}

.align-center {
  align-items: center !important;
}

.align-end {
  align-items: flex-end !important;
}

.flex-1 {
  flex: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-x-auto {
  overflow-x: auto !important;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.border-0 {
  border: 0 !important;
}

.border {
  border: 1px solid var(--acs-border, var(--acs-cloud)) !important;
}

.border-top {
  border-top: 1px solid var(--acs-border, var(--acs-cloud)) !important;
}

.border-bottom {
  border-bottom: 1px solid var(--acs-border, var(--acs-cloud)) !important;
}

.border-left {
  border-left: 1px solid var(--acs-border, var(--acs-cloud)) !important;
}

.border-right {
  border-right: 1px solid var(--acs-border, var(--acs-cloud)) !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-sm {
  border-radius: var(--acs-radius-sm, 4px) !important;
}

.rounded {
  border-radius: var(--acs-radius-md, 8px) !important;
}

.rounded-lg {
  border-radius: var(--acs-radius-lg, 12px) !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.shadow-none {
  box-shadow: none !important;
}

.shadow-sm {
  box-shadow: var(--acs-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24)) !important;
}

.shadow {
  box-shadow: var(--acs-shadow-md, 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23)) !important;
}

.shadow-lg {
  box-shadow: var(--acs-shadow-lg, 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23)) !important;
}

.status-cell {
  display: inline-block !important;
  padding: 4px 8px !important;
  border-radius: 9999px !important;
  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  line-height: 16px !important;
  font-weight: 500 !important;
}
.status-cell.status-active, .status-cell.status-paid, .status-cell.status-completed, .status-cell.status-refunded {
  color: #00892F !important;
  background: #DCFCE7 !important;
}
.status-cell.status-inactive, .status-cell.status-unpaid, .status-cell.status-cancelled, .status-cell.status-failed {
  color: #E91F00 !important;
  background: #FEE2E2 !important;
}
.status-cell.status-pending, .status-cell.status-suspended, .status-cell.status-partial, .status-cell.status-processing {
  color: #FFA800 !important;
  background: #FEF9C3 !important;
}

.info-card {
  background: #FFFFFF;
  border-radius: 12px;
  box-shadow: 0px 2px 8px rgba(48, 48, 48, 0.08), 0px 0px 1px rgba(48, 48, 48, 0.12);
  padding: 20px;
  margin-bottom: 16px;
  border: 1px solid #E3E3E3; /* ACS Cloud */
  transition: all 0.2s ease;
}
.info-card:hover {
  box-shadow: 0px 4px 16px rgba(48, 48, 48, 0.12), 0px 0px 2px rgba(48, 48, 48, 0.16);
  border-color: #0F2144; /* ACS Primary Blue */
}
.info-card .info-card__name {
  font-family: "Open Sans", Inter, sans-serif; /* ACS Primary Font */
  font-size: 18px;
  line-height: 28px;
  font-weight: 800 !important; /* Extra bold for maximum prominence */
  color: #303030; /* ACS Carbon */
  margin: 0 0 12px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.info-card .info-card__detail {
  font-family: "Open Sans", Inter, sans-serif;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  color: #555555; /* ACS Steel */
  margin: 6px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.info-card .info-card__detail:first-of-type {
  margin-top: 0;
}
.info-card .info-card__detail:last-of-type {
  margin-bottom: 0;
}
.info-card .info-card__detail.info-card__email {
  color: #0F2144; /* ACS Primary Blue for clickable elements */
}
.info-card .info-card__detail.info-card__email:hover {
  color: #1A3875; /* ACS Navy Blue on hover */
  text-decoration: underline;
}
.info-card .info-card__detail.info-card__status {
  font-weight: 500;
}
.info-card .info-card__detail.info-card__phone {
  font-family: "Courier New", monospace;
}
.info-card .info-card__icon {
  font-size: 16px;
  opacity: 0.7;
  flex-shrink: 0;
}
.info-card .info-card__icon.info-card__icon--email {
  color: #0F2144; /* ACS Primary Blue */
}
.info-card .info-card__icon.info-card__icon--phone {
  color: #555555; /* ACS Steel */
}
.info-card .info-card__icon.info-card__icon--location {
  color: #555555; /* ACS Steel */
}
.info-card .info-card__icon.info-card__icon--membership {
  color: #8AA3B0; /* ACS Secondary */
}
.info-card .info-card__label {
  font-family: "Open Sans", Inter, sans-serif;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  color: #9C9C9C; /* ACS Veil */
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 4px;
}
.info-card .info-card__value {
  font-family: "Open Sans", Inter, sans-serif;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  color: #303030; /* ACS Carbon */
}
.info-card .info-card__section {
  margin: 20px 0;
  padding-top: 16px;
  border-top: 1px solid #F3F6F7; /* ACS Fog */
}
.info-card .info-card__section:first-child {
  margin-top: 0;
  border-top: none;
  padding-top: 0;
}
.info-card .info-card__section:last-child {
  margin-bottom: 0;
}
.info-card .info-card__section-title {
  font-family: "Open Sans", Inter, sans-serif;
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
  color: #0F2144; /* ACS Primary Blue */
  margin: 0 0 12px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ===== IMPERSONATION MODE GLOBAL STYLES ===== */
:root {
  --impersonation-banner-height: 70px;
  --impersonation-border-color: #dc3545;
  --impersonation-border-width: 3px;
  --impersonation-warning-bg: rgba(220, 53, 69, 0.1);
  --impersonation-shadow: 0 0 20px rgba(220, 53, 69, 0.3);
}

body {
  transition: all 0.3s ease;
}
body.impersonation-active {
  padding-top: var(--impersonation-banner-height);
  background-color: var(--impersonation-warning-bg);
  border: var(--impersonation-border-width) solid var(--impersonation-border-color);
  box-sizing: border-box;
  box-shadow: inset var(--impersonation-shadow);
  min-height: calc(100vh - 2 * var(--impersonation-border-width));
}
body.impersonation-active.impersonation-enhanced {
  background: repeating-linear-gradient(45deg, var(--impersonation-warning-bg) 0px, var(--impersonation-warning-bg) 10px, rgba(220, 53, 69, 0.05) 10px, rgba(220, 53, 69, 0.05) 20px);
  border-width: calc(var(--impersonation-border-width) * 1.5);
  box-shadow: inset 0 0 30px rgba(220, 53, 69, 0.4);
}

.impersonation-corner-indicator {
  position: fixed;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 60px 60px 0;
  border-color: transparent;
  z-index: 9998;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.impersonation-active .impersonation-corner-indicator {
  opacity: 1;
}
.impersonation-corner-indicator::after {
  content: "";
  position: absolute;
  top: 8px;
  right: -52px;
  width: 12px;
  height: 12px;
  background: white;
  border-radius: 50%;
  animation: impersonation-pulse 2s infinite;
}

.impersonation-active input:not([type=checkbox]):not([type=radio]):focus,
.impersonation-active textarea:focus,
.impersonation-active select:focus {
  border-color: var(--impersonation-border-color) !important;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}
.impersonation-active .btn-primary {
  position: relative;
}
.impersonation-active .btn-primary::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  background: var(--impersonation-border-color);
  border-radius: 6px;
  z-index: -1;
  opacity: 0.3;
}
.impersonation-active .card,
.impersonation-active .panel,
.impersonation-active .info-card {
  border-left: 4px solid var(--impersonation-border-color) !important;
  position: relative;
}
.impersonation-active .card::after,
.impersonation-active .panel::after,
.impersonation-active .info-card::after {
  content: "👤";
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 12px;
  opacity: 0.6;
  pointer-events: none;
}
.impersonation-active .navbar,
.impersonation-active .sidebar,
.impersonation-active .header {
  border-bottom: 2px solid var(--impersonation-border-color) !important;
}

.impersonation-active.impersonation-high-contrast {
  color: #000 !important;
}
.impersonation-active.impersonation-high-contrast .card,
.impersonation-active.impersonation-high-contrast .panel,
.impersonation-active.impersonation-high-contrast .info-card {
  border: 2px solid var(--impersonation-border-color) !important;
  background: rgba(255, 255, 255, 0.95) !important;
}
.impersonation-active.impersonation-high-contrast .card::after,
.impersonation-active.impersonation-high-contrast .panel::after,
.impersonation-active.impersonation-high-contrast .info-card::after {
  content: "⚠️ IMPERSONATION";
  font-size: 10px;
  font-weight: bold;
  color: var(--impersonation-border-color);
  background: white;
  padding: 2px 4px;
  border-radius: 3px;
}

@keyframes impersonation-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(1.2);
  }
}
@keyframes impersonation-border-glow {
  0%, 100% {
    box-shadow: inset var(--impersonation-shadow);
  }
  50% {
    box-shadow: inset 0 0 30px rgba(220, 53, 69, 0.5);
  }
}
.impersonation-active.impersonation-enhanced {
  animation: impersonation-border-glow 3s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  .impersonation-corner-indicator::after {
    animation: none;
  }
  .impersonation-active.impersonation-enhanced {
    animation: none;
  }
  body {
    transition: none;
  }
}
@media print {
  .impersonation-corner-indicator,
  .impersonation-banner {
    display: none !important;
  }
  body.impersonation-active {
    border: none !important;
    box-shadow: none !important;
    background: white !important;
    padding-top: 0 !important;
  }
  .impersonation-active .card::after,
  .impersonation-active .panel::after,
  .impersonation-active .info-card::after {
    display: none !important;
  }
}
@media (max-width: 768px) {
  :root {
    --impersonation-banner-height: 120px;
    --impersonation-border-width: 2px;
  }
  .impersonation-corner-indicator {
    border-width: 0 40px 40px 0;
  }
  .impersonation-corner-indicator::after {
    top: 6px;
    right: -35px;
    width: 8px;
    height: 8px;
  }
}
@media (max-width: 480px) {
  :root {
    --impersonation-border-width: 1px;
  }
  body.impersonation-active {
    background: var(--impersonation-warning-bg);
    box-shadow: none;
  }
  .impersonation-corner-indicator {
    border-width: 0 30px 30px 0;
  }
  .impersonation-corner-indicator::after {
    display: none;
  }
}
