/* Clean hover states: orange accents, readable labels, no dark box overlays. */
body.sgp-color-theme [data-sgp-control="white"] {
  --sgp-control-hover: #fff;
  --sgp-control-hover-ink: #071a33;
  --sgp-control-hover-border: #ff573d;
}
body.sgp-color-theme a[data-sgp-control="white"] {
  border-width: 1px;
  border-style: solid;
}
body.sgp-color-theme [data-sgp-control],
body.sgp-color-theme .sgp-mega-header a,
body.sgp-color-theme .sgp-blog-card,
body.sgp-color-theme .sgp-blog-card > a,
body.sgp-color-theme .sgp-blog-start > a,
.pp-button, .pp-link, .pp-media-card {
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}
body.sgp-color-theme [data-sgp-control="orange"] {
  --sgp-control-hover: #ff725c;
  --sgp-control-hover-ink: #071a33;
  --sgp-control-hover-border: #ff725c;
}
body.sgp-color-theme [data-sgp-control="navy"] {
  --sgp-control-hover: #18304f;
  --sgp-control-hover-ink: #fff;
  --sgp-control-hover-border: #18304f;
}
body.sgp-color-theme [data-sgp-control][data-sgp-hover-surface="dark"] {
  --sgp-control-hover: #ff725c;
  --sgp-control-hover-ink: #071a33;
  --sgp-control-hover-border: #ff725c;
}
body.sgp-color-theme [data-sgp-control][data-sgp-control][data-sgp-control]:is(:hover,:focus-visible,:active):not(:disabled) {
  background: var(--sgp-control-hover) !important;
  color: var(--sgp-control-hover-ink) !important;
  border-color: var(--sgp-control-hover-border) !important;
  box-shadow: none !important;
}
/* Keyboard focus remains visible without adding a box on pointer hover. */
body.sgp-color-theme [data-sgp-control][data-sgp-control][data-sgp-control]:focus-visible:not(:disabled),
body.sgp-color-theme .sgp-mega-header :is(a,summary):focus-visible {
  outline: 2px solid #ff573d !important;
  outline-offset: 4px;
  box-shadow: none !important;
}
/* A soft accent within the white menu; text stays navy throughout the row. */
body.sgp-color-theme .sgp-mega-header :is(.sgp-mega-column,.sgp-mobile-group,.sgp-mobile-direct) > a:is(:hover,:focus-visible),
body.sgp-color-theme .sgp-mega-header :is(.sgp-mega-column,.sgp-mobile-group) li > a:is(:hover,:focus-visible) {
  background: #fff2ee !important;
  color: #071a33 !important;
  box-shadow: none !important;
}
body.sgp-color-theme .sgp-mega-header :is(.sgp-mega-column,.sgp-mobile-group) a:is(:hover,:focus-visible) :is(span,small,svg) {
  color: #071a33 !important;
}
body.sgp-color-theme .sgp-mega-desktop > a:is(:hover,:focus-visible),
body.sgp-color-theme nav a[class~="hover:text-[#d64d36]"]:is(:hover,:focus-visible) {
  background: transparent;
  color: #071a33;
  text-decoration: underline;
  text-decoration-color: #ff573d;
  text-underline-offset: 5px;
  box-shadow: none;
}
/* Cards keep their original surface; only their existing edge changes color. */
body.sgp-color-theme .sgp-blog-card:has(> a:is(:hover,:focus-visible)) {
  border-color: #ff573d;
}
body.sgp-color-theme .sgp-blog-card > a:is(:hover,:focus-visible),
body.sgp-color-theme .sgp-blog-start > a:is(:hover,:focus-visible) {
  background: #fff !important;
  color: #071a33 !important;
  border-color: #ff573d !important;
  box-shadow: none !important;
}
body.sgp-color-theme .sgp-blog-card > a:is(:hover,:focus-visible) h2,
body.sgp-color-theme .sgp-blog-card > a:is(:hover,:focus-visible) h3 {
  text-decoration: underline;
  text-decoration-color: #ff573d;
  text-underline-offset: 4px;
}
body.sgp-color-theme main a:has(> img):hover,
body.sgp-color-theme main a:has(> picture):hover,
.pp-media-card:hover {
  border-color: #ff573d;
  box-shadow: none;
}
body.sgp-color-theme main a:has(> img):focus-visible,
body.sgp-color-theme main a:has(> picture):focus-visible,
.pp-media-card:focus-visible {
  outline: 2px solid #ff573d;
  outline-offset: 4px;
  box-shadow: none;
}
/* Public-profile default styling and layout remain unchanged. */
.pp-button.secondary:is(:hover,:focus-visible) {
  background: #fff !important; color: #071a33 !important; border-color: #ff573d !important;
}
.pp-button:not(.secondary):not(.pdf):is(:hover,:focus-visible) {
  background: #ff573d !important; color: #071a33 !important; border-color: #ff573d !important;
}
.pp-link:is(:hover,:focus-visible) {
  background: #fff !important; color: #071a33 !important; border-color: #ff573d !important;
}
.pp-button.pdf:is(:hover,:focus-visible) { background: #1f5b4f !important; color: #fff !important; }
.pp-button:is(:hover,:focus-visible) :is(span,svg),
.pp-link:is(:hover,:focus-visible) :is(span,svg) { color: inherit !important; }
body.sgp-sample-profile header a[class~="border-white/15"]:is(:hover,:focus-visible) {
  background: #fff !important; color: #071a33 !important; border-color: #fff !important;
}
body.sgp-sample-profile a[class~="bg-[#286b5d]"]:is(:hover,:focus-visible) { background: #1f5b4f !important; color: #fff !important; }
body.sgp-sample-profile a[class~="bg-[#0b1d36]"]:is(:hover,:focus-visible) { background: #18304f !important; color: #fff !important; }
body.sgp-sample-profile a[class~="bg-[#f5d547]"]:is(:hover,:focus-visible) { background: #ff725c !important; color: #071a33 !important; }
@media (prefers-reduced-motion: reduce) {
  body.sgp-color-theme [data-sgp-control],
  body.sgp-color-theme .sgp-mega-header a,
  body.sgp-color-theme .sgp-blog-card,
  body.sgp-color-theme .sgp-blog-card > a,
  body.sgp-color-theme .sgp-blog-start > a,
  .pp-button, .pp-link, .pp-media-card { transition: none; }
}
