@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap');

:root {
    --color-primary: #623CE7;
    --color-heading: #161327;
    --color-accent-1: #B7A5F4;
    --color-accent-2: #CEC3F8;
    --color-accent-3: #EFECFD;
}
.whcrm-root { font-family: 'Inter', sans-serif; background-color: #f8f8fc; }
.bg-primary { background-color: var(--color-primary); }
.text-primary { color: var(--color-primary); }
.text-heading { color: var(--color-heading); }
.border-accent-1 { border-color: var(--color-accent-1); }
.bg-accent-3 { background-color: var(--color-accent-3); }
.ring-primary:focus { ring-color: var(--color-primary); }
.score-card { transition: all 0.2s ease-in-out; }
.score-card:hover { transform: translateY(-3px); box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); }

/* small helpers to keep full-screen look inside WP page */
.whcrm-root { display: flex; min-height: 75vh; }
.whcrm-root aside { min-height: 75vh; }

/* === Typography refinements to match index.html === */

/* Headline: Exploring URL - Website Score Report */
.text-heading,
h2.text-3xl.font-extrabold {
  font-size: 30px !important;
  line-height: 1.3;
  font-weight: 800;
  color: #1e293b; /* same as text-heading in index */
}

/* Section titles: GA, Service Status, Domain, Breakdown, Internal Metrics */
h3.text-xl.font-semibold {
  font-size: 20px !important;
  line-height: 1.4;
  font-weight: 600;
  color: #1f2937;
}

/* Standard paragraph / labels */
.text-base,
p.text-base,
div.text-base {
  font-size: 16px !important;
  line-height: 1.5;
}

/* Small notes / sublabels */
.text-sm,
p.text-sm,
div.text-sm {
  font-size: 14px !important;
  line-height: 1.5;
  color: #6b7280;
}

/* Micro text / tag notes */
.text-xs {
  font-size: 12px !important;
  line-height: 1.4;
  color: #9ca3af;
}

/* Category boxes: more visual depth */
.grid .bg-white.p-4.rounded.shadow-sm {
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

/* --- Sticky Layout Fix (match index design) --- */

/* Sidebar fixed on the left */
#whcrm-wrapper aside {
  position: fixed;
  top: 0;
  left: 0;
  width: 16rem; /* 64 Tailwind */
  height: 100vh;
  overflow-y: auto;
  background: #fff;
  border-right: 1px solid #e5e7eb;
  z-index: 40;
}

/* Main content shifted right, scrollable */
#whcrm-wrapper main {
  margin-left: 16rem; /* same as sidebar width */
  flex: 1;
  height: 100vh;
  overflow-y: auto;
  background-color: #f9fafb;
  display: flex;
  flex-direction: column;
}

/* Sticky header bar (Generate + PDF buttons) */
#whcrm-wrapper main header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
  border-bottom: 1px solid #e5e7eb;
  border-radius: 0;
  margin: 0 !important;
}

/* Remove unnecessary padding around sticky header */
#whcrm-wrapper main header + #dashboard-content {
  margin-top: 0 !important;
  padding-top: 1rem;
}

/* Dashboard content scroll area */
#dashboard-content {
  flex: 1;
  overflow-y: auto;
  padding: 2rem;
  background: #f9fafb;
}

/* Smooth scroll + slight shadow below header */
#dashboard-content::before {
  content: '';
  display: block;
  height: 1px;
  background: #e5e7eb;
}

#whcrm-wrapper #client-list button,
#whcrm-wrapper #client-list button:hover,
#whcrm-wrapper #client-list button:focus,
#whcrm-wrapper #client-list button:active {
  background-color: transparent !important;
  color: inherit !important;
  border: none !important;
  box-shadow: none !important;
}
