﻿/* GDPR360 command center authenticated UI */
.gdpr360-authenticated-shell {
  background:
    radial-gradient(circle at 2% 0%, rgba(37, 99, 235, 0.13), transparent 32%),
    radial-gradient(circle at 100% 100%, rgba(14, 165, 233, 0.11), transparent 34%),
    #f8fafc !important;
}

.gdpr360-authenticated-shell aside {
  width: 18rem !important;
  background:
    radial-gradient(circle at 18% 10%, rgba(37, 99, 235, 0.34), transparent 28%),
    radial-gradient(circle at 92% 90%, rgba(14, 165, 233, 0.20), transparent 30%),
    linear-gradient(180deg, #071b3d 0%, #06152f 44%, #040b18 100%) !important;
}

.gdpr360-authenticated-shell .lg\:pl-72 {
  padding-left: 18rem !important;
}

.gdpr360-authenticated-shell aside nav {
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(148, 163, 184, 0.28) transparent;
}

.gdpr360-authenticated-shell aside nav::-webkit-scrollbar {
  width: 4px;
}

.gdpr360-authenticated-shell aside nav::-webkit-scrollbar-track {
  background: transparent;
}

.gdpr360-authenticated-shell aside nav::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.28);
  border-radius: 999px;
}

.gdpr360-authenticated-shell aside nav a {
  min-height: 2.95rem;
  border: 1px solid transparent;
  font-weight: 650 !important;
}

.gdpr360-authenticated-shell aside nav a[aria-current="page"] {
  border-color: rgba(255,255,255,0.16);
  background: #2563eb !important;
  box-shadow: 0 14px 30px rgba(37, 99, 235, 0.24) !important;
}

.gdpr360-authenticated-shell aside .font-extrabold,
.gdpr360-authenticated-shell aside .font-black {
  font-weight: 720 !important;
}

.gdpr360-authenticated-shell main {
  background: transparent !important;
}

.gdpr360-authenticated-shell main > div > div:first-child {
  animation: gdpr360SoftAppear 260ms ease-out both;
}

@keyframes gdpr360SoftAppear {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.gdpr360-authenticated-shell main .bg-white {
  border-color: rgba(219, 234, 254, 0.92) !important;
}

.gdpr360-authenticated-shell main .shadow-sm,
.gdpr360-authenticated-shell main .shadow-lg {
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06) !important;
}

.gdpr360-authenticated-shell main input,
.gdpr360-authenticated-shell main textarea,
.gdpr360-authenticated-shell main select {
  border-color: rgb(191 219 254) !important;
  background: rgba(239, 246, 255, 0.48) !important;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.035) !important;
}

.gdpr360-authenticated-shell main input:focus,
.gdpr360-authenticated-shell main textarea:focus,
.gdpr360-authenticated-shell main select:focus {
  border-color: #2563eb !important;
  box-shadow:
    0 0 0 3px rgba(37, 99, 235, 0.13),
    inset 0 1px 2px rgba(15, 23, 42, 0.035) !important;
}

.gdpr360-authenticated-shell main button[class*="bg-blue-600"],
.gdpr360-authenticated-shell main a[class*="bg-blue-600"] {
  box-shadow: 0 16px 34px rgba(37, 99, 235, 0.20) !important;
}

@media (max-width: 1023px) {
  .gdpr360-authenticated-shell .lg\:pl-72 {
    padding-left: 0 !important;
  }
}

@media (max-width: 767px) {
  .gdpr360-authenticated-shell main {
    padding: 1rem !important;
  }

  .gdpr360-authenticated-shell main h1 {
    font-size: 2rem !important;
    line-height: 1.04 !important;
  }
}

/* GDPR360 sidebar no-scroll compact - start */
/* Safe CSS-only sidebar refinement: no React/layout rewrite. */
.gdpr360-authenticated-shell aside {
  overflow: hidden !important;
}

.gdpr360-authenticated-shell aside > div:first-of-type {
  padding: 1rem !important;
}

.gdpr360-authenticated-shell aside nav {
  flex: 0 0 auto !important;
  overflow: visible !important;
  padding-top: 0.95rem !important;
  padding-bottom: 0.85rem !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

.gdpr360-authenticated-shell aside nav::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

.gdpr360-authenticated-shell aside nav > div {
  gap: 0.45rem !important;
}

.gdpr360-authenticated-shell aside nav a {
  min-height: 2.45rem !important;
  padding: 0.58rem 0.9rem !important;
  border-radius: 0.95rem !important;
  font-size: 0.92rem !important;
  font-weight: 560 !important;
  line-height: 1.15 !important;
}

.gdpr360-authenticated-shell aside nav a svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
}

.gdpr360-authenticated-shell aside nav a[aria-current="page"] {
  box-shadow: 0 10px 22px rgba(37, 99, 235, 0.18) !important;
}

.gdpr360-authenticated-shell aside a[href="/audit/new"] {
  height: 2.75rem !important;
  margin-top: 0.9rem !important;
  border-radius: 1rem !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
}

.gdpr360-authenticated-shell aside a[href="/audit/new"] svg {
  width: 1rem !important;
  height: 1rem !important;
}

.gdpr360-authenticated-shell aside > div:last-of-type {
  padding: 0.75rem !important;
}

.gdpr360-authenticated-shell aside > div:last-of-type > div {
  border-radius: 1rem !important;
}

.gdpr360-authenticated-shell aside > div:last-of-type > div:first-child {
  padding: 0.75rem !important;
}

.gdpr360-authenticated-shell aside [data-testid="credits-balance"] {
  font-size: 1.9rem !important;
  font-weight: 650 !important;
}

.gdpr360-authenticated-shell aside [data-testid="buy-credits-sidebar"] {
  padding: 0.35rem 0.75rem !important;
  font-size: 0.76rem !important;
}

.gdpr360-authenticated-shell aside [data-testid="credits-balance"] + * {
  font-size: 0.75rem !important;
}

.gdpr360-authenticated-shell aside > div:last-of-type p {
  line-height: 1.35 !important;
}

.gdpr360-authenticated-shell aside > div:last-of-type > div:nth-child(2),
.gdpr360-authenticated-shell aside > div:last-of-type > div:nth-child(3) {
  padding: 0.75rem !important;
  margin-top: 0.75rem !important;
}

.gdpr360-authenticated-shell aside > div:last-of-type button[data-testid="logout-btn"] {
  margin-top: 0.65rem !important;
  padding: 0.65rem 0.85rem !important;
  border-radius: 0.95rem !important;
}

.gdpr360-authenticated-shell aside .text-\[11px\] {
  font-size: 0.66rem !important;
  letter-spacing: 0.13em !important;
}

.gdpr360-authenticated-shell aside .text-\[10px\] {
  font-size: 0.62rem !important;
  letter-spacing: 0.12em !important;
}

/* On shorter laptop screens, compact a little more. */
@media (max-height: 820px) and (min-width: 1024px) {
  .gdpr360-authenticated-shell aside > div:first-of-type {
    padding: 0.8rem !important;
  }

  .gdpr360-authenticated-shell aside a[href="/audit/new"] {
    height: 2.45rem !important;
    margin-top: 0.7rem !important;
  }

  .gdpr360-authenticated-shell aside nav {
    padding-top: 0.7rem !important;
    padding-bottom: 0.6rem !important;
  }

  .gdpr360-authenticated-shell aside nav a {
    min-height: 2.2rem !important;
    padding: 0.48rem 0.82rem !important;
  }

  .gdpr360-authenticated-shell aside > div:last-of-type {
    padding: 0.62rem !important;
  }

  .gdpr360-authenticated-shell aside > div:last-of-type > div:first-child,
  .gdpr360-authenticated-shell aside > div:last-of-type > div:nth-child(2),
  .gdpr360-authenticated-shell aside > div:last-of-type > div:nth-child(3) {
    padding: 0.62rem !important;
  }

  .gdpr360-authenticated-shell aside [data-testid="credits-balance"] {
    font-size: 1.65rem !important;
  }
}
/* GDPR360 sidebar no-scroll compact - end */
