*, :before, :after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #3b82f680;
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::-ms-backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #3b82f680;
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #3b82f680;
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

*, :before, :after {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
}

:before, :after {
  --tw-content: "";
}

html, :host {
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
  font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  line-height: 1.5;
}

body {
  line-height: inherit;
  margin: 0;
}

hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}

abbr:where([title]) {
  text-decoration: underline dotted;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
}

a {
  color: inherit;
  text-decoration: inherit;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp, pre {
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}

button, input, optgroup, select, textarea {
  -webkit-font-feature-settings: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}

button, select {
  text-transform: none;
}

button, input:where([type="button"]), input:where([type="reset"]), input:where([type="submit"]) {
  -webkit-appearance: button;
  background-color: #0000;
  background-image: none;
}

:-moz-focusring {
  outline: auto;
}

:-moz-ui-invalid {
  box-shadow: none;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button {
  height: auto;
}

::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol, ul, menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

dialog {
  padding: 0;
}

textarea {
  resize: vertical;
}

input::-webkit-input-placeholder {
  opacity: 1;
  color: #9ca3af;
}

textarea::-webkit-input-placeholder {
  opacity: 1;
  color: #9ca3af;
}

:is(input:-ms-placeholder-shown, textarea:-ms-placeholder-shown), :is(input:placeholder-shown, textarea:placeholder-shown) {
  opacity: 1;
  color: #9ca3af;
}

input::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}

textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}

input::placeholder, textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}

button, [role="button"] {
  cursor: pointer;
}

:disabled {
  cursor: default;
}

img, svg, video, canvas, audio, iframe, embed, object {
  vertical-align: middle;
  display: block;
}

img, video {
  max-width: 100%;
  height: auto;
}

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

.\!container {
  width: 100% !important;
}

.container {
  width: 100%;
}

@media (width >= 320px) {
  .\!container {
    max-width: 320px !important;
  }

  .container {
    max-width: 320px;
  }
}

@media (width >= 640px) {
  .\!container {
    max-width: 640px !important;
  }

  .container {
    max-width: 640px;
  }
}

@media (width >= 768px) {
  .\!container {
    max-width: 768px !important;
  }

  .container {
    max-width: 768px;
  }
}

@media (width >= 1024px) {
  .\!container {
    max-width: 1024px !important;
  }

  .container {
    max-width: 1024px;
  }
}

@media (width >= 1280px) {
  .\!container {
    max-width: 1280px !important;
  }

  .container {
    max-width: 1280px;
  }
}

@media (width >= 1536px) {
  .\!container {
    max-width: 1536px !important;
  }

  .container {
    max-width: 1536px;
  }
}

.visible {
  visibility: visible;
}

.collapse {
  visibility: collapse;
}

.static {
  position: static;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.sticky {
  position: sticky;
}

.\!m-0 {
  margin: 0 !important;
}

.m-2 {
  margin: .5rem;
}

.mr-2 {
  margin-right: .5rem;
}

.mt-2 {
  margin-top: .5rem;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.inline {
  display: inline;
}

.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.flex-shrink {
  flex-shrink: 1;
}

.transform {
  -webkit-transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  -ms-transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.resize {
  resize: both;
}

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

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

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

.break-all {
  word-break: break-all;
}

.rounded-md {
  border-radius: .375rem;
}

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

.border {
  border-width: 1px;
}

.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.\!bg-transparent {
  background-color: #0000 !important;
}

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

.px-2 {
  padding-left: .5rem;
  padding-right: .5rem;
}

.py-1 {
  padding-top: .25rem;
  padding-bottom: .25rem;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.capitalize {
  text-transform: capitalize;
}

.italic {
  font-style: italic;
}

.underline {
  text-decoration-line: underline;
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.\!shadow-none {
  --tw-shadow: 0 0 #0000 !important;
  --tw-shadow-colored: 0 0 #0000 !important;
  -webkit-box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
}

.outline {
  outline-style: solid;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.grayscale {
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-filter {
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.ease-in {
  transition-timing-function: cubic-bezier(.4, 0, 1, 1);
}

.ease-in-out {
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.ease-out {
  transition-timing-function: cubic-bezier(0, 0, .2, 1);
}

.custom-text {
  margin: 0;
  padding: 0;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
  line-height: 1.5;
}

.custom-text-heading-xxl {
  font-size: 45px;
  font-weight: 900;
  line-height: 1.2;
}

.custom-text-heading-xl {
  font-size: 40px;
  font-weight: 900;
  line-height: 1.2;
}

.custom-text-heading-l {
  font-size: 35px;
  font-weight: 900;
  line-height: 1.3;
}

.custom-text-heading-m {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
}

.custom-text-heading-s {
  font-size: 25px;
  font-weight: 900;
  line-height: 1.4;
}

.custom-text-heading-xs {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.custom-text-heading-xxs {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.custom-text-body-l {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
}

.custom-text-body-m {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}

.custom-text-body-s {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.custom-text-body-xs {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}

.custom-text-body-xxs {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}

.custom-text-body-l-bold {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.6;
}

.custom-text-body-m-bold {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}

.custom-text-body-s-bold {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}

.custom-text-body-xs-bold {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}

.custom-text-body-xxs-bold {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
}

.custom-button {
  cursor: pointer;
  border: none;
  border-radius: 24px;
  outline: none;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-weight: 600;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.custom-button:focus {
  box-shadow: 0 0 0 3px #0ea5e933;
}

.custom-button-small {
  min-height: 32px;
  padding: 8px 16px;
  font-size: 13px;
}

.custom-button-medium {
  min-height: 40px;
  padding: 10px 20px;
  font-size: 14px;
}

.custom-button-large {
  min-height: 48px;
  padding: 12px 24px;
  font-size: 16px;
}

.custom-button-primary {
  color: #fff;
  background: #0ea5e9;
  border: 1px solid #0ea5e9;
}

.custom-button-primary:hover:not(.custom-button-disabled) {
  background: #0284c7;
  border-color: #0284c7;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px #0ea5e94d;
}

.custom-button-primary:active:not(.custom-button-disabled) {
  background: #0369a1;
  border-color: #0369a1;
  transform: translateY(0);
}

.custom-button-secondary {
  color: #0ea5e9;
  background: #fff;
  border: 1px solid #0ea5e9;
}

.custom-button-secondary:hover:not(.custom-button-disabled) {
  background: #f0f9ff;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px #0ea5e91a;
}

.custom-button-secondary:active:not(.custom-button-disabled) {
  background: #e0f2fe;
  transform: translateY(0);
}

.custom-button-tertiary {
  color: #0ea5e9;
  background: none;
  border: 1px solid #0000;
}

.custom-button-tertiary:hover:not(.custom-button-disabled) {
  background: #f0f9ff;
  border-color: #e0f2fe;
}

.custom-button-tertiary:active:not(.custom-button-disabled) {
  background: #e0f2fe;
}

.custom-button-danger {
  color: #fff;
  background: #dc2626;
  border: 1px solid #dc2626;
}

.custom-button-danger:hover:not(.custom-button-disabled) {
  background: #b91c1c;
  border-color: #b91c1c;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px #dc262633;
}

.custom-button-danger:active:not(.custom-button-disabled) {
  background: #991b1b;
  border-color: #991b1b;
  transform: translateY(0);
}

.custom-button-disabled {
  opacity: .5;
  cursor: not-allowed;
  color: #9ca3af;
  background: #e5e7eb;
  border-color: #e5e7eb;
}

.custom-button-primary.custom-button-disabled {
  background: #e5e7eb;
  border-color: #e5e7eb;
}

.button-icon {
  justify-content: center;
  align-items: center;
  font-size: 18px;
  display: inline-flex;
}

.button-label {
  align-items: center;
  display: inline-flex;
}

.custom-button-full-width {
  width: 100%;
}

.custom-icon {
  vertical-align: middle;
  color: #565656;
  justify-content: center;
  align-items: center;
  line-height: 1;
  transition: all .2s ease-in-out;
  display: inline-flex;
}

.custom-icon-clickable {
  cursor: pointer;
}

.custom-icon-clickable:hover {
  opacity: .8;
}

.custom-icon-default {
  display: inline-flex;
}

.custom-icon-background-bold {
  border-radius: 8px;
  padding: 8px;
}

.custom-icon-background-bold:hover {
  background-color: #e5e7eb;
}

.custom-avatar {
  color: #fff;
  background: linear-gradient(135deg, #0ea5e9 0%, #38bdf8 100%);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-weight: 600;
  display: inline-flex;
  overflow: hidden;
}

.custom-avatar-small {
  width: 32px;
  height: 32px;
  font-size: 13px;
}

.custom-avatar-medium {
  width: 40px;
  height: 40px;
  font-size: 16px;
}

.custom-avatar-large {
  width: 56px;
  height: 56px;
  font-size: 22px;
}

.custom-avatar-xtra-large {
  width: 80px;
  height: 80px;
  font-size: 32px;
}

.custom-avatar-clickable {
  cursor: pointer;
  transition: all .2s;
}

.custom-avatar-clickable:hover {
  transform: scale(1.05);
  box-shadow: 0 4px 12px #0f3cc94d;
}

.custom-avatar-clickable:active {
  transform: scale(.98);
}

.avatar-image {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.avatar-initials {
  text-transform: uppercase;
  -webkit-user-select: none;
  user-select: none;
}

.avatar-icon {
  font-size: 1.2em;
}

.custom-divider {
  border: none;
  margin: 0;
}

.custom-divider-horizontal {
  width: 100%;
  height: 1px;
  margin: 16px 0;
}

.custom-divider-vertical {
  width: 1px;
  height: 100%;
  margin: 0 16px;
  display: inline-block;
}

.custom-divider-default.custom-divider-horizontal, .custom-divider-default.custom-divider-vertical {
  background-color: #e5e7eb;
}

.custom-divider-bold.custom-divider-horizontal {
  background-color: #d1d5db;
  height: 2px;
}

.custom-divider-bold.custom-divider-vertical {
  background-color: #d1d5db;
  width: 2px;
}

.custom-divider-dashed.custom-divider-horizontal {
  background-image: linear-gradient(to right, #d1d5db 50%, #0000 50%);
  background-repeat: repeat-x;
  background-size: 8px 1px;
}

.custom-divider-dashed.custom-divider-vertical {
  background-image: linear-gradient(#d1d5db 50%, #0000 50%);
  background-repeat: repeat-y;
  background-size: 1px 8px;
}

.custom-spinner-container {
  justify-content: center;
  align-items: center;
  gap: 12px;
  display: inline-flex;
}

.custom-spinner-label-left {
  flex-direction: row-reverse;
}

.custom-spinner-label-right {
  flex-direction: row;
}

.custom-spinner-label-top {
  flex-direction: column-reverse;
}

.custom-spinner-label-bottom {
  flex-direction: column;
}

.custom-spinner {
  display: inline-block;
  position: relative;
}

.custom-spinner-small {
  width: 20px;
  height: 20px;
}

.custom-spinner-medium {
  width: 32px;
  height: 32px;
}

.custom-spinner-large {
  width: 48px;
  height: 48px;
}

.spinner-circle {
  border: 3px solid #e5e7eb;
  border-top-color: #0ea5e9;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  animation: .8s linear infinite spin;
}

.custom-spinner-small .spinner-circle {
  border-width: 2px;
}

.custom-spinner-large .spinner-circle {
  border-width: 4px;
}

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

.spinner-label {
  color: #6b7280;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 14px;
}

.input-field-v2-wrapper {
  flex-direction: column;
  width: 100%;
  margin-bottom: 4px;
  display: flex;
}

.input-field-label {
  color: #374151;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 600;
  display: block;
}

.input-field-required {
  color: #d32f2f;
  margin-left: 4px;
}

.input-field-v2 {
  color: #111827;
  box-sizing: border-box;
  background-color: #fff;
  border: 1.5px solid #d1d5db;
  border-radius: 10px;
  outline: none;
  width: 100%;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 14px;
  transition: all .2s;
}

.input-field-v2:hover:not(:disabled) {
  border-color: #9ca3af;
}

.input-field-v2:focus {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px #0ea5e91f;
}

.input-field-v2:disabled {
  color: #9ca3af;
  cursor: not-allowed;
  background-color: #f9fafb;
}

.input-field-v2::-webkit-input-placeholder {
  color: #9ca3af;
}

.input-field-v2::placeholder {
  color: #9ca3af;
}

.input-field-v2:-ms-placeholder-shown {
  color: #9ca3af;
}

.input-field-v2::placeholder {
  color: #9ca3af;
}

.input-field-small {
  padding: 8px 12px;
  font-size: 13px;
}

.input-field-medium {
  padding: 10px 14px;
  font-size: 14px;
}

.input-field-large {
  padding: 12px 16px;
  font-size: 16px;
}

.input-field-success {
  border-color: #10b981 !important;
}

.input-field-success:focus {
  box-shadow: 0 0 0 3px #10b9811f !important;
}

.input-field-error {
  border-color: #ef4444 !important;
}

.input-field-error:focus {
  box-shadow: 0 0 0 3px #ef44441f !important;
}

.input-field-warning {
  border-color: #f59e0b !important;
}

.input-field-warning:focus {
  box-shadow: 0 0 0 3px #f59e0b1f !important;
}

.input-field-state-text {
  margin-top: 4px;
  font-size: 12px;
  display: block;
}

.input-field-state-text.input-field-success {
  color: #4caf50;
}

.input-field-state-text.input-field-error {
  color: #d32f2f;
}

.input-field-state-text.input-field-warning {
  color: #ff9800;
}

.input-code-container {
  gap: 8px;
  display: flex;
}

.input-code-box {
  text-align: center;
  border: 2px solid #ccc;
  border-radius: 8px;
  outline: none;
  width: 40px;
  height: 48px;
  font-size: 20px;
  font-weight: 600;
  transition: all .2s;
}

.input-code-box:focus {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 2px #0050d41a;
}

.input-code-box:disabled {
  cursor: not-allowed;
  background-color: #f5f5f5;
}

.checkbox-container {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  color: #333;
  align-items: center;
  padding-left: 28px;
  font-size: 14px;
  display: inline-flex;
  position: relative;
}

.checkbox-container.checkbox-disabled {
  cursor: not-allowed;
  opacity: .6;
}

.checkbox-input {
  opacity: 0;
  cursor: pointer;
  width: 0;
  height: 0;
  position: absolute;
}

.checkbox-checkmark {
  background-color: #fff;
  border-radius: 3px;
  width: 18px;
  height: 18px;
  transition: all .2s;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border: 2px solid #ccc !important;
}

.checkbox-container:hover .checkbox-checkmark {
  border-color: #0ea5e9;
}

.checkbox-input:checked ~ .checkbox-checkmark {
  background-color: #0ea5e9;
  border-color: #0ea5e9;
}

.checkbox-checkmark:after {
  content: "";
  border: 2px solid #fff;
  border-width: 0 2px 2px 0;
  width: 4px;
  height: 8px;
  display: none;
  position: absolute;
  top: 2px;
  left: 5px;
  transform: rotate(45deg);
}

.checkbox-input:checked ~ .checkbox-checkmark:after {
  display: block;
}

.checkbox-checkmark.checkbox-indeterminate {
  background-color: #0ea5e9;
  border-color: #0ea5e9;
}

.checkbox-checkmark.checkbox-indeterminate:after {
  border-width: 0 0 2px;
  width: 10px;
  height: 0;
  display: block;
  top: 6px;
  left: 3px;
  transform: none;
}

.checkbox-label {
  margin-left: 4px;
}

.checkbox-disabled .checkbox-input, .checkbox-disabled .checkbox-checkmark {
  cursor: not-allowed;
}

.dropdown-wrapper {
  flex-direction: column;
  width: 100%;
  margin-bottom: 4px;
  display: flex;
}

.dropdown-label {
  color: #333;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 500;
  display: block;
}

.dropdown-required {
  color: #d32f2f;
  margin-left: 4px;
}

.dropdown-select {
  color: #333;
  box-sizing: border-box;
  cursor: pointer;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"8\" viewBox=\"0 0 12 8\"><path fill=\"%23333\" d=\"M6 8L0 2l1.4-1.4L6 5.2 10.6.6 12 2z\"/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  border: 1px solid #ccc;
  border-radius: 4px;
  outline: none;
  width: 100%;
  padding: 8px 32px 8px 12px;
  font-family: inherit;
  font-size: 14px;
  transition: all .2s;
}

.dropdown-select:hover:not(:disabled) {
  border-color: #999;
}

.dropdown-select:focus {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 2px #0050d41a;
}

.dropdown-select:disabled {
  color: #999;
  cursor: not-allowed;
  background-color: #f5f5f5;
}

.dropdown-small {
  padding: 6px 32px 6px 10px;
  font-size: 13px;
}

.dropdown-medium {
  padding: 8px 32px 8px 12px;
  font-size: 14px;
}

.dropdown-large {
  padding: 10px 32px 10px 14px;
  font-size: 16px;
}

.dropdown-success {
  border-color: #4caf50 !important;
}

.dropdown-success:focus {
  box-shadow: 0 0 0 2px #4caf501a !important;
}

.dropdown-error {
  border-color: #d32f2f !important;
}

.dropdown-error:focus {
  box-shadow: 0 0 0 2px #d32f2f1a !important;
}

.dropdown-warning {
  border-color: #ff9800 !important;
}

.dropdown-warning:focus {
  box-shadow: 0 0 0 2px #ff98001a !important;
}

.dropdown-state-text {
  margin-top: 4px;
  font-size: 12px;
  display: block;
}

.dropdown-state-text.dropdown-success {
  color: #4caf50;
}

.dropdown-state-text.dropdown-error {
  color: #d32f2f;
}

.dropdown-state-text.dropdown-warning {
  color: #ff9800;
}

.toggle-container {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: 12px;
  display: inline-flex;
  position: relative;
}

.toggle-container.toggle-disabled {
  cursor: not-allowed;
  opacity: .6;
}

.toggle-label {
  color: #333;
  font-size: 14px;
}

.toggle-input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.toggle-slider {
  pointer-events: auto;
  cursor: pointer;
  background-color: #ccc;
  border-radius: 24px;
  width: 44px;
  height: 24px;
  transition: background-color .3s;
  display: inline-block;
  position: relative;
}

.toggle-slider-knob {
  background-color: #fff;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  transition: transform .3s;
  display: block;
  position: absolute;
  bottom: 3px;
  left: 3px;
}

.toggle-input:checked + .toggle-slider {
  background-color: #0ea5e9;
}

.toggle-input:checked + .toggle-slider .toggle-slider-knob {
  transform: translateX(20px);
}

.toggle-container:hover .toggle-slider {
  opacity: .9;
}

.toggle-disabled .toggle-slider {
  cursor: not-allowed;
}

.radio-container {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  color: #333;
  align-items: center;
  padding-left: 28px;
  font-size: 14px;
  display: inline-flex;
  position: relative;
}

.radio-container.radio-disabled {
  cursor: not-allowed;
  opacity: .6;
}

.radio-input {
  opacity: 0;
  cursor: pointer;
  position: absolute;
}

.radio-checkmark {
  background-color: #fff;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  transition: all .2s;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  border: 2px solid #ccc !important;
}

.radio-container:hover .radio-checkmark {
  border-color: #0ea5e9;
}

.radio-input:checked ~ .radio-checkmark {
  background-color: #fff;
  border-color: #0ea5e9;
}

.radio-checkmark:after {
  content: "";
  background: #0ea5e9;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.radio-input:checked ~ .radio-checkmark:after {
  display: block;
}

.radio-label {
  margin-left: 4px;
}

.radio-disabled .radio-input, .radio-disabled .radio-checkmark {
  cursor: not-allowed;
}

.modal-overlay {
  z-index: 1000;
  background-color: #00000080;
  justify-content: center;
  align-items: center;
  animation: .2s fadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.modal-content {
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  max-height: 90vh;
  animation: .3s slideIn;
  display: flex;
  box-shadow: 0 4px 20px #00000026;
}

@keyframes slideIn {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0);
  }
}

.modal-small {
  width: 400px;
}

.modal-medium {
  width: 600px;
}

.modal-large {
  width: 800px;
}

.modal-full {
  width: 95vw;
  max-height: 95vh;
}

.modal-title {
  color: #333;
  margin: 0;
  font-size: 20px;
  font-weight: 600;
}

.modal-close-button {
  color: #666;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  font-size: 32px;
  transition: background-color .2s;
  display: flex;
}

.modal-close-button:hover {
  color: #333;
  background-color: #f5f5f5;
}

.modal-body {
  flex: 1;
  padding: 24px;
  overflow-y: auto;
}

.modal-footer {
  border-top: 1px solid #e0e0e0;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  padding: 16px 24px;
  display: flex;
}

@media (width <= 768px) {
  .modal-content {
    max-height: 95vh;
    width: 95vw !important;
  }
}

.card {
  box-sizing: border-box;
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  transition: all .2s;
  display: flex;
}

.card-elevated {
  box-shadow: 0 2px 8px #0000001a;
}

.card-elevated:hover {
  box-shadow: 0 4px 12px #00000026;
}

.card-outlined {
  border: 1px solid #e0e0e0;
}

.card-outlined:hover {
  border-color: #bdbdbd;
}

.card-filled {
  background: #f5f5f5;
}

.card-padding-none .card-content {
  padding: 0;
}

.card-padding-small .card-content {
  padding: 12px;
}

.card-padding-default .card-content {
  padding: 16px;
}

.card-padding-large .card-content {
  padding: 24px;
}

.card-clickable {
  cursor: pointer;
}

.card-clickable:active {
  transform: scale(.98);
}

.card-header {
  padding: 16px 16px 0;
}

.card-title {
  color: #333;
  margin: 0 0 4px;
  font-size: 18px;
  font-weight: 600;
}

.card-subtitle {
  color: #666;
  margin: 0;
  font-size: 14px;
}

.card-content {
  flex: 1;
}

.card-footer {
  border-top: 1px solid #e0e0e0;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  display: flex;
}

.tabs-container {
  width: 100%;
}

.tabs-header {
  border-bottom: 2px solid #e0e0e0;
  gap: 4px;
  margin-bottom: 16px;
  display: flex;
}

.tabs-header-default {
  border-bottom-color: #e0e0e0;
}

.tab-button {
  color: #666;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  border-bottom: 3px solid #0000;
  margin-bottom: -2px;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
}

.tab-button:hover:not(.tab-button-disabled) {
  color: #333;
  background-color: #f5f5f5;
}

.tab-button-active {
  color: #0ea5e9 !important;
  background-color: #0000 !important;
  border-bottom-color: #0ea5e9 !important;
}

.tab-button-disabled {
  color: #bdbdbd;
  cursor: not-allowed;
}

.tabs-content {
  padding: 4px 0;
}

.tab-item-content {
  animation: .2s fadeIn;
}

.badge {
  white-space: nowrap;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  display: inline-flex;
}

.badge-small {
  padding: 2px 8px;
  font-size: 11px;
}

.badge-medium {
  padding: 4px 12px;
  font-size: 12px;
}

.badge-large {
  padding: 6px 16px;
  font-size: 14px;
}

.badge-default.badge-primary {
  color: #0ea5e9;
  background-color: #e3f2fd;
}

.badge-default.badge-success {
  color: #4caf50;
  background-color: #e8f5e9;
}

.badge-default.badge-error {
  color: #d32f2f;
  background-color: #ffebee;
}

.badge-default.badge-warning {
  color: #ff9800;
  background-color: #fff3e0;
}

.badge-default.badge-info {
  color: #03a9f4;
  background-color: #e1f5fe;
}

.badge-default.badge-grey {
  color: #666;
  background-color: #f5f5f5;
}

.badge-filled.badge-primary {
  color: #fff;
  background-color: #0ea5e9;
}

.badge-filled.badge-success {
  color: #fff;
  background-color: #4caf50;
}

.badge-filled.badge-error {
  color: #fff;
  background-color: #d32f2f;
}

.badge-filled.badge-warning {
  color: #fff;
  background-color: #ff9800;
}

.badge-filled.badge-info {
  color: #fff;
  background-color: #03a9f4;
}

.badge-filled.badge-grey {
  color: #fff;
  background-color: #999;
}

.searchbox-container {
  width: 100%;
  max-width: 400px;
  position: relative;
}

.searchbox-input {
  border: 1px solid #ccc;
  border-radius: 20px;
  outline: none;
  width: 100%;
  padding: 8px 36px 8px 12px;
  font-size: 14px;
  transition: all .2s;
}

.searchbox-input:focus {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 2px #0050d41a;
}

.searchbox-input::-webkit-input-placeholder {
  color: #999;
}

.searchbox-input::placeholder {
  color: #999;
}

.searchbox-input:-ms-placeholder-shown {
  color: #999;
}

.searchbox-input::placeholder {
  color: #999;
}

.searchbox-icon {
  pointer-events: none;
  color: #666;
  font-size: 16px;
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
}

.searchbox-input:disabled {
  cursor: not-allowed;
  background-color: #f5f5f5;
}

.custom-image {
  max-width: 100%;
  height: auto;
  display: block;
}

.skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%) 0 0 / 200% 100%;
  animation: 1.5s ease-in-out infinite skeleton-loading;
}

.skeleton-rect {
  border-radius: 4px;
}

.skeleton-circle {
  border-radius: 50%;
}

.skeleton-text {
  border-radius: 4px;
  height: 16px;
}

@keyframes skeleton-loading {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

.custom-footer {
  color: #666;
  background-color: #f5f5f5;
  justify-content: center;
  align-items: center;
  min-height: 70px;
  padding: 20px 48px;
  font-size: 14px;
  display: flex;
}

.footer-content {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  width: 100%;
  max-width: 1400px;
  display: flex;
}

.footer-left {
  align-items: center;
  gap: 16px;
  display: flex;
}

.footer-logo {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.footer-copyright {
  color: #333;
  white-space: nowrap;
  font-size: 13px;
}

.footer-copyright-link {
  color: #333;
  text-decoration: none;
}

.footer-copyright-link:hover {
  text-decoration: underline;
}

.footer-links {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 32px;
  display: flex;
}

.footer-link {
  color: #333;
  white-space: nowrap;
  font-size: 14px;
  text-decoration: none;
  transition: color .2s;
}

.footer-link:hover {
  color: #0ea5e9;
  text-decoration: underline;
}

@media (width <= 768px) {
  .custom-footer {
    padding: 20px 24px;
  }

  .footer-content {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .footer-left, .footer-links {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .footer-copyright {
    white-space: normal;
  }
}

.footer-fixed {
  z-index: 10;
  background-color: #fff;
  width: calc(100% - 240px);
  margin-top: auto;
  margin-left: 240px;
  transition: width .3s, margin-left .3s;
  box-shadow: 0 -2px 8px #0000000d;
}

@media (width <= 1024px) {
  .footer-fixed {
    width: 100%;
    margin-left: 0;
  }
}

@media (width <= 768px) {
  .footer-fixed {
    width: 100%;
    margin-left: 0;
  }
}

.container-responsive {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}

@media (width >= 640px) {
  .container-responsive {
    max-width: 640px;
  }
}

@media (width >= 768px) {
  .container-responsive {
    max-width: 768px;
    padding-left: 24px;
    padding-right: 24px;
  }
}

@media (width >= 1024px) {
  .container-responsive {
    max-width: 1024px;
    padding-left: 32px;
    padding-right: 32px;
  }
}

@media (width >= 1280px) {
  .container-responsive {
    max-width: 1280px;
  }
}

.hide-mobile {
  display: block;
}

@media (width <= 767px) {
  .hide-mobile {
    display: none !important;
  }
}

@media (width <= 767px) {
  .show-mobile {
    display: block !important;
  }
}

.hide-tablet {
  display: block;
}

@media (width >= 768px) and (width <= 1023px) {
  .hide-tablet {
    display: none !important;
  }
}

.show-tablet {
  display: none;
}

@media (width >= 768px) and (width <= 1023px) {
  .show-tablet {
    display: block !important;
  }
}

.hide-desktop {
  display: block;
}

@media (width >= 1024px) {
  .hide-desktop {
    display: none !important;
  }
}

.show-desktop {
  display: none;
}

@media (width >= 1024px) {
  .show-desktop {
    display: block !important;
  }
}

.grid-responsive {
  gap: 16px;
  display: grid;
}

.grid-responsive-2 {
  grid-template-columns: 1fr;
  gap: 16px;
  display: grid;
}

@media (width >= 768px) {
  .grid-responsive-2 {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

.grid-responsive-3 {
  grid-template-columns: 1fr;
  gap: 16px;
  display: grid;
}

@media (width >= 768px) {
  .grid-responsive-3 {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}

@media (width >= 1024px) {
  .grid-responsive-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}

.grid-responsive-4 {
  grid-template-columns: 1fr;
  gap: 16px;
  display: grid;
}

@media (width >= 768px) {
  .grid-responsive-4 {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}

@media (width >= 1024px) {
  .grid-responsive-4 {
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }
}

.flex-responsive {
  gap: 16px;
  display: flex;
}

.flex-stack-mobile {
  flex-direction: row;
  gap: 16px;
  display: flex;
}

@media (width <= 767px) {
  .flex-stack-mobile {
    flex-direction: column;
    gap: 12px;
  }
}

.flex-stack-tablet {
  flex-direction: row;
  gap: 16px;
  display: flex;
}

@media (width <= 1023px) {
  .flex-stack-tablet {
    flex-direction: column;
    gap: 12px;
  }
}

.padding-responsive {
  padding: 24px;
}

@media (width <= 1023px) {
  .padding-responsive {
    padding: 20px;
  }
}

@media (width <= 767px) {
  .padding-responsive {
    padding: 16px;
  }
}

@media (width <= 479px) {
  .padding-responsive {
    padding: 12px;
  }
}

.margin-responsive {
  margin: 24px;
}

@media (width <= 1023px) {
  .margin-responsive {
    margin: 20px;
  }
}

@media (width <= 767px) {
  .margin-responsive {
    margin: 16px;
  }
}

@media (width <= 479px) {
  .margin-responsive {
    margin: 12px;
  }
}

.text-responsive-sm {
  font-size: 14px;
}

@media (width <= 767px) {
  .text-responsive-sm {
    font-size: 12px;
  }
}

.text-responsive-base {
  font-size: 16px;
}

@media (width <= 767px) {
  .text-responsive-base {
    font-size: 14px;
  }
}

.text-responsive-lg {
  font-size: 18px;
}

@media (width <= 767px) {
  .text-responsive-lg {
    font-size: 16px;
  }
}

.text-responsive-xl {
  font-size: 24px;
}

@media (width <= 1023px) {
  .text-responsive-xl {
    font-size: 20px;
  }
}

@media (width <= 767px) {
  .text-responsive-xl {
    font-size: 18px;
  }
}

.text-responsive-2xl {
  font-size: 32px;
}

@media (width <= 1023px) {
  .text-responsive-2xl {
    font-size: 28px;
  }
}

@media (width <= 767px) {
  .text-responsive-2xl {
    font-size: 24px;
  }
}

.width-full-mobile {
  width: auto;
}

@media (width <= 767px) {
  .width-full-mobile {
    width: 100% !important;
  }
}

.max-width-responsive {
  max-width: 1200px;
}

@media (width <= 1279px) {
  .max-width-responsive {
    max-width: 1024px;
  }
}

@media (width <= 1023px) {
  .max-width-responsive {
    max-width: 768px;
  }
}

@media (width <= 767px) {
  .max-width-responsive {
    max-width: 100%;
  }
}

.table-responsive {
  -webkit-overflow-scrolling: touch;
  width: 100%;
  overflow-x: auto;
}

@media (width <= 767px) {
  .table-responsive table {
    min-width: 600px;
    font-size: 12px;
  }

  .table-responsive th, .table-responsive td {
    padding: 8px !important;
    font-size: 12px !important;
  }
}

.form-responsive {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.form-row-responsive {
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

@media (width <= 767px) {
  .form-row-responsive {
    flex-direction: column;
    gap: 12px;
  }
}

.form-group-responsive {
  flex: 1;
  min-width: 0;
}

@media (width <= 767px) {
  .form-group-responsive {
    width: 100%;
  }
}

.button-group-responsive {
  align-items: center;
  gap: 12px;
  display: flex;
}

@media (width <= 767px) {
  .button-group-responsive {
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }

  .button-group-responsive button {
    width: 100%;
  }
}

.modal-responsive {
  width: 600px;
  max-width: 90vw;
  max-height: 90vh;
  overflow-y: auto;
}

@media (width <= 767px) {
  .modal-responsive {
    width: 95vw;
    max-width: 95vw;
    max-height: 85vh;
  }
}

.card-responsive {
  border-radius: 12px;
  padding: 24px;
}

@media (width <= 1023px) {
  .card-responsive {
    border-radius: 10px;
    padding: 20px;
  }
}

@media (width <= 767px) {
  .card-responsive {
    border-radius: 8px;
    padding: 16px;
  }
}

.scroll-mobile {
  overflow-x: visible;
}

@media (width <= 767px) {
  .scroll-mobile {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }
}

.sidebar-overlay {
  z-index: 89;
  opacity: 0;
  background-color: #00000080;
  transition: opacity .3s;
  display: none;
  position: fixed;
  inset: 0;
}

@media (width <= 1024px) {
  .sidebar-overlay.show {
    opacity: 1;
    display: block;
  }
}

@media (width <= 767px) {
  button, a, input[type="button"], input[type="submit"], .clickable {
    min-width: 44px;
    min-height: 44px;
  }

  * {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
  }

  input, textarea {
    -webkit-tap-highlight-color: #0000001a;
    -webkit-touch-callout: default;
  }
}

.hamburger-menu {
  cursor: pointer;
  z-index: 101;
  background: none;
  border: none;
  flex-direction: column;
  justify-content: space-around;
  width: 32px;
  height: 32px;
  padding: 4px;
  transition: transform .3s;
  display: none;
}

@media (width <= 1024px) {
  .hamburger-menu {
    display: flex;
  }
}

.hamburger-menu:hover {
  transform: scale(1.05);
}

.hamburger-menu:focus {
  outline-offset: 2px;
  border-radius: 4px;
  outline: 2px solid #0ea5e9;
}

.hamburger-menu span {
  transform-origin: center;
  background-color: #333;
  border-radius: 2px;
  width: 24px;
  height: 3px;
  transition: all .3s;
}

.hamburger-menu.active span:first-child {
  transform: translateY(7px) rotate(45deg);
}

.hamburger-menu.active span:nth-child(2) {
  opacity: 0;
  transform: translateX(-20px);
}

.hamburger-menu.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.hamburger-squeeze {
  cursor: pointer;
  background: none;
  border: none;
  flex-direction: column;
  justify-content: space-between;
  width: 32px;
  height: 24px;
  padding: 0;
  display: none;
  position: relative;
}

@media (width <= 1024px) {
  .hamburger-squeeze {
    display: flex;
  }
}

.hamburger-squeeze span {
  background-color: #333;
  border-radius: 2px;
  width: 100%;
  height: 3px;
  transition: all .3s;
  position: absolute;
  left: 0;
}

.hamburger-squeeze span:first-child {
  top: 0;
}

.hamburger-squeeze span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.hamburger-squeeze span:nth-child(3) {
  bottom: 0;
}

.hamburger-squeeze.active span:first-child {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}

.hamburger-squeeze.active span:nth-child(2) {
  opacity: 0;
}

.hamburger-squeeze.active span:nth-child(3) {
  bottom: 50%;
  transform: translateY(50%) rotate(-45deg);
}

.hamburger-elastic {
  cursor: pointer;
  z-index: 101;
  background: none;
  border: none;
  flex-direction: column;
  justify-content: space-around;
  width: 32px;
  height: 32px;
  padding: 4px;
  display: none;
}

@media (width <= 1024px) {
  .hamburger-elastic {
    display: flex;
  }
}

.hamburger-elastic span {
  transform-origin: center;
  background-color: #333;
  border-radius: 2px;
  width: 24px;
  height: 3px;
  transition: all .6s cubic-bezier(.68, -.55, .265, 1.55);
}

.hamburger-elastic.active span:first-child {
  transform: translateY(7px) rotate(45deg);
}

.hamburger-elastic.active span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}

.hamburger-elastic.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.hamburger-container {
  justify-content: center;
  align-items: center;
  margin-right: 12px;
  padding: 8px;
  display: none;
}

@media (width <= 1024px) {
  .hamburger-container {
    display: flex;
  }
}

.hamburger-menu.light span, .hamburger-squeeze.light span, .hamburger-elastic.light span {
  background-color: #fff;
}

.hamburger-menu.dark span, .hamburger-squeeze.dark span, .hamburger-elastic.dark span {
  background-color: #333;
}

.hamburger-menu:disabled, .hamburger-squeeze:disabled, .hamburger-elastic:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.hamburger-menu:disabled span, .hamburger-squeeze:disabled span, .hamburger-elastic:disabled span {
  background-color: #ccc;
}

.hamburger-menu:focus-visible, .hamburger-squeeze:focus-visible, .hamburger-elastic:focus-visible {
  outline-offset: 4px;
  border-radius: 4px;
  outline: 2px solid #0ea5e9;
}

@media (prefers-reduced-motion: reduce) {
  .hamburger-menu span, .hamburger-squeeze span, .hamburger-elastic span {
    transition: none;
  }
}

.sidebar-backdrop {
  z-index: 89;
  opacity: 0;
  pointer-events: none;
  background-color: #00000080;
  transition: opacity .3s;
  display: none;
  position: fixed;
  inset: 0;
}

@media (width <= 1024px) {
  .sidebar-backdrop.show {
    opacity: 1;
    pointer-events: auto;
    display: block;
  }
}

body.sidebar-open {
  overflow: hidden;
}

@media (width >= 1025px) {
  body.sidebar-open {
    overflow: auto;
  }
}

.table-wrapper, .table-container, .table-scroll-container {
  -webkit-overflow-scrolling: touch;
  width: 100%;
  margin-bottom: 20px;
  overflow-x: auto;
}

@media (width <= 1024px) {
  table, .table, .data-table, .custom-table {
    min-width: 800px;
    font-size: 13px;
  }

  table th, table td, .table th, .table td {
    padding: 10px 8px;
    font-size: 13px;
  }
}

@media (width <= 768px) {
  table, .table, .data-table, .custom-table {
    min-width: 600px;
    font-size: 12px;
  }

  table th, table td, .table th, .table td {
    white-space: nowrap;
    padding: 8px 6px;
    font-size: 12px;
  }

  .table-wrapper, .table-container, .table-scroll-container, div[class*="table"] {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }
}

@media (width <= 480px) {
  table, .table, .data-table, .custom-table {
    min-width: 500px;
    font-size: 11px;
  }

  table th, table td, .table th, .table td {
    padding: 6px 4px;
    font-size: 11px;
  }
}

.business-table-container {
  -webkit-overflow-scrolling: touch;
  overflow-x: auto;
}

@media (width <= 768px) {
  .business-table {
    min-width: 600px;
  }

  .users-table-container, .roles-table-container, .ropa-table-container {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }

  .ropa-table {
    min-width: 800px;
  }

  .audit-table-container {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }

  .cookies-logs-table, .consent-logs-table {
    min-width: 700px;
  }

  .grievance-table-container {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }
}

.table-wrapper::-webkit-scrollbar {
  height: 8px;
}

.table-container::-webkit-scrollbar {
  height: 8px;
}

.table-scroll-container::-webkit-scrollbar {
  height: 8px;
}

.table-wrapper::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.table-container::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.table-scroll-container::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.table-wrapper::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.table-container::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.table-scroll-container::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.table-wrapper::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.table-container::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.table-scroll-container::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.table-wrapper, .table-container, .table-scroll-container {
  scrollbar-width: thin;
  scrollbar-color: #888 #f1f1f1;
}

@media (width <= 768px) {
  .table-actions {
    flex-direction: column;
    gap: 8px;
    width: 100%;
  }

  .table-actions button, .table-actions .action-button {
    width: 100%;
  }

  table .action-icon, table .icon-button {
    min-width: 44px;
    min-height: 44px;
    padding: 10px;
  }

  .pagination-controls {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

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

  .pagination-buttons {
    justify-content: center;
  }

  .table-filters {
    flex-direction: column;
    gap: 10px;
  }

  .table-search, .table-filter-input {
    width: 100%;
  }
}

@media (width <= 480px) {
  .table-as-cards {
    display: block;
  }

  .table-as-cards table {
    display: none;
  }

  .table-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin-bottom: 12px;
    padding: 16px;
    display: block;
  }

  .table-card-row {
    border-bottom: 1px solid #f3f4f6;
    justify-content: space-between;
    padding: 8px 0;
    display: flex;
  }

  .table-card-row:last-child {
    border-bottom: none;
  }

  .table-card-label {
    color: #666;
    font-size: 12px;
    font-weight: 600;
  }

  .table-card-value {
    color: #333;
    text-align: right;
    font-size: 13px;
  }
}

.table-loading, .table-empty {
  text-align: center;
  padding: 40px 20px;
}

@media (width <= 768px) {
  .table-loading, .table-empty {
    padding: 30px 15px;
  }
}

@media (width >= 769px) {
  .table-sticky-header thead th {
    z-index: 10;
    background: #fff;
    position: sticky;
    top: 0;
    box-shadow: 0 2px 4px #0000000d;
  }
}

@media (width <= 768px) {
  table td {
    max-width: 200px;
  }

  table td.truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  table td.wrap {
    white-space: normal;
    word-wrap: break-word;
  }

  .hide-mobile {
    display: none !important;
  }
}

@media (width <= 480px) {
  .hide-small-mobile {
    display: none !important;
  }
}

.show-mobile {
  display: none;
}

@media (width <= 768px) {
  .show-mobile {
    display: table-cell !important;
  }

  .mobile-center {
    text-align: center !important;
  }

  .mobile-left {
    text-align: left !important;
  }
}

.login-page {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 50%, #f0f9ff 100%);
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  display: flex;
}

.login-card {
  background: #fff;
  border: 1px solid #0000000a;
  border-radius: 20px;
  width: 440px;
  padding: 36px 32px;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  box-shadow: 0 4px 24px #0000000f, 0 1px 2px #0000000a;
}

@media (width <= 1024px) {
  .login-card {
    width: 400px;
  }
}

@media (width <= 768px) {
  .login-card {
    width: 90%;
    max-width: 400px;
    padding: 28px 24px;
  }
}

@media (width <= 480px) {
  .login-card {
    width: 95%;
    padding: 24px 20px;
  }
}

.adminLogin-outer-container {
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
}

.adminLogin-modal {
  background-color: #fff;
  border-radius: 16px;
  width: 29.17%;
  height: 66.67%;
  padding: 40px 20px;
  box-shadow: 0 4px 16px #00000029;
}

@media (width <= 1024px) {
  .adminLogin-modal {
    width: 50%;
    height: auto;
    min-height: 60%;
  }
}

@media (width <= 768px) {
  .adminLogin-modal {
    width: 85%;
    height: auto;
    min-height: 50%;
    padding: 30px 16px;
  }
}

@media (width <= 480px) {
  .adminLogin-modal {
    width: 90%;
    padding: 24px 16px;
  }
}

.adminLogin-modal-header {
  align-items: center;
  gap: 10px;
  display: flex;
}

.adminLogin-outer-otp-container {
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
}

.adminLogin-otp-modal {
  background-color: #fff;
  border-radius: 16px;
  width: 29.17%;
  height: 66.67%;
  padding: 40px 20px;
  box-shadow: 0 4px 16px #00000029;
}

@media (width <= 1024px) {
  .adminLogin-otp-modal {
    width: 50%;
    height: auto;
    min-height: 60%;
  }
}

@media (width <= 768px) {
  .adminLogin-otp-modal {
    width: 85%;
    height: auto;
    min-height: 50%;
    padding: 30px 16px;
  }
}

@media (width <= 480px) {
  .adminLogin-otp-modal {
    width: 90%;
    padding: 24px 16px;
  }
}

.adminLogin-otp-modal-header {
  align-items: center;
  gap: 10px;
  display: flex;
}

.adminLogin-header {
  margin-bottom: 20px;
}

.resend-otp-outer-div {
  justify-content: center;
  margin-top: 10px;
  display: flex;
}

.resend-otp-inner-div {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.resend-otp-label {
  color: gray;
  font-size: 14px;
}

.resend-otp-timer {
  color: #000;
  font-size: 14px;
}

.toast-wrapper, .Toastify__toast-container {
  z-index: 10002 !important;
}

.toast-container {
  color: #fff;
  background: #000000a6;
  border-radius: 24px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 400px;
  padding: 12px 16px;
  display: flex;
  box-shadow: 0 4px 12px #00000080;
}

.toast-icon {
  flex-shrink: 0;
}

.toast-message {
  overflow-wrap: anywhere;
  flex: 1;
}

.toast-close {
  cursor: pointer;
  opacity: .7;
  flex-shrink: 0;
  align-items: center;
  display: flex;
}

.toast-close:hover {
  opacity: 1;
}

.signup-page {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 50%, #f0f9ff 100%);
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  display: flex;
}

.signup-card {
  background: #fff;
  border: 1px solid #0000000a;
  border-radius: 20px;
  width: 420px;
  padding: 36px 32px;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  box-shadow: 0 4px 24px #0000000f, 0 1px 2px #0000000a;
}

.resend-otp-link:not(.disabled):hover {
  text-decoration: underline;
}

.logo-header {
  align-items: center;
  margin-bottom: 20px;
  display: flex;
}

.logo {
  width: 28px;
  height: 28px;
  margin-right: 8px;
}

.title-text {
  font-size: 14px;
  font-weight: 600;
}

.signup-card h2 {
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: 700;
}

.terms-text {
  color: #6b7280;
  margin-top: 16px;
  font-size: 12px;
  line-height: 1.5;
}

.terms-text a {
  color: #0ea5e9;
  font-weight: 600;
  text-decoration: none;
}

.terms-text a:hover {
  color: #0284c7;
  text-decoration: underline;
}

.continue-btn {
  color: #fff;
  cursor: pointer;
  background-color: #0ea5e9;
  border: none;
  border-radius: 12px;
  width: 100%;
  margin-top: 20px;
  padding: 12px 0;
  font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  font-size: 15px;
  font-weight: 600;
  transition: all .2s;
}

.continue-btn:hover:not(:disabled) {
  background-color: #0284c7;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px #0ea5e94d;
}

.continue-btn:active:not(:disabled) {
  background-color: #0369a1;
  transform: translateY(0);
}

.continue-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.logoDiv {
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  display: flex;
}

.container-header-otp {
  margin-top: 20px;
  margin-bottom: 0;
}

.enter-otp {
  margin-bottom: 0;
}

.otp-button {
  margin-top: 32px;
}

.container-links {
  margin-top: 8px;
  margin-bottom: 0;
  font-weight: 500;
}

.container-input-1, .container-input-2, .container-input-3, .container-input-4 {
  margin-bottom: 12px;
}

.focus-link {
  color: #0ea5e9;
  outline: none;
  font-weight: 500;
  text-decoration: none;
}

.focus-link:focus {
  outline-offset: 2px;
  text-decoration: underline;
}

.focusable-link {
  outline: none;
  text-decoration: none;
}

.focusable-link:hover, .focusable-link:focus {
  text-decoration: underline;
}

.session-timeout-overlay {
  backdrop-filter: blur(2px);
  z-index: 10004;
  background-color: #4b5563bf;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
}

.session-timeout-modal {
  text-align: center;
  background: #fff;
  border-radius: 10px;
  max-width: 400px;
  padding: 20px 30px;
  box-shadow: 0 4px 12px #0000004d;
}

body {
  margin: 0;
  font-family: Arial, sans-serif;
}

.landing-page {
  width: 100%;
  overflow-x: hidden;
}

.navbar {
  background-color: #fff;
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 20px 60px;
  display: flex;
}

.nav-logo {
  color: #000;
  align-items: center;
  gap: 12px;
  font-size: 20px;
  font-weight: 600;
  display: flex;
}

.nav-links {
  align-items: center;
  gap: 16px;
  display: flex;
}

.nav-links a {
  margin-right: 0;
}

.btn-primary {
  color: #fff;
  cursor: pointer;
  background-color: #0ea5e9;
  border: none;
  border-radius: 24px;
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 600;
  transition: all .2s;
}

.btn-primary:hover {
  background-color: #0284c7;
  transform: translateY(-1px);
}

.btn-outline {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 600;
  transition: all .2s;
}

.btn-outline:hover {
  background-color: #f8f9fa;
  border-color: #d1d5db;
}

.hero, .brands, .features, .solution-cta, .testimonials, .faq, .final-cta {
  text-align: center;
  padding: 60px 20px;
}

.feature-cards {
  text-align: center;
  background-color: #f0f9ff;
  padding: 80px 60px;
}

.hero-container {
  background-color: #fff;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  min-height: 65vh;
  padding: 70px 0 0 80px;
  display: flex;
}

.hero-left {
  flex: 0 0 45%;
  max-width: 600px;
  padding-right: 0;
}

.hero-heading {
  color: #000;
  margin-bottom: 24px;
  font-size: 56px;
  font-weight: 700;
  line-height: 1.2;
}

.main-heading {
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 0;
  display: flex;
}

.hero-subtext {
  color: #666;
  max-width: 480px;
  margin-bottom: 30px;
  font-size: 18px;
}

.hero-subs {
  margin-top: 24px;
  margin-bottom: 32px;
}

.hero-buttons {
  gap: 16px;
  margin-top: 40px;
  display: flex;
}

.hero-right {
  text-align: right;
  flex: 1;
  align-items: center;
  min-width: 500px;
  margin-right: -60px;
  display: flex;
  overflow: visible;
}

.hero-image {
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
  min-width: 600px;
  max-width: 800px;
  height: auto;
  display: block;
}

.features-grid {
  flex-direction: column;
  justify-content: flex-start;
  margin-top: 5%;
  display: flex;
}

.feature-item {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.feature-text {
  flex: 1;
  min-width: 300px;
  padding-left: 5%;
}

.feature-image {
  flex: 1;
  min-width: 300px;
}

.feature-image img {
  width: 100%;
  max-width: 500px;
  height: auto;
}

.feature-image-2 {
  flex: 1;
  min-width: 300px;
  margin-left: 5%;
}

.feature-image-2 img {
  width: 100%;
  max-width: 500px;
  height: auto;
}

.feature-list {
  margin-top: 18px;
}

.feature-list li {
  margin-bottom: 8px;
  line-height: 1;
}

.feature-image-3 {
  flex: 1;
  min-width: 300px;
}

.feature-image-3 img {
  width: 100%;
  max-width: 500px;
  height: auto;
}

.cards {
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  max-width: 1200px;
  margin-top: 48px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.card-landing {
  background-color: #fff;
  border-radius: 16px;
  flex-direction: column;
  flex: 1;
  min-width: 280px;
  max-width: 350px;
  padding: 32px 24px;
  transition: transform .2s, box-shadow .2s;
  display: flex;
  box-shadow: 0 2px 8px #00000014;
  text-align: left !important;
}

.card-landing:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 16px #0000001f;
}

.testimonial-cards {
  justify-content: space-between;
  gap: 20px;
  margin-top: 40px;
  display: flex;
}

.logos {
  text-align: center;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.framework-icons {
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 20px;
  display: flex;
}

.framework-icons img {
  max-width: 50%;
  height: auto;
  display: block;
}

.faq {
  background-color: #f0f9ff;
}

.faq-wrapper {
  max-width: 85%;
  margin: 10px auto 0;
}

.faq-item {
  border-bottom: 1px solid #d1d5db;
}

.faq-question {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  display: flex;
}

.faq-answer {
  text-align: left;
  width: 85%;
  padding: 10px 0 16px;
  font-size: 14px;
  line-height: 1.5;
}

.footer {
  color: #fff;
  background-color: #0ea5e9;
  padding: 40px 20px;
}

.footer-content {
  flex-wrap: wrap;
  justify-content: space-between;
  display: flex;
}

.footer-links div {
  margin-right: 30px;
}

.highlight {
  color: #0ea5e9;
}

.stats {
  color: #fff;
  text-align: center;
  background-color: #0ea5e9;
  padding: 60px 20px;
}

.stats h2 {
  margin-bottom: 40px;
  font-size: 1.5rem;
  font-weight: 600;
}

.stats-numbers {
  flex-wrap: wrap;
  justify-content: center;
  gap: 60px;
  display: flex;
}

.stats {
  padding: 40px 0;
}

.stat-item h3 {
  margin-bottom: 10px;
  font-size: 2rem;
  font-weight: 700;
}

.stat-item p {
  color: #e0e0e0;
  font-size: .95rem;
}

.stats-row {
  flex-wrap: wrap;
  justify-content: center;
  gap: 70px;
  margin-top: 5%;
  display: flex;
}

.stat-item {
  flex-direction: column;
  max-width: 260px;
  display: flex;
  background-color: #0284c7 !important;
  gap: 0 !important;
}

.stat-subitem {
  margin-top: 6%;
}

.final-cta {
  color: #fff;
  text-align: center;
  background-color: #0ea5e9;
  padding: 60px 20px;
}

.final-cta h2 {
  margin-bottom: 30px;
  font-size: 1.8rem;
  font-weight: 600;
}

.cta-buttons {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 20px;
  padding-top: 4%;
  display: flex;
}

.btn-white {
  color: #002a7d;
  cursor: pointer;
  background-color: #fff;
  border: none;
  border-radius: 999px;
  width: auto;
  margin-bottom: 11px;
  padding: 12px 24px;
  font-weight: 600;
  display: inline-flex;
}

.btn-link {
  color: #fff;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: 12px 24px;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
}

.heading-feature-1 {
  margin-right: 48%;
}

.heading-feature-3 {
  justify-content: flex-start;
  display: flex;
}

.heading-feature-2 {
  margin-right: 58%;
}

.jds-icons {
  margin-top: 10px;
  margin-bottom: 25px;
  padding-top: 10px;
}

@media (width <= 1024px) {
  .hero-container {
    padding: 60px 40px;
  }

  .hero-left {
    padding-right: 40px;
  }

  .navbar {
    padding: 20px 40px;
  }

  .feature-cards {
    padding: 60px 40px;
  }
}

@media (width <= 768px) {
  .hero-container {
    text-align: center;
    flex-direction: column;
    padding: 40px 24px;
  }

  .hero-left {
    max-width: 100%;
    margin-bottom: 40px;
    padding-right: 0;
  }

  .main-heading {
    justify-content: center;
  }

  .hero-heading {
    font-size: 40px;
  }

  .hero-buttons {
    flex-wrap: wrap;
    justify-content: center;
  }

  .hero-right {
    width: 100%;
    min-width: 100%;
  }

  .navbar {
    flex-wrap: wrap;
    gap: 16px;
    padding: 16px 24px;
  }

  .nav-logo {
    font-size: 18px;
  }

  .feature-cards {
    padding: 40px 24px;
  }

  .cards {
    flex-direction: column;
    align-items: center;
  }

  .card-landing {
    width: 100%;
    max-width: 100%;
  }
}

@media (width <= 480px) {
  .hero-heading {
    font-size: 32px;
  }

  .hero-buttons {
    flex-direction: column;
    width: 100%;
  }

  .hero-buttons button {
    width: 100%;
  }

  .navbar {
    padding: 12px 16px;
  }

  .btn-primary, .btn-outline {
    padding: 8px 20px;
    font-size: 13px;
  }
}

.contact-page {
  background-color: #fff;
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
}

.contact-card {
  background: #fff;
  border-radius: 16px;
  width: 440px;
  padding: 32px 26px;
  font-family: Arial, sans-serif;
  box-shadow: 0 4px 20px #00000014;
}

.contact-content {
  flex-direction: column;
  display: flex;
}

.container-header {
  margin-top: 7%;
  margin-bottom: 3%;
}

.contact-box {
  background: #f5f5f5;
  border-radius: 8px;
  flex-direction: column;
  gap: 1.5rem;
  margin-top: 3%;
  padding: 1.5rem;
  display: flex;
}

.contact-item {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.main-dashboard-content {
  max-width: 100%;
  padding: 24px 32px;
}

@media (width <= 1024px) {
  .main-dashboard-content {
    padding: 20px 24px;
  }
}

@media (width <= 768px) {
  .main-dashboard-content {
    padding: 16px 20px;
  }
}

@media (width <= 480px) {
  .main-dashboard-content {
    padding: 12px 16px;
  }
}

.dashboard-title {
  margin-top: 16px;
  margin-bottom: 24px;
  display: block;
}

.section-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  display: flex;
}

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

.action-button {
  color: #fff;
  cursor: pointer;
  background-color: #1890ff;
  border: none;
  border-radius: 4px;
  padding: 8px 16px;
  font-size: 14px;
}

.cards-grid {
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 16px;
  display: grid;
}

@media (width <= 1024px) {
  .cards-grid {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 12px;
  }
}

@media (width <= 768px) {
  .cards-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}

@media (width <= 480px) {
  .cards-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.card {
  background-color: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  min-width: 160px;
  padding: 20px;
  box-shadow: 0 2px 4px #0000000d;
}

.data-card {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.card-icon {
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 8px;
  font-size: 24px;
  display: flex;
}

.card-icon.blue {
  color: #1890ff;
  background-color: #e6f7ff;
}

.card-icon.purple {
  color: #722ed1;
  background-color: #f9f0ff;
}

.card-icon.pink {
  color: #eb2f96;
  background-color: #fff0f6;
}

.card-icon.orange {
  color: #faad14;
  background-color: #fff7e6;
}

.card-icon.green {
  color: #52c41a;
  background-color: #f6ffed;
}

.status-card {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.status-card.green {
  border-left: 4px solid #52c41a;
}

.status-card.orange {
  border-left: 4px solid #faad14;
}

.status-card.grey {
  border-left: 4px solid #8c8c8c;
}

.card-icon-green {
  color: #52c41a;
  background-color: #f6ffed;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 16px;
  display: flex;
}

.card-icon-orange {
  color: #faad14;
  background-color: #fff7e6;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 16px;
  display: flex;
}

.card-icon-grey {
  color: #8c8c8c;
  background-color: #f5f5f5;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 16px;
  display: flex;
}

.consents-grid {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

@media (width <= 1024px) {
  .consents-grid {
    gap: 12px;
  }
}

@media (width <= 768px) {
  .consents-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.consents-left, .consents-right {
  grid-template-columns: 1fr;
  gap: 16px;
  display: grid;
}

.summary-card {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.summary-list {
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.summary-row {
  justify-content: space-between;
  align-items: center;
  padding: 4px 0;
  display: flex;
}

.cookies-grid {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

@media (width <= 1024px) {
  .cookies-grid {
    gap: 12px;
  }
}

@media (width <= 768px) {
  .cookies-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.cookies-left {
  grid-template-columns: 1fr;
  gap: 16px;
  display: grid;
}

.cookies-right {
  width: 100%;
  display: flex;
}

.chart-card {
  flex-direction: column;
  gap: 16px;
  width: 100%;
  display: flex;
}

.chart-content {
  align-items: center;
  gap: 24px;
  display: flex;
}

.donut-chart-wrapper {
  width: 150px;
  height: 150px;
  position: relative;
}

.donut {
  transform: rotate(-90deg);
}

.chart-center {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.chart-legend {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

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

.legend-color {
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.legend-color.green {
  background-color: #52c41a;
}

.legend-color.dark-blue {
  background-color: #1890ff;
}

.legend-color.red {
  background-color: #f5222d;
}

.legend-color.orange {
  background-color: #faad14;
}

.legend-color.purple {
  background-color: #722ed1;
}

.legend-color.light-blue {
  background-color: #13c2c2;
}

.grievance-grid {
  grid-template-columns: 2fr 1fr 1fr;
  gap: 16px;
  display: grid;
}

@media (width <= 1024px) {
  .grievance-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
}

@media (width <= 768px) {
  .grievance-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.grievance-chart {
  width: 100%;
}

.grievance-sla, .sla-content {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.donut-chart-wrapper.small {
  width: 100px;
  height: 100px;
}

.chart-center-small {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sla-details {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

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

.icon-green {
  color: #52c41a;
  font-weight: bold;
}

.icon-orange {
  color: #faad14;
  font-weight: bold;
}

.grievance-notifications {
  flex-direction: column;
  gap: 20px;
  display: flex;
}

.notification-item {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.icon-grey {
  background-color: #f5f5f5;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 16px;
  display: flex;
}

.dataProtectionOfficer-outer-division {
  flex-direction: column;
  gap: 5px;
  display: flex;
}

.dataProtectionOfficer-header-and-badge {
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  display: flex;
}

.dataProtectionOfficer-badge {
  text-align: center;
  background-color: #f5f5f5;
  border-radius: 5px;
  width: 159px;
  height: 24px;
}

.dataProtectionOfficer-inputs-column-div {
  grid-template-columns: 40%;
  display: grid;
}

.dataProtectionOfficer-input {
  margin-bottom: 20px;
}

.dataProtectionOfficer-save-btn {
  margin-left: 957px;
}

@media (width <= 1024px) {
  .dataProtectionOfficer-inputs-column-div {
    grid-template-columns: 60%;
  }

  .dataProtectionOfficer-save-btn {
    margin-left: auto;
  }
}

@media (width <= 768px) {
  .dataProtectionOfficer-inputs-column-div {
    grid-template-columns: 100%;
  }

  .dataProtectionOfficer-save-btn {
    width: 100%;
    margin-left: 0;
  }

  .dataProtectionOfficer-header-and-badge {
    flex-wrap: wrap;
    gap: 8px;
  }

  .dataProtectionOfficer-badge {
    width: auto;
    min-width: 120px;
    padding: 0 8px;
  }
}

@media (width <= 480px) {
  .dataProtectionOfficer-input {
    margin-bottom: 16px;
  }
}

.configurePage {
  box-sizing: border-box;
  width: auto;
  max-width: 100%;
  margin: 5.5rem 2% 2%;
  overflow-x: hidden;
}

@media (width <= 1024px) {
  .configurePage {
    margin: 5rem 3% 5% 16px;
  }
}

@media (width <= 768px) {
  .configurePage {
    margin: 4.5rem 4% 4% 16px;
  }
}

@media (width <= 480px) {
  .configurePage {
    margin: 4rem 5% 3% 16px;
  }
}

@keyframes shimmer {
  0% {
    background-position: -1000px 0;
  }

  100% {
    background-position: 1000px 0;
  }
}

.shimmer-box {
  background: linear-gradient(90deg, #f0f0f0 0%, #f8f8f8 50%, #f0f0f0 100%) 0 0 / 1000px 100%;
  border-radius: 4px;
  animation: 2s infinite shimmer;
}

.shimmer-config-container {
  box-sizing: border-box;
  width: 80%;
  padding: 0 2% 0 0;
}

.shimmer-header {
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  display: flex;
}

.shimmer-title {
  width: 200px;
  height: 32px;
}

.shimmer-badge {
  border-radius: 12px;
  width: 120px;
  height: 24px;
}

.shimmer-content {
  gap: 40px;
  margin-bottom: 32px;
  display: flex;
}

.shimmer-column {
  flex-direction: column;
  flex: 1;
  gap: 24px;
  display: flex;
}

.shimmer-field-group {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.shimmer-label {
  width: 180px;
  height: 16px;
  margin-bottom: 4px;
}

.shimmer-input, .shimmer-select {
  width: 100%;
  height: 40px;
}

.shimmer-helper {
  width: 280px;
  height: 14px;
  margin-top: 4px;
}

.shimmer-input-group {
  align-items: center;
  gap: 12px;
  display: flex;
}

.shimmer-input-group .shimmer-input {
  flex: 1;
  width: auto;
}

.shimmer-dropdown-small {
  width: 120px;
  height: 40px;
}

.shimmer-checkbox-group {
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  display: flex;
}

.shimmer-checkbox {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.shimmer-checkbox-label {
  width: 200px;
  height: 16px;
}

.shimmer-upload-box {
  border: 2px dashed #e0e0e0;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 120px;
  display: flex;
}

.shimmer-button-container {
  border-top: 1px solid #e0e0e0;
  justify-content: flex-start;
  margin-top: 32px;
  padding-top: 24px;
  display: flex;
}

.shimmer-button {
  border-radius: 6px;
  width: 120px;
  height: 40px;
}

@media (width <= 1024px) {
  .shimmer-content {
    flex-direction: column;
    gap: 24px;
  }
}

.shimmer-config-container.consent-page .shimmer-content {
  flex-direction: column;
}

.shimmer-config-container.grievance-page .shimmer-content {
  flex-direction: row;
}

.shimmer-config-container.notification-page .shimmer-content {
  flex-direction: column;
}

.shimmer-config-container.system-config-page .shimmer-content {
  flex-direction: row;
}

.shimmer-config-container.dpo-page .shimmer-content {
  flex-direction: column;
}

.systemconfigure-input {
  margin-bottom: 20px;
}

@media (width <= 768px) {
  .systemConfig-badge {
    width: auto;
    min-width: 120px;
    padding: 0 8px;
  }
}

@media (width <= 1024px) {
  .systemConfig-inputs-column-div {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}

@media (width <= 768px) {
  .systemConfig-inputs-column-div {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

@media (width <= 1024px) {
  .systemConfiguration-save-btn {
    margin-left: auto;
  }
}

@media (width <= 768px) {
  .systemConfiguration-save-btn {
    width: 100%;
    margin-left: 0;
  }
}

@media (width <= 1024px) {
  .upload-box {
    width: 100%;
    max-width: 400px;
  }
}

@media (width <= 768px) {
  .upload-box {
    width: 100%;
    padding: 30px 20px;
  }
}

@media (width <= 480px) {
  .upload-box {
    padding: 20px 15px;
  }
}

.previewFile {
  cursor: pointer;
  align-items: center;
  gap: 10px;
  display: flex;
}

.consent-page {
  flex-direction: column;
  display: flex;
}

.consent-heading {
  align-items: center;
  gap: 10px;
  display: flex;
}

.consent-content {
  flex-direction: column;
  gap: 20px;
  width: 40%;
  margin-top: 3%;
  display: flex;
}

@media (width <= 1024px) {
  .consent-content {
    width: 60%;
  }
}

@media (width <= 768px) {
  .consent-content {
    width: 100%;
    margin-top: 5%;
  }
}

@media (width <= 768px) {
  .content-2 {
    flex-direction: column;
    gap: 15px;
  }
}

.content-4 {
  flex-direction: column;
  gap: 20px;
  display: flex;
}

@media (width <= 1024px) {
  .content-5 {
    margin-right: 3%;
  }
}

@media (width <= 768px) {
  .content-5 {
    justify-content: center;
    margin-top: 3%;
    margin-right: 0;
  }
}

.duration-dropdown-group, .consent-dropdown-group {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  padding-left: 0;
  display: flex;
}

.consent-dropdown-group label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.consent-dropdown-group select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 14px;
}

.consent-dropdown-groups select:focus {
  border-color: #999;
  outline: none;
}

.duration-dropdown-group label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.duration-dropdown-group select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 14px;
}

.duration-dropdown-groups select:focus {
  border-color: #999;
  outline: none;
}

.gr-page {
  flex-direction: column;
  display: flex;
}

.gr-heading {
  align-items: center;
  gap: 10px;
  margin-bottom: 3%;
  display: flex;
}

.gr-dropdown-group {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  margin-bottom: 20px;
  padding-left: 0;
  display: flex;
}

.gr-dropdown-group label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.gr-dropdown-group select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 14px;
}

.content-2 {
  flex-direction: row;
  gap: 20px;
  display: flex;
}

.gr-dropdown-groups select:focus {
  border-color: #999;
  outline: none;
}

.grievance-inputs-column-div {
  grid-template-columns: 40% 40%;
  gap: 50px;
  display: grid;
}

.content-5 {
  flex-direction: row-reverse;
  margin-top: 2%;
  margin-right: 5%;
  display: flex;
}

.gr-input {
  margin-bottom: 20px;
}

.container-wrapper {
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
  display: flex;
}

.search-wrapper {
  align-self: flex-end;
}

.notif-page {
  flex-direction: column;
  display: flex;
}

.notif-heading {
  align-items: center;
  gap: 10px;
  margin-bottom: 1%;
  display: flex;
}

.notif-tabs-setup {
  width: 95%;
}

.service-inputs-main {
  flex-direction: column;
  gap: 20px;
  width: 40%;
  display: flex;
}

.custom-table-outer-div {
  margin-top: "4%";
  right: 0;
}

.pii-table-container {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  display: grid;
  overflow: hidden;
}

.dropdown-group select[multiple] {
  height: 40px;
  overflow-y: auto;
}

.dropdown-group-pa {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  padding: 0;
  display: flex;
}

.dropdown-group-pa label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.dropdown-group-pa select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 14px;
}

.dropdown-group-pa select:focus {
  border-color: #999;
  outline: none;
}

.dropdown-group-pa small {
  color: #666;
  font-size: 12px;
}

.custom-table th {
  background-color: #f5f5f5;
  font-weight: bold;
}

.pii-outer-div {
  padding-top: 2%;
}

.pii-outer-pannel {
  border-width: 1px;
  border-color: #e0e0e0;
  border-radius: 11px;
  flex-direction: row;
  display: flex;
  overflow: hidden;
}

.pii-pannel-left {
  box-sizing: border-box;
  scrollbar-width: thin;
  background-color: #e7ebf8;
  border-top-left-radius: 11px;
  border-bottom-left-radius: 11px;
  width: 263px;
  height: 629px;
  padding: 16px;
  overflow-y: auto;
}

.pii-pannel-right {
  background-color: #fff;
  border-top-right-radius: 11px;
  border-bottom-right-radius: 11px;
  flex: 1;
  padding: 20px;
}

.pii-right-pannel-checkbox-outer {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
  display: flex;
}

.pii-right-pannel-checkbox {
  align-items: center;
  display: flex;
}

.pii-right-pannel-add-btn {
  display: flex;
}

.pii-leftPannel_button {
  cursor: pointer;
  display: flex;
}

.master-set-up-modal-container {
  scrollbar-width: none;
  background-color: #fff;
  border-radius: 32px;
  width: 600px;
  max-height: 80vh;
  padding: 20px;
  overflow-y: auto;
  box-shadow: 0 4px 12px #00000026;
}

.modal-add-btn-container {
  justify-content: flex-end;
  align-items: flex-end;
  margin-top: 20px;
  display: flex;
}

.outer-modal-add-btn {
  justify-content: flex-end;
  display: flex;
}

textarea {
  resize: none;
  overflow-wrap: break-word;
  word-wrap: break-word;
  white-space: pre-wrap;
  box-sizing: border-box;
  border: 1px solid #b5b5b5;
  border-radius: 8px;
  width: 100%;
  max-width: 100%;
  padding: 8px;
  font-family: inherit;
  font-size: 14px;
}

.word-count {
  justify-content: flex-end;
  display: flex;
}

.mainDiv-table-and-container {
  width: 95%;
}

.common-add-btn {
  justify-content: flex-end;
  margin-top: 2%;
  display: flex;
}

.outer-modal-add-btn-inner-container {
  cursor: pointer;
  padding-bottom: 1%;
}

.custom-divider {
  background-color: #e0e0e0;
  width: 100%;
  height: 1px;
}

.attachment-btn {
  cursor: pointer;
}

.master-fileUploader-custom {
  cursor: pointer;
  border: 1px dashed #b5b5b5;
  border-radius: 8px;
  justify-content: center;
  margin-top: 3px;
  margin-bottom: 3px;
  padding-top: 25px;
  padding-bottom: 25px;
  display: flex;
}

.master-fileUploader-custom.dragover, .master-fileUploader-custom:hover {
  background: #595e61;
  border-color: #333;
}

.master-file-uploader {
  background-color: #f5f5f5;
  border-radius: 16px;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 16px 20px;
  display: flex;
}

.customerActivityLoader {
  justify-content: center;
  align-items: center;
  display: flex;
}

.title-margin {
  margin-bottom: 20px;
}

.clickable-icon {
  cursor: pointer;
  align-items: center;
  display: inline-flex;
}

.masterSetup-new-css-tabs-header {
  cursor: pointer;
  border-bottom: 1px solid #e0e0e0;
  gap: 30px;
  display: flex;
}

.masterSetup-new-css-tab-item {
  color: #333;
  padding: 8px 0;
  font-weight: normal;
  position: relative;
}

.masterSetup-new-css-tab-item.active {
  font-weight: bold;
}

.masterSetup-new-css-underline {
  background-color: #0f3cc9;
  border-radius: 5px;
  height: 3px;
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
}

.masterSetup-new-css-tab-content {
  margin-top: 16px;
}

.tooltip-text {
  visibility: hidden;
  color: #fff;
  text-align: center;
  z-index: 1;
  opacity: 0;
  background-color: #555;
  border-radius: 6px;
  width: 200px;
  margin-left: -100px;
  padding: 5px;
  transition: opacity .3s;
  position: absolute;
  bottom: 125%;
  left: 50%;
}

@media (width <= 1024px) {
  .mainDiv-table-and-container {
    width: 98%;
  }

  .pii-table-container {
    grid-template-columns: 1fr;
  }
}

@media (width <= 768px) {
  .mainDiv-table-and-container {
    width: 100%;
  }

  .pii-outer-pannel {
    flex-direction: column;
  }

  .pii-pannel-left {
    border-radius: 11px 11px 0 0;
    width: 100%;
    height: auto;
  }

  .pii-pannel-right {
    border-radius: 0 0 11px 11px;
  }

  .master-set-up-modal-container {
    width: 90%;
    max-width: none;
    padding: 16px;
  }

  .masterSetup-new-css-tabs-header {
    -webkit-overflow-scrolling: touch;
    gap: 16px;
    overflow-x: auto;
  }

  .custom-table {
    min-width: 600px;
  }
}

@media (width <= 480px) {
  .master-set-up-modal-container {
    width: 95%;
    padding: 12px;
  }

  .masterSetup-new-css-tabs-header {
    gap: 12px;
  }
}

.bs-page {
  flex-direction: column;
  display: flex;
}

.bs-heading {
  align-items: center;
  gap: 10px;
  display: flex;
}

.bs-content {
  margin-top: 3%;
}

.main-heading-ct {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.tag {
  text-align: center;
  background-color: #f5f5f5;
  border-radius: 5px;
  width: 159px;
  height: 24px;
}

.business-table-container {
  width: 100%;
  padding: 5px;
  display: inline-block;
}

.business-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 95%;
  font-family: Arial, sans-serif;
}

@media (width <= 1024px) {
  .business-table {
    width: 100%;
    font-size: 13px;
  }
}

@media (width <= 768px) {
  .business-table-container {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
  }

  .business-table {
    width: 100%;
    min-width: 600px;
    font-size: 12px;
  }

  .business-table th, .business-table td {
    padding: 8px;
    font-size: 12px;
  }
}

.business-table thead {
  background-color: #f5f5f5;
}

.business-table th {
  text-align: left;
  color: #333;
  padding: 8px 12px;
  font-size: 14px;
  font-weight: bold;
}

.business-table td {
  color: #000;
  word-wrap: break-word;
  overflow-wrap: break-word;
  border-top: 1px solid #ddd;
  padding: 10px 12px;
  font-size: 13px;
}

@media (width <= 1024px) {
  .modal-container-old {
    width: 80%;
    max-width: 600px;
    height: auto;
    max-height: 80vh;
  }
}

@media (width <= 768px) {
  .modal-container-old {
    border-radius: 20px;
    width: 90%;
    max-width: none;
    height: auto;
    max-height: 85vh;
    padding: 16px;
  }
}

.char-counter {
  text-align: right;
  color: #555;
  margin-top: 4px;
  font-size: 12px;
}

.dropdown-group-1 {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  display: flex;
}

.dropdown-group-1 label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.dropdown-group-1 select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 14px;
}

.dropdown-group-1 select:focus {
  border-color: #999;
  outline: none;
}

.dashboard-img {
  justify-content: center;
  align-items: center;
  width: 160px;
  height: 120px;
  margin-top: 8%;
  margin-right: 3%;
  display: flex;
}

@media (width <= 1024px) {
  .dashboard-img {
    width: 140px;
    height: 100px;
  }
}

@media (width <= 768px) {
  .dashboard-img {
    width: 120px;
    height: 80px;
    margin-right: 0;
  }
}

.dashboard-btn {
  justify-content: center;
  gap: 16px;
  margin-top: 16px;
  display: flex;
}

@media (width <= 768px) {
  .dashboard-btn {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }
}

.configure-dashboard-page {
  text-align: center;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  padding-right: 5%;
  display: flex;
}

.guided-tour-overlay {
  z-index: 10005;
  pointer-events: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
}

.guided-tour-mask {
  pointer-events: all;
  z-index: 1;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
}

.guided-tour-highlight {
  pointer-events: none;
  z-index: 2;
  contain: layout style paint;
  border: 3px solid #06f;
  border-radius: 12px;
  transition: all .2s ease-out;
  animation: 2.5s ease-in-out infinite pulse;
  position: fixed;
  overflow: hidden;
  box-shadow: 0 0 0 4px #0066ff26, 0 0 20px #0066ff40;
  box-sizing: border-box !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
}

@keyframes pulse {
  0%, 100% {
    opacity: .6;
  }

  50% {
    opacity: 1;
  }
}

.guided-tour-tooltip {
  z-index: 99999;
  pointer-events: all;
  contain: layout style;
  background: linear-gradient(#fff 0%, #fafbfc 100%);
  border: 1px solid #00000014;
  border-radius: 0;
  min-width: min(280px, 100vw - 60px);
  transition: box-shadow .2s;
  overflow: visible;
  box-shadow: 0 20px 60px #0000001f, 0 8px 24px #00000014, 0 0 1px #0000001a;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: min(420px, 100vw - 60px) !important;
  max-height: calc(100vh - 60px) !important;
  position: fixed !important;
}

.guided-tour-tooltip > * {
  overflow: hidden;
}

.guided-tour-tooltip.dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  transition: none;
  box-shadow: 0 30px 80px #0000002e, 0 12px 32px #0000001f, 0 0 1px #00000026;
}

.guided-tour-header {
  background: linear-gradient(135deg, #06f 0%, #0052cc 100%);
  border-bottom: 1px solid #ffffff1a;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px 12px;
  display: flex;
  position: relative;
}

.guided-tour-drag-handle {
  cursor: -webkit-grab;
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
  flex: 1;
  align-items: center;
  gap: 10px;
  display: flex;
}

.guided-tour-drag-handle:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.drag-handle-icon {
  color: #ffffffb3;
  justify-content: center;
  align-items: center;
  transition: color .2s;
  display: flex;
}

.guided-tour-drag-handle:hover .drag-handle-icon {
  color: #fff;
}

.guided-tour-step-indicator {
  backdrop-filter: blur(10px);
  letter-spacing: .3px;
  color: #fff;
  text-transform: uppercase;
  background-color: #ffffff26;
  border-radius: 20px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
}

.guided-tour-close {
  cursor: pointer;
  color: #fff;
  z-index: 1;
  background: #ffffff1a;
  border: 1px solid #fff3;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  padding: 6px;
  transition: all .2s;
  display: flex;
  position: relative;
}

.guided-tour-close:hover {
  background-color: #fff3;
  transform: scale(1.05);
}

.guided-tour-close:active {
  transform: scale(.95);
}

.guided-tour-content {
  background: #fff;
  max-height: calc(100vh - 260px);
  padding: 24px 24px 20px;
  overflow-y: auto;
}

.guided-tour-title {
  color: #1a1a1a;
  letter-spacing: -.2px;
  margin: 0 0 12px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.guided-tour-description {
  color: #4a5568;
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
}

.guided-tour-image {
  -o-object-fit: cover;
  object-fit: cover;
  border: 1px solid #0000000f;
  border-radius: 12px;
  width: 100%;
  max-height: 200px;
  margin-top: 16px;
}

.guided-tour-progress {
  background: #fff;
  justify-content: center;
  gap: 6px;
  padding: 16px 24px 12px;
  display: flex;
}

.guided-tour-dot {
  cursor: pointer;
  background-color: #e2e8f0;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  transition: all .3s cubic-bezier(.4, 0, .2, 1);
  position: relative;
}

.guided-tour-dot:hover {
  background-color: #cbd5e0;
  transform: scale(1.3);
}

.guided-tour-dot.active {
  background: linear-gradient(135deg, #06f 0%, #0052cc 100%);
  border-radius: 4px;
  width: 24px;
  box-shadow: 0 2px 8px #0066ff4d;
}

.guided-tour-dot.completed {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.guided-tour-dot.completed:after {
  content: "✓";
  color: #fff;
  font-size: 6px;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.guided-tour-footer {
  background: linear-gradient(to top, #f8fafc 0%, #fff 100%);
  border-top: 1px solid #0000000d;
  padding: 12px 24px 20px;
}

.guided-tour-actions {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.guided-tour-nav-buttons {
  gap: 8px;
  display: flex;
}

.guided-tour-actions button {
  border-radius: 8px !important;
  height: auto !important;
  min-height: auto !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  transition: all .2s !important;
}

.guided-tour-actions button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px #0000001a !important;
}

.guided-tour-actions button:active {
  transform: translateY(0);
}

@media (width <= 768px) {
  .guided-tour-tooltip {
    min-width: 280px;
    max-width: 90vw;
    top: auto !important;
    bottom: 80px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  .guided-tour-header {
    padding: 14px 16px 10px;
  }

  .guided-tour-content {
    padding: 20px 20px 16px;
  }

  .guided-tour-title {
    font-size: 16px;
  }

  .guided-tour-description {
    font-size: 13px;
  }

  .guided-tour-footer {
    padding: 10px 20px 16px;
  }

  .guided-tour-actions {
    flex-direction: column;
    gap: 8px;
  }

  .guided-tour-nav-buttons {
    justify-content: flex-end;
    width: 100%;
  }

  .guided-tour-actions button {
    width: 100%;
  }

  .guided-tour-nav-buttons button {
    flex: 1;
  }
}

@media (width <= 480px) {
  .guided-tour-tooltip {
    min-width: 260px;
    max-width: 95vw;
  }

  .guided-tour-header {
    padding: 12px 14px 8px;
  }

  .guided-tour-content {
    padding: 18px 18px 14px;
  }

  .guided-tour-title {
    font-size: 15px;
  }

  .guided-tour-description {
    font-size: 12px;
  }

  .guided-tour-step-indicator {
    padding: 3px 10px;
    font-size: 10px;
  }

  .drag-handle-icon svg {
    width: 16px;
    height: 16px;
  }

  .guided-tour-footer {
    padding: 8px 18px 14px;
  }

  .guided-tour-actions button {
    padding: 7px 14px !important;
    font-size: 12px !important;
  }
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.tour-button {
  color: #fff;
  cursor: pointer;
  z-index: 999;
  background: linear-gradient(135deg, #06f 0%, #0052cc 100%);
  border: none;
  border-radius: 50px;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 600;
  transition: all .3s;
  animation: 3s infinite pulse-glow;
  display: flex;
  position: fixed;
  box-shadow: 0 4px 12px #0066ff4d, 0 2px 4px #0000001a;
}

.tour-button:hover {
  background: linear-gradient(135deg, #0052cc 0%, #06f 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px #06f6, 0 3px 6px #00000026;
}

.tour-button:active {
  transform: translateY(0);
}

.tour-button-label {
  font-family: inherit;
}

@keyframes pulse-glow {
  0%, 100% {
    box-shadow: 0 4px 12px #0066ff4d, 0 2px 4px #0000001a;
  }

  50% {
    box-shadow: 0 4px 20px #0066ff80, 0 2px 4px #0000001a;
  }
}

@media (width <= 768px) {
  .tour-button {
    padding: 10px 16px;
    font-size: 13px;
  }

  .tour-button-label {
    display: none;
  }

  .tour-button {
    border-radius: 50%;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 12px;
  }
}

@media (width <= 1024px) {
  .main-content {
    flex-direction: column;
    margin-top: 3%;
  }
}

.right-half {
  flex: 1;
  align-self: flex-start;
  max-height: calc(100vh - 120px);
  padding: 16px;
  position: sticky;
  top: 20px;
  overflow-y: auto;
}

@media (width <= 768px) {
  .popup {
    width: 90%;
    margin-left: 5%;
  }
}

@media (width <= 768px) {
  .tabs {
    flex-wrap: wrap;
    gap: 6px;
    margin-left: 10px;
    margin-right: 10px;
  }
}

@media (width <= 480px) {
  .tabs {
    gap: 4px;
    margin-left: 8px;
    margin-right: 8px;
  }
}

.tab-btn {
  color: #0a2885;
  cursor: pointer;
  background: #f4f6f9;
  border: none;
  border-radius: 25px;
  outline: none;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 15px;
  font-weight: 600;
  transition: background .2s, color .2s;
  display: flex;
}

@media (width <= 768px) {
  .tab-btn {
    padding: 6px 12px;
    font-size: 13px;
  }
}

@media (width <= 480px) {
  .tab-btn {
    padding: 5px 10px;
    font-size: 12px;
  }
}

.tab-btn-cr {
  color: #0a2885;
  cursor: pointer;
  background: #f4f6f9;
  border: none;
  border-radius: 25px;
  outline: none;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 15px;
  font-weight: 600;
  transition: background .2s, color .2s;
  display: flex;
}

p.custom-text-p {
  font-family: system-ui;
  font-size: 15px;
  font-weight: 500;
  color: inherit !important;
}

.dropdown-group {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  padding: 0 15px;
  display: flex;
}

.dropdown-group select {
  color: #333;
  appearance: none;
  box-sizing: border-box;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  width: 100%;
  padding: 10px 14px;
  font-size: 14px;
}

.language-con {
  background-color: #fff;
  border-radius: 15px;
  width: auto;
  height: auto;
  margin-top: 12px;
}

.brand-controls {
  flex-direction: column;
  gap: 12px;
  padding: 0 20px;
  display: flex;
}

.toggle-switch {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.systemConfig-outer-div {
  flex-direction: column;
  gap: 5px;
  display: flex;
}

.fileUploader-custom1.dragover, .fileUploader-custom1:hover {
  background: #595e61;
  border-color: #333;
}

.fileUploader-custom {
  cursor: pointer;
  border: 1px dashed #b5b5b5;
  border-radius: 8px;
  justify-content: center;
  padding-top: 16px;
  padding-bottom: 16px;
  display: flex;
}

.systemConfig-header-and-badge {
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  display: flex;
}

.systemConfig-badge {
  text-align: center;
  background-color: #f5f5f5;
  border-radius: 5px;
  width: 159px;
  height: 24px;
}

.systemConfig-inputs-column-div {
  box-sizing: border-box;
  grid-template-columns: 40% 45%;
  gap: 50px;
  display: grid;
}

.systemConfig-input, .systemConfig-fileUploader {
  margin-bottom: 20px;
}

.systemConfiguration-save-btn {
  margin-left: 957px;
}

.selecetd-file-display {
  cursor: pointer;
  margin-left: auto;
}

.upload-box {
  text-align: center;
  cursor: pointer;
  background: #fff;
  border: 2px dashed #999;
  border-radius: 12px;
  width: 400px;
  padding: 40px;
  transition: background .3s, border-color .3s;
}

.upload-box.dragover {
  background: #e6f7ff;
  border-color: #333;
}

.upload-box input[type="file"] {
  display: none;
}

.upload-box strong {
  margin-bottom: 8px;
  font-size: 16px;
  display: block;
}

.upload-box span {
  color: #666;
  font-size: 14px;
}

.file-name {
  color: #333;
  margin-top: 15px;
  font-size: 14px;
}

.container {
  gap: 40px;
  padding: 20px;
  font-family: sans-serif;
  display: flex;
}

.column {
  flex: 1;
}

.color-input-wrapper {
  border: 1px solid #ccc;
  border-radius: 6px;
  align-items: center;
  padding: 6px;
  display: flex;
}

.color-picker {
  cursor: pointer;
  background: none;
  border: none;
  width: 30px;
  height: 25px;
}

.hex-input {
  border: none;
  outline: none;
  flex: 1;
  margin-left: 10px;
  font-size: 14px;
}

.emailTemplateWidth {
  width: 95%;
}

.emailTemplate-Heading-Button {
  justify-content: space-between;
  display: flex;
}

.emailTemplate-Heading-badge {
  align-items: center;
  gap: 10px;
  display: flex;
}

.emailTemplate-badge {
  text-align: center;
  background-color: #f5f5f5;
  border-radius: 5px;
  width: 159px;
  height: 24px;
}

.emailTemplate-custom-table-outer-div {
  margin-top: "4%";
  right: 0;
}

.emailTempalte-custom-table {
  border-collapse: collapse;
  width: 100%;
}

.emailTempalte-custom-table th, .emailTempalte-custom-table td {
  text-align: left;
  border-bottom: 1px solid #f5f5f5;
  padding: 10px;
}

.emailTempalte-custom-table thead {
  background-color: #f5f5f5;
  font-weight: bold;
}

.emailTempalte-custom-table tbody tr {
  transition: background-color .15s;
}

.emailTempalte-custom-table tbody tr:hover {
  background-color: #0066cc0f;
}

.emailTempalte-custom-table tbody tr[style*="cursor: pointer"]:hover {
  background-color: #0066cc14;
}

.container-wrapper {
  margin-bottom: 20px;
}

.numbers-section {
  flex-wrap: nowrap;
  gap: 16px;
  display: flex;
  overflow-x: auto;
}

.card {
  border-radius: 8px;
  flex: 1;
  align-items: center;
  min-width: 200px;
  padding: 16px 20px;
  display: flex;
}

.card.total {
  background-color: #f5f5f5;
}

.card.inProgress {
  background-color: #e3f2fd;
}

.card.success {
  background-color: #e8f5e9;
}

.card.warning {
  background-color: #fff3e0;
}

.card.danger {
  background-color: #ffebee;
}

.page-container-cl {
  flex-direction: column;
  height: 100vh;
  display: flex;
}

.main-content-cl {
  box-sizing: border-box;
  flex-direction: column;
  gap: 20px;
  height: 100vh;
  margin-top: 5%;
  margin-left: 5%;
  margin-right: 5%;
  padding: 16px;
  display: flex;
}

.header {
  flex-direction: row;
  align-items: center;
  margin-bottom: 20px;
  display: flex;
}

.landmark-tag {
  color: #555;
  background: #f5f5f5;
  border-radius: 6px;
  margin-top: 10px;
  margin-left: 2%;
  margin-right: 2%;
  padding: 4px 8px;
  font-family: monospace;
  font-size: 13px;
  font-weight: 600;
}

.dropdown-group-pl {
  flex-direction: column;
  gap: 4px;
  width: 400px;
  display: flex;
}

.dropdown-group-pl label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.dropdown-group-pl select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 14px;
}

.dropdown-group-pl select:focus {
  border-color: #999;
  outline: none;
}

.dropdown-group-pl small {
  color: #666;
  font-size: 12px;
}

.numbers-section {
  flex-wrap: wrap;
  gap: 16px;
  width: 90%;
  margin-bottom: 20px;
  display: flex;
}

.consentLog-container {
  align-items: flex-start;
  gap: 3rem;
  width: 100%;
  display: flex;
}

.numbers-section .card {
  border-radius: 8px;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  min-width: 180px;
  padding: 16px;
  font-size: 14px;
  font-weight: 500;
  display: flex;
  box-shadow: 0 2px 6px #00000014;
}

.numbers-section .card.success {
  background-color: #e9f7e9;
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.numbers-section .card.warning {
  background-color: #fef0e7;
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.numbers-section .card.danger {
  background-color: #fee6ea;
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.numbers-section .card.info {
  background-color: #fef0e7;
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.numbers-section .card.total {
  background-color: #e0e0e0;
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.numbers-section .card.inProgress {
  background-color: #e7ebf8;
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.emailTemplate-table-header-icon {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.inner-table {
  border-collapse: collapse;
  border-radius: 6px;
  width: 90%;
  margin-top: 8px;
  margin-left: 5%;
}

.inner-table th, .inner-table td {
  border-bottom: 1px solid #eee;
  padding: 6px 10px;
  font-size: 14px;
}

.consentlog-business-table-container {
  width: 100%;
  display: inline-block;
}

.consentLog-table {
  border-collapse: collapse;
  border-bottom: 2px solid #e7ebf8;
  border-left: 2px solid #f5f5f5;
  border-right: 2px solid #f5f5f5;
  width: 100%;
  font-family: Arial, sans-serif;
}

.consentLog-table > thead > tr > th:first-child, .consentLog-table > tbody > tr > td:first-child {
  text-align: center;
  border-right: 2px solid #f5f5f5;
  width: 3rem;
}

.chevron-cell {
  text-align: center;
  border-right: 2px solid #f5f5f5;
  width: 3rem;
  padding: 0;
}

.chevron-wrapper {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.consentLog-table th, .consentLog-table td {
  color: #000;
  text-align: left;
  border: none;
  padding: 10px 12px;
  font-size: 13px;
}

.consentLog-table tr + tr td {
  border-top: 1px solid #ddd;
}

.consentLog-table thead {
  background-color: #f5f5f5;
}

.expanded-row-parent {
  font-weight: bold;
  background-color: #e7ebf8 !important;
}

.expanded-row td {
  padding: 0;
}

.inner-table {
  border-collapse: collapse;
  width: 100%;
  margin: 0;
  padding: 0;
}

.inner-table th, .inner-table td {
  border: none;
  padding: 8px 10px;
  font-size: 13px;
}

.header-with-icon svg {
  flex-shrink: 0;
}

.rc-page {
  flex-direction: column;
  display: flex;
}

.main-heading-ct-rc {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
  display: flex;
}

.tag-rc {
  text-align: center;
  background-color: #f5f5f5;
  border-radius: 5px;
  place-items: center;
  min-width: 70px;
  height: 24px;
  padding: 0 8px;
  display: grid;
}

.cookie-summary-container {
  gap: 16px;
  margin-bottom: 18px;
  display: flex;
}

.summary-card {
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 12px;
  min-width: 140px;
  padding: 12px 16px;
  display: flex;
  box-shadow: 0 0 0 1px #00000008;
}

.summary-card .icon-circle {
  border-radius: 8px;
  place-items: center;
  width: 36px;
  height: 36px;
  font-weight: 700;
  display: grid;
}

.summary-card.published .icon-circle {
  color: #135610;
  background: #e9f8ec;
  justify-content: flex-start;
  width: 214px;
  height: 90px;
}

.summary-card.draft .icon-circle {
  color: #c75b1f;
  background: #fff3ed;
  justify-content: flex-start;
  width: 214px;
  height: 90px;
}

.summary-card.inactive .icon-circle {
  color: #4f4f4f;
  background: #f3f3f4;
  justify-content: flex-start;
  width: 214px;
  height: 90px;
}

.summary-content .count {
  font-size: 18px;
  font-weight: 700;
  display: block;
}

.summary-content .label {
  color: #6b6b6b;
  font-size: 12px;
  display: block;
}

.rc-business-table-container {
  width: 100%;
  padding: 6px;
  overflow-x: auto;
}

.rc-bussiness-table {
  border-collapse: collapse;
  background: #fff;
  width: 100%;
  min-width: 900px;
  font-family: Arial, sans-serif;
}

.rc-bussiness-table thead {
  background-color: #f5f5f5;
}

.rc-bussiness-table th {
  text-align: left;
  color: #524e4e;
  border-bottom: 1px solid #e6e6e6;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 700;
}

.domain-row-rc-rc-rc-rc td .caret-btn {
  cursor: pointer;
  background: none;
  border: none;
  margin-right: 8px;
  font-size: 14px;
}

.domain-text {
  font-weight: 600;
}

.subrow-header td {
  color: #333;
  background: #fbfcfd;
  border-top: none;
  font-weight: 700;
}

.scan-row td {
  background: #fff;
}

.version-row td {
  color: #444;
  background: #fbfcfd;
  font-size: 13px;
}

.icon-btn {
  cursor: pointer;
  background: none;
  border: none;
  padding: 2px 6px;
  font-size: 14px;
  line-height: 1;
}

.caret-small {
  cursor: pointer;
  background: none;
  border: none;
  margin-left: 6px;
  font-size: 12px;
}

.policy-cell {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 220px;
  overflow: hidden;
}

.modal-outer-container {
  z-index: 1600;
  background: #00000059;
  place-items: center;
  display: grid;
  position: fixed;
  inset: 0;
}

.modal-container {
  background: #fff;
  border-radius: 16px;
  width: 680px;
  padding: 22px;
  position: relative;
  box-shadow: 0 12px 40px #0000002e;
}

.modal-close-btn-container-re {
  position: absolute;
  top: 14px;
  right: 18px;
}

.dropdown-group {
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.dropdown-group label {
  font-size: 13px;
  font-weight: 600;
}

.dropdown-group input, .dropdown-group select {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 13px;
}

.add-subdomain {
  color: #0a3cce;
  cursor: pointer;
  background: none;
  border: none;
  margin-top: 8px;
  padding: 0;
  font-weight: 600;
}

.error-text {
  color: red;
  margin-top: 8px;
}

@media (width <= 900px) {
  .modal-container {
    width: calc(100% - 40px);
    padding: 18px;
  }

  .rc-bussiness-table {
    min-width: 700px;
  }

  .cookie-summary-container {
    flex-direction: column;
    gap: 8px;
  }
}

.modal-container {
  background: #fff;
  border-radius: 16px;
  flex-direction: column;
  gap: 8px;
  width: 480px;
  padding: 28px 32px;
  animation: .25s scaleIn;
  display: flex;
  position: relative;
  box-shadow: 0 8px 32px #0000001a;
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(.96);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.modal-container label {
  color: #1f2937;
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: 600;
  display: block;
}

.modal-container input, .modal-container select {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  width: 100%;
  height: 40px;
  padding: 0 12px;
  font-size: 14px;
  transition: all .2s;
}

.add-subdomain {
  color: #0a3cce;
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  margin-top: 6px;
  font-size: 13px;
  font-weight: 600;
  transition: color .2s;
}

.modal-container .embed-icon {
  color: #0a3cce;
  background: #eef2ff;
  border-radius: 12px;
  place-items: center;
  width: 44px;
  height: 44px;
  font-size: 20px;
  font-weight: 700;
  display: grid;
}

@media (width <= 600px) {
  .modal-container {
    width: 90%;
    padding: 24px;
  }
}

.modal-container {
  background: #fff;
  border-radius: 32px;
  width: 720px;
  max-width: 92%;
  padding: 40px 48px 48px;
  animation: .25s scaleIn;
  position: relative;
  box-shadow: 0 10px 40px #0000001a;
}

.modal-container h2, .modal-container .jds-Text {
  margin: 0;
}

.modal-container input, .modal-container select {
  color: #111827;
  background-color: #fff;
  border: 1px solid #d1d5db;
  border-radius: 10px;
  width: 100%;
  height: 48px;
  padding: 0 14px;
  font-size: 15px;
  transition: all .2s;
}

.modal-add-btn-container-tem {
  justify-content: flex-end;
  gap: 12px;
  margin-top: 28px;
  display: flex;
}

.modal-add-btn-container-tem .jds-ActionButton--kind-secondary {
  color: #111827;
  background: #f3f4f6;
  border-radius: 250px;
  min-width: 110px;
  height: 48px;
  font-weight: 500;
}

@media (width <= 768px) {
  .modal-container {
    border-radius: 24px;
    width: 95%;
    padding: 28px;
  }

  .modal-add-btn-container-tem {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .modal-add-btn-container-tem .jds-ActionButton--kind-primary, .modal-add-btn-container-tem .jds-ActionButton--kind-secondary {
    width: 100%;
  }
}

.configurePage-rc {
  background-color: #f9fafb;
  border-radius: 12px;
  width: 100%;
  min-height: 100vh;
  position: relative;
  overflow: hidden;
}

.modal-outer-container {
  backdrop-filter: blur(8px);
  z-index: 9999;
  background: #0f172a80;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  animation: .25s ease-in-out fadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.modal-container {
  background: #fff;
  border-radius: 32px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 784px;
  max-width: 90vw;
  height: auto;
  padding: 48px;
  animation: .25s scaleIn;
  display: flex;
  box-shadow: 0 20px 60px #0000001f;
}

.dropdown-group {
  flex-direction: column;
  width: 100%;
  margin-bottom: 16px;
  display: flex;
}

.modal-container input, .modal-container select {
  color: #111827;
  border: 1px solid #d1d5db;
  border-radius: 12px;
  width: 100%;
  height: 48px;
  padding: 0 14px;
  font-size: 15px;
  transition: all .2s;
}

.modal-add-btn-container-tem {
  justify-content: flex-end;
  width: 100%;
  margin-top: 24px;
  display: flex;
}

.embed-icon {
  color: #0a3cce;
  background: #eef2ff;
  border-radius: 12px;
  place-items: center;
  width: 44px;
  height: 44px;
  font-size: 20px;
  font-weight: 700;
  display: grid;
}

@media (width <= 900px) {
  .modal-container {
    border-radius: 24px;
    width: 92%;
    padding: 32px;
  }

  .modal-add-btn-container-tem {
    justify-content: center;
  }
}

.modal-outer-container {
  backdrop-filter: blur(8px);
  z-index: 9999;
  background: #00000073;
  justify-content: center;
  align-items: center;
  animation: .25s fadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.modal-container {
  opacity: 1;
  background: #fff;
  border-radius: 24px 24px 32px 32px;
  flex-direction: column;
  gap: 0;
  width: 784px;
  max-width: 90vw;
  height: auto;
  min-height: 64px;
  padding: 12px;
  animation: .25s scaleIn;
  display: flex;
  position: relative;
  box-shadow: 0 4px 16px #0000001a;
}

.modal-close-btn-container-cookie {
  position: absolute;
  top: 20px;
  right: 24px;
}

.modal-container .jds-Text[appearance="heading-xs"] {
  color: #111827;
  margin-bottom: 4px;
  font-size: 20px;
  font-weight: 700;
}

.modal-container .jds-Text[appearance="body-s"] {
  color: #4b5563;
  margin-bottom: 12px;
  font-size: 14px;
  line-height: 1.4;
}

.dropdown-group {
  flex-direction: column;
  margin-top: 6px;
  display: flex;
}

.dropdown-group label {
  color: #111827;
  margin-bottom: 4px;
  font-size: 13.5px;
  font-weight: 600;
}

.modal-container input, .modal-container select {
  color: #111827;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 10px;
  width: 100%;
  height: 44px;
  padding: 0 14px;
  font-size: 14px;
  transition: all .2s;
}

.modal-container input:focus, .modal-container select:focus {
  border-color: #0a3cce;
  outline: none;
  box-shadow: 0 0 0 3px #0a3cce1a;
}

.add-subdomain {
  color: #0a3cce;
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  margin-top: 4px;
  padding: 0;
  font-size: 14px;
  font-weight: 600;
  transition: color .2s;
}

.add-subdomain:hover {
  color: #002db3;
}

.modal-add-btn-container-tem {
  justify-content: flex-end;
  margin-top: 8px;
  display: flex;
}

.modal-add-btn-container-tem .jds-ActionButton--kind-primary {
  border-radius: 250px;
  min-width: 90px;
  height: 44px;
  padding: 10px 22px;
  font-size: 14px;
  font-weight: 600;
  transition: background .2s;
  box-shadow: 0 3px 8px #0a3cce40;
  color: #fff !important;
  background-color: #0a3cce !important;
}

.modal-add-btn-container-tem .jds-ActionButton--kind-primary:hover {
  background-color: #002db3 !important;
}

.error-text {
  color: #dc2626;
  margin-top: 6px;
  font-size: 13px;
}

.configurePage-rc {
  background: #fff;
  min-height: 100vh;
  padding-bottom: 40px;
}

.cookie-summary {
  border-radius: 8px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 90px;
  display: flex;
}

.rc-bussiness-table th {
  color: #333;
  text-align: left;
  background-color: #f8f9fa;
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 600;
}

.rc-bussiness-table td {
  vertical-align: middle;
  border-bottom: 1px solid #eee;
  padding: 10px 16px;
  font-size: 13px;
}

.empty-illustration {
  font-size: 40px;
}

.rc-bussiness-table td svg {
  cursor: pointer;
  opacity: .8;
  transition: opacity .2s;
}

.rc-bussiness-table td svg:hover {
  opacity: 1;
}

@media (width <= 768px) {
  .modal-container {
    border-radius: 24px;
    width: 94%;
    padding: 24px 20px;
  }

  .modal-add-btn-container-tem {
    justify-content: center;
  }
}

.cookie-summary {
  text-align: center;
  border-radius: 8px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 90px;
  display: flex;
  box-shadow: 0 0 0 1px #0000000d;
}

.cookie-summary .count {
  letter-spacing: -.03em;
  margin-bottom: 2px;
  font-family: JioType, sans-serif;
  font-size: 16px;
  font-weight: 900;
  line-height: 20px;
}

.cookie-summary .label {
  letter-spacing: -.005em;
  font-family: JioType, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.cookie-summary.published {
  color: #fff;
  background: #25ab21;
  justify-content: flex-start;
  width: 214px;
  height: 90px;
}

.cookie-summary.draft {
  color: #000;
  background: #fff5e0;
  justify-content: flex-start;
  width: 214px;
  height: 90px;
}

.cookie-summary.total {
  color: #000;
  background: #e7f0ff;
  justify-content: flex-start;
  width: 214px;
  height: 90px;
}

.cookie-summary.published {
  background: #e9f7e9;
  justify-content: flex-start;
}

.cookie-summary.draft {
  background: #fff4ec;
  justify-content: flex-start;
}

.cookie-summary.total {
  background: #e7f0ff;
  justify-content: flex-start;
}

.icon-symbol {
  text-align: center;
  font-size: 14px;
  line-height: 1;
  display: inline-block;
}

.summary-text {
  flex-direction: column;
  justify-content: center;
  display: flex;
}

.cookie-summary {
  border-radius: 16px;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  width: 260px;
  height: 90px;
  padding: 0 20px;
  display: flex;
}

.icon-wrapper {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.icon-wrapper.success {
  color: #fff;
  background-color: #25ab21;
}

.icon-wrapper.warning {
  color: #fff;
  background-color: #f16529;
}

.icon-wrapper.inactive {
  color: #fff;
  background-color: #555;
}

.icon-symbol {
  font-size: 16px;
  font-weight: 600;
  display: inline-block;
}

.summary-text {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 2px;
  margin-top: 2px;
  display: flex;
}

.action-icon {
  cursor: pointer;
  color: #000000a6;
  transition: opacity .2s, transform .1s;
}

.action-icon:hover {
  opacity: .8;
  transform: scale(1.1);
}

.cookie-summary-group {
  justify-content: flex-start;
  align-items: center;
  gap: 24px;
  margin: 32px 0;
  display: flex;
}

.cookie-summary.total {
  background: #e7f0ff;
}

.cookie-summary.published {
  background: #e9f7e9;
}

.cookie-summary.draft {
  background: #fff4ec;
}

.icon-wrapper {
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.summary-text {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.summary-text .count {
  letter-spacing: -.03em;
  color: #000;
  font-family: JioType, sans-serif;
  font-size: 16px;
  font-weight: 900;
  line-height: 20px;
}

.summary-text .label {
  letter-spacing: -.005em;
  color: #000;
  font-family: JioType, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.activebadge {
  text-align: center;
  border-radius: 8px;
  min-width: 90px;
  padding: 4px 10px;
  display: inline-block;
}

.activebadge.published {
  color: #16794c;
  background-color: #e6f8ec;
  font-weight: 600;
}

.activebadge.draft {
  color: #f16529;
  background-color: #e6f8ec;
  font-weight: 600;
}

.activebadge:not(.published):not(.draft) {
  color: #555;
  background-color: #f5f5f5;
  font-weight: 500;
}

.scan-note {
  color: #d97706;
  background: #fff7ed;
  border-radius: 6px;
  margin-top: 4px;
  padding: 6px 8px;
  font-size: 12px;
  line-height: 16px;
}

.subdomain-row-rc-rc-rc-rc input, .modal-container input {
  width: 100%;
}

.modal-container .action-button.tertiary {
  border-radius: 6px;
  min-width: 32px;
  height: 32px;
}

.modal-container .action-button.tertiary:hover {
  background-color: #f5f5f5;
}

.action-icon.delete {
  color: #660014;
  background-color: #fff;
  border-radius: 6px;
  padding: 4px;
  transition: background .2s;
}

.configurePage-rc {
  box-sizing: border-box;
  background: #fff;
  min-height: 100vh;
  padding: 24px 24px 60px;
}

.main-heading-ct-rc {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  padding: 0 8px;
  display: flex;
}

.cookie-summary-group {
  gap: 12px;
  margin-top: 4px;
  margin-bottom: 16px;
  padding-left: 8px;
}

.cookie-summary {
  border-radius: 12px;
  height: 84px;
  padding: 0 16px;
}

.rc-bussiness-table th, .rc-bussiness-table td {
  padding: 8px 12px;
}

.configurePage-rc {
  box-sizing: border-box;
  background: #fff;
  min-height: 100vh;
  padding: 100px 24px 40px;
  overflow-x: hidden;
}

.main-heading-ct {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-right: 12px;
  display: flex;
}

.rc-heading {
  align-items: center;
  gap: 10px;
  display: flex;
}

.cookie-summary-group {
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
  margin: 8px 0 20px;
  padding-left: 4px;
  display: flex;
}

.cookie-summary {
  border-radius: 12px;
  align-items: center;
  gap: 12px;
  width: 230px;
  height: 88px;
  padding: 0 16px;
  display: flex;
}

.bs-button {
  margin-right: 12px;
}

.rc-content {
  margin-top: 0;
}

.rc-business-table-container {
  margin-top: 4px;
  padding: 0;
}

.rc-bussiness-table {
  border-collapse: collapse;
  width: 100%;
}

.rc-bussiness-table th {
  color: #333;
  background-color: #f9fafb;
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
}

.rc-bussiness-table td {
  color: #111;
  border-bottom: 1px solid #f1f1f1;
  padding: 8px 14px;
  font-size: 13px;
}

.action-icon.delete {
  color: #660014;
  background: #0000000d;
  border-radius: 6px;
  padding: 3px;
}

.rc-page {
  margin-top: 0;
}

.embed-modal {
  opacity: 1;
  background: #fff;
  border-radius: 32px;
  flex-direction: column;
  justify-content: flex-start;
  width: 784px;
  height: 517px;
  padding: 48px;
  animation: .25s scaleIn;
  display: flex;
  position: relative;
  box-shadow: 0 20px 60px #0000001f;
}

.embed-modal .modal-close-btn-container-cookie {
  position: absolute;
  top: 24px;
  right: 24px;
}

.embed-modal .embed-icon {
  color: #0a3cce;
  background: #eef2ff;
  border-radius: 12px;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: 700;
  display: grid;
}

.embed-modal .jds-Text[appearance="heading-xs"] {
  color: #111827;
  margin-bottom: 6px;
  font-size: 22px;
  font-weight: 700;
}

.embed-modal .jds-Text[appearance="body-s"] {
  color: #4b5563;
  margin-bottom: 20px;
  font-size: 15px;
}

.embed-modal .dropdown-group {
  margin-top: 16px;
}

.embed-modal .dropdown-group select {
  color: #111827;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 12px;
  width: 100%;
  height: 48px;
  padding: 0 14px;
  font-size: 15px;
  transition: all .2s;
}

.embed-modal .dropdown-group select:focus {
  border-color: #0a3cce;
  outline: none;
  box-shadow: 0 0 0 3px #0a3cce1a;
}

.embed-modal .modal-add-btn-container-tem {
  justify-content: flex-end;
  gap: 12px;
  margin-top: auto;
  display: flex;
}

.embed-modal .jds-ActionButton--kind-primary {
  border-radius: 250px;
  height: 48px;
  padding: 12px 28px;
  font-size: 15px;
  font-weight: 600;
  transition: background .2s;
  box-shadow: 0 3px 8px #0a3cce40;
  color: #fff !important;
  background-color: #0a3cce !important;
}

.embed-modal .jds-ActionButton--kind-primary:hover {
  background-color: #002db3 !important;
}

.embed-modal .jds-ActionButton--kind-secondary {
  color: #111827;
  background: #f3f4f6;
  border-radius: 250px;
  height: 48px;
  padding: 12px 24px;
  font-size: 15px;
  font-weight: 500;
}

@media (width <= 768px) {
  .embed-modal {
    border-radius: 24px;
    width: 92%;
    height: auto;
    padding: 32px;
  }
}

.loader-container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  height: 200px;
  display: flex;
}

.loader-text {
  color: #6b7280;
  font-size: 14px;
  font-weight: 500;
}

.rc-bussiness-table thead {
  background-color: #f9fafb !important;
  border-bottom: 2px solid #e5e7eb !important;
  display: table-header-group !important;
}

.rc-bussiness-table th {
  color: #111827;
  text-transform: none;
  z-index: 2;
  background-color: #f9fafb;
  border-bottom: 2px solid #e5e7eb;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 600;
  position: sticky;
  top: 0;
}

.rc-bussiness-table td {
  color: #374151;
  background-color: #fff;
  border-bottom: 1px solid #f3f4f6;
  font-size: 13px;
}

.rc-business-table-container {
  background-color: #fff;
  border-radius: 12px;
  margin-top: 4px;
  overflow-x: auto;
  box-shadow: 0 1px 3px #0000000d;
}

.styled-table {
  border-collapse: collapse;
  background-color: #fff;
  border: 1px solid #e5e7eb;
  width: 100%;
  font-size: 14px;
}

.styled-table th, .styled-table td {
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #e5e7eb;
  padding: 10px 12px;
}

.styled-table th {
  color: #374151;
  background-color: #f9fafb;
  font-weight: 600;
  position: relative;
}

.expand-icon {
  cursor: pointer;
  color: #374151;
  margin-right: 6px;
  font-size: 14px;
}

.domain-link {
  color: #0073e6;
  text-decoration: none;
}

.domain-link:hover {
  text-decoration: underline;
}

.nested-row td {
  background-color: #f9fafb;
  padding: 0;
}

.nested-version-table {
  border-collapse: collapse;
  background-color: #fafafa;
  width: 100%;
}

.nested-version-table th, .nested-version-table td {
  text-align: left;
  border: 1px solid #e5e7eb;
  padding: 8px 10px;
  font-size: 13px;
}

.nested-version-table th {
  color: #374151;
  background-color: #f3f4f6;
  font-weight: 500;
}

.no-versions {
  text-align: center;
  color: #6b7280;
  padding: 10px;
}

.parent-row:hover {
  background-color: #f8fafc;
}

.status-chip {
  text-transform: capitalize;
  border-radius: 12px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-block;
}

.status-active {
  color: #166534;
  background-color: #dcfce7;
}

.nested-loader {
  color: #6b7280;
  text-align: center;
  padding: 10px;
  font-style: italic;
}

.chevron-icon {
  border-radius: 200px;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  transition: transform .2s ease-in-out;
  display: inline-flex;
}

.domain-cell .chevron-icon.rotated {
  transform: rotate(180deg);
}

.domain-cell {
  cursor: pointer;
  align-items: center;
  gap: 10px;
  display: flex;
}

.rc-bussiness-table tbody tr.domain-row-rc-rc-rc-rc:hover {
  background-color: #f5f5f5;
}

.action-icon {
  cursor: pointer;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  transition: background-color .2s;
  display: flex;
}

.action-icon.grey {
  color: var(--jds-color-primary-grey-80);
}

.action-icon.grey:hover {
  background-color: #0000000d;
}

.action-icon.delete {
  color: #e53e3e;
}

.action-icon.delete:hover {
  background-color: #e53e3e1a;
}

.version-row td {
  letter-spacing: -.005em;
  color: var(--jds-color-primary-grey-80);
  background-color: #fafafa;
  padding: 10px 20px;
  font-family: JioType, Inter, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}

.rc-rc-dropdown-action-icons {
  align-items: center;
  gap: 10px;
  display: flex;
}

.rc-rc-dropdown-action-icons .action-icon {
  cursor: pointer;
  width: 32px;
  height: 32px;
  color: var(--jds-color-primary-grey-80);
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  transition: background-color .2s;
  display: flex;
}

.rc-rc-dropdown-action-icons .action-icon:hover {
  background-color: #0000000d;
}

.chevron-icon {
  margin-right: 6px;
  transition: transform .25s ease-in-out;
  display: inline-flex;
}

.nested-version-table {
  border-collapse: collapse;
  background-color: #f9fafb;
  width: 100%;
  margin-top: 8px;
}

.nested-version-table th, .nested-version-table td {
  text-align: left;
  padding: 8px 10px;
  font-size: 13px;
}

.activebadge {
  color: #374151;
  background: #f3f4f6;
  border-radius: 8px;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-block;
}

.activebadge.published {
  color: #166534;
  background: #dcfce7;
}

.rc-business-table-container {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  width: 1596px;
  max-width: 100%;
  height: auto;
  margin-top: 8px;
  overflow-x: auto;
  box-shadow: 0 1px 3px #0000000d;
}

.rc-business-table th {
  color: #000000a6;
  text-align: left;
  vertical-align: middle;
  background-color: #f9fafb;
  border-bottom: 1px solid #e0e0e0;
  height: 36px;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}

.sort-icon-wrapper {
  justify-content: center;
  align-items: center;
  width: 13.33px;
  height: 10.67px;
  display: flex;
  position: relative;
  top: 2.66px;
  left: 1.33px;
}

.rc-business-table td {
  color: #111827;
  vertical-align: middle;
  background-color: #fff;
  border-bottom: 1px solid #f1f1f1;
  height: 44px;
  padding: 10px 16px;
  font-size: 13px;
}

.rc-business-table tr.rc-domain-row:hover td {
  background-color: #f8fafc;
}

.rc-domain-cell {
  align-items: center;
  gap: 6px;
  display: flex;
}

.nested-version-table {
  border-collapse: collapse;
  background-color: #f9fafb;
  border-radius: 8px;
  width: 100%;
  margin-top: 8px;
}

.nested-version-table th {
  color: #374151;
  background-color: #f3f4f6;
  border-bottom: 1px solid #e5e7eb;
  padding: 8px 10px;
  font-weight: 600;
}

.nested-version-table tr:nth-child(2n) td {
  background-color: #fdfdfd;
}

.icon-btn.delete {
  color: #660014;
}

.empty-box .jds-Text {
  color: #4b5563;
  font-size: 14px;
  line-height: 1.4;
}

.rc-business-table-container {
  opacity: 1;
  background: #fff;
  border-radius: 8px;
  width: 1596px;
  height: 521px;
  margin: 20px auto;
  padding: 0;
}

.rc-business-table thead tr {
  background: #f5f7fa;
  border-bottom: 1px solid #e3e6eb;
  height: 42px;
}

.rc-business-table th {
  text-align: left;
  color: #2a2a2a;
  white-space: nowrap;
  border-right: 1px solid #e5e7eb;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 600;
  position: relative;
}

.rc-business-table tbody tr {
  border-bottom: 1px solid #e9edf3;
  height: 44px;
}

.rc-business-table td {
  color: #1e1e1e;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-right: 1px solid #f0f2f5;
  padding: 10px 14px;
  font-size: 13px;
  overflow: hidden;
}

@media (width <= 1200px) {
  .rc-business-table-container {
    width: 100%;
    overflow-x: auto;
  }

  .rc-business-table th, .rc-business-table td {
    white-space: nowrap;
  }
}

.rc-business-table-container {
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  width: 100%;
  margin-top: 16px;
  padding: 0;
  overflow: hidden;
}

.rc-business-table {
  border-collapse: collapse;
  table-layout: auto;
  background-color: #fff;
  width: 100%;
  font-family: JioType, sans-serif;
}

.rc-business-table thead tr {
  border-bottom: 1px solid #e3e6eb;
  height: 42px;
}

.rc-business-table tbody tr {
  border-bottom: 1px solid #f1f1f1;
  height: 44px;
  transition: background-color .2s;
}

.rc-business-table td {
  color: #1e1e1e;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: middle;
  border-right: 1px solid #f0f2f5;
  padding: 10px 14px;
  font-size: 13px;
  overflow: hidden;
}

.nested-version-table {
  border-collapse: collapse;
  background: #f9fafb;
  border-radius: 6px;
  width: 100%;
}

.rc-dropdown-action-icons {
  justify-content: center;
  align-items: center;
  gap: 12px;
  display: flex;
}

.rc-dropdown-action-icons svg {
  cursor: pointer;
  opacity: .9;
  transition: transform .2s, opacity .2s;
}

.rc-dropdown-action-icons svg:hover {
  opacity: 1;
  transform: scale(1.1);
}

.empty-state {
  text-align: center;
  padding: 80px 0;
}

.empty-box {
  flex-direction: column;
  align-items: center;
  gap: 16px;
  display: flex;
}

.empty-illustration {
  width: 180px;
  height: auto;
  margin-bottom: 8px;
}

.rc-business-table-container {
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  width: 100%;
  height: auto;
  margin-top: 16px;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 1px 3px #0000000d;
}

.rc-business-table {
  border-collapse: collapse;
  table-layout: auto;
  width: 100%;
  font-family: JioType, sans-serif;
  font-size: 13px;
}

.rc-business-table thead {
  z-index: 2;
  background: #f5f7fa;
  position: sticky;
  top: 0;
}

.rc-business-table th {
  text-align: left;
  color: #2a2a2a;
  white-space: nowrap;
  border-right: 1px solid #e5e7eb;
  padding: 10px 14px;
  font-weight: 600;
}

.sort-icon-wrapper {
  justify-content: center;
  align-items: center;
  width: 13px;
  height: 10px;
  display: flex;
  position: relative;
  top: 1px;
}

.version-row td {
  background: #f8f9fc;
  padding: 10px 20px;
}

.nested-version-table {
  border-collapse: collapse;
  background: #fff;
  border-radius: 6px;
  width: 100%;
  margin-top: 4px;
}

.nested-version-table th {
  color: #333;
  background: #f3f4f6;
  border-bottom: 1px solid #e3e6eb;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
}

.nested-version-table td {
  color: #111;
  border-bottom: 1px solid #e8ebf0;
  padding: 8px 10px;
  font-size: 13px;
}

.activebadge {
  text-align: center;
  border-radius: 6px;
  min-width: 65px;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
}

@media (width <= 768px) {
  .rc-business-table th, .rc-business-table td {
    padding: 8px 10px;
    font-size: 12px;
  }
}

@media (width <= 1200px) {
  .rc-business-table th, .rc-business-table td {
    white-space: nowrap;
  }
}

@media (width <= 768px) {
  .rc-business-table th, .rc-business-table td {
    padding: 8px 10px;
    font-size: 12px;
  }
}

.rc-business-table-container {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  width: 100%;
  overflow: hidden;
  box-shadow: 0 0 3px #00000008;
}

.rc-business-table {
  border-collapse: collapse;
  table-layout: auto;
  color: #1e1e1e;
  width: 100%;
  font-family: JioType, sans-serif;
  font-size: 13px;
}

.rc-business-table thead {
  z-index: 3;
  background: #f8fafc;
  border-bottom: 1px solid #e3e6eb;
  position: sticky;
  top: 0;
}

.rc-business-table th {
  text-align: left;
  color: #1f2937;
  border-right: 1px solid #e5e7eb;
  padding: 10px 14px;
  font-weight: 600;
}

.sort-icon-wrapper {
  justify-content: center;
  align-items: center;
  display: flex;
}

.rc-business-table td {
  color: #1f2937;
  vertical-align: middle;
  white-space: nowrap;
  text-overflow: ellipsis;
  border-right: 1px solid #f0f2f5;
  padding: 10px 14px;
  overflow: hidden;
}

.chevron-icon {
  cursor: pointer;
  margin-right: 6px;
  transition: transform .25s ease-in-out;
  display: inline-flex;
}

.version-row td {
  background: #f9fafc;
  border-top: 1px solid #e5e7eb;
  padding: 10px 20px;
}

.nested-version-table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 4px;
}

.nested-version-table th {
  color: #374151;
  background: #f3f4f6;
  border-bottom: 1px solid #e5e7eb;
  border-right: 1px solid #e5e7eb;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
}

.nested-version-table td {
  color: #111827;
  background: #fff;
  border-bottom: 1px solid #f0f2f5;
  border-right: 1px solid #f0f2f5;
  padding: 8px 10px;
  font-size: 13px;
}

.nested-version-table tr:nth-child(2n) td {
  background: #fafbfc;
}

.nested-version-table tr:hover td {
  background: #eef6ff;
}

.activebadge {
  text-align: center;
  border-radius: 6px;
  min-width: 70px;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 600;
  transition: all .2s;
  display: inline-block;
}

.activebadge.draft {
  color: #b45309;
  background-color: #fff7ed;
}

.activebadge.inactive {
  color: #64748b;
  background-color: #f1f5f9;
}

.dropdown-action-icons, .rc-dropdown-action-icons {
  justify-content: center;
  align-items: center;
  gap: 10px;
  display: flex;
}

.dropdown-action-icons svg, .rc-dropdown-action-icons svg {
  cursor: pointer;
  opacity: .85;
  transition: transform .2s, opacity .2s;
}

.dropdown-action-icons svg:hover, .rc-dropdown-action-icons svg:hover {
  opacity: 1;
  transform: scale(1.1);
}

.tem-business-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.tem-business-table th, .tem-business-table td {
  text-align: left;
  color: #1e1e1e;
  vertical-align: middle;
  border-bottom: 1px solid #e4e4e7;
  height: 44px;
  padding: 10px 14px;
  font-size: 13px;
}

.tem-business-table th {
  letter-spacing: .2px;
  color: #4b5563;
  background: #fafafa;
  font-weight: 600;
}

.tem-business-table td:first-child {
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

.tem-business-table .chevron-icon {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  margin-right: 4px;
  transition: transform .2s;
  display: flex;
  transform: rotate(0);
}

.tem-business-table .chevron-icon.rotated {
  transform: rotate(180deg);
}

.nested-version-table {
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
  width: 100%;
  margin-top: 4px;
}

.nested-version-table td {
  color: #1f2937;
}

.tem-business-table tr:hover {
  background: #f9fafb;
}

.activebadge {
  background-color: #f3f4f6;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 3px 8px;
  font-weight: 500;
  display: inline-flex;
}

.th-content {
  align-items: center;
  gap: 6px;
  display: flex;
}

.business-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.business-table thead {
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  box-shadow: 0 1px #e5e7eb;
}

.business-table thead tr {
  height: 44px;
}

.business-table th {
  color: #374151;
  text-align: left;
  vertical-align: middle;
  letter-spacing: .2px;
  -webkit-user-select: none;
  user-select: none;
  background-color: #f9fafb;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
}

.business-table th:first-child {
  border-top-left-radius: 6px;
}

.business-table th:last-child {
  border-top-right-radius: 6px;
}

.business-table thead tr {
  box-shadow: 0 1px #e5e7eb;
}

.business-table th:hover {
  background-color: #f3f4f6;
}

.rc-business-table {
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
  width: 100%;
  font-family: inherit;
}

.rc-business-table th:first-child {
  border-top-left-radius: 6px;
}

.rc-business-table th:last-child {
  border-top-right-radius: 6px;
}

.domain-row-rc .domain-cell {
  align-items: center;
  gap: 6px;
  display: flex;
}

.activebadge {
  color: #374151;
  background-color: #f3f4f6;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.version-row td {
  border-bottom: none;
  background: #fafafa !important;
}

.nested-version-table {
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  width: 100%;
}

.nested-version-table th {
  color: #4b5563;
  background: #f9fafb;
  font-weight: 600;
}

.rc-business-table {
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  width: 100%;
  font-family: inherit;
}

.rc-business-table thead {
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
}

.rc-business-table th {
  color: #374151;
  text-align: left;
  vertical-align: middle;
  letter-spacing: .2px;
  -webkit-user-select: none;
  user-select: none;
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  height: 44px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
}

.th-content {
  justify-content: flex-start;
  align-items: center;
  gap: 6px;
  display: flex;
}

.th-content svg {
  opacity: .7;
  transition: opacity .2s;
}

.th-content:hover svg {
  opacity: 1;
}

.rc-business-table td {
  text-align: left;
  color: #1f2937;
  vertical-align: middle;
  background-color: #fff;
  border-bottom: 1px solid #e5e7eb;
  height: 44px;
  padding: 10px 14px;
  font-size: 13px;
}

.chevron-icon {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  margin-right: 6px;
  transition: transform .25s;
  display: flex;
  transform: rotate(0);
}

.chevron-icon.rotated {
  transform: rotate(180deg);
}

.domain-cell {
  align-items: center;
  gap: 6px;
  display: flex;
}

.activebadge {
  color: #374151;
  text-transform: capitalize;
  background-color: #f3f4f6;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.activebadge.published {
  color: #065f46;
  background-color: #dcfce7;
}

.version-row td {
  background: #f9fafb;
  border-bottom: none;
  padding: 0;
}

.nested-version-table {
  border-collapse: collapse;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  width: 97%;
  margin-bottom: 8px;
  margin-left: 2%;
}

.nested-version-table th, .nested-version-table td {
  vertical-align: middle;
  border-bottom: 1px solid #e5e7eb;
  padding: 8px 12px;
  font-size: 13px;
}

.nested-version-table th {
  color: #4b5563;
  text-align: left;
  background: #f9fafb;
  height: 38px;
  font-weight: 600;
}

.nested-version-table tr:last-child td {
  border-bottom: none;
}

.nested-version-table td {
  color: #1f2937;
  background: #fff;
}

.version-row .nested-version-table {
  margin-top: 4px;
  margin-bottom: 6px;
}

.action-icons {
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  display: flex;
}

.dropdown-action-icons {
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: flex;
}

.empty-state {
  text-align: center;
  color: #6b7280;
  padding: 40px 0;
}

.loader-container {
  flex-direction: column;
  align-items: center;
  padding: 60px 0;
  display: flex;
}

.loader-spinner {
  border: 3px solid #d1d5db;
  border-top-color: #2563eb;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  animation: .8s linear infinite spin;
}

@media (width <= 768px) {
  .rc-business-table th, .rc-business-table td {
    padding: 8px 10px;
    font-size: 12px;
  }

  .nested-version-table th, .nested-version-table td {
    padding: 6px 8px;
    font-size: 12px;
  }
}

.rc-business-table-container {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  width: 100%;
  margin-top: 16px;
  overflow: hidden;
  box-shadow: 0 1px 3px #00000014;
}

.rc-business-table {
  border-collapse: collapse;
  table-layout: auto;
  background: #fff;
  width: 100%;
  font-family: JioType, sans-serif;
  font-size: 13px;
}

.rc-business-table thead {
  background: #f8fafc;
}

.rc-business-table thead tr {
  border-bottom: 2px solid #e2e8f0;
}

.rc-business-table th {
  text-align: left;
  color: #334155;
  white-space: nowrap;
  background: #f8fafc;
  border-right: 1px solid #e2e8f0;
  padding: 14px 16px;
  font-size: 13px;
  font-weight: 600;
}

.rc-business-table th:last-child {
  border-right: none;
}

.rc-business-table tbody tr {
  border-bottom: 1px solid #e2e8f0;
  transition: background-color .15s;
}

.rc-business-table tbody tr:last-child {
  border-bottom: none;
}

.rc-business-table td {
  color: #1e293b;
  vertical-align: middle;
  border-right: 1px solid #f1f5f9;
  padding: 12px 16px;
  font-size: 13px;
}

.rc-business-table td:last-child {
  border-right: none;
}

.rc-business-table tbody tr:nth-child(2n) {
  background-color: #fafbfc;
}

.rc-business-table tbody tr:nth-child(odd) {
  background-color: #fff;
}

.rc-business-table tbody tr:hover {
  background-color: #e8f4fd !important;
}

.nested-version-table {
  border-collapse: collapse;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  width: 100%;
  margin-top: 8px;
  overflow: hidden;
}

.nested-version-table thead tr {
  background: #f1f5f9;
  border-bottom: 1px solid #e2e8f0;
}

.nested-version-table th {
  color: #475569;
  text-align: left;
  border-right: 1px solid #e2e8f0;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 600;
}

.nested-version-table th:last-child {
  border-right: none;
}

.nested-version-table tbody tr {
  border-bottom: 1px solid #e2e8f0;
}

.nested-version-table tbody tr:last-child {
  border-bottom: none;
}

.nested-version-table td {
  color: #334155;
  border-right: 1px solid #f1f5f9;
  padding: 10px 12px;
  font-size: 12px;
}

.nested-version-table td:last-child {
  border-right: none;
}

.nested-version-table tbody tr:hover {
  background-color: #f8fafc;
}

@media (width <= 1024px) {
  .configurePage-rc {
    padding: 80px 20px 40px;
  }

  .cookie-summary-group {
    gap: 12px;
  }

  .cookie-summary {
    width: 200px;
    height: 84px;
  }
}

@media (width <= 768px) {
  .configurePage-rc {
    padding: 70px 16px 32px;
  }

  .main-heading-ct-rc, .main-heading-ct {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding-right: 0;
  }

  .cookie-summary-group {
    flex-direction: column;
    gap: 8px;
    width: 100%;
    padding-left: 0;
  }

  .cookie-summary {
    width: 100%;
    max-width: none;
    height: 84px;
  }

  .rc-business-table-container {
    -webkit-overflow-scrolling: touch;
    border-radius: 8px;
    overflow-x: auto;
  }

  .rc-business-table, .rc-bussiness-table {
    min-width: 900px;
  }

  .rc-business-table th, .rc-business-table td, .rc-bussiness-table th, .rc-bussiness-table td {
    padding: 8px 10px;
    font-size: 12px;
  }

  .nested-version-table {
    width: 95%;
    margin-left: 2.5%;
  }

  .nested-version-table th, .nested-version-table td {
    padding: 6px 8px;
    font-size: 12px;
  }

  .modal-container {
    border-radius: 20px;
    width: 92%;
    padding: 24px;
  }

  .modal-add-btn-container-tem {
    flex-direction: column-reverse;
  }

  .modal-add-btn-container-tem button {
    width: 100%;
  }
}

@media (width <= 480px) {
  .configurePage-rc {
    padding: 60px 12px 24px;
  }

  .rc-heading h1, .rc-heading .jds-Text {
    font-size: 20px;
  }

  .cookie-summary {
    height: 76px;
  }

  .summary-text .count {
    font-size: 14px;
  }

  .summary-text .label {
    font-size: 12px;
  }

  .rc-business-table, .rc-bussiness-table {
    min-width: 800px;
  }

  .rc-business-table th, .rc-business-table td, .rc-bussiness-table th, .rc-bussiness-table td {
    padding: 6px 8px;
    font-size: 11px;
  }

  .activebadge {
    min-width: 60px;
    padding: 2px 6px;
    font-size: 10px;
  }

  .modal-container {
    width: 95%;
    padding: 20px;
  }
}

:root {
  --toastify-color-light: #fff;
  --toastify-color-dark: #121212;
  --toastify-color-info: #3498db;
  --toastify-color-success: #07bc0c;
  --toastify-color-warning: #f1c40f;
  --toastify-color-error: #e74d3c;
  --toastify-color-transparent: #ffffffb3;
  --toastify-icon-color-info: var(--toastify-color-info);
  --toastify-icon-color-success: var(--toastify-color-success);
  --toastify-icon-color-warning: var(--toastify-color-warning);
  --toastify-icon-color-error: var(--toastify-color-error);
  --toastify-container-width: fit-content;
  --toastify-toast-width: 320px;
  --toastify-toast-offset: 16px;
  --toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));
  --toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));
  --toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));
  --toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));
  --toastify-toast-background: #fff;
  --toastify-toast-padding: 14px;
  --toastify-toast-min-height: 64px;
  --toastify-toast-max-height: 800px;
  --toastify-toast-bd-radius: 6px;
  --toastify-toast-shadow: 0px 4px 12px #0000001a;
  --toastify-font-family: sans-serif;
  --toastify-z-index: 9999;
  --toastify-text-color-light: #757575;
  --toastify-text-color-dark: #fff;
  --toastify-text-color-info: #fff;
  --toastify-text-color-success: #fff;
  --toastify-text-color-warning: #fff;
  --toastify-text-color-error: #fff;
  --toastify-spinner-color: #616161;
  --toastify-spinner-color-empty-area: #e0e0e0;
  --toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
  --toastify-color-progress-dark: #bb86fc;
  --toastify-color-progress-info: var(--toastify-color-info);
  --toastify-color-progress-success: var(--toastify-color-success);
  --toastify-color-progress-warning: var(--toastify-color-warning);
  --toastify-color-progress-error: var(--toastify-color-error);
  --toastify-color-progress-bgo: .2;
}

.Toastify__toast-container {
  z-index: var(--toastify-z-index);
  -webkit-transform: translate3d(0, 0, var(--toastify-z-index));
  width: var(--toastify-container-width);
  box-sizing: border-box;
  color: #fff;
  flex-direction: column;
  display: flex;
  position: fixed;
}

.Toastify__toast-container--top-left {
  top: var(--toastify-toast-top);
  left: var(--toastify-toast-left);
}

.Toastify__toast-container--top-center {
  top: var(--toastify-toast-top);
  align-items: center;
  left: 50%;
  transform: translateX(-50%);
}

.Toastify__toast-container--top-right {
  top: var(--toastify-toast-top);
  right: var(--toastify-toast-right);
  align-items: end;
}

.Toastify__toast-container--bottom-left {
  bottom: var(--toastify-toast-bottom);
  left: var(--toastify-toast-left);
}

.Toastify__toast-container--bottom-center {
  bottom: var(--toastify-toast-bottom);
  align-items: center;
  left: 50%;
  transform: translateX(-50%);
}

.Toastify__toast-container--bottom-right {
  bottom: var(--toastify-toast-bottom);
  right: var(--toastify-toast-right);
  align-items: end;
}

.Toastify__toast {
  --y: 0px;
  touch-action: none;
  width: var(--toastify-toast-width);
  min-height: var(--toastify-toast-min-height);
  box-sizing: border-box;
  padding: var(--toastify-toast-padding);
  border-radius: var(--toastify-toast-bd-radius);
  box-shadow: var(--toastify-toast-shadow);
  max-height: var(--toastify-toast-max-height);
  font-family: var(--toastify-font-family);
  z-index: 0;
  word-break: break-word;
  flex: auto;
  align-items: center;
  margin-bottom: 1rem;
  display: flex;
  position: relative;
}

@media only screen and (width <= 480px) {
  .Toastify__toast-container {
    width: 100vw;
    left: env(safe-area-inset-left);
    margin: 0;
  }

  .Toastify__toast-container--top-left, .Toastify__toast-container--top-center, .Toastify__toast-container--top-right {
    top: env(safe-area-inset-top);
    transform: translateX(0);
  }

  .Toastify__toast-container--bottom-left, .Toastify__toast-container--bottom-center, .Toastify__toast-container--bottom-right {
    bottom: env(safe-area-inset-bottom);
    transform: translateX(0);
  }

  .Toastify__toast-container--rtl {
    right: env(safe-area-inset-right);
    left: initial;
  }

  .Toastify__toast {
    --toastify-toast-width: 100%;
    border-radius: 0;
    margin-bottom: 0;
  }
}

.Toastify__toast-container[data-stacked="true"] {
  width: var(--toastify-toast-width);
}

@media only screen and (width <= 480px) {
  .Toastify__toast-container[data-stacked="true"] {
    width: 100vw;
  }
}

.Toastify__toast--stacked {
  width: 100%;
  transform: translate3d(0, var(--y), 0) scale(var(--s));
  transition: transform .3s;
  position: absolute;
}

.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body, .Toastify__toast--stacked[data-collapsed] .Toastify__close-button {
  transition: opacity .1s;
}

.Toastify__toast--stacked[data-collapsed="false"] {
  overflow: visible;
}

.Toastify__toast--stacked[data-collapsed="true"]:not(:last-child) > * {
  opacity: 0;
}

.Toastify__toast--stacked:after {
  content: "";
  height: calc(var(--g) * 1px);
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
}

.Toastify__toast--stacked[data-pos="top"] {
  top: 0;
}

.Toastify__toast--stacked[data-pos="bot"] {
  bottom: 0;
}

.Toastify__toast--stacked[data-pos="bot"].Toastify__toast--stacked:before {
  transform-origin: top;
}

.Toastify__toast--stacked[data-pos="top"].Toastify__toast--stacked:before {
  transform-origin: bottom;
}

.Toastify__toast--stacked:before {
  content: "";
  z-index: -1;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleY(3);
}

.Toastify__toast--rtl {
  direction: rtl;
}

.Toastify__toast--close-on-click {
  cursor: pointer;
}

.Toastify__toast-icon {
  flex-shrink: 0;
  width: 22px;
  margin-inline-end: 10px;
  display: flex;
}

.Toastify--animate {
  animation-duration: .5s;
  animation-fill-mode: both;
}

.Toastify--animate-icon {
  animation-duration: .3s;
  animation-fill-mode: both;
}

.Toastify__toast-theme--dark {
  background: var(--toastify-color-dark);
  color: var(--toastify-text-color-dark);
}

.Toastify__toast-theme--light, .Toastify__toast-theme--colored.Toastify__toast--default {
  background: var(--toastify-color-light);
  color: var(--toastify-text-color-light);
}

.Toastify__toast-theme--colored.Toastify__toast--info {
  color: var(--toastify-text-color-info);
  background: var(--toastify-color-info);
}

.Toastify__toast-theme--colored.Toastify__toast--success {
  color: var(--toastify-text-color-success);
  background: var(--toastify-color-success);
}

.Toastify__toast-theme--colored.Toastify__toast--warning {
  color: var(--toastify-text-color-warning);
  background: var(--toastify-color-warning);
}

.Toastify__toast-theme--colored.Toastify__toast--error {
  color: var(--toastify-text-color-error);
  background: var(--toastify-color-error);
}

.Toastify__progress-bar-theme--light {
  background: var(--toastify-color-progress-light);
}

.Toastify__progress-bar-theme--dark {
  background: var(--toastify-color-progress-dark);
}

.Toastify__progress-bar--info {
  background: var(--toastify-color-progress-info);
}

.Toastify__progress-bar--success {
  background: var(--toastify-color-progress-success);
}

.Toastify__progress-bar--warning {
  background: var(--toastify-color-progress-warning);
}

.Toastify__progress-bar--error {
  background: var(--toastify-color-progress-error);
}

.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info, .Toastify__progress-bar-theme--colored.Toastify__progress-bar--success, .Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning, .Toastify__progress-bar-theme--colored.Toastify__progress-bar--error {
  background: var(--toastify-color-transparent);
}

.Toastify__close-button {
  color: #fff;
  cursor: pointer;
  opacity: .7;
  z-index: 1;
  background: none;
  border: none;
  outline: none;
  padding: 0;
  transition: all .3s;
  position: absolute;
  top: 6px;
  right: 6px;
}

.Toastify__toast--rtl .Toastify__close-button {
  left: 6px;
  right: unset;
}

.Toastify__close-button--light {
  color: #000;
  opacity: .3;
}

.Toastify__close-button > svg {
  fill: currentColor;
  width: 14px;
  height: 16px;
}

.Toastify__close-button:hover, .Toastify__close-button:focus {
  opacity: 1;
}

@keyframes Toastify__trackProgress {
  0% {
    transform: scaleX(1);
  }

  100% {
    transform: scaleX(0);
  }
}

.Toastify__progress-bar {
  z-index: 1;
  opacity: .7;
  transform-origin: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

.Toastify__progress-bar--animated {
  animation: linear forwards Toastify__trackProgress;
}

.Toastify__progress-bar--controlled {
  transition: transform .2s;
}

.Toastify__progress-bar--rtl {
  right: 0;
  left: initial;
  transform-origin: 100%;
  border-bottom-left-radius: initial;
}

.Toastify__progress-bar--wrp {
  border-bottom-left-radius: var(--toastify-toast-bd-radius);
  border-bottom-right-radius: var(--toastify-toast-bd-radius);
  width: 100%;
  height: 5px;
  position: absolute;
  bottom: 0;
  left: 0;
  overflow: hidden;
}

.Toastify__progress-bar--wrp[data-hidden="true"] {
  opacity: 0;
}

.Toastify__progress-bar--bg {
  opacity: var(--toastify-color-progress-bgo);
  width: 100%;
  height: 100%;
}

.Toastify__spinner {
  box-sizing: border-box;
  border: 2px solid;
  border-color: var(--toastify-spinner-color-empty-area);
  border-right-color: var(--toastify-spinner-color);
  border-radius: 100%;
  width: 20px;
  height: 20px;
  animation: .65s linear infinite Toastify__spin;
}

@keyframes Toastify__bounceInRight {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }

  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    transform: translate3d(10px, 0, 0);
  }

  90% {
    transform: translate3d(-5px, 0, 0);
  }

  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, var(--y), 0);
  }

  to {
    opacity: 0;
    transform: translate3d(2000px, var(--y), 0);
  }
}

@keyframes Toastify__bounceInLeft {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }

  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }

  75% {
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    transform: translate3d(5px, 0, 0);
  }

  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, var(--y), 0);
  }

  to {
    opacity: 0;
    transform: translate3d(-2000px, var(--y), 0);
  }
}

@keyframes Toastify__bounceInUp {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }

  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }

  75% {
    transform: translate3d(0, 10px, 0);
  }

  90% {
    transform: translate3d(0, -5px, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__bounceOutUp {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0);
  }

  40%, 45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0);
  }

  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes Toastify__bounceInDown {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
  }

  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }

  75% {
    transform: translate3d(0, -10px, 0);
  }

  90% {
    transform: translate3d(0, 5px, 0);
  }

  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutDown {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0);
  }

  40%, 45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0);
  }

  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.Toastify__bounce-enter--top-left, .Toastify__bounce-enter--bottom-left {
  animation-name: Toastify__bounceInLeft;
}

.Toastify__bounce-enter--top-right, .Toastify__bounce-enter--bottom-right {
  animation-name: Toastify__bounceInRight;
}

.Toastify__bounce-enter--top-center {
  animation-name: Toastify__bounceInDown;
}

.Toastify__bounce-enter--bottom-center {
  animation-name: Toastify__bounceInUp;
}

.Toastify__bounce-exit--top-left, .Toastify__bounce-exit--bottom-left {
  animation-name: Toastify__bounceOutLeft;
}

.Toastify__bounce-exit--top-right, .Toastify__bounce-exit--bottom-right {
  animation-name: Toastify__bounceOutRight;
}

.Toastify__bounce-exit--top-center {
  animation-name: Toastify__bounceOutUp;
}

.Toastify__bounce-exit--bottom-center {
  animation-name: Toastify__bounceOutDown;
}

@keyframes Toastify__zoomIn {
  from {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes Toastify__zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    transform: translate3d(0, var(--y), 0) scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

.Toastify__zoom-enter {
  animation-name: Toastify__zoomIn;
}

.Toastify__zoom-exit {
  animation-name: Toastify__zoomOut;
}

@keyframes Toastify__flipIn {
  from {
    opacity: 0;
    animation-timing-function: ease-in;
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
  }

  40% {
    animation-timing-function: ease-in;
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
  }

  60% {
    opacity: 1;
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
  }

  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    transform: perspective(400px);
  }
}

@keyframes Toastify__flipOut {
  from {
    transform: translate3d(0, var(--y), 0) perspective(400px);
  }

  30% {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.Toastify__flip-enter {
  animation-name: Toastify__flipIn;
}

.Toastify__flip-exit {
  animation-name: Toastify__flipOut;
}

@keyframes Toastify__slideInRight {
  from {
    visibility: visible;
    transform: translate3d(110%, 0, 0);
  }

  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideInLeft {
  from {
    visibility: visible;
    transform: translate3d(-110%, 0, 0);
  }

  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideInUp {
  from {
    visibility: visible;
    transform: translate3d(0, 110%, 0);
  }

  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideInDown {
  from {
    visibility: visible;
    transform: translate3d(0, -110%, 0);
  }

  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideOutRight {
  from {
    transform: translate3d(0, var(--y), 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(110%, var(--y), 0);
  }
}

@keyframes Toastify__slideOutLeft {
  from {
    transform: translate3d(0, var(--y), 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(-110%, var(--y), 0);
  }
}

@keyframes Toastify__slideOutDown {
  from {
    transform: translate3d(0, var(--y), 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(0, 500px, 0);
  }
}

@keyframes Toastify__slideOutUp {
  from {
    transform: translate3d(0, var(--y), 0);
  }

  to {
    visibility: hidden;
    transform: translate3d(0, -500px, 0);
  }
}

.Toastify__slide-enter--top-left, .Toastify__slide-enter--bottom-left {
  animation-name: Toastify__slideInLeft;
}

.Toastify__slide-enter--top-right, .Toastify__slide-enter--bottom-right {
  animation-name: Toastify__slideInRight;
}

.Toastify__slide-enter--top-center {
  animation-name: Toastify__slideInDown;
}

.Toastify__slide-enter--bottom-center {
  animation-name: Toastify__slideInUp;
}

.Toastify__slide-exit--top-left, .Toastify__slide-exit--bottom-left {
  animation-name: Toastify__slideOutLeft;
  animation-duration: .3s;
  animation-timing-function: ease-in;
}

.Toastify__slide-exit--top-right, .Toastify__slide-exit--bottom-right {
  animation-name: Toastify__slideOutRight;
  animation-duration: .3s;
  animation-timing-function: ease-in;
}

.Toastify__slide-exit--top-center {
  animation-name: Toastify__slideOutUp;
  animation-duration: .3s;
  animation-timing-function: ease-in;
}

.Toastify__slide-exit--bottom-center {
  animation-name: Toastify__slideOutDown;
  animation-duration: .3s;
  animation-timing-function: ease-in;
}

@keyframes Toastify__spin {
  from {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

.main-content-cr {
  box-sizing: border-box;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  width: 100%;
  min-height: calc(100vh - 200px);
  margin-top: 2.5rem;
  padding-bottom: 100px;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
}

.left-half-cookie {
  scrollbar-width: none;
  background: #f5f5f5;
  flex: 0 0 48%;
  max-width: 48%;
  max-height: calc(100vh - 250px);
  padding-bottom: 20px;
  padding-right: 16px;
  overflow: hidden auto;
}

.right-half-cookie {
  background: none;
  flex: 0 0 48%;
  align-self: flex-start;
  max-width: 48%;
  min-height: 400px;
  max-height: calc(100vh - 250px);
  padding: 0;
  position: sticky;
  top: 100px;
  overflow: hidden auto;
  visibility: visible !important;
  display: block !important;
}

.right-half-cookie .preview-header {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-bottom: none;
  border-radius: 12px 12px 0 0;
  padding: 16px 20px;
  box-shadow: 0 1px 3px #0000000d;
}

.right-half-cookie .preview-shell, .right-half-cookie > div:not(.preview-header) {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 0 0 12px 12px;
  min-height: 400px;
  padding: 20px;
  box-shadow: 0 2px 8px #00000014;
}

.left-half-cookie.full-width {
  flex: 0 0 100%;
  max-width: 90%;
}

@media (width <= 1200px) {
  .main-content-cr {
    flex-direction: column;
    gap: 20px;
  }

  .left-half {
    flex: 1;
    width: 100%;
  }

  .right-half {
    width: 100%;
    top: unset;
    flex: 1;
    position: relative;
  }
}

.scanning-pill {
  opacity: 1;
  transition: opacity .5s;
}

.scanning-pill.hide {
  opacity: 0;
}

sample-button {
  color: #fff;
  background-color: #1976d2;
  border: none;
}

.language-con {
  transition: opacity .25s ease-in-out;
}

.language-con[data-loading="true"] {
  opacity: .4;
  pointer-events: none;
}

.responsive-modal {
  background: #fff;
  border-radius: 16px;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  max-width: 560px;
  padding: 24px;
  display: flex;
  box-shadow: 0 8px 24px #0000001a;
}

@media (width <= 768px) {
  .responsive-modal {
    border-radius: 12px;
    max-width: 100%;
    padding: 16px;
  }

  .modal-footer {
    flex-direction: column-reverse;
    gap: 8px;
  }

  .modal-footer button {
    width: 100%;
  }
}

@media (width <= 480px) {
  .responsive-modal {
    padding: 12px;
  }

  .modal-body {
    max-height: 70vh;
    overflow-y: auto;
  }

  .modal-header Text:first-child {
    font-size: 16px;
  }

  .modal-header Text:last-child {
    font-size: 13px;
  }
}

.footer {
  z-index: 100;
  background: #fff;
  border-top: 1px solid #e5e7eb;
  position: fixed;
  bottom: 0;
  left: 240px;
  right: 0;
  box-shadow: 0 -2px 8px #0000000d;
  padding: 16px 20px !important;
}

.template-consent {
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  display: flex;
}

.acc-con {
  padding: 0 16px;
}

.acc-con > div:first-child {
  z-index: 1;
  position: relative !important;
  top: auto !important;
}

.page-container {
  min-height: 100vh;
  padding-bottom: 80px;
  position: relative;
}

.cookie-logs-page {
  box-sizing: border-box;
  background: #fff;
  min-height: 100vh;
  margin-left: 2px;
  padding: 88px 32px 48px 24px;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica Neue, Arial;
}

.cookie-logs-header {
  align-items: center;
  gap: 20px;
  margin-bottom: 22px;
  display: flex;
}

.cookie-logs-back-btn {
  cursor: pointer;
  color: #111827;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  transition: all .2s;
  display: flex;
  box-shadow: 0 2px 6px #0206170f;
}

.cookie-logs-back-btn:hover {
  background: #f9fafb;
}

.cookie-logs-header-content {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  width: 100%;
  display: flex;
}

.cookie-logs-title {
  color: #0f172a;
  margin: 0;
  font-size: 22px;
  font-weight: 800;
}

.cookie-logs-domain {
  color: #111827;
  background: #f3f4f6;
  border: 1px solid #e6e8eb;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 13px;
}

.cookie-logs-select {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  outline: none;
  width: 312px;
  height: 32px;
  padding: 0 10px;
  font-size: 13px;
  transition: all .2s;
}

.cookie-logs-select:hover {
  border-color: #c7cbd1;
}

.cookie-logs-kpi-row {
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 24px;
  display: flex;
}

.cookie-logs-kpi {
  box-sizing: border-box;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  align-items: center;
  gap: 10px;
  width: 214px;
  height: 90px;
  padding: 20px;
  transition: transform .15s, box-shadow .15s;
  display: flex;
  box-shadow: 0 4px 12px #0206170a;
}

.cookie-logs-kpi:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px #0206170f;
}

.cookie-logs-kpi-icon {
  opacity: 1;
  background: #f9fafb;
  border-radius: 24px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 40px;
  height: 40px;
  display: flex;
}

.cookie-logs-kpi-label {
  color: #334155;
  font-size: 12px;
  font-weight: 600;
}

.cookie-logs-kpi-value {
  color: #111827;
  font-size: 20px;
  font-weight: 800;
}

.kpi-default {
  background: #e7ebf8;
}

.kpi-accepted, .kpi-partial {
  background: #e9f7e9;
}

.kpi-rejected {
  background: #fee6ea;
}

.kpi-noaction {
  background: #f5f5f5;
}

.cookie-logs-table-container {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin-top: 8px;
  overflow: hidden;
  box-shadow: 0 1px 3px #00000014;
}

.cookie-logs-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 920px;
  font-family: JioType, sans-serif;
}

.cookie-logs-table thead tr {
  color: #334155;
  text-align: left;
  background: #f8fafc;
  border-bottom: 2px solid #e2e8f0;
  font-size: 13px;
  font-weight: 600;
}

.cookie-logs-table th {
  color: #334155;
  white-space: nowrap;
  border-right: 1px solid #e2e8f0;
  padding: 14px 16px;
  font-weight: 600;
}

.cookie-logs-table th:last-child {
  border-right: none;
}

.cookie-logs-table td {
  color: #1e293b;
  vertical-align: middle;
  border-right: 1px solid #f1f5f9;
  padding: 12px 16px;
  font-size: 13px;
}

.cookie-logs-table td:last-child {
  border-right: none;
}

.cookie-logs-table tbody tr {
  border-bottom: 1px solid #e2e8f0;
  transition: background-color .15s;
}

.cookie-logs-table tbody tr:last-child {
  border-bottom: none;
}

.cookie-logs-table tbody tr:nth-child(odd) {
  background: #fff;
}

.cookie-logs-table tbody tr:nth-child(2n) {
  background: #fafbfc;
}

.cookie-logs-table tbody tr:hover {
  transition: background .2s;
  background: #e8f4fd !important;
}

.status-badge {
  white-space: nowrap;
  border-radius: 12px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 700;
  display: inline-block;
}

.status-accepted {
  color: #166534;
  background: #dcfce7;
}

.status-rejected {
  color: #991b1b;
  background: #fee2e2;
}

.status-necessary {
  color: #0a3cce;
  background: #e8f0ff;
}

.cookie-logs-footer {
  color: #6b7280;
  justify-content: space-between;
  align-items: center;
  margin-top: 28px;
  font-size: 13px;
  display: flex;
}

.cookie-logs-footer-links {
  gap: 12px;
  display: flex;
}

.cookie-logs-footer-links a {
  color: #6b7280;
  text-decoration: none;
  transition: color .2s;
}

.cookie-logs-footer-links a:hover {
  color: #111827;
}

@media (width <= 900px) {
  .cookie-logs-select {
    width: 100%;
  }

  .cookie-logs-kpi-row {
    justify-content: center;
  }

  .cookie-logs-table {
    min-width: 100%;
    font-size: 13px;
  }

  .cookie-logs-back-btn {
    width: 44px;
    height: 44px;
    font-size: 22px;
  }
}

@media (width <= 700px) {
  .cookie-logs-actions {
    justify-content: center;
  }

  .cookie-logs-action-icons {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  .cookie-logs-search.small {
    width: 100%;
    max-width: 100%;
  }
}

.cookie-logs-actions {
  justify-content: flex-end;
  align-items: center;
  margin: 20px 0 24px;
  display: flex;
}

.cookie-logs-action-icons {
  align-items: center;
  gap: 12px;
  display: flex;
}

.cookie-logs-search.small {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 30px;
  align-items: center;
  width: 220px;
  padding: 6px 14px;
  transition: all .2s;
  display: flex;
  box-shadow: 0 1px 2px #0000000d;
}

.cookie-logs-search.small input {
  color: #111827;
  background: none;
  border: none;
  outline: none;
  flex: 1;
  margin-left: 8px;
  font-family: inherit;
  font-size: 14px;
}

.cookie-logs-search.small:focus-within {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px #0f3cc91a;
}

.cookie-logs-action-btn {
  cursor: pointer;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  padding: 8px;
  transition: background .2s, box-shadow .2s;
  display: flex;
}

.cookie-logs-action-btn:hover {
  background: #f9fafb;
  box-shadow: 0 2px 6px #02061714;
}

@media (width <= 700px) {
  .cookie-logs-actions {
    justify-content: center;
  }

  .cookie-logs-action-icons {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  .cookie-logs-search.small {
    width: 100%;
    max-width: 100%;
  }
}

.cookie-loader-container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  height: 200px;
  display: flex;
}

.cookie-spinner {
  border: 3px solid #e5e7eb;
  border-top-color: #0a3cce;
  border-radius: 50%;
  width: 28px;
  height: 28px;
  animation: .8s linear infinite spin;
}

.cookie-loader-text {
  color: #6b7280;
  font-size: 14px;
  font-weight: 500;
}

.sortable-header {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  text-align: left;
  color: #1a1a1a;
  padding: 8px 12px;
  font-weight: 500;
  position: relative;
}

.sort-icon {
  color: #a0a0a0;
  margin-left: 6px;
  font-size: 12px;
}

.sortable-header.active-sort .sort-icon {
  color: #0057ff;
}

.sort-icon .arrow {
  vertical-align: middle;
  font-size: 10px;
}

.sortable-header {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  text-align: left;
  color: #1a1a1a;
  padding: 8px 12px;
  font-weight: 500;
}

.cookie-logs-th-inner {
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

.cookie-logs-th-inner span {
  flex-shrink: 0;
}

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

.header-label {
  white-space: nowrap;
  flex: 1;
}

.active-sort .header-content svg, .active-sort .cookie-logs-th-inner svg {
  color: #0057ff;
}

.status-expired {
  color: #b93717;
  background-color: #ffe7d9;
  border-radius: 6px;
  padding: 2px 8px;
  font-weight: 600;
}

.status-accepted {
  color: #0f7b42;
  background-color: #e3fcef;
  border-radius: 6px;
  padding: 2px 8px;
}

.status-rejected {
  color: #b91c1c;
  background-color: #ffe0e0;
  border-radius: 6px;
  padding: 2px 8px;
}

.status-partial {
  color: #1c4ed8;
  background-color: #e8f1ff;
  border-radius: 6px;
  padding: 2px 8px;
}

.kpi-expired {
  background-color: #fff2ec;
}

.kpi-rejected {
  background-color: #ffecec;
}

.kpi-accepted {
  background-color: #e9f8ef;
}

.cookie-logs-filter-overlay {
  backdrop-filter: blur(2px);
  z-index: 999;
  background: #00000059;
  animation: .2s ease-out forwards fadeIn;
  position: fixed;
  inset: 0;
}

.cookie-logs-filter-drawer {
  z-index: 1000;
  background: #fff;
  border-left: 1px solid #e2e2e2;
  flex-direction: column;
  gap: 14px;
  width: 340px;
  height: 100vh;
  padding: 20px 18px;
  animation: .25s cubic-bezier(.2, .85, .35, 1) forwards drawerSlideIn;
  display: flex;
  position: fixed;
  top: 0;
  right: 0;
}

@keyframes drawerSlideIn {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0);
  }
}

.cookie-logs-filter-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
  display: flex;
}

.cookie-logs-filter-title {
  align-items: center;
  gap: 10px;
  display: flex;
}

.cookie-logs-filter-close {
  cursor: pointer;
  background: none;
  border: none;
  align-items: center;
  padding: 6px;
  display: flex;
}

.cookie-logs-filter-content {
  flex-direction: column;
  gap: 18px;
  padding-right: 4px;
  display: flex;
  overflow-y: auto;
}

.cookie-logs-filter-section {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.cookie-logs-filter-chips {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.cookie-logs-filter-chip {
  cursor: pointer;
  color: #333;
  background: #fafafa;
  border: 1px solid #c6c6c6;
  border-radius: 20px;
  align-items: center;
  gap: 4px;
  padding: 7px 12px;
  font-size: 12px;
  transition: all .22s;
  display: flex;
}

.cookie-logs-filter-chip:hover {
  background: #f1f1f1;
}

.cookie-logs-filter-chip.active {
  color: #205cfd;
  background: #205cfd15;
  border-color: #205cfd;
}

.cookie-logs-filter-date-range {
  gap: 12px;
  display: flex;
}

.cookie-logs-filter-date-input {
  flex-direction: column;
  gap: 5px;
  width: 50%;
  display: flex;
}

.cookie-logs-filter-date-input label {
  color: #666;
  font-size: 11px;
}

.cookie-logs-filter-date-input input {
  border: 1px solid #d3d3d3;
  border-radius: 6px;
  padding: 8px;
  font-size: 13px;
}

.cookie-logs-filter-footer {
  border-top: 1px solid #e1e1e1;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 10px;
  display: flex;
}

.cookie-logs-filter-btn {
  cursor: pointer;
  background: none;
  border: none;
  align-items: center;
  padding: 8px;
  display: flex;
  position: relative;
}

.cookie-logs-filter-btn.active {
  background: #205cfd15;
  border-radius: 8px;
}

.cookie-logs-filter-badge {
  color: #fff;
  background: #205cfd;
  border-radius: 10px;
  padding: 1px 5px;
  font-size: 10px;
  font-weight: 600;
  position: absolute;
  top: -4px;
  right: -4px;
}

.cookie-logs-filter-content::-webkit-scrollbar {
  width: 6px;
}

.cookie-logs-filter-content::-webkit-scrollbar-thumb {
  background: #bfbfbf;
  border-radius: 10px;
}

@media (width <= 480px) {
  .cookie-logs-filter-drawer {
    width: 90vw;
  }
}

.cookie-65b-download-btn {
  cursor: pointer;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  transition: all .2s;
  display: inline-flex;
}

.cookie-65b-download-btn:hover {
  color: #0a3cce;
  background: #f1f5f9;
  border-color: #0a3cce;
}

.cookie-65b-download-btn:active {
  transform: scale(.95);
}

.cookie-logs-empty-state {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 40px 20px;
  display: flex;
}

.language-tabs-container {
  align-items: center;
  margin-top: 20px;
  display: flex;
}

.language-tabs {
  border-bottom: 1px solid #e0e0e0;
  flex-grow: 1;
  display: flex;
  overflow-x: hidden;
}

.language-tab {
  cursor: pointer;
  white-space: nowrap;
  padding: 10px 20px;
}

.language-tab.active {
  border-bottom: 2px solid #0ea5e9;
  font-weight: bold;
}

.form-container, .description-container {
  margin-top: 20px;
}

.description-container textarea {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 100%;
  margin-top: 8px;
  padding: 10px;
}

.arrow-btn {
  cursor: pointer;
}

.table-container {
  max-width: 90%;
  margin-top: 20px;
}

.cookie-category-save-btn {
  margin-right: 5%;
}

.table-container {
  width: 95%;
}

.custom-table {
  border-collapse: collapse;
  width: 100%;
}

.custom-table thead {
  background-color: #f9f9f9;
}

.custom-table th, .custom-table td {
  text-align: left;
  border-bottom: 1px solid #f0f0f0;
  padding: 12px 8px;
}

.custom-table th {
  border-top: 1px solid #f0f0f0;
}

.custom-table tbody tr {
  background-color: #fff;
}

@media (width <= 1024px) {
  .table-container {
    width: 98%;
    max-width: 100%;
  }

  .cookie-category-save-btn {
    margin-right: 3%;
  }
}

@media (width <= 768px) {
  .table-container {
    -webkit-overflow-scrolling: touch;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
  }

  .cookie-category-save-btn {
    text-align: center;
    width: 100%;
    margin-right: 0;
  }

  .custom-table {
    min-width: 600px;
    font-size: 12px;
  }

  .custom-table th, .custom-table td {
    padding: 10px 6px;
    font-size: 12px;
  }
}

@media screen and (width <= 480px) {
  .custom-table {
    min-width: 500px;
    font-size: 11px;
  }

  .custom-table th, .custom-table td {
    padding: 8px 4px;
    font-size: 11px;
  }
}

@media screen and (width <= 360px) {
  .custom-table thead {
    display: none;
  }

  .custom-table, .custom-table tbody, .custom-table tr, .custom-table td {
    width: 100%;
    display: block;
  }

  .custom-table tr {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    margin-bottom: 15px;
    padding: 10px;
  }

  .custom-table td {
    text-align: right;
    border-bottom: 1px solid #f0f0f0;
    padding-left: 50%;
    position: relative;
  }

  .custom-table td:last-child {
    border-bottom: none;
  }

  .custom-table td:before {
    content: attr(data-label);
    text-align: left;
    width: 50%;
    padding-left: 10px;
    font-weight: bold;
    position: absolute;
    left: 0;
  }
}

.ropa-container {
  background: #f8f9fa;
  width: 100%;
  padding: 24px;
}

.ropa-header-section {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  margin-right: 3rem;
  padding: 0;
  display: flex;
}

.ropa-title-section {
  align-items: center;
  gap: 12px;
  display: flex;
}

.ropa-main-title {
  color: #000;
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
}

.ropa-governance-badge {
  color: #065f46;
  background-color: #d1fae5;
  border-radius: 12px;
  align-items: center;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.ropa-button-group {
  align-items: center;
  gap: 12px;
  display: flex;
}

.ropa-table-controls {
  justify-content: flex-end;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  margin-right: 2rem;
  display: flex;
}

.ropa-search-container {
  flex: none;
  max-width: 300px;
  position: relative;
}

.ropa-search-input {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 24px;
  outline: none;
  width: 100%;
  min-width: 300px;
  padding: .625rem 1rem .625rem 2.75rem;
  font-size: .875rem;
  transition: border-color .2s;
}

.ropa-search-input:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px #3b82f61a;
}

.ropa-search-icon {
  color: #6b7280;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

.ropa-table-actions {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.ropa-icon-button {
  cursor: pointer;
  color: #4b5563;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: all .2s;
  display: flex;
}

.ropa-icon-button:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.ropa-icon-button:active {
  background: #f3f4f6;
}

.ropa-table-wrapper {
  background: #fff;
  border-radius: 8px;
  max-height: calc(100vh - 200px);
  margin-top: 0;
  margin-right: 2rem;
  padding: 0;
  overflow: auto;
  box-shadow: 0 1px 3px #0000001a;
}

.ropa-table {
  border-collapse: collapse;
  border-spacing: 0;
  background: #fff;
  border-top: 1px solid beige;
  width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 12px;
}

.ropa-table thead {
  z-index: 10;
  background-color: #fff;
  position: sticky;
  top: 0;
}

.ropa-table thead tr.ropa-section-row th {
  text-align: center;
  color: #333;
  text-transform: none;
  vertical-align: middle;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  background-color: #fff !important;
  border: 1px solid #e0e0e0 !important;
  border-top: none !important;
  border-left: none !important;
  display: table-cell !important;
}

.ropa-table thead tr.ropa-section-row th:first-child {
  border-left: none;
}

.ropa-table thead tr.ropa-section-row th:last-child {
  border-right: none;
}

.ropa-table thead tr:last-child th {
  text-align: center;
  color: #666;
  background-color: #f5f5f5;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}

.ropa-table thead tr:last-child th:last-child {
  border-right: none;
}

.ropa-table td {
  color: #333;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.4;
}

.ropa-table td:last-child {
  border-right: none;
}

.ropa-table tbody tr:hover {
  background-color: #f9fafb;
}

.ropa-table tbody tr {
  background-color: #fff;
}

.ropa-table th:first-child, .ropa-table td:first-child {
  width: 180px;
  min-width: 180px;
}

.ropa-table th:nth-child(2), .ropa-table td:nth-child(2) {
  width: 200px;
  min-width: 200px;
}

.ropa-table th:nth-child(3), .ropa-table td:nth-child(3) {
  width: 180px;
  min-width: 180px;
}

.ropa-table th:nth-child(4), .ropa-table td:nth-child(4) {
  width: 250px;
  min-width: 250px;
}

.ropa-table th:nth-child(5), .ropa-table td:nth-child(5) {
  width: 280px;
  min-width: 280px;
}

.ropa-table th:nth-child(6), .ropa-table td:nth-child(6) {
  width: 250px;
  min-width: 250px;
}

.ropa-table th:nth-child(7), .ropa-table td:nth-child(7) {
  width: 200px;
  min-width: 200px;
}

.ropa-table th:nth-child(8), .ropa-table td:nth-child(8) {
  width: 220px;
  min-width: 220px;
}

.ropa-table th:nth-child(9), .ropa-table td:nth-child(9) {
  width: 280px;
  min-width: 280px;
}

.ropa-table th:nth-child(10), .ropa-table td:nth-child(10) {
  width: 300px;
  min-width: 300px;
}

.ropa-table th:nth-child(11), .ropa-table td:nth-child(11) {
  width: 240px;
  min-width: 240px;
}

.ropa-table th:nth-child(12), .ropa-table td:nth-child(12) {
  width: 200px;
  min-width: 200px;
}

.ropa-actions {
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: flex;
}

.icon-btn {
  cursor: pointer;
  color: #666;
  background: none;
  border: none;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 6px;
  transition: background-color .2s;
  display: flex;
}

.icon-btn:active {
  background-color: #e0e0e0;
}

.icon-btn-delete:hover svg {
  fill: #dc2626;
}

@media (width <= 1400px) {
  .ropa-container {
    padding: 16px;
  }

  .ropa-table {
    font-size: 11px;
  }

  .ropa-table thead tr:first-child th {
    padding: 8px 10px;
    font-size: 11px;
  }

  .ropa-table thead tr:last-child th {
    padding: 6px 10px;
    font-size: 10px;
  }

  .ropa-table tbody td {
    padding: 8px 10px;
    font-size: 11px;
  }
}

@media (width <= 1024px) {
  .ropa-container {
    padding: 12px;
  }

  .ropa-header-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-right: 1rem;
  }

  .ropa-button-group {
    justify-content: flex-start;
    width: 100%;
  }

  .ropa-table-controls, .ropa-table-wrapper {
    margin-right: 1rem;
  }
}

@media (width <= 768px) {
  .ropa-container {
    padding: 8px;
  }

  .ropa-main-title {
    font-size: 24px;
  }

  .ropa-header-section {
    margin-right: 0;
  }

  .ropa-button-group {
    flex-direction: column;
    width: 100%;
  }

  .ropa-table-controls {
    flex-direction: column;
    align-items: stretch;
    margin-right: 0;
  }

  .ropa-search-container {
    width: 100%;
    max-width: 100%;
  }

  .ropa-search-input {
    width: 100%;
    min-width: 100%;
  }

  .ropa-table-actions {
    justify-content: flex-end;
    width: 100%;
  }

  .ropa-table-wrapper {
    -webkit-overflow-scrolling: touch;
    margin-right: 0;
    overflow-x: auto;
  }

  .ropa-table {
    min-width: 1000px;
    font-size: 10px;
  }

  .ropa-table thead tr th {
    padding: 6px 8px;
    font-size: 10px;
  }

  .ropa-table td {
    padding: 8px;
    font-size: 10px;
  }
}

@media (width <= 480px) {
  .ropa-main-title {
    font-size: 20px;
  }

  .ropa-table {
    min-width: 900px;
    font-size: 9px;
  }

  .ropa-table thead tr th, .ropa-table td {
    padding: 6px;
    font-size: 9px;
  }
}

.add-ropa-entry-container {
  width: 100%;
  max-width: 100%;
}

.add-ropa-entry-header {
  align-items: center;
  gap: 20px;
  margin-bottom: 32px;
  display: flex;
}

.add-ropa-entry-header .jds-button {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 56px;
  min-width: 56px;
  height: 56px;
  padding: 0;
  display: flex;
}

.add-ropa-entry-header .jds-button:hover {
  background: #f5f5f5;
}

.add-ropa-entry-content {
  background: #fff;
  max-width: 600px;
  padding-left: 65px;
}

:is(.form-field input:-ms-placeholder-shown, .form-field textarea:-ms-placeholder-shown), :is(.form-field input:placeholder-shown, .form-field textarea:placeholder-shown) {
  color: #9ca3af;
  font-size: 14px;
}

.dpo-dashboard-container {
  background-color: #fff;
  width: 100%;
  min-height: 100vh;
  padding-right: 5%;
}

.dashboard-header {
  background-color: #0000;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding: 0;
  display: flex;
}

.dropdown-group {
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  width: auto;
  margin-bottom: 0;
  display: flex;
}

.dropdown-group select {
  color: #333;
  appearance: none;
  box-sizing: border-box;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #d0d0d0;
  border-radius: 8px;
  width: 110%;
  height: 42px;
  margin-top: 10px;
  padding: 10px 14px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}

.dashboard-header-actions {
  align-items: center;
  gap: 12px;
  display: flex;
}

.period-dropdown {
  color: #333;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  min-width: 150px;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 500;
}

.audit-button {
  color: #1976d2;
  cursor: pointer;
  box-sizing: border-box;
  white-space: nowrap;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  height: 42px;
  padding: 10px 14px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  transition: all .2s;
  display: flex;
}

.audit-button:hover {
  background-color: #f5f5f5;
  border-color: #999;
}

.audit-button svg {
  stroke: #1976d2;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
}

.section-title {
  color: #000;
  margin: 0 0 16px;
  font-size: 14px;
  font-weight: 700;
}

.register-section {
  background-color: #0000;
  margin-bottom: 20px;
  padding: 0;
}

.dpo-stats-grid {
  grid-template-columns: repeat(7, 1fr);
  gap: 10px;
  display: grid;
}

.dpo-stat-card {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 15px;
  align-items: center;
  gap: 10px;
  padding: 16px 12px;
  transition: transform .2s, box-shadow .2s;
  display: flex;
}

.dpo-stat-card:hover {
  border-color: #d0d0d0;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #0000001a;
}

.dpo-stat-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.dpo-blue-icon {
  color: #1976d2;
  background-color: #e3f2fd;
}

.dpo-purple-icon {
  color: #7b1fa2;
  background-color: #f3e5f5;
}

.dpo-pink-icon {
  color: #c2185b;
  background-color: #fce4ec;
}

.dpo-orange-icon {
  color: #f57c00;
  background-color: #fff3e0;
}

.dpo-indigo-icon {
  color: #3f51b5;
  background-color: #e8eaf6;
}

.dpo-teal-icon {
  color: #00897b;
  background-color: #e0f2f1;
}

.dpo-green-icon {
  color: #2e7d32;
  background-color: #e8f5e9;
}

.dpo-stat-content {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.dpo-stat-value {
  color: #000;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.1;
}

.dpo-stat-label {
  color: #666;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.2;
}

.content-grid {
  flex-direction: row;
  gap: 16px;
  margin-bottom: 16px;
  display: flex;
}

.content-column {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.content-section {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  padding: 14px;
  box-shadow: 0 1px 2px #0000000d;
}

.section-header-with-info {
  align-items: center;
  gap: 6px;
  margin-bottom: 12px;
  display: flex;
}

.templates-header, .consents-stats-header {
  align-items: center;
  gap: 4px;
  margin-top: 12px;
  margin-bottom: 8px;
  display: flex;
}

.info-icon-circle {
  background-color: #e5e7eb;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  display: flex;
}

.template-cards-row {
  gap: 8px;
  margin-bottom: 12px;
  display: flex;
}

.template-card {
  border: 1px solid #0000;
  border-radius: 6px;
  flex: 1;
  align-items: center;
  gap: 10px;
  padding: 12px;
  display: flex;
}

.template-success {
  background-color: #dcfce7;
  border-color: #bbf7d0;
}

.template-warning {
  background-color: #fed7aa;
  border-color: #fdba74;
}

.template-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

.template-icon-success {
  background-color: #22c55e;
}

.template-icon-warning {
  background-color: #f97316;
}

.template-info {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.consents-stats-container {
  align-items: center;
  gap: 20px;
  margin-top: 12px;
  display: flex;
}

.consents-chart {
  flex-shrink: 0;
}

.consents-stats-grid {
  flex: 1;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}

.consent-stat-item {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  align-items: center;
  gap: 10px;
  padding: 12px;
  transition: all .2s;
  display: flex;
}

.consent-stat-item:hover {
  border-color: #d1d5db;
  box-shadow: 0 2px 8px #00000014;
}

.consent-stat-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

.consent-stat-success {
  background-color: #22c55e;
}

.consent-stat-info {
  background-color: #3b82f6;
}

.consent-stat-warning {
  background-color: #f59e0b;
}

.consent-stat-error {
  background-color: #ef4444;
}

.consent-stat-details {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.consents-section {
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 24px;
}

.consent-cards {
  border-bottom: 1px solid #e5e7eb;
  flex-direction: row;
  gap: 12px;
  padding-bottom: 10px;
  display: flex;
}

.consent-card {
  border-radius: 6px;
  align-items: center;
  gap: 12px;
  min-width: 280px;
  padding: 16px;
  display: flex;
}

.success-card {
  background-color: #e8f5e9;
}

.warning-card {
  background-color: #fff3e0;
}

.consent-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

.consent-icon.success {
  background-color: #4caf50;
}

.consent-icon.warning {
  background-color: #ff9800;
}

.consent-info {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.consent-number {
  color: #000;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
}

.consent-label {
  color: #666;
  font-size: 10px;
  font-weight: 400;
}

.consent-stats {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  display: grid;
}

.consent-stats-col {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.consent-stats-header {
  color: #000;
  border-bottom: 1px solid #e0e0e0;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 8px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.stats-value-with-icon {
  align-items: center;
  gap: 8px;
  display: flex;
}

.stats-main-value {
  color: #000;
  font-size: 14px;
  font-weight: 700;
}

.info-icon {
  cursor: pointer;
  font-size: 14px;
}

.consent-stats-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.stat-row {
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  display: flex;
}

.stat-row .stat-label {
  color: #666;
}

.stat-row .stat-value {
  color: #000;
  font-weight: 700;
}

.notifications-white-container {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  margin-bottom: 16px;
  padding: 14px;
  box-shadow: 0 1px 2px #0000000d;
}

.notifications-grid-inner {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  display: grid;
}

.notification-column {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.notification-cards-row {
  gap: 12px;
  display: flex;
}

.notification-card {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  flex: 1;
  align-items: center;
  gap: 12px;
  padding: 14px;
  display: flex;
}

.notification-icon-wrapper {
  background-color: #e0f2fe;
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  display: flex;
}

.notification-content {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.notifications-container {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 16px;
  display: grid;
}

.notification-cards {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  gap: 12px;
  padding: 14px;
  display: flex;
  box-shadow: 0 1px 2px #0000000d;
}

.notifications-section {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 15px;
  width: 100%;
  padding: 16px;
  box-shadow: 0 1px 2px #0000000d;
}

.notifications-grid {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 24px;
  display: grid;
}

.cookie-status-cards {
  border-bottom: 1px solid #e5e7eb;
  flex-direction: column;
  gap: 12px;
  padding-bottom: 10px;
  display: flex;
}

.cookie-card {
  border-radius: 10px;
  align-items: center;
  gap: 12px;
  width: 50%;
  min-width: 280px;
  padding: 16px;
  display: flex;
}

.inactive-card {
  background-color: #f5f5f5;
}

.cookie-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  display: flex;
}

.cookie-icon.inactive {
  background-color: #9e9e9e;
}

.cookie-number {
  color: #000;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.1;
}

.cookie-label {
  color: #666;
  font-size: 10px;
  font-weight: 400;
}

.cookie-chart-container {
  flex-direction: row;
  align-items: center;
  gap: 80px;
  display: flex;
}

.donut-chart {
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.donut-center {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.donut-center-value {
  color: #000;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
}

.donut-center-label {
  color: #666;
  margin-top: 2px;
  font-size: 9px;
  font-weight: 400;
}

.cookie-legend {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.cookie-legend-header {
  color: #000;
  border-bottom: 1px solid #e0e0e0;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 8px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.legend-value-with-icon {
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.legend-items {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}

.legend-item {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 12px;
  font-size: 12px;
  display: flex;
}

.legend-color {
  border-radius: 2px;
  flex-shrink: 0;
  width: 12px;
  height: 12px;
}

.metric-icon {
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  display: flex;
}

.metric-icon.success {
  background: #22c55e;
}

.metric-icon.error {
  background: #ef4444;
}

.metric-icon.info {
  background: #2563eb;
}

.metric-icon.warn {
  background: #f59e0b;
}

.metric-value {
  color: #000;
  font-weight: 700;
}

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

.legend-label {
  color: #666;
  flex: 1;
}

.legend-value {
  color: #000;
  font-weight: 700;
}

.grievance-container {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-bottom: 16px;
  padding: 14px;
  display: grid;
  box-shadow: 0 1px 2px #0000000d;
}

.grievance-column {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.grievance-content {
  flex-direction: column;
  display: flex;
}

.grievance-section {
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  padding: 16px;
  box-shadow: 0 1px 2px #0000000d;
}

.grievance-content {
  grid-template-columns: auto 1fr auto auto;
  align-items: start;
  gap: 24px;
  display: grid;
}

.grievance-chart {
  width: 20%;
  display: flex;
}

.grievance-stats {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.grievance-stats-header {
  color: #000;
  border-bottom: 1px solid #e0e0e0;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 8px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.grievance-value-with-icon {
  align-items: center;
  gap: 6px;
  display: flex;
}

.grievance-main-value {
  font-size: 14px;
  font-weight: 700;
}

.grievance-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.grievance-item {
  align-items: center;
  gap: 8px;
  font-size: 11px;
  display: flex;
}

.grievance-indicator {
  border-radius: 2px;
  flex-shrink: 0;
  width: 12px;
  height: 12px;
}

.grievance-label {
  color: #666;
  flex: 1;
}

.grievance-value {
  color: #000;
  font-weight: 700;
}

.grievance-sla {
  flex-direction: column;
  align-items: center;
  gap: 12px;
  display: flex;
}

.grievance-sla-title {
  color: #000;
  align-self: flex-start;
  margin: 0;
  font-size: 12px;
  font-weight: 700;
}

.sla-stats {
  flex-direction: column;
  gap: 8px;
  width: 100%;
  display: flex;
}

.sla-item {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 12px;
  font-size: 12px;
  display: flex;
}

.sla-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  display: flex;
}

.sla-icon.success {
  background-color: #22c55e;
}

.sla-icon.warning {
  background-color: #f59e0b;
}

.sla-info {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.sla-percent {
  color: #000;
  font-weight: 700;
}

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

.grievance-notifications {
  flex-direction: column;
  align-items: center;
  gap: 12px;
  display: flex;
}

.grievance-notif-title {
  color: #000;
  align-self: flex-start;
  margin: 0;
  font-size: 12px;
  font-weight: 700;
}

.notif-items {
  border-right: 1px solid #e5e7eb;
  flex-direction: row;
  gap: 8px;
  width: 50%;
  padding-right: 15px;
  display: flex;
}

.notif-item {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px;
  display: flex;
}

.notif-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

.notif-icon.message, .notif-icon.email {
  background-color: #666;
}

.notif-info {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.notif-value {
  color: #000;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.1;
}

.notif-label {
  color: #666;
  font-size: 10px;
}

@media (width <= 1400px) {
  .dpo-stats-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .grievance-content {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }

  .legend-items {
    grid-template-columns: 1fr;
  }
}

@media (width <= 1024px) {
  .dpo-dashboard-container {
    padding-right: 3%;
  }

  .dpo-stats-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }

  .dpo-stat-card {
    padding: 12px 10px;
  }

  .consents-section {
    grid-template-columns: 1fr;
  }

  .consents-stats-container {
    flex-direction: column;
    gap: 16px;
  }

  .consents-stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .notifications-grid, .notifications-container, .notifications-grid-inner {
    grid-template-columns: 1fr;
  }

  .template-cards-row {
    flex-direction: column;
  }

  .grievance-container, .grievance-content {
    grid-template-columns: 1fr;
  }

  .content-grid {
    flex-direction: column;
  }

  .content-column {
    width: 100%;
  }

  .cookie-chart-container {
    flex-direction: column;
    gap: 24px;
  }

  .legend-items {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (width <= 768px) {
  .dpo-dashboard-container {
    padding-left: 2%;
    padding-right: 2%;
  }

  .dashboard-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .dashboard-header-actions {
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }

  .audit-button {
    justify-content: center;
    width: 100%;
  }

  .dropdown-group, .dropdown-group select {
    width: 100%;
  }

  .dpo-stats-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .dpo-stat-card {
    padding: 12px 8px;
  }

  .dpo-stat-icon {
    width: 32px;
    height: 32px;
  }

  .dpo-stat-value {
    font-size: 18px;
  }

  .dpo-stat-label {
    font-size: 9px;
  }

  .consents-section {
    grid-template-columns: 1fr;
  }

  .consents-stats-container {
    flex-direction: column;
    align-items: flex-start;
  }

  .consents-stats-grid {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .template-cards-row {
    flex-direction: column;
  }

  .notifications-grid, .notifications-container, .notifications-grid-inner {
    grid-template-columns: 1fr;
  }

  .notification-cards, .notification-cards-row {
    flex-direction: column;
  }

  .notification-column {
    gap: 10px;
  }

  .grievance-container {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .cookie-chart-container {
    flex-direction: column;
    gap: 20px;
  }

  .consent-stats, .legend-items {
    grid-template-columns: 1fr;
  }

  .notif-items {
    border-bottom: 1px solid #e5e7eb;
    border-right: none;
    flex-direction: column;
    width: 100%;
    padding-bottom: 15px;
    padding-right: 0;
  }

  .content-section {
    padding: 12px;
  }

  .section-title {
    font-size: 13px;
  }
}

@media (width <= 480px) {
  .dpo-dashboard-container {
    padding-left: 0;
    padding-right: 0;
  }

  .dpo-stats-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .dpo-stat-card {
    padding: 14px 12px;
  }

  .consent-stat-item {
    padding: 10px;
  }

  .notification-card {
    padding: 12px;
  }

  .template-card {
    padding: 10px;
  }
}

.configurePage {
  width: 100%;
  padding: 20px;
  overflow-x: hidden;
}

.audit-header-section {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  margin-right: 2rem;
  padding: 0;
  display: flex;
}

.audit-title-section {
  align-items: center;
  gap: 12px;
  display: flex;
}

.audit-main-title {
  color: #000;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
}

.audit-governance-badge {
  color: #065f46;
  background-color: #d1fae5;
  border-radius: 12px;
  align-items: center;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.audit-button-group {
  align-items: center;
  gap: 12px;
  display: flex;
}

.audit-table-controls {
  justify-content: flex-end;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  margin-right: 2rem;
  display: flex;
}

.audit-search-container {
  flex: none;
  max-width: 300px;
  position: relative;
}

.audit-search-input {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 24px;
  outline: none;
  width: 100%;
  min-width: 300px;
  padding: .625rem 1rem .625rem 2.75rem;
  font-size: .875rem;
  transition: border-color .2s;
}

.audit-search-input:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px #3b82f61a;
}

.audit-search-icon {
  color: #6b7280;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

.audit-table-actions {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.audit-icon-button {
  cursor: pointer;
  color: #4b5563;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: all .2s;
  display: flex;
  position: relative;
}

.audit-icon-button:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.audit-icon-button:active {
  background: #f3f4f6;
}

.audit-icon-button.active {
  color: #06f;
  background: #0066ff1a;
  border-color: #06f;
}

.audit-icon-button.has-filters {
  color: #06f;
  border-color: #06f;
}

.audit-filter-drawer-overlay {
  z-index: 9998;
  background: #00000080;
  animation: .2s ease-in-out fadeIn;
  position: fixed;
  inset: 0;
}

.audit-filter-drawer {
  z-index: 9999;
  background: #fff;
  flex-direction: column;
  width: 400px;
  height: 100vh;
  animation: .3s ease-out slideIn;
  display: flex;
  position: fixed;
  top: 0;
  right: 0;
  box-shadow: -2px 0 8px #00000026;
}

.audit-table-wrapper {
  background: #fff;
  border-radius: 8px;
  max-width: calc(100vw - 280px);
  max-height: calc(100vh - 200px);
  margin-right: 2rem;
  overflow: auto;
  box-shadow: 0 1px 3px #0000001a, 0 1px 2px #0000000f;
}

.audit-table {
  border-collapse: collapse;
  border-spacing: 0;
  background: #fff;
  width: max-content;
  min-width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 12px;
}

.audit-table thead {
  z-index: 10;
  position: sticky;
  top: 0;
}

.audit-table thead th {
  color: #666;
  text-align: left;
  background-color: #f5f5f5;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}

.audit-table thead th:last-child {
  border-right: none;
}

.audit-table td {
  color: #333;
  vertical-align: middle;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 12px;
  font-size: 12px;
  line-height: 1.4;
}

.audit-table td:last-child {
  border-right: none;
}

.audit-table tbody tr {
  background-color: #fff;
  transition: background-color .15s;
}

.audit-table tbody tr:hover {
  background-color: #f9fafb;
}

.audit-table th:first-child, .audit-table td:first-child {
  white-space: nowrap;
  min-width: 200px;
}

.audit-table th:nth-child(2), .audit-table td:nth-child(2) {
  min-width: 100px;
}

.audit-table th:nth-child(3), .audit-table td:nth-child(3) {
  min-width: 180px;
}

.audit-table th:nth-child(4), .audit-table td:nth-child(4) {
  min-width: 200px;
}

.audit-table th:nth-child(5), .audit-table td:nth-child(5), .audit-table th:nth-child(6), .audit-table td:nth-child(6) {
  min-width: 120px;
}

.audit-table th:nth-child(7), .audit-table td:nth-child(7) {
  min-width: 100px;
}

.audit-table th:nth-child(8), .audit-table td:nth-child(8), .audit-table th:nth-child(9), .audit-table td:nth-child(9), .audit-table th:nth-child(12), .audit-table td:nth-child(12) {
  min-width: 150px;
}

.audit-table th:nth-child(10), .audit-table td:nth-child(10), .audit-table th:nth-child(11), .audit-table td:nth-child(11), .audit-table th:nth-child(13), .audit-table td:nth-child(13) {
  min-width: 120px;
}

.audit-table th:nth-child(14), .audit-table td:nth-child(14), .audit-table th:nth-child(15), .audit-table td:nth-child(15) {
  min-width: 200px;
}

.audit-table th:nth-child(16), .audit-table td:nth-child(16) {
  min-width: 140px;
}

.audit-table th:nth-child(17), .audit-table td:nth-child(17) {
  min-width: 150px;
}

.audit-actions {
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: flex;
}

.status-completed {
  color: #135610;
  background-color: #e9f7e9;
}

.status-progress {
  color: #b45309;
  background-color: #fef0e7;
}

.status-failed {
  color: #991b1b;
  background-color: #fee2e2;
}

.tooltip-text {
  visibility: hidden;
  color: #fff;
  text-align: center;
  z-index: 1000;
  opacity: 0;
  white-space: nowrap;
  background-color: #1a1a1a;
  border-radius: 6px;
  width: 160px;
  margin-left: -80px;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 500;
  transition: opacity .3s, visibility .3s;
  position: absolute;
  bottom: 125%;
  left: 50%;
  box-shadow: 0 4px 6px #0000001a;
}

.audit-pagination-container {
  background: #fff;
  border-top: 1px solid #e5e7eb;
  border-radius: 0 0 8px 8px;
  justify-content: space-between;
  align-items: center;
  max-width: calc(100vw - 280px);
  margin-top: -1px;
  margin-right: 2rem;
  padding: 16px 20px;
  display: flex;
}

.audit-pagination-info {
  color: #6b7280;
  font-size: 14px;
}

.audit-pagination-controls {
  align-items: center;
  gap: 24px;
  display: flex;
}

.audit-page-size-selector {
  align-items: center;
  gap: 8px;
  display: flex;
}

.audit-page-size-select {
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  outline: none;
  padding: 6px 10px;
  font-size: 14px;
  transition: border-color .2s;
}

.audit-page-size-select:hover {
  border-color: #9ca3af;
}

.audit-page-size-select:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px #3b82f61a;
}

.audit-pagination-buttons {
  align-items: center;
  gap: 8px;
  display: flex;
}

.audit-pagination-button {
  color: #374151;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: all .2s;
  display: flex;
}

.audit-pagination-button:hover:not(:disabled) {
  background: #f9fafb;
  border-color: #9ca3af;
}

.audit-pagination-button:active:not(:disabled) {
  background: #f3f4f6;
}

.audit-pagination-button:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.audit-page-numbers {
  gap: 4px;
  margin: 0 8px;
  display: flex;
}

.audit-page-number {
  color: #374151;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  min-width: 36px;
  height: 36px;
  padding: 0 8px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.audit-page-number:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.audit-page-number.active {
  color: #fff;
  background: #3b82f6;
  border-color: #3b82f6;
}

.audit-page-number.active:hover {
  background: #2563eb;
  border-color: #2563eb;
}

@media (width <= 1024px) {
  .audit-header-section, .audit-table-controls {
    margin-right: 1rem;
  }

  .audit-table-wrapper, .audit-pagination-container {
    max-width: calc(100vw - 200px);
    margin-right: 1rem;
  }
}

@media (width <= 768px) {
  .configurePage {
    padding: 12px;
  }

  .audit-main-title {
    font-size: 24px;
  }

  .audit-header-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-right: 0;
  }

  .audit-button-group {
    justify-content: flex-start;
    width: 100%;
  }

  .audit-table-controls {
    flex-direction: column;
    align-items: stretch;
    margin-right: 0;
  }

  .audit-search-container {
    width: 100%;
    max-width: 100%;
  }

  .audit-search-input {
    min-width: 100%;
  }

  .audit-table-wrapper {
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    margin-right: 0;
    overflow-x: auto;
  }

  .audit-table {
    min-width: 1200px;
    font-size: 10px;
  }

  .audit-table th, .audit-table td {
    padding: 8px;
    font-size: 10px;
  }

  .audit-pagination-container {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    max-width: 100%;
    margin-right: 0;
  }

  .audit-pagination-controls {
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .audit-page-numbers {
    margin: 0;
  }

  .filter-drawer {
    width: 100%;
    max-width: 400px;
  }
}

@media (width <= 480px) {
  .audit-main-title {
    font-size: 20px;
  }

  .audit-table {
    min-width: 1000px;
    font-size: 9px;
  }

  .audit-table th, .audit-table td {
    padding: 6px;
    font-size: 9px;
  }

  .filter-drawer {
    width: 100%;
    max-width: none;
  }
}

.report-breach-container {
  width: 100%;
  max-width: 100%;
}

.report-breach-header {
  align-items: center;
  gap: 20px;
  margin-bottom: 32px;
  display: flex;
}

.report-breach-header .jds-button {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 56px;
  min-width: 56px;
  height: 56px;
  padding: 0;
  display: flex;
}

.report-breach-header .jds-button:hover {
  background: #f5f5f5;
}

.report-breach-content {
  background: #fff;
  max-width: 600px;
  padding-left: 65px;
}

.form-section {
  margin-bottom: 48px;
}

.form-section:last-of-type {
  margin-bottom: 32px;
}

.section-heading {
  color: #1a1a1a;
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
}

.form-field, .form-field:first-of-type {
  margin-top: 24px;
}

.form-field label {
  color: #1a1a1a;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  display: block;
}

.form-field .required {
  color: #dc2626;
  margin-left: 2px;
}

.form-field input, .form-field textarea {
  color: #1a1a1a;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  width: 100%;
  padding: 11px 16px;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 14px;
  line-height: 20px;
  transition: all .2s;
}

.form-field input::-webkit-input-placeholder {
  color: #9ca3af;
  font-size: 14px;
}

.form-field textarea::-webkit-input-placeholder {
  color: #9ca3af;
  font-size: 14px;
}

:is(.form-field input:-ms-placeholder-shown, .form-field textarea:-ms-placeholder-shown), :is(.form-field input:placeholder-shown, .form-field textarea:placeholder-shown) {
  color: #9ca3af;
  font-size: 14px;
}

.form-field input::-moz-placeholder {
  color: #9ca3af;
  font-size: 14px;
}

.form-field textarea::-moz-placeholder {
  color: #9ca3af;
  font-size: 14px;
}

.form-field input::placeholder, .form-field textarea::placeholder {
  color: #9ca3af;
  font-size: 14px;
}

.form-field input:focus, .form-field textarea:focus {
  border-color: #2563eb;
  outline: none;
  box-shadow: 0 0 0 3px #2563eb1a;
}

.form-field textarea {
  resize: vertical;
  min-height: 120px;
}

.form-field .css-control {
  border-color: #d1d5db;
  border-radius: 6px;
  min-height: 44px;
}

.form-field .css-control:hover {
  border-color: #9ca3af;
}

.form-field .css-control--is-focused {
  border-color: #2563eb;
  box-shadow: 0 0 0 3px #2563eb1a;
}

.form-field .css-placeholder {
  color: #9ca3af;
  font-size: 14px;
}

.form-field .css-value-container {
  padding: 6px 16px;
}

.form-field .css-indicator-separator {
  display: none;
}

.form-field .css-menu {
  border-radius: 6px;
  box-shadow: 0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;
}

.form-actions {
  border-top: 1px solid #e5e7eb;
  margin-top: 40px;
  padding-top: 32px;
}

.form-actions button {
  border-radius: 8px;
  min-width: 140px;
  height: 48px;
  font-size: 16px;
  font-weight: 600;
}

@media (width <= 768px) {
  .report-breach-content {
    padding-left: 20px;
  }
}

.breach-header-section {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  margin-right: 2rem;
  padding: 0;
  display: flex;
}

.breach-title-section {
  align-items: center;
  gap: 12px;
  display: flex;
}

.breach-main-title {
  color: #000;
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
}

.breach-governance-badge {
  color: #065f46;
  background-color: #d1fae5;
  border-radius: 12px;
  align-items: center;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.breach-button-group {
  align-items: center;
  gap: 12px;
  display: flex;
}

.breach-stats-cards {
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1.5rem;
  margin-right: 2rem;
  display: flex;
}

.breach-stat-card {
  border-radius: 10px;
  flex: 0 auto;
  align-items: center;
  gap: 1rem;
  min-width: 280px;
  max-width: 320px;
  min-height: 85px;
  padding: 1.25rem 1.5rem;
  display: flex;
}

.breach-stat-total {
  background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
}

.breach-stat-investigation {
  background: linear-gradient(135deg, #ffe4d6 0%, #ffd4bf 100%);
}

.breach-stat-resolved {
  background: linear-gradient(135deg, #d4f4dd 0%, #b8e8c7 100%);
}

.breach-stat-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  display: flex;
}

.breach-stat-icon svg {
  width: 28px;
  height: 28px;
}

.breach-stat-icon-total {
  background-color: #2196f3;
}

.breach-stat-icon-investigation {
  background-color: #f96;
}

.breach-stat-icon-resolved {
  background-color: #4caf50;
}

.breach-stat-content {
  flex-direction: column;
  gap: .15rem;
  display: flex;
}

.breach-stat-number {
  color: #1a1a1a;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1;
}

.breach-stat-label {
  color: #333;
  font-size: .875rem;
  font-weight: 500;
}

.breach-stats {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2rem;
  display: grid;
}

.breach-stat-item {
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  align-items: center;
  padding: 1.5rem;
  display: flex;
  box-shadow: 0 2px 6px #00000014;
}

.breach-table-controls {
  justify-content: flex-end;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  margin-right: 2rem;
  display: flex;
}

.breach-search-container {
  flex: none;
  max-width: 300px;
  position: relative;
}

.breach-search-input {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 24px;
  outline: none;
  width: 100%;
  min-width: 300px;
  padding: .625rem 1rem .625rem 2.75rem;
  font-size: .875rem;
  transition: border-color .2s;
}

.breach-search-input:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px #3b82f61a;
}

.breach-search-icon {
  color: #6b7280;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

.breach-table-actions {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.breach-icon-button {
  cursor: pointer;
  color: #4b5563;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: all .2s;
  display: flex;
}

.breach-icon-button:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.breach-icon-button:active {
  background: #f3f4f6;
}

.breach-icon-button.active {
  color: #06f;
  background: #0066ff1a;
  border-color: #06f;
}

.breach-icon-button.has-filters {
  color: #06f;
  border-color: #06f;
}

.filter-drawer-overlay, .breach-filter-drawer-overlay {
  z-index: 9998;
  background: #00000080;
  animation: .2s ease-in-out fadeIn;
  position: fixed;
  inset: 0;
}

.filter-drawer, .breach-filter-drawer {
  z-index: 9999;
  background: #fff;
  flex-direction: column;
  width: 400px;
  height: 100vh;
  animation: .3s ease-out slideIn;
  display: flex;
  position: fixed;
  top: 0;
  right: 0;
  box-shadow: -2px 0 8px #00000026;
}

.breach-table-wrapper {
  background: #fff;
  border-radius: 8px;
  max-height: calc(100vh - 350px);
  margin-top: 0;
  margin-right: 2rem;
  padding: 0;
  position: relative;
  overflow: auto;
  box-shadow: 0 1px 3px #0000001a;
}

.breach-table {
  border-collapse: collapse;
  border-spacing: 0;
  background: #fff;
  width: max-content;
  min-width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 12px;
}

.breach-table thead {
  z-index: 0;
  background-color: #fff;
  position: sticky;
  top: 0;
}

.breach-table thead tr th {
  text-align: left;
  color: #666;
  background-color: #f5f5f5;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}

.breach-table thead tr th:last-child {
  border-right: none;
}

.breach-table td {
  color: #333;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.4;
}

.breach-table td:last-child {
  border-right: none;
}

.breach-table tbody tr:hover {
  background-color: #f9fafb;
}

.breach-table tbody tr {
  background-color: #fff;
}

.breach-table th:first-child, .breach-table td:first-child, .breach-table th:nth-child(2), .breach-table td:nth-child(2) {
  white-space: nowrap;
  min-width: 120px;
}

.breach-table th:nth-child(3), .breach-table td:nth-child(3), .breach-table th:nth-child(4), .breach-table td:nth-child(4) {
  white-space: nowrap;
  min-width: 170px;
}

.breach-table th:nth-child(5), .breach-table td:nth-child(5) {
  white-space: nowrap;
  min-width: 150px;
}

.breach-table th:nth-child(6), .breach-table td:nth-child(6), .breach-table th:nth-child(11), .breach-table td:nth-child(11) {
  min-width: 200px;
  max-width: 300px;
}

.breach-table th:nth-child(7), .breach-table td:nth-child(7) {
  min-width: 150px;
}

.breach-table th:nth-child(8), .breach-table td:nth-child(8) {
  min-width: 180px;
}

.breach-table th:nth-child(9), .breach-table td:nth-child(9) {
  text-align: center;
  min-width: 120px;
}

.breach-table th:nth-child(10), .breach-table td:nth-child(10) {
  text-align: center;
  min-width: 100px;
}

.breach-table th:nth-child(12), .breach-table td:nth-child(12), .breach-table th:nth-child(14), .breach-table td:nth-child(14) {
  min-width: 170px;
}

.breach-table th:nth-child(13), .breach-table td:nth-child(13) {
  white-space: nowrap;
  min-width: 130px;
}

.breach-table th:nth-child(15), .breach-table td:nth-child(15) {
  min-width: 120px;
}

.breach-table th:nth-child(16), .breach-table td:nth-child(16) {
  z-index: 5;
  background-color: #fff;
  min-width: 200px;
  position: sticky;
  right: 0;
  overflow: visible;
}

.breach-table thead th:nth-child(16) {
  z-index: 15;
  background-color: #f5f5f5;
  overflow: visible;
}

.breach-actions {
  z-index: 1;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
}

.icon-btn-delete:hover {
  color: #dc2626;
  background-color: #fee2e2;
}

.icon-btn-notify:hover {
  color: #1e40af;
  background-color: #dbeafe;
}

.icon-btn:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.icon-btn:disabled:hover {
  background-color: #0000;
}

.severity-badge, .status-badge {
  border-radius: 12px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
}

.severity-high {
  color: #dc2626;
  background-color: #fee2e2;
}

.severity-medium {
  color: #b45309;
  background-color: #fef0e7;
}

.severity-low {
  color: #854d0e;
  background-color: #fef9c3;
}

.status-new {
  color: #0369a1;
  background-color: #e0f2fe;
}

.status-investigating {
  color: #b45309;
  background-color: #fef0e7;
}

.status-notified-principals {
  color: #7e22ce;
  background-color: #e9d5ff;
}

.status-notified-dpbi {
  color: #92400e;
  background-color: #fef3c7;
}

.status-resolved {
  color: #135610;
  background-color: #e9f7e9;
}

.tooltip-container {
  justify-content: center;
  align-items: center;
  display: inline-flex;
  position: relative;
}

.tooltip-text {
  visibility: hidden;
  color: #fff;
  text-align: center;
  z-index: 99999;
  opacity: 0;
  white-space: nowrap;
  pointer-events: none;
  background-color: #1f2937;
  border-radius: 6px;
  width: max-content;
  max-width: 200px;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 500;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  position: absolute;
  bottom: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 6px 16px #00000040;
}

.tooltip-text:after {
  content: "";
  border: 5px solid #0000;
  border-top-color: #1f2937;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.icon-btn:disabled + .tooltip-text {
  background-color: #6b7280;
}

.icon-btn:disabled + .tooltip-text:after {
  border-color: #6b7280 #0000 #0000;
}

.modal-overlay {
  backdrop-filter: blur(2px);
  z-index: 10000;
  background-color: #4b5563bf;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: fixed;
  inset: 0;
}

.modal-content {
  background: #fff;
  border-radius: 12px;
  width: 90%;
  max-width: 500px;
  animation: .2s ease-out modalFadeIn;
  box-shadow: 0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;
}

@keyframes modalFadeIn {
  from {
    opacity: 0;
    transform: scale(.95);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.modal-header {
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  display: flex;
}

.modal-close-btn:hover {
  color: #000;
}

.modal-body {
  padding: 24px;
}

@media (width <= 1024px) {
  .breach-header-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-right: 1rem;
  }

  .breach-button-group {
    justify-content: flex-start;
    width: 100%;
  }

  .breach-stats-cards {
    margin-right: 1rem;
  }

  .breach-stat-card {
    min-width: 240px;
  }

  .breach-table-controls, .breach-table-wrapper {
    margin-right: 1rem;
  }
}

@media (width <= 768px) {
  .breach-main-title {
    font-size: 24px;
  }

  .breach-header-section {
    margin-right: 0;
  }

  .breach-button-group {
    flex-direction: column;
    width: 100%;
  }

  .breach-stats {
    grid-template-columns: 1fr;
  }

  .breach-stats-cards {
    flex-direction: column;
    gap: 12px;
    margin-right: 0;
  }

  .breach-stat-card {
    min-width: 100%;
    max-width: 100%;
  }

  .breach-table-controls {
    flex-direction: column;
    align-items: stretch;
    margin-right: 0;
  }

  .breach-search-container {
    width: 100%;
    max-width: 100%;
  }

  .breach-search-input {
    width: 100%;
    min-width: 100%;
  }

  .breach-table-actions {
    justify-content: flex-end;
    width: 100%;
  }

  .breach-table-wrapper {
    -webkit-overflow-scrolling: touch;
    margin-right: 0;
    overflow-x: auto;
  }

  .breach-table {
    min-width: 1200px;
    font-size: 10px;
  }

  .breach-table th, .breach-table td {
    padding: 8px;
    font-size: 10px;
  }

  .modal-content {
    width: 95%;
    max-width: none;
  }
}

@media (width <= 480px) {
  .breach-main-title {
    font-size: 20px;
  }

  .breach-stat-number {
    font-size: 1.5rem;
  }

  .breach-stat-card {
    padding: 1rem;
  }

  .breach-table {
    min-width: 1000px;
    font-size: 9px;
  }

  .breach-table th, .breach-table td {
    padding: 6px;
    font-size: 9px;
  }
}

.template-header-section {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  margin-right: 2rem;
  padding: 0;
  display: flex;
}

.template-title-section {
  align-items: center;
  gap: 12px;
  display: flex;
}

.template-main-title {
  color: #000;
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2;
}

.template-consent-badge {
  color: #065f46;
  background-color: #d1fae5;
  border-radius: 12px;
  align-items: center;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.template-button-group {
  align-items: center;
  gap: 12px;
  display: flex;
}

.template-stats-cards {
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1.5rem;
  margin-right: 2rem;
  display: flex;
}

.template-stat-card {
  border-radius: 10px;
  flex: 0 auto;
  align-items: center;
  gap: 1rem;
  min-width: 280px;
  max-width: 320px;
  min-height: 85px;
  padding: 1.25rem 1.5rem;
  display: flex;
}

.template-stat-total {
  background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
}

.template-stat-published {
  background: linear-gradient(135deg, #d4f4dd 0%, #b8e8c7 100%);
}

.template-stat-draft {
  background: linear-gradient(135deg, #fff4e6 0%, #ffe4cc 100%);
}

.template-stat-icon {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  display: flex;
}

.icon-wrapper {
  background-color: #ffffff4d;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  display: flex;
}

.template-stat-icon svg {
  width: 28px;
  height: 28px;
}

.template-stat-icon-total {
  background-color: #2196f3;
}

.template-stat-icon-published {
  background-color: #4caf50;
}

.template-stat-icon-draft {
  background-color: #ff9800;
}

.template-stat-content {
  flex-direction: column;
  gap: .15rem;
  display: flex;
}

.template-stat-number {
  color: #1a1a1a;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1;
}

.template-stat-label {
  color: #333;
  font-size: .875rem;
  font-weight: 500;
}

.template-table-controls {
  justify-content: flex-end;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  margin-right: 2rem;
  display: flex;
}

.template-search-container {
  flex: none;
  max-width: 300px;
  position: relative;
}

.template-search-input {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 24px;
  outline: none;
  width: 100%;
  min-width: 300px;
  padding: .625rem 1rem .625rem 2.75rem;
  font-size: .875rem;
  transition: border-color .2s;
}

.template-search-input:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px #3b82f61a;
}

.template-search-icon {
  color: #6b7280;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
}

.template-table-actions {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.template-icon-button {
  cursor: pointer;
  color: #4b5563;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  transition: all .2s;
  display: flex;
}

.template-icon-button:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.template-icon-button:active {
  background: #f3f4f6;
}

.template-table-wrapper {
  background: #fff;
  border-radius: 8px;
  max-height: calc(100vh - 350px);
  margin-top: 0;
  margin-right: 2rem;
  padding: 0;
  overflow: auto;
  box-shadow: 0 1px 3px #0000001a;
}

.template-table {
  border-collapse: collapse;
  border-spacing: 0;
  background: #fff;
  width: 100%;
  min-width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 12px;
}

.template-table thead {
  z-index: 10;
  background-color: #fff;
  position: sticky;
  top: 0;
}

.template-table thead tr th {
  text-align: left;
  color: #666;
  background-color: #f5f5f5;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}

.template-table thead tr th:last-child {
  border-right: none;
}

.template-table td {
  color: #333;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.4;
}

.template-table td:last-child {
  border-right: none;
}

.template-table tbody tr:hover {
  background-color: #f9fafb;
}

.template-table tbody tr {
  background-color: #fff;
}

.header-with-icon {
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  display: flex;
}

.template-actions {
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: flex;
}

.icon-btn {
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 4px;
  transition: background-color .2s;
  display: flex;
}

.icon-btn:hover {
  background-color: #e5e7eb;
}

.status-badge {
  border-radius: 12px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
}

.status-published {
  color: #135610;
  background-color: #e9f7e9;
}

.status-draft {
  color: #c77700;
  background-color: #fff4e6;
}

.status-inactive {
  color: #666;
  background-color: #f5f5f5;
}

.modal-outer-container {
  z-index: 1000;
  backdrop-filter: blur(2px);
  background-color: #00000080;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
}

.modal-container-old {
  background-color: #fff;
  border-radius: 16px;
  width: 90%;
  max-width: 600px;
  height: 480px;
  max-height: 90vh;
  padding: 32px;
  animation: .2s ease-out modalFadeIn;
  position: relative;
  overflow-y: visible;
  box-shadow: 0 20px 60px #0000004d;
}

.modal-close-btn-container {
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 16px;
  display: flex;
}

.modal-add-btn-container-tem {
  border-top: 1px solid #e5e7eb;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 32px;
  padding-top: 24px;
  display: flex;
}

.modal-container-old .dropdown-group {
  margin-top: 20px;
  margin-left: 12px;
  margin-right: 12px;
}

.modal-container-old .dropdown-group label {
  color: #374151;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  display: block;
}

.modal-container-old .dropdown-group select {
  color: #111827;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  width: 100%;
  padding: 10px 14px;
  font-size: 14px;
  transition: all .2s;
}

.modal-container-old .dropdown-group select:focus {
  border-color: #3b82f6;
  outline: none;
  box-shadow: 0 0 0 3px #3b82f61a;
}

.modal-container-old .dropdown-group select:hover {
  border-color: #9ca3af;
}

.template-img {
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 110px;
  margin-top: 8%;
  display: flex;
}

.template-btn {
  justify-content: center;
  gap: 16px;
  margin-top: 16px;
  display: flex;
}

.configure-template-page {
  text-align: center;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  padding-right: 5%;
  display: flex;
}

.activebadge-text {
  color: #135610;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Open Sans, Helvetica Neue, sans-serif;
  font-weight: 700;
}

.activebadge {
  text-align: center;
  background-color: #e9f7e9;
  border-radius: 4px;
  width: fit-content;
  padding: .1rem .5rem;
}

.url-modal-container {
  background-color: #fff;
  border-radius: 16px;
  width: 90%;
  max-width: 700px;
  max-height: 90vh;
  animation: .2s ease-out modalFadeIn;
  position: relative;
  overflow-y: auto;
  box-shadow: 0 20px 60px #0000004d;
}

.url-modal-header {
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 24px 28px;
  display: flex;
}

.url-modal-title-section {
  flex: 1;
  align-items: center;
  gap: 16px;
  display: flex;
}

.url-modal-title-section > div {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.url-modal-title-section .jds-text:first-child {
  margin: 0;
  line-height: 1.3;
}

.url-modal-title-section .jds-text:last-child {
  margin: 0;
  font-weight: 400;
  line-height: 1.4;
}

.url-modal-icon {
  background-color: #e7ebf8;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
}

.url-modal-body {
  padding: 28px;
}

.url-display-container {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px;
}

.url-text-area {
  word-wrap: break-word;
  word-break: break-all;
  background-color: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  max-height: 200px;
  padding: 14px 16px;
  font-family: Monaco, Menlo, Courier New, monospace;
  font-size: 13px;
  line-height: 1.6;
  overflow-y: auto;
}

.url-modal-footer {
  background-color: #fafafa;
  border-top: 1px solid #e5e7eb;
  border-radius: 0 0 16px 16px;
  justify-content: flex-end;
  gap: 12px;
  padding: 20px 28px;
  display: flex;
}

.tooltip-container {
  display: inline-block;
  position: relative;
}

.tooltip-text {
  visibility: hidden;
  color: #fff;
  text-align: left;
  z-index: 10000;
  opacity: 0;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  pointer-events: none;
  background-color: #1a1a1a;
  border-radius: 8px;
  min-width: 250px;
  max-width: 650px;
  padding: 12px 16px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  transition: opacity .3s, visibility .3s;
  position: absolute;
  bottom: 150%;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 8px 16px #0000004d;
}

.tooltip-text strong {
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 600;
  display: block;
}

.tooltip-text:after {
  content: "";
  border: 6px solid #0000;
  border-top-color: #1a1a1a;
  margin-left: -6px;
  position: absolute;
  top: 100%;
  left: 50%;
}

.tooltip-container:hover .tooltip-text {
  visibility: visible;
  opacity: 1;
}

.filter-drawer-overlay {
  z-index: 9998;
  background: #00000080;
  animation: .2s ease-in-out fadeIn;
  position: fixed;
  inset: 0;
}

.filter-drawer {
  z-index: 9999;
  background: #fff;
  flex-direction: column;
  width: 400px;
  height: 100vh;
  animation: .3s ease-out slideIn;
  display: flex;
  position: fixed;
  top: 0;
  right: 0;
  box-shadow: -2px 0 8px #00000026;
}

.filter-drawer-header {
  background: #fff;
  border-bottom: 1px solid #e8e8e8;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  display: flex;
}

.filter-drawer-title {
  align-items: center;
  gap: 12px;
  display: flex;
}

.filter-drawer-close {
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 4px;
  transition: background .2s;
  display: flex;
}

.filter-drawer-close:hover {
  background: #f5f5f5;
}

.filter-drawer-content {
  flex-direction: column;
  flex: 1;
  gap: 24px;
  padding: 24px;
  display: flex;
  overflow-y: auto;
}

.filter-section {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.filter-chips {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.filter-chip {
  color: #333;
  cursor: pointer;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 20px;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.filter-chip:hover {
  background: #0066ff0d;
  border-color: #06f;
}

.filter-chip.active {
  color: #fff;
  background: #06f;
  border-color: #06f;
}

.filter-chip.active:hover {
  background: #0052cc;
  border-color: #0052cc;
}

.filter-date-range {
  gap: 12px;
  display: flex;
}

.filter-date-input {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.filter-date-input label {
  color: #666;
  font-size: 13px;
  font-weight: 500;
}

.filter-date-input input {
  color: #333;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 10px 12px;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 14px;
  transition: all .2s;
}

.filter-date-input input:hover {
  border-color: #06f;
}

.filter-date-input input:focus {
  border-color: #06f;
  outline: none;
  box-shadow: 0 0 0 3px #0066ff1a;
}

.filter-drawer-footer {
  background: #fff;
  border-top: 1px solid #e8e8e8;
  gap: 12px;
  padding: 20px 24px;
  display: flex;
}

.filter-drawer-footer button {
  flex: 1;
}

.template-icon-button {
  position: relative;
}

.template-icon-button.active {
  color: #06f;
  background: #0066ff1a;
}

.template-icon-button.has-filters {
  color: #06f;
}

.filter-badge {
  color: #fff;
  background: #f44;
  border: 2px solid #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  position: absolute;
  top: -4px;
  right: -4px;
}

@media (width <= 1024px) {
  .template-header-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-right: 1rem;
  }

  .template-button-group {
    justify-content: flex-start;
    width: 100%;
  }

  .template-stats-cards {
    margin-right: 1rem;
  }

  .template-stat-card {
    min-width: 240px;
  }

  .template-table-controls, .template-table-wrapper {
    margin-right: 1rem;
  }
}

@media (width <= 768px) {
  .template-main-title {
    font-size: 24px;
  }

  .template-header-section {
    margin-right: 0;
  }

  .template-button-group {
    flex-direction: column;
    width: 100%;
  }

  .template-stats-cards {
    flex-direction: column;
    gap: 12px;
    margin-right: 0;
  }

  .template-stat-card {
    min-width: 100%;
    max-width: 100%;
  }

  .template-table-controls {
    flex-direction: column;
    align-items: stretch;
    margin-right: 0;
  }

  .template-search-container {
    width: 100%;
    max-width: 100%;
  }

  .template-search-input {
    width: 100%;
    min-width: 100%;
  }

  .template-table-actions {
    justify-content: flex-end;
    width: 100%;
  }

  .template-table-wrapper {
    -webkit-overflow-scrolling: touch;
    margin-right: 0;
    overflow-x: auto;
  }

  .template-table {
    min-width: 600px;
    font-size: 11px;
  }

  .template-table th, .template-table td {
    padding: 8px;
    font-size: 11px;
  }

  .filter-drawer {
    width: 100%;
    max-width: 400px;
  }
}

@media (width <= 480px) {
  .template-main-title {
    font-size: 20px;
  }

  .template-stat-number {
    font-size: 1.5rem;
  }

  .template-stat-card {
    padding: 1rem;
  }

  .template-table {
    min-width: 500px;
    font-size: 10px;
  }

  .template-table th, .template-table td {
    padding: 6px;
    font-size: 10px;
  }

  .filter-drawer {
    width: 100%;
    max-width: none;
  }

  .filter-drawer-content {
    padding: 20px;
  }

  .filter-date-range {
    flex-direction: column;
  }
}

.page-container {
  flex-direction: column;
  height: 100vh;
  display: flex;
}

.main-content {
  flex: 1;
  margin-top: 4%;
  display: flex;
}

.left-half {
  background: #f5f5f5;
  border-right: 1px solid #e0e0e0;
  flex: 1;
  padding: 16px;
  overflow-y: auto;
}

.right-half {
  flex: 1;
  padding: 16px;
  overflow-y: auto;
}

.popup {
  background-color: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 15px;
  width: 80%;
  height: auto;
  margin-top: 12px;
  margin-left: 10%;
}

.popup-dark {
  border: 1px solid #fff;
  border-radius: 15px;
  width: 80%;
  height: auto;
  margin-top: 12px;
  margin-left: 10%;
  background-color: #000 !important;
}

.image {
  width: auto;
  height: auto;
  margin-top: 12px;
  margin-left: 10%;
}

.popup-mobile {
  background-color: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 15px;
  width: 50%;
  height: auto;
  margin-top: 12px;
  margin-left: 10%;
}

.popup-header {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0 20px;
  display: flex;
}

.close-button {
  cursor: pointer;
  flex-direction: row-reverse;
  align-items: center;
  margin-left: 15px;
  padding-top: 20px;
  padding-right: 25px;
  display: flex;
}

.popup-button-mobile {
  cursor: pointer;
  align-items: stretch;
  gap: 8px;
  display: flex;
  flex-direction: column !important;
}

.popup-body {
  flex-direction: column;
  gap: 12px;
  padding: 0 20px;
  display: flex;
}

.footer {
  background: #fff;
  border-top: 1px solid #e0e0e0;
  justify-content: flex-end;
  gap: 12px;
  width: 100%;
  padding: 12px 16px;
  display: flex;
  position: sticky;
  bottom: 0;
}

.popup-button {
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin: 15px;
  display: flex;
}

.template-consent {
  justify-content: center;
  gap: 16px;
  display: flex;
}

.header-container {
  padding: 5px;
  display: flex;
}

.header-left {
  flex: 0 0 10%;
  justify-content: flex-start;
  align-items: center;
}

.header-right {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.notif-tabs {
  width: 87%;
  margin-left: 11%;
}

.notif-tabs-cr {
  width: 90%;
  margin-left: 11%;
}

.systemConfig-input {
  margin-bottom: 0 !important;
}

.landmark-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #941a7f;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-2 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #5d7c2c;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-3 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #443985;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-4 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #317781;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-5 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #000;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-6 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #1d6e40;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-7 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #8c2928;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-card-8 {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-left: 2px solid #725508;
  border-radius: 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: auto;
  font-family: Arial, sans-serif;
  display: flex;
}

.landmark-badge {
  color: #fff;
  background: #941a7f;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-2 {
  color: #fff;
  background: #5d7c2c;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-3 {
  color: #fff;
  background: #443985;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-4 {
  color: #fff;
  background: #317781;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-5 {
  color: #fff;
  background: #000;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-6 {
  color: #fff;
  background: #1d6e40;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-7 {
  color: #fff;
  background: #8c2928;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-badge-8 {
  color: #fff;
  background: #725508;
  border-radius: 4px 0;
  align-items: center;
  gap: 6px;
  margin-right: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: bold;
  display: flex;
}

.landmark-number {
  font-size: 12px;
}

.landmark-content {
  flex: 1;
}

.landmark-title {
  margin-bottom: 8px;
  padding-left: 5px;
  font-weight: bold;
}

.landmark-body {
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  padding: 0 10px;
  display: flex;
}

.landmark-body-2 {
  flex-direction: column;
  width: 100%;
  margin-left: 10px;
  padding: 10px;
  display: flex;
}

.landmark-tag {
  color: #555;
  background: #f5f5f5;
  border-radius: 6px;
  margin-bottom: 10px;
  margin-right: 10px;
  padding: 4px 8px;
  font-family: monospace;
  font-size: 13px;
  font-weight: 600;
}

.preview-header {
  border-bottom: 1px solid #e0e0e0;
  flex-direction: row;
  align-items: center;
  gap: 15px;
  padding: 10px;
  display: flex;
}

.acc-con {
  background-color: #fff;
  border-radius: 15px;
  width: auto;
  height: auto;
  margin-top: 12px;
}

.tabs-container {
  width: 100%;
  font-family: Arial, sans-serif;
}

.tabs {
  justify-content: space-between;
  gap: 8px;
  margin-left: 20px;
  margin-right: 20px;
  display: flex;
}

.tab-btn, .tab-btn-cr {
  color: #0a2885;
  cursor: pointer;
  background: #f4f6f9;
  border: none;
  border-radius: 25px;
  outline: none;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 15px;
  font-weight: 600;
  transition: background .2s, color .2s;
  display: flex;
}

.tab-btn.active {
  color: #fff;
  background: #0a2885;
}

.tab-content {
  background: #fff;
  border-radius: 6px;
  padding: 16px;
}

.accordion {
  background: #fff;
  border-radius: 8px;
  width: 100%;
  font-family: Arial, sans-serif;
}

.accordion-item {
  border-bottom: 1px solid #eee;
}

.accordion-header {
  cursor: pointer;
  border-bottom: 1px solid #e0e0e0;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  display: flex;
}

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

.accordion-icon {
  font-weight: bold;
  transition: transform .2s;
  display: inline-block;
  transform: rotate(0);
}

.accordion-icon.open {
  transform: rotate(180deg);
}

.accordion-title {
  font-weight: 500;
}

.accordion-label {
  color: gray;
  border: 1px solid #e0e0e0;
  border-radius: 20px;
  padding: 3px;
  font-size: 13px;
}

.accordion-content {
  color: #333;
  background: #fff;
  padding: 12px 24px;
  font-size: 14px;
}

.accordion-block {
  margin-bottom: 12px;
}

.accordion-separator {
  border: none;
  border-top: 1px dashed #ddd;
  margin: 10px 0;
}

.btn {
  cursor: pointer;
  border: none;
  border-radius: 20px;
  outline: none;
  margin-right: 8px;
  padding: 5px 20px;
  font-family: Arial, sans-serif;
  font-size: 15px;
  font-weight: bold;
  transition: all .2s ease-in-out;
}

.btn-draft {
  color: navy;
  background-color: #fff;
  border: 1px solid #ccc;
}

.btn-draft:hover {
  background-color: #f3f3f3;
}

.btn-publish {
  color: #fff;
  background-color: #3a36ff;
}

.btn-publish:hover {
  background-color: #2b28cc;
}

h1.custom-head {
  color: #000;
  margin: 0;
  font-family: system-ui;
  font-size: 32px;
  font-weight: 800;
}

p.custom-text-p {
  color: #d0cfcfa6;
  font-family: system-ui;
  font-size: 14px;
  font-weight: 500;
}

.fileUploader-custom1 {
  cursor: pointer;
  border: 1px dashed #b5b5b5;
  border-radius: 8px;
  justify-content: center;
  margin-top: 3px;
  margin-bottom: 3px;
  padding-top: 25px;
  padding-bottom: 25px;
  display: flex;
}

.systemConfiguration-file-uploader {
  background-color: #f5f5f5;
  border-radius: 16px;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 16px 20px;
  display: flex;
}

.dropdown-group {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  display: flex;
}

.dropdown-group select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 14px;
}

.dropdown-group small {
  color: #666;
  font-size: 12px;
}

.language-con {
  background-color: #fff;
  border-radius: 15px;
  width: auto;
  height: auto;
  margin-top: 12px;
  padding-bottom: 4%;
}

.language-heading {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 20px 15px;
  display: flex;
}

.language-heading-upload {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 20px 15px 0;
  display: flex;
}

.custom-text-area {
  resize: none;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 6px;
  outline: none;
  width: 100%;
  height: 100px;
  padding: 10px;
  font-size: 14px;
}

.custom-text-area:focus {
  border-color: #0f3cc9;
}

.systemConfig-input input {
  background-color: var(--card-bg) !important;
  color: var(--card-font) !important;
}

.systemConfig-input input::-webkit-input-placeholder {
  opacity: 1;
  color: var(--card-placeholder) !important;
}

.systemConfig-input input::placeholder {
  opacity: 1;
  color: var(--card-placeholder) !important;
}

.systemConfig-input input:-ms-placeholder-shown {
  opacity: 1;
  color: var(--card-placeholder) !important;
}

.systemConfig-input input::placeholder {
  opacity: 1;
  color: var(--card-placeholder) !important;
}

.systemConfig-input label {
  color: var(--card-font) !important;
}

.purpose-con {
  background-color: #fff;
  border-radius: 15px;
  width: auto;
  height: auto;
  margin-top: 12px;
}

.purpose-heading {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 20px 15px;
  display: flex;
}

.purpose-heading .left {
  flex-direction: column;
  display: flex;
}

.purpose-heading .right {
  cursor: pointer;
}

.pro-act-con {
  background-color: #f5f5f5;
  border-radius: 15px;
  width: auto;
  height: auto;
  margin: 12px 15px;
  padding: 10px 20px;
}

.pro-act-heading {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.pro-act-heading .left {
  flex-direction: column;
  display: flex;
}

.pro-act-heading .right {
  cursor: pointer;
}

.user-grievance-container {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
}

.tabs {
  gap: 10px;
  margin-bottom: 20px;
  display: flex;
}

.tab {
  cursor: pointer;
  color: #000;
  background: #f4f4f4;
  border: none;
  border-radius: 8px;
  flex: 1;
  padding: 10px 0;
  font-weight: 500;
}

.tab.active {
  color: #fff;
  font-weight: 600;
}

.grievance-table {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  flex-direction: column;
  margin-right: 20px;
  display: flex;
  overflow: hidden;
}

.table-header {
  background: #f4f4f4;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  padding: 10px 15px;
  font-weight: 600;
  display: grid;
}

.header-cell {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.add-btn {
  color: #002c9b;
  cursor: pointer;
  background: none;
  border: none;
  font-weight: 600;
}

.table-search {
  border-bottom: 1px solid #ddd;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 8px 15px;
  display: grid;
}

.table-search input {
  border: 1px solid #ccc;
  border-radius: 6px;
  width: 100%;
  padding: 6px 8px;
}

.table-body {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 10px 15px;
  display: grid;
}

.radio-item input, .checkbox-item input {
  cursor: pointer;
  width: 18px;
  height: 18px;
  margin-right: 8px;
}

.grievance-bottom {
  border-top: 1px solid #eee;
  flex-direction: column;
  gap: 8px;
  margin-top: 15px;
  padding: 10px 15px;
  display: flex;
}

.radio-item, .checkbox-item {
  align-items: center;
  gap: 4px;
  display: flex;
}

.radio-item span, .checkbox-item span {
  cursor: default;
}

.user-info-section {
  padding: 0 15px;
}

.purpose-select {
  margin-bottom: 20px;
}

.user-type-container {
  margin-bottom: 1.5rem;
}

.form-label {
  color: #374151;
  margin-bottom: .5rem;
  font-size: 14px;
  font-weight: 400;
  display: block;
}

.checkbox-dropdown {
  border-radius: 8px;
  width: 100%;
  position: relative;
}

.checkbox-dropdown-button {
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  outline: none;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 40px;
  padding: 9px 36px 9px 12px;
  transition: border-color .15s;
  display: flex;
  position: relative;
}

.checkbox-dropdown-button:hover {
  border-color: #9ca3af;
}

.selected-chips {
  flex-wrap: wrap;
  flex: 1;
  align-items: center;
  gap: 6px;
  min-height: 20px;
  display: flex;
}

.chip {
  color: #08332c;
  background-color: #e8faf7;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  padding: 3px 8px;
  font-weight: 400;
  display: inline-flex;
}

.chip-remove {
  cursor: pointer;
  color: #0c4a6e;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  margin-left: 2px;
  padding: 0;
  font-size: 16px;
  line-height: 1;
  display: flex;
}

.chip-remove:hover {
  color: #082f49;
}

.placeholder {
  color: #9ca3af;
  font-size: 14px;
  font-weight: 400;
}

.dropdown-actions {
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  display: flex;
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
}

.clear-all-button {
  cursor: pointer;
  color: #6b7280;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  padding: 0;
  font-size: 18px;
  display: flex;
}

.clear-all-button:hover {
  color: #374151;
}

.dropdown-arrow {
  color: #6b7280;
  -webkit-user-select: none;
  user-select: none;
  font-size: 10px;
}

.checkbox-dropdown-content {
  z-index: 1000;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  max-height: 280px;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  overflow-y: auto;
  box-shadow: 0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;
}

.checkbox-item-wrapper {
  cursor: pointer;
  padding: 8px 12px;
  transition: background-color .15s;
}

.checkbox-item-wrapper:hover {
  background-color: #f9fafb;
}

.checkbox-dropdown-content::-webkit-scrollbar {
  width: 6px;
}

.checkbox-dropdown-content::-webkit-scrollbar-track {
  background: #f9fafb;
}

.checkbox-dropdown-content::-webkit-scrollbar-thumb {
  background: #d1d5db;
  border-radius: 6px;
}

.checkbox-dropdown-content::-webkit-scrollbar-thumb:hover {
  background: #9ca3af;
}

.modal-outer-container {
  z-index: 1000;
  background-color: #00000080;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
}

.modal-container-old {
  scrollbar-width: none;
  background-color: #fff;
  border-radius: 32px;
  width: 660px;
  height: 480px;
  padding: 20px;
  overflow-y: auto;
  box-shadow: 0 4px 12px #00000026;
}

.modal-close-btn-container {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.modal-add-btn-container {
  justify-content: flex-end;
  margin-top: 40px;
  display: flex;
}

.profile-page {
  box-sizing: border-box;
  background: none;
  min-height: 100vh;
  padding: 100px 40px 60px 120px;
}

.profile-container {
  width: 100%;
  max-width: 600px;
}

.profile-title {
  color: #1e293b;
  margin-bottom: 24px;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 24px;
  font-weight: 700;
}

.profile-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 40px;
  box-shadow: 0 1px 3px #0000001a;
}

.profile-field {
  border-bottom: 1px solid #e2e8f0;
  margin-bottom: 28px;
  padding-bottom: 12px;
}

.profile-field:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
}

.profile-label {
  color: #64748b;
  margin-bottom: 8px;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 14px;
  font-weight: 500;
  display: block;
}

.profile-value-with-copy {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.profile-value {
  color: #1e293b;
  word-break: break-word;
  flex: 1;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: 16px;
  font-weight: 600;
}

.copy-icon-btn {
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 6px;
  font-size: 18px;
  transition: all .2s;
  display: flex;
}

.copy-icon-btn:hover {
  background: #f1f5f9;
  transform: scale(1.1);
}

.copy-icon-btn:active {
  transform: scale(.95);
}

@media (width <= 1024px) {
  .profile-page {
    padding: 100px 24px 60px;
  }
}

@media (width <= 768px) {
  .profile-page {
    padding: 88px 20px 48px;
  }

  .profile-container {
    max-width: 100%;
  }

  .profile-title {
    margin-bottom: 20px;
    font-size: 20px;
  }

  .profile-card {
    border-radius: 12px;
    padding: 32px 24px;
  }

  .profile-field {
    margin-bottom: 24px;
    padding-bottom: 10px;
  }

  .profile-field:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
  }

  .profile-label {
    font-size: 13px;
  }

  .profile-value {
    font-size: 15px;
  }

  .copy-icon-btn {
    width: 30px;
    height: 30px;
    font-size: 16px;
  }
}

@media (width <= 480px) {
  .profile-page {
    padding: 80px 16px 40px;
  }

  .profile-title {
    margin-bottom: 16px;
    font-size: 18px;
  }

  .profile-card {
    padding: 24px 20px;
  }

  .profile-field {
    margin-bottom: 20px;
    padding-bottom: 8px;
  }

  .profile-field:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
  }

  .profile-label {
    margin-bottom: 6px;
    font-size: 12px;
  }

  .profile-value {
    font-size: 14px;
  }

  .copy-icon-btn {
    width: 28px;
    height: 28px;
    font-size: 14px;
  }
}

.unauthorized-container {
  background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  padding: 20px;
  display: flex;
}

.unauthorized-content {
  text-align: center;
  background: #fff;
  border-radius: 12px;
  width: 100%;
  max-width: 500px;
  padding: 60px 40px;
  box-shadow: 0 10px 30px #0000001a;
}

.unauthorized-icon {
  justify-content: center;
  margin-bottom: 24px;
  animation: .5s ease-in-out shake;
  display: flex;
}

@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }

  25% {
    transform: translateX(-10px);
  }

  75% {
    transform: translateX(10px);
  }
}

.unauthorized-title {
  color: #2d3748;
  margin-bottom: 16px;
  display: block;
  font-size: 32px !important;
}

.unauthorized-message {
  color: #4a5568;
  margin-bottom: 12px;
  display: block;
  font-size: 18px !important;
}

.unauthorized-submessage {
  color: #718096;
  margin-bottom: 32px;
  display: block;
  font-size: 14px !important;
}

.unauthorized-actions {
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  display: flex;
}

.unauthorized-actions button {
  min-width: 140px;
}

@media (width <= 768px) {
  .unauthorized-content {
    padding: 40px 24px;
  }

  .unauthorized-title {
    font-size: 24px !important;
  }

  .unauthorized-message {
    font-size: 16px !important;
  }

  .unauthorized-actions {
    flex-direction: column;
  }

  .unauthorized-actions button {
    width: 100%;
  }
}

@media (width <= 1024px) {
  .org-map-container {
    padding: 20px;
  }
}

@media (width <= 768px) {
  .org-map-container {
    padding: 16px;
  }
}

@media (width <= 480px) {
  .org-map-container {
    padding: 12px;
  }
}

.org-map-header-simple {
  border-bottom: 1px solid #e5e7eb;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 20px;
  padding-bottom: 12px;
  display: flex;
}

.org-chart-professional {
  background: none;
  flex-direction: column;
  gap: 20px;
  padding: 0;
  display: flex;
}

.org-map-loading {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 400px;
  display: flex;
}

.org-map-header {
  border-bottom: 2px solid #e5e7eb;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
  padding-bottom: 16px;
  display: flex;
}

@media (width <= 1024px) {
  .org-map-header {
    flex-direction: column;
    gap: 16px;
  }
}

@media (width <= 768px) {
  .org-map-header {
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
  }
}

.org-map-actions {
  align-items: center;
  gap: 12px;
  display: flex;
}

@media (width <= 768px) {
  .org-map-actions {
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
  }
}

.view-mode-toggle {
  background-color: #f3f4f6;
  border-radius: 8px;
  padding: 4px;
  display: flex;
}

.view-mode-btn {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
}

.view-mode-btn:hover {
  background-color: #e5e7eb;
}

.view-mode-btn.active {
  color: #0ea5e9;
  background-color: #fff;
  box-shadow: 0 1px 3px #0000001a;
}

.org-map-search {
  margin-bottom: 24px;
}

.search-container {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  transition: all .2s;
  display: flex;
}

.search-container:focus-within {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px #0f3cc91a;
}

.search-input-org {
  color: #111827;
  border: none;
  outline: none;
  flex: 1;
  font-size: 14px;
}

.search-input-org::-webkit-input-placeholder {
  color: #9ca3af;
}

.search-input-org::placeholder {
  color: #9ca3af;
}

.search-input-org:-ms-placeholder-shown {
  color: #9ca3af;
}

.search-input-org::placeholder {
  color: #9ca3af;
}

.org-stats {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 16px;
  margin-bottom: 32px;
  display: grid;
}

.stat-card {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  align-items: center;
  gap: 16px;
  padding: 20px;
  transition: all .2s;
  display: flex;
}

.stat-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #00000014;
}

.stat-icon {
  background-color: #eff6ff;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  display: flex;
}

.stat-icon.business {
  background-color: #dbeafe;
}

.stat-icon.role {
  background-color: #e0e7ff;
}

.stat-icon.user, .stat-icon.processor {
  background-color: #f3e8ff;
}

.stat-icon.consents {
  background-color: #d1fae5;
}

.stat-icon.grievances {
  background-color: #fed7aa;
}

.stat-icon.breaches {
  background-color: #fecaca;
}

.stat-content {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.tree-org-chart {
  background: linear-gradient(135deg, #f8f9fc 0%, #fff 100%);
  border-radius: 16px;
  min-height: 600px;
  padding: 32px;
  overflow-x: auto;
}

.org-section {
  flex-direction: row;
  align-items: flex-start;
  gap: 40px;
  margin-bottom: 60px;
  display: flex;
}

.org-section-title {
  color: #fff;
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  border-radius: 10px;
  align-items: center;
  gap: 12px;
  margin-bottom: 40px;
  padding: 16px 24px;
  display: flex;
  box-shadow: 0 4px 12px #3b82f64d;
}

.org-section-title .jds-text {
  color: #fff !important;
}

.org-tree-container {
  flex-direction: row;
  align-items: flex-start;
  gap: 40px;
  width: 100%;
  min-width: 800px;
  display: flex;
}

.tree-node-wrapper {
  justify-content: flex-start;
  align-items: center;
  margin-right: 0;
  display: flex;
}

.tree-connector-vertical {
  background: #3b82f6;
  width: 40px;
  height: 2px;
  margin: 0;
}

.tree-connector-line {
  background: #a855f7;
  width: 30px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: -30px;
  transform: translateY(-50%);
}

.tree-branches:before {
  content: "";
  background: #3b82f6;
  width: 2px;
  height: 100%;
  position: absolute;
  top: 50%;
  left: -40px;
  transform: translateY(-50%);
}

.tree-branches {
  flex-flow: column;
  justify-content: flex-start;
  gap: 30px;
  width: auto;
  margin-left: 0;
  padding: 0;
  display: flex;
  position: relative;
}

.tree-branch-group {
  flex-direction: row;
  flex: none;
  align-items: center;
  gap: 0;
  min-width: 280px;
  max-width: 320px;
  display: flex;
  position: relative;
}

.tree-branch-group:before {
  content: "";
  background: #3b82f6;
  width: 40px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: -40px;
  transform: translateY(-50%);
}

.branch-title {
  text-align: center;
  background: #fff;
  border: 3px solid #3b82f6;
  border-radius: 10px;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  min-width: 250px;
  margin-bottom: 30px;
  padding: 16px 20px;
  display: flex;
  box-shadow: 0 4px 8px #0000001a;
}

.branch-title:hover {
  transition: all .2s;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px #3b82f633;
}

.tree-children-grid {
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  width: 100%;
  margin-top: 30px;
  display: flex;
  position: relative;
}

.tree-children-grid.single-column {
  flex-direction: column;
  align-items: center;
}

.tree-children-grid:before {
  content: "";
  background: #a855f7;
  height: 2px;
  position: absolute;
  top: -30px;
  left: 10%;
  right: 10%;
}

.tree-branch-item {
  flex-direction: column;
  align-items: center;
  min-width: 200px;
  display: flex;
  position: relative;
}

.tree-branch-item:before {
  content: "";
  background: #a855f7;
  width: 2px;
  height: 30px;
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
}

.tree-leaf-items {
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-top: 30px;
  display: flex;
  position: relative;
}

.tree-leaf-items:before {
  content: "";
  background: #d1d5db;
  width: 2px;
  height: 30px;
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
}

.org-card {
  cursor: pointer;
  text-align: center;
  background: #fff;
  border: 2px solid #cbd5e1;
  border-radius: 6px;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 140px;
  padding: 10px 14px;
  transition: all .2s;
  display: flex;
  position: relative;
  box-shadow: 0 2px 4px #0000000f;
}

.org-card:hover {
  border-color: #3b82f6;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #3b82f626;
}

.org-card-icon {
  background: #eff6ff;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  margin-bottom: 4px;
  display: flex;
}

.org-card-content {
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 4px;
  display: flex;
}

.expand-icon, .expand-icon-small {
  color: #6b7280;
  cursor: pointer;
  background: #f3f4f6;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  font-size: 14px;
  font-weight: bold;
  display: flex;
  position: absolute;
  top: 8px;
  right: 8px;
}

.expand-icon:hover, .expand-icon-small:hover {
  background: #e5e7eb;
}

.business-card-compact {
  text-align: left;
  background: #fff;
  border: 2px solid #3b82f6;
  flex-direction: column;
  align-items: stretch;
  min-width: 280px;
  padding: 0;
  display: flex;
}

.business-card-compact .card-header {
  color: #fff;
  background: #9ca3af;
  border-bottom: 1px solid #6b7280;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  display: flex;
}

.business-card-compact .card-header .jds-text {
  color: #fff !important;
}

.business-card-compact .card-metrics {
  background: #f3f4f6;
  flex-direction: column;
  gap: 10px;
  padding: 14px;
  display: flex;
}

.org-metric-box {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  align-items: flex-start;
  gap: 10px;
  min-height: 60px;
  padding: 10px 12px;
  display: flex;
}

.org-metric-box .metric-text {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  display: flex;
}

.org-metric-box .jds-text {
  white-space: pre-line;
  font-size: 11px;
  line-height: 1.5;
}

.org-metric-box.processor-box {
  border-left: 3px solid #a855f7;
}

.org-metric-box.audit-box {
  border-left: 3px solid #6b7280;
}

.org-metric-box.breach-box {
  border-left: 3px solid #fb923c;
}

.org-metric-box.consent-box {
  border-left: 3px solid #10b981;
}

.business-card-compact.main-entity-card {
  background: #fff;
  border-color: #6b7280;
  min-width: 300px;
  box-shadow: 0 4px 12px #6b748033;
}

.business-card-compact.main-entity-card .card-header {
  background: #6b7280;
  border-bottom-color: #4b5563;
}

.business-card-compact.child-business-card {
  border-color: #9ca3af;
  min-width: 280px;
}

.business-card-compact .expand-icon {
  color: #fff;
  cursor: pointer;
  background: #ffffff4d;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  font-size: 14px;
  font-weight: bold;
  display: flex;
  position: absolute;
  top: 8px;
  right: 8px;
}

.business-card-compact .expand-icon:hover {
  background: #fff6;
}

.tree-connector-vertical-child {
  background: #3b82f6;
  width: 30px;
  height: 2px;
  margin: 0;
}

.business-branch {
  max-width: 450px;
}

.section-card {
  border: 2px solid;
  min-width: 160px;
  padding: 10px 14px;
  box-shadow: 0 2px 6px #00000014;
}

.section-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 10px #0000001f;
}

.role-section-card {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border-color: #a855f7;
}

.processor-section-card {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border-color: #c084fc;
}

.consent-section-card {
  background: linear-gradient(135deg, #f0fdf4 0%, #fff 100%);
  border-color: #10b981;
}

.breach-section-card {
  background: linear-gradient(135deg, #fef2f2 0%, #fff 100%);
  border-color: #ef4444;
}

.grievance-section-card {
  background: linear-gradient(135deg, #fff7ed 0%, #fff 100%);
  border-color: #fb923c;
}

.audit-section-card {
  background: linear-gradient(135deg, #eff6ff 0%, #fff 100%);
  border-color: #3b82f6;
}

.tree-leaf-items.nested {
  border-left: 2px dashed #e5e7eb;
  margin-left: 10px;
  padding-left: 15px;
}

.role-card-compact {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border: 2px solid #a855f7;
  min-width: 220px;
}

.role-card-compact .org-card-icon {
  background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%);
}

.role-icon-compact {
  background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%) !important;
}

.user-card-compact {
  background: #fff;
  border: 2px solid #e5e7eb;
  min-width: 160px;
  padding: 12px 16px;
}

.user-card-compact:hover {
  border-color: #60a5fa;
}

.user-icon-compact {
  width: 36px;
  height: 36px;
  background: #dbeafe !important;
}

.metric-card-compact {
  cursor: pointer;
  border-width: 2px;
  min-width: 200px;
}

.grievance-card {
  background: linear-gradient(135deg, #fff7ed 0%, #fff 100%);
  border-color: #fb923c;
}

.grievance-icon {
  background: linear-gradient(135deg, #fb923c 0%, #f97316 100%) !important;
}

.breach-card {
  background: linear-gradient(135deg, #fef2f2 0%, #fff 100%);
  border-color: #ef4444;
}

.breach-icon {
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
}

.consent-card {
  background: linear-gradient(135deg, #f0fdf4 0%, #fff 100%);
  border-color: #10b981;
}

.consent-icon {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
}

.info-card-compact {
  text-align: left;
  background: #fff;
  border-color: #d1d5db;
  gap: 4px;
  min-width: 160px;
  padding: 8px 12px;
}

.info-card-compact:hover {
  background: #f0f9ff;
  border-color: #60a5fa;
  transform: translateY(-1px);
  box-shadow: 0 3px 8px #60a5fa1f;
}

.info-card-compact .jds-text {
  line-height: 1.4;
}

.more-card {
  background: #f9fafb;
  border: 2px dashed #d1d5db;
  min-width: 140px;
  padding: 10px 16px;
}

.processors-card-compact {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border: 3px solid #c084fc;
  min-width: 280px;
  padding: 20px 28px;
}

.processors-card-compact .org-card-icon {
  background: linear-gradient(135deg, #c084fc 0%, #a855f7 100%);
  width: 56px;
  height: 56px;
}

.processor-item-compact {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border-width: 2px;
  border-color: #c084fc;
  min-width: 220px;
  padding: 14px 18px;
}

.processor-item-compact:hover {
  border-color: #a855f7;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px #a855f733;
}

@media (width <= 1200px) {
  .tree-branches {
    flex-wrap: wrap;
  }

  .tree-branch-group {
    min-width: 280px;
  }
}

@media (width <= 768px) {
  .tree-org-chart {
    padding: 16px;
    overflow-x: scroll;
  }

  .org-section {
    margin-bottom: 40px;
  }

  .org-tree-container {
    min-width: 600px;
  }

  .tree-branches {
    gap: 20px;
  }

  .org-card {
    min-width: 140px;
    padding: 12px 16px;
  }

  .business-card-compact {
    min-width: 240px;
    padding: 20px 24px;
  }
}

.org-map-content {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  min-height: 400px;
  padding: 24px;
}

.hierarchy-view {
  flex-direction: column;
  gap: 24px;
  display: flex;
}

.business-node {
  flex-direction: column;
  display: flex;
}

.business-card {
  background-color: #f9fafb;
  border: 2px solid #3b82f6;
  border-radius: 12px;
  padding: 20px;
  transition: all .3s;
}

.business-card:hover {
  box-shadow: 0 8px 24px #3b82f626;
}

.business-header {
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  display: flex;
}

.business-icon {
  background-color: #dbeafe;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
}

.business-info {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  display: flex;
}

.business-count {
  align-items: center;
  display: flex;
}

.count-badge {
  color: #fff;
  background-color: #3b82f6;
  border-radius: 20px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 600;
}

.count-badge-small {
  color: #374151;
  background-color: #e5e7eb;
  border-radius: 12px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 600;
}

.business-metrics {
  border-top: 2px dashed #e5e7eb;
  margin-top: 16px;
  padding-top: 16px;
}

.metric-row {
  flex-wrap: wrap;
  gap: 16px;
  display: flex;
}

.metric-item {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  flex-direction: column;
  gap: 4px;
  min-width: 100px;
  padding: 10px 14px;
  transition: all .2s;
  display: flex;
}

.metric-item:hover {
  border-color: #3b82f6;
  box-shadow: 0 2px 8px #3b82f61a;
}

.roles-container {
  border-left: 2px dashed #cbd5e1;
  flex-direction: column;
  gap: 16px;
  margin-left: 40px;
  padding-left: 20px;
  display: flex;
}

.role-node {
  position: relative;
}

.role-node:before {
  content: "";
  background-color: #cbd5e1;
  width: 20px;
  height: 2px;
  position: absolute;
  top: 24px;
  left: -20px;
}

.role-card {
  background-color: #fff;
  border: 2px solid #8b5cf6;
  border-radius: 10px;
  padding: 16px;
  transition: all .3s;
}

.role-card:hover {
  box-shadow: 0 6px 16px #8b5cf626;
}

.role-header {
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  display: flex;
}

.role-icon {
  background-color: #ede9fe;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
}

.role-info {
  flex-direction: column;
  flex: 1;
  gap: 2px;
  display: flex;
}

.role-count {
  align-items: center;
  display: flex;
}

.users-container {
  border-left: 2px dashed #d1d5db;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 12px;
  margin-left: 40px;
  padding-left: 20px;
  display: grid;
}

.user-card {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  align-items: center;
  gap: 12px;
  padding: 12px;
  transition: all .2s;
  display: flex;
}

.user-card:hover {
  background-color: #fff;
  border-color: #3b82f6;
  box-shadow: 0 2px 8px #3b82f61a;
}

.user-avatar {
  background-color: #e0e7ff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.user-info {
  flex-direction: column;
  flex: 1;
  gap: 2px;
  display: flex;
  overflow: hidden;
}

.user-info text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.list-view {
  flex-direction: column;
  gap: 32px;
  display: flex;
}

.list-section {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.list-section-header {
  border-bottom: 2px solid #e5e7eb;
  align-items: center;
  gap: 12px;
  padding-bottom: 12px;
  display: flex;
}

.list-items {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.list-item {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  transition: all .2s;
  display: flex;
}

.list-item:hover {
  background-color: #fff;
  border-color: #3b82f6;
  box-shadow: 0 2px 8px #3b82f61a;
}

.list-item-content {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  display: flex;
}

.list-item-meta {
  align-items: center;
  gap: 12px;
  display: flex;
}

.user-avatar-list {
  background-color: #e0e7ff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  margin-right: 12px;
  display: flex;
}

.user-roles-tags {
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.role-tag {
  color: #6d28d9;
  background-color: #ede9fe;
  border-radius: 12px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 500;
  display: inline-block;
}

.empty-state .debug-info {
  background: #f3f4f6;
  border-radius: 8px;
  margin-top: 24px;
  padding: 16px;
  font-family: monospace;
}

@media (width <= 768px) {
  .org-map-container {
    padding: 16px;
  }

  .org-map-header {
    flex-direction: column;
    gap: 16px;
  }

  .org-stats {
    grid-template-columns: 1fr;
  }

  .roles-container {
    margin-left: 20px;
    padding-left: 12px;
  }

  .users-container {
    grid-template-columns: 1fr;
    margin-left: 20px;
    padding-left: 12px;
  }

  .view-mode-toggle {
    width: 100%;
  }

  .view-mode-btn {
    text-align: center;
    flex: 1;
  }
}

@media print {
  .org-map-search, .org-map-actions {
    display: none;
  }

  .business-card, .role-card, .user-card {
    page-break-inside: avoid;
  }
}

.processors-section {
  background: linear-gradient(135deg, #f3e8ff 0%, #faf5ff 100%);
  border: 2px solid #a855f7;
  border-radius: 16px;
  margin-top: 32px;
  padding: 24px;
}

.section-header {
  border-bottom: 2px solid #e9d5ff;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  display: flex;
}

.processors-grid {
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 16px;
  display: grid;
}

.processor-card {
  background: #fff;
  border: 2px solid #c084fc;
  border-radius: 12px;
  padding: 16px;
  transition: all .3s;
}

.processor-card:hover {
  border-color: #a855f7;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #a855f733;
}

.processor-header {
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.processor-info {
  flex-direction: column;
  flex: 1;
  gap: 6px;
  display: flex;
}

.roles-container {
  position: relative;
}

.roles-container:before {
  content: "";
  background: linear-gradient(#3b82f6 0%, #3b82f64d 100%);
  border-radius: 2px;
  width: 3px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -20px;
}

.users-container:before {
  content: "";
  background: linear-gradient(#8b5cf6 0%, #8b5cf64d 100%);
  border-radius: 2px;
  width: 2px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -20px;
}

.user-card {
  position: relative;
}

.user-card:before {
  content: "";
  background-color: #d1d5db;
  width: 20px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: -20px;
}

.org-node-card-pro {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  gap: 12px;
  min-width: 320px;
  max-width: 100%;
  padding: 16px;
  transition: all .2s;
  display: flex;
}

.org-node-card-pro:hover {
  border-color: #9ca3af;
  box-shadow: 0 1px 3px #0000001a;
}

.org-node-card-pro.tenant-card-pro {
  background: #f9fafb;
  border-left: 3px solid #6b7280;
}

.org-node-card-pro.business-card-pro {
  background: #fff;
  border-left: 3px solid #9ca3af;
  min-width: 280px;
}

.org-node-header-pro {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.tenant-badge-pro, .business-badge-pro {
  color: #374151;
  background: #e5e7eb;
}

.org-children-container-pro {
  border-left: 1px solid #e5e7eb;
  flex-direction: column;
  gap: 12px;
  margin-left: 20px;
  padding-left: 16px;
  display: flex;
}

.org-connector-line-pro {
  background: #d1d5db;
  width: 1px;
  height: 20px;
  margin: 0;
}

.org-children-grid-pro {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.org-child-wrapper-pro {
  flex-direction: column;
  display: flex;
}

.org-child-connector-pro {
  display: none;
}

.org-details-section-pro {
  flex-direction: column;
  gap: 16px;
  margin-top: 16px;
  display: flex;
}

.org-section-title-pro {
  border-bottom: 1px solid #e5e7eb;
  padding-bottom: 8px;
}

.org-cards-grid-pro {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 12px;
  display: grid;
}

.org-detail-card-pro {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  transition: all .2s;
  display: flex;
}

.org-detail-card-pro:hover {
  border-color: #9ca3af;
  box-shadow: 0 1px 3px #0000001a;
}

.processor-detail-card-pro {
  border-left: 3px solid #9ca3af;
}

.user-detail-card-pro {
  border-left: 3px solid #6b7280;
}

.status-badge-pro {
  text-transform: uppercase;
  letter-spacing: .3px;
  border-radius: 3px;
  width: fit-content;
  padding: 2px 8px;
  font-size: 9px;
  font-weight: 600;
  display: inline-block;
}

.org-roles-list-pro {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.org-chart-redesign {
  background: linear-gradient(135deg, #f8fafc 0%, #fff 100%);
  border-radius: 16px;
  flex-direction: column;
  gap: 48px;
  padding: 32px;
  display: flex;
}

.org-node-card {
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  gap: 16px;
  min-width: 400px;
  max-width: 500px;
  padding: 20px 24px;
  transition: all .3s;
  display: flex;
  box-shadow: 0 4px 12px #00000014;
}

.org-node-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #0000001f;
}

.org-node-card.tenant-card {
  background: linear-gradient(135deg, #eff6ff 0%, #fff 100%);
  border-color: #3b82f6;
}

.org-node-card.business-card {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border-color: #a855f7;
  min-width: 300px;
  max-width: 350px;
}

.org-node-icon {
  background: #dbeafe;
  border-radius: 12px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  display: flex;
}

.org-node-content {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.org-node-header {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.org-badge {
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 6px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 700;
}

.tenant-badge {
  color: #1e40af;
  background: #dbeafe;
}

.business-badge {
  color: #6b21a8;
  background: #e9d5ff;
}

.org-children-container {
  flex-direction: column;
  align-items: center;
  gap: 0;
  width: 100%;
  display: flex;
  position: relative;
}

.org-connector-line {
  background: linear-gradient(#3b82f6 0%, #a855f7 100%);
  width: 2px;
  height: 40px;
  margin: 0;
}

.org-children-grid {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 32px;
  width: 100%;
  max-width: 900px;
  display: grid;
  position: relative;
}

.org-child-wrapper {
  flex-direction: column;
  align-items: center;
  display: flex;
  position: relative;
}

.org-child-connector {
  background: linear-gradient(#a855f7 0%, #c084fc 100%);
  width: 2px;
  height: 40px;
  margin-bottom: 0;
}

.org-children-grid:before {
  content: "";
  background: linear-gradient(90deg, #a855f7 0%, #c084fc 50%, #a855f7 100%);
  min-width: 300px;
  height: 2px;
  position: absolute;
  top: -40px;
  left: calc(50% - 150px);
  right: calc(50% - 150px);
}

.org-details-section {
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 16px;
  flex-direction: column;
  gap: 24px;
  padding: 32px;
  display: flex;
  box-shadow: 0 4px 12px #0000000f;
}

.org-section-title {
  border-bottom: 2px solid #e5e7eb;
  padding-bottom: 16px;
}

.org-cards-grid {
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
  gap: 24px;
  display: grid;
}

.org-detail-card {
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  flex-direction: column;
  gap: 16px;
  padding: 24px;
  transition: all .3s;
  display: flex;
  box-shadow: 0 2px 8px #0000000f;
}

.org-detail-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #0000001f;
}

.processor-detail-card {
  background: linear-gradient(135deg, #faf5ff 0%, #fff 100%);
  border-color: #c084fc;
}

.user-detail-card {
  background: linear-gradient(135deg, #eff6ff 0%, #fff 100%);
  border-color: #93c5fd;
}

.org-detail-header {
  align-items: center;
  gap: 16px;
  display: flex;
}

.org-detail-icon {
  border-radius: 12px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  display: flex;
}

.processor-icon {
  background: linear-gradient(135deg, #e9d5ff 0%, #f3e8ff 100%);
}

.org-detail-title {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.status-badge {
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 6px;
  width: fit-content;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 700;
  display: inline-block;
}

.active-badge {
  color: #065f46;
  background: #d1fae5;
}

.org-detail-body {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.org-detail-row {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.scope-badge {
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 6px;
  width: fit-content;
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 700;
  display: inline-block;
}

.tenant-scope {
  color: #1e40af;
  background: #dbeafe;
}

.org-detail-footer {
  border-top: 1px solid #e5e7eb;
  margin-top: 8px;
  padding-top: 12px;
}

.org-user-avatar {
  background: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  display: flex;
}

.avatar-text {
  color: #fff;
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 700;
}

.org-user-info {
  flex-direction: column;
  flex: 1;
  gap: 6px;
  display: flex;
}

.org-user-email {
  align-items: center;
  gap: 6px;
  display: flex;
}

.identity-type-badge {
  color: #92400e;
  text-transform: uppercase;
  letter-spacing: .5px;
  background: #fef3c7;
  border-radius: 6px;
  width: fit-content;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
}

.org-roles-container {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  display: flex;
}

.org-roles-header {
  border-bottom: 1px solid #e5e7eb;
  align-items: center;
  gap: 8px;
  padding-bottom: 8px;
  display: flex;
}

.org-roles-list {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.org-role-item {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  flex-direction: column;
  gap: 6px;
  padding: 12px;
  display: flex;
}

.org-role-badge {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .5px;
  background: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%);
  border-radius: 6px;
  width: fit-content;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 700;
  display: inline-block;
}

@media (width <= 1024px) {
  .org-cards-grid {
    grid-template-columns: 1fr;
  }

  .org-children-grid {
    grid-template-columns: 1fr;
    max-width: 400px;
  }

  .org-children-grid:before {
    display: none;
  }
}

@media (width <= 768px) {
  .org-chart-redesign {
    gap: 32px;
    padding: 16px;
  }

  .org-node-card {
    min-width: auto;
    max-width: 100%;
  }

  .org-details-section {
    padding: 20px;
  }

  .org-cards-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.professional-tree-view {
  background: linear-gradient(135deg, #f8fafc 0%, #fff 100%);
  border-radius: 16px;
  min-height: 600px;
  padding: 40px;
}

.section-title-container {
  border-bottom: 2px solid #e2e8f0;
  margin: 24px 0 16px;
  padding-bottom: 12px;
}

.modern-cards-grid {
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 20px;
  margin-top: 16px;
  display: grid;
}

.modern-user-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  max-width: 400px;
  padding: 20px;
  transition: all .3s;
  box-shadow: 0 1px 3px #0000001a;
}

.modern-user-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #00000026;
}

.modern-user-card .card-header {
  border-bottom: 1px solid #f3f4f6;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 16px;
  display: flex;
}

.modern-user-card .user-avatar {
  background: #a78bfa;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  display: flex;
}

.modern-user-card .avatar-initials {
  color: #fff;
  letter-spacing: 0;
  font-size: 18px;
  font-weight: 600;
}

.modern-user-card .user-info {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.modern-user-card .user-email {
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  display: flex;
  overflow: hidden;
}

.modern-user-card .user-email span {
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #6b7280;
  font-size: 13px;
  overflow: hidden;
}

.modern-user-card .card-content {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.modern-user-card .identity-badge {
  color: #374151;
  text-transform: uppercase;
  background: #f3f4f6;
  border-radius: 4px;
  width: fit-content;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.modern-user-card .roles-section {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.modern-user-card .roles-header {
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  display: flex;
}

.modern-user-card .roles-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.modern-user-card .role-item {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.modern-user-card .role-badge-modern {
  color: #7c3aed;
  text-transform: uppercase;
  background: #ede9fe;
  border-radius: 4px;
  width: fit-content;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.modern-user-card .card-footer {
  color: #9ca3af;
  border-top: 1px solid #f3f4f6;
  margin-top: 12px;
  padding-top: 12px;
  font-size: 12px;
}

.modern-processor-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  max-width: 400px;
  padding: 20px;
  transition: all .3s;
  box-shadow: 0 1px 3px #0000001a;
}

.modern-processor-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #00000026;
}

.modern-processor-card .card-header {
  border-bottom: 1px solid #f3f4f6;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 16px;
  display: flex;
}

.modern-processor-card .processor-icon {
  background: #ede9fe;
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
}

.modern-processor-card .processor-info {
  flex-direction: column;
  flex: 1;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.modern-processor-card .processor-status-badge {
  color: #065f46;
  text-transform: uppercase;
  background: #d1fae5;
  border-radius: 4px;
  width: fit-content;
  margin-top: 4px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.modern-processor-card .processor-status-badge.active {
  color: #065f46;
  background: #d1fae5;
}

.modern-processor-card .card-content {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.modern-processor-card .processor-details {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.modern-processor-card .tenant-badge {
  color: #1e40af;
  text-transform: uppercase;
  background: #dbeafe;
  border-radius: 4px;
  width: fit-content;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.modern-processor-card .processor-url {
  word-break: break-all;
  color: #6b7280;
  background: #f9fafb;
  border-radius: 4px;
  padding: 8px;
  font-size: 12px;
}

.modern-processor-card .card-footer {
  color: #9ca3af;
  border-top: 1px solid #f3f4f6;
  margin-top: 12px;
  padding-top: 12px;
  font-size: 12px;
}

.tree-container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: normal;
  flex-direction: normal;
  align-items: flex-start;
  gap: 40px;
  display: flex;
}

.tree-root {
  flex-direction: column;
  align-items: center;
  gap: 30px;
  display: flex;
}

.tree-node {
  -webkit-box-align: normal;
  -ms-flex-align: normal;
  flex-direction: column;
  align-items: normal;
  width: -webkit-fill-available;
  display: flex;
}

.node-card {
  cursor: pointer;
  background: #fff;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  min-width: 350px;
  max-width: 450px;
  padding: 20px 24px;
  transition: all .3s;
  position: relative;
  box-shadow: 0 4px 12px #00000014;
}

.node-card:hover {
  border-color: #3b82f6;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #3b82f626;
}

.legal-entity-node .node-card {
  background: linear-gradient(135deg, #fff 0%, #f0f9ff 100%);
  border-color: #3b82f6;
  min-width: 400px;
  box-shadow: 0 6px 20px #3b82f633;
}

.business-node .node-card {
  background: linear-gradient(135deg, #fff 0%, #faf5ff 100%);
  border-color: #a78bfa;
  min-width: 350px;
}

.node-header {
  border-bottom: 2px solid #f1f5f9;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  display: flex;
}

.node-info {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  display: flex;
}

.node-badge {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .5px;
  background: #3b82f6;
  border-radius: 20px;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 600;
}

.node-badge.tenant {
  color: #fff;
  background: #3b82f6;
}

.node-badge.business {
  color: #fff;
  background: #8b5cf6;
}

.node-stats {
  gap: 16px;
  margin-bottom: 12px;
  display: flex;
}

.stat-item {
  background: #f8fafc;
  border-radius: 8px;
  flex: 1;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  display: flex;
}

.node-details {
  border-top: 2px dashed #e2e8f0;
  margin-top: 16px;
  padding-top: 16px;
  animation: .3s slideDown;
}

@keyframes slideDown {
  from {
    opacity: 0;
    max-height: 0;
  }

  to {
    opacity: 1;
    max-height: 2000px;
  }
}

.detail-section {
  margin-bottom: 16px;
}

.detail-section:last-child {
  margin-bottom: 0;
}

.detail-list {
  flex-direction: column;
  gap: 10px;
  margin-top: 10px;
  display: flex;
}

.detail-item {
  background: #f8fafc;
  border-left: 3px solid #3b82f6;
  border-radius: 8px;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  transition: all .2s;
  display: flex;
}

.detail-item:hover {
  background: #f1f5f9;
  transform: translateX(4px);
}

.user-roles {
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.role-badge {
  color: #4f46e5;
  background: #e0e7ff;
  border-radius: 12px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 600;
}

.expand-button {
  cursor: pointer;
  color: #64748b;
  background: #f1f5f9;
  border: none;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  font-size: 14px;
  transition: all .2s;
  display: flex;
  position: absolute;
  bottom: 12px;
  right: 12px;
}

.expand-button:hover {
  color: #3b82f6;
  background: #e2e8f0;
  transform: scale(1.1);
}

.tree-children {
  flex-direction: column;
  align-items: center;
  gap: 30px;
  width: 100%;
  display: flex;
  position: relative;
}

.tree-line-vertical {
  background: linear-gradient(#3b82f6 0%, #10b981 100%);
  border-radius: 2px;
  width: 3px;
  height: 40px;
}

.tree-branches-container {
  flex-direction: column;
  gap: 30px;
  display: flex;
  position: relative;
}

.tree-branch {
  align-items: center;
  gap: 20px;
  display: flex;
  position: relative;
}

.tree-line-horizontal {
  background: #10b981;
  border-radius: 2px;
  width: 40px;
  height: 3px;
}

.tree-branches-container:before {
  content: "";
  background: linear-gradient(#10b981 0%, #10b9814d 100%);
  border-radius: 2px;
  width: 3px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -20px;
}

.tree-branch:before {
  content: "";
  background: #10b981;
  border-radius: 2px;
  width: 20px;
  height: 3px;
  position: absolute;
  top: 50%;
  left: -20px;
}

@media (width <= 1024px) {
  .professional-tree-view {
    padding: 24px;
    overflow-x: auto;
  }

  .node-card {
    min-width: 300px;
    max-width: 350px;
  }

  .legal-entity-node .node-card {
    min-width: 320px;
  }

  .business-node .node-card {
    min-width: 280px;
  }
}

@media (width <= 768px) {
  .professional-tree-view {
    padding: 16px;
  }

  .node-card {
    min-width: 280px;
    max-width: 320px;
    padding: 16px 20px;
  }

  .node-stats {
    flex-direction: column;
    gap: 8px;
  }

  .stat-item {
    justify-content: flex-start;
  }
}

@media print {
  .professional-tree-view {
    background: #fff;
  }

  .node-card {
    page-break-inside: avoid;
  }

  .expand-button {
    display: none;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.tree-node {
  animation: .4s fadeInUp;
}

.tree-branch:first-child {
  animation-delay: .1s;
}

.tree-branch:nth-child(2) {
  animation-delay: .2s;
}

.tree-branch:nth-child(3) {
  animation-delay: .3s;
}

.node-header .jds-icon {
  transition: transform .2s;
}

.node-card:hover .node-header .jds-icon {
  transform: scale(1.1) rotate(5deg);
}

.tree-loading {
  justify-content: center;
  align-items: center;
  min-height: 400px;
  display: flex;
}

.node-tooltip {
  color: #fff;
  white-space: nowrap;
  z-index: 10;
  background: #1e293b;
  border-radius: 6px;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 600;
  position: absolute;
  top: -10px;
  right: -10px;
}

.org-map-container {
  max-width: 100%;
  margin: 0;
  padding: 24px;
}

.org-map-header-simple {
  text-align: left;
  border-bottom: 1px solid #e0e0e0;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin-bottom: 24px;
  padding-bottom: 16px;
  display: flex;
}

.org-map-content-simple {
  background-color: #fff;
  border: none;
  border-radius: 0;
  min-height: 400px;
  padding: 0;
}

.org-chart-professional {
  background: none;
  border-radius: 0;
  flex-direction: column;
  gap: 0;
  padding: 0;
  display: flex;
}

.org-chart-root {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  display: flex;
}

.org-node-card-pro {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  flex-direction: column;
  gap: 12px;
  min-width: 280px;
  max-width: 300px;
  padding: 20px 24px;
  transition: box-shadow .2s;
  display: flex;
  box-shadow: 0 2px 8px #00000014;
}

.org-node-card-pro:hover {
  box-shadow: 0 4px 12px #0000001f;
}

.org-node-card-pro.tenant-card-pro {
  background: #fff;
  border-color: #d0e4f7;
}

.org-node-card-pro.business-card-pro {
  background: #fff;
  border-color: #e0e0e0;
}

.org-node-icon-pro {
  background: none;
  border-radius: 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
}

.org-node-content-pro {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.org-node-header-pro {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.org-badge-pro {
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 4px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
}

.tenant-badge-pro {
  color: #1976d2;
  background: #e3f2fd;
}

.business-badge-pro {
  color: #5e35b1;
  background: #e8eaf6;
}

.org-connector-line-pro, .org-child-connector-pro {
  background: #c5c5c5;
  width: 2px;
  height: 40px;
  margin: 0;
}

.org-children-container-pro {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  width: 100%;
  margin: 40px 0;
  display: flex;
  position: relative;
}

.org-children-grid-pro {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 40px;
  width: 100%;
  max-width: 700px;
  padding-top: 40px;
  display: grid;
  position: relative;
}

.org-child-wrapper-pro {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.org-children-grid-pro:before {
  content: "";
  background: #c5c5c5;
  min-width: 300px;
  height: 2px;
  position: absolute;
  top: 0;
  left: 20%;
  right: 20%;
}

.org-details-section-pro {
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  border: none;
  border-radius: 0;
  flex-direction: column;
  gap: 20px;
  margin-top: 60px;
  padding: 0;
  display: flex;
}

.org-section-title-pro {
  text-align: left;
  border-bottom: 2px solid #e0e0e0;
  padding-bottom: 20px;
}

.org-cards-grid-pro {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
  max-width: 900px;
  margin: 0;
  display: grid;
}

.org-detail-card-pro {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  flex-direction: column;
  gap: 16px;
  padding: 20px 24px;
  transition: box-shadow .2s;
  display: flex;
  box-shadow: 0 2px 8px #00000014;
}

.org-detail-card-pro:hover {
  box-shadow: 0 4px 12px #0000001f;
}

.processor-detail-card-pro, .user-detail-card-pro {
  background: #fff;
  border-color: #e0e0e0;
}

.org-detail-header-pro {
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.org-detail-icon-pro {
  background: none;
  border-radius: 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
}

.org-detail-title-pro {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.status-badge-pro {
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 4px;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  display: inline-flex;
}

.active-badge-pro {
  color: #2e7d32;
  background: #e8f5e9;
}

.active-badge-pro:before {
  content: "●";
  font-size: 8px;
}

.org-detail-body-pro {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.scope-badge-pro {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: #1976d2;
  background: #e3f2fd;
  border-radius: 4px;
  width: fit-content;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  display: inline-block;
}

.org-user-avatar-pro {
  background: #b39ddb;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
}

.avatar-text-pro {
  color: #fff;
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 600;
}

.org-user-info-pro {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  display: flex;
}

.org-user-email-pro {
  align-items: center;
  gap: 6px;
  display: flex;
}

.identity-type-badge-pro {
  color: #616161;
  text-transform: uppercase;
  letter-spacing: .5px;
  background: #f3f4f6;
  border-radius: 4px;
  width: fit-content;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  display: inline-block;
}

.org-roles-container-pro {
  background: none;
  border: none;
  border-radius: 0;
  flex-direction: column;
  gap: 12px;
  padding: 0;
  display: flex;
}

.org-roles-header-pro {
  border-bottom: none;
  align-items: center;
  gap: 6px;
  padding-bottom: 0;
  display: flex;
}

.org-roles-list-pro {
  flex-direction: column;
  gap: 8px;
  padding-left: 16px;
  display: flex;
}

.org-role-item-pro {
  background: none;
  border: none;
  border-radius: 0;
  flex-direction: column;
  gap: 4px;
  padding: 0;
  display: flex;
}

.org-role-badge-pro {
  color: #5e35b1;
  text-transform: uppercase;
  letter-spacing: .5px;
  background: #e8eaf6;
  border-radius: 4px;
  width: fit-content;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  display: inline-block;
}

.empty-state {
  text-align: center;
  background: #fafafa;
  border: 1px dashed #d1d5db;
  border-radius: 6px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-height: 300px;
  padding: 60px 30px;
  display: flex;
}

.empty-state .debug-info {
  background: #f3f4f6;
  border-radius: 4px;
  margin-top: 16px;
  padding: 12px;
  font-family: monospace;
  font-size: 11px;
}

@media (width <= 768px) {
  .org-map-content-simple {
    padding: 12px;
  }

  .org-cards-grid-pro {
    grid-template-columns: 1fr;
  }

  .org-node-card-pro {
    min-width: auto;
    max-width: 100%;
  }
}

.org-tree-explorer {
  background: #fff;
  min-height: 400px;
  padding: 0;
}

.tree-container {
  max-width: 100%;
  margin: 0;
  padding: 0;
}

.tree-node {
  margin: 0;
}

.tree-node-header {
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  gap: 14px;
  min-height: 52px;
  padding: 12px 16px;
  transition: all .2s;
  display: flex;
  position: relative;
}

.tree-node-header:hover {
  background-color: #f5f7fa;
}

.tree-expand-icon {
  color: #616161;
  -webkit-user-select: none;
  user-select: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  font-size: 12px;
  font-weight: normal;
  transition: transform .2s;
  display: flex;
}

.tree-node-header:hover .tree-expand-icon {
  color: #424242;
}

.tree-expand-icon-empty {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.tree-node-children {
  border-left: none;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 18px;
  padding-left: 32px;
}

.tree-node.root-node > .tree-node-header {
  border: 1px solid #e8eaf0;
  border-left: 3px solid #1976d2;
  border-radius: 6px;
  margin-bottom: 8px;
  padding: 16px 20px;
  font-weight: 600;
  transition: all .3s;
  box-shadow: 0 2px 8px #0000000a;
  background-color: #fff !important;
}

.tree-node.root-node > .tree-node-header:hover {
  border-left-color: #1565c0;
  box-shadow: 0 4px 12px #00000014;
  background-color: #fafbfc !important;
}

.tree-node.root-node > .tree-node-children {
  border-left: none;
  margin-top: 0;
  margin-left: 0;
  padding-left: 0;
}

.tree-node.leaf-node > .tree-node-header {
  cursor: default;
}

.tree-badge {
  text-transform: uppercase;
  letter-spacing: .6px;
  white-space: nowrap;
  border-radius: 4px;
  padding: 4px 12px;
  font-size: 10px;
  font-weight: 600;
  transition: all .2s;
}

.tree-badge.tenant {
  color: #1565c0;
  background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
  box-shadow: 0 1px 3px #1976d226;
}

.tree-badge.business {
  color: #6a1b9a;
  background: linear-gradient(135deg, #ede7f6 0%, #d1c4e9 100%);
  box-shadow: 0 1px 3px #7e57c226;
}

.tree-badge.active {
  color: #2e7d32;
  background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
  box-shadow: 0 1px 3px #43a04726;
}

.tree-badge.role {
  color: #c2185b;
  background: linear-gradient(135deg, #fce4ec 0%, #f8bbd0 100%);
  box-shadow: 0 1px 3px #e91e6326;
}

.tree-count {
  color: #9e9e9e;
  background: #f5f5f5;
  border-radius: 12px;
  margin-left: 6px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 500;
}

.tree-user-avatar {
  color: #fff;
  background: #1976d2;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 14px;
  font-weight: 600;
  transition: all .2s;
  display: flex;
  box-shadow: 0 2px 8px #0000001f;
}

.tree-node-header:hover .tree-user-avatar {
  transform: scale(1.05);
  box-shadow: 0 4px 12px #00000029;
}

.tree-user-info {
  flex-direction: column;
  flex: 1;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.tree-user-info .jds-text:first-child {
  color: #1a1a1a !important;
  font-weight: 600 !important;
}

.tree-user-info .jds-text:last-child {
  color: #6c757d !important;
  font-size: 12px !important;
}

.tree-user-roles {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  display: flex;
}

.tree-node-header .jds-icon {
  opacity: .85;
  flex-shrink: 0;
  transition: all .2s;
}

.tree-node-header:hover .jds-icon {
  opacity: 1;
  transform: scale(1.05);
}

.tree-node-header .jds-text {
  font-size: 14px;
  line-height: 1.4;
}

.tree-node + .tree-node {
  border-top: none;
  margin-top: 0;
}

.tree-node-header[onclick]:hover {
  background-color: #fafafa;
}

.tree-node-header .jds-text[style*="marginLeft"] {
  white-space: nowrap;
  color: #9e9e9e !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

.tree-node-header .jds-text {
  color: #2c3e50 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.tree-node.root-node .tree-node-header .jds-text {
  color: #1a1a1a !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

.tree-node.root-node {
  margin-bottom: 0;
}

.tree-node-children > .tree-node:first-child {
  border-top: none;
  margin-top: 0;
}

.tree-node-children > .tree-node:last-child {
  margin-bottom: 0;
}

.tree-node-children > .tree-node > .tree-node-header {
  background-color: #0000;
  margin-top: 4px;
  font-weight: 600;
}

.tree-node-children > .tree-node > .tree-node-header:hover {
  background-color: #f5f7fa;
}

.tree-node-children > .tree-node > .tree-node-header .jds-text {
  color: #1a1a1a !important;
  font-weight: 600 !important;
}

.tree-node.leaf-node .tree-user-info {
  flex: 1;
}

.tree-node.leaf-node > .tree-node-header {
  background-color: #0000;
}

.tree-node.leaf-node > .tree-node-header:hover {
  background-color: #fafafa;
}

.tree-node-header .jds-icon svg {
  display: block;
}

.tree-node-children .tree-node-children {
  margin-top: 0;
}

.tree-node-children .tree-node-children > .tree-node {
  border-top: none;
}

@media (width <= 768px) {
  .org-tree-explorer {
    padding: 12px 0;
  }

  .tree-node-children {
    margin-left: 12px;
    padding-left: 20px;
  }

  .tree-node-header {
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px 12px;
  }

  .tree-user-roles {
    width: 100%;
    margin-top: 4px;
    margin-left: 48px;
  }

  .tree-badge {
    padding: 2px 6px;
    font-size: 8px;
  }
}

.user-dashboard-container {
  width: 100%;
  max-width: 100%;
}

.user-dashboard-header, .content-page-header {
  margin-bottom: 24px;
}

.content-header-left {
  flex-direction: column;
  display: flex;
}

.content-title-row {
  align-items: center;
  gap: 12px;
  display: flex;
}

.content-tag {
  background-color: #f5f5f5;
  border-radius: 16px;
  padding: 4px 12px;
  display: inline-block;
}

.content-main-row {
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 24px;
  display: flex;
}

.summary-cards-container {
  flex: 1;
  gap: 16px;
  display: flex;
}

.summary-card {
  border-radius: 8px;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  min-width: 200px;
  padding: 20px;
  display: flex;
  box-shadow: 0 2px 4px #0000000d;
}

.summary-card.active-card {
  background-color: #f6ffed;
  border: none;
}

.summary-card.withdrawn-card {
  background-color: #fff1f0;
  border: none;
}

.card-icon-circle {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
}

.card-content-vertical {
  flex-direction: column;
  flex: 1;
  align-items: flex-start;
  display: flex;
}

.search-actions-container {
  flex-shrink: 0;
  align-items: center;
  gap: 12px;
  display: flex;
}

.search-box-wrapper {
  width: 300px;
}

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

.icon-button {
  cursor: pointer;
  border-radius: 4px;
  padding: 8px;
  transition: background-color .2s;
}

.icon-button:hover {
  background-color: #f5f5f5;
}

.user-table-container {
  background-color: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 4px #0000000d;
}

.user-table {
  border-collapse: collapse;
  width: 100%;
}

.user-table thead {
  background-color: #f5f5f5;
  transition: background-color .3s;
}

.user-table th {
  text-align: left;
  color: #333;
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 16px;
  font-weight: 600;
}

.user-table td {
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 16px;
}

.user-table tbody tr:hover {
  background-color: #f9f9f9;
}

.user-table tbody tr.expanded-row {
  background-color: #e6f7ff;
}

.expanded-details-row {
  background-color: #f5f5f5;
}

.expanded-details-row td {
  border-bottom: 1px solid #e0e0e0;
  padding: 0;
}

.expanded-details-table {
  width: 100%;
  padding: 16px;
}

.expanded-table {
  border-collapse: collapse;
  background-color: #fff;
  width: 100%;
}

.expanded-table thead {
  background-color: #f5f5f5;
}

.expanded-table th {
  text-align: left;
  color: #333;
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 600;
}

.expanded-table td {
  color: #333;
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 16px;
  font-size: 14px;
}

.expanded-table tbody tr:last-child td {
  border-bottom: none;
}

.status-badge {
  border-radius: 12px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 500;
}

.status-badge.active {
  color: #52c41a;
  background-color: #f6ffed;
}

.status-badge.inactive {
  color: #ff4d4f;
  background-color: #fff1f0;
}

.status-badge.accepted {
  color: #1890ff;
  background-color: #e6f7ff;
}

.permission-badge {
  color: #666;
  background-color: #e0e0e0;
  border-radius: 12px;
  padding: 4px 8px;
  font-size: 12px;
}

.action-icons-row {
  align-items: center;
  gap: 8px;
  display: flex;
}

.portal-layout-container {
  transform-origin: top;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 8px;
  flex-direction: column;
  width: 100%;
  margin-right: 4%;
  font-size: 10px;
  display: flex;
  overflow: hidden;
  box-shadow: 0 2px 12px #00000014;
}

.portal-layout-container * {
  font-size: 1em;
  line-height: 1.5;
}

.portal-layout-container svg {
  width: 16px !important;
  height: 16px !important;
}

.portal-layout-container .summary-card {
  border: 1px solid #e8e8e8;
  gap: 10px;
  min-width: 120px;
  padding: 12px;
}

.portal-layout-container .card-icon-circle {
  width: 36px;
  height: 36px;
}

.portal-layout-container .user-table th {
  background-color: #f8f9fa;
  border-bottom: 2px solid #e0e0e0;
  padding: 8px 10px;
  font-weight: 600;
}

.portal-layout-container .user-table td {
  border-bottom: 1px solid #f0f0f0;
  padding: 8px 10px;
}

.portal-layout-container .user-table tbody tr:hover {
  background-color: #f9fafb;
}

.portal-layout-container .status-badge {
  border-radius: 10px;
  padding: 3px 8px;
  font-size: 9px;
  font-weight: 600;
}

.portal-layout-container .permission-badge {
  padding: 3px 7px;
  font-size: 9px;
  font-weight: 500;
}

.portal-layout-container .search-box-wrapper {
  width: 180px;
  max-width: 180px;
}

.portal-layout-container input[type="text"], .portal-layout-container input[type="search"] {
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  padding: 5px 10px;
  font-size: 9px;
}

.portal-layout-container .portal-header select, .portal-layout-container .portal-header-right select {
  background-position: right 5px center;
  background-size: 10px 10px;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  padding: 4px 22px 4px 8px;
  font-size: 9px;
}

.portal-layout-container button {
  border-radius: 4px;
  padding: 4px 10px;
  font-size: 9px;
}

.portal-layout-container .action-icons-row {
  gap: 6px;
}

.portal-layout-container [role="tablist"] {
  border-bottom: 1px solid #e0e0e0;
}

.portal-layout-container [role="tab"] {
  padding: 8px 14px;
  font-size: 10px;
}

.portal-header {
  background-color: #fff;
  border-bottom: 2px solid #e8e8e8;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  display: flex;
}

.portal-header-left {
  align-items: center;
  gap: 12px;
  display: flex;
}

.portal-header-right {
  align-items: center;
  display: flex;
}

.portal-main-layout {
  grid-template-columns: 140px 1fr;
  min-height: 320px;
  display: grid;
}

.theme-selector-container {
  background-color: #fafafa;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  align-items: center;
  width: 90%;
  margin-bottom: 24px;
  padding: 12px 16px;
  display: flex;
}

.theme-select {
  color: #333;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  min-width: 150px;
  padding: 8px 12px;
  font-size: 14px;
}

.theme-select:focus {
  border-color: #1890ff;
  outline: none;
}

.portal-sidenav {
  background-color: #f7f8fa;
  border-right: 1px solid #e0e0e0;
  width: 140px;
  padding: 12px 10px;
  transition: background-color .3s;
}

.business-select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 7px center;
  background-repeat: no-repeat;
  background-size: 10px 10px;
  border: 1px solid #d0d0d0;
  border-radius: 5px;
  width: 100%;
  padding: 6px 10px;
  font-size: 10px;
  font-weight: 500;
}

.business-select:focus {
  border-color: #999;
  outline: none;
}

.portal-main-content {
  background-color: #fff;
  padding: 14px 16px;
  overflow-y: auto;
}

@media (width <= 768px) {
  .content-main-row {
    flex-direction: column;
    align-items: stretch;
  }

  .summary-cards-container {
    flex-direction: column;
    width: 100%;
  }

  .summary-card {
    min-width: 100%;
  }

  .search-actions-container {
    justify-content: flex-start;
    width: 100%;
  }

  .search-box-wrapper {
    width: 100%;
    max-width: 100%;
  }

  .user-table {
    font-size: 14px;
  }

  .user-table th, .user-table td {
    padding: 8px 12px;
  }

  .portal-main-layout {
    grid-template-columns: 1fr;
  }

  .portal-sidenav {
    display: none;
  }

  .portal-header {
    padding: 12px 16px;
  }

  .portal-main-content {
    padding: 16px;
  }
}

.portal-footer {
  background-color: #f9fafb;
  border-top: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 10px 16px;
  font-size: 9px;
  display: flex;
}

.portal-footer a {
  color: #666;
  font-size: 8px;
  text-decoration: none;
}

.portal-footer a:hover {
  color: #06c;
}

.portal-footer-left {
  align-items: center;
  gap: 8px;
  display: flex;
}

.portal-footer-right {
  align-items: center;
  gap: 16px;
  display: flex;
}

@media (width <= 768px) {
  .portal-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .portal-footer-right {
    flex-wrap: wrap;
  }
}

.user-dashboard-split-container {
  flex-direction: row;
  gap: 20px;
  margin-top: 20px;
  display: flex;
}

.user-dashboard-left {
  width: 40%;
  min-width: 0;
}

.user-dashboard-right {
  justify-content: center;
  align-items: flex-start;
  width: 60%;
  min-width: 0;
  padding-top: 20px;
  display: flex;
}

@media (width <= 1200px) {
  .user-dashboard-split-container {
    gap: 15px;
  }

  .user-dashboard-left {
    width: 45%;
  }

  .user-dashboard-right {
    width: 55%;
  }
}

@media (width <= 992px) {
  .user-dashboard-split-container {
    flex-direction: column;
    gap: 20px;
  }

  .user-dashboard-left, .user-dashboard-right {
    width: 100%;
  }

  .portal-layout-container {
    width: 100%;
    max-width: 100%;
    transform: scale(1);
  }
}

@media (width <= 768px) {
  .user-dashboard-split-container {
    gap: 15px;
  }
}

.dropdown-group {
  flex-direction: column;
  gap: 4px;
  width: 100%;
  margin-bottom: 20px;
  display: flex;
}

@media (width <= 768px) {
  .dropdown-group {
    margin-bottom: 15px;
  }
}

.dropdown-group label {
  color: #767676;
  font-size: 13px;
  font-weight: 600;
}

.dropdown-group select {
  color: #333;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='%23666' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M19 9l-7 7-7-7'/></svg>");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 13px;
}

.dropdown-group select:focus {
  border-color: #999;
  outline: none;
}

.sideBar-outer-container {
  scrollbar-width: thin;
  z-index: 90;
  background-color: #f5f5f5;
  width: 240px;
  height: calc(100vh - 60px);
  padding: 20px 15px 15px;
  transition: transform .3s, left .3s;
  position: fixed;
  top: 60px;
  left: 0;
  overflow: hidden auto;
}

@media (width <= 1024px) {
  .sideBar-outer-container {
    transform: translateX(-100%);
    box-shadow: 2px 0 10px #0000001a;
  }

  .sideBar-outer-container.show {
    transform: translateX(0);
  }
}

@media (width <= 768px) {
  .sideBar-outer-container {
    width: 80%;
    max-width: 300px;
    transform: translateX(-100%);
    box-shadow: 2px 0 15px #0003;
  }

  .sideBar-outer-container.show {
    transform: translateX(0);
  }
}

@media (width <= 480px) {
  .sideBar-outer-container {
    width: 85%;
    max-width: 280px;
  }
}

.sideBar-outer-container::-webkit-scrollbar {
  width: 6px;
}

.sideBar-outer-container::-webkit-scrollbar-track {
  background: none;
}

.sideBar-outer-container::-webkit-scrollbar-thumb {
  background: #0003;
  border-radius: 3px;
}

.sideBar-outer-container::-webkit-scrollbar-thumb:hover {
  background: #0000004d;
}

.sideBar-menu-item {
  align-items: center;
  margin-top: 12px;
  margin-bottom: 4px;
  margin-left: 0;
  padding-top: 7px;
  padding-bottom: 7px;
  padding-right: 7px;
  display: flex;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.sideBar-menu-click {
  cursor: pointer;
  border-radius: 36px;
  align-items: center;
  margin-top: 6px;
  margin-bottom: 2px;
  padding: 10px;
  display: flex;
}

.sideBar-menu-click:first-of-type {
  margin-top: 0;
}

.sideBar-menu-click.active {
  background-color: #fff;
}

.sideBar-menu-click.inactive {
  background-color: #0000;
}

#grievance-type {
  font-weight: normal;
}

#grievance-type option:checked {
  font-weight: bold;
}

.sideBar-accordion-section {
  margin-bottom: 4px;
}

.sideBar-accordion-header {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  padding: 8px 4px;
  transition: all .2s;
  display: flex;
}

.sideBar-accordion-header:hover {
  background-color: #00000008;
}

.sideBar-accordion-header .sideBar-menu-item {
  flex: 1;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.sideBar-menu-click Text {
  font-size: 13px !important;
  font-weight: 600 !important;
}

@media (width <= 768px) {
  .sideBar-menu-item, .sideBar-menu-click Text {
    font-size: 12px !important;
  }
}

.sideBar-accordion-icon {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  margin-left: 8px;
  display: flex;
}

.sideBar-accordion-icon svg {
  transition: transform .2s;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
}

.sideBar-accordion-content {
  margin-top: 4px;
  padding-left: 18px;
  overflow: hidden;
}

.consent-report-container {
  max-width: 1200px;
  min-height: calc(100vh - 80px);
  margin: 0 auto;
  padding: 20px 24px;
}

.report-header {
  background: linear-gradient(135deg, #06f 0%, #0052cc 100%);
  border-radius: 12px;
  margin-bottom: 24px;
  padding: 24px;
  box-shadow: 0 4px 12px #0066ff26;
}

.report-header-content {
  max-width: 800px;
}

.report-header h1 {
  letter-spacing: -.5px;
  margin-bottom: 8px;
  font-size: 28px;
  font-weight: 700;
  color: #fff !important;
}

.report-header p {
  font-size: 14px;
  line-height: 1.5;
  color: #ffffffe6 !important;
}

.search-section {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 12px;
  margin-bottom: 24px;
  padding: 24px;
  transition: box-shadow .3s;
  box-shadow: 0 2px 8px #0000000f;
}

.search-section:hover {
  box-shadow: 0 4px 16px #00000014;
}

.search-section-title {
  border-bottom: 2px solid #f0f0f0;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  display: flex;
}

.search-section-title svg {
  color: #06f;
  width: 24px;
  height: 24px;
}

.search-form {
  flex-direction: column;
  gap: 18px;
  display: flex;
}

.search-type-selector {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.radio-group {
  flex-wrap: wrap;
  gap: 12px;
  display: flex;
}

.radio-label {
  cursor: pointer;
  color: #333;
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 4px;
  padding: 6px 0;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.radio-label:hover {
  background: #0066ff05;
  border-color: #06f;
  transform: translateY(-1px);
}

.radio-label:has(input:checked) {
  color: #06f;
  background: #0066ff14;
  border-color: #06f;
  font-weight: 600;
}

.radio-label input[type="radio"] {
  cursor: pointer;
  accent-color: #06f;
  width: 18px;
  height: 18px;
}

.search-input-group {
  background: #f8f9fb;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  align-items: flex-end;
  gap: 12px;
  padding: 16px;
  display: flex;
}

.search-input-group > div:first-child {
  flex: 1;
  max-width: 600px;
}

.loading-state {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 12px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  padding: 60px 20px;
  display: flex;
  box-shadow: 0 2px 8px #0000000f;
}

.loading-state svg {
  color: #06f;
}

.results-section {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 2px 8px #0000000f;
}

.results-section-header {
  border-bottom: 2px solid #f0f0f0;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 16px;
  display: flex;
}

.results-count {
  color: #06f;
  background: #0066ff1a;
  border-radius: 20px;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
}

.consent-list {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.consent-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 20px;
  transition: all .3s;
  position: relative;
  box-shadow: 0 1px 3px #0000000d;
}

.consent-card:hover {
  border-color: #06f;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #0000001a;
}

.consent-card-header {
  border-bottom: 1px solid #e8e8e8;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 12px;
  padding-bottom: 12px;
  display: flex;
}

.consent-status-badge {
  text-transform: uppercase;
  letter-spacing: .5px;
  white-space: nowrap;
  border-radius: 12px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 700;
}

.consent-status-badge.status-revoked {
  color: #c62828;
  background: #ffebee;
}

.consent-status-badge.status-expired {
  color: #e65100;
  background: #fff3e0;
}

.consent-card-details {
  background: #f8f9fb;
  border: 1px solid #f0f0f0;
  border-radius: 6px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 16px;
  margin-bottom: 16px;
  padding: 16px;
  display: grid;
}

.consent-card-actions {
  border-top: 1px solid #f0f0f0;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 16px;
  display: flex;
}

.pdf-preview-modal {
  z-index: 10000;
  backdrop-filter: blur(2px);
  background: #000000bf;
  justify-content: center;
  align-items: center;
  padding: 16px;
  display: flex;
  position: fixed;
  inset: 0;
}

.pdf-preview-container {
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  max-width: 95vw;
  max-height: 95vh;
  display: flex;
  overflow: hidden;
  box-shadow: 0 12px 48px #0006;
}

.pdf-preview-header {
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  display: flex;
  box-shadow: 0 1px 3px #0000000d;
}

.pdf-preview-actions {
  gap: 8px;
  display: flex;
}

.pdf-preview-content {
  background: #f5f5f5;
  flex: 1;
  padding: 20px;
  overflow-y: auto;
}

.pdf-container {
  background: #fff;
  border-radius: 4px;
  max-width: 800px;
  margin: 0 auto;
  padding: 32px;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
  box-shadow: 0 2px 12px #0000001f;
}

.header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  padding-bottom: 16px;
  display: flex;
}

.logo {
  -o-object-fit: contain;
  object-fit: contain;
  width: 100px;
  height: auto;
  max-height: 50px;
}

.title {
  text-align: center;
  flex: 1;
  padding: 0 20px;
}

.title h1 {
  color: #06f;
  letter-spacing: -.5px;
  margin-bottom: 4px;
  font-size: 22px;
  font-weight: 700;
}

.subtitle {
  color: #666;
  font-size: 11px;
  font-weight: 500;
}

.document-info {
  background: #f8f9fa;
  border-left: 3px solid #06f;
  border-radius: 6px;
  margin-bottom: 20px;
  padding: 12px 16px;
  font-size: 12px;
  line-height: 1.6;
}

.section {
  margin-bottom: 20px;
}

.section-title {
  color: #06f;
  border-bottom: 1px solid #e0e0e0;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding-bottom: 6px;
  font-size: 15px;
  font-weight: 700;
  display: flex;
}

.info-grid {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
  display: grid;
}

.info-item {
  background: #fafafa;
  border: 1px solid #f0f0f0;
  border-radius: 4px;
  padding: 8px 12px;
}

.info-label {
  color: #666;
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-bottom: 3px;
  font-size: 10px;
  font-weight: 600;
}

.info-value {
  color: #000;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}

.status-badge {
  text-transform: uppercase;
  border-radius: 4px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
}

.preference-card {
  background: #f9f9f9;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  margin-bottom: 12px;
  padding: 12px;
}

.preference-header {
  border-bottom: 1px dashed #d0d0d0;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  padding-bottom: 8px;
  font-size: 12px;
  display: flex;
}

.purpose-list {
  margin: 8px 0;
}

.purpose-item {
  background: #fff;
  border-left: 3px solid #4caf50;
  border-radius: 3px;
  margin-bottom: 6px;
  padding: 6px 8px;
  font-size: 11px;
  line-height: 1.5;
}

.footer {
  text-align: center;
  color: #666;
  border-top: 1px solid #e0e0e0;
  margin-top: 32px;
  padding-top: 16px;
  font-size: 10px;
  line-height: 1.6;
}

.legal-notice {
  background: #fffbea;
  border-left: 3px solid #fbc02d;
  border-radius: 4px;
  margin: 16px 0;
  padding: 12px 14px;
}

.legal-notice p {
  color: #333;
  margin: 0;
  font-size: 10px;
  line-height: 1.6;
}

@media (width <= 768px) {
  .consent-report-container {
    padding: 16px;
  }

  .report-header {
    border-radius: 8px;
    margin-bottom: 20px;
    padding: 20px;
  }

  .report-header h1 {
    font-size: 22px;
  }

  .report-header p {
    font-size: 13px;
  }

  .search-section {
    border-radius: 8px;
    padding: 20px;
  }

  .search-section-title {
    margin-bottom: 16px;
  }

  .results-section {
    border-radius: 8px;
    padding: 20px;
  }

  .results-section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .search-input-group {
    flex-direction: column;
    align-items: stretch;
  }

  .search-input-group > div:first-child {
    max-width: 100%;
  }

  .radio-group {
    flex-direction: column;
    gap: 10px;
  }

  .radio-label {
    padding: 12px;
  }

  .consent-card {
    padding: 16px;
  }

  .consent-card-details {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 8px;
  }

  .info-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .pdf-preview-modal {
    padding: 8px;
  }

  .pdf-preview-container {
    max-width: 100%;
    max-height: 98vh;
  }

  .pdf-preview-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
  }

  .pdf-preview-actions {
    -webkit-box-pack: stretch;
    -ms-flex-pack: stretch;
    flex-direction: row;
    justify-content: stretch;
    width: 100%;
  }

  .pdf-preview-actions button {
    flex: 1;
  }

  .pdf-preview-content {
    padding: 12px;
  }

  .pdf-container {
    padding: 16px;
  }

  .header {
    text-align: center;
    flex-direction: column;
    gap: 12px;
  }

  .title {
    padding: 0;
  }

  .logo {
    width: 70px;
  }

  .title h1 {
    font-size: 18px;
  }
}

@media print {
  body {
    padding: 0;
  }

  .pdf-container {
    -webkit-box-shadow: none;
    box-shadow: none;
    padding: 20px;
  }

  .pdf-preview-header, .pdf-preview-actions {
    display: none;
  }

  .page-break {
    page-break-before: always;
  }
}

.consent-card {
  animation: .3s ease-out fadeIn;
}

.scheduler-stats-container {
  background-color: #fff;
  max-width: 100%;
  min-height: calc(100vh - 60px);
  margin: 0;
  padding: 24px;
}

.scheduler-stats-header {
  border-bottom: 1px solid #e8eaf0;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 16px;
  display: flex;
}

.scheduler-header-left {
  flex-direction: row;
  align-items: center;
  gap: 10px;
  display: flex;
}

.scheduler-header-right {
  align-items: center;
  gap: 12px;
  display: flex;
}

.scheduler-badge {
  background-color: #f0f0f0;
  border-radius: 4px;
  margin-top: 5px;
  padding: 4px 12px;
}

.scheduler-date-filter {
  background: #fafbfc;
  border: 1px solid #e8eaf0;
  border-radius: 8px;
  margin-bottom: 20px;
  padding: 16px 20px;
}

.date-filter-inputs {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

.date-input-group {
  flex-direction: column;
  gap: 6px;
  min-width: 180px;
  display: flex;
}

.date-input {
  color: #333;
  background-color: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  padding: 8px 12px;
  font-family: inherit;
  font-size: 13px;
  transition: all .2s;
}

.date-input:focus {
  border-color: #1976d2;
  outline: none;
  box-shadow: 0 0 0 2px #1976d21a;
}

.date-input:hover {
  border-color: #9e9e9e;
}

.scheduler-summary-cards {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  margin-bottom: 20px;
  display: grid;
}

.summary-card {
  background: #fff;
  border: 1px solid #e8eaf0;
  border-radius: 8px;
  align-items: center;
  gap: 16px;
  padding: 20px;
  transition: all .2s;
  display: flex;
}

.summary-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #00000014;
}

.card-icon {
  background: #f8f9fa;
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
}

.running-indicator, .pending-indicator {
  font-size: 24px;
  animation: 2s ease-in-out infinite pulse;
}

.card-content {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  display: flex;
}

.scheduler-stats-table-container {
  background: #fff;
  border: 1px solid #e8eaf0;
  border-radius: 8px;
  overflow: hidden;
}

.table-header {
  background: #fafbfc;
  border-bottom: 1px solid #e8eaf0;
  padding: 16px 20px;
}

.scheduler-stats-table {
  overflow-x: auto;
}

.scheduler-stats-table table {
  border-collapse: collapse;
  width: 100%;
}

.scheduler-stats-table thead {
  background: #fafbfc;
}

.scheduler-stats-table th {
  text-align: left;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: .5px;
  border-bottom: 1px solid #e8eaf0;
  padding: 12px 16px;
  font-size: 12px;
  font-weight: 600;
}

.scheduler-stats-table tbody tr {
  border-bottom: 1px solid #f3f4f6;
  transition: all .15s;
}

.scheduler-stats-table tbody tr:hover {
  background-color: #fafbfc;
}

.scheduler-stats-table tbody tr:last-child {
  border-bottom: none;
}

.scheduler-stats-table td {
  color: #374151;
  vertical-align: middle;
  padding: 12px 16px;
  font-size: 13px;
}

.success-cell {
  font-weight: 600;
  color: #43a047 !important;
}

.failed-cell {
  font-weight: 600;
  color: #e53935 !important;
}

.running-cell {
  font-weight: 600;
  color: #ff9800 !important;
}

.pending-cell {
  font-weight: 600;
  color: #757575 !important;
}

.rate-badge {
  letter-spacing: .5px;
  border-radius: 12px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
}

.rate-badge.high {
  color: #2e7d32;
  background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
}

.rate-badge.medium {
  color: #e65100;
  background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%);
}

.rate-badge.low {
  color: #c62828;
  background: linear-gradient(135deg, #ffebee 0%, #ffcdd2 100%);
}

.no-data-cell {
  text-align: center !important;
  padding: 40px 20px !important;
}

.scheduler-stats-loading {
  background: #fff;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 400px;
  display: flex;
}

.scheduler-error-state {
  background: #fff;
  border: 1px solid #e8eaf0;
  border-radius: 8px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  padding: 60px 40px;
  display: flex;
}

@media (width <= 1200px) {
  .scheduler-summary-cards {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}

@media (width <= 768px) {
  .scheduler-stats-container {
    padding: 16px;
  }

  .scheduler-stats-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .scheduler-header-right {
    justify-content: flex-end;
    width: 100%;
  }

  .scheduler-summary-cards {
    grid-template-columns: 1fr;
  }

  .date-filter-inputs {
    flex-direction: column;
    align-items: stretch;
  }

  .date-input-group {
    width: 100%;
  }

  .scheduler-stats-table {
    overflow-x: scroll;
  }

  .scheduler-stats-table table {
    min-width: 800px;
  }
}

.scheduler-stats-table::-webkit-scrollbar {
  height: 8px;
}

.scheduler-stats-table::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.scheduler-stats-table::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

.scheduler-stats-table::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

@media print {
  .scheduler-stats-container {
    background: #fff;
    padding: 0;
  }

  .scheduler-header-right, .scheduler-date-filter {
    display: none;
  }

  .summary-card {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
  }

  .scheduler-stats-table-container {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid #e0e0e0;
  }
}

.retention-single-column {
  width: 100%;
  max-width: 100%;
}

.retention-loading-container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 300px;
  padding: 80px 20px;
  display: flex;
}

@media (width <= 768px) {
  .retention-loading-container {
    min-height: 200px;
    padding: 40px 15px;
  }
}

.retention-field-row {
  flex-direction: row;
  align-items: flex-end;
  gap: 20px;
  max-width: 700px;
  margin-bottom: 20px;
  display: flex;
}

.retention-input-wrapper {
  flex: 0 0 500px;
  min-width: 0;
  max-width: 500px;
}

.retention-dropdown-wrapper {
  flex-shrink: 0;
  width: 180px;
}

@media (width <= 1024px) {
  .retention-field-row {
    gap: 15px;
    max-width: 100%;
  }

  .retention-input-wrapper {
    flex: auto;
    max-width: 400px;
  }

  .retention-dropdown-wrapper {
    width: 150px;
  }
}

@media (width <= 768px) {
  .retention-field-row {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin-bottom: 25px;
  }

  .retention-input-wrapper {
    flex: auto;
    max-width: 100%;
  }

  .retention-dropdown-wrapper {
    width: 100%;
    margin-bottom: 0;
  }
}

@media (width <= 480px) {
  .retention-field-row {
    gap: 8px;
    margin-bottom: 20px;
  }
}

.retention-unit-dropdown {
  cursor: pointer;
  box-sizing: border-box;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-position: right 12px center;
  background-repeat: no-repeat;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  width: 100%;
  height: 45px;
  padding: 12px 36px 12px 16px;
  font-family: inherit;
  font-size: 14px;
  transition: all .2s;
}

.retention-unit-dropdown:hover {
  border-color: #9ca3af;
}

.retention-unit-dropdown:focus {
  border-color: #0ea5e9;
  outline: none;
  box-shadow: 0 0 0 3px #0f3cc91a;
}

.retention-unit-dropdown:disabled {
  cursor: not-allowed;
  background-color: #f3f4f6;
}

input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

.compliance-report-container {
  min-height: 100vh;
  padding: 100px 24px 24px;
  position: relative;
  overflow-x: hidden;
}

.compliance-header {
  padding-left: 20px;
}

.compliance-header Text:first-child {
  margin-bottom: 8px;
  display: block;
}

.compliance-tabs-wrapper {
  background-color: #fff;
  padding: 16px 16px 0;
  position: relative;
  overflow: visible;
}

.compliance-tabs {
  isolation: isolate;
  background-color: #fff;
  width: 100%;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.compliance-tabs [role="tablist"] {
  border-bottom: 1px solid #e5e7eb;
  align-items: center;
  display: flex;
  position: relative;
}

.compliance-tabs [role="tab"] {
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  padding: 12px 24px;
  position: relative;
}

.compliance-tabs [role="tab"][aria-selected="true"] {
  color: #000;
  border-bottom: 3px solid #3b82f6;
  font-weight: 600;
}

.compliance-tabs [role="tab"][aria-selected="false"] {
  color: #6b7280;
  font-weight: 400;
}

.compliance-tabs-wrapper [class*="arrow"], .compliance-tabs [class*="arrow"], .compliance-tabs-wrapper button[class*="navigation"], .compliance-tabs-wrapper [class*="scroll"], .compliance-tabs-wrapper [class*="overlay"], .compliance-tabs-wrapper [class*="prev"], .compliance-tabs-wrapper [class*="next"], .compliance-tabs-wrapper [class*="chevron"], .compliance-tabs button[class*="navigation"], .compliance-tabs [class*="scroll"], .compliance-tabs [class*="overlay"], .compliance-tabs [class*="prev"], .compliance-tabs [class*="next"], .compliance-tabs [class*="chevron"], .compliance-tabs-wrapper button[class*="arrow"], .compliance-tabs-wrapper button[class*="nav"], .compliance-tabs-wrapper button[class*="prev"], .compliance-tabs-wrapper button[class*="next"], .compliance-tabs button[class*="arrow"], .compliance-tabs button[class*="nav"], .compliance-tabs button[class*="prev"], .compliance-tabs button[class*="next"], .compliance-tabs-wrapper svg[class*="arrow"], .compliance-tabs-wrapper svg[class*="triangle"], .compliance-tabs-wrapper svg[class*="chevron"], .compliance-tabs svg[class*="arrow"], .compliance-tabs svg[class*="triangle"], .compliance-tabs svg[class*="chevron"], .compliance-tabs-wrapper path[class*="arrow"], .compliance-tabs-wrapper path[class*="triangle"], .compliance-tabs path[class*="arrow"], .compliance-tabs path[class*="triangle"] {
  visibility: hidden !important;
  opacity: 0 !important;
  display: none !important;
}

.compliance-tabs [class*="icon"], .compliance-tabs [class*="Icon"], .compliance-tabs [role="button"][aria-label*="arrow"], .compliance-tabs [role="button"][aria-label*="prev"], .compliance-tabs [role="button"][aria-label*="next"] {
  visibility: hidden !important;
  display: none !important;
}

.compliance-tabs button:not([role="tab"]):before, .compliance-tabs button:not([role="tab"]):after {
  content: none !important;
  visibility: hidden !important;
  display: none !important;
}

.compliance-tabs > div {
  position: relative;
  overflow: visible !important;
}

.compliance-tabs > * > * [class*="arrow"], .compliance-tabs > * > * button[class*="navigation"], .compliance-tabs > * > * button[aria-label*="arrow"], .compliance-tabs > * > * button[aria-label*="prev"], .compliance-tabs > * > * button[aria-label*="next"] {
  visibility: hidden !important;
  opacity: 0 !important;
  display: none !important;
}

.compliance-tabs button:not([class*="tab"]):not([class*="Tab"]), .compliance-tabs [role="button"]:not([class*="tab"]):not([class*="Tab"]) {
  display: none !important;
}

.compliance-tabs [class*="scroll"], .compliance-tabs [class*="Scroll"], .compliance-tabs [class*="wrapper"], .compliance-tabs [class*="Wrapper"], .compliance-tabs [class*="container"]:not([class*="tabs-container"]) {
  overflow: visible !important;
}

.compliance-tabs button[style*="position: absolute"]:not([class*="indicator"]), .compliance-tabs button[style*="position:fixed"]:not([class*="indicator"]), .compliance-tabs svg:not([class*="tab"]), .compliance-tabs [class*="icon"]:not([class*="tab"]), .compliance-tabs [class*="Icon"]:not([class*="tab"]), .compliance-tabs [style*="left: 0"], .compliance-tabs [style*="left:0"], .compliance-tabs [style*="right: 0"], .compliance-tabs [style*="right:0"], .compliance-tabs [style*="left:"], .compliance-tabs [style*="right:"] {
  display: none !important;
}

.compliance-tabs button:not([class*="tab"]):not([class*="Tab"]):not([class*="item"]):not([class*="Item"]) {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  display: none !important;
}

.compliance-tabs svg path[d*="M"][d*="L"], .compliance-tabs svg polygon, .compliance-tabs svg polyline {
  display: none !important;
}

.compliance-tabs [role="tab"], .compliance-tabs [role="tabpanel"], .compliance-tabs [class*="tab"][class*="item"], .compliance-tabs [class*="Tab"][class*="Item"], .compliance-tabs [class*="indicator"], .compliance-tabs [class*="Indicator"] {
  position: relative !important;
}

.compliance-tabs-wrapper button[style*="position: absolute"], .compliance-tabs-wrapper button[style*="position:fixed"], .compliance-tabs button[style*="position: absolute"]:not([class*="indicator"]), .compliance-tabs button[style*="position:fixed"]:not([class*="indicator"]), .compliance-tabs-wrapper svg[style*="position: absolute"], .compliance-tabs svg[style*="position: absolute"]:not([class*="indicator"]) {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  display: none !important;
}

.compliance-tabs [class*="jds-tabs"] [class*="arrow"], .compliance-tabs [class*="jds-tabs"] button[class*="nav"] {
  display: none !important;
}

.compliance-tabs [class*="indicator"], .compliance-tabs [class*="Indicator"], .compliance-tabs div[class*="indicator"], .compliance-tabs div[class*="Indicator"] {
  visibility: hidden !important;
  opacity: 0 !important;
  display: none !important;
}

.compliance-content {
  z-index: 1;
  background-color: #fff;
  border-radius: 8px;
  padding: 24px;
  position: relative;
  overflow: visible;
}

.compliance-loading {
  justify-content: center;
  align-items: center;
  min-height: 400px;
  display: flex;
}

.compliance-error {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 400px;
  display: flex;
}

.retry-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px #0f3cc94d;
  background-color: #0a2885 !important;
}

.compliance-section {
  width: 100%;
}

.section-description {
  background-color: #f3f4f6;
  border-left: 4px solid #3b82f6;
  border-radius: 6px;
  margin-bottom: 20px;
  padding: 16px;
}

.compliance-table-container {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  overflow-x: auto;
}

.compliance-table {
  border-collapse: collapse;
  background-color: #fff;
  width: 100%;
}

.compliance-table thead {
  background-color: #f9fafb;
  border-bottom: 2px solid #e5e7eb;
}

.compliance-table th {
  text-align: left;
  white-space: nowrap;
  padding: 12px 16px;
  font-weight: 600;
}

.compliance-table td {
  vertical-align: middle;
  border-bottom: 1px solid #f3f4f6;
  padding: 14px 16px;
}

.compliance-table tbody tr {
  transition: background-color .2s;
}

.compliance-table tbody tr:hover {
  background-color: #f9fafb;
}

.compliance-table tbody tr:last-child td {
  border-bottom: none;
}

.percentage-badge {
  border-radius: 12px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
}

.overdue-badge {
  background-color: #fee2e2;
  border-radius: 6px;
  padding: 4px 8px;
  font-weight: 600;
  display: inline-block;
}

.overdue-row {
  background-color: #fef2f2;
}

.overdue-row:hover {
  background-color: #fee2e2 !important;
}

.deletion-table th:nth-child(2), .deletion-table th:nth-child(3), .deletion-table th:nth-child(5) {
  min-width: 150px;
}

.deletion-table td:nth-child(3), .deletion-table td:nth-child(5) {
  font-size: 12px;
  line-height: 1.4;
}

.deletion-table th.logs-column-sticky, .deletion-table td.logs-column-sticky {
  z-index: 10;
  background-color: #fff;
  position: sticky;
  right: 0;
  box-shadow: -2px 0 4px #0000001a;
}

.deletion-table thead th.logs-column-sticky {
  z-index: 11;
  background-color: #f9fafb;
}

.deletion-table tbody tr:hover td.logs-column-sticky {
  background-color: #f9fafb;
}

.deletion-table tbody tr.overdue-row td.logs-column-sticky {
  background-color: #fef2f2;
}

.deletion-table tbody tr.overdue-row:hover td.logs-column-sticky {
  background-color: #fee2e2;
}

@media (width <= 1400px) {
  .compliance-table {
    font-size: 13px;
  }

  .compliance-table th, .compliance-table td {
    padding: 10px 12px;
  }
}

@media (width <= 1200px) {
  .compliance-report-container {
    padding: 100px 16px 16px;
  }

  .compliance-table-container {
    overflow-x: scroll;
  }

  .compliance-table {
    min-width: 1000px;
  }
}

.compliance-table .badge-info {
  color: #1e40af;
  background-color: #dbeafe;
}

.compliance-table .badge-warning {
  color: #92400e;
  background-color: #fef3c7;
}

.compliance-table .badge-success {
  color: #065f46;
  background-color: #d1fae5;
}

.compliance-table .badge-error {
  color: #991b1b;
  background-color: #fee2e2;
}

.compliance-two-column-layout {
  grid-template-columns: 1fr 380px;
  gap: 32px;
  width: 100%;
  display: grid;
}

.compliance-table-column {
  min-width: 0;
}

.compliance-charts-column {
  flex-direction: column;
  gap: 20px;
  display: flex;
}

.chart-section {
  background-color: #fff;
  padding: 16px 0;
}

.donut-chart-container {
  flex-direction: column;
  align-items: center;
  gap: 16px;
  display: flex;
}

.donut-header {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin-bottom: 16px;
  display: flex;
}

.donut-total-stat {
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 100%;
  padding: 0;
  display: flex;
}

.event-type-chart {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.event-bar-item {
  flex-direction: column;
  display: flex;
}

.event-bar-row {
  align-items: center;
  gap: 12px;
  display: flex;
}

.event-bar-wrapper {
  background-color: #f3f4f6;
  border-radius: 4px;
  flex: 1;
  height: 24px;
  overflow: hidden;
}

.event-bar-simple {
  border-radius: 4px;
  height: 100%;
  transition: width .3s;
}

@media (width <= 1400px) {
  .compliance-two-column-layout {
    grid-template-columns: 1fr 350px;
  }
}

@media (width <= 1200px) {
  .compliance-two-column-layout {
    grid-template-columns: 1fr;
  }

  .compliance-charts-column {
    order: -1;
  }
}

@media (width <= 768px) {
  .donut-stats-grid {
    grid-template-columns: 1fr;
  }
}

.pdf-viewer-container {
  z-index: 1000;
  background-color: #fff;
  flex-direction: column;
  width: 100%;
  height: 100vh;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
}

.pdf-viewer-header {
  background-color: #fff;
  border-bottom: 1px solid #e0e0e0;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
  display: flex;
  box-shadow: 0 2px 4px #0000000d;
}

.pdf-viewer-content {
  background-color: #f5f5f5;
  flex: 1;
  width: 100%;
  overflow: hidden;
}

.pdf-iframe {
  border: none;
  width: 100%;
  height: 100%;
}

.pdf-viewer-loading {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  height: 100vh;
  display: flex;
}

.pdf-viewer-error {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  height: 100vh;
  padding: 40px;
  display: flex;
}

.mainDiv {
  z-index: 100;
  background-color: #fff;
  justify-content: space-between;
  width: 100%;
  padding: 10px 20px;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  box-shadow: 0 2px 4px #00000014;
}

@media (width <= 1024px) {
  .mainDiv {
    padding: 10px 15px;
  }
}

@media (width <= 768px) {
  .mainDiv {
    flex-wrap: nowrap;
    padding: 8px 12px;
  }
}

.logoDiv {
  background-color: #fff;
  align-items: center;
  gap: 5px;
  display: flex;
}

.logoStyle {
  justify-content: center;
  align-items: center;
  display: flex;
}

.logoImg {
  -o-object-fit: contain;
  object-fit: contain;
  width: auto;
  height: 40px;
  display: block;
}

@media (width <= 768px) {
  .logoImg {
    height: 32px;
  }
}

.header-buttons {
  gap: 30px;
  display: flex;
}

.header-icons {
  align-items: center;
  gap: 10px;
  display: flex;
}

@media (width <= 768px) {
  .header-buttons {
    gap: 15px;
  }

  .header-icons {
    gap: 8px;
  }
}

@media (width <= 480px) {
  .header-buttons {
    gap: 10px;
  }

  .header-icons {
    gap: 6px;
  }
}

.assistant-bot-trigger {
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  min-width: 40px;
  min-height: 40px;
  padding: 8px;
  transition: all .3s;
  display: flex;
  position: relative;
}

@media (width <= 768px) {
  .assistant-bot-trigger {
    min-width: 32px;
    min-height: 32px;
    padding: 6px;
  }
}

.assistant-bot-trigger:hover {
  background: #7c3aed1a;
  transform: scale(1.1);
}

.bot-icon {
  font-size: 24px;
  line-height: 1;
  display: block;
}

.assistant-bot-trigger:after {
  content: "";
  background: linear-gradient(135deg, #7c3aed, #a855f7);
  border-radius: 50%;
  width: 8px;
  height: 8px;
  animation: 2s infinite pulse;
  position: absolute;
  top: 4px;
  right: 4px;
}

.avatar-container {
  cursor: pointer;
  display: inline-block;
  position: relative;
}

.company-logo {
  -o-object-fit: cover;
  object-fit: cover;
  border: 2px solid #e5e7eb;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  transition: all .3s;
}

@media (width <= 768px) {
  .company-logo {
    width: 32px;
    height: 32px;
  }
}

.company-logo:hover {
  border-color: #0ea5e9;
  transform: scale(1.05);
  box-shadow: 0 4px 8px #0ea5e926;
}

.dropdown-menu {
  z-index: 1000;
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  min-width: 180px;
  padding: 8px 0;
  animation: .2s ease-in-out fadeIn;
  position: absolute;
  top: 50px;
  right: 0;
  box-shadow: 0 4px 12px #00000026;
}

.menu-item {
  cursor: pointer;
  align-items: center;
  padding: 12px 16px;
  transition: background-color .2s;
  display: flex;
}

.menu-item:hover {
  background-color: #f3f4f6;
}

.menu-item:active {
  background-color: #e5e7eb;
}

.menu-divider {
  background-color: #e5e7eb;
  height: 1px;
  margin: 4px 0;
}

.global-search-overlay {
  backdrop-filter: blur(8px);
  z-index: 10000;
  background: linear-gradient(135deg, #0f172ad9 0%, #1e293be6 100%);
  justify-content: center;
  align-items: flex-start;
  width: 100vw;
  height: 100vh;
  padding-top: 80px;
  animation: .25s ease-out fadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.global-search-modal {
  background: linear-gradient(#fff 0%, #f8fafc 100%);
  border-radius: 20px;
  flex-direction: column;
  width: 90%;
  max-width: 720px;
  max-height: 75vh;
  animation: .35s cubic-bezier(.16, 1, .3, 1) slideUp;
  display: flex;
  overflow: hidden;
  box-shadow: 0 25px 50px -12px #00000040, 0 0 0 1px #ffffff1a, inset 0 1px #ffffff80;
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px) scale(.98);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.search-header {
  background: linear-gradient(#fff 0%, #fafbfc 100%);
  border-bottom: 1px solid #e2e8f0;
  align-items: center;
  gap: 16px;
  padding: 24px 24px 20px;
  display: flex;
}

.search-input-container {
  background: #f1f5f9;
  border: 2px solid #0000;
  border-radius: 14px;
  flex: 1;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  transition: all .3s cubic-bezier(.4, 0, .2, 1);
  display: flex;
}

.search-input-container:focus-within {
  background: #fff;
  border-color: #3b82f6;
  box-shadow: 0 0 0 4px #3b82f626, 0 4px 12px #3b82f61a;
}

.search-input {
  color: #1e293b;
  letter-spacing: -.01em;
  background: none;
  border: none;
  outline: none;
  flex: 1;
  font-size: 16px;
  font-weight: 450;
}

.search-input::-webkit-input-placeholder {
  color: #94a3b8;
  font-weight: 400;
}

.search-input::placeholder {
  color: #94a3b8;
  font-weight: 400;
}

.search-input:-ms-placeholder-shown {
  color: #94a3b8;
  font-weight: 400;
}

.search-input::placeholder {
  color: #94a3b8;
  font-weight: 400;
}

.clear-search-btn {
  cursor: pointer;
  background: #e2e8f0;
  border: none;
  border-radius: 8px;
  align-items: center;
  padding: 6px;
  transition: all .2s;
  display: flex;
}

.clear-search-btn:hover {
  background: #cbd5e1;
  transform: scale(1.05);
}

.close-search-btn {
  cursor: pointer;
  background: #f1f5f9;
  border: none;
  border-radius: 12px;
  align-items: center;
  padding: 10px;
  transition: all .2s;
  display: flex;
}

.close-search-btn:hover {
  background: #e2e8f0;
  transform: rotate(90deg);
}

.search-tabs {
  scrollbar-width: none;
  background: linear-gradient(#f8fafc 0%, #f1f5f9 100%);
  border-bottom: 1px solid #e2e8f0;
  gap: 6px;
  padding: 14px 24px;
  display: flex;
  overflow-x: auto;
}

.search-tabs::-webkit-scrollbar {
  display: none;
}

.search-tab {
  color: #64748b;
  cursor: pointer;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 600;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  box-shadow: 0 1px 2px #0000000d;
}

.search-tab:hover {
  color: #475569;
  background: #f8fafc;
  border-color: #cbd5e1;
  transform: translateY(-1px);
}

.search-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  border-color: #0000;
  box-shadow: 0 4px 12px #3b82f659;
}

.search-results-container {
  background: #fff;
  flex: 1;
  min-height: 280px;
  max-height: 450px;
  padding: 24px;
  overflow-y: auto;
}

.search-empty-state {
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  padding: 24px 24px 48px;
  display: flex;
}

.search-empty-state svg, .search-empty-state .search-icon-large {
  color: #cbd5e1;
  width: 64px;
  height: 64px;
  margin-bottom: 20px;
}

.search-tips {
  text-align: left;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  max-width: 400px;
  margin-top: 28px;
  padding: 20px 24px;
}

.search-tips ul {
  margin: 12px 0 0;
  padding-left: 0;
  list-style: none;
}

.search-tips li {
  color: #475569;
  margin: 10px 0;
  padding-left: 24px;
  font-size: 13px;
  line-height: 1.5;
  position: relative;
}

.search-tips li:before {
  content: "→";
  color: #3b82f6;
  font-weight: bold;
  position: absolute;
  left: 0;
}

.search-loading {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  padding: 60px 20px;
  display: flex;
}

.search-loading .spinner {
  border: 3px solid #e2e8f0;
  border-top-color: #3b82f6;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: .8s linear infinite spin;
}

.search-results {
  flex-direction: column;
  gap: 28px;
  display: flex;
}

.result-section {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.result-section > span:first-child {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #64748b;
  margin-bottom: 4px;
  padding-left: 4px;
  font-size: 12px;
  font-weight: 700;
}

.result-item {
  cursor: pointer;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  justify-content: space-between;
  align-items: center;
  padding: 14px 18px;
  transition: all .25s cubic-bezier(.4, 0, .2, 1);
  display: flex;
  box-shadow: 0 1px 3px #0000000a;
}

.result-item:hover {
  background: linear-gradient(135deg, #f8fafc 0%, #fff 100%);
  border-color: #3b82f6;
  transform: translateX(6px);
  box-shadow: 0 4px 16px #3b82f61f, 0 0 0 1px #3b82f61a;
}

.result-content {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.result-content span:first-child {
  color: #1e293b;
  font-weight: 600;
}

.result-content span:last-child {
  color: #64748b;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12px;
  overflow: hidden;
}

.result-badge {
  color: #475569;
  text-transform: uppercase;
  letter-spacing: .03em;
  background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
  border-radius: 20px;
  flex-shrink: 0;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 700;
}

.result-badge.status-active {
  color: #166534;
  background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%);
}

.result-badge.status-inactive {
  color: #991b1b;
  background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%);
}

.result-badge.status-withdrawn {
  color: #92400e;
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
}

.result-badge.status-email {
  color: #1e40af;
  background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
}

.result-badge.status-sms {
  color: #065f46;
  background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);
}

.consent-details-view {
  flex-direction: column;
  gap: 20px;
  padding: 20px;
  display: flex;
}

.consent-details-header {
  border-bottom: 2px solid #e2e8f0;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 16px;
  display: flex;
}

.back-button {
  color: #3b82f6;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 10px;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  font-weight: 600;
  transition: all .2s;
  display: flex;
}

.back-button:hover {
  background: #eff6ff;
}

.consent-status-badge {
  text-transform: uppercase;
  letter-spacing: .03em;
  border-radius: 20px;
  padding: 8px 18px;
  font-size: 12px;
  font-weight: 700;
}

.consent-status-badge.status-active {
  color: #166534;
  background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%);
}

.consent-status-badge.status-inactive {
  color: #991b1b;
  background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%);
}

.consent-status-badge.status-withdrawn {
  color: #92400e;
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
}

.consent-details-content {
  flex-direction: column;
  gap: 20px;
  display: flex;
}

.detail-section {
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
  display: flex;
}

.detail-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  display: grid;
}

.detail-item {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.detail-item span:first-child {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
}

.detail-item span:last-child {
  color: #1e293b;
  font-size: 14px;
  font-weight: 500;
}

.preference-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  flex-direction: column;
  gap: 14px;
  margin-top: 8px;
  padding: 16px;
  display: flex;
  box-shadow: 0 1px 3px #0000000a;
}

.preference-header {
  border-bottom: 1px solid #e2e8f0;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 12px;
  display: flex;
}

.preference-validity {
  color: #64748b;
  background: #f1f5f9;
  border-radius: 8px;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 600;
}

.purpose-list, .processor-list {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.purpose-item, .processor-item {
  background: linear-gradient(135deg, #f8fafc 0%, #fff 100%);
  border-left: 4px solid #3b82f6;
  border-radius: 8px;
  flex-direction: column;
  gap: 6px;
  padding: 12px 14px;
  display: flex;
}

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

.language-section {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
  display: flex;
}

.content-item {
  background: #f8fafc;
  border-radius: 8px;
  flex-direction: column;
  gap: 6px;
  padding: 12px;
  display: flex;
}

.search-footer {
  text-align: center;
  background: linear-gradient(#f8fafc 0%, #f1f5f9 100%);
  border-top: 1px solid #e2e8f0;
  border-radius: 0 0 20px 20px;
  padding: 14px 24px;
}

kbd {
  color: #475569;
  background: linear-gradient(#fff 0%, #f1f5f9 100%);
  border: 1px solid #d1d5db;
  border-radius: 6px;
  margin: 0 3px;
  padding: 4px 8px;
  font-family: SF Mono, Monaco, Consolas, monospace;
  font-size: 11px;
  font-weight: 600;
  box-shadow: 0 1px 2px #00000014;
}

.search-loading {
  animation: 1.5s ease-in-out infinite pulse;
}

.search-results-container::-webkit-scrollbar {
  width: 6px;
}

.search-results-container::-webkit-scrollbar-track {
  background: none;
}

.search-results-container::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 10px;
}

.search-results-container::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

@media (width <= 768px) {
  .global-search-overlay {
    padding-top: 40px;
  }

  .global-search-modal {
    border-radius: 16px;
    width: 95%;
    max-height: 85vh;
  }

  .search-header {
    padding: 18px;
  }

  .search-input-container {
    border-radius: 12px;
    padding: 12px 16px;
  }

  .search-input {
    font-size: 15px;
  }

  .search-tabs {
    gap: 6px;
    padding: 10px 18px;
  }

  .search-tab {
    border-radius: 8px;
    padding: 7px 12px;
    font-size: 12px;
  }

  .search-results-container {
    padding: 18px;
  }

  .result-item {
    border-radius: 12px;
    padding: 12px 14px;
  }

  .result-item:hover {
    transform: translateX(4px);
  }

  .search-footer {
    border-radius: 0 0 16px 16px;
    padding: 12px 18px;
  }
}

@media (prefers-color-scheme: dark) {
  .global-search-modal {
    background: linear-gradient(#1e293b 0%, #0f172a 100%);
  }

  .search-input-container {
    background: #334155;
  }

  .search-input {
    color: #f1f5f9;
  }

  .search-input::-webkit-input-placeholder {
    color: #64748b;
  }

  .search-input::placeholder {
    color: #64748b;
  }

  .search-input:-ms-placeholder-shown {
    color: #64748b;
  }

  .search-input::placeholder {
    color: #64748b;
  }
}

.assistant-bot-overlay {
  backdrop-filter: blur(2px);
  z-index: 10003;
  background-color: #4b5563bf;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100vw;
  height: 100vh;
  padding: 20px;
  display: flex;
  position: fixed;
  inset: 0;
}

.assistant-bot-container {
  background: #fff;
  border-radius: 16px;
  flex-direction: column;
  width: 450px;
  max-width: 90vw;
  height: calc(100vh - 100px);
  max-height: 700px;
  margin-top: 70px;
  display: flex;
  overflow: hidden;
  box-shadow: 0 20px 60px #0000004d;
}

.assistant-header {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  display: flex;
  box-shadow: 0 2px 8px #0000001a;
}

.assistant-header-left {
  align-items: center;
  gap: 12px;
  display: flex;
}

.bot-avatar {
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
  box-shadow: 0 4px 12px #7c3aed4d;
}

.bot-emoji {
  font-size: 28px;
  line-height: 1;
}

.bot-msg-emoji {
  font-size: 18px;
  line-height: 1;
}

.close-bot-btn {
  cursor: pointer;
  background: #f3f4f6;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: all .3s;
  display: flex;
}

.close-bot-btn:hover {
  background: #e5e7eb;
  transform: scale(1.05);
}

.assistant-messages {
  background: #f9fafb;
  flex-direction: column;
  flex: 1;
  gap: 16px;
  padding: 20px;
  display: flex;
  overflow-y: auto;
}

.assistant-messages::-webkit-scrollbar {
  width: 6px;
}

.assistant-messages::-webkit-scrollbar-track {
  background: #f1f1f1;
}

.assistant-messages::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}

.assistant-messages::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

.quick-actions-container {
  flex-direction: column;
  gap: 12px;
  margin-bottom: 8px;
  display: flex;
}

.quick-actions {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  display: grid;
}

.quick-action-btn {
  cursor: pointer;
  text-align: left;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  align-items: center;
  gap: 8px;
  padding: 12px;
  transition: all .3s;
  display: flex;
}

.quick-action-btn:hover {
  background: #f0f4ff;
  border-color: #0ea5e9;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px #0f3cc926;
}

.quick-action-icon {
  min-width: 24px;
  font-size: 20px;
}

.message {
  align-items: flex-start;
  gap: 10px;
  animation: .3s messageSlideIn;
  display: flex;
}

@keyframes messageSlideIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.message.user {
  flex-direction: row-reverse;
}

.message-avatar {
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  min-width: 32px;
  height: 32px;
  font-size: 10px;
  display: flex;
}

.bot-msg-avatar {
  background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
}

.user-msg-avatar {
  background: linear-gradient(135deg, #0ea5e9 0%, #38bdf8 100%);
}

.message-content {
  word-wrap: break-word;
  white-space: pre-wrap;
  border-radius: 12px;
  flex-direction: column;
  gap: 10px;
  max-width: 75%;
  padding: 12px 16px;
  display: flex;
}

.message.bot .message-content {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px 12px 12px 4px;
  box-shadow: 0 2px 8px #0000000d;
}

.message.user .message-content {
  background: linear-gradient(135deg, #0ea5e9 0%, #38bdf8 100%);
  border-radius: 12px 12px 4px;
  box-shadow: 0 2px 8px #0f3cc933;
}

.action-navigate-btn {
  cursor: pointer;
  background: #f0f4ff;
  border: 1px solid #0ea5e9;
  border-radius: 8px;
  width: fit-content;
  margin-top: 8px;
  padding: 8px 12px;
  transition: all .3s;
}

.action-navigate-btn:hover {
  background: #0ea5e9;
  transform: translateX(4px);
}

.action-navigate-btn:hover span {
  color: #fff !important;
}

.typing-indicator {
  align-items: center;
}

.typing-dots {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px 12px 12px 4px;
  gap: 6px;
  padding: 12px 16px;
  display: flex;
  box-shadow: 0 2px 8px #0000000d;
}

.typing-dots span {
  background: #94a3b8;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  animation: 1.4s ease-in-out infinite typingBounce;
}

.typing-dots span:first-child {
  animation-delay: 0s;
}

.typing-dots span:nth-child(2) {
  animation-delay: .2s;
}

.typing-dots span:nth-child(3) {
  animation-delay: .4s;
}

@keyframes typingBounce {
  0%, 60%, 100% {
    opacity: .5;
    transform: translateY(0);
  }

  30% {
    opacity: 1;
    transform: translateY(-10px);
  }
}

.assistant-input-container {
  background: #fff;
  border-top: 1px solid #e5e7eb;
  padding: 16px 20px;
  box-shadow: 0 -4px 12px #0000000d;
}

.assistant-input-wrapper {
  background: #f9fafb;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  align-items: flex-end;
  gap: 10px;
  padding: 8px 12px;
  transition: all .3s;
  display: flex;
}

.assistant-input-wrapper:focus-within {
  background: #fff;
  border-color: #0ea5e9;
  box-shadow: 0 0 0 4px #0f3cc91a;
}

.assistant-input {
  color: #1f2937;
  background: none;
  border: none;
  outline: none;
  flex: 1;
  padding: 4px 0;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.5;
}

.assistant-input::-webkit-input-placeholder {
  color: #9ca3af;
}

.assistant-input::placeholder {
  color: #9ca3af;
}

.assistant-input:-ms-placeholder-shown {
  color: #9ca3af;
}

.assistant-input::placeholder {
  color: #9ca3af;
}

.send-btn {
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  min-width: 36px;
  min-height: 36px;
  padding: 8px;
  transition: all .3s;
  display: flex;
}

.send-btn:hover:not(:disabled) {
  background: #f0f4ff;
  transform: scale(1.1);
}

.send-btn:active:not(:disabled) {
  transform: scale(.95);
}

.send-btn:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.send-btn.active {
  background: #f0f4ff;
}

.send-icon {
  color: #94a3b8;
  font-size: 20px;
  line-height: 1;
  transition: all .3s;
}

.send-btn.active .send-icon {
  color: #0ea5e9;
  font-weight: bold;
}

.send-btn:hover:not(:disabled) .send-icon {
  transform: translateX(2px);
}

@media (width <= 768px) {
  .assistant-bot-container {
    width: 100%;
    height: calc(100vh - 40px);
    max-height: 100%;
    margin-top: 20px;
  }

  .quick-actions {
    grid-template-columns: 1fr;
  }

  .message-content {
    max-width: 85%;
  }
}

@media print {
  .assistant-bot-overlay, .assistant-bot-container {
    display: none !important;
  }
}

html, body {
  width: 100%;
  margin: 0;
  padding: 0;
  position: relative;
  max-width: 100vw !important;
  overflow-x: hidden !important;
}

#root {
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  display: flex;
  position: relative;
  max-width: 100vw !important;
  overflow-x: hidden !important;
}

#root > * {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.app-layout {
  box-sizing: border-box;
  flex-direction: column;
  flex: 1;
  width: calc(100vw - 240px);
  max-width: calc(100vw - 240px);
  margin-left: 240px;
  padding-bottom: 20px;
  transition: margin-left .3s;
  display: flex;
  overflow-x: hidden;
}

@media (width <= 1024px) {
  .app-layout {
    width: 100vw;
    max-width: 100vw;
    margin-left: 0;
  }
}

@media (width <= 768px) {
  .app-layout {
    width: 100vw;
    max-width: 100vw;
    margin-left: 0;
    padding: 0 10px;
  }
}

.custom-checkbox-container {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.custom-checkbox {
  cursor: pointer;
  width: 20px;
  height: 20px;
}

.pii-search-container {
  background-color: #f9fafb;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  align-items: center;
  padding-left: 12px;
  transition: all .2s;
  display: flex;
  position: relative;
}

.pii-search-container:focus-within {
  background-color: #fff;
  border-color: #0ea5e9;
}

.pii-search-input {
  color: #111827;
  background: none;
  border: none;
  outline: none;
  flex: 1;
  padding: 10px 8px;
  font-size: 14px;
}

.pii-search-input::-webkit-input-placeholder {
  color: #9ca3af;
}

.pii-search-input::placeholder {
  color: #9ca3af;
}

.pii-search-input:-ms-placeholder-shown {
  color: #9ca3af;
}

.pii-search-input::placeholder {
  color: #9ca3af;
}

.pii-search-clear-btn {
  cursor: pointer;
  z-index: 2;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  padding: 4px;
  display: flex;
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
}

div[style*="borderRadius"][style*="backgroundColor"]:not(input):not(button):not(textarea):not(select), div[style*="border-radius"][style*="background-color"]:not(input):not(button):not(textarea):not(select), div[style*="borderRadius: 16px"]:not(input):not(button):not(textarea):not(select), div[style*="border-radius: 16px"]:not(input):not(button):not(textarea):not(select) {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  outline: none !important;
}

div[style*="borderRadius"] > span:not(input):not(button), div[style*="borderRadius"] > div:not(input):not(button) > span, div[style*="border-radius"] > span:not(input):not(button), div[style*="border-radius"] > div:not(input):not(button) > span, div[style*="backgroundColor"] > span:not(input):not(button), div[style*="backgroundColor"] > div:not(input):not(button), div[style*="background-color"] > span:not(input):not(button), div[style*="background-color"] > div:not(input):not(button) {
  outline: none !important;
}

.data-item-pill {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  background-color: #e8faf7 !important;
  border: none !important;
  border-radius: 16px !important;
  outline: none !important;
  align-items: center !important;
  padding: 4px 8px !important;
  display: flex !important;
}

.data-item-pill :not(input):not(button):not(textarea):not(select) {
  border: none !important;
  outline: none !important;
}

input[type="checkbox"], input[type="radio"], input[type="text"], input[type="email"], input[type="password"], input[type="number"], textarea, select {
  outline: inherit !important;
}

.custom-checkbox, .custom-radio, input[type="checkbox"], input[type="radio"] {
  -webkit-box-shadow: none;
  box-shadow: none;
}

input[type="checkbox"]:checked, input[type="radio"]:checked {
  border-color: #0ea5e9 !important;
}
/*# sourceMappingURL=partner-portal-frontend.aa436662.css.map */
