@import url('./colors.css');
@import url('./typography.css');
@import url('./color-system/tokens.css');

/* Site components use the canonical Edison role tokens above. */
:root { color-scheme: light; }
body { font-family:var(--edison-font-body); font-weight:var(--edison-weight-body); }
:where(h1,h2,h3,h4) { font-family:var(--edison-font-heading); font-weight:var(--edison-weight-heading); }
:where(button,input,select,textarea) { font-family:var(--edison-font-control); }
:where(button,summary) { font-weight:var(--edison-weight-control); }
:where(strong,b) { font-weight:500; }
:where(a) { color:var(--edison-color-link); text-decoration:underline; text-underline-offset:3px; }
:where(:focus-visible) { outline:2px solid var(--edison-color-focus-ring); outline-offset:3px; }

/* Shared primary-action states; component dimensions stay in their fragments. */
body :is(#site-header a.nav-cta,#data-hero a.dh-cta,#data-value a.dv-cta,#brokerage-process a.bp-cta,#seller-control a.sc-cta,#business-fit a.fit-cta,.quiz-actions .primary,#review-dialog #review-submit) {
  background:var(--edison-color-action);
  color:var(--edison-color-on-action);
  border:1px solid var(--edison-color-action-border);
  font-family:var(--edison-font-control);
  font-weight:var(--edison-weight-control);
  text-decoration:none;
  transition:background .15s ease;
}
body :is(#site-header a.nav-cta,#data-hero a.dh-cta,#data-value a.dv-cta,#brokerage-process a.bp-cta,#seller-control a.sc-cta,#business-fit a.fit-cta,.quiz-actions .primary,#review-dialog #review-submit):hover {
  background:var(--edison-color-action-hover);
}
body :is(#site-header a.nav-cta,#data-hero a.dh-cta,#data-value a.dv-cta,#brokerage-process a.bp-cta,#seller-control a.sc-cta,#business-fit a.fit-cta,.quiz-actions .primary,#review-dialog #review-submit):active {
  background:var(--edison-color-action-hover);
  box-shadow:inset 0 0 0 1px var(--edison-color-action-border);
  transform:translateY(1px);
}
body :is(#site-header a.nav-cta,#data-hero a.dh-cta,#data-value a.dv-cta,#brokerage-process a.bp-cta,#seller-control a.sc-cta,#business-fit a.fit-cta,.quiz-actions .primary,#review-dialog #review-submit):disabled {
  background:var(--edison-color-surface-subtle);
  color:var(--edison-color-text-muted);
  border-color:var(--edison-color-control-border);
  box-shadow:none;
  transform:none;
  opacity:1;
  cursor:wait;
}
body #data-value .dv-filter-options button { font-family:var(--edison-font-control); font-weight:500; }
body #data-value .dv-filter-options button[aria-pressed="true"] {
  background:var(--edison-color-selected-surface);
  color:var(--edison-color-on-selected);
  border-color:var(--edison-color-action-border);
}
body header>a:not(.brand):not(.site-skip),#faq a,#our-approach a,.quiz-success a {
  color:var(--edison-color-link);
  text-decoration:underline;
  text-underline-offset:3px;
}
.quiz-actions .back { color:var(--edison-color-link); font-weight:500; }
body .field input::placeholder { color:var(--edison-muted); }
body .software-choice { font-weight:400; }
body .software-choice:has(input:checked) { background:var(--edison-color-selected-surface); border-color:var(--edison-color-action-border); }
body .software-choice input { accent-color:var(--edison-ink); }
@media(prefers-reduced-motion:reduce) {
  body :is(a,button) { transition:none; }
}
