/* CalculatorDrive site theme (typography, colors, layout tokens) */

/* ===== FONTS ===== */
@font-face{font-family:'Lora';font-style:normal;font-weight:400;font-display:optional;src:url("../vendor/fonts/lora/lora-400.6a24bfe835a2.woff2") format('woff2')}
@font-face{font-family:'Lora';font-style:normal;font-weight:500;font-display:optional;src:url("../vendor/fonts/lora/lora-500.0a5879f383e8.woff2") format('woff2')}
@font-face{font-family:'Lora';font-style:normal;font-weight:600;font-display:optional;src:url("../vendor/fonts/lora/lora-600.14f8cf164069.woff2") format('woff2')}
@font-face{font-family:'Lora';font-style:normal;font-weight:700;font-display:optional;src:url("../vendor/fonts/lora/lora-700.dc4d33806145.woff2") format('woff2')}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400;font-display:optional;src:url("../vendor/fonts/source-serif/source-serif-400.197cc326af6d.woff2") format('woff2')}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:600;font-display:optional;src:url("../vendor/fonts/source-serif/source-serif-600.197cc326af6d.woff2") format('woff2')}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:700;font-display:optional;src:url("../vendor/fonts/source-serif/source-serif-700.197cc326af6d.woff2") format('woff2')}

/* ===== CSS CUSTOM PROPERTIES ===== */
:root {
  --md-font-serif: 'Lora', Georgia, 'Times New Roman', serif;
  --md-font-body: 'Source Serif 4', Georgia, serif;
  --md-font-ui: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --md-text: #242424;
  --md-text-secondary: #6B6B6B;
  --md-text-light: #757575;
  --md-green: #156d12;
  --md-green-hover: #0f4e0c;
  --md-bg: #ffffff;
  --md-bg-warm: #F7F4ED;
  --md-border: #E6E6E6;
  --md-border-light: #F2F2F2;
  --md-content-width: 680px;
  --md-feed-width: 1192px;
  --md-header-height: 57px;
}

/* Global typography/colors: theme-global.css + tokens.css */

/* ===== SHARE FAB ===== */
.share-fab {
  background: var(--md-text) !important;
  border: none !important;
}

.share-fab .fa-solid {
  font-family: "Font Awesome 6 Free", sans-serif !important;
  font-weight: 900 !important;
  color: inherit;
  line-height: 1;
  pointer-events: none;
}

.share-fab:hover:not(.active) {
  transform: scale(1.05) !important;
}

.share-fab.active {
  transform: rotate(45deg) !important;
}

/* ===== BLOG POST LIST OVERRIDES ===== */
.bg-gradient-to-br.from-gray-900 {
  background: var(--md-bg) !important;
  border-bottom: 1px solid var(--md-border);
}

.bg-gradient-to-br.from-gray-900 h1 {
  color: var(--md-text) !important;
  font-family: var(--md-font-serif) !important;
}

.bg-gradient-to-br.from-gray-900 p {
  color: var(--md-text-secondary) !important;
}

.bg-gradient-to-br.from-gray-900 .bg-white\/10,
.bg-gradient-to-br.from-gray-900 .bg-white {
  font-family: var(--md-font-ui) !important;
}

/* Blog cards */
.bg-white.rounded-xl {
  border-radius: 0 !important;
  box-shadow: none !important;
  border-bottom: 1px solid var(--md-border) !important;
}

.bg-white.rounded-xl:hover {
  box-shadow: none !important;
}

/* Blog post detail */
.prose {
  font-family: var(--md-font-body) !important;
  color: var(--md-text) !important;
  font-size: 1.25rem !important;
  line-height: 1.8 !important;
}

.prose h1, .prose h2, .prose h3 {
  font-family: var(--md-font-serif) !important;
  color: var(--md-text) !important;
}

/* Reading progress bar */
#reading-progress {
  background: var(--md-green) !important;
}

/* ===== AUTH PAGES ===== */
.auth-card {
  border-radius: 4px !important;
}

.auth-title, .auth-card h1 {
  font-family: var(--md-font-serif) !important;
}

.auth-submit-btn {
  background: var(--md-green) !important;
  border-radius: 20px !important;
}

.auth-submit-btn:hover {
  background: var(--md-green-hover) !important;
  box-shadow: none !important;
}

.auth-link {
  color: var(--md-green) !important;
}

.auth-icon-circle {
  background: var(--md-bg-warm) !important;
}

/* ===== CALCULATOR PAGES (legacy dark hero shells) ===== */
.bg-slate-900 {
  background: var(--cd-surface-elevated) !important;
}

.bg-slate-900 h1 {
  color: var(--cd-text) !important;
  font-family: var(--cd-font-ui) !important;
}

.bg-slate-900 .text-transparent {
  -webkit-text-fill-color: var(--cd-accent) !important;
  color: var(--cd-accent) !important;
  background: none !important;
}

.bg-slate-900 p,
.bg-slate-900 span,
.bg-slate-900 .text-slate-400,
.bg-slate-900 .text-slate-500,
.bg-slate-900 .text-xs {
  color: var(--md-text-secondary) !important;
}

.bg-slate-900 .text-white {
  color: var(--md-text) !important;
}

.bg-slate-900 .bg-blue-500\/10,
.bg-slate-900 .border-blue-400\/20 {
  background: var(--cd-accent-soft) !important;
  border-color: rgba(26, 107, 255, 0.2) !important;
}

.bg-slate-900 .text-blue-300 {
  color: var(--cd-accent) !important;
}

.bg-slate-900 .bg-emerald-400 {
  background: var(--cd-accent) !important;
}

/* Calculator category pills */
.bg-white\/5 {
  background: rgba(0,0,0,0.04) !important;
  border-color: var(--md-border) !important;
}

.bg-white\/5:hover {
  background: rgba(0,0,0,0.08) !important;
}

/* Calculator tool links */
.bg-gray-50 .inline-flex.items-center {
  font-family: var(--md-font-ui) !important;
}

/* CTA in calc pages — theme-global.css handles .bg-blue-600 */

/* ===== BREADCRUMBS ===== */
nav[aria-label*="Breadcrumb"] a,
nav[aria-label*="Breadcrumb"] span {
  font-family: var(--md-font-ui) !important;
}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--md-bg); }
::-webkit-scrollbar-thumb { background: var(--md-border); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #ccc; }

/* ===== SELECTION COLOR ===== */
::selection { background: var(--cd-accent-soft); }

/* ===== SMOOTH TRANSITIONS ===== */
a, button { transition: color 0.15s ease, background-color 0.15s ease; }

/* ===== ACCESSIBILITY OVERRIDES ===== */
/* Fix contrast ratio for Google Funding Choices CMP */
.fc-consent-root .fc-faq-label,
.fc-consent-root .fc-dialog-overlay,
.fc-consent-root .fc-dialog,
.fc-consent-root .fc-vendors-list-dialog,
.fc-consent-root .fc-footer-link-v2 {
  color: #171717 !important;
}

.fc-consent-root a {
  color: #156d12 !important;
}

/* Ensure buttons have passing contrast */
.fc-consent-root .fc-button-label {
  color: #ffffff !important;
  font-weight: 600 !important;
}

.fc-consent-root .fc-primary-button {
  background-color: #156d12 !important;
}

.fc-consent-root .fc-secondary-button {
  background-color: #f3f4f6 !important;
}

.fc-consent-root .fc-secondary-button .fc-button-label {
  color: #171717 !important;
}

/* Additional Contrast Fixes for Lighthouse */
.fc-consent-root .fc-dialog,
.fc-consent-root .fc-choice-dialog {
  color: #171717 !important; 
}
.fc-consent-root .fc-faq-label {
  color: #156d12 !important; 
  font-weight: 600 !important;
}
.fc-consent-root .fc-dialog-overlay {
  background-color: rgba(0, 0, 0, 0.7) !important; 
}
