/* GTM Insight Hub: design tokens & global styles */
:root {
  --gblue: #4285F4;
  --gnavy: #0B1F3A;
  --gpurple: #9C5BFF;
  --gpink: #FF61D2;
  --morange: #FF6B00;
}

html, body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body { font-feature-settings: 'cv02','cv03','cv04','cv11'; }

/* Subtle scrollbar */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(11,31,58,0.18); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: rgba(11,31,58,0.30); }

/* Gradient text helper */
.text-gradient-gemini {
  background: linear-gradient(90deg, #4285F4 0%, #9C5BFF 50%, #FF61D2 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* Glass card */
.glass {
  background: rgba(255,255,255,0.65);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255,255,255,0.4);
}

/* Tier pill colors */
.tier-P0 { background: linear-gradient(135deg,#FF6B00,#ef4444); color:#fff; }
.tier-P1 { background: linear-gradient(135deg,#F59E0B,#FB923C); color:#fff; }
.tier-P2 { background: linear-gradient(135deg,#3B82F6,#06B6D4); color:#fff; }
.tier-P3 { background: linear-gradient(135deg,#94A3B8,#64748B); color:#fff; }

/* ICP score ring */
.icp-ring { stroke-dasharray: 100; transform: rotate(-90deg); transform-origin: 50% 50%; transition: stroke-dashoffset 0.6s ease; }

/* Markdown content in chat answers */
.md-content { font-size: 14px; line-height: 1.7; color: #1A1F2E; }
.md-content p { margin: 0 0 0.6em; }
.md-content strong { color: #0B1F3A; font-weight: 700; }
.md-content ul, .md-content ol { padding-left: 1.4em; margin: 0.4em 0; }
.md-content li { margin: 0.15em 0; }
.md-content code { background: #F1F4FA; padding: 0.1em 0.3em; border-radius: 4px; font-family: 'SF Mono', Menlo, monospace; font-size: 12px; color: #4285F4; }

/* Account card hover */
.account-card { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.account-card:hover { transform: translateY(-2px); border-color: rgba(66,133,244,0.4); box-shadow: 0 14px 38px -8px rgba(11,31,58,0.18); }

/* Loading dots */
.dot-loader { display: inline-flex; gap: 4px; }
.dot-loader span { width: 7px; height: 7px; border-radius: 50%; background: #4285F4; animation: dot-bounce 1.2s infinite ease-in-out both; }
.dot-loader span:nth-child(1) { animation-delay: -0.32s; }
.dot-loader span:nth-child(2) { animation-delay: -0.16s; }
@keyframes dot-bounce { 0%,80%,100% { transform: scale(0); opacity: 0.4; } 40% { transform: scale(1); opacity: 1; } }

/* Slide-in drawer */
@keyframes slide-in-right { from { transform: translateX(100%); } to { transform: translateX(0); } }
.slide-in { animation: slide-in-right .25s ease-out; }

/* Watermark */
.watermark::before {
  content: 'INTERNAL';
  position: fixed;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 10px;
  color: rgba(11,31,58,0.10);
  letter-spacing: 4px;
  pointer-events: none;
  z-index: 1;
  font-weight: 700;
}

/* Dark mode */
html.dark body { background: #0B1F3A; color: #E5E9F0; }
html.dark .bg-white { background: #11243F !important; }
html.dark .border-divider { border-color: rgba(255,255,255,0.08) !important; }
html.dark .text-gnavy { color: #E5E9F0 !important; }
html.dark .text-ink { color: #E5E9F0 !important; }
html.dark .text-inkmute { color: #9AA4B2 !important; }
html.dark .bg-surface { background: #08172C !important; }
html.dark .bg-gray-50 { background: rgba(255,255,255,0.04) !important; }
html.dark .bg-gray-100 { background: rgba(255,255,255,0.06) !important; }
html.dark .hover\:bg-gray-50:hover { background: rgba(255,255,255,0.08) !important; }
html.dark .hover\:bg-gray-100:hover { background: rgba(255,255,255,0.10) !important; }

/* No-anchor hover style */
a { text-decoration: none; }

/* Prose-ish for long content */
.prose-mini h3 { font-size: 14px; font-weight: 700; color: #0B1F3A; margin: 12px 0 6px; }
.prose-mini p { font-size: 13px; color: #1A1F2E; line-height: 1.65; margin-bottom: 6px; }

/* Pretty score bar */
.bar { height: 6px; border-radius: 999px; background: #EEF2F7; overflow: hidden; }
.bar > i { display: block; height: 100%; background: linear-gradient(90deg,#4285F4,#9C5BFF); border-radius: inherit; }

/* Print page break */
@media print {
  body { background: #fff !important; }
  header, footer, .no-print { display: none !important; }
}
