.tools-hero,
.password-hero,
.email-hero,
.website-hero,
.dns-hero {
  background:
    linear-gradient(rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    radial-gradient(circle at 82% 28%, rgba(45, 108, 223, 0.3), transparent 31%),
    linear-gradient(135deg, #07111f, #0d1a2c 64%, #10223b);
  background-size: 2rem 2rem, 2rem 2rem, auto, auto;
}

.tools-hero .ats-page-hero__grid,
.password-hero .ats-page-hero__grid,
.email-hero .ats-page-hero__grid,
.website-hero .ats-page-hero__grid,
.dns-hero .ats-page-hero__grid {
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.62fr);
}

.tools-hero .premium-hero__actions {
  margin-top: 1.65rem;
}

.tools-hero .premium-btn,
.password-hero .premium-btn,
.email-hero .premium-btn,
.website-hero .premium-btn,
.dns-hero .premium-btn {
  gap: 0.55rem;
}

.tools-trust-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1.2rem;
  margin: 1.6rem 0 0;
  padding: 0;
  list-style: none;
  color: rgba(229, 237, 248, 0.78);
  font-size: 0.88rem;
}

.tools-trust-list li {
  display: inline-flex;
  gap: 0.45rem;
  align-items: center;
}

.tools-trust-list i {
  color: var(--premium-cyan);
}

.toolbox-console__body {
  padding: clamp(1.1rem, 3vw, 1.6rem);
}

.toolbox-console__status,
.toolbox-console__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.toolbox-console__status > div > span {
  margin: 0 0 0.2rem;
  color: rgba(219, 234, 254, 0.62);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.toolbox-console__status strong {
  font-size: 1rem;
}

.tool-status {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 0.35rem;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 999px;
  padding: 0.38rem 0.62rem;
  color: #536176;
  background: #eef2f7;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

.tool-status--live {
  border-color: rgba(34, 183, 122, 0.27);
  color: #096b4a;
  background: #ddf8ec;
}

.toolbox-console .tool-status--live {
  border-color: rgba(84, 214, 255, 0.3);
  color: #d9f7ff;
  background: rgba(34, 183, 122, 0.15);
}

.toolbox-map {
  position: relative;
  min-height: 15rem;
  margin: 1.2rem 0;
  border: 1px solid rgba(84, 214, 255, 0.12);
  overflow: hidden;
  background:
    radial-gradient(circle at center, rgba(84, 214, 255, 0.12), transparent 33%),
    linear-gradient(rgba(84, 214, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.05) 1px, transparent 1px);
  background-size: auto, 1.5rem 1.5rem, 1.5rem 1.5rem;
}

.toolbox-map::before,
.toolbox-map::after {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 10rem;
  height: 10rem;
  border: 1px solid rgba(84, 214, 255, 0.16);
  border-radius: 50%;
  content: "";
  transform: translate(-50%, -50%);
}

.toolbox-map::after {
  width: 16rem;
  height: 16rem;
  border-style: dashed;
}

.toolbox-map__core,
.toolbox-map__node {
  position: absolute;
  z-index: 1;
  display: grid;
  width: 2.65rem;
  height: 2.65rem;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.3);
  color: var(--premium-cyan);
  background: #10223b;
  box-shadow: 0 0 1.4rem rgba(84, 214, 255, 0.18);
}

.toolbox-map__core {
  inset: 50% auto auto 50%;
  width: 4.3rem;
  height: 4.3rem;
  border-color: rgba(84, 214, 255, 0.62);
  border-radius: 50%;
  font-size: 1.4rem;
  transform: translate(-50%, -50%);
}

.toolbox-map__node--one { inset: 15% auto auto 15%; }
.toolbox-map__node--two { inset: 12% 14% auto auto; }
.toolbox-map__node--three { inset: auto auto 14% 16%; }
.toolbox-map__node--four { inset: auto 13% 17% auto; }

.toolbox-console__footer {
  align-items: stretch;
}

.toolbox-console__footer span {
  flex: 1;
  margin: 0;
  color: rgba(219, 234, 254, 0.62);
  font-size: 0.68rem;
  text-align: center;
}

.toolbox-console__footer strong {
  margin-bottom: 0.15rem;
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-size: 1.12rem;
}

.tools-catalogue {
  position: relative;
}

.tools-journeys {
  position: relative;
  color: #fff;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 10%, rgba(84, 214, 255, 0.12), transparent 23rem),
    radial-gradient(circle at 92% 90%, rgba(45, 108, 223, 0.2), transparent 27rem),
    #07111f;
}

.tools-journeys::before {
  position: absolute;
  inset: 0;
  opacity: 0.15;
  background-image: linear-gradient(rgba(84, 214, 255, 0.15) 1px, transparent 1px), linear-gradient(90deg, rgba(84, 214, 255, 0.15) 1px, transparent 1px);
  background-size: 4rem 4rem;
  content: "";
  pointer-events: none;
}

.tools-journeys .premium-container {
  position: relative;
}

.tools-journeys__heading {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.65fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: end;
  margin-bottom: clamp(2rem, 4vw, 3.4rem);
}

.tools-journeys__heading h2 {
  max-width: 18ch;
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.7rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.tools-journeys__heading > p {
  max-width: 42rem;
  margin: 0;
  color: rgba(229, 237, 248, 0.72);
  line-height: 1.7;
}

.tools-journey-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1rem;
}

.tools-journey {
  --journey-accent: #54d6ff;
  grid-column: span 2;
  border: 1px solid rgba(219, 234, 254, 0.14);
  padding: clamp(1.25rem, 2.3vw, 1.75rem);
  background: rgba(16, 34, 59, 0.72);
  box-shadow: 0 1.4rem 3.2rem rgba(0, 0, 0, 0.14);
  backdrop-filter: blur(12px);
}

.tools-journey--email,
.tools-journey--website {
  grid-column: span 3;
}

.tools-journey--website { --journey-accent: #78f2bd; }
.tools-journey--resilience { --journey-accent: #ffca6a; }
.tools-journey--ownership { --journey-accent: #9eaaff; }
.tools-journey--cloud { --journey-accent: #ef91ff; }

.tools-journey header {
  display: flex;
  gap: 1rem;
  align-items: center;
  min-height: 4rem;
}

.tools-journey__icon {
  display: grid;
  width: 3rem;
  height: 3rem;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--journey-accent) 42%, transparent);
  color: var(--journey-accent);
  background: color-mix(in srgb, var(--journey-accent) 9%, transparent);
  font-size: 1.1rem;
}

.tools-journey header p {
  margin: 0 0 0.15rem;
  color: var(--journey-accent);
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tools-journey h3 {
  margin: 0;
  color: #fff;
  font-size: 1.08rem;
}

.tools-journey ol {
  display: grid;
  gap: 0;
  margin: 1.35rem 0 0;
  padding: 0;
  list-style: none;
}

.tools-journey li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  border-top: 1px solid rgba(219, 234, 254, 0.11);
}

.tools-journey li > i {
  color: rgba(219, 234, 254, 0.32);
  font-size: 0.7rem;
}

.tools-journey a {
  display: flex;
  gap: 0.65rem;
  align-items: center;
  padding: 0.78rem 0;
  color: rgba(245, 249, 255, 0.86);
  font-size: 0.78rem;
  font-weight: 700;
}

.tools-journey a span {
  color: var(--journey-accent);
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.62rem;
}

.tools-journey a:hover {
  color: #fff;
}

.tools-journey a:focus-visible {
  outline: 3px solid var(--journey-accent);
  outline-offset: 3px;
}

.tool-finder {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.15rem 2rem;
  align-items: end;
  margin-bottom: 1.4rem;
  border: 1px solid rgba(45, 108, 223, 0.16);
  padding: clamp(1.2rem, 2.8vw, 2rem);
  background: #fff;
  box-shadow: 0 1.1rem 3rem rgba(7, 17, 31, 0.07);
}

.tool-finder__search {
  display: grid;
  gap: 0.55rem;
  color: var(--premium-ink);
  font-size: 0.78rem;
  font-weight: 800;
}

.tool-finder__input {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  min-height: 3.55rem;
  border: 1px solid #cbd7e6;
  background: #f8fbff;
}

.tool-finder__input > i {
  margin-left: 1rem;
  color: var(--premium-blue);
}

.tool-finder__input input {
  min-width: 0;
  border: 0;
  padding: 0.85rem;
  color: var(--premium-ink);
  outline: 0;
  background: transparent;
  font: inherit;
  font-weight: 550;
}

.tool-finder__input:focus-within {
  border-color: var(--premium-blue);
  box-shadow: 0 0 0 3px rgba(45, 108, 223, 0.13);
}

.tool-finder__input button,
.tool-finder__categories button {
  border: 0;
  color: #28435f;
  background: transparent;
  font: inherit;
  font-size: 0.75rem;
  font-weight: 800;
  cursor: pointer;
}

.tool-finder__input button {
  align-self: stretch;
  border-left: 1px solid #d9e3ee;
  padding: 0 1rem;
}

.tool-finder__categories {
  grid-column: 1 / -1;
  margin: 0;
  border: 0;
  padding: 0;
}

.tool-finder__categories legend {
  margin-bottom: 0.55rem;
  color: var(--premium-ink);
  font-size: 0.78rem;
  font-weight: 800;
}

.tool-finder__categories > div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.tool-finder__categories button {
  min-height: 2.55rem;
  border: 1px solid #d4dfeb;
  border-radius: 99rem;
  padding: 0.55rem 0.9rem;
  background: #f8fbff;
}

.tool-finder__categories button:hover {
  border-color: rgba(45, 108, 223, 0.5);
  color: var(--premium-blue);
}

.tool-finder__categories button[aria-pressed="true"] {
  border-color: #173969;
  color: #fff;
  background: #173969;
}

.tool-finder__input button:focus-visible,
.tool-finder__categories button:focus-visible,
.tool-finder-empty button:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.35);
  outline-offset: 3px;
}

.tool-finder__result {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  max-width: 19rem;
  align-items: baseline;
  gap: 0.45rem;
  justify-self: end;
  color: #607288;
  font-size: 0.72rem;
}

.tool-finder__result strong {
  color: var(--premium-blue);
  font-family: "IBM Plex Mono", monospace;
  font-size: 1.4rem;
}

.tool-finder__noscript {
  grid-column: 1 / -1;
  margin: 0;
  color: #65778b;
  font-size: 0.78rem;
}

.tool-card[hidden],
.tool-finder-empty[hidden],
[data-tool-clear][hidden] {
  display: none;
}

.tool-finder-empty {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1.2rem;
  align-items: center;
  border: 1px dashed rgba(45, 108, 223, 0.3);
  padding: clamp(1.5rem, 4vw, 2.6rem);
  background: #fff;
}

.tool-finder-empty__visual {
  position: relative;
  display: grid;
  width: 4.4rem;
  height: 4.4rem;
  place-items: center;
  border-radius: 50%;
  color: var(--premium-blue);
  background: #eaf2ff;
  font-size: 1.4rem;
}

.tool-finder-empty__visual b {
  position: absolute;
  inset: 0.35rem 0.3rem auto auto;
  display: grid;
  width: 1.35rem;
  height: 1.35rem;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #173969;
  font: 700 0.65rem/1 "IBM Plex Mono", monospace;
}

.tool-finder-empty h3 {
  margin: 0;
  color: var(--premium-ink);
}

.tool-finder-empty p {
  max-width: 58rem;
  margin: 0.45rem 0 1rem;
  color: #667489;
  line-height: 1.6;
}

.tool-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.tool-card {
  position: relative;
  display: flex;
  min-height: 19rem;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid rgba(15, 23, 42, 0.1);
  padding: clamp(1.25rem, 2.8vw, 1.75rem);
  overflow: hidden;
  background: rgba(255, 253, 248, 0.94);
  box-shadow: 0 1.1rem 3rem rgba(7, 17, 31, 0.07);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.tool-card::after {
  position: absolute;
  inset: auto -3rem -4rem auto;
  width: 9rem;
  height: 9rem;
  border: 1px solid rgba(45, 108, 223, 0.1);
  border-radius: 50%;
  content: "";
}

.tool-card--featured {
  grid-column: span 2;
  border-color: rgba(45, 108, 223, 0.32);
  color: #fff;
  background:
    radial-gradient(circle at 86% 18%, rgba(84, 214, 255, 0.24), transparent 24%),
    linear-gradient(145deg, #173969, #07111f);
}

.tool-card--featured::after {
  border-color: rgba(84, 214, 255, 0.18);
}

.tool-card:hover {
  border-color: rgba(45, 108, 223, 0.3);
  box-shadow: 0 1.4rem 3.5rem rgba(7, 17, 31, 0.11);
  transform: translateY(-0.2rem);
}

.tool-card__topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.tool-card__icon {
  display: grid;
  width: 3.2rem;
  height: 3.2rem;
  place-items: center;
  border: 1px solid rgba(45, 108, 223, 0.17);
  color: var(--premium-blue);
  background: #edf4ff;
  font-size: 1.25rem;
}

.tool-card--featured .tool-card__icon {
  border-color: rgba(84, 214, 255, 0.32);
  color: var(--premium-cyan);
  background: rgba(84, 214, 255, 0.09);
}

.tool-card__category {
  margin: 1.5rem 0 0.35rem;
  color: var(--premium-blue);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tool-card h3 {
  margin: 0;
  color: var(--premium-ink);
  font-size: clamp(1.25rem, 2vw, 1.55rem);
}

.tool-card p:not(.tool-card__category) {
  margin: 0.7rem 0 0;
  color: #667489;
  line-height: 1.65;
}

.tool-card--featured .tool-card__category,
.tool-card--featured .tool-card__link {
  color: var(--premium-cyan);
}

.tool-card--featured h3 {
  color: #fff;
}

.tool-card--featured p:not(.tool-card__category) {
  max-width: 34rem;
  color: rgba(229, 237, 248, 0.76);
}

.tool-card__link,
.tool-card__quiet {
  position: relative;
  z-index: 1;
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 0.45rem;
  margin-top: 1.4rem;
  color: var(--premium-blue);
  font-size: 0.88rem;
  font-weight: 800;
}

.tool-card__link:hover {
  gap: 0.7rem;
  color: #174b9d;
}

.tool-card__link:focus-visible,
.tools-official__links a:focus-visible,
.tools-breadcrumb a:focus-visible,
.password-method__notes a:focus-visible {
  border-radius: 0.2rem;
  outline: 3px solid rgba(84, 214, 255, 0.8);
  outline-offset: 4px;
}

.tool-card__quiet {
  color: #7b8797;
  font-weight: 650;
}

.tools-principles__grid,
.tools-official__grid,
.password-guidance__grid,
.password-method__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: start;
}

.tools-principles__copy {
  position: sticky;
  top: 7.5rem;
}

.tools-principles__copy .premium-btn {
  margin-top: 1rem;
}

.principle-steps,
.password-guidance__steps {
  border-top: 1px solid rgba(15, 23, 42, 0.12);
}

.principle-steps article,
.password-guidance__steps article {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: 1.1rem;
  border-bottom: 1px solid rgba(15, 23, 42, 0.12);
  padding: 1.35rem 0;
}

.principle-steps article > span,
.password-guidance__steps article > span {
  color: var(--premium-blue);
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.82rem;
  font-weight: 700;
}

.principle-steps h3,
.password-guidance__steps h3 {
  margin: 0;
  color: var(--premium-ink);
  font-size: 1.05rem;
}

.principle-steps p,
.password-guidance__steps p {
  margin: 0.35rem 0 0;
}

.tools-official__links {
  display: grid;
  gap: 0.8rem;
}

.tools-official__links a {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: center;
  border: 1px solid rgba(84, 214, 255, 0.18);
  padding: 1rem;
  color: #fff;
  background: rgba(255, 255, 255, 0.035);
}

.tools-official__links a:hover {
  border-color: rgba(84, 214, 255, 0.48);
  background: rgba(84, 214, 255, 0.07);
}

.tools-official__links > a > i:first-child {
  display: grid;
  width: 2.5rem;
  height: 2.5rem;
  place-items: center;
  color: var(--premium-cyan);
  background: rgba(84, 214, 255, 0.1);
}

.tools-official__links strong,
.tools-official__links small {
  display: block;
}

.tools-official__links small {
  margin-top: 0.18rem;
  color: rgba(219, 234, 254, 0.64);
  line-height: 1.4;
}

.tools-breadcrumb {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-bottom: 1.2rem;
  color: rgba(219, 234, 254, 0.64);
  font-size: 0.78rem;
}

.tools-breadcrumb a {
  color: var(--premium-cyan);
}

.privacy-console__body {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: center;
  padding: clamp(1.25rem, 4vw, 2rem);
}

.privacy-console__shield {
  display: grid;
  width: 4.5rem;
  height: 4.5rem;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.35);
  color: var(--premium-cyan);
  background: rgba(84, 214, 255, 0.08);
  font-size: 1.8rem;
}

.privacy-console__body > div > span {
  color: rgba(219, 234, 254, 0.6);
  font-size: 0.78rem;
}

.privacy-console__body > div > strong {
  margin-top: 0.15rem;
  font-size: 1.65rem;
}

.privacy-console__body ul {
  grid-column: 1 / -1;
  display: grid;
  gap: 0.65rem;
  margin: 0.6rem 0 0;
  padding: 1rem 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  list-style: none;
}

.privacy-console__body li {
  display: flex;
  gap: 0.55rem;
  align-items: center;
  color: rgba(229, 237, 248, 0.78);
  font-size: 0.86rem;
}

.privacy-console__body li i {
  color: #4de0a5;
}

.password-workbench {
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(19rem, 0.62fr);
  border: 1px solid rgba(15, 23, 42, 0.11);
  overflow: hidden;
  background: #fffdf8;
  box-shadow: 0 1.5rem 4rem rgba(7, 17, 31, 0.11);
}

.password-workbench__main {
  min-width: 0;
  padding: clamp(1.25rem, 4vw, 2.4rem);
}

.password-workbench__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
}

.password-workbench__heading h2 {
  max-width: 12ch;
  font-size: clamp(1.7rem, 3vw, 2.4rem);
}

.generator-tabs {
  display: inline-flex;
  flex-shrink: 0;
  gap: 0.22rem;
  border: 1px solid rgba(15, 23, 42, 0.1);
  padding: 0.22rem;
  background: #f0f3f7;
}

.generator-tabs button {
  min-height: 2.55rem;
  border: 0;
  padding: 0.55rem 0.8rem;
  color: #58677c;
  background: transparent;
  font-size: 0.78rem;
  font-weight: 800;
}

.generator-tabs button[aria-selected="true"] {
  color: #fff;
  background: var(--premium-ink);
  box-shadow: 0 0.45rem 1rem rgba(7, 17, 31, 0.18);
}

.generator-tabs button:focus-visible,
.tool-action:focus-visible,
.tool-retry:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.42);
  outline-offset: 3px;
}

.generated-secret {
  margin-top: clamp(1.5rem, 5vw, 3rem);
}

.generated-secret label {
  display: block;
  margin-bottom: 0.55rem;
  color: #334155;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.generated-secret textarea {
  width: 100%;
  min-height: 7rem;
  resize: vertical;
  border: 1px solid rgba(45, 108, 223, 0.25);
  border-radius: 0;
  padding: 1.1rem;
  color: #07111f;
  background:
    linear-gradient(rgba(45, 108, 223, 0.035) 1px, transparent 1px),
    #f8fbff;
  background-size: 100% 1.8rem;
  font-family: "IBM Plex Mono", monospace;
  font-size: clamp(0.95rem, 2vw, 1.12rem);
  font-weight: 600;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.generated-secret textarea:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.25);
  outline-offset: 2px;
}

.generated-secret__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 0.8rem;
}

.tool-action,
.tool-retry {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border: 1px solid rgba(15, 23, 42, 0.15);
  padding: 0.66rem 0.95rem;
  color: var(--premium-ink);
  background: #fff;
  font-size: 0.82rem;
  font-weight: 800;
}

.tool-action:hover,
.tool-retry:hover {
  border-color: var(--premium-blue);
  color: var(--premium-blue);
}

.tool-action--primary {
  border-color: var(--premium-blue);
  color: #fff;
  background: var(--premium-blue);
}

.tool-action--primary:hover {
  color: #fff;
  background: #1f57b7;
}

.tool-action:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.tool-live-status {
  min-height: 1.25rem;
  margin: 0.45rem 0 0;
  color: #08724d;
  font-size: 0.78rem;
}

.strength-panel {
  margin-top: 1.5rem;
  border-top: 1px solid rgba(15, 23, 42, 0.1);
  padding-top: 1.25rem;
}

.strength-panel > div {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: baseline;
}

.strength-panel span {
  color: #64748b;
  font-size: 0.78rem;
}

.strength-panel strong {
  color: #08724d;
  font-size: 0.88rem;
}

.strength-panel progress {
  display: block;
  width: 100%;
  height: 0.55rem;
  margin-top: 0.65rem;
  overflow: hidden;
  border: 0;
  background: #e6ebf1;
}

.strength-panel progress::-webkit-progress-bar { background: #e6ebf1; }
.strength-panel progress::-webkit-progress-value { background: linear-gradient(90deg, #2d6cdf, #22b77a); }
.strength-panel progress::-moz-progress-bar { background: linear-gradient(90deg, #2d6cdf, #22b77a); }

.strength-panel p {
  margin: 0.65rem 0 0;
  color: #6c788a;
  font-size: 0.76rem;
  line-height: 1.55;
}

.password-workbench__controls {
  border-left: 1px solid rgba(84, 214, 255, 0.16);
  padding: clamp(1.25rem, 3vw, 2rem);
  color: #dbeafe;
  background:
    linear-gradient(rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    #0b1728;
  background-size: 1.5rem 1.5rem;
}

.password-workbench__controls fieldset {
  min-width: 0;
  margin: 0;
  border: 0;
  padding: 0;
}

.password-workbench__controls legend {
  margin: 0 0 1.5rem;
  color: #fff;
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.15rem;
  font-weight: 700;
}

.tool-range-control > div:first-child,
.tool-range-control__limits,
.tool-select-control {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}

.tool-range-control label,
.tool-select-control > span {
  color: #dbeafe;
  font-size: 0.84rem;
  font-weight: 750;
}

.tool-range-control output {
  min-width: 2.4rem;
  color: var(--premium-cyan);
  font-family: "IBM Plex Mono", monospace;
  font-weight: 700;
  text-align: right;
}

.tool-range-control input[type="range"] {
  width: 100%;
  margin: 1rem 0 0.35rem;
  accent-color: var(--premium-cyan);
}

.tool-range-control__limits {
  color: rgba(219, 234, 254, 0.5);
  font-size: 0.68rem;
}

.tool-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
  margin-top: 1.45rem;
}

.tool-check-grid label {
  display: flex;
  min-height: 3rem;
  gap: 0.55rem;
  align-items: center;
  border: 1px solid rgba(84, 214, 255, 0.13);
  padding: 0.7rem;
  color: rgba(229, 237, 248, 0.78);
  background: rgba(255, 255, 255, 0.025);
  cursor: pointer;
  font-size: 0.76rem;
}

.tool-check-grid label:hover {
  border-color: rgba(84, 214, 255, 0.35);
}

.tool-check-grid input {
  width: 1.05rem;
  height: 1.05rem;
  flex: 0 0 auto;
  accent-color: var(--premium-cyan);
}

.tool-check-grid__wide {
  grid-column: 1 / -1;
}

.tool-select-control {
  align-items: flex-start;
  flex-direction: column;
  margin-top: 1.45rem;
}

.tool-select-control select {
  width: 100%;
  min-height: 2.8rem;
  border: 1px solid rgba(84, 214, 255, 0.2);
  padding: 0 0.75rem;
  color: #f8fbff;
  background: #13243b;
}

.wordlist-state {
  margin: 1rem 0 0;
  color: rgba(219, 234, 254, 0.6) !important;
  font-size: 0.72rem;
  line-height: 1.5 !important;
}

.tool-retry {
  margin-top: 0.65rem;
}

.password-method__notes {
  display: grid;
  gap: 0.75rem;
}

.password-method__notes p {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: 0.75rem;
  margin: 0;
  border-bottom: 1px solid rgba(84, 214, 255, 0.13);
  padding: 0 0 0.85rem;
}

.password-method__notes p i {
  color: var(--premium-cyan);
  font-size: 1.15rem;
}

.password-method__notes code {
  color: #bcefff;
}

.password-method__notes a {
  width: fit-content;
  color: var(--premium-cyan);
  font-weight: 750;
}

.mail-signal-console__body {
  padding: clamp(1.25rem, 4vw, 2rem);
  color: #dbeafe;
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #0b1728;
  background-size: 1.5rem 1.5rem;
}

.mail-signal-console__route {
  display: grid;
  grid-template-columns: 3.7rem 1fr 3.7rem 1fr 3.7rem;
  gap: 0.7rem;
  align-items: center;
  margin-bottom: 1.65rem;
}

.mail-signal-console__route span {
  display: grid;
  width: 3.7rem;
  height: 3.7rem;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.34);
  color: var(--premium-cyan);
  background: rgba(84, 214, 255, 0.08);
  font-size: 1.25rem;
  box-shadow: 0 0 1.3rem rgba(84, 214, 255, 0.1);
}

.mail-signal-console__route > i {
  color: rgba(84, 214, 255, 0.5);
  text-align: center;
}

.mail-signal-console dl {
  display: grid;
  gap: 0;
  margin: 0;
}

.mail-signal-console dl div {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgba(84, 214, 255, 0.12);
  padding: 0.8rem 0;
}

.mail-signal-console dt {
  color: rgba(219, 234, 254, 0.62);
  font-size: 0.72rem;
  font-weight: 600;
}

.mail-signal-console dd {
  margin: 0;
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.72rem;
  font-weight: 700;
  text-align: right;
}

.email-checker-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(20rem, 0.72fr);
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: stretch;
}

.email-checker-form-panel,
.email-readiness-preview,
.email-score-card {
  border: 1px solid rgba(15, 23, 42, 0.11);
  background: #fffdf8;
  box-shadow: 0 1.5rem 4rem rgba(7, 17, 31, 0.09);
}

.email-checker-form-panel {
  padding: clamp(1.35rem, 4vw, 2.5rem);
}

.email-checker-form-panel > h2 {
  max-width: 16ch;
  font-size: clamp(1.75rem, 3.2vw, 2.55rem);
}

.email-checker-form-panel > p:not(.premium-eyebrow) {
  max-width: 42rem;
}

.email-readiness-form {
  display: grid;
  gap: 1rem;
  margin-top: 1.7rem;
}

.tool-field {
  display: grid;
  gap: 0.5rem;
}

.tool-field > label {
  color: var(--premium-ink);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.025em;
}

.tool-field > label span {
  color: #738095;
  font-size: 0.7rem;
  font-weight: 650;
}

.tool-field input {
  width: 100%;
  min-height: 3.3rem;
  border: 1px solid rgba(15, 23, 42, 0.18);
  border-radius: 0;
  padding: 0.8rem 0.9rem;
  color: var(--premium-ink);
  background: #f8fbff;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.88rem;
}

.tool-field input:hover {
  border-color: rgba(45, 108, 223, 0.42);
}

.tool-field input:focus-visible,
.dkim-selector-help summary:focus-visible,
.email-checker-submit:focus-visible,
.email-scope a:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.34);
  outline-offset: 3px;
}

.tool-field--error input {
  border-color: #b42318;
}

.tool-field__help,
.tool-field__error {
  margin: 0;
  color: #69778a;
  font-size: 0.73rem;
  line-height: 1.5;
}

.tool-field__error,
.tool-field__error ul {
  margin: 0;
  padding: 0;
  color: #a01810;
  list-style: none;
}

.tool-form-alert {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.65rem;
  border: 1px solid rgba(180, 35, 24, 0.24);
  padding: 0.8rem;
  color: #8f1d16;
  background: #fff0ee;
  font-size: 0.8rem;
}

.tool-form-alert ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.dkim-selector-help {
  border: 1px solid rgba(15, 23, 42, 0.11);
  background: #f5f7fa;
}

.dkim-selector-help summary {
  min-height: 3rem;
  padding: 0.86rem 1rem;
  color: #344258;
  cursor: pointer;
  font-size: 0.79rem;
  font-weight: 800;
}

.dkim-selector-help summary i {
  margin-right: 0.45rem;
  color: var(--premium-blue);
}

.dkim-selector-help[open] .tool-field {
  border-top: 1px solid rgba(15, 23, 42, 0.1);
  padding: 1rem;
}

.email-checker-submit {
  width: fit-content;
  min-height: 3.2rem;
  border: 0;
  cursor: pointer;
}

.email-privacy-note {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.75rem;
  align-items: start;
  margin-top: 1.2rem;
  color: #667489;
}

.email-privacy-note > i {
  color: #078052;
  font-size: 1.1rem;
}

.email-privacy-note p {
  margin: 0;
  font-size: 0.74rem;
  line-height: 1.55;
}

.email-readiness-preview {
  display: flex;
  min-height: 32rem;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  color: #dbeafe;
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #0b1728;
  background-size: 1.5rem 1.5rem;
}

.email-readiness-preview h2 {
  margin-top: 1.5rem;
  color: #fff;
  font-size: clamp(1.45rem, 3vw, 2rem);
}

.email-readiness-preview > p {
  color: rgba(219, 234, 254, 0.67);
}

.email-readiness-preview ul {
  display: grid;
  gap: 0.7rem;
  margin: 1.2rem 0 0;
  padding: 0;
  list-style: none;
  font-size: 0.78rem;
}

.email-readiness-preview li {
  display: flex;
  gap: 0.55rem;
  align-items: center;
}

.email-readiness-preview li i {
  color: var(--premium-cyan);
}

.email-readiness-preview__radar {
  position: relative;
  display: grid;
  width: 10rem;
  height: 10rem;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.17);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(84, 214, 255, 0.12), transparent 66%);
}

.email-readiness-preview__radar::before,
.email-readiness-preview__radar::after {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 6.6rem;
  height: 6.6rem;
  border: 1px solid rgba(84, 214, 255, 0.15);
  border-radius: 50%;
  content: "";
  transform: translate(-50%, -50%);
}

.email-readiness-preview__radar::after {
  width: 3.2rem;
  height: 3.2rem;
}

.email-readiness-preview__radar span {
  position: relative;
  z-index: 2;
  display: grid;
  width: 3.2rem;
  height: 3.2rem;
  place-items: center;
  border-radius: 50%;
  color: #07111f;
  background: var(--premium-cyan);
  font-size: 1.2rem;
}

.email-readiness-preview__radar > i {
  position: absolute;
  z-index: 1;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: #4de0a5;
  box-shadow: 0 0 1rem rgba(77, 224, 165, 0.7);
}

.email-readiness-preview__radar > i:nth-of-type(1) { inset: 14% 24% auto auto; }
.email-readiness-preview__radar > i:nth-of-type(2) { inset: auto auto 19% 13%; }
.email-readiness-preview__radar > i:nth-of-type(3) { inset: 47% 4% auto auto; }

.email-score-card {
  height: 100%;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  color: #dbeafe;
  background:
    radial-gradient(circle at 82% 18%, rgba(34, 183, 122, 0.2), transparent 28%),
    linear-gradient(145deg, #173969, #07111f);
}

.email-score-card h2 {
  color: #fff;
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  overflow-wrap: anywhere;
}

.email-score-card > div:first-child > p:not(.premium-eyebrow) {
  color: rgba(219, 234, 254, 0.7);
}

.email-score {
  display: flex;
  gap: 0.5rem;
  align-items: baseline;
  margin-top: clamp(2rem, 8vw, 4rem);
}

.email-score strong {
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-size: clamp(4rem, 10vw, 6.5rem);
  line-height: 0.85;
  letter-spacing: -0.08em;
}

.email-score span {
  color: rgba(219, 234, 254, 0.58);
  font-size: 0.8rem;
  font-weight: 700;
}

.email-score-card progress {
  display: block;
  width: 100%;
  height: 0.65rem;
  margin: 1.5rem 0 0;
  border: 0;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.12);
}

.email-score-card progress::-webkit-progress-bar { background: rgba(255, 255, 255, 0.12); }
.email-score-card progress::-webkit-progress-value { background: linear-gradient(90deg, var(--premium-blue), #4de0a5); }
.email-score-card progress::-moz-progress-bar { background: linear-gradient(90deg, var(--premium-blue), #4de0a5); }

.email-score-card__footer {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: baseline;
  margin-top: 0.9rem;
}

.email-score-card__footer strong {
  color: #7ff0bf;
}

.email-score-card__footer span {
  color: rgba(219, 234, 254, 0.6);
  font-size: 0.7rem;
  text-align: right;
}

.email-partial-note {
  margin: 1.2rem 0 0;
  border-top: 1px solid rgba(84, 214, 255, 0.13);
  padding-top: 1rem;
  color: rgba(219, 234, 254, 0.7);
  font-size: 0.73rem;
}

.dkim-discovery-summary {
  display: grid;
  grid-template-columns: 2.65rem minmax(0, 1fr);
  gap: 0.8rem;
  align-items: start;
  margin-top: 1rem;
  border: 1px solid rgba(84, 214, 255, 0.14);
  padding: 0.85rem;
  background: rgba(255, 255, 255, 0.035);
}

.dkim-discovery-summary > i {
  display: grid;
  width: 2.65rem;
  height: 2.65rem;
  place-items: center;
  color: #07111f;
  background: var(--premium-cyan);
  font-size: 1rem;
}

.dkim-discovery-summary strong {
  color: #fff;
  font-size: 0.82rem;
}

.dkim-discovery-summary p {
  margin: 0.25rem 0 0;
  color: rgba(219, 234, 254, 0.63);
  font-size: 0.7rem;
}

.dkim-discovery-summary ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.7rem 0 0;
  padding: 0;
  list-style: none;
}

.dkim-discovery-summary li {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
  border: 1px solid rgba(77, 224, 165, 0.2);
  padding: 0.4rem 0.55rem;
  color: #bdf6df;
  background: rgba(77, 224, 165, 0.08);
  font-size: 0.63rem;
}

.dkim-discovery-summary li code {
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-weight: 800;
}

.dkim-discovery-summary .dkim-discovery-summary__caution {
  color: #f6d986;
}

.dkim-discovery-summary .dkim-discovery-summary__score-note {
  display: flex;
  gap: 0.35rem;
  align-items: flex-start;
  margin-top: 0.7rem;
  color: rgba(219, 234, 254, 0.52);
  font-size: 0.62rem;
}

.email-findings__header {
  max-width: 48rem;
}

.email-findings__list {
  display: grid;
  gap: 0.8rem;
  margin-top: 2rem;
}

.email-finding {
  display: grid;
  grid-template-columns: 8rem minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-left: 0.28rem solid #6b7a90;
  padding: clamp(1.1rem, 3vw, 1.6rem);
  background: #fffdf8;
}

.email-finding--pass { border-left-color: #139467; }
.email-finding--warning { border-left-color: #d48a0b; }
.email-finding--fail { border-left-color: #c33b32; }
.email-finding--info { border-left-color: var(--premium-blue); }

.email-finding__status {
  display: flex;
  gap: 0.45rem;
  align-items: flex-start;
  color: #637086;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.email-finding--pass .email-finding__status { color: #08724d; }
.email-finding--warning .email-finding__status { color: #966000; }
.email-finding--fail .email-finding__status { color: #a52820; }
.email-finding--info .email-finding__status { color: #245ebd; }

.email-finding__body h3 {
  margin: 0;
  color: var(--premium-ink);
  font-size: 1.15rem;
}

.email-finding__body > p {
  margin: 0.45rem 0 0;
}

.email-finding__evidence {
  display: grid;
  gap: 0.35rem;
  margin-top: 0.8rem;
}

.email-finding__evidence code {
  display: block;
  border: 1px solid rgba(45, 108, 223, 0.12);
  padding: 0.6rem 0.7rem;
  overflow-wrap: anywhere;
  color: #203753;
  background: #eff5fc;
  font-size: 0.72rem;
  line-height: 1.55;
}

.email-finding__action {
  color: #59677a;
  font-size: 0.78rem;
}

.email-finding__action i {
  margin-right: 0.28rem;
  color: var(--premium-blue);
}

.email-scope__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 5rem);
}

.email-scope__comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.email-scope__comparison article {
  border: 1px solid rgba(84, 214, 255, 0.16);
  padding: 1.2rem;
  background: rgba(255, 255, 255, 0.035);
}

.email-scope__comparison article > span {
  color: var(--premium-cyan);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.email-scope__comparison h3 {
  margin: 1rem 0 0;
  color: #fff;
  font-size: 1.12rem;
}

.email-scope__comparison p {
  margin: 0.5rem 0 0;
  color: rgba(219, 234, 254, 0.64);
  font-size: 0.78rem;
}

.email-scope__source {
  grid-column: 1 / -1;
  margin: 0;
  border-top: 1px solid rgba(84, 214, 255, 0.13);
  padding-top: 1rem;
  color: rgba(219, 234, 254, 0.58);
  font-size: 0.72rem;
}

.email-scope__source a {
  color: var(--premium-cyan);
}

.web-observer-console__body {
  padding: clamp(1.15rem, 3vw, 1.65rem);
  color: #dbeafe;
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #0b1728;
  background-size: 1.5rem 1.5rem;
}

.web-observer-console__address {
  display: flex;
  min-height: 2.65rem;
  gap: 0.55rem;
  align-items: center;
  border: 1px solid rgba(84, 214, 255, 0.16);
  padding: 0 0.8rem;
  overflow: hidden;
  color: rgba(219, 234, 254, 0.67);
  background: rgba(255, 255, 255, 0.035);
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.68rem;
  white-space: nowrap;
}

.web-observer-console__address i {
  color: #4de0a5;
}

.web-observer-console__screen {
  position: relative;
  display: grid;
  min-height: 10rem;
  place-items: center;
  margin-top: 0.8rem;
  border: 1px solid rgba(84, 214, 255, 0.12);
  overflow: hidden;
  background: radial-gradient(circle at center, rgba(45, 108, 223, 0.22), transparent 45%);
}

.web-observer-console__screen::before,
.web-observer-console__screen::after {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 8rem;
  height: 8rem;
  border: 1px solid rgba(84, 214, 255, 0.14);
  border-radius: 50%;
  content: "";
  transform: translate(-50%, -50%);
}

.web-observer-console__screen::after {
  width: 14rem;
  height: 14rem;
  border-style: dashed;
}

.web-observer-console__pulse {
  position: relative;
  z-index: 2;
  display: grid;
  width: 3.8rem;
  height: 3.8rem;
  place-items: center;
  border-radius: 50%;
  color: #07111f;
  background: var(--premium-cyan);
  box-shadow: 0 0 2rem rgba(84, 214, 255, 0.3);
  font-size: 1.35rem;
}

.web-observer-console__screen > i {
  position: absolute;
  z-index: 1;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #4de0a5;
  box-shadow: 0 0 0.85rem rgba(77, 224, 165, 0.75);
}

.web-observer-console__screen > i:nth-of-type(1) { inset: 18% auto auto 20%; }
.web-observer-console__screen > i:nth-of-type(2) { inset: 23% 14% auto auto; }
.web-observer-console__screen > i:nth-of-type(3) { inset: auto auto 16% 12%; }
.web-observer-console__screen > i:nth-of-type(4) { inset: auto 22% 20% auto; }

.web-observer-console ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 0.8rem 0 0;
  padding: 0;
  list-style: none;
}

.web-observer-console li {
  display: flex;
  gap: 0.35rem;
  align-items: flex-start;
  color: rgba(219, 234, 254, 0.63);
  font-size: 0.61rem;
  line-height: 1.45;
}

.web-observer-console li i {
  color: #4de0a5;
}

.website-checker-form-panel > h2 {
  max-width: 17ch;
}

.website-readiness-preview__window {
  width: min(100%, 18rem);
  border: 1px solid rgba(84, 214, 255, 0.2);
  background: rgba(255, 255, 255, 0.035);
}

.website-readiness-preview__window > span {
  display: flex;
  gap: 0.28rem;
  border-bottom: 1px solid rgba(84, 214, 255, 0.15);
  padding: 0.55rem;
}

.website-readiness-preview__window > span i {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: #ff6b6b;
}

.website-readiness-preview__window > span i:nth-child(2) { background: #ffd447; }
.website-readiness-preview__window > span i:nth-child(3) { background: #36cc87; }

.website-readiness-preview__window > div {
  display: grid;
  min-height: 9rem;
  place-items: center;
  color: var(--premium-cyan);
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px);
  background-size: 1.25rem 1.25rem;
  font-size: 2.5rem;
}

.website-score-card h2 {
  font-size: clamp(1.1rem, 2vw, 1.55rem);
  line-height: 1.35;
}

.website-scope__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.64fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 5rem);
}

.website-scope__grid > div:first-child > p:not(.premium-eyebrow) {
  color: rgba(219, 234, 254, 0.65);
}

.website-scope__lanes {
  display: grid;
  gap: 0.75rem;
}

.website-scope__lanes article {
  display: grid;
  grid-template-columns: 2.8rem minmax(0, 1fr);
  gap: 0.9rem;
  border: 1px solid rgba(84, 214, 255, 0.15);
  padding: 1rem;
  background: rgba(255, 255, 255, 0.03);
}

.website-scope__lanes article > i {
  display: grid;
  width: 2.8rem;
  height: 2.8rem;
  place-items: center;
  color: var(--premium-cyan);
  background: rgba(84, 214, 255, 0.09);
  font-size: 1.15rem;
}

.website-scope__lanes h3 {
  margin: 0;
  color: #fff;
  font-size: 1rem;
}

.website-scope__lanes p {
  margin: 0.35rem 0 0;
  color: rgba(219, 234, 254, 0.63);
  font-size: 0.78rem;
}

.website-scope__lanes a {
  display: inline-flex;
  gap: 0.4rem;
  align-items: center;
  margin-top: 0.65rem;
  color: var(--premium-cyan);
  font-size: 0.76rem;
  font-weight: 800;
}

.dns-map-console__body {
  position: relative;
  min-height: 20rem;
  overflow: hidden;
  background:
    radial-gradient(circle at center, rgba(84, 214, 255, 0.14), transparent 36%),
    linear-gradient(rgba(84, 214, 255, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.045) 1px, transparent 1px);
  background-size: auto, 1.5rem 1.5rem, 1.5rem 1.5rem;
}

.dns-map-console__body .dns-map-console__domain,
.dns-map-console__body .dns-map-console__record {
  position: absolute;
  z-index: 2;
  display: grid;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.3);
  color: #effaff;
  background: #10223b;
  box-shadow: 0 0 1.4rem rgba(84, 214, 255, 0.16);
}

.dns-map-console__domain {
  inset: 50% auto auto 50%;
  width: 10.5rem;
  min-height: 3.6rem;
  grid-auto-flow: column;
  gap: 0.55rem;
  padding: 0.8rem;
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.68rem;
  transform: translate(-50%, -50%);
}

.dns-map-console__domain i {
  color: var(--premium-cyan);
  font-size: 1.15rem;
}

.dns-map-console__record {
  width: 4.35rem;
  min-height: 3.75rem;
  gap: 0.1rem;
}

.dns-map-console__record b {
  color: var(--premium-cyan);
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.9rem;
}

.dns-map-console__record small {
  color: rgba(219, 234, 254, 0.58);
  font-size: 0.58rem;
}

.dns-map-console__record--a { inset: 12% auto auto 10%; }
.dns-map-console__record--mx { inset: 14% 9% auto auto; }
.dns-map-console__record--ns { inset: auto auto 11% 13%; }
.dns-map-console__record--txt { inset: auto 12% 10% auto; }

.dns-map-console__orbit {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 15rem;
  height: 15rem;
  border: 1px dashed rgba(84, 214, 255, 0.2);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.dns-map-console__orbit--two {
  width: 23rem;
  height: 11rem;
}

.dns-map-console__legend {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.6rem;
  padding: 0.85rem 1rem;
  border-top: 1px solid rgba(84, 214, 255, 0.14);
}

.dns-map-console__legend span {
  display: inline-flex;
  gap: 0.35rem;
  align-items: center;
  color: rgba(219, 234, 254, 0.62);
  font-size: 0.63rem;
}

.dns-map-console__legend i { color: #4de0a5; }

.dns-checker-form-panel h2 { max-width: 18ch; }

.dns-result-summary {
  align-self: start;
  border: 1px solid rgba(84, 214, 255, 0.18);
  padding: clamp(1.2rem, 3vw, 1.8rem);
  color: #dbeafe;
  background:
    linear-gradient(135deg, rgba(84, 214, 255, 0.08), transparent 45%),
    #0d192a;
  box-shadow: 0 1.6rem 4rem rgba(6, 15, 28, 0.16);
}

.dns-result-summary__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.dns-result-summary h2 {
  margin: 0;
  color: #fff;
  font-family: "IBM Plex Mono", monospace;
  font-size: clamp(1.1rem, 2.4vw, 1.55rem);
  overflow-wrap: anywhere;
}

.dns-result-summary__heading p:last-child {
  margin: 0.55rem 0 0;
  color: rgba(219, 234, 254, 0.63);
  font-size: 0.8rem;
}

.dns-result-summary__total {
  display: grid;
  min-width: 7rem;
  padding: 0.75rem;
  text-align: right;
}

.dns-result-summary__total strong {
  color: var(--premium-cyan);
  font-family: "IBM Plex Mono", monospace;
  font-size: 2.2rem;
  line-height: 1;
}

.dns-result-summary__total small {
  margin-top: 0.3rem;
  color: rgba(219, 234, 254, 0.55);
  font-size: 0.62rem;
}

.dns-result-summary__bands {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
  margin: 1.35rem 0;
}

.dns-result-summary__bands div {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.15rem 0.45rem;
  border: 1px solid rgba(84, 214, 255, 0.12);
  padding: 0.75rem;
  background: rgba(255, 255, 255, 0.025);
}

.dns-result-summary__bands i { grid-row: 1 / 3; color: var(--premium-cyan); }
.dns-result-summary__bands strong { color: #fff; font-family: "IBM Plex Mono", monospace; }
.dns-result-summary__bands span { color: rgba(219, 234, 254, 0.55); font-size: 0.63rem; }

.dnssec-signal {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: 0.8rem;
  align-items: start;
  border-left: 3px solid #93a4ba;
  padding: 0.85rem;
  background: rgba(255, 255, 255, 0.035);
}

.dnssec-signal > i {
  display: grid;
  width: 2.6rem;
  height: 2.6rem;
  place-items: center;
  color: #07111f;
  background: #93a4ba;
}

.dnssec-signal--present { border-color: #4de0a5; }
.dnssec-signal--present > i { background: #4de0a5; }
.dnssec-signal--partial { border-color: #ffd166; }
.dnssec-signal--partial > i { background: #ffd166; }
.dnssec-signal--unavailable { border-color: #ff8d8d; }
.dnssec-signal--unavailable > i { background: #ff8d8d; }

.dnssec-signal strong { color: #fff; font-size: 0.86rem; }
.dnssec-signal p { margin: 0.3rem 0 0; color: rgba(219, 234, 254, 0.6); font-size: 0.72rem; }

.dns-readiness-preview__visual {
  position: relative;
  width: min(100%, 18rem);
  min-height: 11rem;
  margin-bottom: 0.4rem;
  border: 1px solid rgba(84, 214, 255, 0.18);
  background:
    radial-gradient(circle at center, rgba(84, 214, 255, 0.13), transparent 34%),
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px);
  background-size: auto, 1.2rem 1.2rem, 1.2rem 1.2rem;
}

.dns-readiness-preview__visual > i {
  position: absolute;
  inset: 50% auto auto 50%;
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  border-radius: 50%;
  color: #07111f;
  background: var(--premium-cyan);
  transform: translate(-50%, -50%);
}

.dns-readiness-preview__visual span {
  position: absolute;
  display: grid;
  width: 2.7rem;
  height: 2.2rem;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.22);
  color: #c9f6ff;
  background: #10223b;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.65rem;
}

.dns-readiness-preview__visual span:nth-child(1) { inset: 12% auto auto 11%; }
.dns-readiness-preview__visual span:nth-child(2) { inset: 13% 10% auto auto; }
.dns-readiness-preview__visual span:nth-child(3) { inset: auto auto 12% 13%; }
.dns-readiness-preview__visual span:nth-child(4) { inset: auto 12% 11% auto; }

.dns-records-section { background: #f4f7fb; }

.dns-record-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.dns-record-card {
  position: relative;
  min-width: 0;
  border: 1px solid #dde5ef;
  border-top: 3px solid #8798ad;
  padding: clamp(1rem, 2vw, 1.35rem);
  background: #fff;
  box-shadow: 0 1rem 2.8rem rgba(15, 34, 60, 0.055);
}

.dns-record-card--present { border-top-color: #18a76f; }
.dns-record-card--unavailable { border-top-color: #d45c5c; }

.dns-record-card__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.dns-record-card__type {
  min-width: 3.8rem;
  padding: 0.42rem 0.58rem;
  color: #d7f8ff;
  background: #10223b;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.73rem;
  font-weight: 800;
  text-align: center;
}

.dns-record-card__status {
  display: inline-flex;
  gap: 0.35rem;
  align-items: center;
  color: #66768b;
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.dns-record-card--present .dns-record-card__status { color: #087752; }
.dns-record-card--unavailable .dns-record-card__status { color: #a73737; }

.dns-record-card h3 { margin: 1rem 0 0.4rem; color: #11243b; font-size: 1.05rem; }
.dns-record-card > p { margin: 0; color: #64748b; font-size: 0.8rem; }
.dns-record-card .dns-record-card__summary { margin-top: 0.65rem; color: #334155; font-weight: 650; }
.dns-record-card > small { display: block; margin-top: 0.9rem; color: #7b899b; font-size: 0.65rem; }

.dns-record-card__values {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.9rem;
}

.dns-record-card__values code {
  display: block;
  max-width: 100%;
  border-left: 2px solid rgba(45, 108, 223, 0.45);
  padding: 0.65rem 0.75rem;
  overflow-wrap: anywhere;
  color: #19304f;
  background: #f2f6fb;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.66rem;
  white-space: normal;
}

.dns-method__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.65fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 5rem);
}

.dns-method__grid > div:first-child > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.65); }
.dns-method__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
.dns-method__steps article { display: grid; grid-template-columns: auto 1fr; gap: 0.75rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 1rem; background: rgba(255, 255, 255, 0.025); }
.dns-method__steps article > span { color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; font-size: 0.72rem; }
.dns-method__steps h3 { margin: 0; color: #fff; font-size: 0.9rem; }
.dns-method__steps p { margin: 0.35rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.73rem; }
.dns-method__steps a { display: inline-flex; gap: 0.4rem; align-items: center; margin-top: 0.6rem; color: var(--premium-cyan); font-size: 0.72rem; font-weight: 800; }

/* Email header analyzer */
.header-trace-console {
  overflow: hidden;
}

.header-trace-console__body {
  position: relative;
  display: grid;
  gap: 0.7rem;
  min-height: 17rem;
  padding: 2rem 1.5rem;
  background:
    radial-gradient(circle at 82% 50%, rgba(77, 224, 165, 0.13), transparent 26%),
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #0a1728;
  background-size: auto, 100% 2.55rem, auto;
}

.header-trace-console__line {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 0.85rem;
  align-items: center;
  max-width: 78%;
  border-left: 2px solid rgba(84, 214, 255, 0.5);
  padding: 0.75rem 0.85rem;
  color: rgba(219, 234, 254, 0.66);
  background: rgba(255, 255, 255, 0.035);
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.62rem;
}

.header-trace-console__line:nth-child(2) { margin-left: 6%; }
.header-trace-console__line:nth-child(3) { margin-left: 12%; }
.header-trace-console__line b { color: #d8fbff; overflow-wrap: anywhere; }

.header-trace-console__seal {
  position: absolute;
  inset: 50% 1.25rem auto auto;
  display: grid;
  width: 5.4rem;
  height: 5.4rem;
  place-items: center;
  border: 1px solid rgba(77, 224, 165, 0.45);
  border-radius: 50%;
  color: #4de0a5;
  background: rgba(8, 28, 38, 0.88);
  box-shadow: 0 0 0 0.45rem rgba(77, 224, 165, 0.055);
  text-align: center;
  transform: translateY(-50%);
}

.header-trace-console__seal i { font-size: 1.3rem; }
.header-trace-console__seal small { margin-top: -1.15rem; font-family: "IBM Plex Mono", monospace; font-size: 0.48rem; line-height: 1.3; }
.header-trace-console__footer { display: flex; gap: 1rem; justify-content: space-between; padding: 0.9rem 1.2rem; border-top: 1px solid rgba(84, 214, 255, 0.12); color: rgba(219, 234, 254, 0.65); background: #081421; font-size: 0.64rem; }
.header-trace-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.header-trace-console__footer i { color: var(--premium-cyan); }

.header-analyzer-workbench-section { background: #f2f6fb; }

.header-analyzer-workbench {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.75fr);
  border: 1px solid #dce5ef;
  background: #fff;
  box-shadow: 0 1.6rem 4.5rem rgba(15, 34, 60, 0.09);
}

.header-input-panel {
  min-width: 0;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.header-input-panel__heading,
.header-report__heading,
.header-report-panel__heading,
.authentication-result__heading {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}

.header-input-panel h2,
.header-report h2,
.header-report-panel h3,
.header-findings h3 { margin: 0; color: #11243b; }
.header-input-panel h2 { max-width: 20ch; font-size: clamp(1.45rem, 3vw, 2rem); }
.header-input-panel__intro { max-width: 64ch; margin: 0.8rem 0 1.35rem; color: #617186; font-size: 0.82rem; }
.header-input-panel > label { display: block; margin-bottom: 0.5rem; color: #19304f; font-size: 0.78rem; font-weight: 800; }

.header-input-panel textarea {
  width: 100%;
  min-height: 20rem;
  resize: vertical;
  border: 1px solid #c9d5e4;
  border-radius: 0;
  padding: 1rem;
  color: #18304f;
  background: #f8fafc;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.72rem;
  line-height: 1.65;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.header-input-panel textarea:hover { border-color: #9fb2c9; }
.header-input-panel textarea:focus-visible { border-color: #2d6cdf; outline: 0; background: #fff; box-shadow: 0 0 0 0.22rem rgba(45, 108, 223, 0.14); }
.header-input-panel textarea[aria-invalid="true"] { border-color: #b43f3f; box-shadow: 0 0 0 0.18rem rgba(180, 63, 63, 0.1); }

.local-only-badge {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 0.4rem;
  align-items: center;
  padding: 0.45rem 0.65rem;
  color: #087752;
  background: #e8f8f1;
  font-size: 0.64rem;
  font-weight: 850;
  text-transform: uppercase;
}

.header-input-panel__meta {
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  margin-top: 0.45rem;
  color: #7a899d;
  font-size: 0.63rem;
}

.header-input-panel__meta span:last-child { flex: 0 0 auto; font-family: "IBM Plex Mono", monospace; font-variant-numeric: tabular-nums; }
.tool-field-error { min-height: 1.25rem; margin: 0.65rem 0; color: #a73737; font-size: 0.72rem; font-weight: 700; }
.header-input-panel__actions,
.header-report__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.header-empty-state {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  border-left: 1px solid rgba(84, 214, 255, 0.14);
  padding: clamp(1.25rem, 3vw, 2rem);
  color: #dbeafe;
  background:
    radial-gradient(circle at 50% 20%, rgba(84, 214, 255, 0.12), transparent 28%),
    #0d192a;
}

.header-empty-state[hidden] { display: none; }
.header-empty-state h2 { margin: 0; color: #fff; font-size: clamp(1.2rem, 2.3vw, 1.6rem); }
.header-empty-state ul { display: grid; gap: 0.85rem; margin: 1.3rem 0 0; padding: 0; list-style: none; }
.header-empty-state li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 0.7rem; align-items: start; color: rgba(219, 234, 254, 0.63); font-size: 0.72rem; }
.header-empty-state li > i { display: grid; width: 2rem; height: 2rem; place-items: center; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.08); }
.header-empty-state li strong { display: block; color: #fff; font-size: 0.76rem; }

.header-empty-state__visual {
  position: relative;
  min-height: 12rem;
  margin-bottom: 1.3rem;
}

.header-empty-state__envelope {
  position: absolute;
  inset: 50% auto auto 50%;
  display: grid;
  width: 5.4rem;
  height: 5.4rem;
  place-items: center;
  border: 1px solid rgba(84, 214, 255, 0.3);
  border-radius: 50%;
  color: #06111f;
  background: var(--premium-cyan);
  box-shadow: 0 0 0 0.75rem rgba(84, 214, 255, 0.055);
  transform: translate(-50%, -50%);
}

.header-empty-state__envelope i { font-size: 1.7rem; }
.header-empty-state__signal { position: absolute; min-width: 3.7rem; border: 1px solid rgba(84, 214, 255, 0.22); padding: 0.45rem 0.55rem; color: #c9f6ff; background: #10223b; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; text-align: center; }
.header-empty-state__signal--one { inset: 5% auto auto 5%; }
.header-empty-state__signal--two { inset: 11% 2% auto auto; }
.header-empty-state__signal--three { inset: auto auto 4% 12%; }

.header-report {
  scroll-margin-top: 5rem;
  margin-top: clamp(1.2rem, 3vw, 2rem);
  border: 1px solid #dce5ef;
  padding: clamp(1.25rem, 3vw, 2rem);
  background: #fff;
  box-shadow: 0 1.4rem 4rem rgba(15, 34, 60, 0.075);
}

.header-report[hidden] { display: none; }
.header-report__heading { align-items: center; }
.header-report__heading > div:first-child > p:last-child { margin: 0.45rem 0 0; color: #65758a; font-size: 0.76rem; }
.header-report__actions { justify-content: flex-end; }

.header-report__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 1.35rem 0;
  border: 1px solid #dce5ef;
  background: #f5f8fc;
}

.header-report__metrics article { min-width: 0; padding: 1rem; border-right: 1px solid #dce5ef; }
.header-report__metrics article:last-child { border-right: 0; }
.header-report__metrics span { display: block; color: #738399; font-size: 0.62rem; font-weight: 800; text-transform: uppercase; }
.header-report__metrics strong { display: block; margin-top: 0.25rem; overflow-wrap: anywhere; color: #173350; font-family: "IBM Plex Mono", monospace; font-size: clamp(1.05rem, 2vw, 1.5rem); }

.header-report__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.header-report-panel { min-width: 0; border: 1px solid #dce5ef; padding: clamp(1rem, 2vw, 1.35rem); background: #fff; }
.header-report-panel--selectors { background: linear-gradient(135deg, rgba(84, 214, 255, 0.07), transparent 52%), #fff; }
.header-report-panel--route { grid-column: 1 / -1; }
.header-report-panel__heading { justify-content: flex-start; }
.header-report-panel__icon { display: grid; flex: 0 0 auto; width: 2.5rem; height: 2.5rem; place-items: center; color: #0c5773; background: #dff6fb; }
.header-report-panel h3 { font-size: 1rem; }
.header-report-panel__note { margin: 1rem 0 0; border-left: 2px solid #e4aa32; padding-left: 0.75rem; color: #65758a; font-size: 0.68rem; }

.selector-result-list,
.authentication-result-grid { display: grid; gap: 0.65rem; margin-top: 1rem; }
.authentication-result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.selector-result { display: grid; grid-template-columns: minmax(5.5rem, 0.7fr) minmax(0, 1.2fr); gap: 0.25rem 0.65rem; border-left: 3px solid #2d6cdf; padding: 0.8rem; background: #f3f7fc; }
.selector-result code { align-self: start; overflow-wrap: anywhere; color: #103c73; font-size: 0.75rem; font-weight: 800; }
.selector-result strong { overflow-wrap: anywhere; color: #173350; font-size: 0.78rem; }
.selector-result span { grid-column: 1 / -1; color: #718198; font-size: 0.62rem; }

.authentication-result { min-width: 0; border-top: 3px solid #8fa0b4; padding: 0.8rem; background: #f6f8fb; }
.authentication-result--pass { border-top-color: #18a76f; }
.authentication-result--warning { border-top-color: #d29328; }
.authentication-result__heading strong { color: #173350; font-family: "IBM Plex Mono", monospace; font-size: 0.75rem; }
.authentication-result__heading span { padding: 0.18rem 0.38rem; color: #4f6075; background: #e3e9f0; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; font-weight: 800; text-transform: uppercase; }
.authentication-result--pass .authentication-result__heading span { color: #087752; background: #dcf5e9; }
.authentication-result--warning .authentication-result__heading span { color: #83570d; background: #fff0cc; }
.authentication-result p { margin: 0.65rem 0 0; overflow-wrap: anywhere; color: #40546d; font-family: "IBM Plex Mono", monospace; font-size: 0.6rem; line-height: 1.5; }
.authentication-result small { display: block; margin-top: 0.65rem; overflow-wrap: anywhere; color: #8290a2; font-size: 0.58rem; }

.identity-result-list { display: grid; gap: 0.6rem; margin: 1rem 0 0; }
.identity-result { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: 0.15rem 0.65rem; border-bottom: 1px solid #e5ebf2; padding-bottom: 0.6rem; }
.identity-result:last-child { border-bottom: 0; }
.identity-result dt { grid-row: 1 / 3; color: #53657b; font-size: 0.67rem; font-weight: 800; }
.identity-result dd { margin: 0; overflow-wrap: anywhere; color: #173350; font-family: "IBM Plex Mono", monospace; font-size: 0.7rem; font-weight: 800; }
.identity-result small { color: #8290a2; font-size: 0.58rem; }

.delivery-route { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 0; margin: 1.2rem 0 0; padding: 0; list-style: none; }
.delivery-route__hop { position: relative; display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 0.65rem; min-width: 0; padding: 0.8rem; }
.delivery-route__hop:not(:last-child)::after { position: absolute; inset: 1.8rem -0.35rem auto auto; width: 0.7rem; border-top: 1px dashed #8eb0c8; content: ""; }
.delivery-route__marker { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: 50%; color: #d9fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.62rem; }
.delivery-route__content { min-width: 0; }
.delivery-route__content strong { display: block; overflow-wrap: anywhere; color: #173350; font-family: "IBM Plex Mono", monospace; font-size: 0.66rem; }
.delivery-route__content span,
.delivery-route__content small,
.delivery-route__content em { display: block; margin-top: 0.25rem; overflow-wrap: anywhere; color: #748399; font-size: 0.58rem; font-style: normal; }
.delivery-route__content em { color: #0c6d75; font-weight: 800; }
.header-report-empty { grid-column: 1 / -1; margin: 0; padding: 0.9rem; color: #65758a; background: #f4f7fb; font-size: 0.7rem; }

.header-findings { display: grid; grid-template-columns: minmax(10rem, 0.35fr) minmax(0, 1fr); gap: 1.2rem; margin-top: 1rem; border: 1px solid #dce5ef; padding: clamp(1rem, 2vw, 1.35rem); }
.header-findings ul { display: grid; gap: 0.55rem; margin: 0; padding: 0; list-style: none; }
.header-finding { display: grid; grid-template-columns: 1.8rem minmax(0, 1fr); gap: 0.65rem; border-left: 3px solid #8fa0b4; padding: 0.7rem; background: #f6f8fb; }
.header-finding > i { color: #64748b; }
.header-finding--pass { border-left-color: #18a76f; }
.header-finding--pass > i { color: #087752; }
.header-finding--warning { border-left-color: #d29328; }
.header-finding--warning > i { color: #a16b10; }
.header-finding strong { color: #1d3652; font-size: 0.73rem; }
.header-finding p { margin: 0.25rem 0 0; color: #66768b; font-size: 0.66rem; }

.header-method__grid { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.header-method__grid > div:first-child > p:last-child { color: rgba(219, 234, 254, 0.65); }
.header-method__notes { display: grid; gap: 0.7rem; }
.header-method__notes article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.85rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 1rem; background: rgba(255, 255, 255, 0.025); }
.header-method__notes article > span { color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; font-size: 0.68rem; }
.header-method__notes h3 { margin: 0; color: #fff; font-size: 0.88rem; }
.header-method__notes p { margin: 0.35rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.7rem; }
.header-method__notes code { color: #d8fbff; font-size: 0.67rem; }

/* Downtime cost calculator */
.downtime-console { overflow: hidden; }
.downtime-console__body {
  position: relative;
  min-height: 18rem;
  padding: 1.5rem;
  background:
    radial-gradient(circle at 25% 42%, rgba(255, 209, 102, 0.12), transparent 24%),
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #091728;
  background-size: auto, 2rem 2rem, 2rem 2rem, auto;
}
.downtime-console__clock {
  display: grid;
  width: 8.5rem;
  min-height: 8.5rem;
  place-items: center;
  border: 1px solid rgba(255, 209, 102, 0.4);
  border-radius: 50%;
  color: #ffd166;
  background: rgba(21, 29, 42, 0.9);
  box-shadow: 0 0 0 0.65rem rgba(255, 209, 102, 0.045);
  text-align: center;
}
.downtime-console__clock i { font-size: 1.25rem; }
.downtime-console__clock strong { margin-top: -1.45rem; font-family: "IBM Plex Mono", monospace; font-size: 1.45rem; }
.downtime-console__clock small { margin-top: -1.45rem; color: rgba(219, 234, 254, 0.58); font-family: "IBM Plex Mono", monospace; font-size: 0.48rem; }
.downtime-console__flow {
  position: absolute;
  inset: 1.4rem 1.25rem auto auto;
  display: grid;
  gap: 0.55rem;
  width: 48%;
}
.downtime-console__flow span {
  display: grid;
  grid-template-columns: 1.8rem minmax(0, 1fr);
  gap: 0.55rem;
  align-items: center;
  border-left: 2px solid rgba(84, 214, 255, 0.5);
  padding: 0.62rem;
  color: rgba(219, 234, 254, 0.66);
  background: rgba(255, 255, 255, 0.035);
  font-size: 0.6rem;
}
.downtime-console__flow i { color: var(--premium-cyan); font-size: 0.9rem; }
.downtime-console__flow b { overflow-wrap: anywhere; }
.downtime-console__total {
  position: absolute;
  inset: auto 1.25rem 1.3rem 1.25rem;
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: space-between;
  border-top: 1px solid rgba(84, 214, 255, 0.16);
  padding-top: 0.85rem;
}
.downtime-console__total small { color: rgba(219, 234, 254, 0.55); font-family: "IBM Plex Mono", monospace; font-size: 0.52rem; }
.downtime-console__total strong { color: #fff; font-family: "IBM Plex Mono", monospace; font-size: 1.5rem; }
.downtime-console__footer { display: flex; gap: 1rem; justify-content: space-between; padding: 0.9rem 1.2rem; border-top: 1px solid rgba(84, 214, 255, 0.12); color: rgba(219, 234, 254, 0.65); background: #081421; font-size: 0.64rem; }
.downtime-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.downtime-console__footer i { color: var(--premium-cyan); }

.downtime-calculator-section { scroll-margin-top: 5rem; background: #f2f6fb; }
.downtime-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(20rem, 0.65fr);
  align-items: start;
  border: 1px solid #dce5ef;
  background: #fff;
  box-shadow: 0 1.6rem 4.5rem rgba(15, 34, 60, 0.09);
}
.downtime-form { min-width: 0; padding: clamp(1.25rem, 3vw, 2rem); }
.downtime-form__heading h2 { max-width: 19ch; margin: 0; color: #11243b; font-size: clamp(1.45rem, 3vw, 2rem); }
.downtime-form__heading > p:last-child { max-width: 68ch; margin: 0.7rem 0 0; color: #66768b; font-size: 0.78rem; }
.downtime-fieldset { min-width: 0; margin: 1.25rem 0 0; border: 0; border-top: 1px solid #dce5ef; padding: 1.1rem 0 0; }
.downtime-fieldset legend { display: flex; gap: 0.65rem; align-items: center; padding: 0 0.75rem 0 0; color: #183450; font-size: 0.78rem; font-weight: 850; }
.downtime-fieldset legend span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #d8fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.downtime-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.downtime-field-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.downtime-field { display: grid; min-width: 0; gap: 0.42rem; color: #27405c; font-size: 0.7rem; font-weight: 800; }
.downtime-field--wide { margin-top: 1.2rem; }
.downtime-field small { color: #7b899b; font-size: 0.6rem; font-weight: 500; line-height: 1.45; }
.downtime-field input,
.downtime-field select {
  width: 100%;
  min-height: 2.9rem;
  border: 1px solid #cbd7e5;
  border-radius: 0;
  padding: 0.7rem 0.78rem;
  color: #183450;
  background: #f8fafc;
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.74rem;
  font-weight: 750;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}
.downtime-field select { font-family: inherit; }
.downtime-field input:hover,
.downtime-field select:hover { border-color: #9fb2c9; }
.downtime-field input:focus-visible,
.downtime-field select:focus-visible { border-color: #2d6cdf; outline: 0; background: #fff; box-shadow: 0 0 0 0.2rem rgba(45, 108, 223, 0.13); }
.downtime-field input[aria-invalid="true"] { border-color: #b43f3f; box-shadow: 0 0 0 0.18rem rgba(180, 63, 63, 0.1); }
.downtime-money-input,
.downtime-percent-input,
.downtime-unit-input { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: stretch; }
.downtime-percent-input,
.downtime-unit-input { grid-template-columns: minmax(0, 1fr) auto; }
.downtime-money-input b,
.downtime-percent-input b,
.downtime-unit-input b { display: grid; min-width: 2.4rem; place-items: center; border: 1px solid #cbd7e5; color: #52657c; background: #edf2f7; font-family: "IBM Plex Mono", monospace; font-size: 0.62rem; }
.downtime-money-input input { border-left: 0; }
.downtime-percent-input input,
.downtime-unit-input input { border-right: 0; }
.downtime-form__error { min-height: 1.25rem; margin: 0.8rem 0 0; color: #a73737; font-size: 0.7rem; font-weight: 750; }
.downtime-form__actions,
.downtime-result__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; margin-top: 0.3rem; }

.downtime-result {
  position: sticky;
  top: 5.5rem;
  min-width: 0;
  border-left: 1px solid rgba(84, 214, 255, 0.15);
  padding: clamp(1.25rem, 3vw, 1.8rem);
  color: #dbeafe;
  background:
    radial-gradient(circle at 80% 10%, rgba(84, 214, 255, 0.12), transparent 28%),
    #0d192a;
}
.downtime-result__topline { display: flex; gap: 0.7rem; align-items: flex-start; justify-content: space-between; }
.downtime-result__topline h2 { margin: 0; overflow-wrap: anywhere; color: #fff; font-size: 1.1rem; }
.downtime-result__primary { margin-top: 1.2rem; border-left: 3px solid #ffd166; padding: 1rem; background: rgba(255, 255, 255, 0.035); }
.downtime-result__primary span,
.downtime-result__primary small { display: block; color: rgba(219, 234, 254, 0.58); font-size: 0.62rem; }
.downtime-result__primary strong { display: block; margin: 0.4rem 0; overflow-wrap: anywhere; color: #fff; font-family: "IBM Plex Mono", monospace; font-size: clamp(1.75rem, 4vw, 2.6rem); line-height: 1; }
.downtime-result__metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin-top: 0.75rem; }
.downtime-result__metrics article { min-width: 0; border: 1px solid rgba(84, 214, 255, 0.13); padding: 0.75rem; background: rgba(255, 255, 255, 0.025); }
.downtime-result__metrics span { display: block; color: rgba(219, 234, 254, 0.55); font-size: 0.56rem; }
.downtime-result__metrics strong { display: block; margin-top: 0.28rem; overflow-wrap: anywhere; color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; font-size: 1rem; }
.downtime-result__breakdown { margin-top: 1.2rem; }
.downtime-result__breakdown h3 { margin: 0 0 0.8rem; color: #fff; font-size: 0.8rem; }
.downtime-result__breakdown > div { margin-top: 0.65rem; }
.downtime-result__breakdown label { display: flex; gap: 0.7rem; justify-content: space-between; color: rgba(219, 234, 254, 0.64); font-size: 0.61rem; }
.downtime-result__breakdown label strong { color: #fff; font-family: "IBM Plex Mono", monospace; }
.downtime-result__breakdown progress { width: 100%; height: 0.4rem; margin-top: 0.35rem; border: 0; background: rgba(255, 255, 255, 0.08); accent-color: var(--premium-cyan); }
.downtime-result__breakdown progress::-webkit-progress-bar { background: rgba(255, 255, 255, 0.08); }
.downtime-result__breakdown progress::-webkit-progress-value { background: var(--premium-cyan); }
.downtime-result__breakdown progress::-moz-progress-bar { background: var(--premium-cyan); }
.downtime-result__actions .tool-action { color: #dbeafe; border-color: rgba(84, 214, 255, 0.18); background: rgba(255, 255, 255, 0.035); }
.downtime-result__actions .tool-action:hover { border-color: rgba(84, 214, 255, 0.42); background: rgba(84, 214, 255, 0.08); }
.downtime-result .tool-live-status { color: rgba(219, 234, 254, 0.62); }

.downtime-method { background: #fff; }
.downtime-method__grid { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.downtime-method__grid h2,
.downtime-faq h2,
.downtime-next-step h2 { margin: 0; color: #11243b; }
.downtime-method__grid > div:first-child > p:last-child { color: #66768b; }
.downtime-formula { display: grid; gap: 0.55rem; border: 1px solid #dce5ef; padding: clamp(1rem, 3vw, 1.6rem); background: linear-gradient(135deg, #f5f9fd, #fff); box-shadow: 0 1rem 3rem rgba(15, 34, 60, 0.06); }
.downtime-formula > div { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: center; }
.downtime-formula span { border: 1px solid #d4e0ec; padding: 0.55rem 0.7rem; color: #24405f; background: #fff; font-size: 0.66rem; font-weight: 750; }
.downtime-formula i { color: #2d6cdf; font-size: 0.75rem; }
.downtime-formula b { color: #0c5773; font-family: "IBM Plex Mono", monospace; font-size: 1.35rem; }
.downtime-formula > p { margin: 0.35rem 0 0; border-top: 1px solid #dce5ef; padding-top: 0.75rem; color: #66768b; font-size: 0.66rem; }

.downtime-boundaries__grid,
.downtime-faq__grid,
.downtime-next-step__grid { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.downtime-boundaries__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.downtime-boundaries__notes article { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 0.9rem; background: rgba(255, 255, 255, 0.025); }
.downtime-boundaries__notes article > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.08); }
.downtime-boundaries__notes h3 { margin: 0; color: #fff; font-size: 0.82rem; }
.downtime-boundaries__notes p { margin: 0.3rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.67rem; }

.downtime-faq__list { border-top: 1px solid #dce5ef; }
.downtime-faq details { border-bottom: 1px solid #dce5ef; }
.downtime-faq summary { position: relative; padding: 1rem 2rem 1rem 0; color: #173350; font-size: 0.8rem; font-weight: 800; cursor: pointer; }
.downtime-faq summary::marker { color: #2d6cdf; }
.downtime-faq summary:focus-visible { outline: 2px solid #2d6cdf; outline-offset: 0.2rem; }
.downtime-faq details p { max-width: 68ch; margin: 0; padding: 0 0 1rem; color: #66768b; font-size: 0.72rem; }

.downtime-next-step { background: #eef4fa; }
.downtime-next-step__grid { align-items: center; }
.downtime-next-step__grid > div:first-child > p:last-child { color: #65758a; }
.downtime-next-step__links { display: grid; gap: 0.7rem; }
.downtime-next-step__links a { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; border: 1px solid #d7e2ed; padding: 0.85rem; color: #173350; background: #fff; transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease; }
.downtime-next-step__links a:hover { border-color: #8fb5d1; color: #173350; transform: translateY(-2px); box-shadow: 0 0.8rem 2rem rgba(15, 34, 60, 0.07); }
.downtime-next-step__links a:focus-visible { outline: 2px solid #2d6cdf; outline-offset: 0.2rem; }
.downtime-next-step__links a > i:first-child { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; color: #0c5773; background: #dff6fb; }
.downtime-next-step__links strong,
.downtime-next-step__links small { display: block; }
.downtime-next-step__links strong { font-size: 0.78rem; }
.downtime-next-step__links small { margin-top: 0.2rem; color: #758499; font-size: 0.62rem; }

/* Business technology continuity planner */
.continuity-console { overflow: hidden; }
.continuity-console__body {
  position: relative;
  min-height: 18rem;
  padding: 1.4rem;
  background:
    radial-gradient(circle at center, rgba(84, 214, 255, 0.12), transparent 30%),
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #091728;
  background-size: auto, 2rem 2rem, 2rem 2rem, auto;
}
.continuity-console__incident,
.continuity-console__recover { position: absolute; display: grid; gap: 0.25rem; place-items: center; width: 5.7rem; height: 5.7rem; border: 1px solid rgba(255, 209, 102, 0.4); border-radius: 50%; color: #ffd166; background: #101d2f; text-align: center; }
.continuity-console__incident { inset: 50% auto auto 1.2rem; transform: translateY(-50%); }
.continuity-console__recover { inset: 50% 1.2rem auto auto; border-color: rgba(77, 224, 165, 0.4); color: #4de0a5; transform: translateY(-50%); }
.continuity-console__incident i,
.continuity-console__recover i { font-size: 1.2rem; }
.continuity-console__incident b,
.continuity-console__recover b { max-width: 8ch; font-size: 0.56rem; }
.continuity-console__path { position: absolute; inset: 1.2rem 7.4rem; display: grid; gap: 0.45rem; align-content: center; }
.continuity-console__path::before { position: absolute; inset: 50% -1rem auto -1rem; border-top: 1px dashed rgba(84, 214, 255, 0.35); content: ""; }
.continuity-console__path span { position: relative; z-index: 1; display: grid; grid-template-columns: 1.5rem 1.7rem minmax(0, 1fr); gap: 0.35rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.18); padding: 0.5rem; color: #dbeafe; background: #10223b; font-size: 0.54rem; }
.continuity-console__path small { color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; }
.continuity-console__path i { color: #4de0a5; }
.continuity-console__footer { display: flex; gap: 1rem; justify-content: space-between; padding: 0.9rem 1.2rem; border-top: 1px solid rgba(84, 214, 255, 0.12); color: rgba(219, 234, 254, 0.65); background: #081421; font-size: 0.64rem; }
.continuity-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.continuity-console__footer i { color: var(--premium-cyan); }

.continuity-builder-section { scroll-margin-top: 5rem; background: #f2f6fb; }
.continuity-builder { display: grid; grid-template-columns: minmax(0, 1.42fr) minmax(18rem, 0.58fr); align-items: start; border: 1px solid #dce5ef; background: #fff; box-shadow: 0 1.6rem 4.5rem rgba(15, 34, 60, 0.09); }
.continuity-form { min-width: 0; padding: clamp(1.25rem, 3vw, 2rem); }
.continuity-form__heading h2,
.continuity-report h2,
.continuity-report-panel h3,
.continuity-boundaries h2,
.continuity-faq h2 { margin: 0; }
.continuity-form__heading h2 { max-width: 23ch; color: #11243b; font-size: clamp(1.45rem, 3vw, 2rem); }
.continuity-form__heading > p:last-child { max-width: 72ch; margin: 0.7rem 0 0; color: #65758a; font-size: 0.76rem; }
.continuity-stage { min-width: 0; margin: 1.45rem 0 0; border: 0; border-top: 1px solid #dce5ef; padding: 1.2rem 0 0; }
.continuity-stage legend { display: flex; gap: 0.65rem; align-items: center; padding: 0 0.8rem 0 0; color: #173350; font-size: 0.8rem; font-weight: 850; }
.continuity-stage legend span { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; color: #d8fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.continuity-stage__intro { margin: 0 0 0.85rem; color: #738399; font-size: 0.68rem; }
.continuity-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.continuity-field { display: grid; min-width: 0; gap: 0.4rem; color: #27405c; font-size: 0.69rem; font-weight: 800; }
.continuity-field--wide { grid-column: 1 / -1; }
.continuity-field small { color: #7b899b; font-size: 0.59rem; font-weight: 500; }
.continuity-field input,
.continuity-field select,
.continuity-field textarea,
.continuity-service input,
.continuity-service select,
.continuity-check-grid select { width: 100%; min-height: 2.8rem; border: 1px solid #cbd7e5; border-radius: 0; padding: 0.65rem 0.75rem; color: #183450; background: #f8fafc; font-size: 0.69rem; transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease; }
.continuity-field textarea { min-height: 5rem; resize: vertical; }
.continuity-field input:focus-visible,
.continuity-field select:focus-visible,
.continuity-field textarea:focus-visible,
.continuity-service input:focus-visible,
.continuity-service select:focus-visible,
.continuity-check-grid select:focus-visible { border-color: #2d6cdf; outline: 0; background: #fff; box-shadow: 0 0 0 0.2rem rgba(45, 108, 223, 0.13); }

.continuity-service-list { display: grid; gap: 0.8rem; }
.continuity-service { min-width: 0; border: 1px solid #dce5ef; padding: 0.9rem; background: #fff; transition: opacity 180ms ease, background 180ms ease; }
.continuity-service[data-service-disabled="true"] { opacity: 0.58; background: #f4f6f9; }
.continuity-service__toggle { display: flex; align-items: center; color: #173350; cursor: pointer; }
.continuity-service__toggle input { width: 1rem; min-height: 1rem; margin: 0 0.65rem 0 0; accent-color: #2d6cdf; }
.continuity-service__toggle span { display: inline-flex; gap: 0.55rem; align-items: center; }
.continuity-service__toggle i { display: grid; width: 2rem; height: 2rem; place-items: center; color: #0c5773; background: #dff6fb; }
.continuity-service__toggle strong { font-size: 0.76rem; }
.continuity-service__fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.65rem; margin-top: 0.75rem; }
.continuity-service__fields label,
.continuity-check-grid label { display: grid; min-width: 0; gap: 0.35rem; color: #53657b; font-size: 0.58rem; font-weight: 800; }
.continuity-service__wide { grid-column: span 2; }
.continuity-service input,
.continuity-service select { min-height: 2.55rem; padding: 0.55rem; font-size: 0.62rem; }
.continuity-service input:disabled,
.continuity-service select:disabled { cursor: not-allowed; }
.continuity-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.continuity-check-grid label { border-left: 2px solid #b8c6d5; padding: 0.7rem; background: #f6f8fb; }
.continuity-check-grid select { min-height: 2.5rem; padding: 0.5rem; background: #fff; font-size: 0.64rem; }
.continuity-form__error { min-height: 1.25rem; margin: 0.8rem 0 0; color: #a73737; font-size: 0.7rem; font-weight: 750; }
.continuity-form__actions,
.continuity-report__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.continuity-privacy-panel { position: sticky; top: 5.5rem; min-width: 0; padding: clamp(1.25rem, 3vw, 1.8rem); color: #dbeafe; background: radial-gradient(circle at 65% 10%, rgba(84, 214, 255, 0.12), transparent 28%), #0d192a; }
.continuity-privacy-panel__icon { display: grid; width: 3.4rem; height: 3.4rem; place-items: center; margin-bottom: 1rem; color: #06111f; background: var(--premium-cyan); font-size: 1.25rem; }
.continuity-privacy-panel h2 { margin: 0; color: #fff; font-size: clamp(1.2rem, 2.3vw, 1.55rem); }
.continuity-privacy-panel > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.62); font-size: 0.7rem; }
.continuity-privacy-panel__avoid { margin-top: 1rem; border-left: 3px solid #ffd166; padding: 0.9rem; background: rgba(255, 255, 255, 0.035); }
.continuity-privacy-panel__avoid strong { color: #fff; font-size: 0.72rem; }
.continuity-privacy-panel__avoid ul { display: grid; gap: 0.35rem; margin: 0.55rem 0 0; padding-left: 1rem; color: rgba(219, 234, 254, 0.62); font-size: 0.64rem; }
.continuity-privacy-panel__visual { display: grid; grid-template-columns: 2.5rem 1fr 2.5rem; gap: 0.7rem; align-items: center; margin-top: 1.2rem; color: var(--premium-cyan); }
.continuity-privacy-panel__visual::before,
.continuity-privacy-panel__visual::after { grid-row: 1; border-top: 1px dashed rgba(84, 214, 255, 0.28); content: ""; }
.continuity-privacy-panel__visual i,
.continuity-privacy-panel__visual span { position: relative; z-index: 1; grid-row: 1; display: grid; height: 2.5rem; place-items: center; border: 1px solid rgba(84, 214, 255, 0.2); background: #10223b; }
.continuity-privacy-panel__visual i:first-child { grid-column: 1; }
.continuity-privacy-panel__visual span { grid-column: 2; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.continuity-privacy-panel__visual i:last-child { grid-column: 3; }

.continuity-report { scroll-margin-top: 5rem; margin-top: 1.2rem; border: 1px solid #dce5ef; padding: clamp(1.25rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.4rem 4rem rgba(15, 34, 60, 0.075); }
.continuity-report[hidden] { display: none; }
.continuity-report__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.continuity-report__heading h2 { color: #11243b; }
.continuity-report__heading > div:first-child > p:last-child { margin: 0.4rem 0 0; color: #65758a; font-size: 0.7rem; }
.continuity-report__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 1.2rem 0; border: 1px solid #dce5ef; background: #f5f8fc; }
.continuity-report__metrics article { min-width: 0; border-right: 1px solid #dce5ef; padding: 0.9rem; }
.continuity-report__metrics article:last-child { border-right: 0; }
.continuity-report__metrics span { display: block; color: #738399; font-size: 0.58rem; font-weight: 800; text-transform: uppercase; }
.continuity-report__metrics strong { display: block; margin-top: 0.25rem; color: #173350; font-family: "IBM Plex Mono", monospace; font-size: 1.25rem; }
.continuity-report__grid { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr); gap: 1rem; }
.continuity-report-panel { min-width: 0; border: 1px solid #dce5ef; padding: 1rem; }
.continuity-report-panel--sequence { grid-row: span 2; }
.continuity-report-panel__heading { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; align-items: start; }
.continuity-report-panel__heading > span { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #d8fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.continuity-report-panel h3 { color: #173350; font-size: 0.95rem; }
.continuity-report-panel ol,
.continuity-report-panel ul { display: grid; gap: 0.55rem; margin: 0.9rem 0 0; padding: 0; list-style: none; }
.continuity-action-item { display: grid; grid-template-columns: 1.7rem minmax(0, 1fr); gap: 0.55rem; border-left: 2px solid #8fb5d1; padding: 0.6rem; background: #f5f8fb; }
.continuity-action-item > span { color: #2d6cdf; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.continuity-action-item p { margin: 0; color: #52657c; font-size: 0.64rem; }
.continuity-recovery-item { display: grid; grid-template-columns: 2.1rem minmax(0, 1fr); gap: 0.65rem; padding: 0.75rem; background: #f4f7fb; }
.continuity-recovery-item__marker { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; border-radius: 50%; color: #06111f; background: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.continuity-recovery-item__heading { display: flex; gap: 0.5rem; align-items: flex-start; justify-content: space-between; }
.continuity-recovery-item__heading h4 { margin: 0; color: #173350; font-size: 0.74rem; }
.continuity-recovery-item__heading > span { flex: 0 0 auto; color: #0c6d75; font-family: "IBM Plex Mono", monospace; font-size: 0.54rem; font-weight: 800; }
.continuity-recovery-item dl { display: grid; gap: 0.35rem; margin: 0.6rem 0 0; }
.continuity-recovery-item dl > div { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: 0.45rem; }
.continuity-recovery-item dt { color: #718198; font-size: 0.56rem; font-weight: 800; }
.continuity-recovery-item dd { margin: 0; overflow-wrap: anywhere; color: #40546d; font-size: 0.59rem; }
.continuity-gap { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: 0.5rem; border-left: 2px solid #d29328; padding: 0.6rem; color: #52657c; background: #fff8e8; font-size: 0.63rem; }
.continuity-gap i { color: #a16b10; }
.continuity-gap--clear { border-left-color: #18a76f; background: #ecf8f2; }
.continuity-gap--clear i { color: #087752; }
.continuity-report__boundary { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: 0.6rem; margin: 1rem 0 0; border-left: 3px solid #2d6cdf; padding: 0.75rem; color: #566980; background: #eef4fb; font-size: 0.65rem; }
.continuity-report__boundary i { color: #2d6cdf; }

.continuity-boundaries__grid,
.continuity-faq__grid { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.continuity-boundaries__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.continuity-boundaries__notes article { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 0.9rem; background: rgba(255, 255, 255, 0.025); }
.continuity-boundaries__notes article > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.08); }
.continuity-boundaries__notes h3 { margin: 0; color: #fff; font-size: 0.82rem; }
.continuity-boundaries__notes p { margin: 0.3rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.66rem; }
.continuity-boundaries__notes a { display: inline-flex; gap: 0.35rem; align-items: center; margin-top: 0.55rem; color: var(--premium-cyan); font-size: 0.62rem; font-weight: 800; }
.continuity-faq__list { border-top: 1px solid #dce5ef; }
.continuity-faq details { border-bottom: 1px solid #dce5ef; }
.continuity-faq summary { padding: 1rem 0; color: #173350; font-size: 0.8rem; font-weight: 800; cursor: pointer; }
.continuity-faq summary::marker { color: #2d6cdf; }
.continuity-faq summary:focus-visible { outline: 2px solid #2d6cdf; outline-offset: 0.2rem; }
.continuity-faq details p { max-width: 68ch; margin: 0; padding: 0 0 1rem; color: #66768b; font-size: 0.72rem; }

/* Website brief builder */
.brief-hero { overflow: hidden; }
.brief-console { min-height: 21rem; color: #dbeafe; background: #0b1727; }
.brief-console__canvas { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 2.5rem 7.2rem; gap: 0.8rem; align-items: center; min-height: 16.5rem; padding: 1.4rem; background-image: linear-gradient(rgba(84, 214, 255, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(84, 214, 255, 0.05) 1px, transparent 1px); background-size: 2.1rem 2.1rem; }
.brief-console__document { display: grid; gap: 0.55rem; border: 1px solid rgba(84, 214, 255, 0.22); padding: 0.8rem; background: #10223b; box-shadow: 0 1rem 2.5rem rgba(2, 8, 18, 0.28); transform: rotate(-1.5deg); }
.brief-console__document::before { width: 38%; border-top: 3px solid #ffd166; content: ""; }
.brief-console__document span { display: grid; grid-template-columns: 1.6rem minmax(0, 1fr); gap: 0.5rem; align-items: center; border-bottom: 1px solid rgba(219, 234, 254, 0.08); padding: 0.45rem 0; color: rgba(219, 234, 254, 0.72); font-size: 0.62rem; }
.brief-console__document span:last-child { border-bottom: 0; }
.brief-console__document i { color: var(--premium-cyan); }
.brief-console__connector { color: rgba(84, 214, 255, 0.55); text-align: center; }
.brief-console__result { display: grid; gap: 0.45rem; place-items: center; min-height: 7.2rem; border: 1px solid rgba(77, 224, 165, 0.32); border-radius: 50%; padding: 0.8rem; color: #4de0a5; background: rgba(77, 224, 165, 0.05); text-align: center; }
.brief-console__result i { font-size: 1.3rem; }
.brief-console__result strong { max-width: 8ch; color: #eafff6; font-size: 0.68rem; }
.brief-console__result small { font-family: "IBM Plex Mono", monospace; font-size: 0.46rem; }
.brief-console__footer { display: flex; gap: 1rem; justify-content: space-between; padding: 0.9rem 1.2rem; border-top: 1px solid rgba(84, 214, 255, 0.12); color: rgba(219, 234, 254, 0.65); background: #081421; font-size: 0.64rem; }
.brief-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.brief-console__footer i { color: var(--premium-cyan); }

.brief-builder-section { scroll-margin-top: 5rem; background: #f2f6fb; }
.brief-builder { display: grid; grid-template-columns: minmax(0, 1.43fr) minmax(18rem, 0.57fr); align-items: start; border: 1px solid #dce5ef; background: #fff; box-shadow: 0 1.6rem 4.5rem rgba(15, 34, 60, 0.09); }
.brief-form { min-width: 0; padding: clamp(1.25rem, 3vw, 2rem); }
.brief-form__heading h2, .brief-report h2, .brief-report-panel h3, .brief-boundaries h2, .brief-faq h2 { margin: 0; }
.brief-form__heading h2 { max-width: 27ch; color: #11243b; font-size: clamp(1.45rem, 3vw, 2rem); }
.brief-form__heading > p:last-child { max-width: 72ch; margin: 0.7rem 0 0; color: #65758a; font-size: 0.76rem; }
.brief-stage { min-width: 0; margin: 1.45rem 0 0; border: 0; border-top: 1px solid #dce5ef; padding: 1.2rem 0 0; }
.brief-stage legend { display: flex; gap: 0.65rem; align-items: center; padding: 0 0.8rem 0 0; color: #173350; font-size: 0.8rem; font-weight: 850; }
.brief-stage legend span { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; color: #d8fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.brief-stage__intro { margin: 0 0 0.85rem; color: #738399; font-size: 0.68rem; }
.brief-stage__subheading { margin: 1.1rem 0 0.7rem; color: #27405c; font-size: 0.75rem; }
.brief-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.brief-field-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.brief-field { display: grid; min-width: 0; gap: 0.4rem; color: #27405c; font-size: 0.69rem; font-weight: 800; }
.brief-field--wide { grid-column: 1 / -1; }
.brief-field small { color: #7b899b; font-size: 0.59rem; font-weight: 500; }
.brief-field input, .brief-field select, .brief-field textarea, .brief-readiness-grid select { width: 100%; min-height: 2.8rem; border: 1px solid #cbd7e5; border-radius: 0; padding: 0.65rem 0.75rem; color: #183450; background: #f8fafc; font-size: 0.69rem; transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease; }
.brief-field textarea { min-height: 5rem; resize: vertical; }
.brief-field input:focus-visible, .brief-field select:focus-visible, .brief-field textarea:focus-visible, .brief-readiness-grid select:focus-visible { border-color: #2d6cdf; outline: 0; background: #fff; box-shadow: 0 0 0 0.2rem rgba(45, 108, 223, 0.13); }
.brief-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; }
.brief-choice-grid--compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.brief-choice-grid label { position: relative; min-width: 0; cursor: pointer; }
.brief-choice-grid input { position: absolute; inset: 0.85rem auto auto 0.85rem; width: 1rem; height: 1rem; accent-color: #2d6cdf; }
.brief-choice-grid label > span { display: grid; min-height: 5rem; grid-template-columns: 2rem minmax(0, 1fr); grid-template-rows: auto auto; gap: 0.2rem 0.6rem; align-content: center; border: 1px solid #d4dfeb; padding: 0.75rem 0.75rem 0.75rem 2.7rem; color: #173350; background: #fff; transition: border-color 180ms ease, background 180ms ease, transform 180ms ease; }
.brief-choice-grid--compact label > span { min-height: 3.8rem; grid-template-rows: auto; align-items: center; }
.brief-choice-grid label:hover > span { border-color: #93b3d6; transform: translateY(-1px); }
.brief-choice-grid input:checked + span { border-color: #75a6e8; background: #f0f6ff; box-shadow: inset 3px 0 #2d6cdf; }
.brief-choice-grid input:focus-visible + span { outline: 2px solid #2d6cdf; outline-offset: 0.18rem; }
.brief-choice-grid span > i { grid-row: 1 / 3; display: grid; width: 2rem; height: 2rem; place-items: center; color: #0c5773; background: #dff6fb; }
.brief-choice-grid b { align-self: end; font-size: 0.68rem; }
.brief-choice-grid small { color: #78889a; font-size: 0.57rem; }
.brief-readiness-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; }
.brief-readiness-grid label { display: grid; gap: 0.35rem; border-left: 2px solid #b8c6d5; padding: 0.7rem; color: #53657b; background: #f6f8fb; font-size: 0.61rem; font-weight: 800; }
.brief-readiness-grid select { min-height: 2.5rem; padding: 0.5rem; background: #fff; font-size: 0.64rem; }
.brief-priority-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; }
.brief-priority-grid label { display: flex; gap: 0.5rem; align-items: center; min-height: 2.8rem; border: 1px solid #d4dfeb; padding: 0.65rem; color: #415872; background: #fff; font-size: 0.62rem; font-weight: 800; cursor: pointer; }
.brief-priority-grid input { width: 1rem; height: 1rem; accent-color: #2d6cdf; }
.brief-priority-grid label:has(input:checked) { border-color: #75a6e8; background: #f0f6ff; }
.brief-form__error { min-height: 1.25rem; margin: 0.8rem 0 0; color: #a73737; font-size: 0.7rem; font-weight: 750; }
.brief-form__actions, .brief-report__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }
.brief-privacy-panel { position: sticky; top: 5.5rem; min-width: 0; padding: clamp(1.25rem, 3vw, 1.8rem); color: #dbeafe; background: radial-gradient(circle at 65% 10%, rgba(84, 214, 255, 0.12), transparent 28%), #0d192a; }
.brief-privacy-panel__icon { display: grid; width: 3.4rem; height: 3.4rem; place-items: center; margin-bottom: 1rem; color: #06111f; background: var(--premium-cyan); font-size: 1.25rem; }
.brief-privacy-panel h2 { margin: 0; color: #fff; font-size: clamp(1.2rem, 2.3vw, 1.55rem); }
.brief-privacy-panel > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.62); font-size: 0.7rem; }
.brief-privacy-panel__avoid { margin-top: 1rem; border-left: 3px solid #ffd166; padding: 0.9rem; background: rgba(255, 255, 255, 0.035); }
.brief-privacy-panel__avoid strong { color: #fff; font-size: 0.72rem; }
.brief-privacy-panel__avoid ul { display: grid; gap: 0.35rem; margin: 0.55rem 0 0; padding-left: 1rem; color: rgba(219, 234, 254, 0.62); font-size: 0.64rem; }
.brief-privacy-panel__visual { display: grid; grid-template-columns: 2.5rem 1fr 2.5rem; gap: 0.7rem; align-items: center; margin-top: 1.2rem; color: var(--premium-cyan); }
.brief-privacy-panel__visual::before, .brief-privacy-panel__visual::after { grid-row: 1; border-top: 1px dashed rgba(84, 214, 255, 0.28); content: ""; }
.brief-privacy-panel__visual i, .brief-privacy-panel__visual span { position: relative; z-index: 1; grid-row: 1; display: grid; height: 2.5rem; place-items: center; border: 1px solid rgba(84, 214, 255, 0.2); background: #10223b; }
.brief-privacy-panel__visual i:first-child { grid-column: 1; }
.brief-privacy-panel__visual span { grid-column: 2; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.brief-privacy-panel__visual i:last-child { grid-column: 3; }
.brief-report { scroll-margin-top: 5rem; margin-top: 1.2rem; border: 1px solid #dce5ef; padding: clamp(1.25rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.4rem 4rem rgba(15, 34, 60, 0.075); }
.brief-report[hidden] { display: none; }
.brief-report__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.brief-report__heading h2 { color: #11243b; }
.brief-report__heading > div:first-child > p:last-child, .brief-report__status { margin: 0.4rem 0 0; color: #65758a; font-size: 0.7rem; }
.brief-report__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 1.2rem 0; border: 1px solid #dce5ef; background: #f5f8fc; }
.brief-report__metrics article { min-width: 0; border-right: 1px solid #dce5ef; padding: 0.9rem; }
.brief-report__metrics article:last-child { border-right: 0; }
.brief-report__metrics span { display: block; color: #738399; font-size: 0.58rem; font-weight: 800; text-transform: uppercase; }
.brief-report__metrics strong { display: block; margin-top: 0.25rem; color: #173350; font-family: "IBM Plex Mono", monospace; font-size: 1.25rem; }
.brief-report__grid { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 1rem; }
.brief-report-panel { min-width: 0; border: 1px solid #dce5ef; padding: 1rem; }
.brief-report-panel--summary { grid-row: span 2; }
.brief-report-panel--decisions { grid-column: 1 / -1; }
.brief-report-panel__heading { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; align-items: start; }
.brief-report-panel__heading > span { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #d8fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.brief-report-panel h3 { color: #173350; font-size: 0.95rem; }
.brief-report-panel dl { display: grid; gap: 0.7rem; margin: 0.9rem 0 0; }
.brief-report-panel dl > div { border-left: 2px solid #8fb5d1; padding-left: 0.65rem; }
.brief-report-panel dt { color: #718198; font-size: 0.56rem; font-weight: 800; text-transform: uppercase; }
.brief-report-panel dd { margin: 0.2rem 0 0; overflow-wrap: anywhere; color: #40546d; font-size: 0.64rem; }
.brief-report-panel ol, .brief-report-panel ul { display: grid; gap: 0.55rem; margin: 0.9rem 0 0; padding: 0; list-style: none; }
.brief-sitemap-item { display: grid; grid-template-columns: 1.8rem minmax(0, 1fr); gap: 0.6rem; padding: 0.7rem; background: #f4f7fb; }
.brief-sitemap-item > span { color: #2d6cdf; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.brief-sitemap-item h4 { margin: 0; color: #173350; font-size: 0.7rem; }
.brief-sitemap-item p { margin: 0.2rem 0 0; color: #6d7d91; font-size: 0.59rem; }
.brief-requirement, .brief-content-action, .brief-decision { display: grid; grid-template-columns: 1.4rem minmax(0, 1fr); gap: 0.5rem; border-left: 2px solid #8fb5d1; padding: 0.6rem; color: #52657c; background: #f5f8fb; font-size: 0.62rem; }
.brief-requirement i { color: #087752; }
.brief-content-action { border-left-color: #d29328; background: #fff8e8; }
.brief-content-action i { color: #a16b10; }
.brief-decision { border-left-color: #2d6cdf; background: #eef4fb; }
.brief-decision i { color: #2d6cdf; }
.brief-decision--clear { border-left-color: #18a76f; background: #ecf8f2; }
.brief-report__boundary { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: 0.6rem; margin: 1rem 0 0; border-left: 3px solid #2d6cdf; padding: 0.75rem; color: #566980; background: #eef4fb; font-size: 0.65rem; }
.brief-report__boundary i { color: #2d6cdf; }
.brief-boundaries__grid, .brief-faq__grid { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.brief-boundaries__grid > div:first-child > p:last-child { color: rgba(219, 234, 254, 0.62); }
.brief-boundaries__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.brief-boundaries__notes article { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 0.9rem; background: rgba(255, 255, 255, 0.025); }
.brief-boundaries__notes article > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.08); }
.brief-boundaries__notes h3 { margin: 0; color: #fff; font-size: 0.82rem; }
.brief-boundaries__notes p { margin: 0.3rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.66rem; }
.brief-boundaries__notes a { display: inline-flex; gap: 0.35rem; align-items: center; margin-top: 0.55rem; color: var(--premium-cyan); font-size: 0.62rem; font-weight: 800; }
.brief-faq__list { border-top: 1px solid #dce5ef; }
.brief-faq details { border-bottom: 1px solid #dce5ef; }
.brief-faq summary { padding: 1rem 0; color: #173350; font-size: 0.8rem; font-weight: 800; cursor: pointer; }
.brief-faq summary::marker { color: #2d6cdf; }
.brief-faq summary:focus-visible { outline: 2px solid #2d6cdf; outline-offset: 0.2rem; }
.brief-faq details p { max-width: 68ch; margin: 0; padding: 0 0 1rem; color: #66768b; font-size: 0.72rem; }

/* SPF checker and recursive policy explainer */
.spf-hero { overflow: hidden; }
.spf-trace-console { min-height: 21rem; color: #dbeafe; background: #0b1727; }
.spf-trace-console__body { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 6.6rem; gap: 1rem; align-items: center; min-height: 16.4rem; padding: 1.4rem; background-image: linear-gradient(rgba(84, 214, 255, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(84, 214, 255, 0.05) 1px, transparent 1px); background-size: 2rem 2rem; }
.spf-trace-console__root { position: absolute; inset: 1.25rem auto auto 1.4rem; display: inline-flex; gap: 0.45rem; align-items: center; color: #dbeafe; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }
.spf-trace-console__root i { color: #4de0a5; }
.spf-trace-console__branch { display: grid; gap: 0.5rem; margin-top: 2rem; }
.spf-trace-console__branch span { position: relative; display: grid; grid-template-columns: 1.5rem 1.4rem minmax(0, 1fr); gap: 0.35rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.2); padding: 0.65rem; color: rgba(219, 234, 254, 0.7); background: #10223b; font-size: 0.56rem; }
.spf-trace-console__branch span:not(:last-child)::after { position: absolute; inset: auto auto -0.55rem 1.35rem; height: 0.55rem; border-left: 1px dashed rgba(84, 214, 255, 0.34); content: ""; }
.spf-trace-console__branch small { color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; }
.spf-trace-console__branch i { color: #4de0a5; }
.spf-trace-console__limit { display: grid; width: 6.6rem; height: 6.6rem; place-items: center; align-content: center; border: 1px solid rgba(255, 209, 102, 0.45); border-radius: 50%; color: #ffd166; background: rgba(255, 209, 102, 0.04); }
.spf-trace-console__limit strong { font-family: "IBM Plex Mono", monospace; font-size: 1.8rem; line-height: 1; }
.spf-trace-console__limit span { max-width: 8ch; margin-top: 0.35rem; text-align: center; font-family: "IBM Plex Mono", monospace; font-size: 0.45rem; }
.spf-trace-console__footer { display: flex; gap: 1rem; justify-content: space-between; padding: 0.9rem 1.2rem; border-top: 1px solid rgba(84, 214, 255, 0.12); color: rgba(219, 234, 254, 0.65); background: #081421; font-size: 0.64rem; }
.spf-trace-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.spf-trace-console__footer i { color: var(--premium-cyan); }

.spf-checker-section { scroll-margin-top: 5rem; background: #f2f6fb; }
.spf-checker-layout { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(20rem, 1.08fr); border: 1px solid #dce5ef; background: #fff; box-shadow: 0 1.6rem 4.5rem rgba(15, 34, 60, 0.09); }
.spf-checker-form-panel { min-width: 0; padding: clamp(1.3rem, 3vw, 2.2rem); }
.spf-checker-form-panel h2, .spf-result-card h2, .spf-result-preview h2, .spf-findings h2, .spf-policy-map h2, .spf-boundary h2, .spf-faq h2 { margin: 0; }
.spf-checker-form-panel h2 { max-width: 24ch; color: #11243b; font-size: clamp(1.45rem, 3vw, 2rem); }
.spf-checker-form-panel > p:not(.premium-eyebrow) { max-width: 64ch; color: #65758a; font-size: 0.74rem; }
.spf-checker-form { display: grid; gap: 1rem; margin-top: 1.3rem; }
.spf-checker-submit { justify-self: start; }
.spf-privacy-note { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; align-items: start; margin-top: 1.2rem; border-left: 3px solid #18a76f; padding: 0.8rem; color: #52657c; background: #ecf8f2; }
.spf-privacy-note > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #087752; background: #d7f2e6; }
.spf-privacy-note p { margin: 0; font-size: 0.65rem; }
.spf-result-card, .spf-result-preview { min-width: 0; border-left: 1px solid #dce5ef; padding: clamp(1.3rem, 3vw, 2.2rem); color: #dbeafe; background: radial-gradient(circle at 78% 10%, rgba(84, 214, 255, 0.12), transparent 30%), #0d192a; }
.spf-result-card__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.spf-result-card__heading h2, .spf-result-preview h2 { color: #fff; }
.spf-result-card__heading p:not(.premium-eyebrow), .spf-result-preview p { max-width: 52ch; color: rgba(219, 234, 254, 0.64); font-size: 0.68rem; }
.spf-result-card__status { display: inline-flex; flex: 0 0 auto; gap: 0.4rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.22); padding: 0.55rem 0.7rem; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.06); font-size: 0.58rem; font-weight: 850; text-transform: uppercase; }
.spf-result-card--fail .spf-result-card__status { border-color: rgba(255, 122, 122, 0.35); color: #ff9e9e; background: rgba(255, 122, 122, 0.07); }
.spf-result-card--warning .spf-result-card__status { border-color: rgba(255, 209, 102, 0.35); color: #ffd166; background: rgba(255, 209, 102, 0.06); }
.spf-lookup-meter { margin-top: 1.3rem; border: 1px solid rgba(84, 214, 255, 0.15); padding: 1rem; background: rgba(255, 255, 255, 0.025); }
.spf-lookup-meter > div { display: flex; gap: 1rem; align-items: end; justify-content: space-between; }
.spf-lookup-meter span { color: rgba(219, 234, 254, 0.65); font-size: 0.58rem; font-weight: 800; text-transform: uppercase; }
.spf-lookup-meter strong { color: #fff; font-family: "IBM Plex Mono", monospace; font-size: 1.7rem; }
.spf-lookup-meter strong small { color: rgba(219, 234, 254, 0.5); font-size: 0.65rem; }
.spf-lookup-meter progress { width: 100%; height: 0.55rem; margin-top: 0.65rem; border: 0; accent-color: var(--premium-cyan); }
.spf-result-card--warning .spf-lookup-meter progress { accent-color: #ffd166; }
.spf-result-card--fail .spf-lookup-meter progress { accent-color: #ff7a7a; }
.spf-lookup-meter p { margin: 0.55rem 0 0; color: rgba(219, 234, 254, 0.55); font-size: 0.58rem; }
.spf-result-card__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 1rem 0 0; border: 1px solid rgba(84, 214, 255, 0.14); }
.spf-result-card__metrics div { min-width: 0; border-right: 1px solid rgba(84, 214, 255, 0.14); padding: 0.75rem; }
.spf-result-card__metrics div:last-child { border-right: 0; }
.spf-result-card__metrics dt { color: rgba(219, 234, 254, 0.55); font-size: 0.5rem; font-weight: 800; text-transform: uppercase; }
.spf-result-card__metrics dd { margin: 0.25rem 0 0; color: #fff; font-family: "IBM Plex Mono", monospace; font-size: 1rem; }
.spf-partial-note { display: grid; grid-template-columns: 1.3rem minmax(0, 1fr); gap: 0.45rem; margin: 0.8rem 0 0; color: #ffd98c; font-size: 0.6rem; }
.spf-result-preview { display: grid; align-content: center; }
.spf-result-preview__diagram { display: grid; grid-template-columns: repeat(5, auto); gap: 0.45rem; align-items: center; justify-content: start; margin-bottom: 1.1rem; color: var(--premium-cyan); }
.spf-result-preview__diagram span { border: 1px solid rgba(84, 214, 255, 0.2); padding: 0.6rem; background: #10223b; font-family: "IBM Plex Mono", monospace; font-size: 0.58rem; }

.spf-findings { background: #fff; }
.spf-findings__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.spf-finding { display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: 0.8rem; border: 1px solid #dce5ef; border-top: 3px solid #18a76f; padding: 1rem; background: #fff; }
.spf-finding--warning { border-top-color: #d29328; }
.spf-finding--fail { border-top-color: #c84a4a; }
.spf-finding--unavailable { border-top-color: #718198; }
.spf-finding__icon { display: grid; width: 2.6rem; height: 2.6rem; place-items: center; color: #087752; background: #ecf8f2; }
.spf-finding--warning .spf-finding__icon { color: #93610e; background: #fff7e2; }
.spf-finding--fail .spf-finding__icon { color: #a73737; background: #fff0f0; }
.spf-finding--unavailable .spf-finding__icon { color: #52657c; background: #eef2f6; }
.spf-finding__status { color: #087752; font-size: 0.52rem; font-weight: 850; text-transform: uppercase; }
.spf-finding--warning .spf-finding__status { color: #93610e; }
.spf-finding--fail .spf-finding__status { color: #a73737; }
.spf-finding--unavailable .spf-finding__status { color: #52657c; }
.spf-finding h3 { margin: 0.2rem 0 0; color: #173350; font-size: 0.88rem; }
.spf-finding p { margin: 0.4rem 0 0; color: #65758a; font-size: 0.65rem; }
.spf-finding__evidence { display: grid; gap: 0.35rem; margin-top: 0.55rem; }
.spf-finding__evidence code, .spf-policy-node__record { display: block; overflow-wrap: anywhere; border: 1px solid #dce5ef; padding: 0.55rem; color: #24435f; background: #f4f7fb; font-family: "IBM Plex Mono", monospace; font-size: 0.56rem; }
.spf-finding__action { border-left: 2px solid #8fb5d1; padding-left: 0.55rem; }
.spf-finding__action i { margin-right: 0.25rem; color: #2d6cdf; }

.spf-policy-map { background: #f2f6fb; }
.spf-policy-map__heading { display: grid; grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr); gap: 2rem; align-items: end; }
.spf-policy-map__heading > p { max-width: 64ch; margin: 0; color: #65758a; font-size: 0.72rem; }
.spf-policy-nodes { display: grid; gap: 0.7rem; margin-top: 1.5rem; }
.spf-policy-node { border: 1px solid #d6e1ed; border-left: 4px solid #18a76f; padding: 0.9rem; background: #fff; }
.spf-policy-node--missing, .spf-policy-node--multiple { border-left-color: #c84a4a; }
.spf-policy-node--unavailable { border-left-color: #718198; }
.spf-policy-node header { display: grid; grid-template-columns: 2rem minmax(0, 1fr) auto; gap: 0.7rem; align-items: center; }
.spf-policy-node header > span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #d8fbff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.55rem; }
.spf-policy-node header p { margin: 0; color: #78889a; font-size: 0.54rem; }
.spf-policy-node h3 { margin: 0.1rem 0 0; color: #173350; font-size: 0.76rem; }
.spf-policy-node header strong { color: #0c6d75; font-family: "IBM Plex Mono", monospace; font-size: 0.54rem; }
.spf-policy-node__record, .spf-policy-node__message { margin-top: 0.7rem; }
.spf-policy-node__message { color: #65758a; font-size: 0.65rem; }
.spf-term-list { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.6rem; }
.spf-term { display: grid; gap: 0.15rem; border: 1px solid #dce5ef; padding: 0.4rem 0.5rem; background: #f7f9fc; }
.spf-term--lookup { border-color: #8fc1d0; background: #eefafd; }
.spf-term code { color: #27405c; font-size: 0.56rem; }
.spf-term small { color: #7c8b9e; font-size: 0.45rem; }
.spf-breakdown { display: flex; gap: 1rem; align-items: center; margin-top: 0.8rem; border: 1px solid #dce5ef; padding: 0.75rem; background: #fff; }
.spf-breakdown > strong { color: #173350; font-size: 0.66rem; }
.spf-breakdown ul { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0; padding: 0; list-style: none; }
.spf-breakdown li { display: inline-flex; gap: 0.45rem; align-items: center; border: 1px solid #dce5ef; padding: 0.35rem 0.5rem; color: #52657c; background: #f5f8fb; font-size: 0.56rem; }
.spf-breakdown li span { color: #2d6cdf; font-family: "IBM Plex Mono", monospace; font-weight: 800; }

.spf-boundary__grid, .spf-faq__grid { display: grid; grid-template-columns: minmax(0, 0.55fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.spf-boundary__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.spf-boundary__notes article { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 0.9rem; background: rgba(255, 255, 255, 0.025); }
.spf-boundary__notes article > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.08); }
.spf-boundary__notes h3 { margin: 0; color: #fff; font-size: 0.82rem; }
.spf-boundary__notes p { margin: 0.3rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.66rem; }
.spf-boundary__notes a { display: inline-flex; gap: 0.35rem; align-items: center; margin-top: 0.55rem; color: var(--premium-cyan); font-size: 0.62rem; font-weight: 800; }
.spf-faq__list { border-top: 1px solid #dce5ef; }
.spf-faq details { border-bottom: 1px solid #dce5ef; }
.spf-faq summary { padding: 1rem 0; color: #173350; font-size: 0.8rem; font-weight: 800; cursor: pointer; }
.spf-faq summary::marker { color: #2d6cdf; }
.spf-faq summary:focus-visible { outline: 2px solid #2d6cdf; outline-offset: 0.2rem; }
.spf-faq details p { max-width: 68ch; margin: 0; padding: 0 0 1rem; color: #66768b; font-size: 0.72rem; }

/* SPF record builder */
.spf-builder-console { min-height: 21rem; color: #dbeafe; background: #0b1727; }
.spf-builder-console__body { display: grid; grid-template-columns: minmax(0, 1fr) 3.5rem 7rem; gap: 0.8rem; align-items: center; min-height: 13.2rem; padding: 1.5rem; background-image: linear-gradient(rgba(84, 214, 255, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(84, 214, 255, 0.05) 1px, transparent 1px); background-size: 2rem 2rem; }
.spf-builder-console__sources { display: grid; gap: 0.55rem; }
.spf-builder-console__sources span { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: 0.45rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.2); padding: 0.65rem; color: rgba(219, 234, 254, 0.74); background: #10223b; font-family: "IBM Plex Mono", monospace; font-size: 0.55rem; }
.spf-builder-console__sources i { color: var(--premium-cyan); }
.spf-builder-console__path { display: flex; color: #4de0a5; font-size: 0.75rem; }
.spf-builder-console__path i:last-child { opacity: 0.45; }
.spf-builder-console__gate { display: grid; width: 7rem; min-height: 7rem; place-items: center; align-content: center; border: 1px solid rgba(77, 224, 165, 0.4); border-radius: 50%; color: #4de0a5; background: rgba(77, 224, 165, 0.05); }
.spf-builder-console__gate i { font-size: 1.3rem; }
.spf-builder-console__gate strong { margin-top: 0.25rem; color: #e6fff5; font-size: 0.75rem; }
.spf-builder-console__gate small { color: rgba(219, 234, 254, 0.5); font-size: 0.48rem; text-transform: uppercase; }
.spf-builder-console__record { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; align-items: center; border-top: 1px solid rgba(84, 214, 255, 0.12); padding: 1rem 1.3rem; background: #081421; }
.spf-builder-console__record span { color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; font-size: 0.56rem; }
.spf-builder-console__record code { overflow-wrap: anywhere; color: rgba(219, 234, 254, 0.68); font-size: 0.6rem; }

.spf-builder-section { overflow: visible; scroll-margin-top: 5rem; background: #edf3f9; }
.spf-builder-workbench { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(22rem, 0.88fr); align-items: start; border: 1px solid #d5e1ec; background: #fff; box-shadow: 0 1.8rem 5rem rgba(15, 34, 60, 0.1); }
.spf-builder-form { min-width: 0; padding: clamp(1.25rem, 3vw, 2.2rem); }
.spf-builder-form__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #dce5ef; padding-bottom: 1.1rem; }
.spf-builder-form__heading h2, .spf-builder-result h2, .spf-builder-method h2, .spf-builder-sources h2, .spf-builder-faq h2 { margin: 0; }
.spf-builder-form__heading h2 { max-width: 29ch; color: #11243b; font-size: clamp(1.35rem, 2.8vw, 1.9rem); }
.spf-builder-form__heading > span { display: inline-flex; flex: 0 0 auto; gap: 0.4rem; align-items: center; border: 1px solid #b8ddd0; padding: 0.48rem 0.62rem; color: #087752; background: #ecf8f2; font-size: 0.56rem; font-weight: 800; text-transform: uppercase; }
.spf-builder-error:empty { display: none; }
.spf-builder-error { margin-top: 1rem; }
.spf-builder-step { min-width: 0; margin: 0; border: 0; border-bottom: 1px solid #dce5ef; padding: 1.25rem 0; }
.spf-builder-step legend { display: flex; gap: 0.65rem; align-items: center; width: 100%; padding: 0; color: #173350; }
.spf-builder-step legend span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #dffaff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.54rem; }
.spf-builder-step legend strong { font-size: 0.82rem; }
.spf-builder-step__intro { max-width: 72ch; margin: 0.65rem 0 0; color: #65758a; font-size: 0.66rem; }
.spf-builder-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; margin-top: 0.9rem; }
.spf-builder-field--wide { grid-column: 1 / -1; }
.spf-builder-field-grid .tool-field { align-content: start; }
.spf-builder-field-grid label span { color: #7b899a; font-size: 0.52rem; font-weight: 650; }
.spf-builder-field-grid textarea { min-height: 5.5rem; resize: vertical; }
.spf-builder-field-grid .tool-field + .tool-field { margin-top: 0.75rem; }
.spf-builder-field-grid a { color: #1e63ca; font-weight: 800; text-decoration: underline; text-underline-offset: 0.15rem; }

.spf-provider-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin-top: 0.9rem; }
.spf-provider-grid label { position: relative; min-width: 0; margin: 0; cursor: pointer; }
.spf-provider-grid input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.spf-provider-grid label > span { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 0.08rem 0.6rem; min-height: 4.1rem; align-content: center; border: 1px solid #d8e2ed; padding: 0.7rem; color: #52657c; background: #f8fafc; transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
.spf-provider-grid label > span > i { grid-row: 1 / 3; align-self: center; color: #2d6cdf; font-size: 1.1rem; }
.spf-provider-grid strong { color: #173350; font-size: 0.68rem; }
.spf-provider-grid small { overflow-wrap: anywhere; color: #738296; font-family: "IBM Plex Mono", monospace; font-size: 0.48rem; }
.spf-provider-grid input:checked + span { border-color: #55af99; color: #075d49; background: #eefaf5; box-shadow: inset 3px 0 #18a76f; }
.spf-provider-grid input:focus-visible + span { outline: 2px solid #2d6cdf; outline-offset: 0.18rem; }
.spf-provider-grid label:hover > span { border-color: #8db4d3; transform: translateY(-1px); }

.spf-builder-advanced { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 0.7rem; align-items: center; margin-top: 0.85rem; border: 1px solid #dce5ef; padding: 0.8rem; background: #f4f7fb; }
.spf-builder-advanced p { margin: 0; color: #173350; font-size: 0.64rem; }
.spf-builder-advanced p span { display: block; margin-top: 0.18rem; color: #6a7a8d; font-size: 0.55rem; }
.spf-builder-advanced label { margin: 0; }
.spf-builder-advanced label span { display: inline-flex; gap: 0.35rem; align-items: center; color: #43576e; font-size: 0.58rem; }
.spf-builder-advanced code { color: #075d49; }
.spf-ending-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; margin-top: 0.85rem; }
.spf-ending-grid label { position: relative; margin: 0; cursor: pointer; }
.spf-ending-grid input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.spf-ending-grid label > span { display: block; min-height: 5rem; border: 1px solid #d8e2ed; padding: 0.85rem; background: #f8fafc; transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease; }
.spf-ending-grid strong { color: #173350; font-size: 0.72rem; }
.spf-ending-grid small { display: block; margin-top: 0.4rem; color: #66778b; font-size: 0.58rem; }
.spf-ending-grid input:checked + span { border-color: #55af99; background: #eefaf5; box-shadow: inset 3px 0 #18a76f; }
.spf-ending-grid input:focus-visible + span { outline: 2px solid #2d6cdf; outline-offset: 0.18rem; }
.spf-builder-confirmations { display: grid; gap: 0.6rem; }
.spf-builder-confirmations legend { margin-bottom: 0.25rem; }
.spf-builder-confirmations label { display: grid; grid-template-columns: 1.15rem minmax(0, 1fr); gap: 0.65rem; align-items: start; margin: 0; border: 1px solid #dce5ef; padding: 0.75rem; cursor: pointer; }
.spf-builder-confirmations input { width: 1rem; height: 1rem; margin-top: 0.08rem; accent-color: #087752; }
.spf-builder-confirmations strong { display: block; color: #173350; font-size: 0.65rem; }
.spf-builder-confirmations small { display: block; margin-top: 0.22rem; color: #69798c; font-size: 0.55rem; }
.spf-builder-form__actions { display: flex; flex-wrap: wrap; gap: 0.6rem; padding-top: 1.1rem; }

.spf-builder-result { position: sticky; top: 5.4rem; min-width: 0; max-height: calc(100vh - 5.8rem); overflow-y: auto; scroll-margin-top: 6.4rem; border-left: 1px solid rgba(84, 214, 255, 0.14); padding: clamp(1.25rem, 3vw, 2rem); color: #dbeafe; background: radial-gradient(circle at 85% 8%, rgba(84, 214, 255, 0.13), transparent 27%), #0d192a; }
.spf-builder-result:focus-visible { outline: 3px solid var(--premium-cyan); outline-offset: -3px; }
.spf-builder-result__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.spf-builder-result__heading h2 { overflow-wrap: anywhere; color: #fff; font-size: clamp(1.35rem, 3vw, 1.9rem); }
.spf-builder-result__badge { display: inline-flex; flex: 0 0 auto; gap: 0.35rem; align-items: center; max-width: 12rem; border: 1px solid rgba(255, 209, 102, 0.34); padding: 0.52rem 0.65rem; color: #ffd166; background: rgba(255, 209, 102, 0.06); font-size: 0.5rem; font-weight: 850; text-transform: uppercase; }
.spf-builder-result__badge--reviewed { border-color: rgba(77, 224, 165, 0.36); color: #4de0a5; background: rgba(77, 224, 165, 0.06); }
.spf-builder-result__badge--blocked { border-color: rgba(255, 122, 122, 0.4); color: #ff9e9e; background: rgba(255, 122, 122, 0.07); }
.spf-builder-result__dns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1.1rem; border: 1px solid rgba(84, 214, 255, 0.14); }
.spf-builder-result__dns div { display: flex; align-items: center; justify-content: space-between; padding: 0.65rem; }
.spf-builder-result__dns div + div { border-left: 1px solid rgba(84, 214, 255, 0.14); }
.spf-builder-result__dns span, .spf-builder-result__record > span { color: rgba(219, 234, 254, 0.52); font-size: 0.5rem; font-weight: 800; text-transform: uppercase; }
.spf-builder-result__dns strong { color: var(--premium-cyan); font-family: "IBM Plex Mono", monospace; }
.spf-builder-result__record { margin-top: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.18); padding: 0.85rem; background: #081421; }
.spf-builder-result__record code { display: block; overflow-wrap: anywhere; margin-top: 0.55rem; color: #e7fbff; font-family: "IBM Plex Mono", monospace; font-size: 0.68rem; line-height: 1.75; user-select: all; }
.spf-builder-result__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0.75rem 0 0; border: 1px solid rgba(84, 214, 255, 0.14); }
.spf-builder-result__metrics div { min-width: 0; padding: 0.68rem; }
.spf-builder-result__metrics div + div { border-left: 1px solid rgba(84, 214, 255, 0.14); }
.spf-builder-result__metrics dt { color: rgba(219, 234, 254, 0.5); font-size: 0.47rem; font-weight: 800; text-transform: uppercase; }
.spf-builder-result__metrics dd { margin: 0.2rem 0 0; color: #fff; font-family: "IBM Plex Mono", monospace; font-size: 1rem; }
.spf-builder-result__warning-heading { display: flex; gap: 0.4rem; align-items: center; margin-top: 1rem; color: #fff; font-size: 0.64rem; }
.spf-builder-result__warning-heading i { color: var(--premium-cyan); }
.spf-builder-warnings { display: grid; gap: 0.5rem; max-height: 22rem; margin: 0.65rem 0 0; padding: 0; overflow-y: auto; list-style: none; }
.spf-builder-warning { display: grid; grid-template-columns: 1.2rem minmax(0, 1fr); gap: 0.5rem; border-left: 2px solid #5fa5c4; padding: 0.65rem; background: rgba(255, 255, 255, 0.035); }
.spf-builder-warning > i { color: var(--premium-cyan); }
.spf-builder-warning--warning { border-left-color: #dba845; }
.spf-builder-warning--warning > i { color: #ffd166; }
.spf-builder-warning--fail { border-left-color: #e56d6d; }
.spf-builder-warning--fail > i { color: #ff9e9e; }
.spf-builder-warning strong { color: #fff; font-size: 0.6rem; }
.spf-builder-warning p { margin: 0.2rem 0 0; color: rgba(219, 234, 254, 0.58); font-size: 0.54rem; }
.spf-builder-result__actions { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; }
.spf-builder-result__actions .premium-btn, .spf-builder-result__actions .tool-action { flex: 1 1 10rem; justify-content: center; }
.spf-builder-result__actions button:disabled { cursor: not-allowed; opacity: 0.48; filter: grayscale(0.4); }
.spf-builder-result__status { min-height: 1.2rem; margin: 0.65rem 0 0; color: rgba(219, 234, 254, 0.65); font-size: 0.55rem; }
.spf-builder-result__boundary { display: grid; grid-template-columns: 1.4rem minmax(0, 1fr); gap: 0.55rem; margin-top: 0.8rem; border: 1px solid rgba(255, 209, 102, 0.24); padding: 0.7rem; color: #ffe3a1; background: rgba(255, 209, 102, 0.05); }
.spf-builder-result__boundary p { margin: 0; font-size: 0.55rem; }

.spf-builder-method { background: #fff; }
.spf-builder-method__grid, .spf-builder-sources__grid, .spf-builder-faq__grid { display: grid; grid-template-columns: minmax(0, 0.62fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.spf-builder-method__grid > div > p:not(.premium-eyebrow), .spf-builder-sources__grid > div > p:not(.premium-eyebrow) { max-width: 56ch; color: #66778b; font-size: 0.7rem; }
.spf-builder-method__steps { display: grid; gap: 0.6rem; margin: 0; padding: 0; list-style: none; }
.spf-builder-method__steps li { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); gap: 0.75rem; border: 1px solid #dce5ef; padding: 0.8rem; background: #f8fafc; }
.spf-builder-method__steps li > span { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; color: #dffaff; background: #10344c; font-family: "IBM Plex Mono", monospace; font-size: 0.55rem; }
.spf-builder-method__steps strong { color: #173350; font-size: 0.7rem; }
.spf-builder-method__steps p { margin: 0.25rem 0 0; color: #68798c; font-size: 0.62rem; }
.spf-builder-sources__grid > div > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.62); }
.spf-builder-source-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; }
.spf-builder-source-links a { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr) auto; gap: 0.65rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.14); padding: 0.8rem; color: #dbeafe; background: rgba(255, 255, 255, 0.025); transition: border-color 180ms ease, background 180ms ease, transform 180ms ease; }
.spf-builder-source-links a:hover { border-color: rgba(84, 214, 255, 0.38); color: #fff; background: rgba(84, 214, 255, 0.055); transform: translateY(-2px); }
.spf-builder-source-links a:focus-visible { outline: 2px solid var(--premium-cyan); outline-offset: 0.2rem; }
.spf-builder-source-links a > i:first-child { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: var(--premium-cyan); background: rgba(84, 214, 255, 0.08); }
.spf-builder-source-links strong { display: block; color: #fff; font-size: 0.62rem; }
.spf-builder-source-links small { display: block; margin-top: 0.2rem; color: rgba(219, 234, 254, 0.52); font-size: 0.52rem; }
.spf-builder-source-links a > i:last-child { color: rgba(84, 214, 255, 0.65); font-size: 0.68rem; }
.spf-builder-faq__list { border-top: 1px solid #dce5ef; }
.spf-builder-faq details { border-bottom: 1px solid #dce5ef; }
.spf-builder-faq summary { padding: 1rem 0; color: #173350; font-size: 0.78rem; font-weight: 800; cursor: pointer; }
.spf-builder-faq summary::marker { color: #2d6cdf; }
.spf-builder-faq summary:focus-visible { outline: 2px solid #2d6cdf; outline-offset: 0.2rem; }
.spf-builder-faq details p { max-width: 68ch; margin: 0; padding: 0 0 1rem; color: #66768b; font-size: 0.7rem; }

@media (max-width: 991px) {
  .tools-journeys__heading {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.1rem;
  }

  .tools-journey-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tools-journey,
  .tools-journey--email,
  .tools-journey--website {
    grid-column: auto;
  }

  .tools-journey--email {
    grid-column: 1 / -1;
  }

  .tools-hero .ats-page-hero__grid,
  .password-hero .ats-page-hero__grid,
  .email-hero .ats-page-hero__grid,
  .website-hero .ats-page-hero__grid,
  .dns-hero .ats-page-hero__grid,
  .header-analyzer-hero .ats-page-hero__grid,
  .downtime-hero .ats-page-hero__grid,
  .continuity-hero .ats-page-hero__grid,
  .brief-hero .ats-page-hero__grid,
  .spf-hero .ats-page-hero__grid,
  .spf-builder-hero .ats-page-hero__grid,
  .tools-principles__grid,
  .tools-official__grid,
  .password-guidance__grid,
  .password-method__grid,
  .password-workbench,
  .email-checker-layout,
  .email-scope__grid,
  .website-scope__grid,
  .dns-method__grid,
  .header-analyzer-workbench,
  .header-method__grid,
  .downtime-layout,
  .downtime-method__grid,
  .downtime-boundaries__grid,
  .downtime-faq__grid,
  .downtime-next-step__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .spf-checker-layout,
  .spf-policy-map__heading,
  .spf-boundary__grid,
  .spf-faq__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .spf-builder-workbench,
  .spf-builder-method__grid,
  .spf-builder-sources__grid,
  .spf-builder-faq__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .spf-builder-result {
    position: static;
    max-height: none;
    overflow: visible;
    border-top: 1px solid rgba(84, 214, 255, 0.14);
    border-left: 0;
  }

  .spf-result-card,
  .spf-result-preview {
    border-top: 1px solid #dce5ef;
    border-left: 0;
  }

  .tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tools-principles__copy {
    position: static;
  }

  .password-workbench__controls {
    border-top: 1px solid rgba(84, 214, 255, 0.16);
    border-left: 0;
  }

  .dns-record-grid { grid-template-columns: minmax(0, 1fr); }
  .header-empty-state { border-top: 1px solid rgba(84, 214, 255, 0.14); border-left: 0; }
  .header-report__grid { grid-template-columns: minmax(0, 1fr); }
  .header-report-panel--route { grid-column: auto; }
  .header-findings { grid-template-columns: minmax(0, 1fr); }
  .downtime-result { position: static; border-top: 1px solid rgba(84, 214, 255, 0.15); border-left: 0; }
  .continuity-builder,
  .continuity-boundaries__grid,
  .continuity-faq__grid { grid-template-columns: minmax(0, 1fr); }
  .continuity-privacy-panel { position: static; }
  .continuity-report__grid { grid-template-columns: minmax(0, 1fr); }
  .continuity-report-panel--sequence { grid-row: auto; }
  .brief-builder,
  .brief-boundaries__grid,
  .brief-faq__grid { grid-template-columns: minmax(0, 1fr); }
  .brief-privacy-panel { position: static; }
  .brief-report__grid { grid-template-columns: minmax(0, 1fr); }
  .brief-report-panel--summary { grid-row: auto; }
  .brief-report-panel--decisions { grid-column: auto; }
}

@media (max-width: 680px) {
  .tools-journey-grid,
  .tool-finder {
    grid-template-columns: minmax(0, 1fr);
  }

  .tools-journey--email,
  .tool-finder__result,
  .tool-finder__categories {
    grid-column: auto;
  }

  .tool-finder__result {
    grid-row: auto;
    justify-self: start;
  }

  .tool-finder__input {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .tool-finder__input button {
    grid-column: 1 / -1;
    min-height: 2.75rem;
    border-top: 1px solid #d9e3ee;
    border-left: 0;
  }

  .tool-finder-empty {
    grid-template-columns: minmax(0, 1fr);
  }

  .tool-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .tool-card--featured {
    grid-column: auto;
  }

  .tool-card {
    min-height: 17rem;
  }

  .password-workbench__heading {
    align-items: stretch;
    flex-direction: column;
  }

  .generator-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .generated-secret__actions .tool-action {
    flex: 1 1 12rem;
  }

  .tool-check-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .tool-check-grid__wide {
    grid-column: auto;
  }

  .mail-signal-console__route {
    grid-template-columns: 3.25rem 1fr 3.25rem 1fr 3.25rem;
  }

  .mail-signal-console__route span {
    width: 3.25rem;
    height: 3.25rem;
  }

  .email-checker-submit {
    width: 100%;
  }

  .email-finding {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.7rem;
  }

  .email-scope__comparison {
    grid-template-columns: minmax(0, 1fr);
  }

  .email-score-card__footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .email-score-card__footer span {
    text-align: left;
  }

  .web-observer-console ul {
    grid-template-columns: minmax(0, 1fr);
  }

  .toolbox-console__footer {
    gap: 0.35rem;
  }

  .dns-map-console__body { min-height: 17rem; }
  .dns-map-console__legend { grid-template-columns: minmax(0, 1fr); }
  .dns-result-summary__heading { flex-direction: column; }
  .dns-result-summary__total { padding: 0; text-align: left; }
  .dns-result-summary__bands { grid-template-columns: minmax(0, 1fr); }
  .dns-method__steps { grid-template-columns: minmax(0, 1fr); }
  .header-input-panel__heading,
  .header-report__heading { align-items: stretch; flex-direction: column; }
  .header-input-panel__meta { align-items: flex-start; flex-direction: column; }
  .header-input-panel__actions .tool-action,
  .header-report__actions .tool-action { flex: 1 1 100%; justify-content: center; }
  .header-report__actions { justify-content: stretch; }
  .header-report__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .header-report__metrics article:nth-child(2) { border-right: 0; }
  .header-report__metrics article:nth-child(-n + 2) { border-bottom: 1px solid #dce5ef; }
  .authentication-result-grid { grid-template-columns: minmax(0, 1fr); }
  .delivery-route { grid-template-columns: minmax(0, 1fr); }
  .delivery-route__hop:not(:last-child)::after { inset: auto auto -0.35rem 1.8rem; width: 0; height: 0.7rem; border-top: 0; border-left: 1px dashed #8eb0c8; }
  .header-trace-console__line { max-width: 82%; grid-template-columns: minmax(0, 1fr); gap: 0.2rem; }
  .header-trace-console__seal { right: 0.55rem; width: 4.5rem; height: 4.5rem; }
  .downtime-field-grid,
  .downtime-field-grid--three,
  .downtime-boundaries__notes { grid-template-columns: minmax(0, 1fr); }
  .downtime-form__actions .tool-action,
  .downtime-result__actions .tool-action { flex: 1 1 100%; justify-content: center; }
  .downtime-console__flow { width: 45%; }
  .downtime-console__clock { width: 7.25rem; min-height: 7.25rem; }
  .continuity-field-grid,
  .continuity-check-grid,
  .continuity-boundaries__notes { grid-template-columns: minmax(0, 1fr); }
  .continuity-field--wide { grid-column: auto; }
  .continuity-service__fields { grid-template-columns: 1fr; }
  .continuity-service__wide { grid-column: 1 / -1; }
  .continuity-report__heading { flex-direction: column; }
  .continuity-report__actions,
  .continuity-form__actions { width: 100%; }
  .continuity-report__actions .tool-action,
  .continuity-form__actions .tool-action { flex: 1 1 100%; justify-content: center; }
  .continuity-report__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .continuity-report__metrics article:nth-child(2) { border-right: 0; }
  .continuity-report__metrics article:nth-child(-n + 2) { border-bottom: 1px solid #dce5ef; }
  .continuity-recovery-item__heading { flex-direction: column; }
  .continuity-console__path { inset-inline: 6.4rem; }
  .continuity-console__incident,
  .continuity-console__recover { width: 4.7rem; height: 4.7rem; }
  .brief-field-grid,
  .brief-field-grid--three,
  .brief-choice-grid,
  .brief-choice-grid--compact,
  .brief-readiness-grid,
  .brief-priority-grid,
  .brief-boundaries__notes { grid-template-columns: minmax(0, 1fr); }
  .brief-field--wide { grid-column: auto; }
  .brief-report__heading { flex-direction: column; }
  .brief-report__actions,
  .brief-form__actions { width: 100%; }
  .brief-report__actions .tool-action,
  .brief-form__actions .tool-action { flex: 1 1 100%; justify-content: center; }
  .brief-report__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .brief-report__metrics article:nth-child(2) { border-right: 0; }
  .brief-report__metrics article:nth-child(-n + 2) { border-bottom: 1px solid #dce5ef; }
  .brief-console__canvas { grid-template-columns: minmax(0, 1fr) 1.8rem 6rem; padding: 1rem; }
  .brief-console__result { min-height: 6rem; }
  .spf-findings__list,
  .spf-boundary__notes { grid-template-columns: minmax(0, 1fr); }
  .spf-checker-submit { width: 100%; justify-content: center; }
  .spf-result-card__heading { flex-direction: column; }
  .spf-result-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .spf-result-card__metrics div:nth-child(2) { border-right: 0; }
  .spf-result-card__metrics div:nth-child(-n + 2) { border-bottom: 1px solid rgba(84, 214, 255, 0.14); }
  .spf-policy-node header { grid-template-columns: 2rem minmax(0, 1fr); }
  .spf-policy-node header strong { grid-column: 2; }
  .spf-breakdown { align-items: flex-start; flex-direction: column; }
  .spf-trace-console__body { grid-template-columns: minmax(0, 1fr) 5.6rem; }
  .spf-trace-console__limit { width: 5.6rem; min-height: 5.6rem; }
  .spf-builder-form__heading,
  .spf-builder-result__heading { flex-direction: column; }
  .spf-builder-field-grid,
  .spf-provider-grid,
  .spf-ending-grid,
  .spf-builder-source-links { grid-template-columns: minmax(0, 1fr); }
  .spf-builder-field--wide { grid-column: auto; }
  .spf-builder-advanced { grid-template-columns: minmax(0, 1fr); }
  .spf-builder-form__actions .premium-btn,
  .spf-builder-form__actions .tool-action { flex: 1 1 100%; justify-content: center; }
  .spf-builder-console__body { grid-template-columns: minmax(0, 1fr) 2.4rem 5.6rem; padding: 1rem; }
  .spf-builder-console__gate { width: 5.6rem; min-height: 5.6rem; }
}

@media (prefers-reduced-motion: reduce) {
  .tool-card,
  .tool-card__link {
    transition: none;
  }

  .header-input-panel textarea {
    transition: none;
  }

  .downtime-field input,
  .downtime-field select,
  .downtime-next-step__links a { transition: none; }
  .continuity-service,
  .continuity-field input,
  .continuity-field select,
  .continuity-field textarea,
  .continuity-service input,
  .continuity-service select,
  .continuity-check-grid select { transition: none; }
  .brief-choice-grid label > span,
  .brief-field input,
  .brief-field select,
  .brief-field textarea,
  .brief-readiness-grid select { transition: none; }
  .spf-provider-grid label > span,
  .spf-ending-grid label > span,
  .spf-builder-source-links a { transition: none; }
}

@media print {
  .header-analyzer-hero,
  .header-input-panel,
  .header-empty-state,
  .header-method,
  .header-report__actions,
  .tool-live-status,
  .premium-footer,
  .premium-header { display: none !important; }

  .header-analyzer-workbench-section { padding: 0; background: #fff; }
  .header-report { display: block !important; margin: 0; border: 0; padding: 0; box-shadow: none; }
  .header-report-panel,
  .header-findings { break-inside: avoid; }

  .downtime-hero,
  .downtime-form__actions,
  .downtime-result__actions,
  .downtime-method,
  .downtime-faq,
  .downtime-next-step,
  .premium-footer { display: none !important; }

  .downtime-calculator-section { padding: 0; background: #fff; }
  .downtime-layout { display: block; border: 0; box-shadow: none; }
  .downtime-form { padding: 0 0 1rem; }
  .downtime-result { position: static; border: 1px solid #dce5ef; color: #173350; background: #fff; break-inside: avoid; }
  .downtime-result__topline h2,
  .downtime-result__primary strong,
  .downtime-result__metrics strong,
  .downtime-result__breakdown h3,
  .downtime-result__breakdown label strong { color: #173350; }
  .downtime-result__primary span,
  .downtime-result__primary small,
  .downtime-result__metrics span,
  .downtime-result__breakdown label { color: #52657c; }

  .continuity-hero,
  .continuity-form__actions,
  .continuity-privacy-panel,
  .continuity-boundaries,
  .continuity-faq,
  .continuity-report__actions { display: none !important; }
  .continuity-builder-section { padding: 0; background: #fff; }
  .continuity-builder { display: block; border: 0; box-shadow: none; }
  .continuity-form { padding: 0 0 1rem; }
  .continuity-report { display: block !important; margin: 0; border: 0; padding: 0; box-shadow: none; }
  .continuity-report-panel,
  .continuity-recovery-item { break-inside: avoid; }

  .brief-hero,
  .brief-form__actions,
  .brief-privacy-panel,
  .brief-boundaries,
  .brief-faq,
  .brief-report__actions { display: none !important; }
  .brief-builder-section { padding: 0; background: #fff; }
  .brief-builder { display: block; border: 0; box-shadow: none; }
  .brief-form { padding: 0 0 1rem; }
  .brief-report { display: block !important; margin: 0; border: 0; padding: 0; box-shadow: none; }
  .brief-report-panel,
  .brief-sitemap-item { break-inside: avoid; }

  .spf-hero,
  .spf-checker-form-panel,
  .spf-result-preview,
  .spf-boundary,
  .spf-faq { display: none !important; }
  .spf-checker-section,
  .spf-policy-map { padding: 0; background: #fff; }
  .spf-checker-layout { display: block; border: 0; box-shadow: none; }
  .spf-result-card { border: 0; color: #173350; background: #fff; }
  .spf-result-card__heading h2,
  .spf-result-card__metrics dd,
  .spf-lookup-meter strong { color: #173350; }
  .spf-result-card__heading p:not(.premium-eyebrow),
  .spf-lookup-meter span,
  .spf-lookup-meter p,
  .spf-result-card__metrics dt { color: #52657c; }
  .spf-findings,
  .spf-policy-node { break-inside: avoid; }

  .spf-builder-hero,
  .spf-builder-form__actions,
  .spf-builder-sources,
  .spf-builder-faq,
  .spf-builder-result__actions { display: none !important; }
  .spf-builder-section,
  .spf-builder-method { padding: 0; background: #fff; }
  .spf-builder-workbench { display: block; border: 0; box-shadow: none; }
  .spf-builder-form { padding: 0 0 1rem; }
  .spf-builder-result { position: static; border: 1px solid #dce5ef; color: #173350; background: #fff; break-inside: avoid; }
  .spf-builder-result__heading h2,
  .spf-builder-result__record code,
  .spf-builder-result__metrics dd,
  .spf-builder-warning strong { color: #173350; }
  .spf-builder-result__dns span,
  .spf-builder-result__record > span,
  .spf-builder-result__metrics dt,
  .spf-builder-warning p,
  .spf-builder-result__status { color: #52657c; }
}

/* DKIM inspector */
.dkim-hero { overflow: hidden; }
.dkim-path-console { align-self: stretch; }
.dkim-path-console__body { display: grid; gap: 0.9rem; padding: 1.4rem; background: linear-gradient(145deg, #071d2e, #09283b); }
.dkim-signature-sample,
.dkim-path-console__query { border: 1px solid rgba(84, 214, 255, 0.17); padding: 0.9rem 1rem; background: rgba(84, 214, 255, 0.045); }
.dkim-signature-sample small,
.dkim-path-console__query small { display: block; margin-bottom: 0.38rem; color: rgba(219, 234, 254, 0.55); font-size: 0.62rem; letter-spacing: 0.08em; text-transform: uppercase; }
.dkim-signature-sample code,
.dkim-path-console__query strong { display: block; overflow-wrap: anywhere; color: #d9f7ff; font-family: var(--premium-mono, monospace); font-size: 0.78rem; line-height: 1.6; }
.dkim-path-console .dkim-path-console__query strong { color: #fff; }
.dkim-signature-sample b { color: #54d6ff; }
.dkim-path-console__join { display: flex; gap: 0.7rem; align-items: center; justify-content: center; color: rgba(219, 234, 254, 0.72); font-family: var(--premium-mono, monospace); font-size: 0.68rem; }
.dkim-path-console__join i { color: #54d6ff; }
.dkim-path-console__key { display: flex; gap: 0.75rem; align-items: center; border-left: 0.2rem solid #43d39e; padding: 0.85rem 1rem; background: rgba(67, 211, 158, 0.075); }
.dkim-path-console__key > i { color: #78e3bb; font-size: 1.25rem; }
.dkim-path-console__key b,
.dkim-path-console__key small { display: block; }
.dkim-path-console__key b { color: #fff; font-size: 0.8rem; }
.dkim-path-console__key small { margin-top: 0.15rem; color: rgba(219, 234, 254, 0.58); font-size: 0.64rem; }
.dkim-path-console__footer { display: flex; gap: 1rem; justify-content: space-between; border-top: 1px solid rgba(84, 214, 255, 0.12); padding: 0.85rem 1.4rem; color: rgba(219, 234, 254, 0.68); background: #071d2e; font-size: 0.65rem; }
.dkim-path-console__footer span { display: flex; gap: 0.35rem; align-items: center; }
.dkim-path-console__footer i { color: #54d6ff; }

.dkim-checker-layout { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: start; }
.dkim-checker-form-panel > h2 { max-width: 13ch; }
.dkim-checker-form-panel > p:not(.premium-eyebrow) { max-width: 39rem; }
.dkim-checker-form { display: grid; gap: 1rem; margin-top: 1.5rem; }
.dkim-checker-form .tool-field label { display: flex; gap: 0.5rem; align-items: baseline; }
.dkim-checker-form .tool-field label span { color: #718096; font-size: 0.68rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }
.dkim-checker-form .tool-field code { font-size: 0.78em; }
.dkim-checker-submit { justify-content: center; width: 100%; }
.dkim-header-route { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; margin-top: 1rem; border: 1px solid rgba(4, 63, 91, 0.12); padding: 0.85rem 1rem; color: #043f5b; background: #fff; text-decoration: none; transition: border-color 160ms ease, transform 160ms ease; }
.dkim-header-route:hover { border-color: rgba(0, 145, 188, 0.42); color: #043f5b; transform: translateY(-1px); }
.dkim-header-route > i:first-child { color: #0091bc; font-size: 1.15rem; }
.dkim-header-route strong,
.dkim-header-route small { display: block; }
.dkim-header-route strong { font-size: 0.78rem; }
.dkim-header-route small { margin-top: 0.15rem; color: #66798a; font-size: 0.66rem; line-height: 1.45; }
.dkim-privacy-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; margin-top: 1rem; color: #526878; font-size: 0.7rem; line-height: 1.6; }
.dkim-privacy-note > i { margin-top: 0.1rem; color: #119a72; }
.dkim-privacy-note p { margin: 0; }
.dkim-privacy-note strong { color: #243f50; }

.dkim-result-preview,
.dkim-result-card { min-width: 0; border: 1px solid rgba(84, 214, 255, 0.16); padding: clamp(1.2rem, 3vw, 2rem); color: #dbeafe; background: linear-gradient(145deg, #071d2e, #09283b); box-shadow: 0 1.5rem 3.5rem rgba(4, 31, 47, 0.14); }
.dkim-result-preview__visual { display: flex; gap: 0.55rem; align-items: center; flex-wrap: wrap; margin-bottom: 1.4rem; }
.dkim-result-preview__visual span { border: 1px solid rgba(84, 214, 255, 0.18); padding: 0.5rem 0.65rem; color: #a9eaff; font-family: var(--premium-mono, monospace); font-size: 0.68rem; }
.dkim-result-preview__visual i { color: rgba(84, 214, 255, 0.6); }
.dkim-result-preview h2 { color: #fff; font-size: clamp(1.35rem, 2vw, 1.8rem); }
.dkim-result-preview p { margin-bottom: 0; color: rgba(219, 234, 254, 0.67); line-height: 1.7; }
.dkim-result-card { border-top: 0.22rem solid #54d6ff; }
.dkim-result-card--pass { border-top-color: #43d39e; }
.dkim-result-card--warning { border-top-color: #f1ba58; }
.dkim-result-card--fail { border-top-color: #ef7b83; }
.dkim-result-card--unavailable { border-top-color: #91a5b4; }
.dkim-result-card__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.dkim-result-card__heading h2 { margin-bottom: 0.45rem; overflow-wrap: anywhere; color: #fff; font-size: clamp(1.3rem, 2.1vw, 1.8rem); }
.dkim-result-card__heading p:last-child { margin: 0; color: rgba(219, 234, 254, 0.68); font-size: 0.78rem; line-height: 1.65; }
.dkim-result-card__status { display: inline-flex; flex: 0 0 auto; gap: 0.35rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.2); padding: 0.45rem 0.6rem; color: #d9f7ff; background: rgba(84, 214, 255, 0.06); font-size: 0.64rem; font-weight: 750; }
.dkim-result-card__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 1.25rem 0 0; border: 1px solid rgba(84, 214, 255, 0.14); }
.dkim-result-card__metrics > div { min-width: 0; padding: 0.75rem; border-right: 1px solid rgba(84, 214, 255, 0.14); }
.dkim-result-card__metrics > div:last-child { border-right: 0; }
.dkim-result-card__metrics dt { color: rgba(219, 234, 254, 0.52); font-size: 0.58rem; line-height: 1.35; }
.dkim-result-card__metrics dd { margin: 0.2rem 0 0; overflow-wrap: anywhere; color: #fff; font-family: var(--premium-mono, monospace); font-size: 0.74rem; font-weight: 800; }
.dkim-result-card__target { margin-top: 1rem; border-left: 0.2rem solid #54d6ff; padding: 0.8rem 0.9rem; background: rgba(84, 214, 255, 0.045); }
.dkim-result-card__target span { display: block; color: rgba(219, 234, 254, 0.5); font-size: 0.58rem; letter-spacing: 0.07em; text-transform: uppercase; }
.dkim-result-card__target code { display: block; margin-top: 0.28rem; overflow-wrap: anywhere; color: #a9eaff; font-size: 0.7rem; }
.dkim-result-card__target p { margin: 0.3rem 0 0; color: rgba(219, 234, 254, 0.67); font-size: 0.69rem; line-height: 1.6; }
.dkim-result-card__partial { display: flex; gap: 0.45rem; align-items: flex-start; margin: 0.8rem 0 0; color: #ffd99a; font-size: 0.67rem; line-height: 1.55; }

.dkim-evidence .ats-section-header { max-width: 52rem; }
.dkim-candidate-list { display: grid; gap: 1.25rem; }
.dkim-candidate { overflow: hidden; border: 1px solid rgba(4, 63, 91, 0.13); background: #fff; box-shadow: 0 1rem 2.5rem rgba(4, 31, 47, 0.07); }
.dkim-candidate > header { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid rgba(4, 63, 91, 0.1); padding: 1rem 1.2rem; background: #f7fbfd; }
.dkim-candidate > header small { color: #708292; font-size: 0.61rem; letter-spacing: 0.08em; text-transform: uppercase; }
.dkim-candidate > header h3 { margin: 0.15rem 0; color: #0a3348; font-size: 1.05rem; }
.dkim-candidate > header code { overflow-wrap: anywhere; color: #537080; font-size: 0.66rem; }
.dkim-candidate > header > span { display: inline-flex; flex: 0 0 auto; gap: 0.35rem; align-items: center; border: 1px solid rgba(0, 145, 188, 0.18); padding: 0.4rem 0.55rem; color: #17627e; background: rgba(0, 145, 188, 0.05); font-size: 0.63rem; font-weight: 750; }
.dkim-candidate--pass > header > span { border-color: rgba(17, 154, 114, 0.23); color: #0b7758; background: rgba(17, 154, 114, 0.06); }
.dkim-candidate--warning > header > span { border-color: rgba(183, 122, 12, 0.25); color: #875800; background: rgba(241, 186, 88, 0.09); }
.dkim-candidate--fail > header > span { border-color: rgba(190, 56, 66, 0.22); color: #a22e38; background: rgba(239, 123, 131, 0.07); }
.dkim-cname,
.dkim-query-errors { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; margin: 1rem 1.2rem 0; border: 1px solid rgba(0, 145, 188, 0.14); padding: 0.8rem; color: #3c5b6c; background: rgba(0, 145, 188, 0.035); }
.dkim-cname > i,
.dkim-query-errors > i { color: #0091bc; }
.dkim-cname strong { display: block; color: #173d51; font-size: 0.72rem; }
.dkim-cname code { display: block; margin-top: 0.25rem; overflow-wrap: anywhere; color: #17627e; font-size: 0.67rem; }
.dkim-cname p,
.dkim-query-errors p { margin: 0.3rem 0 0; font-size: 0.67rem; line-height: 1.55; }
.dkim-query-errors { border-color: rgba(145, 165, 180, 0.25); background: rgba(145, 165, 180, 0.07); }
.dkim-query-errors > i { color: #6e8493; }
.dkim-key-analysis { margin: 1rem 1.2rem 1.2rem; border: 1px solid rgba(4, 63, 91, 0.12); padding: clamp(1rem, 2.5vw, 1.35rem); }
.dkim-key-analysis__heading { display: flex; gap: 1rem; align-items: center; justify-content: space-between; }
.dkim-key-analysis__heading h4 { margin: 0; color: #173d51; font-size: 0.93rem; }
.dkim-key-analysis__heading span { color: #607989; font-size: 0.59rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.dkim-key-analysis__record { display: block; max-height: 8.5rem; margin-top: 0.8rem; overflow: auto; border-left: 0.18rem solid #0091bc; padding: 0.7rem 0.8rem; overflow-wrap: anywhere; color: #164f69; background: #f5fafc; font-size: 0.67rem; line-height: 1.6; white-space: normal; }
.dkim-key-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0.85rem 0 0; border: 1px solid rgba(4, 63, 91, 0.1); }
.dkim-key-facts > div { min-width: 0; padding: 0.7rem; border-right: 1px solid rgba(4, 63, 91, 0.1); }
.dkim-key-facts > div:last-child { border-right: 0; }
.dkim-key-facts dt { color: #718492; font-size: 0.58rem; }
.dkim-key-facts dd { margin: 0.2rem 0 0; overflow-wrap: anywhere; color: #173d51; font-family: var(--premium-mono, monospace); font-size: 0.7rem; font-weight: 800; }
.dkim-fingerprint { margin-top: 0.8rem; }
.dkim-fingerprint span { display: block; color: #718492; font-size: 0.58rem; }
.dkim-fingerprint code { display: block; margin-top: 0.25rem; overflow-wrap: anywhere; color: #17627e; font-size: 0.64rem; }
.dkim-finding-list { display: grid; gap: 0.6rem; margin-top: 1rem; }
.dkim-finding { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; border: 1px solid rgba(4, 63, 91, 0.09); padding: 0.75rem; background: #fbfdfe; }
.dkim-finding > i { margin-top: 0.1rem; color: #4c7b90; }
.dkim-finding span { color: #718492; font-size: 0.56rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.dkim-finding h5 { margin: 0.08rem 0 0.25rem; color: #173d51; font-size: 0.78rem; }
.dkim-finding p { margin: 0; color: #536b79; font-size: 0.67rem; line-height: 1.55; }
.dkim-finding__action { margin-top: 0.35rem !important; color: #355568 !important; }
.dkim-finding--pass { border-left: 0.18rem solid #43d39e; }
.dkim-finding--pass > i { color: #119a72; }
.dkim-finding--warning { border-left: 0.18rem solid #f1ba58; }
.dkim-finding--warning > i { color: #b77a0c; }
.dkim-finding--fail { border-left: 0.18rem solid #ef7b83; }
.dkim-finding--fail > i { color: #be3842; }
.dkim-candidate__empty { margin: 1rem 1.2rem 1.2rem; color: #536b79; font-size: 0.72rem; line-height: 1.6; }
.dkim-no-candidates { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: start; border: 1px solid rgba(0, 145, 188, 0.15); padding: 1.2rem; background: #fff; }
.dkim-no-candidates > i { color: #0091bc; font-size: 1.35rem; }
.dkim-no-candidates h3 { margin: 0 0 0.35rem; color: #173d51; font-size: 1rem; }
.dkim-no-candidates p { margin: 0; color: #536b79; line-height: 1.65; }
.dkim-search-ledger { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 1.5rem; margin-top: 1.5rem; border: 1px solid rgba(4, 63, 91, 0.11); padding: 1.2rem; background: #f7fbfd; }
.dkim-search-ledger h3 { color: #173d51; }
.dkim-search-ledger p:last-child { color: #607786; font-size: 0.73rem; line-height: 1.6; }
.dkim-search-ledger ul { display: flex; gap: 0.45rem; align-content: flex-start; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.dkim-search-ledger li { border: 1px solid rgba(0, 145, 188, 0.14); padding: 0.42rem 0.55rem; background: #fff; }
.dkim-search-ledger code { color: #17627e; font-size: 0.66rem; }

.dkim-boundary__grid,
.dkim-standards__grid,
.dkim-faq__grid { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr); gap: clamp(2rem, 5vw, 5rem); }
.dkim-boundary h2 { color: #fff; }
.dkim-boundary__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.dkim-boundary__notes article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.13); padding: 0.9rem; background: rgba(84, 214, 255, 0.035); }
.dkim-boundary__notes > article > i { color: #54d6ff; }
.dkim-boundary__notes h3 { margin: 0 0 0.3rem; color: #fff; font-size: 0.78rem; }
.dkim-boundary__notes p { margin: 0; color: rgba(219, 234, 254, 0.64); font-size: 0.68rem; line-height: 1.6; }
.dkim-boundary__notes code { color: #a9eaff; }
.dkim-standard-links { display: grid; gap: 0.65rem; }
.dkim-standard-links a { display: flex; gap: 1rem; align-items: center; justify-content: space-between; border: 1px solid rgba(4, 63, 91, 0.12); padding: 0.85rem 1rem; color: #173d51; background: #fff; text-decoration: none; }
.dkim-standard-links a:hover { border-color: rgba(0, 145, 188, 0.38); }
.dkim-standard-links strong,
.dkim-standard-links small { display: block; }
.dkim-standard-links strong { font-size: 0.78rem; }
.dkim-standard-links small { margin-top: 0.15rem; color: #687d8a; font-size: 0.65rem; }
.dkim-standard-links i { color: #0091bc; }
.dkim-faq__list { display: grid; gap: 0.6rem; }
.dkim-faq__list details { border: 1px solid rgba(4, 63, 91, 0.12); padding: 0.9rem 1rem; background: #fff; }
.dkim-faq__list summary { color: #173d51; cursor: pointer; font-size: 0.8rem; font-weight: 750; }
.dkim-faq__list p { margin: 0.65rem 0 0; color: #536b79; font-size: 0.72rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .dkim-checker-layout,
  .dkim-boundary__grid,
  .dkim-standards__grid,
  .dkim-faq__grid { grid-template-columns: 1fr; }
  .dkim-checker-form-panel > h2 { max-width: none; }
}

@media (max-width: 767.98px) {
  .dkim-result-card__heading,
  .dkim-candidate > header { align-items: stretch; flex-direction: column; }
  .dkim-result-card__status,
  .dkim-candidate > header > span { align-self: flex-start; }
  .dkim-result-card__metrics,
  .dkim-key-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dkim-result-card__metrics > div:nth-child(2),
  .dkim-key-facts > div:nth-child(2) { border-right: 0; }
  .dkim-result-card__metrics > div:nth-child(-n+2),
  .dkim-key-facts > div:nth-child(-n+2) { border-bottom: 1px solid rgba(84, 214, 255, 0.14); }
  .dkim-key-facts > div:nth-child(-n+2) { border-bottom-color: rgba(4, 63, 91, 0.1); }
  .dkim-search-ledger,
  .dkim-boundary__notes { grid-template-columns: 1fr; }
}

@media (max-width: 479.98px) {
  .dkim-path-console__join { align-items: stretch; flex-direction: column; }
  .dkim-path-console__join i { transform: rotate(90deg); }
  .dkim-path-console__footer { align-items: flex-start; flex-direction: column; }
  .dkim-result-card__metrics,
  .dkim-key-facts { grid-template-columns: 1fr; }
  .dkim-result-card__metrics > div,
  .dkim-key-facts > div { border-right: 0; border-bottom: 1px solid rgba(4, 63, 91, 0.1); }
  .dkim-result-card__metrics > div { border-bottom-color: rgba(84, 214, 255, 0.14); }
  .dkim-result-card__metrics > div:last-child,
  .dkim-key-facts > div:last-child { border-bottom: 0; }
  .dkim-header-route { grid-template-columns: auto minmax(0, 1fr); }
  .dkim-header-route > i:last-child { display: none; }
}

@media print {
  .dkim-hero,
  .dkim-checker-form,
  .dkim-header-route,
  .dkim-privacy-note,
  .dkim-boundary,
  .dkim-standards,
  .dkim-faq { display: none !important; }
  .dkim-checker-section,
  .dkim-evidence { padding: 1rem 0 !important; background: #fff !important; }
  .dkim-checker-layout { display: block; }
  .dkim-checker-form-panel { display: none; }
  .dkim-result-card { color: #111; background: #fff; box-shadow: none; }
  .dkim-result-card * { color: #111 !important; }
  .dkim-key-analysis__record { max-height: none; overflow: visible; }
}

/* DMARC Record Builder */
.dmarc-builder-hero .ats-page-hero__grid { align-items: center; }

.dmarc-builder-console { overflow: hidden; }

.dmarc-builder-console__path {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 0.55rem;
  align-items: center;
  padding: clamp(1.25rem, 4vw, 2rem);
}

.dmarc-builder-console__path > i { color: rgba(109, 226, 255, 0.5); }

.dmarc-builder-console__stage {
  display: grid;
  gap: 0.28rem;
  min-width: 0;
  border: 1px solid rgba(84, 214, 255, 0.16);
  padding: 0.8rem;
  color: #d7e9f6;
  background: rgba(255, 255, 255, 0.025);
}

.dmarc-builder-console__stage--active {
  border-color: rgba(67, 211, 158, 0.5);
  box-shadow: inset 0 0 0 1px rgba(67, 211, 158, 0.08), 0 0 1.5rem rgba(67, 211, 158, 0.08);
}

.dmarc-builder-console__stage small { color: #69dfff; font-family: var(--premium-mono, monospace); font-size: 0.62rem; }
.dmarc-builder-console__stage strong { color: #fff; font-size: 0.83rem; }
.dmarc-builder-console__stage code { overflow-wrap: anywhere; color: rgba(215, 233, 246, 0.65); font-size: 0.63rem; }

.dmarc-builder-console__evidence {
  display: flex;
  gap: 0.55rem;
  justify-content: space-between;
  border-top: 1px solid rgba(84, 214, 255, 0.13);
  padding: 0.85rem clamp(1.25rem, 4vw, 2rem);
  color: rgba(219, 234, 254, 0.68);
  font-size: 0.65rem;
}

.dmarc-builder-console__evidence span { display: inline-flex; gap: 0.35rem; align-items: center; }
.dmarc-builder-console__evidence i { color: #54d6ff; }

.dmarc-builder-workbench {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(20rem, 0.8fr);
  gap: 1.2rem;
  align-items: start;
}

.dmarc-builder-form,
.dmarc-builder-result {
  min-width: 0;
  border: 1px solid #dce5ef;
  background: #fff;
  box-shadow: 0 1.5rem 4rem rgba(19, 51, 80, 0.08);
}

.dmarc-builder-form { padding: clamp(1.25rem, 4vw, 2.4rem); }

.dmarc-builder-form__heading,
.dmarc-builder-result__heading {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}

.dmarc-builder-form__heading h2,
.dmarc-builder-result__heading h2 { margin: 0.25rem 0 0; color: #173350; font-size: clamp(1.45rem, 2.8vw, 2.15rem); }
.dmarc-builder-form__heading > span { display: inline-flex; flex: 0 0 auto; gap: 0.4rem; align-items: center; border-radius: 999px; padding: 0.45rem 0.7rem; color: #087550; background: #e5f9f1; font-size: 0.68rem; font-weight: 800; }

.dmarc-builder-error:empty { display: none; }
.dmarc-builder-error { margin-top: 1.1rem; }

.dmarc-builder-step {
  min-width: 0;
  margin: 1.5rem 0 0;
  border: 0;
  border-top: 1px solid #dfe7ef;
  padding: 1.35rem 0 0;
}

.dmarc-builder-step legend { display: flex; gap: 0.65rem; align-items: center; float: none; width: auto; margin: 0 0 1rem; color: #173350; font-size: 0.98rem; }
.dmarc-builder-step legend span { display: grid; width: 2rem; height: 2rem; place-items: center; border: 1px solid #abd1df; border-radius: 50%; color: #137796; background: #f0f9fc; font-family: var(--premium-mono, monospace); font-size: 0.62rem; }
.dmarc-builder-step__intro { margin: -0.35rem 0 1rem; color: #62768c; font-size: 0.8rem; line-height: 1.7; }
.dmarc-builder-step__intro code { color: #176f8b; }

.dmarc-builder-field-grid { display: grid; grid-template-columns: minmax(13rem, 0.55fr) minmax(0, 1fr); gap: 1rem; }
.dmarc-builder-field--wide { min-width: 0; }
.dmarc-builder-field--wide label span { color: #718398; font-size: 0.7rem; font-weight: 500; }

.dmarc-stage-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0.7rem; }
.dmarc-stage-grid label { display: flex; min-width: 0; cursor: pointer; }
.dmarc-stage-grid label:first-child,
.dmarc-stage-grid label:last-child { grid-column: span 2; }
.dmarc-stage-grid label:nth-child(2),
.dmarc-stage-grid label:nth-child(3),
.dmarc-stage-grid label:nth-child(4) { grid-column: span 2; }
.dmarc-stage-grid input { position: absolute; opacity: 0; pointer-events: none; }
.dmarc-stage-grid span { display: grid; width: 100%; min-width: 0; border: 1px solid #d9e3ec; padding: 0.9rem; color: #5c7087; background: #fbfdfe; transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.dmarc-stage-grid small { color: #71859a; font-size: 0.59rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.dmarc-stage-grid strong { margin-top: 0.22rem; color: #173350; font-size: 0.86rem; }
.dmarc-stage-grid code { margin-top: 0.42rem; overflow-wrap: anywhere; color: #0c7691; font-size: 0.67rem; }
.dmarc-stage-grid em { margin-top: 0.58rem; color: #687b90; font-size: 0.68rem; font-style: normal; line-height: 1.55; }
.dmarc-stage-grid label:hover span { border-color: #8bc8d9; transform: translateY(-1px); }
.dmarc-stage-grid input:focus-visible + span { outline: 3px solid rgba(25, 143, 174, 0.25); outline-offset: 2px; }
.dmarc-stage-grid input:checked + span { border-color: #1786a6; box-shadow: inset 0 0 0 1px #1786a6, 0 0.65rem 1.6rem rgba(25, 125, 153, 0.09); background: #f0fbfe; }

.dmarc-builder-optional { margin-top: 1rem; border: 1px solid #e0e7ef; padding: 1rem; background: #f8fafc; }
.dmarc-builder-optional .tool-field { margin-top: 0.9rem; opacity: 0.55; }
.dmarc-builder-optional--enabled { border-color: #e5c27c; background: #fffaf0; }
.dmarc-builder-optional--enabled .tool-field { opacity: 1; }
.dmarc-builder-switch { display: flex; gap: 0.75rem; align-items: flex-start; color: #173350; cursor: pointer; }
.dmarc-builder-switch input { flex: 0 0 auto; width: 1.05rem; height: 1.05rem; margin-top: 0.15rem; accent-color: #147d9c; }
.dmarc-builder-switch span { display: grid; gap: 0.18rem; }
.dmarc-builder-switch small { color: #6f8093; font-size: 0.72rem; line-height: 1.55; }

.dmarc-builder-select-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.dmarc-builder-select-grid select { width: 100%; border: 1px solid #cdd9e4; border-radius: 0; padding: 0.78rem 2.2rem 0.78rem 0.8rem; color: #173350; background-color: #fff; }

.dmarc-builder-confirmations { display: grid; gap: 0.65rem; }
.dmarc-builder-confirmations legend { margin-bottom: 0.35rem; }
.dmarc-builder-confirmations .dmarc-builder-step__intro { margin: 0 0 0.35rem; }
.dmarc-builder-confirmations > label { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.75rem; align-items: start; border: 1px solid #e1e7ee; padding: 0.85rem; color: #173350; background: #fafcfd; cursor: pointer; }
.dmarc-builder-confirmations > label[hidden] { display: none; }
.dmarc-builder-confirmations > label input { width: 1.05rem; height: 1.05rem; margin-top: 0.15rem; accent-color: #147d9c; }
.dmarc-builder-confirmations > label span { display: grid; gap: 0.18rem; }
.dmarc-builder-confirmations > label small { color: #6c7f93; font-size: 0.7rem; line-height: 1.55; }
.dmarc-builder-confirmations > label em { border-radius: 999px; padding: 0.25rem 0.5rem; color: #66788d; background: #e9eef3; font-size: 0.58rem; font-style: normal; font-weight: 800; white-space: nowrap; }
.dmarc-builder-confirmations > label.dmarc-builder-confirmation--required { border-color: #9fcddd; background: #f4fbfd; }
.dmarc-builder-confirmations > label.dmarc-builder-confirmation--required em { color: #075f77; background: #dff4fa; }
.dmarc-builder-confirmations > label:has(input:focus-visible) { outline: 3px solid rgba(25, 143, 174, 0.22); outline-offset: 2px; }

.dmarc-builder-form__actions,
.dmarc-builder-result__actions { display: flex; gap: 0.65rem; flex-wrap: wrap; margin-top: 1.35rem; }

.dmarc-builder-result {
  position: sticky;
  top: 6.2rem;
  scroll-margin-top: 6.2rem;
  padding: clamp(1.25rem, 3vw, 2rem);
  color: #dbeafe;
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #0b1929;
  background-size: 1.5rem 1.5rem;
}

.dmarc-builder-result__heading h2 { overflow-wrap: anywhere; color: #fff; }
.dmarc-builder-result__badge { display: inline-flex; flex: 0 0 auto; gap: 0.4rem; align-items: center; border: 1px solid rgba(241, 186, 88, 0.3); border-radius: 999px; padding: 0.42rem 0.65rem; color: #ffe0a4; background: rgba(241, 186, 88, 0.08); font-size: 0.63rem; font-weight: 800; }
.dmarc-builder-result__badge--reviewed { border-color: rgba(67, 211, 158, 0.35); color: #9af1cf; background: rgba(67, 211, 158, 0.09); }
.dmarc-builder-result__badge--blocked { border-color: rgba(239, 123, 131, 0.35); color: #ffc1c6; background: rgba(239, 123, 131, 0.09); }

.dmarc-builder-result__dns { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(5rem, 0.6fr); margin-top: 1.2rem; border: 1px solid rgba(84, 214, 255, 0.14); }
.dmarc-builder-result__dns > div { min-width: 0; padding: 0.8rem; border-right: 1px solid rgba(84, 214, 255, 0.14); }
.dmarc-builder-result__dns > div:last-child { border-right: 0; }
.dmarc-builder-result__dns span,
.dmarc-builder-result__record > span,
.dmarc-builder-next > span { display: block; color: rgba(219, 234, 254, 0.55); font-size: 0.62rem; letter-spacing: 0.06em; text-transform: uppercase; }
.dmarc-builder-result__dns strong { display: block; margin-top: 0.2rem; overflow-wrap: anywhere; color: #fff; font-family: var(--premium-mono, monospace); font-size: 0.76rem; }

.dmarc-builder-result__record { margin-top: 0.85rem; border-left: 0.2rem solid #54d6ff; padding: 0.9rem 1rem; background: rgba(0, 0, 0, 0.2); }
.dmarc-builder-result__record code { display: block; margin-top: 0.38rem; overflow-wrap: anywhere; color: #a9eaff; font-size: 0.71rem; line-height: 1.7; user-select: all; }

.dmarc-builder-result__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0.85rem 0 0; border: 1px solid rgba(84, 214, 255, 0.14); }
.dmarc-builder-result__metrics div { min-width: 0; padding: 0.75rem; border-right: 1px solid rgba(84, 214, 255, 0.14); }
.dmarc-builder-result__metrics div:last-child { border-right: 0; }
.dmarc-builder-result__metrics dt { color: rgba(219, 234, 254, 0.54); font-size: 0.59rem; }
.dmarc-builder-result__metrics dd { margin: 0.22rem 0 0; overflow-wrap: anywhere; color: #fff; font-family: var(--premium-mono, monospace); font-size: 0.78rem; font-weight: 800; text-transform: capitalize; }

.dmarc-builder-next { margin-top: 0.85rem; border: 1px solid rgba(84, 214, 255, 0.14); padding: 0.85rem; background: rgba(84, 214, 255, 0.045); }
.dmarc-builder-next strong { display: block; margin-top: 0.25rem; color: #fff; font-size: 0.88rem; }
.dmarc-builder-next p { margin: 0.35rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.68rem; line-height: 1.55; }

.dmarc-builder-result__warning-heading { display: flex; gap: 0.45rem; align-items: center; margin-top: 1.1rem; color: #fff; font-size: 0.77rem; }
.dmarc-builder-result__warning-heading i { color: #54d6ff; }
.dmarc-builder-warnings { display: grid; gap: 0.55rem; margin: 0.65rem 0 0; padding: 0; list-style: none; }
.dmarc-builder-warning { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; border: 1px solid rgba(84, 214, 255, 0.12); padding: 0.7rem; background: rgba(255, 255, 255, 0.025); }
.dmarc-builder-warning > i { margin-top: 0.1rem; color: #67daf7; }
.dmarc-builder-warning strong { color: #fff; font-size: 0.72rem; }
.dmarc-builder-warning p { margin: 0.2rem 0 0; color: rgba(219, 234, 254, 0.62); font-size: 0.66rem; line-height: 1.55; }
.dmarc-builder-warning--warning { border-color: rgba(241, 186, 88, 0.24); }
.dmarc-builder-warning--warning > i { color: #f1ba58; }
.dmarc-builder-warning--fail { border-color: rgba(239, 123, 131, 0.26); }
.dmarc-builder-warning--fail > i { color: #ef7b83; }

.dmarc-builder-result__actions .premium-btn:disabled { opacity: 0.45; cursor: not-allowed; transform: none; }
.dmarc-builder-result .tool-action { border-color: rgba(84, 214, 255, 0.2); color: #c9edf7; background: rgba(84, 214, 255, 0.04); }
.dmarc-builder-result__status { margin: 0.75rem 0 0; color: rgba(219, 234, 254, 0.68); font-size: 0.68rem; line-height: 1.55; }
.dmarc-builder-result__boundary { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; margin-top: 1rem; border-top: 1px solid rgba(239, 123, 131, 0.22); padding-top: 0.9rem; }
.dmarc-builder-result__boundary i { color: #f1ba58; }
.dmarc-builder-result__boundary p { margin: 0; color: rgba(219, 234, 254, 0.67); font-size: 0.67rem; line-height: 1.6; }
.dmarc-builder-result__boundary strong { color: #fff; }

.dmarc-builder-method__grid,
.dmarc-builder-sources__grid,
.dmarc-builder-faq__grid { display: grid; grid-template-columns: minmax(16rem, 0.65fr) minmax(0, 1.35fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.dmarc-builder-method__grid > div h2,
.dmarc-builder-sources__grid > div h2,
.dmarc-builder-faq__grid h2 { margin: 0.3rem 0 0.75rem; color: #173350; font-size: clamp(1.65rem, 3vw, 2.4rem); }
.dmarc-builder-method__grid > div > p:not(.premium-eyebrow) { color: #60738a; line-height: 1.75; }
.dmarc-builder-method__steps { display: grid; gap: 0.65rem; margin: 0; padding: 0; list-style: none; }
.dmarc-builder-method__steps li { display: grid; grid-template-columns: 2.7rem minmax(0, 1fr); gap: 0.8rem; border: 1px solid #dce5ef; padding: 0.95rem; background: #fff; }
.dmarc-builder-method__steps li > span { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border-radius: 50%; color: #0e7692; background: #e9f7fb; font-family: var(--premium-mono, monospace); font-size: 0.65rem; }
.dmarc-builder-method__steps strong { color: #173350; }
.dmarc-builder-method__steps p { margin: 0.2rem 0 0; color: #61758b; font-size: 0.77rem; line-height: 1.6; }

.dmarc-builder-sources__grid > div h2 { color: #fff; }
.dmarc-builder-sources__grid > div > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.68); line-height: 1.75; }
.dmarc-builder-source-links { display: grid; gap: 0.65rem; }
.dmarc-builder-source-links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.16); padding: 0.9rem 1rem; color: #dbeafe; background: rgba(255, 255, 255, 0.025); }
.dmarc-builder-source-links a > i:first-child { color: #60dcff; font-size: 1.1rem; }
.dmarc-builder-source-links a > i:last-child { color: rgba(219, 234, 254, 0.5); }
.dmarc-builder-source-links a span { display: grid; gap: 0.2rem; }
.dmarc-builder-source-links small { color: rgba(219, 234, 254, 0.58); font-size: 0.68rem; }

.dmarc-builder-faq__list { display: grid; gap: 0.55rem; }
.dmarc-builder-faq__list details { border: 1px solid #dce5ef; background: #fff; }
.dmarc-builder-faq__list summary { padding: 1rem 1.1rem; color: #173350; cursor: pointer; font-weight: 800; }
.dmarc-builder-faq__list details p { margin: 0; border-top: 1px solid #e3eaf1; padding: 0.9rem 1.1rem 1rem; color: #5e738a; font-size: 0.82rem; line-height: 1.7; }

@media (max-width: 1199.98px) {
  .dmarc-builder-workbench { grid-template-columns: minmax(0, 1fr); }
  .dmarc-builder-result { position: static; }
}

@media (max-width: 991.98px) {
  .dmarc-builder-hero .ats-page-hero__grid,
  .dmarc-builder-method__grid,
  .dmarc-builder-sources__grid,
  .dmarc-builder-faq__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 767.98px) {
  .dmarc-builder-console__path { grid-template-columns: minmax(0, 1fr); }
  .dmarc-builder-console__path > i { transform: rotate(90deg); justify-self: center; }
  .dmarc-builder-console__evidence,
  .dmarc-builder-form__heading,
  .dmarc-builder-result__heading { align-items: flex-start; flex-direction: column; }
  .dmarc-builder-field-grid,
  .dmarc-builder-select-grid { grid-template-columns: minmax(0, 1fr); }
  .dmarc-stage-grid { grid-template-columns: minmax(0, 1fr); }
  .dmarc-stage-grid label:first-child,
  .dmarc-stage-grid label:last-child,
  .dmarc-stage-grid label:nth-child(2),
  .dmarc-stage-grid label:nth-child(3),
  .dmarc-stage-grid label:nth-child(4) { grid-column: auto; }
  .dmarc-builder-confirmations > label { grid-template-columns: auto minmax(0, 1fr); }
  .dmarc-builder-confirmations > label em { grid-column: 2; justify-self: start; }
  .dmarc-builder-result__metrics { grid-template-columns: minmax(0, 1fr); }
  .dmarc-builder-result__metrics div { border-right: 0; border-bottom: 1px solid rgba(84, 214, 255, 0.14); }
  .dmarc-builder-result__metrics div:last-child { border-bottom: 0; }
  .dmarc-builder-form__actions .premium-btn,
  .dmarc-builder-form__actions .tool-action,
  .dmarc-builder-result__actions .premium-btn,
  .dmarc-builder-result__actions .tool-action { width: 100%; justify-content: center; }
}

@media (max-width: 479.98px) {
  .dmarc-builder-console__evidence { display: grid; }
  .dmarc-builder-result__dns { grid-template-columns: minmax(0, 1fr); }
  .dmarc-builder-result__dns > div { border-right: 0; border-bottom: 1px solid rgba(84, 214, 255, 0.14); }
  .dmarc-builder-result__dns > div:last-child { border-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .dmarc-stage-grid span { transition: none; }
}

@media print {
  .dmarc-builder-hero,
  .dmarc-builder-form,
  .dmarc-builder-sources,
  .dmarc-builder-faq,
  .dmarc-builder-result__actions { display: none !important; }
  .dmarc-builder-section,
  .dmarc-builder-method { padding: 0; background: #fff; }
  .dmarc-builder-workbench { display: block; }
  .dmarc-builder-result { position: static; border: 0; color: #173350; background: #fff; box-shadow: none; }
  .dmarc-builder-result__heading h2,
  .dmarc-builder-result__dns strong,
  .dmarc-builder-result__metrics dd,
  .dmarc-builder-next strong,
  .dmarc-builder-warning strong,
  .dmarc-builder-result__boundary strong { color: #173350; }
  .dmarc-builder-result__record code { color: #155f78; }
  .dmarc-builder-result__dns span,
  .dmarc-builder-result__record > span,
  .dmarc-builder-next > span,
  .dmarc-builder-result__metrics dt,
  .dmarc-builder-next p,
  .dmarc-builder-warning p,
  .dmarc-builder-result__status,
  .dmarc-builder-result__boundary p { color: #56697e; }
  .dmarc-builder-method__steps li,
  .dmarc-builder-warning { break-inside: avoid; }
}

/* DMARC checker */
.dmarc-hero {
  background:
    linear-gradient(rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    radial-gradient(circle at 82% 28%, rgba(19, 160, 132, 0.28), transparent 31%),
    linear-gradient(135deg, #07111f, #0c1c2b 64%, #10273a);
  background-size: 2rem 2rem, 2rem 2rem, auto, auto;
}

.dmarc-hero .ats-page-hero__grid {
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.68fr);
}

.dmarc-hero .premium-btn { gap: 0.55rem; }

.dmarc-flow-console__body {
  display: grid;
  gap: 0.85rem;
  padding: clamp(1.1rem, 3vw, 1.55rem);
  background: #0b1929;
}

.dmarc-flow-console__from,
.dmarc-flow-console__decision,
.dmarc-flow-console__policy,
.dmarc-flow-console__rails span {
  border: 1px solid rgba(84, 214, 255, 0.16);
  background: #11263a;
}

.dmarc-flow-console__from {
  display: grid;
  gap: 0.25rem;
  padding: 0.9rem 1rem;
}

.dmarc-flow-console .dmarc-flow-console__from small,
.dmarc-flow-console .dmarc-flow-console__policy span {
  color: rgba(219, 234, 254, 0.56);
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.dmarc-flow-console .dmarc-flow-console__from strong,
.dmarc-flow-console .dmarc-flow-console__policy b {
  overflow-wrap: anywhere;
  color: #effbff;
  font-family: var(--premium-mono, monospace);
  font-size: 0.82rem;
}

.dmarc-flow-console__rails {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.dmarc-flow-console__rails::after {
  position: absolute;
  inset: auto 25% -0.88rem 25%;
  height: 0.88rem;
  border-right: 1px solid rgba(84, 214, 255, 0.32);
  border-left: 1px solid rgba(84, 214, 255, 0.32);
  content: "";
}

.dmarc-flow-console__rails span {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.15rem 0.55rem;
  align-items: center;
  padding: 0.78rem;
}

.dmarc-flow-console__rails i { grid-row: 1 / span 2; color: var(--premium-cyan); font-size: 1.05rem; }
.dmarc-flow-console .dmarc-flow-console__rails b { color: #fff; font-size: 0.78rem; }
.dmarc-flow-console .dmarc-flow-console__rails small { color: rgba(219, 234, 254, 0.68); font-size: 0.66rem; }

.dmarc-flow-console__decision {
  display: flex;
  gap: 0.7rem;
  align-items: center;
  margin-top: 0.35rem;
  padding: 0.9rem 1rem;
  border-color: rgba(34, 183, 122, 0.32);
  background: #123a36;
}

.dmarc-flow-console__decision > i { color: #6cf0ba; font-size: 1.3rem; }
.dmarc-flow-console__decision span { display: grid; gap: 0.1rem; }
.dmarc-flow-console .dmarc-flow-console__decision b { color: #e8fff7; font-size: 0.8rem; }
.dmarc-flow-console .dmarc-flow-console__decision small { color: rgba(219, 255, 242, 0.76); font-size: 0.67rem; }

.dmarc-flow-console__policy {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: space-between;
  padding: 0.8rem 1rem;
}

.dmarc-flow-console__footer {
  display: flex;
  gap: 0.7rem 1rem;
  justify-content: space-between;
  border-top: 1px solid rgba(84, 214, 255, 0.12);
  padding: 0.8rem 1.3rem;
  color: rgba(219, 234, 254, 0.66);
  font-size: 0.68rem;
}

.dmarc-flow-console__footer span { display: inline-flex; gap: 0.35rem; align-items: center; }
.dmarc-flow-console__footer i { color: var(--premium-cyan); }

.dmarc-checker-section { position: relative; }

.dmarc-checker-layout {
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
  border: 1px solid #dce5ef;
  background: #fff;
  box-shadow: 0 1.8rem 4.5rem rgba(19, 51, 80, 0.1);
}

.dmarc-checker-form-panel { padding: clamp(1.5rem, 4vw, 3rem); }
.dmarc-checker-form-panel > h2 { margin: 0.35rem 0 0.75rem; color: #173350; font-size: clamp(1.65rem, 3vw, 2.35rem); }
.dmarc-checker-form-panel > p:not(.premium-eyebrow) { color: #60738a; line-height: 1.75; }
.dmarc-checker-form { display: grid; gap: 1rem; margin-top: 1.45rem; }
.dmarc-checker-submit { width: fit-content; justify-content: center; }

.dmarc-privacy-note {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.75rem;
  margin-top: 1.45rem;
  border-top: 1px solid #e2e9f1;
  padding-top: 1.1rem;
  color: #5b6f86;
  font-size: 0.82rem;
  line-height: 1.65;
}

.dmarc-privacy-note > i { color: #0a7a58; font-size: 1.1rem; }
.dmarc-privacy-note p { margin: 0; }

.dmarc-result-card,
.dmarc-result-preview {
  min-width: 0;
  scroll-margin-top: 6.4rem;
  padding: clamp(1.5rem, 4vw, 2.6rem);
  color: #dbeafe;
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    #0b1929;
  background-size: 1.5rem 1.5rem;
}

.dmarc-result-card { border-left: 0.28rem solid #54d6ff; }
.dmarc-result-card--pass { border-left-color: #43d39e; }
.dmarc-result-card--warning { border-left-color: #f1ba58; }
.dmarc-result-card--fail { border-left-color: #ef7b83; }
.dmarc-result-card--unavailable { border-left-color: #91a4ba; }

.dmarc-result-card__heading {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}

.dmarc-result-card__heading h2,
.dmarc-result-preview h2 { margin: 0.25rem 0 0.45rem; color: #fff; font-size: clamp(1.5rem, 3vw, 2.2rem); overflow-wrap: anywhere; }
.dmarc-result-card__heading p:not(.premium-eyebrow),
.dmarc-result-preview p { margin: 0; color: rgba(219, 234, 254, 0.68); line-height: 1.7; }

.dmarc-result-card__status {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 0.42rem;
  align-items: center;
  border: 1px solid rgba(84, 214, 255, 0.2);
  border-radius: 999px;
  padding: 0.48rem 0.7rem;
  color: #e9faff;
  background: rgba(84, 214, 255, 0.08);
  font-size: 0.72rem;
  font-weight: 800;
}

.dmarc-policy-strip {
  display: grid;
  grid-template-columns: 1.1fr repeat(2, minmax(0, 0.9fr));
  margin-top: 1.4rem;
  border: 1px solid rgba(84, 214, 255, 0.14);
}

.dmarc-policy-strip > div { display: grid; gap: 0.2rem; padding: 1rem; border-right: 1px solid rgba(84, 214, 255, 0.14); }
.dmarc-policy-strip > div:last-child { border-right: 0; }
.dmarc-policy-strip span,
.dmarc-policy-strip small { color: rgba(219, 234, 254, 0.58); font-size: 0.68rem; }
.dmarc-policy-strip strong { color: #fff; font-size: 1rem; text-transform: capitalize; }
.dmarc-policy-strip code { color: #79e2ff; }

.dmarc-result-card__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 1rem 0 0;
  border: 1px solid rgba(84, 214, 255, 0.14);
}

.dmarc-result-card__metrics div { padding: 0.9rem; border-right: 1px solid rgba(84, 214, 255, 0.14); }
.dmarc-result-card__metrics div:last-child { border-right: 0; }
.dmarc-result-card__metrics dt { color: rgba(219, 234, 254, 0.56); font-size: 0.66rem; }
.dmarc-result-card__metrics dd { margin: 0.2rem 0 0; color: #fff; font-family: var(--premium-mono, monospace); font-size: 1rem; font-weight: 800; }

.dmarc-result-card__record {
  display: block;
  margin-top: 1rem;
  border: 1px solid rgba(84, 214, 255, 0.16);
  padding: 0.9rem 1rem;
  overflow-wrap: anywhere;
  color: #a9eaff;
  background: rgba(0, 0, 0, 0.2);
  font-size: 0.72rem;
  line-height: 1.65;
}

.dmarc-result-preview { display: flex; flex-direction: column; justify-content: center; }
.dmarc-result-preview__visual { display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; margin-bottom: 1.2rem; }
.dmarc-result-preview__visual span { border: 1px solid rgba(84, 214, 255, 0.2); padding: 0.48rem 0.65rem; color: #c8f3ff; background: rgba(84, 214, 255, 0.07); font-family: var(--premium-mono, monospace); font-size: 0.72rem; }
.dmarc-result-preview__visual i { color: #54d6ff; }

.dmarc-findings__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.dmarc-finding {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  border: 1px solid #dce5ef;
  padding: clamp(1.15rem, 3vw, 1.55rem);
  background: #fff;
  box-shadow: 0 0.8rem 2.2rem rgba(19, 51, 80, 0.05);
}

.dmarc-finding__icon { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; border-radius: 50%; color: #28658d; background: #e9f4fb; }
.dmarc-finding--pass .dmarc-finding__icon { color: #087550; background: #dcf8ec; }
.dmarc-finding--warning .dmarc-finding__icon { color: #8a5600; background: #fff1d4; }
.dmarc-finding--fail .dmarc-finding__icon { color: #a62f3a; background: #ffe3e6; }
.dmarc-finding--unavailable .dmarc-finding__icon { color: #536176; background: #e8edf3; }
.dmarc-finding__status { color: #60758d; font-size: 0.64rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.dmarc-finding h3 { margin: 0.2rem 0 0.45rem; color: #173350; font-size: 1.04rem; }
.dmarc-finding p { margin: 0; color: #5c7088; font-size: 0.84rem; line-height: 1.7; }
.dmarc-finding__evidence { display: grid; gap: 0.35rem; margin-top: 0.8rem; }
.dmarc-finding__evidence code { display: block; border-left: 2px solid #78cde9; padding: 0.55rem 0.7rem; overflow-wrap: anywhere; color: #254b6a; background: #f3f8fb; font-size: 0.7rem; line-height: 1.55; }
.dmarc-finding__action { margin-top: 0.8rem !important; border-top: 1px solid #e4eaf0; padding-top: 0.75rem; }
.dmarc-finding__action i { margin-right: 0.3rem; color: #248aad; }

.dmarc-policy-map__heading,
.dmarc-settings__grid,
.dmarc-boundary__grid,
.dmarc-faq__grid {
  display: grid;
  grid-template-columns: minmax(16rem, 0.7fr) minmax(0, 1.3fr);
  gap: clamp(1.5rem, 5vw, 4rem);
  align-items: start;
}

.dmarc-policy-map__heading { margin-bottom: 1.5rem; }
.dmarc-policy-map__heading h2,
.dmarc-settings__grid > div:first-child h2,
.dmarc-faq__grid h2 { margin: 0.3rem 0 0; color: #173350; font-size: clamp(1.65rem, 3vw, 2.4rem); }
.dmarc-policy-map__heading > p,
.dmarc-settings__grid > div:first-child > p:not(.premium-eyebrow) { color: #60738a; line-height: 1.75; }

.dmarc-policy-path { position: relative; display: grid; gap: 0.7rem; margin: 0; padding: 0; list-style: none; }
.dmarc-policy-path::before { position: absolute; inset: 1.8rem auto 1.8rem 1.3rem; border-left: 1px dashed #80b3c9; content: ""; }
.dmarc-policy-location { position: relative; display: grid; grid-template-columns: 2.65rem minmax(0, 1fr) auto; gap: 0.9rem; align-items: center; border: 1px solid #dce5ef; padding: 0.85rem 1rem 0.85rem 0; background: #fff; }
.dmarc-policy-location__number { z-index: 1; display: grid; width: 2.65rem; height: 2.65rem; place-items: center; border: 1px solid #9bc2d5; border-radius: 50%; color: #1e5f81; background: #f4fafc; font-family: var(--premium-mono, monospace); font-size: 0.68rem; font-weight: 800; }
.dmarc-policy-location small { color: #72859a; font-size: 0.64rem; letter-spacing: 0.08em; text-transform: uppercase; }
.dmarc-policy-location h3 { margin: 0.12rem 0; overflow-wrap: anywhere; color: #173350; font-family: var(--premium-mono, monospace); font-size: 0.82rem; }
.dmarc-policy-location p { margin: 0.2rem 0 0; color: #65798f; font-size: 0.75rem; }
.dmarc-policy-location code { display: block; margin-top: 0.3rem; overflow-wrap: anywhere; color: #1f607d; font-size: 0.7rem; line-height: 1.5; }
.dmarc-policy-location > strong { color: #60738a; font-size: 0.64rem; letter-spacing: 0.08em; text-transform: uppercase; }
.dmarc-policy-location--valid { border-color: #bfe7d8; }
.dmarc-policy-location--valid .dmarc-policy-location__number { border-color: #7fd0b2; color: #087550; background: #e5f9f1; }
.dmarc-policy-location--multiple { border-color: #f0bdc2; }
.dmarc-policy-location--unavailable { border-color: #cbd5df; background: #f6f8fa; }

.dmarc-settings__grid { grid-template-columns: minmax(15rem, 0.55fr) minmax(0, 0.9fr) minmax(14rem, 0.65fr); }
.dmarc-policy-lanes { display: grid; gap: 0.7rem; }
.dmarc-policy-lanes article { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 0.2rem 1rem; border: 1px solid #dce5ef; padding: 1rem 1.1rem; background: #fff; }
.dmarc-policy-lanes article::before { position: absolute; inset: 0 auto 0 0; width: 0.2rem; background: #48b8d7; content: ""; }
.dmarc-policy-lanes span { color: #60738a; font-size: 0.75rem; }
.dmarc-policy-lanes strong { grid-row: 1 / span 2; grid-column: 2; align-self: center; color: #173350; font-size: 1rem; text-transform: capitalize; }
.dmarc-policy-lanes small { color: #8090a2; font-size: 0.66rem; }
.dmarc-policy-lanes code { color: #156786; }

.dmarc-tag-ledger { border: 1px solid #dce5ef; padding: 1.1rem; background: #f8fbfd; }
.dmarc-tag-ledger h3 { margin: 0 0 0.8rem; color: #173350; font-size: 0.95rem; }
.dmarc-tag-ledger dl { display: grid; gap: 0.35rem; margin: 0; }
.dmarc-tag-ledger dl > div { display: grid; grid-template-columns: 3.4rem minmax(0, 1fr); gap: 0.5rem; border-bottom: 1px solid #e1e8ef; padding: 0.4rem 0; }
.dmarc-tag-ledger dl > div:last-child { border-bottom: 0; }
.dmarc-tag-ledger dt code { color: #0e7894; font-weight: 800; }
.dmarc-tag-ledger dd { margin: 0; overflow-wrap: anywhere; color: #4f657b; font-size: 0.72rem; }

.dmarc-boundary__grid { grid-template-columns: minmax(15rem, 0.5fr) minmax(0, 1.5fr); }
.dmarc-boundary__grid h2 { margin: 0.3rem 0 0; color: #fff; font-size: clamp(1.7rem, 3vw, 2.45rem); }
.dmarc-boundary__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
.dmarc-boundary__notes article { display: grid; grid-template-columns: auto 1fr; gap: 0.75rem; border: 1px solid rgba(84, 214, 255, 0.13); padding: 1rem; background: rgba(255, 255, 255, 0.025); }
.dmarc-boundary__notes > article > i { color: #60dcff; font-size: 1.15rem; }
.dmarc-boundary__notes h3 { margin: 0 0 0.35rem; color: #fff; font-size: 0.9rem; }
.dmarc-boundary__notes p { margin: 0; color: rgba(219, 234, 254, 0.68); font-size: 0.77rem; line-height: 1.65; }
.dmarc-boundary__notes a { display: inline-flex; gap: 0.35rem; align-items: center; margin-top: 0.65rem; color: #70ddfa; font-size: 0.75rem; font-weight: 800; }

.dmarc-faq__list { display: grid; gap: 0.55rem; }
.dmarc-faq__list details { border: 1px solid #dce5ef; background: #fff; }
.dmarc-faq__list summary { padding: 1rem 1.1rem; color: #173350; cursor: pointer; font-weight: 800; }
.dmarc-faq__list details p { margin: 0; border-top: 1px solid #e3eaf1; padding: 0.9rem 1.1rem 1rem; color: #5e738a; font-size: 0.82rem; line-height: 1.7; }

@media (max-width: 991.98px) {
  .dmarc-hero .ats-page-hero__grid,
  .dmarc-checker-layout,
  .dmarc-policy-map__heading,
  .dmarc-settings__grid,
  .dmarc-boundary__grid,
  .dmarc-faq__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 767.98px) {
  .dmarc-flow-console__footer,
  .dmarc-result-card__heading { align-items: flex-start; flex-direction: column; }
  .dmarc-checker-submit { width: 100%; }
  .dmarc-policy-strip { grid-template-columns: minmax(0, 1fr); }
  .dmarc-policy-strip > div { border-right: 0; border-bottom: 1px solid rgba(84, 214, 255, 0.14); }
  .dmarc-policy-strip > div:last-child { border-bottom: 0; }
  .dmarc-result-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dmarc-result-card__metrics div:nth-child(2) { border-right: 0; }
  .dmarc-result-card__metrics div:nth-child(-n + 2) { border-bottom: 1px solid rgba(84, 214, 255, 0.14); }
  .dmarc-findings__list,
  .dmarc-boundary__notes { grid-template-columns: minmax(0, 1fr); }
  .dmarc-policy-location { grid-template-columns: 2.65rem minmax(0, 1fr); }
  .dmarc-policy-location > strong { grid-column: 2; }
}

@media print {
  .dmarc-hero,
  .dmarc-checker-form-panel,
  .dmarc-result-preview,
  .dmarc-boundary,
  .dmarc-faq { display: none !important; }
  .dmarc-checker-section,
  .dmarc-policy-map { padding: 0; background: #fff; }
  .dmarc-checker-layout { display: block; border: 0; box-shadow: none; }
  .dmarc-result-card { border: 0; color: #173350; background: #fff; }
  .dmarc-result-card__heading h2,
  .dmarc-result-card__metrics dd,
  .dmarc-policy-strip strong { color: #173350; }
  .dmarc-result-card__heading p:not(.premium-eyebrow),
  .dmarc-result-card__metrics dt,
  .dmarc-policy-strip span,
  .dmarc-policy-strip small { color: #52657c; }
  .dmarc-finding,
  .dmarc-policy-location { break-inside: avoid; }
}

/* DMARC aggregate report reader */
.dmarc-reader-console { align-self: stretch; overflow: hidden; }
.dmarc-reader-console__body { padding: 1.35rem; color: #dbeafe; background: linear-gradient(145deg, #071d2e, #09283b); }
.dmarc-reader-console__file { display: flex; gap: 0.75rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.16); padding: 0.8rem 0.9rem; background: rgba(84, 214, 255, 0.045); }
.dmarc-reader-console__file > i { color: #54d6ff; font-size: 1.35rem; }
.dmarc-reader-console__file b,
.dmarc-reader-console__file small { display: block; }
.dmarc-reader-console__file b { overflow-wrap: anywhere; color: #fff; font-family: var(--premium-mono, monospace); font-size: 0.69rem; }
.dmarc-reader-console__file small { margin-top: 0.15rem; color: rgba(219, 234, 254, 0.58); font-size: 0.59rem; }
.dmarc-reader-console__flow { display: flex; gap: 0.5rem; align-items: center; justify-content: center; padding: 0.55rem 0; color: rgba(219, 234, 254, 0.62); font-family: var(--premium-mono, monospace); font-size: 0.6rem; }
.dmarc-reader-console__flow i { color: #54d6ff; }
.dmarc-reader-console__processor { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; border-left: 0.2rem solid #43d39e; padding: 0.85rem 0.9rem; background: rgba(67, 211, 158, 0.075); }
.dmarc-reader-console__browser { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; border: 1px solid rgba(67, 211, 158, 0.3); color: #8ce7c5; }
.dmarc-reader-console__processor small,
.dmarc-reader-console__processor strong { display: block; }
.dmarc-reader-console__processor small { color: rgba(219, 234, 254, 0.52); font-size: 0.55rem; letter-spacing: 0.08em; }
.dmarc-reader-console__processor strong { margin-top: 0.2rem; color: #fff; font-size: 0.72rem; }
.dmarc-reader-console__processor > i { color: #67d8af; }
.dmarc-reader-console__signals { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0.9rem; border: 1px solid rgba(84, 214, 255, 0.13); }
.dmarc-reader-console__signals span { position: relative; min-width: 0; padding: 0.7rem; border-right: 1px solid rgba(84, 214, 255, 0.13); }
.dmarc-reader-console__signals span:last-child { border-right: 0; }
.dmarc-reader-console__signals i { position: absolute; inset: 0.5rem 0.5rem auto auto; width: 0.32rem; height: 0.32rem; border-radius: 50%; background: #43d39e; box-shadow: 0 0 0.7rem rgba(67, 211, 158, 0.6); }
.dmarc-reader-console__signals b,
.dmarc-reader-console__signals small { display: block; }
.dmarc-reader-console__signals b { color: #fff; font-family: var(--premium-mono, monospace); font-size: 1rem; }
.dmarc-reader-console__signals small { color: rgba(219, 234, 254, 0.52); font-size: 0.56rem; }
.dmarc-reader-console__footer { display: flex; gap: 1rem; justify-content: space-between; border-top: 1px solid rgba(84, 214, 255, 0.13); padding: 0.8rem 1.35rem; color: rgba(219, 234, 254, 0.68); background: #071d2e; font-size: 0.62rem; }
.dmarc-reader-console__footer span { display: flex; gap: 0.35rem; align-items: center; }
.dmarc-reader-console__footer i { color: #54d6ff; }

.dmarc-reader-workspace__grid { display: grid; grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: start; }
.dmarc-reader-upload-panel > h2 { max-width: 14ch; }
.dmarc-reader-upload-panel > p:not(.premium-eyebrow) { max-width: 39rem; color: #5b7180; line-height: 1.7; }
.dmarc-reader-dropzone { display: grid; justify-items: center; margin-top: 1.4rem; border: 1px dashed rgba(0, 145, 188, 0.42); padding: clamp(1.35rem, 4vw, 2.2rem) 1rem; color: #173d51; background: linear-gradient(145deg, rgba(0, 145, 188, 0.045), rgba(67, 211, 158, 0.045)); cursor: pointer; text-align: center; transition: border-color 160ms ease, background 160ms ease, transform 160ms ease; }
.dmarc-reader-dropzone:hover,
.dmarc-reader-dropzone.is-dragging { border-color: #0091bc; background: rgba(0, 145, 188, 0.08); transform: translateY(-1px); }
.dmarc-reader-dropzone:focus-within { outline: 3px solid rgba(0, 145, 188, 0.22); outline-offset: 3px; }
.dmarc-reader-dropzone input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.dmarc-reader-dropzone__icon { display: grid; width: 3.2rem; height: 3.2rem; margin-bottom: 0.8rem; place-items: center; border: 1px solid rgba(0, 145, 188, 0.2); border-radius: 50%; color: #0091bc; background: #fff; font-size: 1.35rem; box-shadow: 0 0.8rem 2rem rgba(4, 63, 91, 0.08); }
.dmarc-reader-dropzone strong { font-size: 0.86rem; }
.dmarc-reader-dropzone small { margin-top: 0.3rem; color: #6d808d; font-size: 0.66rem; }
.dmarc-reader-selected { display: grid; gap: 0.4rem; margin: 0.7rem 0 0; padding: 0; list-style: none; }
.dmarc-reader-selected li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.55rem; align-items: center; border: 1px solid rgba(4, 63, 91, 0.1); padding: 0.55rem 0.65rem; color: #456274; background: #fff; font-size: 0.67rem; }
.dmarc-reader-selected i { color: #0091bc; }
.dmarc-reader-selected span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dmarc-reader-selected small { color: #758793; }
.dmarc-reader-upload-actions { display: flex; gap: 0.65rem; flex-wrap: wrap; margin-top: 1rem; }
.dmarc-reader-upload-actions .premium-btn,
.dmarc-reader-upload-actions .tool-action { justify-content: center; }
.dmarc-reader-upload-actions .premium-btn:disabled { opacity: 0.48; cursor: not-allowed; transform: none; }
.dmarc-reader-status { min-height: 1.5rem; margin: 0.8rem 0 0; color: #586f7e; font-size: 0.69rem; line-height: 1.55; }
.dmarc-reader-status[data-tone="loading"] { color: #176b88; }
.dmarc-reader-status[data-tone="success"] { color: #0b7758; }
.dmarc-reader-status[data-tone="error"] { color: #a22e38; font-weight: 700; }
.dmarc-reader-privacy { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; margin-top: 0.8rem; color: #526878; font-size: 0.69rem; line-height: 1.6; }
.dmarc-reader-privacy i { margin-top: 0.1rem; color: #119a72; }
.dmarc-reader-privacy p { margin: 0; }
.dmarc-reader-privacy strong { color: #243f50; }

.dmarc-reader-empty { position: relative; overflow: hidden; border: 1px solid rgba(84, 214, 255, 0.16); padding: clamp(1.25rem, 3.5vw, 2rem); color: #dbeafe; background: linear-gradient(145deg, #071d2e, #09283b); box-shadow: 0 1.5rem 3.5rem rgba(4, 31, 47, 0.14); }
.dmarc-reader-empty__visual { position: relative; display: flex; gap: clamp(0.65rem, 2vw, 1.1rem); align-items: end; height: 11rem; margin-bottom: 1.4rem; border-bottom: 1px solid rgba(84, 214, 255, 0.22); padding: 1rem 1rem 0; background-image: linear-gradient(rgba(84, 214, 255, 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(84, 214, 255, 0.06) 1px, transparent 1px); background-size: 2rem 2rem; }
.dmarc-reader-empty__visual > i { z-index: 1; flex: 1; border: 1px solid rgba(84, 214, 255, 0.3); border-bottom: 0; background: linear-gradient(180deg, rgba(84, 214, 255, 0.75), rgba(0, 145, 188, 0.22)); box-shadow: 0 0 1rem rgba(84, 214, 255, 0.08); }
.dmarc-reader-empty__visual > i:nth-of-type(1) { height: 82%; }
.dmarc-reader-empty__visual > i:nth-of-type(2) { height: 54%; }
.dmarc-reader-empty__visual > i:nth-of-type(3) { height: 30%; }
.dmarc-reader-empty__visual > i:nth-of-type(4) { height: 68%; }
.dmarc-reader-empty__scan { position: absolute; inset: 46% 0 auto; border-top: 1px solid rgba(67, 211, 158, 0.65); box-shadow: 0 0 1rem rgba(67, 211, 158, 0.45); }
.dmarc-reader-empty h2 { color: #fff; font-size: clamp(1.35rem, 2.2vw, 1.9rem); }
.dmarc-reader-empty > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.66); font-size: 0.76rem; line-height: 1.7; }
.dmarc-reader-empty ul { display: grid; gap: 0.5rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.dmarc-reader-empty li { display: flex; gap: 0.55rem; align-items: center; color: rgba(219, 234, 254, 0.74); font-size: 0.69rem; }
.dmarc-reader-empty li i { color: #54d6ff; }

.dmarc-reader-results__header { display: flex; gap: 1.5rem; align-items: flex-end; justify-content: space-between; margin-bottom: 1.5rem; }
.dmarc-reader-results__header h2 { color: #173d51; font-size: clamp(1.8rem, 3.2vw, 2.7rem); }
.dmarc-reader-results__header p:last-child { margin: 0.5rem 0 0; color: #607786; font-size: 0.74rem; }
.dmarc-reader-results__header p strong { color: #274e61; }
.dmarc-reader-results__actions { display: flex; gap: 0.5rem; flex-wrap: wrap; justify-content: flex-end; }
.dmarc-reader-results__actions .tool-action:disabled { opacity: 0.45; cursor: not-allowed; }
.tool-action--quiet { border-color: rgba(86, 108, 120, 0.18); color: #607786; background: transparent; }
.dmarc-reader-metrics { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border: 1px solid rgba(4, 63, 91, 0.12); background: #fff; box-shadow: 0 1rem 2.5rem rgba(4, 31, 47, 0.06); }
.dmarc-reader-metrics article { min-width: 0; padding: 1rem; border-right: 1px solid rgba(4, 63, 91, 0.1); }
.dmarc-reader-metrics article:last-child { border-right: 0; }
.dmarc-reader-metrics span,
.dmarc-reader-metrics small { display: block; color: #718492; font-size: 0.6rem; }
.dmarc-reader-metrics strong { display: block; margin: 0.3rem 0 0.2rem; overflow-wrap: anywhere; color: #173d51; font-family: var(--premium-mono, monospace); font-size: clamp(1.15rem, 2.2vw, 1.6rem); }
.dmarc-reader-metrics small b { color: inherit; font-weight: 800; }
.dmarc-reader-metric--alert { background: rgba(239, 123, 131, 0.045); }
.dmarc-reader-metric--alert strong { color: #9d333b; }
.dmarc-reader-interpretation { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; margin-top: 1rem; border-left: 0.2rem solid #f1ba58; padding: 0.85rem 1rem; color: #526b79; background: rgba(241, 186, 88, 0.08); font-size: 0.73rem; line-height: 1.65; }
.dmarc-reader-interpretation i { margin-top: 0.1rem; color: #aa7008; }
.dmarc-reader-interpretation p { margin: 0; }
.dmarc-reader-interpretation strong { color: #264b5e; }

.dmarc-reader-analysis,
.dmarc-reader-disposition,
.dmarc-reader-sources,
.dmarc-reader-warnings,
.dmarc-reader-files,
.dmarc-reader-evidence { margin-top: clamp(2.2rem, 5vw, 4rem); }
.dmarc-reader-analysis { display: grid; grid-template-columns: minmax(15rem, 0.65fr) minmax(0, 1.35fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: start; }
.dmarc-reader-analysis__heading h3,
.dmarc-reader-disposition h3,
.dmarc-reader-section-heading h3,
.dmarc-reader-warnings h3 { margin: 0.25rem 0 0; color: #173d51; font-size: clamp(1.35rem, 2.4vw, 2rem); }
.dmarc-reader-analysis__heading > p:last-child,
.dmarc-reader-disposition > div:first-child > p:last-child { margin-top: 0.65rem; color: #607786; font-size: 0.75rem; line-height: 1.7; }
.dmarc-reader-paths { display: grid; gap: 0.8rem; }
.dmarc-report-path__heading { display: flex; gap: 1rem; align-items: baseline; justify-content: space-between; }
.dmarc-report-path__heading span { color: #355a6d; font-size: 0.72rem; }
.dmarc-report-path__heading strong { color: #173d51; font-family: var(--premium-mono, monospace); font-size: 0.68rem; }
.dmarc-report-path__track { height: 0.62rem; margin-top: 0.4rem; overflow: hidden; background: #e7eff3; }
.dmarc-report-path__bar { display: block; min-width: 0.15rem; height: 100%; background: #43d39e; }
.dmarc-report-path--dkim .dmarc-report-path__bar { background: #4bb8da; }
.dmarc-report-path--spf .dmarc-report-path__bar { background: #7e9fe7; }
.dmarc-report-path--fail .dmarc-report-path__bar { background: #ef7b83; }
.dmarc-reader-disposition { display: grid; grid-template-columns: minmax(15rem, 0.65fr) minmax(0, 1.35fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: start; }
.dmarc-reader-disposition__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid rgba(4, 63, 91, 0.11); }
.dmarc-disposition-card { min-width: 0; padding: 0.9rem; border-right: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.dmarc-disposition-card:last-child { border-right: 0; }
.dmarc-disposition-card span,
.dmarc-disposition-card small { display: block; color: #718492; font-size: 0.58rem; text-transform: capitalize; }
.dmarc-disposition-card strong { display: block; margin: 0.3rem 0 0.18rem; color: #173d51; font-family: var(--premium-mono, monospace); font-size: 1.1rem; }
.dmarc-disposition-card--quarantine { box-shadow: inset 0 0.16rem #f1ba58; }
.dmarc-disposition-card--reject { box-shadow: inset 0 0.16rem #ef7b83; }
.dmarc-reader-section-heading { display: flex; gap: 2rem; align-items: end; justify-content: space-between; margin-bottom: 1rem; }
.dmarc-reader-section-heading > p { max-width: 35rem; margin: 0; color: #607786; font-size: 0.73rem; line-height: 1.65; text-align: right; }
.dmarc-source-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; }
.dmarc-source-card { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; align-items: center; border: 1px solid rgba(4, 63, 91, 0.11); padding: 0.8rem; background: #fff; }
.dmarc-source-card__rank { display: grid; width: 2.3rem; height: 2.3rem; place-items: center; border: 1px solid rgba(0, 145, 188, 0.18); border-radius: 50%; color: #17627e; background: #f2fafc; font-family: var(--premium-mono, monospace); font-size: 0.63rem; }
.dmarc-source-card__heading { display: flex; gap: 0.8rem; align-items: baseline; justify-content: space-between; }
.dmarc-source-card__heading code { overflow-wrap: anywhere; color: #174d65; font-size: 0.68rem; }
.dmarc-source-card__heading strong { color: #173d51; font-family: var(--premium-mono, monospace); font-size: 0.72rem; }
.dmarc-source-card__body p { min-width: 0; }
.dmarc-source-card__body p { margin: 0.25rem 0 0.4rem; overflow-wrap: anywhere; color: #687d8a; font-size: 0.62rem; }
.dmarc-source-card__track { height: 0.28rem; overflow: hidden; background: #e6eef2; }
.dmarc-source-card__pass { display: block; height: 100%; background: #43d39e; }
.dmarc-reader-warnings { display: grid; grid-template-columns: minmax(14rem, 0.55fr) minmax(0, 1.45fr); gap: 2rem; border: 1px solid rgba(241, 186, 88, 0.24); padding: 1.1rem; background: rgba(241, 186, 88, 0.06); }
.dmarc-reader-warnings ul { display: grid; gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.dmarc-reader-warnings li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.55rem; color: #5e6770; font-size: 0.69rem; line-height: 1.55; }
.dmarc-reader-warnings li i { margin-top: 0.1rem; color: #aa7008; }
.dmarc-report-file-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.dmarc-report-file { border: 1px solid rgba(4, 63, 91, 0.11); padding: 0.9rem; background: #f8fbfc; }
.dmarc-report-file__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.dmarc-report-file__heading small { display: block; overflow-wrap: anywhere; color: #78909c; font-size: 0.58rem; }
.dmarc-report-file__heading h4 { margin: 0.12rem 0 0; color: #173d51; font-size: 0.86rem; }
.dmarc-report-file__heading > span { flex: 0 0 auto; border: 1px solid rgba(0, 145, 188, 0.14); padding: 0.3rem 0.4rem; color: #17627e; background: #fff; font-size: 0.57rem; }
.dmarc-report-file__facts { display: grid; gap: 0.3rem; margin: 0.7rem 0 0; }
.dmarc-report-file__facts > div { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: 0.5rem; border-top: 1px solid rgba(4, 63, 91, 0.08); padding-top: 0.3rem; }
.dmarc-report-file__facts dt { color: #778a95; font-size: 0.58rem; }
.dmarc-report-file__facts dd { margin: 0; overflow-wrap: anywhere; color: #456171; font-size: 0.62rem; }

.dmarc-reader-filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(12rem, 0.32fr); gap: 0.8rem; margin-bottom: 0.75rem; }
.dmarc-reader-filters .tool-field { margin: 0; }
.dmarc-reader-table-wrap { overflow: auto; border: 1px solid rgba(4, 63, 91, 0.12); background: #fff; }
.dmarc-reader-table-wrap:focus-visible { outline: 3px solid rgba(0, 145, 188, 0.25); outline-offset: 3px; }
.dmarc-reader-table { width: 100%; min-width: 61rem; border-collapse: collapse; }
.dmarc-reader-table th { padding: 0.7rem; color: #607786; background: #f2f7f9; font-size: 0.59rem; font-weight: 800; letter-spacing: 0.04em; text-align: left; text-transform: uppercase; }
.dmarc-reader-table td { border-top: 1px solid rgba(4, 63, 91, 0.08); padding: 0.7rem; color: #526b79; font-size: 0.66rem; vertical-align: top; }
.dmarc-reader-table td:nth-child(2) { font-family: var(--premium-mono, monospace); font-weight: 800; text-align: right; }
.dmarc-reader-table td:nth-child(5) span { display: block; font-size: 0.6rem; text-transform: uppercase; }
.dmarc-reader-table code { color: #174d65; font-size: 0.64rem; }
.dmarc-row-result { display: inline-flex; border: 1px solid rgba(17, 154, 114, 0.22); padding: 0.22rem 0.38rem; color: #0b7758; background: rgba(17, 154, 114, 0.06); font-size: 0.58rem; font-weight: 800; }
.dmarc-row-result--fail { border-color: rgba(190, 56, 66, 0.22); color: #a22e38; background: rgba(239, 123, 131, 0.07); }
.dmarc-reader-table-empty { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: center; border: 1px solid rgba(0, 145, 188, 0.12); border-top: 0; padding: 0.8rem; color: #17627e; background: #f7fbfd; }
.dmarc-reader-table-empty p { margin: 0; }
.dmarc-reader-table-empty strong,
.dmarc-reader-table-empty span { display: block; }
.dmarc-reader-table-empty strong { color: #244d60; font-size: 0.7rem; }
.dmarc-reader-table-empty span { margin-top: 0.1rem; color: #718492; font-size: 0.61rem; }

.dmarc-reader-boundary__grid,
.dmarc-reader-method__grid,
.dmarc-reader-faq__grid { display: grid; grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr); gap: clamp(2rem, 5vw, 5rem); }
.dmarc-reader-boundary h2 { color: #fff; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.dmarc-reader-boundary__map { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.dmarc-reader-boundary__map article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; border: 1px solid rgba(84, 214, 255, 0.13); padding: 0.9rem; background: rgba(84, 214, 255, 0.035); }
.dmarc-reader-boundary__map article > span { display: grid; width: 2rem; height: 2rem; place-items: center; border: 1px solid rgba(84, 214, 255, 0.26); border-radius: 50%; color: #70ddfa; font-family: var(--premium-mono, monospace); font-size: 0.58rem; }
.dmarc-reader-boundary__map h3 { margin: 0 0 0.25rem; color: #fff; font-size: 0.78rem; }
.dmarc-reader-boundary__map p { margin: 0; color: rgba(219, 234, 254, 0.65); font-size: 0.67rem; line-height: 1.55; }
.dmarc-reader-method__grid > div:first-child > p:not(.premium-eyebrow) { color: #607786; font-size: 0.76rem; line-height: 1.7; }
.dmarc-reader-method__grid > div:first-child > a { display: inline-flex; gap: 0.35rem; align-items: center; color: #087da2; font-size: 0.75rem; font-weight: 800; }
.dmarc-reader-method__limits { display: grid; gap: 0.65rem; }
.dmarc-reader-method__limits article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; border: 1px solid rgba(4, 63, 91, 0.11); padding: 0.9rem; background: #fff; }
.dmarc-reader-method__limits > article > i { color: #0091bc; font-size: 1.1rem; }
.dmarc-reader-method__limits h3 { margin: 0 0 0.25rem; color: #173d51; font-size: 0.8rem; }
.dmarc-reader-method__limits p { margin: 0; color: #607786; font-size: 0.68rem; line-height: 1.6; }
.dmarc-reader-faq__list { display: grid; gap: 0.6rem; }
.dmarc-reader-faq__list details { border: 1px solid rgba(4, 63, 91, 0.12); background: #fff; }
.dmarc-reader-faq__list summary { padding: 0.95rem 1rem; color: #173d51; cursor: pointer; font-size: 0.79rem; font-weight: 750; }
.dmarc-reader-faq__list p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.08); padding: 0.85rem 1rem; color: #536b79; font-size: 0.71rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .dmarc-reader-workspace__grid,
  .dmarc-reader-analysis,
  .dmarc-reader-disposition,
  .dmarc-reader-boundary__grid,
  .dmarc-reader-method__grid,
  .dmarc-reader-faq__grid { grid-template-columns: minmax(0, 1fr); }
  .dmarc-reader-upload-panel > h2 { max-width: none; }
  .dmarc-reader-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dmarc-reader-metrics article:nth-child(3) { border-right: 0; }
  .dmarc-reader-metrics article:nth-child(-n + 3) { border-bottom: 1px solid rgba(4, 63, 91, 0.1); }
}

@media (max-width: 767.98px) {
  .dmarc-reader-console__footer,
  .dmarc-reader-results__header,
  .dmarc-reader-section-heading { align-items: flex-start; flex-direction: column; }
  .dmarc-reader-results__actions { justify-content: flex-start; }
  .dmarc-reader-metrics,
  .dmarc-source-list,
  .dmarc-report-file-list,
  .dmarc-reader-boundary__map { grid-template-columns: minmax(0, 1fr); }
  .dmarc-reader-metrics article { border-right: 0; border-bottom: 1px solid rgba(4, 63, 91, 0.1); }
  .dmarc-reader-metrics article:last-child { border-bottom: 0; }
  .dmarc-reader-disposition__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dmarc-disposition-card:nth-child(2) { border-right: 0; }
  .dmarc-disposition-card:nth-child(-n + 2) { border-bottom: 1px solid rgba(4, 63, 91, 0.1); }
  .dmarc-reader-section-heading > p { max-width: none; text-align: left; }
  .dmarc-reader-warnings,
  .dmarc-reader-filters { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 479.98px) {
  .dmarc-reader-console__signals,
  .dmarc-reader-disposition__grid { grid-template-columns: minmax(0, 1fr); }
  .dmarc-reader-console__signals span,
  .dmarc-disposition-card { border-right: 0; border-bottom: 1px solid rgba(84, 214, 255, 0.13); }
  .dmarc-disposition-card { border-bottom-color: rgba(4, 63, 91, 0.1); }
  .dmarc-reader-console__signals span:last-child,
  .dmarc-disposition-card:last-child { border-bottom: 0; }
  .dmarc-reader-upload-actions,
  .dmarc-reader-results__actions { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; }
  .dmarc-reader-upload-actions > *,
  .dmarc-reader-results__actions > * { justify-content: center; width: 100%; }
  .dmarc-report-file__heading { align-items: stretch; flex-direction: column; }
  .dmarc-report-file__heading > span { align-self: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  .dmarc-reader-dropzone { transition: none; }
  .dmarc-reader-empty__scan { display: none; }
}

@media print {
  .dmarc-reader-hero,
  .dmarc-reader-workspace,
  .dmarc-reader-results__actions,
  .dmarc-reader-filters,
  .dmarc-reader-boundary,
  .dmarc-reader-method,
  .dmarc-reader-faq { display: none !important; }
  .dmarc-reader-results { padding: 0 !important; }
  .dmarc-reader-metrics,
  .dmarc-source-card,
  .dmarc-report-file { break-inside: avoid; box-shadow: none; }
  .dmarc-reader-table-wrap { overflow: visible; }
  .dmarc-reader-table { min-width: 0; font-size: 8pt; }
}

/* SSL/TLS certificate checker */
.tls-hero {
  background:
    linear-gradient(rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    radial-gradient(circle at 82% 28%, rgba(33, 184, 151, 0.24), transparent 30%),
    linear-gradient(135deg, #07111f, #0d1a2c 64%, #10223b);
  background-size: 2rem 2rem, 2rem 2rem, auto, auto;
}

.tls-hero .ats-page-hero__grid {
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.62fr);
}

.tls-hero .premium-btn { gap: 0.55rem; margin-top: 1.35rem; }

.tls-certificate-console__body { position: relative; min-height: 22rem; padding: clamp(1rem, 3vw, 1.5rem); overflow: hidden; }
.tls-certificate-console__body::before {
  position: absolute;
  inset: 1rem;
  border: 1px solid rgba(84, 214, 255, 0.08);
  background:
    linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px);
  background-size: 1.25rem 1.25rem;
  content: "";
}
.tls-certificate-console__seal {
  position: relative;
  z-index: 1;
  display: grid;
  width: 5.6rem;
  height: 5.6rem;
  margin: 0.8rem auto 1.4rem;
  place-items: center;
  border: 1px solid rgba(72, 225, 173, 0.62);
  border-radius: 50%;
  color: #72e7bd;
  background: radial-gradient(circle, rgba(35, 196, 145, 0.2), rgba(7, 17, 31, 0.9) 67%);
  box-shadow: 0 0 0 0.65rem rgba(72, 225, 173, 0.05), 0 0 2.4rem rgba(35, 196, 145, 0.2);
  font-size: 2rem;
}
.tls-certificate-console__route { position: relative; z-index: 1; display: grid; grid-template-columns: auto 1fr auto 1fr auto; gap: 0.5rem; align-items: center; margin: 0 auto 1.3rem; }
.tls-certificate-console__route span { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; border: 1px solid rgba(84, 214, 255, 0.26); color: #70ddfa; background: #0d1c2e; }
.tls-certificate-console__route > i { height: 1px; background: linear-gradient(90deg, rgba(84, 214, 255, 0.18), rgba(72, 225, 173, 0.75)); }
.tls-certificate-console__rows { position: relative; z-index: 1; display: grid; border: 1px solid rgba(84, 214, 255, 0.13); background: rgba(5, 14, 26, 0.82); }
.tls-certificate-console__rows span { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: 0.75rem; padding: 0.65rem 0.7rem; border-bottom: 1px solid rgba(84, 214, 255, 0.1); }
.tls-certificate-console__rows span:last-child { border-bottom: 0; }
.tls-certificate-console__rows small { color: rgba(112, 221, 250, 0.65); font-family: var(--premium-mono, monospace); font-size: 0.52rem; letter-spacing: 0.08em; }
.tls-certificate-console__rows b { color: rgba(235, 246, 255, 0.9); font-size: 0.65rem; font-weight: 650; }

.tls-checker-section { background: linear-gradient(180deg, #f5f8fa, #edf4f5); }
.tls-checker-form-panel { box-shadow: inset 0 0.18rem #21b797; }
.tls-input-wrap { position: relative; }
.tls-input-wrap > i { position: absolute; z-index: 1; inset: 50% auto auto 0.9rem; color: #16866e; transform: translateY(-50%); }
.tls-input-wrap input { width: 100%; padding-left: 2.55rem; }

.tls-result-card { border: 1px solid rgba(4, 63, 91, 0.12); border-top: 0.22rem solid #23b48d; padding: clamp(1rem, 3vw, 1.5rem); background: #fff; box-shadow: 0 1.4rem 3rem rgba(21, 56, 67, 0.09); }
.tls-result-card--warning { border-top-color: #d49a2f; }
.tls-result-card--fail { border-top-color: #cf4d58; }
.tls-result-card__heading { display: flex; gap: 1.5rem; align-items: flex-start; justify-content: space-between; }
.tls-result-card__heading h2 { margin: 0.15rem 0 0.45rem; overflow-wrap: anywhere; color: #153f50; font-size: clamp(1.45rem, 3vw, 2.15rem); }
.tls-result-card__heading p:last-child { max-width: 34rem; margin: 0; color: #607786; font-size: 0.76rem; line-height: 1.65; }
.tls-result-card__badge { display: inline-flex; flex: 0 0 auto; gap: 0.4rem; align-items: center; border: 1px solid rgba(24, 167, 111, 0.22); padding: 0.42rem 0.58rem; color: #087752; background: #e9f8f2; font-size: 0.64rem; font-weight: 800; }
.tls-result-card--warning .tls-result-card__badge { border-color: rgba(188, 127, 20, 0.23); color: #8b5d0c; background: #fff7e7; }
.tls-result-card--fail .tls-result-card__badge { border-color: rgba(196, 55, 66, 0.22); color: #a52f38; background: #fff0f1; }
.tls-result-card__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 1.2rem; border: 1px solid rgba(4, 63, 91, 0.1); }
.tls-result-card__metrics > div { min-width: 0; padding: 0.75rem; border-right: 1px solid rgba(4, 63, 91, 0.1); background: #f8fbfc; }
.tls-result-card__metrics > div:last-child { border-right: 0; }
.tls-result-card__metrics span { display: block; color: #718492; font-size: 0.56rem; font-weight: 750; letter-spacing: 0.04em; text-transform: uppercase; }
.tls-result-card__metrics strong { display: block; margin-top: 0.25rem; overflow-wrap: anywhere; color: #174d65; font-family: var(--premium-mono, monospace); font-size: clamp(0.82rem, 2vw, 1.05rem); }
.tls-result-card__foot { display: flex; gap: 0.42rem; align-items: flex-start; margin: 0.8rem 0 0; color: #718492; font-size: 0.61rem; line-height: 1.5; }
.tls-result-card__foot i { margin-top: 0.08rem; color: #16866e; }

.tls-readiness-preview__visual { position: relative; display: grid; width: 8rem; height: 8rem; margin: 0 auto 1.2rem; place-items: center; color: #167d75; font-size: 2.8rem; }
.tls-readiness-preview__ring { position: absolute; inset: 0; border: 1px dashed rgba(0, 145, 188, 0.35); border-radius: 50%; }
.tls-readiness-preview__ring::after { position: absolute; inset: 1rem; border: 1px solid rgba(35, 180, 141, 0.25); border-radius: 50%; content: ""; }
.tls-readiness-preview__check { position: absolute; inset: auto 0.35rem 0.7rem auto; display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: 50%; color: #fff; background: #18a76f; font-size: 1.15rem; box-shadow: 0 0.65rem 1.4rem rgba(24, 167, 111, 0.24); }

.tls-findings { background: #fff; }
.tls-findings__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.tls-finding { position: relative; min-width: 0; border: 1px solid rgba(4, 63, 91, 0.11); padding: 1.05rem; background: linear-gradient(145deg, #fff, #f8fbfc); box-shadow: inset 0.16rem 0 #23b48d; }
.tls-finding--warning { box-shadow: inset 0.16rem 0 #d49a2f; }
.tls-finding--fail { box-shadow: inset 0.16rem 0 #cf4d58; }
.tls-finding--info { box-shadow: inset 0.16rem 0 #4f84d8; }
.tls-finding__status { display: inline-flex; gap: 0.32rem; align-items: center; color: #087752; font-size: 0.58rem; font-weight: 850; letter-spacing: 0.06em; text-transform: uppercase; }
.tls-finding--warning .tls-finding__status { color: #93630b; }
.tls-finding--fail .tls-finding__status { color: #a6333c; }
.tls-finding--info .tls-finding__status { color: #3469ad; }
.tls-finding h3 { margin: 0.5rem 0 0.35rem; color: #173d51; font-size: 0.92rem; }
.tls-finding > p { margin: 0; color: #607786; font-size: 0.7rem; line-height: 1.6; }
.tls-finding > code { display: block; margin-top: 0.65rem; overflow-wrap: anywhere; border: 1px solid rgba(4, 63, 91, 0.08); padding: 0.52rem; color: #235a70; background: #f2f7f9; font-size: 0.61rem; line-height: 1.55; }
.tls-finding .tls-finding__action { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.42rem; margin-top: 0.65rem; color: #425e6c; font-weight: 650; }
.tls-finding__action i { margin-top: 0.1rem; color: #16866e; }

.tls-details { background: linear-gradient(180deg, #eef4f5, #f8fafb); }
.tls-details__layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(15rem, 0.8fr); gap: 0.8rem; align-items: start; }
.tls-detail-card { min-width: 0; border: 1px solid rgba(4, 63, 91, 0.11); background: #fff; }
.tls-detail-card--connection { grid-column: 1 / -1; }
.tls-detail-card__heading { display: flex; gap: 0.65rem; align-items: center; border-bottom: 1px solid rgba(4, 63, 91, 0.09); padding: 0.85rem 1rem; background: #f7fafb; }
.tls-detail-card__heading i { color: #16866e; font-size: 1.05rem; }
.tls-detail-card__heading h3 { margin: 0; color: #173d51; font-size: 0.84rem; }
.tls-detail-card dl { margin: 0; padding: 0 1rem 0.9rem; }
.tls-detail-card dl > div { display: grid; grid-template-columns: minmax(8rem, 0.5fr) minmax(0, 1fr); gap: 0.8rem; padding: 0.68rem 0; border-bottom: 1px solid rgba(4, 63, 91, 0.075); }
.tls-detail-card dl > div:last-child { border-bottom: 0; }
.tls-detail-card dt { color: #718492; font-size: 0.62rem; font-weight: 700; }
.tls-detail-card dd { min-width: 0; margin: 0; overflow-wrap: anywhere; color: #365867; font-size: 0.68rem; text-align: right; }
.tls-detail-card dd code { color: #17627e; font-size: 0.63rem; }
.tls-detail-card--names ul { display: grid; max-height: 21rem; margin: 0; padding: 0; overflow: auto; list-style: none; }
.tls-detail-card--names li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.55rem; align-items: center; padding: 0.62rem 0.9rem; border-bottom: 1px solid rgba(4, 63, 91, 0.075); }
.tls-detail-card--names li i { color: #16866e; }
.tls-detail-card--names li code { min-width: 0; overflow-wrap: anywhere; color: #235a70; font-size: 0.64rem; }
.tls-detail-card--names > p { margin: 0; padding: 0.8rem 0.9rem; color: #607786; font-size: 0.67rem; line-height: 1.6; }

.tls-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.tls-method h2 { color: #fff; font-size: clamp(1.7rem, 3vw, 2.45rem); }
.tls-method__layout > div:first-child > p:not(.premium-eyebrow) { color: rgba(219, 234, 254, 0.67); font-size: 0.76rem; line-height: 1.75; }
.tls-method__layout > div:first-child > a { display: inline-flex; gap: 0.4rem; align-items: center; margin-top: 0.7rem; color: #70ddfa; font-size: 0.72rem; font-weight: 800; }
.tls-method__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; margin: 0; padding: 0; list-style: none; }
.tls-method__steps li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; border: 1px solid rgba(84, 214, 255, 0.13); padding: 0.9rem; background: rgba(84, 214, 255, 0.035); }
.tls-method__steps li > span { color: #70ddfa; font-family: var(--premium-mono, monospace); font-size: 0.59rem; }
.tls-method__steps h3 { margin: 0 0 0.25rem; color: #fff; font-size: 0.78rem; }
.tls-method__steps p { margin: 0; color: rgba(219, 234, 254, 0.63); font-size: 0.67rem; line-height: 1.6; }

.tls-faq { background: #f8fafb; }
.tls-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(2rem, 5vw, 5rem); }
.tls-faq__items { display: grid; gap: 0.55rem; }
.tls-faq__items details { border: 1px solid rgba(4, 63, 91, 0.11); background: #fff; }
.tls-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.95rem 1rem; color: #173d51; cursor: pointer; font-size: 0.77rem; font-weight: 750; }
.tls-faq__items summary::-webkit-details-marker { display: none; }
.tls-faq__items details[open] summary i { transform: rotate(45deg); }
.tls-faq__items summary i { flex: 0 0 auto; color: #16866e; transition: transform 180ms ease; }
.tls-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.7rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .tls-details__layout,
  .tls-method__layout,
  .tls-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .tls-detail-card--connection { grid-column: auto; }
}

@media (max-width: 767.98px) {
  .tls-result-card__heading { align-items: flex-start; flex-direction: column; }
  .tls-result-card__metrics,
  .tls-findings__grid,
  .tls-method__steps { grid-template-columns: minmax(0, 1fr); }
  .tls-result-card__metrics > div { border-right: 0; border-bottom: 1px solid rgba(4, 63, 91, 0.1); }
  .tls-result-card__metrics > div:last-child { border-bottom: 0; }
}

@media (max-width: 479.98px) {
  .tls-certificate-console__rows span,
  .tls-detail-card dl > div { grid-template-columns: minmax(0, 1fr); }
  .tls-detail-card dd { text-align: left; }
  .tls-result-card__badge { white-space: normal; }
}

@media (prefers-reduced-motion: reduce) {
  .tls-faq__items summary i { transition: none; }
}

@media print {
  .tls-hero,
  .tls-checker-form-panel,
  .tls-method,
  .tls-faq { display: none !important; }
  .tls-checker-section,
  .tls-details { background: #fff !important; }
  .tls-result-card,
  .tls-finding,
  .tls-detail-card { break-inside: avoid; box-shadow: none; }
}

/* Domain expiry and ownership checklist */
.domain-ownership-hero {
  background:
    linear-gradient(rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84, 214, 255, 0.035) 1px, transparent 1px),
    radial-gradient(circle at 82% 28%, rgba(242, 181, 71, 0.19), transparent 30%),
    linear-gradient(135deg, #07111f, #0d1a2c 64%, #10223b);
  background-size: 2rem 2rem, 2rem 2rem, auto, auto;
}
.domain-ownership-hero .ats-page-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.62fr); }
.domain-ownership-hero .premium-btn { gap: 0.55rem; margin-top: 1.35rem; }
.ownership-console__body { position: relative; min-height: 21rem; padding: 1.5rem; overflow: hidden; }
.ownership-console__body::before { position: absolute; inset: 1rem; border: 1px solid rgba(84, 214, 255, 0.08); background: linear-gradient(rgba(84, 214, 255, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(84, 214, 255, 0.04) 1px, transparent 1px); background-size: 1.25rem 1.25rem; content: ""; }
.ownership-console__domain { position: relative; z-index: 1; display: flex; gap: 0.8rem; align-items: center; border: 1px solid rgba(84, 214, 255, 0.18); padding: 0.9rem; background: rgba(4, 13, 25, 0.83); }
.ownership-console__domain > i { display: grid; width: 2.6rem; height: 2.6rem; place-items: center; color: #75e6ff; background: rgba(84, 214, 255, 0.11); }
.ownership-console__domain span { display: grid; gap: 0.15rem; }
.ownership-console__domain small { color: rgba(219, 234, 254, 0.58); font-size: 0.62rem; font-weight: 800; letter-spacing: 0.12em; }
.ownership-console__domain strong { color: #f6fbff; }
.ownership-console__timeline { position: relative; z-index: 1; display: grid; grid-template-columns: 0.55rem 1fr 0.55rem 1fr 0.55rem; gap: 0.5rem; align-items: center; margin: 2.1rem 0; }
.ownership-console__timeline > i { width: 0.55rem; height: 0.55rem; border: 2px solid #74ddbc; border-radius: 50%; box-shadow: 0 0 0 0.35rem rgba(72, 225, 173, 0.08); }
.ownership-console__timeline > span { display: grid; gap: 0.1rem; border-top: 1px solid rgba(24, 168, 120, 0.34); padding-top: 0.55rem; }
.ownership-console__timeline b { color: #153c55; font-size: 0.76rem; }
.ownership-console__timeline small { color: #6a7f8b; font-size: 0.62rem; }
.ownership-console__controls { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.55rem; }
.ownership-console__controls span { display: grid; gap: 0.4rem; place-items: center; border: 1px solid rgba(84, 214, 255, 0.13); padding: 0.8rem 0.35rem; color: rgba(231, 242, 253, 0.78); background: rgba(5, 14, 26, 0.76); font-size: 0.67rem; font-weight: 700; }
.ownership-console__controls i { color: #72e7bd; font-size: 1.15rem; }

.ownership-input-wrap { position: relative; }
.ownership-input-wrap > i { position: absolute; top: 50%; left: 1rem; color: #3073af; transform: translateY(-50%); }
.ownership-input-wrap input { width: 100%; padding-left: 2.7rem; }
.ownership-result { align-self: stretch; border: 1px solid rgba(4, 63, 91, 0.12); border-top: 4px solid #2f75b5; border-radius: 0.2rem; padding: clamp(1.25rem, 3vw, 1.8rem); background: #fff; box-shadow: 0 1rem 2.5rem rgba(5, 32, 51, 0.08); }
.ownership-result--healthy { border-top-color: #18a878; }
.ownership-result--warning { border-top-color: #d29a2d; }
.ownership-result--critical { border-top-color: #d45858; }
.ownership-result__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.ownership-result__heading h2 { margin: 0.15rem 0 0.45rem; color: #0a2740; font-size: clamp(1.5rem, 3vw, 2.15rem); word-break: break-word; }
.ownership-result__heading p { margin: 0; color: #536b79; line-height: 1.65; }
.ownership-result__badge { display: inline-flex; flex: 0 0 auto; gap: 0.45rem; align-items: center; border-radius: 999px; padding: 0.48rem 0.68rem; color: #175d8c; background: #e6f3fb; font-size: 0.72rem; font-weight: 800; }
.ownership-result--healthy .ownership-result__badge { color: #08704f; background: #ddf8ec; }
.ownership-result--warning .ownership-result__badge { color: #7c570d; background: #fff2d4; }
.ownership-result--critical .ownership-result__badge { color: #9b2f36; background: #fee9e9; }
.ownership-result__metrics { display: grid; grid-template-columns: 0.8fr 1.6fr 0.7fr; margin-top: 1.4rem; border: 1px solid rgba(4, 63, 91, 0.09); background: #f6f9fb; }
.ownership-result__metrics > div { display: grid; gap: 0.3rem; align-content: center; border-right: 1px solid rgba(4, 63, 91, 0.09); padding: 0.9rem; }
.ownership-result__metrics > div:last-child { border-right: 0; }
.ownership-result__metrics span { color: #647a87; font-size: 0.66rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; }
.ownership-result__metrics strong { color: #0c304c; font-size: 1rem; overflow-wrap: anywhere; }
.ownership-result__foot { margin: 1rem 0 0; color: #6b7e88; font-size: 0.72rem; }
.ownership-result__foot i { margin-right: 0.3rem; color: #2085b9; }
.ownership-preview__visual { display: flex; gap: 1rem; align-items: center; justify-content: center; min-height: 7.5rem; margin-bottom: 0.8rem; color: #2b77ac; font-size: 2rem; }
.ownership-preview__visual span { width: 4rem; height: 1px; background: linear-gradient(90deg, #66cce9, #48d7a7); }

.ownership-evidence__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.ownership-evidence-card { border: 1px solid rgba(4, 63, 91, 0.1); border-radius: 0.15rem; padding: 1.2rem; background: #fff; box-shadow: 0 0.75rem 2rem rgba(5, 32, 51, 0.06); }
.ownership-evidence-card__heading { display: flex; gap: 0.65rem; align-items: center; margin-bottom: 1rem; }
.ownership-evidence-card__heading i { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #136f9f; background: #e8f5fb; }
.ownership-evidence-card h3 { margin: 0; color: #0b2a43; font-size: 1rem; }
.ownership-evidence-card dl { margin: 0; }
.ownership-evidence-card dl > div { display: grid; grid-template-columns: 6.2rem minmax(0, 1fr); gap: 0.7rem; border-top: 1px solid rgba(4, 63, 91, 0.08); padding: 0.68rem 0; }
.ownership-evidence-card dt { color: #667d89; font-size: 0.69rem; font-weight: 800; text-transform: uppercase; }
.ownership-evidence-card dd { margin: 0; color: #163d55; font-size: 0.77rem; text-align: right; overflow-wrap: anywhere; }
.ownership-evidence-card p { color: #5c727f; font-size: 0.76rem; line-height: 1.6; }
.ownership-status-list, .ownership-nameservers { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.7rem 0 0; padding: 0; list-style: none; }
.ownership-status-list li { border-radius: 999px; padding: 0.32rem 0.52rem; color: #285e7e; background: #eaf4f9; font-size: 0.66rem; }
.ownership-nameservers li { width: 100%; }
.ownership-nameservers code { display: block; border-left: 2px solid #45b99d; padding: 0.4rem 0.55rem; color: #16415b; background: #f3f8fa; font-size: 0.7rem; overflow-wrap: anywhere; }
.ownership-dnssec { border-top: 1px solid rgba(4, 63, 91, 0.08); padding-top: 0.75rem; }
.ownership-dnssec i { margin-right: 0.35rem; color: #15916a; }
.ownership-contact-note { display: flex; gap: 0.55rem; align-items: flex-start; margin: 1rem 0 0; border: 1px solid rgba(47, 117, 181, 0.16); padding: 0.75rem 0.85rem; color: #486674; background: #f2f8fb; font-size: 0.76rem; }
.ownership-contact-note i { color: #246e9d; }
.ownership-event-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 1px; margin-top: 1rem; background: rgba(4, 63, 91, 0.1); }
.ownership-event-strip span { display: grid; gap: 0.25rem; padding: 0.75rem; background: #fff; }
.ownership-event-strip small { color: #627985; font-size: 0.63rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.ownership-event-strip strong { color: #163b54; font-size: 0.75rem; }

.ownership-checklist-layout { display: grid; grid-template-columns: minmax(15rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.ownership-checklist-copy h2 { color: #092943; }
.ownership-checklist-copy > p:not(.premium-eyebrow) { color: #5c717d; line-height: 1.7; }
.ownership-progress { display: grid; gap: 0.65rem; margin: 1.3rem 0 1rem; }
.ownership-progress > div { display: flex; gap: 1rem; align-items: center; justify-content: space-between; color: #526b79; font-size: 0.76rem; }
.ownership-progress strong { color: #123d58; }
.ownership-progress__track { display: block; height: 0.5rem; overflow: hidden; border-radius: 999px; background: #dce8ed; }
.ownership-progress__track i { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2e7db2, #28b78c); transition: width 180ms ease; }
.ownership-checklist { display: grid; gap: 0.65rem; }
.ownership-checklist label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; align-items: start; margin: 0; border: 1px solid rgba(4, 63, 91, 0.1); padding: 0.85rem; cursor: pointer; background: #fff; box-shadow: 0 0.4rem 1.2rem rgba(5, 32, 51, 0.035); }
.ownership-checklist label:has(input:checked) { border-color: rgba(31, 164, 121, 0.35); background: #f3fbf8; }
.ownership-checklist input { width: 1.05rem; height: 1.05rem; margin-top: 0.14rem; accent-color: #158761; }
.ownership-checklist span { display: grid; gap: 0.2rem; }
.ownership-checklist b { color: #103650; font-size: 0.82rem; }
.ownership-checklist small { color: #607683; font-size: 0.72rem; line-height: 1.55; }

.ownership-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.65fr) minmax(0, 1.35fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.ownership-method__layout h2 { color: #fff; }
.ownership-method__layout p { color: rgba(226, 238, 249, 0.7); line-height: 1.7; }
.ownership-method__layout a { color: #72def8; font-weight: 700; }
.ownership-method__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 1px; list-style: none; background: rgba(84, 214, 255, 0.13); }
.ownership-method__steps li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; padding: 1rem; background: #0b1b2d; }
.ownership-method__steps > li > span { color: #65dcf7; font-size: 0.72rem; font-weight: 900; }
.ownership-method__steps h3 { margin: 0 0 0.3rem; color: #eef8ff; font-size: 0.88rem; }
.ownership-method__steps p { margin: 0; font-size: 0.71rem; }
.ownership-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.ownership-faq__layout h2 { color: #0a2b43; }
.ownership-faq__items { display: grid; gap: 0.55rem; }
.ownership-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.ownership-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.ownership-faq__items summary::-webkit-details-marker { display: none; }
.ownership-faq__items details[open] summary i { transform: rotate(45deg); }
.ownership-faq__items summary i { color: #2b7ea9; transition: transform 160ms ease; }
.ownership-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .domain-ownership-hero .ats-page-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .ownership-evidence__grid { grid-template-columns: minmax(0, 1fr); }
  .ownership-checklist-layout, .ownership-method__layout, .ownership-faq__layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  .ownership-result__heading { align-items: flex-start; flex-direction: column; }
  .ownership-result__metrics, .ownership-method__steps { grid-template-columns: minmax(0, 1fr); }
  .ownership-result__metrics > div { border-right: 0; border-bottom: 1px solid rgba(4, 63, 91, 0.09); }
  .ownership-result__metrics > div:last-child { border-bottom: 0; }
}
@media (max-width: 479.98px) {
  .ownership-console__controls { grid-template-columns: minmax(0, 1fr); }
  .ownership-console__controls span { grid-template-columns: auto 1fr; justify-content: start; }
  .ownership-result__badge { white-space: normal; }
  .ownership-evidence-card dl > div { grid-template-columns: minmax(0, 1fr); }
  .ownership-evidence-card dd { text-align: left; }
}
@media (prefers-reduced-motion: reduce) {
  .ownership-progress__track i, .ownership-faq__items summary i { transition: none; }
}
@media print {
  .domain-ownership-hero, .ownership-form-panel, .ownership-method, .ownership-faq, .ownership-checklist-copy .tool-action { display: none !important; }
  .ownership-check-section, .ownership-evidence, .ownership-checklist-section { background: #fff !important; }
  .email-readiness-preview { display: none !important; }
  .ownership-result, .ownership-evidence-card, .ownership-checklist label { break-inside: avoid; box-shadow: none; }
}

/* DNS propagation viewer */
.dns-propagation-hero { overflow: hidden; }
.propagation-console { min-height: 22rem; }
.propagation-console__body { display: grid; grid-template-rows: minmax(0, 1fr) auto; min-height: 18.5rem; padding: 1.2rem; }
.propagation-orbit { position: relative; display: grid; place-items: center; min-height: 13rem; }
.propagation-orbit::before, .propagation-orbit::after { position: absolute; inset: 50% auto auto 50%; width: 12rem; height: 12rem; border: 1px solid rgba(92, 218, 245, 0.22); border-radius: 50%; content: ""; transform: translate(-50%, -50%); }
.propagation-orbit::after { width: 8rem; height: 8rem; border-style: dashed; }
.propagation-orbit__core { position: relative; z-index: 2; display: grid; gap: 0.15rem; place-items: center; border: 1px solid rgba(96, 223, 249, 0.5); padding: 0.8rem 1rem; color: #e9fbff; background: #092338; box-shadow: 0 0 2rem rgba(39, 194, 226, 0.15); }
.propagation-orbit__core small { color: #63d9f0; font-size: 0.58rem; font-weight: 900; letter-spacing: 0.12em; }
.propagation-orbit__core strong { color: #e9fbff; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 0.78rem; }
.propagation-orbit__node { position: absolute; z-index: 3; display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border: 1px solid rgba(87, 220, 245, 0.35); border-radius: 50%; color: #6ce0f6; background: #0a1c2e; box-shadow: 0 0.6rem 1.4rem rgba(0, 0, 0, 0.28); }
.propagation-orbit__node--one { top: 0.4rem; left: 50%; transform: translateX(-50%); }
.propagation-orbit__node--two { right: calc(50% - 6.9rem); bottom: 1.3rem; }
.propagation-orbit__node--three { bottom: 1.3rem; left: calc(50% - 6.9rem); }
.propagation-console__signals { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(100, 219, 246, 0.16); }
.propagation-console__signals span { display: grid; gap: 0.15rem; padding: 0.7rem; background: #0b1d30; text-align: center; }
.propagation-console__signals small { color: #67899b; font-size: 0.53rem; font-weight: 800; letter-spacing: 0.1em; }
.propagation-console__signals strong { color: #e4faff; font-size: 0.75rem; }

.propagation-check-layout { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(20rem, 1.08fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.propagation-form-panel, .propagation-preview, .propagation-summary { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.propagation-form-panel h2, .propagation-preview h2, .propagation-summary h2 { color: #0a2d45; }
.propagation-form-panel > p:not(.premium-eyebrow), .propagation-preview > p { color: #586f7c; line-height: 1.7; }
.propagation-form-panel code { color: #176184; background: #eef6f9; }
.propagation-form__fields { display: grid; grid-template-columns: minmax(0, 1fr) 8.5rem; gap: 0.85rem; align-items: start; }
.propagation-input-wrap { position: relative; }
.propagation-input-wrap i { position: absolute; top: 50%; left: 0.8rem; color: #2b779e; transform: translateY(-50%); }
.propagation-input-wrap input { padding-left: 2.35rem !important; }
.propagation-form select { width: 100%; min-height: 3rem; border: 1px solid #b8cbd4; border-radius: 0; padding: 0.7rem 2.2rem 0.7rem 0.8rem; color: #123a52; background-color: #fff; font: inherit; }
.propagation-form select:focus { border-color: #2581ac; outline: 3px solid rgba(37, 129, 172, 0.14); }
.propagation-scope-note { display: flex; gap: 0.65rem; align-items: flex-start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.propagation-scope-note i { color: #2a83aa; }
.propagation-scope-note p { margin: 0; color: #5b727e; font-size: 0.73rem; line-height: 1.55; }

.propagation-preview { min-height: 100%; background: linear-gradient(145deg, #fafdfe, #eef6f8); }
.propagation-preview__stack { display: grid; gap: 0.45rem; margin-bottom: 1.4rem; }
.propagation-preview__stack span { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.65rem; align-items: center; border: 1px solid rgba(7, 59, 84, 0.08); padding: 0.7rem; background: rgba(255, 255, 255, 0.85); }
.propagation-preview__stack i { color: #2983a9; }
.propagation-preview__stack b { color: #183e54; font-size: 0.75rem; }
.propagation-preview__stack small { color: #6b7f88; font-size: 0.64rem; }

.propagation-summary { border-top: 4px solid #2a7da5; }
.propagation-summary--agree { border-top-color: #20a474; }
.propagation-summary--differ { border-top-color: #d68a22; }
.propagation-summary--partial { border-top-color: #77909e; }
.propagation-summary__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.propagation-summary__heading h2 { margin-bottom: 0.45rem; overflow-wrap: anywhere; }
.propagation-summary__heading p:last-child { margin: 0; color: #566f7c; font-size: 0.78rem; line-height: 1.6; }
.propagation-summary__badge { display: inline-flex; flex: 0 0 auto; gap: 0.4rem; align-items: center; border-radius: 999px; padding: 0.42rem 0.65rem; color: #1d5b78; background: #e8f3f7; font-size: 0.68rem; font-weight: 850; }
.propagation-summary--agree .propagation-summary__badge { color: #117452; background: #e6f7f0; }
.propagation-summary--differ .propagation-summary__badge { color: #865313; background: #fff3de; }
.propagation-summary__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 1.2rem; background: rgba(5, 52, 78, 0.1); }
.propagation-summary__metrics > div { display: grid; gap: 0.25rem; padding: 0.8rem; background: #f8fbfc; }
.propagation-summary__metrics span { color: #667d88; font-size: 0.61rem; font-weight: 750; text-transform: uppercase; }
.propagation-summary__metrics strong { color: #133d56; font-size: 1.12rem; }

.propagation-results__header { max-width: 52rem; }
.resolver-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.85rem; }
.resolver-card { display: flex; min-width: 0; min-height: 25rem; flex-direction: column; border: 1px solid rgba(5, 52, 78, 0.11); border-top: 3px solid #2c83aa; padding: 1rem; background: #fff; box-shadow: 0 0.7rem 2rem rgba(6, 38, 57, 0.055); }
.resolver-card--answered { border-top-color: #20a474; }
.resolver-card--unavailable, .resolver-card--dns_error { border-top-color: #c36f50; }
.resolver-card--no_answer, .resolver-card--nxdomain { border-top-color: #d79536; }
.resolver-card__top, .resolver-card__evidence { display: flex; gap: 0.6rem; align-items: center; justify-content: space-between; }
.resolver-card__index { color: #9aadb5; font-size: 0.62rem; font-weight: 900; letter-spacing: 0.12em; }
.resolver-card__status { display: inline-flex; gap: 0.35rem; align-items: center; color: #1d7359; font-size: 0.65rem; font-weight: 800; }
.resolver-card--unavailable .resolver-card__status, .resolver-card--dns_error .resolver-card__status { color: #a05238; }
.resolver-card--no_answer .resolver-card__status, .resolver-card--nxdomain .resolver-card__status { color: #94601b; }
.resolver-card__identity { min-height: 5.3rem; border-bottom: 1px solid rgba(5, 52, 78, 0.08); padding: 0.85rem 0; }
.resolver-card__identity h3 { margin: 0 0 0.3rem; color: #123b54; font-size: 0.9rem; }
.resolver-card__identity p { margin: 0; color: #6a7e88; font-size: 0.65rem; line-height: 1.55; }
.resolver-card__identity code { color: #306780; background: transparent; overflow-wrap: anywhere; }
.resolver-card__evidence { margin: 0.85rem 0; }
.resolver-card__metric { display: grid; gap: 0.2rem; }
.resolver-card__metric:last-child { text-align: right; }
.resolver-card__metric span { color: #71848c; font-size: 0.57rem; font-weight: 750; text-transform: uppercase; }
.resolver-card__metric strong { color: #16415b; font-size: 0.77rem; }
.resolver-values { display: grid; gap: 0.4rem; margin: 0 0 0.8rem; padding: 0; list-style: none; }
.resolver-values li { border-left: 2px solid #2fa17d; padding: 0.48rem 0.55rem; background: #f1f8f6; }
.resolver-values code { color: #164c45; background: transparent; font-size: 0.69rem; overflow-wrap: anywhere; white-space: pre-wrap; }
.resolver-card__empty { border-left: 2px solid #d2933d; padding: 0.58rem; color: #667984; background: #fbf7ef; font-size: 0.7rem; line-height: 1.55; }
.resolver-card__more { margin: -0.35rem 0 0.8rem; color: #6b7e87; font-size: 0.63rem; }
.resolver-card__aliases { display: grid; gap: 0.25rem; margin: 0 0 0.75rem; color: #687d87; font-size: 0.62rem; }
.resolver-card__aliases span { font-weight: 800; text-transform: uppercase; }
.resolver-card__aliases code { color: #235970; background: #edf4f7; overflow-wrap: anywhere; }
.resolver-card__dnssec { display: flex; gap: 0.4rem; align-items: flex-start; margin: auto 0 0; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.7rem; color: #607782; font-size: 0.65rem; line-height: 1.5; }
.resolver-card__dnssec i { color: #2584a6; }
.propagation-next-step { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; margin-top: 1rem; border: 1px solid rgba(35, 126, 165, 0.18); padding: 1rem; background: #f1f8fa; }
.propagation-next-step > i { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; color: #fff; background: #237da4; }
.propagation-next-step h3 { margin: 0 0 0.2rem; color: #123b54; font-size: 0.82rem; }
.propagation-next-step p { margin: 0; color: #586f7c; font-size: 0.7rem; line-height: 1.55; }
.propagation-next-step__actions { display: grid; gap: 0.4rem; justify-items: end; }
.propagation-next-step a { color: #176d95; font-size: 0.72rem; font-weight: 800; white-space: nowrap; }

.ttl-explainer__layout { display: grid; grid-template-columns: minmax(15rem, 0.7fr) minmax(0, 1.3fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.ttl-explainer h2 { color: #f2fbff; }
.ttl-explainer p { color: rgba(226, 239, 248, 0.72); line-height: 1.7; }
.ttl-explainer a { color: #6bdcf3; font-weight: 750; }
.ttl-timeline { display: grid; gap: 0.75rem; border: 1px solid rgba(101, 220, 245, 0.18); padding: clamp(1rem, 3vw, 1.5rem); background: rgba(6, 18, 31, 0.35); }
.ttl-timeline > div { display: grid; grid-template-columns: 5.2rem minmax(5rem, 1fr) 5.2rem; gap: 0.7rem; align-items: center; }
.ttl-timeline span, .ttl-timeline strong { color: #b7cad5; font-size: 0.64rem; }
.ttl-timeline strong { text-align: right; }
.ttl-timeline > div > i { position: relative; display: block; height: 0.45rem; overflow: hidden; border-radius: 999px; background: rgba(133, 177, 196, 0.18); }
.ttl-timeline > div > i::after { display: block; width: var(--ttl-width); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #22a981, #5ed9f2); content: ""; }
.ttl-timeline__long { --ttl-width: 82%; }
.ttl-timeline__medium { --ttl-width: 47%; }
.ttl-timeline__short { --ttl-width: 15%; }
.ttl-timeline > p { display: flex; gap: 0.5rem; align-items: center; margin: 0.3rem 0 0; border-top: 1px solid rgba(101, 220, 245, 0.12); padding-top: 0.8rem; font-size: 0.68rem; }
.ttl-timeline > p i { color: #62d9f1; }

.propagation-method__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: rgba(5, 52, 78, 0.1); }
.propagation-method__grid article { position: relative; min-height: 13rem; padding: 1rem; background: #fff; }
.propagation-method__grid article > span { position: absolute; top: 0.7rem; right: 0.75rem; color: #b3c1c8; font-size: 0.62rem; font-weight: 900; }
.propagation-method__grid article > i { display: grid; width: 2.3rem; height: 2.3rem; place-items: center; margin-bottom: 1rem; color: #fff; background: #1f789f; }
.propagation-method__grid h3 { color: #123b54; font-size: 0.84rem; }
.propagation-method__grid p { margin: 0; color: #5d737e; font-size: 0.7rem; line-height: 1.6; }
.propagation-provider-links { display: flex; flex-wrap: wrap; gap: 0.6rem 1rem; align-items: center; margin-top: 1rem; color: #6a7e87; font-size: 0.69rem; }
.propagation-provider-links span { font-weight: 800; text-transform: uppercase; }
.propagation-provider-links a { color: #1b7097; font-weight: 800; }

.propagation-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.propagation-faq__layout h2 { color: #0a2b43; }
.propagation-faq__items { display: grid; gap: 0.55rem; }
.propagation-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.propagation-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.propagation-faq__items summary::-webkit-details-marker { display: none; }
.propagation-faq__items details[open] summary i { transform: rotate(45deg); }
.propagation-faq__items summary i { color: #2b7ea9; transition: transform 160ms ease; }
.propagation-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .dns-propagation-hero .ats-page-hero__grid, .propagation-check-layout, .ttl-explainer__layout, .propagation-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .resolver-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .propagation-method__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .propagation-form__fields, .resolver-card-grid, .propagation-method__grid { grid-template-columns: minmax(0, 1fr); }
  .propagation-summary__heading { flex-direction: column; }
  .propagation-next-step { grid-template-columns: auto minmax(0, 1fr); }
  .propagation-next-step__actions { grid-column: 2; justify-items: start; }
  .propagation-next-step a { white-space: normal; }
}
@media (max-width: 479.98px) {
  .propagation-console__signals, .propagation-summary__metrics { grid-template-columns: minmax(0, 1fr); }
  .propagation-console__signals span { grid-template-columns: 1fr auto; text-align: left; }
  .propagation-preview__stack span { grid-template-columns: auto minmax(0, 1fr); }
  .propagation-preview__stack small { grid-column: 2; }
  .ttl-timeline > div { grid-template-columns: minmax(0, 1fr) auto; }
  .ttl-timeline > div > i { grid-column: 1 / -1; grid-row: 2; }
  .resolver-card { min-height: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .propagation-faq__items summary i { transition: none; }
}
@media print {
  .dns-propagation-hero, .propagation-form-panel, .ttl-explainer, .propagation-method, .propagation-faq { display: none !important; }
  .propagation-check-section, .propagation-results { background: #fff !important; }
  .resolver-card, .propagation-summary, .propagation-next-step { break-inside: avoid; box-shadow: none; }
}

/* Redirect chain checker */
.redirect-chain-hero { overflow: hidden; }
.redirect-console { min-height: 22rem; }
.redirect-console__body { display: grid; align-content: space-between; min-height: 18.5rem; padding: 1.2rem; }
.redirect-console__address { display: flex; gap: 0.55rem; align-items: center; border: 1px solid rgba(101, 219, 242, 0.17); padding: 0.7rem 0.85rem; color: #8eabb9; background: rgba(4, 16, 28, 0.42); font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 0.7rem; }
.redirect-console__address i { color: #57d2eb; }
.redirect-console__route { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 0.55rem; align-items: center; }
.redirect-console__route > span { display: grid; gap: 0.2rem; place-items: center; border: 1px solid rgba(89, 216, 241, 0.28); padding: 0.85rem 0.35rem; background: #0a2033; box-shadow: 0 0.7rem 1.6rem rgba(0, 0, 0, 0.2); }
.redirect-console__route > span.is-final { border-color: rgba(61, 214, 160, 0.42); background: #092d2c; }
.redirect-console__route b { color: #eefbff; font-size: 1.1rem; }
.redirect-console__route small { color: #6b9bad; font-size: 0.53rem; font-weight: 850; letter-spacing: 0.12em; }
.redirect-console__route > i { color: #59cfe8; font-size: 0.8rem; }
.redirect-console__signals { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(100, 219, 246, 0.16); }
.redirect-console__signals span { display: grid; gap: 0.15rem; padding: 0.7rem; background: #0b1d30; text-align: center; }
.redirect-console__signals small { color: #67899b; font-size: 0.53rem; font-weight: 800; letter-spacing: 0.1em; }
.redirect-console__signals strong { color: #e4faff; font-size: 0.75rem; }

.redirect-check-layout { display: grid; grid-template-columns: minmax(0, 0.88fr) minmax(20rem, 1.12fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.redirect-form-panel, .redirect-preview, .redirect-summary { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.redirect-form-panel h2, .redirect-preview h2, .redirect-summary h2 { color: #0a2d45; }
.redirect-form-panel > p:not(.premium-eyebrow), .redirect-preview > p { color: #586f7c; line-height: 1.7; }
.redirect-form-panel code { color: #176184; background: #eef6f9; }
.redirect-input-wrap { position: relative; }
.redirect-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #247ba3; transform: translateY(-50%); }
.redirect-input-wrap input { padding-left: 2.35rem !important; }
.redirect-scope-note { display: flex; gap: 0.65rem; align-items: flex-start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.redirect-scope-note i { color: #1d9871; }
.redirect-scope-note p { margin: 0; color: #5b727e; font-size: 0.73rem; line-height: 1.55; }

.redirect-preview { display: grid; align-content: center; min-height: 100%; background: linear-gradient(145deg, #fbfdfe, #edf6f8); }
.redirect-preview__path { position: relative; display: grid; gap: 0.45rem; margin-bottom: 1.5rem; }
.redirect-preview__path::before { position: absolute; top: 1rem; bottom: 1rem; left: 1.08rem; width: 1px; background: #c3dbe4; content: ""; }
.redirect-preview__path > span { position: relative; display: grid; grid-template-columns: 2.2rem 3.2rem minmax(0, 1fr); gap: 0.7rem; align-items: center; border: 1px solid rgba(7, 59, 84, 0.08); padding: 0.65rem; background: rgba(255, 255, 255, 0.9); }
.redirect-preview__path b { z-index: 1; display: grid; width: 1rem; height: 1rem; place-items: center; border-radius: 50%; color: #fff; background: #2c7fa5; font-size: 0.54rem; }
.redirect-preview__path i { color: #8a5a19; font-style: normal; font-size: 0.73rem; font-weight: 900; }
.redirect-preview__path small { color: #5f747f; font-size: 0.68rem; }
.redirect-preview__path .is-final b { background: #20936e; }
.redirect-preview__path .is-final i { color: #167657; }

.redirect-summary { border-top: 4px solid #2a7da5; }
.redirect-summary--complete, .redirect-summary--direct { border-top-color: #20a474; }
.redirect-summary--review { border-top-color: #d68a22; }
.redirect-summary--broken { border-top-color: #bd6047; }
.redirect-summary__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.redirect-summary__heading h2 { margin-bottom: 0.45rem; }
.redirect-summary__heading p:last-child { margin: 0; color: #566f7c; font-size: 0.78rem; line-height: 1.6; }
.redirect-summary__badge { display: inline-flex; flex: 0 0 auto; gap: 0.38rem; align-items: center; max-width: 12rem; border-radius: 999px; padding: 0.42rem 0.65rem; color: #166f53; background: #e5f7f0; font-size: 0.65rem; font-weight: 850; text-align: center; }
.redirect-summary--review .redirect-summary__badge { color: #875716; background: #fff2dc; }
.redirect-summary--broken .redirect-summary__badge { color: #8f402d; background: #fbe9e4; }
.redirect-summary__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 1.2rem; background: rgba(5, 52, 78, 0.1); }
.redirect-summary__metrics > div { display: grid; gap: 0.25rem; padding: 0.75rem; background: #f8fbfc; }
.redirect-summary__metrics span { color: #667d88; font-size: 0.56rem; font-weight: 800; text-transform: uppercase; }
.redirect-summary__metrics strong { color: #133d56; font-size: 1rem; }
.redirect-summary__destination { display: grid; gap: 0.35rem; margin-top: 1rem; border-left: 2px solid #2c84aa; padding: 0.55rem 0.7rem; background: #eff7f9; }
.redirect-summary__destination span { color: #647984; font-size: 0.58rem; font-weight: 800; text-transform: uppercase; }
.redirect-summary__destination code { color: #164e68; background: transparent; font-size: 0.68rem; overflow-wrap: anywhere; white-space: normal; }

.redirect-results__layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.redirect-results__header { max-width: 48rem; }
.redirect-timeline { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.redirect-hop { position: relative; display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: 0.8rem; padding-bottom: 0.85rem; }
.redirect-hop::before { position: absolute; top: 2.2rem; bottom: 0; left: 1.27rem; width: 1px; background: #ccdce3; content: ""; }
.redirect-hop.is-last::before { display: none; }
.redirect-hop__marker { z-index: 1; display: grid; width: 2.55rem; height: 2.55rem; place-items: center; border: 3px solid #eef4f6; border-radius: 50%; color: #fff; background: #2b7fa6; box-shadow: 0 0 0 1px rgba(24, 97, 131, 0.18); font-size: 0.62rem; font-weight: 900; }
.redirect-hop--success .redirect-hop__marker { background: #1c936b; }
.redirect-hop--client_error .redirect-hop__marker, .redirect-hop--server_error .redirect-hop__marker, .redirect-hop--unavailable .redirect-hop__marker { background: #b85c43; }
.redirect-hop article { min-width: 0; border: 1px solid rgba(5, 52, 78, 0.1); padding: 0.9rem; background: #fff; box-shadow: 0 0.5rem 1.6rem rgba(6, 38, 57, 0.045); }
.redirect-hop__top { display: flex; gap: 0.8rem; align-items: flex-start; justify-content: space-between; }
.redirect-hop__top > div { display: flex; gap: 0.55rem; align-items: center; }
.redirect-hop__status { border-radius: 999px; padding: 0.25rem 0.45rem; color: #855918; background: #fff2dc; font-size: 0.58rem; font-weight: 900; }
.redirect-hop--success .redirect-hop__status { color: #126d50; background: #e4f6ee; }
.redirect-hop--client_error .redirect-hop__status, .redirect-hop--server_error .redirect-hop__status, .redirect-hop--unavailable .redirect-hop__status { color: #8c402f; background: #fbe9e4; }
.redirect-hop__top strong { color: #173f56; font-size: 0.75rem; }
.redirect-hop__time { flex: 0 0 auto; color: #647984; font-size: 0.63rem; font-weight: 750; }
.redirect-hop__url { display: block; margin-top: 0.7rem; color: #174e67; background: #f0f6f8; font-size: 0.68rem; overflow-wrap: anywhere; white-space: normal; }
.redirect-hop__flags { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.65rem; }
.redirect-hop__flags span { display: inline-flex; gap: 0.3rem; align-items: center; padding: 0.27rem 0.45rem; color: #466574; background: #edf3f5; font-size: 0.59rem; font-weight: 750; }
.redirect-hop__flags .is-good { color: #126f52; background: #e5f6ef; }
.redirect-hop__flags .is-danger { color: #91412e; background: #fbe9e4; }
.redirect-hop__next { display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.5rem; align-items: start; margin-top: 0.7rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.7rem; }
.redirect-hop__next > i { color: #2b83a9; }
.redirect-hop__next span { color: #647984; font-size: 0.6rem; font-weight: 800; text-transform: uppercase; }
.redirect-hop__next code { color: #1c5c77; background: transparent; font-size: 0.66rem; overflow-wrap: anywhere; white-space: normal; }
.redirect-hop__detail { display: flex; gap: 0.45rem; align-items: flex-start; margin: 0.7rem 0 0; color: #80503f; font-size: 0.67rem; line-height: 1.55; }

.redirect-findings { position: sticky; top: 6rem; border-top: 3px solid #277da5; padding: 1.2rem; background: #0b1c2e; box-shadow: 0 1rem 2.5rem rgba(4, 22, 37, 0.15); }
.redirect-findings h2 { color: #f1faff; font-size: clamp(1.2rem, 2vw, 1.55rem); }
.redirect-findings__list { display: grid; gap: 0.6rem; margin-top: 1rem; }
.redirect-finding { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; border: 1px solid rgba(108, 210, 236, 0.13); padding: 0.8rem; background: rgba(4, 17, 29, 0.32); }
.redirect-finding > i { color: #65d8ef; }
.redirect-finding--success > i { color: #51d3a5; }
.redirect-finding--warning > i { color: #f0bd6f; }
.redirect-finding--danger > i { color: #ef947b; }
.redirect-finding h3 { margin: 0 0 0.25rem; color: #e9f7fc; font-size: 0.76rem; }
.redirect-finding p { margin: 0; color: #a9bdc9; font-size: 0.66rem; line-height: 1.55; }
.redirect-findings__actions { display: grid; gap: 0.45rem; margin-top: 1rem; border-top: 1px solid rgba(108, 210, 236, 0.13); padding-top: 0.9rem; }
.redirect-findings__actions a { color: #6bdcf3; font-size: 0.7rem; font-weight: 800; }

.redirect-detour__layout { display: grid; grid-template-columns: minmax(15rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.redirect-detour h2 { color: #f2fbff; }
.redirect-detour p { color: rgba(226, 239, 248, 0.72); line-height: 1.7; }
.redirect-route-compare { display: grid; gap: 0.7rem; }
.redirect-route-compare > div { border: 1px solid rgba(92, 217, 242, 0.18); padding: 1rem; background: rgba(5, 18, 30, 0.32); }
.redirect-route-compare > div > span { color: #55d2eb; font-size: 0.56rem; font-weight: 900; letter-spacing: 0.12em; }
.redirect-route-compare p { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; margin: 0.65rem 0 0.4rem; }
.redirect-route-compare b { border: 1px solid rgba(89, 215, 240, 0.22); padding: 0.35rem 0.45rem; color: #e9f9fd; background: #0b263a; font-size: 0.62rem; }
.redirect-route-compare i { color: #58d4ec; }
.redirect-route-compare small { color: #8ea8b6; font-size: 0.62rem; }
.redirect-route-compare .is-detour { border-color: rgba(238, 181, 93, 0.2); }
.redirect-route-compare .is-detour > span, .redirect-route-compare .is-detour i { color: #eeb55d; }

.redirect-method__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: rgba(5, 52, 78, 0.1); }
.redirect-method__grid article { position: relative; min-height: 13rem; padding: 1rem; background: #fff; }
.redirect-method__grid article > span { position: absolute; top: 0.7rem; right: 0.75rem; color: #b3c1c8; font-size: 0.62rem; font-weight: 900; }
.redirect-method__grid article > i { display: grid; width: 2.3rem; height: 2.3rem; place-items: center; margin-bottom: 1rem; color: #fff; background: #1f789f; }
.redirect-method__grid h3 { color: #123b54; font-size: 0.84rem; }
.redirect-method__grid p { margin: 0; color: #5d737e; font-size: 0.7rem; line-height: 1.6; }
.redirect-method__source { margin: 1rem 0 0; color: #607680; font-size: 0.7rem; }
.redirect-method__source a { color: #176f96; font-weight: 800; }

.redirect-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.redirect-faq__layout h2 { color: #0a2b43; }
.redirect-faq__items { display: grid; gap: 0.55rem; }
.redirect-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.redirect-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.redirect-faq__items summary::-webkit-details-marker { display: none; }
.redirect-faq__items details[open] summary i { transform: rotate(45deg); }
.redirect-faq__items summary i { color: #2b7ea9; transition: transform 160ms ease; }
.redirect-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .redirect-chain-hero .ats-page-hero__grid, .redirect-check-layout, .redirect-results__layout, .redirect-detour__layout, .redirect-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .redirect-findings { position: static; }
  .redirect-method__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .redirect-summary__heading { flex-direction: column; }
  .redirect-summary__metrics, .redirect-method__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 479.98px) {
  .redirect-console__route { grid-template-columns: minmax(0, 1fr); }
  .redirect-console__route > i { transform: rotate(90deg); justify-self: center; }
  .redirect-console__signals, .redirect-summary__metrics { grid-template-columns: minmax(0, 1fr); }
  .redirect-console__signals span { grid-template-columns: 1fr auto; text-align: left; }
  .redirect-hop { grid-template-columns: 2rem minmax(0, 1fr); gap: 0.55rem; }
  .redirect-hop::before { left: 0.96rem; }
  .redirect-hop__marker { width: 1.95rem; height: 1.95rem; }
  .redirect-hop__top, .redirect-hop__top > div { align-items: flex-start; flex-direction: column; }
  .redirect-hop__next { grid-template-columns: auto minmax(0, 1fr); }
  .redirect-hop__next code { grid-column: 2; }
}
@media (prefers-reduced-motion: reduce) {
  .redirect-faq__items summary i { transition: none; }
}
@media print {
  .redirect-chain-hero, .redirect-form-panel, .redirect-detour, .redirect-method, .redirect-faq, .redirect-findings__actions { display: none !important; }
  .redirect-check-section, .redirect-results { background: #fff !important; }
  .redirect-summary, .redirect-hop article, .redirect-finding { break-inside: avoid; box-shadow: none; }
}

/* Email signature builder */
.signature-hero { overflow: hidden; }
.signature-console { min-height: 22rem; }
.signature-console__canvas { display: grid; align-content: space-between; min-height: 18.5rem; padding: 1.2rem; }
.signature-console__message { display: grid; gap: 0.55rem; }
.signature-console__message span { display: block; height: 0.42rem; border-radius: 999px; background: rgba(126, 176, 197, 0.14); }
.signature-console__message span:nth-child(1) { width: 82%; }
.signature-console__message span:nth-child(2) { width: 68%; }
.signature-console__message span:nth-child(3) { width: 45%; }
.signature-console__card { display: grid; grid-template-columns: 0.28rem minmax(0, 1fr); gap: 0.9rem; align-items: stretch; border: 1px solid rgba(104, 216, 240, 0.2); padding: 1rem; background: #0a2033; box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.18); }
.signature-console__card > i { display: block; background: linear-gradient(180deg, #64d9ef, #3478eb); }
.signature-console__card > div { display: grid; gap: 0.25rem; }
.signature-console .signature-console__card strong { color: #f1fbff; font-size: 1rem; }
.signature-console .signature-console__card span { color: #a8c0cc; font-size: 0.69rem; }
.signature-console .signature-console__card small { margin-top: 0.35rem; color: #69d9f1; font-size: 0.57rem; }
.signature-console__footer { display: flex; gap: 0.65rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.85rem 1.2rem; color: #83a2b1; font-size: 0.58rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.signature-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.signature-console__footer i { color: #62d8ef; }

.signature-builder-section { scroll-margin-top: 7.5rem; background:
  radial-gradient(circle at 92% 5%, rgba(38, 126, 170, 0.08), transparent 28rem),
  #f5f9fb; }
.signature-builder { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(22rem, 0.97fr); gap: clamp(1.25rem, 4vw, 3rem); align-items: start; }
.signature-form, .signature-preview-panel { border: 1px solid rgba(5, 52, 78, 0.1); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.signature-form { padding: clamp(1.1rem, 3vw, 2rem); }
.signature-form__heading { margin-bottom: 1.4rem; }
.signature-form__heading h2, .signature-preview-panel h2 { color: #0a2d45; }
.signature-form__heading > p:last-child { margin-bottom: 0; color: #586f7c; line-height: 1.7; }
.signature-stage { min-width: 0; margin: 0 0 1rem; border: 1px solid rgba(5, 52, 78, 0.1); padding: 1rem; background: #fbfdfe; }
.signature-stage legend { display: flex; gap: 0.55rem; align-items: center; width: auto; margin: 0 0 0.8rem; padding: 0 0.25rem; color: #163e55; font-size: 0.76rem; font-weight: 850; }
.signature-stage legend span { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; color: #fff; background: #1d789f; font-size: 0.58rem; }
.signature-stage__hint { margin: -0.2rem 0 0.85rem; color: #687c87; font-size: 0.69rem; line-height: 1.55; }
.signature-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.signature-field { display: grid; gap: 0.4rem; min-width: 0; color: #1c4358; font-size: 0.68rem; font-weight: 800; }
.signature-field--wide { grid-column: 1 / -1; }
.signature-field > span:first-child { display: flex; gap: 0.35rem; align-items: baseline; }
.signature-field > span b { color: #a54c35; }
.signature-field > span small { color: #768993; font-size: 0.58rem; font-weight: 650; }
.signature-field input:not([type="color"]), .signature-field select, .signature-field textarea { width: 100%; min-height: 2.85rem; border: 1px solid #c7d6dd; border-radius: 0.25rem; padding: 0.68rem 0.75rem; color: #173d53; background: #fff; font: 650 0.75rem/1.45 "Manrope", system-ui, sans-serif; }
.signature-field textarea { min-height: 5rem; resize: vertical; }
.signature-field input:focus, .signature-field select:focus, .signature-field textarea:focus { border-color: #277fa8; outline: 3px solid rgba(39, 127, 168, 0.14); }
.signature-field > small { color: #71858f; font-size: 0.62rem; font-weight: 550; line-height: 1.55; }
.signature-colour-control { display: grid; grid-template-columns: 3.3rem minmax(0, 1fr); gap: 0.55rem; align-items: center; min-height: 2.85rem; border: 1px solid #c7d6dd; border-radius: 0.25rem; padding: 0.35rem; background: #fff; }
.signature-colour-control input { width: 3.3rem; height: 2.15rem; border: 0; padding: 0; background: transparent; cursor: pointer; }
.signature-colour-control output { color: #4d6572; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 0.7rem; }
.signature-form__error { min-height: 1.35rem; margin: 0 0 0.55rem; color: #99432f; font-size: 0.7rem; font-weight: 750; }
.signature-form__note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-bottom: 0.8rem; border-left: 3px solid #259678; padding: 0.75rem; background: #edf8f4; }
.signature-form__note i { color: #208568; }
.signature-form__note p { margin: 0; color: #46665f; font-size: 0.68rem; line-height: 1.55; }

.signature-preview-panel { position: sticky; top: 7.5rem; overflow: hidden; }
.signature-preview-panel__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; padding: 1.25rem; }
.signature-preview-panel__heading h2 { margin-bottom: 0; font-size: clamp(1.25rem, 2vw, 1.6rem); }
.signature-preview-panel__heading > span { display: inline-flex; gap: 0.35rem; align-items: center; flex: 0 0 auto; padding: 0.35rem 0.5rem; color: #176d52; background: #e5f5ef; font-size: 0.58rem; font-weight: 850; }
.signature-preview-panel__heading > span.is-adjusted { color: #815415; background: #fff1d8; }
.signature-preview-stage { border-block: 1px solid rgba(5, 52, 78, 0.1); padding: 1.2rem; background: #eef3f6; }
.signature-preview-stage__message { display: grid; gap: 0.45rem; margin-bottom: 1rem; }
.signature-preview-stage__message span { display: block; height: 0.35rem; border-radius: 999px; background: #d9e2e7; }
.signature-preview-stage__message span:nth-child(1) { width: 88%; }
.signature-preview-stage__message span:nth-child(2) { width: 71%; }
.signature-preview-stage__message span:nth-child(3) { width: 48%; }
.signature-preview-stage iframe { display: block; width: 100%; height: 18rem; border: 1px solid #d2dde3; padding: 0; background: #fff; box-shadow: 0 0.6rem 1.5rem rgba(11, 48, 68, 0.06); }
.signature-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; padding: 1rem 1.25rem 0; }
.signature-actions .tool-action { justify-content: center; }
.signature-actions .tool-action:disabled { opacity: 0.48; cursor: not-allowed; }
.signature-status { min-height: 2.8rem; margin: 0; padding: 0.75rem 1.25rem; color: #5d737e; font-size: 0.66rem; line-height: 1.5; }
.signature-source { border-top: 1px solid rgba(5, 52, 78, 0.08); }
.signature-source summary { display: flex; gap: 0.5rem; align-items: center; justify-content: space-between; padding: 0.8rem 1.25rem; color: #245d77; cursor: pointer; font-size: 0.68rem; font-weight: 800; list-style: none; }
.signature-source summary::-webkit-details-marker { display: none; }
.signature-source[open] summary i { transform: rotate(180deg); }
.signature-source label { display: block; margin: 0 1.25rem 0.4rem; color: #526a76; font-size: 0.62rem; font-weight: 800; }
.signature-source textarea { display: block; width: calc(100% - 2.5rem); margin: 0 1.25rem 1.25rem; border: 1px solid #cad7de; padding: 0.7rem; color: #315164; background: #f7fafb; font: 0.61rem/1.55 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; resize: vertical; }

.signature-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.signature-method h2 { color: #f2fbff; }
.signature-method p { color: rgba(226, 239, 248, 0.72); line-height: 1.7; }
.signature-method__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(101, 220, 245, 0.14); }
.signature-method__grid article { position: relative; min-height: 11rem; padding: 1rem; background: rgba(5, 18, 30, 0.5); }
.signature-method__grid article > span { position: absolute; top: 0.75rem; right: 0.8rem; color: #51788b; font-size: 0.57rem; font-weight: 900; }
.signature-method__grid article > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; margin-bottom: 0.85rem; color: #0b2334; background: #63d8ef; }
.signature-method__grid h3 { color: #edf9fd; font-size: 0.8rem; }
.signature-method__grid p { margin: 0; color: #9fb7c3; font-size: 0.68rem; line-height: 1.55; }
.signature-method__source { grid-column: 2; margin: 0; font-size: 0.68rem; }
.signature-method__source a { color: #66d9f0; font-weight: 800; }

.signature-install__layout { display: grid; grid-template-columns: minmax(15rem, 0.78fr) minmax(0, 1.22fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.signature-install h2, .signature-faq h2 { color: #0a2d45; }
.signature-install p { color: #586f7c; line-height: 1.7; }
.signature-install__links { display: grid; gap: 0.65rem; }
.signature-install__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.8rem; align-items: center; border: 1px solid rgba(5, 52, 78, 0.1); padding: 0.95rem 1rem; color: #1b526d; background: #fff; box-shadow: 0 0.6rem 1.6rem rgba(6, 38, 57, 0.045); }
.signature-install__links > a > i:first-child { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; color: #fff; background: #207aa2; }
.signature-install__links span { display: grid; gap: 0.15rem; }
.signature-install__links strong { font-size: 0.76rem; }
.signature-install__links small { color: #70838d; font-size: 0.62rem; }
.signature-install__links > a > i:last-child { color: #3683a4; font-size: 0.7rem; }

.signature-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.signature-faq__items { display: grid; gap: 0.55rem; }
.signature-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.signature-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.signature-faq__items summary::-webkit-details-marker { display: none; }
.signature-faq__items summary i { color: #2b7ea9; transition: transform 160ms ease; }
.signature-faq__items details[open] summary i { transform: rotate(45deg); }
.signature-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .signature-hero .ats-page-hero__grid, .signature-builder, .signature-method__layout, .signature-install__layout, .signature-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .signature-preview-panel { position: static; }
  .signature-method__source { grid-column: 1; }
}
@media (max-width: 575.98px) {
  .signature-field-grid, .signature-method__grid, .signature-actions { grid-template-columns: minmax(0, 1fr); }
  .signature-preview-panel__heading { flex-direction: column; }
  .signature-preview-stage iframe { height: 21rem; }
  .signature-console__footer { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .signature-faq__items summary i { transition: none; }
}

/* QR code generator */
.qr-hero { overflow: hidden; }
.qr-console { min-height: 22rem; }
.qr-console__canvas { display: grid; min-height: 18.5rem; place-items: center; padding: 1.15rem; background: radial-gradient(circle at 50% 42%, rgba(80, 212, 237, 0.09), transparent 55%); }
.qr-console__code { position: relative; width: min(13.2rem, 72%); aspect-ratio: 1; border: 0.85rem solid #fff; background-color: #fff; background-image: linear-gradient(90deg, transparent 50%, #0b2131 50%), linear-gradient(transparent 50%, #0b2131 50%); background-position: 0 0, 0 0; background-size: 1rem 1rem; box-shadow: 0 1.2rem 2.6rem rgba(0, 0, 0, 0.22); }
.qr-console__code::after { position: absolute; inset: 42% 12% 10% 38%; content: ""; background: #fff; clip-path: polygon(0 0, 22% 0, 22% 18%, 44% 18%, 44% 0, 100% 0, 100% 22%, 78% 22%, 78% 44%, 100% 44%, 100% 100%, 65% 100%, 65% 77%, 42% 77%, 42% 100%, 0 100%, 0 60%, 20% 60%, 20% 38%, 0 38%); }
.qr-console__finder { position: absolute; z-index: 1; width: 3.4rem; height: 3.4rem; border: 0.58rem solid #0b2131; background: #fff; box-shadow: inset 0 0 0 0.5rem #fff, inset 0 0 0 1rem #0b2131; }
.qr-console__finder--one { top: 0.15rem; left: 0.15rem; }
.qr-console__finder--two { top: 0.15rem; right: 0.15rem; }
.qr-console__finder--three { bottom: 0.15rem; left: 0.15rem; }
.qr-console__route { display: inline-flex; gap: 0.45rem; align-items: center; margin-top: -0.25rem; border: 1px solid rgba(99, 217, 240, 0.17); padding: 0.48rem 0.7rem; color: #b5cbd5; background: #0a2033; font: 700 0.64rem/1.2 "Manrope", system-ui, sans-serif; }
.qr-console__route i { color: #63d8ef; }
.qr-console__footer { display: flex; gap: 0.8rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.85rem 1.2rem; color: #8faab7; font-size: 0.58rem; font-weight: 800; letter-spacing: 0.055em; text-transform: uppercase; }
.qr-console__footer span { display: inline-flex; gap: 0.4rem; align-items: center; }
.qr-console__footer i { color: #62d8ef; }

.qr-builder-section { scroll-margin-top: 7.5rem; background: radial-gradient(circle at 92% 5%, rgba(35, 128, 169, 0.08), transparent 29rem), #f5f9fb; }
.qr-builder { display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(21rem, 0.96fr); gap: clamp(1.25rem, 4vw, 3rem); align-items: start; }
.qr-form, .qr-preview-panel { border: 1px solid rgba(5, 52, 78, 0.1); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.qr-form { min-width: 0; padding: clamp(1.1rem, 3vw, 2rem); }
.qr-form__heading { margin-bottom: 1.3rem; }
.qr-form__heading h2, .qr-preview-panel h2, .qr-safety h2, .qr-faq h2 { color: #0a2d45; }
.qr-form__heading > p:last-child { margin-bottom: 0; color: #586f7c; line-height: 1.7; }

.qr-type-picker { min-width: 0; margin: 0 0 1rem; border: 0; padding: 0; }
.qr-type-picker > legend { margin-bottom: 0.6rem; color: #163e55; font-size: 0.69rem; font-weight: 850; }
.qr-type-picker__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.55rem; }
.qr-type-picker label { position: relative; min-width: 0; margin: 0; cursor: pointer; }
.qr-type-picker input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.qr-type-picker label > span { display: grid; min-height: 6.4rem; align-content: center; justify-items: start; border: 1px solid #ccd9df; padding: 0.7rem; color: #4b6674; background: #fbfdfe; transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.qr-type-picker label > span i { margin-bottom: 0.6rem; color: #237da4; font-size: 1.1rem; }
.qr-type-picker label > span b { color: #183f55; font-size: 0.69rem; }
.qr-type-picker label > span small { margin-top: 0.18rem; color: #728690; font-size: 0.56rem; line-height: 1.35; }
.qr-type-picker input:checked + span { border-color: #1879a3; color: #11455f; background: #edf8fc; box-shadow: inset 0 -3px 0 #1879a3, 0 0.6rem 1.25rem rgba(12, 87, 120, 0.08); transform: translateY(-1px); }
.qr-type-picker input:focus-visible + span { outline: 3px solid rgba(32, 129, 171, 0.22); outline-offset: 2px; }

.qr-content-panel, .qr-output-options { min-width: 0; margin: 0 0 1rem; border: 1px solid rgba(5, 52, 78, 0.1); padding: 1rem; background: #fbfdfe; }
.qr-content-panel[hidden] { display: none; }
.qr-content-panel legend, .qr-output-options legend { display: flex; gap: 0.55rem; align-items: center; width: auto; margin: 0 0 0.8rem; padding: 0 0.25rem; color: #163e55; font-size: 0.76rem; font-weight: 850; }
.qr-content-panel legend span, .qr-output-options legend span { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; color: #fff; background: #1d789f; font-size: 0.58rem; }
.qr-content-panel__hint { margin: -0.15rem 0 0.85rem; color: #687c87; font-size: 0.67rem; line-height: 1.55; }
.qr-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.qr-field { display: grid; gap: 0.4rem; min-width: 0; margin: 0; color: #1c4358; font-size: 0.68rem; font-weight: 800; }
.qr-field--wide { grid-column: 1 / -1; }
.qr-field > span:first-child { display: flex; gap: 0.35rem; align-items: baseline; }
.qr-field > span b { color: #a54c35; }
.qr-field > span small { color: #768993; font-size: 0.58rem; font-weight: 650; }
.qr-field input, .qr-field select, .qr-field textarea { width: 100%; min-height: 2.85rem; border: 1px solid #c7d6dd; border-radius: 0.25rem; padding: 0.68rem 0.75rem; color: #173d53; background: #fff; font: 650 0.75rem/1.45 "Manrope", system-ui, sans-serif; }
.qr-field textarea { min-height: 8rem; resize: vertical; }
.qr-field input:focus, .qr-field select:focus, .qr-field textarea:focus { border-color: #277fa8; outline: 3px solid rgba(39, 127, 168, 0.14); }
.qr-field > small { color: #71858f; font-size: 0.61rem; font-weight: 550; line-height: 1.55; }
.qr-field.is-disabled { opacity: 0.58; }
.qr-password-control { display: grid; grid-template-columns: minmax(0, 1fr) 2.85rem; align-items: stretch; }
.qr-password-control input { border-radius: 0.25rem 0 0 0.25rem; }
.qr-password-control button { display: grid; min-width: 2.85rem; border: 1px solid #c7d6dd; border-left: 0; border-radius: 0 0.25rem 0.25rem 0; place-items: center; color: #225f7c; background: #f1f6f8; cursor: pointer; }
.qr-password-control button:hover { background: #e6f1f5; }
.qr-password-control button:focus-visible { position: relative; outline: 3px solid rgba(39, 127, 168, 0.2); outline-offset: 1px; }
.qr-password-control button:disabled { color: #82949d; background: #edf2f4; cursor: not-allowed; }
.qr-check { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin: 0; cursor: pointer; }
.qr-check input { width: 1.05rem; min-height: 1.05rem; margin-top: 0.12rem; accent-color: #1879a3; }
.qr-check > span { display: grid; gap: 0.18rem; }
.qr-check b { color: #1e455a; font-size: 0.67rem; }
.qr-check small { color: #71858f; font-size: 0.6rem; font-weight: 550; line-height: 1.5; }
.qr-form__error { min-height: 1.35rem; margin: 0 0 0.55rem; color: #99432f; font-size: 0.7rem; font-weight: 750; }
.qr-form__note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-bottom: 0.8rem; border-left: 3px solid #259678; padding: 0.75rem; background: #edf8f4; }
.qr-form__note i { color: #208568; }
.qr-form__note p { margin: 0; color: #46665f; font-size: 0.68rem; line-height: 1.55; }

.qr-preview-panel { position: sticky; top: 7.5rem; overflow: hidden; }
.qr-preview-panel__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; padding: 1.25rem; }
.qr-preview-panel__heading h2 { margin-bottom: 0; font-size: clamp(1.25rem, 2vw, 1.6rem); }
.qr-preview-panel__heading > span { display: inline-flex; gap: 0.35rem; align-items: center; flex: 0 0 auto; padding: 0.35rem 0.5rem; color: #176d52; background: #e5f5ef; font-size: 0.58rem; font-weight: 850; }
.qr-preview-stage { border-block: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1rem, 4vw, 2rem); background: linear-gradient(135deg, #e8f0f3, #f8fbfc); }
.qr-preview-stage__frame { display: grid; width: min(19rem, 100%); min-height: 15rem; aspect-ratio: 1; place-items: center; margin-inline: auto; border: 1px solid #d4e0e5; padding: 0.75rem; color: #64808e; background: #fff; box-shadow: 0 1rem 2.4rem rgba(8, 41, 59, 0.09); }
.qr-preview-stage__frame svg { display: block; width: 100%; height: 100%; }
.qr-preview-stage__frame > i { color: #8aa0aa; font-size: 3.5rem; }
.qr-preview-stage__frame > span { max-width: 12rem; color: #6c808a; font-size: 0.66rem; line-height: 1.55; text-align: center; }
.qr-preview-stage__caption { display: flex; gap: 0.6rem; align-items: center; justify-content: space-between; width: min(19rem, 100%); margin: 0.75rem auto 0; color: #617783; font-size: 0.6rem; }
.qr-preview-stage__caption b { color: #1b526d; font-size: 0.66rem; }
.qr-payload { padding: 1rem 1.25rem 0; }
.qr-payload__heading { display: flex; gap: 0.8rem; align-items: center; justify-content: space-between; margin-bottom: 0.5rem; }
.qr-payload__heading label { margin: 0; color: #274e62; font-size: 0.64rem; font-weight: 850; }
.qr-payload__heading button { display: inline-flex; gap: 0.35rem; align-items: center; border: 0; padding: 0.25rem 0; color: #197398; background: transparent; font-size: 0.59rem; font-weight: 800; cursor: pointer; }
.qr-payload__heading button:hover { color: #0c5779; text-decoration: underline; }
.qr-payload__heading button:focus-visible { outline: 3px solid rgba(39, 127, 168, 0.18); outline-offset: 3px; }
.qr-payload output { display: block; max-height: 10rem; overflow: auto; border: 1px solid #d2dee4; border-left: 3px solid #2180a8; padding: 0.75rem; color: #254c60; background: #f5f9fa; font: 0.61rem/1.55 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; white-space: pre-wrap; }
.qr-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; padding: 1rem 1.25rem 0; }
.qr-actions .tool-action { justify-content: center; }
.qr-actions .tool-action:disabled { opacity: 0.48; cursor: not-allowed; }
.qr-status { min-height: 3.15rem; margin: 0; padding: 0.75rem 1.25rem 1.1rem; color: #5d737e; font-size: 0.66rem; line-height: 1.55; }

.qr-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.qr-method h2 { color: #f2fbff; }
.qr-method p { color: rgba(226, 239, 248, 0.72); line-height: 1.7; }
.qr-method__source { font-size: 0.66rem; }
.qr-method__source a { color: #66d9f0; font-weight: 800; }
.qr-method__diagram { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(101, 220, 245, 0.14); }
.qr-method__diagram article { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; min-height: 9.5rem; align-content: start; padding: 1rem; background: rgba(5, 18, 30, 0.5); }
.qr-method__diagram article > span { position: absolute; top: 0.7rem; right: 0.75rem; color: #53798b; font-size: 0.56rem; font-weight: 900; }
.qr-method__diagram article > i { display: grid; width: 2.15rem; height: 2.15rem; place-items: center; color: #0b2334; background: #63d8ef; }
.qr-method__diagram h3 { margin: 0 1.6rem 0.35rem 0; color: #edf9fd; font-size: 0.76rem; }
.qr-method__diagram p { margin: 0; color: #9fb7c3; font-size: 0.66rem; line-height: 1.55; }

.qr-safety__layout { display: grid; grid-template-columns: minmax(15rem, 0.72fr) minmax(0, 1.28fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.qr-safety__board { display: grid; gap: 0.65rem; }
.qr-safety__board article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: start; border: 1px solid rgba(5, 52, 78, 0.1); padding: 1rem; background: #fff; box-shadow: 0 0.6rem 1.6rem rgba(6, 38, 57, 0.045); }
.qr-safety__board article > i { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; color: #fff; background: #207aa2; }
.qr-safety__board h3 { margin: 0 0 0.3rem; color: #173f56; font-size: 0.78rem; }
.qr-safety__board p { margin: 0; color: #5d737e; font-size: 0.69rem; line-height: 1.6; }

.qr-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.qr-faq__items { display: grid; gap: 0.55rem; }
.qr-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.qr-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.qr-faq__items summary::-webkit-details-marker { display: none; }
.qr-faq__items summary i { color: #2b7ea9; transition: transform 160ms ease; }
.qr-faq__items details[open] summary i { transform: rotate(45deg); }
.qr-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .qr-hero .ats-page-hero__grid, .qr-builder, .qr-method__layout, .qr-safety__layout, .qr-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .qr-preview-panel { position: static; }
}
@media (max-width: 767.98px) {
  .qr-type-picker__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .qr-field-grid, .qr-method__diagram, .qr-actions { grid-template-columns: minmax(0, 1fr); }
  .qr-preview-panel__heading, .qr-payload__heading, .qr-console__footer { align-items: flex-start; flex-direction: column; }
  .qr-preview-stage__frame { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .qr-type-picker label > span, .qr-faq__items summary i { transition: none; }
}
@media print {
  body:has([data-qr-code-generator]) > header,
  body:has([data-qr-code-generator]) > footer,
  body:has([data-qr-code-generator]) .qr-hero,
  body:has([data-qr-code-generator]) .qr-form,
  body:has([data-qr-code-generator]) .qr-method,
  body:has([data-qr-code-generator]) .qr-safety,
  body:has([data-qr-code-generator]) .qr-faq,
  body:has([data-qr-code-generator]) .qr-actions,
  body:has([data-qr-code-generator]) .scroll-top,
  body:has([data-qr-code-generator]) #alert-container { display: none !important; }
  body:has([data-qr-code-generator]) .qr-builder-section { padding: 0 !important; background: #fff !important; }
  body:has([data-qr-code-generator]) .qr-builder { display: block; }
  body:has([data-qr-code-generator]) .qr-preview-panel { width: 100%; border: 0; box-shadow: none; }
  body:has([data-qr-code-generator]) .qr-preview-stage { border: 0; background: #fff; }
  body:has([data-qr-code-generator]) .qr-preview-stage__frame { width: 11cm; border: 0; padding: 0; box-shadow: none; }
  body:has([data-qr-code-generator]) .qr-payload output { max-height: none; color: #111; background: #fff; }
  body:has([data-qr-code-generator]) .qr-status { display: none; }
}

/* Page speed snapshot */
.speed-hero { overflow: hidden; }
.speed-console { min-height: 21rem; }
.speed-console__body { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; min-height: 16rem; align-content: center; padding: 1.25rem; background: radial-gradient(circle at 50% 40%, rgba(64, 192, 222, 0.1), transparent 55%); }
.speed-console__device { z-index: 1; display: grid; gap: 0.45rem; align-content: start; border: 1px solid rgba(100, 216, 240, 0.17); padding: 0.9rem; background: rgba(5, 24, 39, 0.82); box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.16); }
.speed-console__device--mobile { transform: translateY(0.8rem); }
.speed-console__device > span { display: flex; gap: 0.35rem; align-items: center; color: #7ea5b6; font-size: 0.54rem; font-weight: 850; letter-spacing: 0.08em; }
.speed-console__device > span i { color: #61d7ef; }
.speed-console__device strong { color: #f1fbff; font-size: 2.5rem; line-height: 1; }
.speed-console__device > div { height: 0.3rem; overflow: hidden; background: #17374a; }
.speed-console__device > div i { display: block; width: 74%; height: 100%; background: #e8b155; }
.speed-console__device--desktop > div i { width: 93%; background: #4ed0a2; }
.speed-console__device small { color: #a3bdc9; font: 0.58rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.speed-console__trace { position: absolute; right: 1.25rem; bottom: 0.9rem; left: 1.25rem; display: flex; gap: 0.28rem; align-items: end; height: 2.4rem; opacity: 0.22; }
.speed-console__trace i { flex: 1; background: #66d9f0; }
.speed-console__trace i:nth-child(1) { height: 35%; }
.speed-console__trace i:nth-child(2) { height: 58%; }
.speed-console__trace i:nth-child(3) { height: 42%; }
.speed-console__trace i:nth-child(4) { height: 75%; }
.speed-console__trace i:nth-child(5) { height: 62%; }
.speed-console__trace i:nth-child(6) { height: 88%; }
.speed-console__footer { display: flex; gap: 0.8rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7596a6; font-size: 0.52rem; font-weight: 850; letter-spacing: 0.07em; }

.speed-check-section { scroll-margin-top: 7rem; background: radial-gradient(circle at 92% 10%, rgba(39, 132, 171, 0.08), transparent 30rem), #f5f9fb; }
.speed-check-layout { display: grid; grid-template-columns: minmax(0, 0.83fr) minmax(22rem, 1.17fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.speed-form-panel, .speed-preview, .speed-result-intro { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.speed-form-panel h2, .speed-preview h2, .speed-result-intro h2 { color: #0a2d45; }
.speed-form-panel > p:not(.premium-eyebrow), .speed-preview > p, .speed-result-intro p { color: #586f7c; line-height: 1.7; }
.speed-input-wrap { position: relative; }
.speed-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #247ba3; transform: translateY(-50%); }
.speed-input-wrap input { padding-left: 2.35rem !important; }
.speed-form button:disabled { opacity: 0.72; cursor: wait; }
.speed-submit-spinner { animation: speed-spin 900ms linear infinite; }
@keyframes speed-spin { to { transform: rotate(360deg); } }
.speed-service-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.speed-service-note i { color: #277fa8; }
.speed-service-note p { margin: 0; color: #5b727e; font-size: 0.69rem; line-height: 1.55; }
.speed-service-note a { color: #176f96; font-weight: 800; }

.speed-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #edf6f8); }
.speed-preview__bars { display: grid; gap: 0.7rem; margin-bottom: 1.5rem; }
.speed-preview__bars > span { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr) 3.5rem; gap: 0.7rem; align-items: center; }
.speed-preview__bars b, .speed-preview__bars strong { color: #496b7b; font-size: 0.55rem; letter-spacing: 0.07em; }
.speed-preview__bars strong { color: #78909b; text-align: right; }
.speed-preview__bars i { display: block; height: 0.45rem; overflow: hidden; background: #d9e6eb; }
.speed-preview__bars em { display: block; width: 68%; height: 100%; background: #e0a84a; }
.speed-preview__bars > span:nth-child(2) em { width: 91%; background: #299d78; }
.speed-preview__bars > span:nth-child(3) em { width: 82%; background: #2d84aa; }

.speed-result-intro { display: grid; gap: 1rem; align-content: center; border-top: 4px solid #297fa6; }
.speed-result-intro h2 { margin-bottom: 0.45rem; font-size: clamp(1.15rem, 2.2vw, 1.6rem); overflow-wrap: anywhere; }
.speed-result-intro p { margin: 0; font-size: 0.73rem; }
.speed-result-intro__legend { display: flex; flex-wrap: wrap; gap: 0.45rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 1rem; }
.speed-result-intro__legend span { display: inline-flex; gap: 0.35rem; align-items: center; color: #58707c; font-size: 0.58rem; font-weight: 750; }
.speed-result-intro__legend i { display: block; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: #289a75; }
.speed-result-intro__legend .is-review i { background: #d8942b; }
.speed-result-intro__legend .is-poor i { background: #bc6048; }

.speed-results { background: #fff; }
.speed-results__header { max-width: 54rem; }
.speed-device-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; }
.speed-device { min-width: 0; overflow: hidden; border: 1px solid rgba(5, 52, 78, 0.11); border-top: 4px solid #d8942b; background: #fff; box-shadow: 0 0.9rem 2.5rem rgba(5, 38, 57, 0.065); }
.speed-device--good { border-top-color: #279873; }
.speed-device--poor, .speed-device--error { border-top-color: #b85c45; }
.speed-device__header { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; padding: 1.2rem; }
.speed-device__type { display: inline-flex; gap: 0.42rem; align-items: center; color: #276985; font-size: 0.61rem; font-weight: 850; letter-spacing: 0.06em; text-transform: uppercase; }
.speed-device__header h3 { margin: 0.45rem 0 0.15rem; color: #133b52; font-size: 1rem; }
.speed-device__header small { color: #71858f; font-size: 0.59rem; }
.speed-score { display: grid; grid-template-columns: auto auto; align-items: end; width: 5.2rem; height: 5.2rem; justify-content: center; border: 1px solid #dae6ea; border-radius: 50%; padding-bottom: 1.25rem; background: radial-gradient(circle, #fff 54%, #edf4f6 55%, #edf4f6 63%, #fff 64%); }
.speed-score strong { color: #143d54; font: 850 1.75rem/1 "Manrope", sans-serif; }
.speed-score span { color: #728691; font-size: 0.54rem; }
.speed-score-progress { display: block; width: calc(100% - 2.4rem); height: 0.35rem; margin: 0 1.2rem 1.2rem; border: 0; background: #e3ebee; }
.speed-score-progress::-webkit-progress-bar { background: #e3ebee; }
.speed-score-progress::-webkit-progress-value { background: #d8942b; }
.speed-score-progress::-moz-progress-bar { background: #d8942b; }
.speed-score-progress--good::-webkit-progress-value { background: #279873; }
.speed-score-progress--good::-moz-progress-bar { background: #279873; }
.speed-score-progress--poor::-webkit-progress-value { background: #b85c45; }
.speed-score-progress--poor::-moz-progress-bar { background: #b85c45; }

.speed-metric-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1px; margin: 0 1.2rem 1.2rem; background: rgba(5, 52, 78, 0.1); }
.speed-metric { display: grid; gap: 0.28rem; min-width: 0; padding: 0.7rem 0.55rem; background: #f8fbfc; }
.speed-metric > span { display: flex; gap: 0.32rem; align-items: center; }
.speed-metric abbr, .speed-field__metric abbr { color: #59717e; font-size: 0.56rem; font-weight: 900; letter-spacing: 0.06em; text-decoration: none; }
.speed-metric > span i { width: 0.42rem; height: 0.42rem; border-radius: 50%; background: #d8942b; }
.speed-metric--good > span i { background: #279873; }
.speed-metric--poor > span i { background: #b85c45; }
.speed-metric--neutral > span i { background: #79919d; }
.speed-metric strong { color: #163f56; font: 780 0.84rem/1.25 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; }
.speed-metric small { color: #71858f; font-size: 0.53rem; }
.speed-empty-copy { grid-column: 1 / -1; margin: 0; padding: 1rem; color: #617783; background: #f8fbfc; font-size: 0.68rem; }

.speed-field { margin: 0 1.2rem 1.2rem; border: 1px solid #cfdee4; background: #f4f9fa; }
.speed-field__heading { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.85rem; }
.speed-field__heading span { color: #3180a2; font-size: 0.51rem; font-weight: 900; letter-spacing: 0.1em; }
.speed-field__heading h4 { margin: 0.2rem 0 0; color: #183f55; font-size: 0.77rem; }
.speed-field__heading > i { color: #2a84aa; font-size: 1.25rem; }
.speed-field > p { margin: 0; border-top: 1px solid #d9e5e9; padding: 0.7rem 0.85rem 0; color: #627984; font-size: 0.61rem; line-height: 1.55; }
.speed-field__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 0.7rem; background: #d5e3e8; }
.speed-field__metric { display: grid; gap: 0.25rem; padding: 0.75rem 0.85rem; background: #fff; }
.speed-field__metric strong { color: #173e54; font: 800 0.92rem/1.3 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.speed-field__metric span { color: #16805f; font-size: 0.55rem; font-weight: 850; }
.speed-field__metric--review span { color: #946218; }
.speed-field__metric--poor span { color: #984630; }
.speed-field__empty, .speed-priorities__empty { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; border-top: 1px solid #d9e5e9; padding: 0.85rem; }
.speed-field__empty i { color: #5d91a6; }
.speed-field__empty p, .speed-priorities__empty p { margin: 0; color: #607680; font-size: 0.65rem; line-height: 1.55; }
.speed-field__empty strong { color: #244c60; }

.speed-priorities { border-top: 1px solid rgba(5, 52, 78, 0.09); padding: 1.2rem; }
.speed-priorities__heading > span { color: #2f7fa1; font-size: 0.53rem; font-weight: 900; letter-spacing: 0.09em; text-transform: uppercase; }
.speed-priorities__heading h4 { margin: 0.25rem 0 0.9rem; color: #173f56; font-size: 0.83rem; }
.speed-priorities ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.speed-priorities li { display: grid; grid-template-columns: 1.7rem minmax(0, 1fr); gap: 0.65rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding: 0.8rem 0; }
.speed-priorities li:first-child { border-top: 0; padding-top: 0; }
.speed-priorities li > span { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; color: #fff; background: #277fa7; font-size: 0.54rem; font-weight: 900; }
.speed-priorities li > div { min-width: 0; }
.speed-priorities li strong { color: #183f55; font-size: 0.7rem; }
.speed-priorities li small { display: block; margin-top: 0.2rem; color: #8c5c18; font-size: 0.57rem; font-weight: 800; }
.speed-priorities li p { margin: 0.3rem 0 0; color: #637984; font-size: 0.62rem; line-height: 1.55; }
.speed-priorities__note { margin: 0.2rem 0 0; border-left: 2px solid #d49a43; padding-left: 0.6rem; color: #6b7f89; font-size: 0.59rem; line-height: 1.55; }
.speed-priorities__empty { border: 1px solid #d5e4e8; background: #f4faf7; }
.speed-priorities__empty i { color: #24916d; }
.speed-device__failure { display: grid; justify-items: start; min-height: 22rem; align-content: center; padding: 2rem; }
.speed-device__failure > i { display: grid; width: 3rem; height: 3rem; place-items: center; margin-bottom: 1rem; color: #fff; background: #b85c45; font-size: 1.2rem; }
.speed-device__failure > span { color: #9b4b37; font-size: 0.58rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.speed-device__failure h3 { margin: 0.35rem 0; color: #173f56; font-size: 1.1rem; }
.speed-device__failure p { margin: 0; color: #617783; font-size: 0.72rem; line-height: 1.65; }
.speed-help-strip { display: flex; gap: 1rem; align-items: center; justify-content: space-between; margin-top: 1rem; border: 1px solid rgba(5, 52, 78, 0.1); border-left: 4px solid #2682a8; padding: 1rem; background: #f4f9fa; }
.speed-help-strip > div:first-child { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; }
.speed-help-strip > div:first-child > i { color: #2581a7; }
.speed-help-strip p { max-width: 42rem; margin: 0; color: #5a717d; font-size: 0.68rem; line-height: 1.6; }
.speed-help-strip p strong { color: #20495d; }
.speed-help-strip__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 0.45rem; align-items: center; }
.speed-help-strip__actions a, .speed-help-strip__actions button { display: inline-flex; gap: 0.35rem; align-items: center; min-height: 2.4rem; border: 1px solid #b9d0da; padding: 0.55rem 0.7rem; color: #176e94; background: #fff; font: 800 0.61rem/1.2 "Manrope", sans-serif; cursor: pointer; }
.speed-help-strip__actions a:hover, .speed-help-strip__actions button:hover { border-color: #2a82a8; color: #0c5779; }
.speed-help-strip__actions a:focus-visible, .speed-help-strip__actions button:focus-visible { outline: 3px solid rgba(39, 127, 168, 0.2); outline-offset: 2px; }

.speed-meaning__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.speed-meaning h2 { color: #f0faff; }
.speed-meaning p { color: rgba(223, 238, 247, 0.72); line-height: 1.7; }
.speed-evidence-map { display: grid; gap: 1px; background: rgba(102, 218, 241, 0.14); }
.speed-evidence-map article { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: start; padding: 1rem; background: rgba(4, 18, 30, 0.52); }
.speed-evidence-map article > span { position: absolute; top: 0.65rem; right: 0.7rem; color: #50788a; font-size: 0.54rem; font-weight: 900; }
.speed-evidence-map article > i { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; color: #0a2334; background: #62d8ee; }
.speed-evidence-map h3 { margin: 0 2rem 0.3rem 0; color: #edf9fd; font-size: 0.78rem; }
.speed-evidence-map p { margin: 0; color: #a3bac5; font-size: 0.67rem; line-height: 1.55; }

.speed-thresholds__layout { display: grid; grid-template-columns: minmax(15rem, 0.75fr) minmax(0, 1.25fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.speed-thresholds h2, .speed-faq h2 { color: #0b2d44; }
.speed-thresholds p { color: #586f7c; line-height: 1.7; }
.speed-thresholds a { color: #176f96; font-size: 0.7rem; font-weight: 800; }
.speed-threshold-track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(5, 52, 78, 0.11); }
.speed-threshold-track > div { display: grid; gap: 0.45rem; padding: 1rem; background: #f7fafb; }
.speed-threshold-track span { color: #287b9f; font-size: 0.6rem; font-weight: 900; letter-spacing: 0.07em; }
.speed-threshold-track strong { color: #143c53; font: 800 1rem/1.2 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.speed-threshold-track i { display: block; height: 0.34rem; background: #dce8eb; }
.speed-threshold-track em { display: block; width: 75%; height: 100%; background: #279873; }
.speed-threshold-track small { color: #6d828d; font-size: 0.58rem; }

.speed-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.speed-faq__items { display: grid; gap: 0.55rem; }
.speed-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.speed-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.speed-faq__items summary::-webkit-details-marker { display: none; }
.speed-faq__items summary i { color: #2b7ea9; transition: transform 160ms ease; }
.speed-faq__items details[open] summary i { transform: rotate(45deg); }
.speed-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 1099.98px) {
  .speed-metric-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .speed-hero .ats-page-hero__grid, .speed-check-layout, .speed-meaning__layout, .speed-thresholds__layout, .speed-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .speed-help-strip { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 767.98px) {
  .speed-device-grid { grid-template-columns: minmax(0, 1fr); }
  .speed-metric-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .speed-console__body, .speed-metric-grid, .speed-field__metrics, .speed-threshold-track { grid-template-columns: minmax(0, 1fr); }
  .speed-console__device--mobile { transform: none; }
  .speed-console__trace { display: none; }
  .speed-console__footer, .speed-device__header { align-items: flex-start; flex-direction: column; }
  .speed-metric { grid-template-columns: 3rem minmax(0, 1fr) auto; align-items: center; }
  .speed-preview__bars > span { grid-template-columns: 4rem minmax(0, 1fr); }
  .speed-preview__bars strong { grid-column: 2; text-align: left; }
  .speed-help-strip__actions { display: grid; width: 100%; }
  .speed-help-strip__actions a, .speed-help-strip__actions button { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .speed-submit-spinner { animation: none; }
  .speed-faq__items summary i { transition: none; }
}
@media print {
  .speed-hero, .speed-form-panel, .speed-meaning, .speed-thresholds, .speed-faq, .speed-help-strip { display: none !important; }
  .speed-check-section, .speed-results { background: #fff !important; }
  .speed-check-layout, .speed-device-grid { display: block; }
  .speed-result-intro, .speed-device { margin-bottom: 1rem; break-inside: avoid; box-shadow: none; }
}

/* Security headers check */
.headers-hero { overflow: hidden; }
.headers-console { min-height: 21rem; }
.headers-console__body { position: relative; display: grid; gap: 1rem; min-height: 16rem; align-content: center; padding: 1.25rem; background: radial-gradient(circle at 18% 28%, rgba(73, 210, 193, 0.1), transparent 14rem); }
.headers-console__request { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.65rem; align-items: center; border: 1px solid rgba(102, 218, 241, 0.16); padding: 0.75rem; background: rgba(4, 21, 34, 0.78); }
.headers-console__request span, .headers-console__request small { color: #53d7ba; font: 850 0.55rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.headers-console__request strong { min-width: 0; overflow: hidden; color: #d8ecf4; font: 650 0.62rem/1.3 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; text-overflow: ellipsis; white-space: nowrap; }
.headers-console__rail { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: rgba(94, 214, 236, 0.13); }
.headers-console__rail > span { display: grid; min-width: 0; min-height: 6.2rem; align-content: center; justify-items: center; padding: 0.65rem 0.35rem; background: rgba(4, 22, 35, 0.87); }
.headers-console__rail i { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; margin-bottom: 0.5rem; color: #062338; background: #53d7ba; font-size: 0.75rem; }
.headers-console__rail .is-review i { background: #e4ae55; }
.headers-console__rail .is-context i { color: #dff6fc; background: #397a93; }
.headers-console__rail b { color: #d9edf5; font-size: 0.52rem; letter-spacing: 0.08em; }
.headers-console__rail small { margin-top: 0.2rem; color: #6f97a8; font-size: 0.48rem; }
.headers-console__signal { display: flex; gap: 0.35rem; height: 1.6rem; align-items: end; opacity: 0.35; }
.headers-console__signal i { flex: 1; height: 30%; background: #58d6be; }
.headers-console__signal i:nth-child(2) { height: 65%; }
.headers-console__signal i:nth-child(3) { height: 42%; }
.headers-console__signal i:nth-child(4) { height: 80%; }
.headers-console__signal i:nth-child(5) { height: 55%; }
.headers-console__footer { display: flex; gap: 0.75rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7699aa; font-size: 0.52rem; font-weight: 850; letter-spacing: 0.07em; }

.headers-check-section { scroll-margin-top: 7rem; background: radial-gradient(circle at 90% 14%, rgba(32, 138, 133, 0.08), transparent 30rem), #f5f9fb; }
.headers-check-layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(22rem, 1.16fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.headers-form-panel, .headers-preview, .headers-result-intro { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.headers-form-panel h2, .headers-preview h2, .headers-result-intro h2 { color: #0a2d45; }
.headers-form-panel > p:not(.premium-eyebrow), .headers-preview > p, .headers-result-intro p { color: #586f7c; line-height: 1.7; }
.headers-input-wrap { position: relative; }
.headers-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #198979; transform: translateY(-50%); }
.headers-input-wrap input { padding-left: 2.35rem !important; }
.headers-form button:disabled { opacity: 0.72; cursor: wait; }
.headers-submit-spinner { animation: headers-spin 900ms linear infinite; }
@keyframes headers-spin { to { transform: rotate(360deg); } }
.headers-service-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.headers-service-note i { color: #1d8878; }
.headers-service-note p { margin: 0; color: #5b727e; font-size: 0.69rem; line-height: 1.55; }

.headers-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #edf7f5); }
.headers-preview__stack { display: grid; gap: 0.55rem; margin-bottom: 1.5rem; }
.headers-preview__stack span { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.8rem; align-items: center; border-left: 3px solid #2a9782; padding: 0.7rem 0.8rem; background: #fff; box-shadow: 0 0.6rem 1.5rem rgba(8, 46, 61, 0.05); }
.headers-preview__stack span:nth-child(2) { margin-left: 1.4rem; border-left-color: #d39a3f; }
.headers-preview__stack span:nth-child(3) { margin-left: 2.8rem; border-left-color: #568aa0; }
.headers-preview__stack b { min-width: 0; color: #3a6071; font: 750 0.58rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; }
.headers-preview__stack i { width: 0.55rem; height: 0.55rem; border-radius: 50%; background: #29977f; }
.headers-preview__stack i.is-review { background: #d69a3a; }
.headers-preview__stack i.is-context { background: #578ca2; }

.headers-result-intro { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.25rem; align-items: center; border-top: 4px solid #218f7d; }
.headers-result-intro h2 { margin-bottom: 0.4rem; font-size: clamp(1rem, 2vw, 1.45rem); overflow-wrap: anywhere; }
.headers-result-intro p { margin: 0; font-size: 0.68rem; }
.headers-result-intro__counts { display: grid; grid-template-columns: repeat(4, minmax(3.5rem, 1fr)); gap: 1px; background: #dbe6e9; }
.headers-result-intro__counts span { display: grid; gap: 0.18rem; min-width: 3.7rem; justify-items: center; padding: 0.7rem 0.55rem; background: #f8fbfb; }
.headers-result-intro__counts strong { color: #238c76; font: 800 1.15rem/1 "Manrope", sans-serif; }
.headers-result-intro__counts .is-review strong { color: #a76b14; }
.headers-result-intro__counts .is-missing strong { color: #a74d3a; }
.headers-result-intro__counts .is-context strong { color: #4e7d91; }
.headers-result-intro__counts small { color: #687e88; font-size: 0.5rem; }

.headers-results { background: #fff; }
.headers-results-layout { display: grid; grid-template-columns: minmax(14rem, 0.55fr) minmax(0, 1.45fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.headers-summary { position: sticky; top: 7rem; border-top: 4px solid #218f7d; padding: 1.3rem; background: #f3f8f8; }
.headers-summary h2 { color: #0c3147; font-size: clamp(1.25rem, 2.4vw, 1.8rem); }
.headers-summary > p:not(.premium-eyebrow) { color: #5a717c; font-size: 0.7rem; line-height: 1.65; }
.headers-summary dl { display: grid; gap: 0; margin: 1.2rem 0; }
.headers-summary dl > div { border-top: 1px solid #d7e3e5; padding: 0.65rem 0; }
.headers-summary dt { color: #758891; font-size: 0.52rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.headers-summary dd { margin: 0.2rem 0 0; color: #1b4659; font: 700 0.63rem/1.5 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; }
.headers-legend { display: flex; flex-wrap: wrap; gap: 0.55rem 0.85rem; }
.headers-legend span { display: inline-flex; gap: 0.35rem; align-items: center; color: #607680; font-size: 0.55rem; font-weight: 750; }
.headers-legend i { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #278f78; }
.headers-legend .is-review i { background: #d39739; }
.headers-legend .is-missing i { background: #b75b46; }
.headers-legend .is-context i { background: #5c8da1; }

.headers-ledger { display: grid; gap: 0.8rem; }
.headers-check-card { overflow: hidden; border: 1px solid rgba(5, 52, 78, 0.11); border-left: 4px solid #54889d; padding: 1rem 1.1rem; background: #fff; box-shadow: 0 0.65rem 1.8rem rgba(5, 38, 57, 0.05); }
.headers-check-card--present { border-left-color: #258f77; }
.headers-check-card--review { border-left-color: #d19538; }
.headers-check-card--missing { border-left-color: #b65a45; }
.headers-check-card header { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; align-items: center; }
.headers-check-card__icon { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #578ba0; }
.headers-check-card--present .headers-check-card__icon { background: #268f78; }
.headers-check-card--review .headers-check-card__icon { background: #cb8e30; }
.headers-check-card--missing .headers-check-card__icon { background: #b35a45; }
.headers-check-card header small { color: #5c899a; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.09em; text-transform: uppercase; }
.headers-check-card--present header small { color: #1f806b; }
.headers-check-card--review header small { color: #9b6411; }
.headers-check-card--missing header small { color: #9c4937; }
.headers-check-card h3 { margin: 0.15rem 0 0; color: #143d52; font-size: 0.84rem; }
.headers-check-card > p { margin: 0.75rem 0 0; color: #596f7b; font-size: 0.68rem; line-height: 1.6; }
.headers-check-card pre { max-width: 100%; margin: 0.8rem 0 0; overflow-x: auto; border: 1px solid #d9e4e7; padding: 0.7rem; color: #cbe8ef; background: #0b2738; white-space: pre-wrap; overflow-wrap: anywhere; }
.headers-check-card code { color: inherit; font: 600 0.58rem/1.55 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.headers-check-card__action { margin-top: 0.8rem; border-left: 2px solid #368fac; padding: 0.1rem 0 0.1rem 0.7rem; }
.headers-check-card__action strong { color: #2b7793; font-size: 0.52rem; font-weight: 900; letter-spacing: 0.07em; text-transform: uppercase; }
.headers-check-card__action p { margin: 0.25rem 0 0; color: #536b77; font-size: 0.65rem; line-height: 1.55; }
.headers-check-card__note { display: flex; gap: 0.45rem; align-items: flex-start; color: #71838c !important; font-size: 0.59rem !important; }
.headers-check-card__note i { flex: 0 0 auto; color: #4d8ba3; }

.headers-priorities { background: #f5f9fa; }
.headers-priorities__layout { display: grid; grid-template-columns: minmax(15rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.headers-priorities h2, .headers-limits h2, .headers-faq h2 { color: #0b2f45; }
.headers-priorities__layout > div > p:not(.premium-eyebrow), .headers-limits p { color: #586f7c; line-height: 1.7; }
.headers-priority-list { display: grid; gap: 1px; margin: 0; padding: 0; background: #d6e3e5; list-style: none; }
.headers-priority-list li { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.8rem; padding: 1rem; background: #fff; }
.headers-priority-list li > span { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; color: #fff; background: #b45a45; font-size: 0.56rem; font-weight: 900; }
.headers-priority-list strong, .headers-priority-empty strong { color: #163f53; font-size: 0.74rem; }
.headers-priority-list p, .headers-priority-empty p { margin: 0.25rem 0 0; color: #607681; font-size: 0.65rem; line-height: 1.55; }
.headers-priority-empty { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; border: 1px solid #cfe1dc; padding: 1.1rem; background: #fff; }
.headers-priority-empty > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #278f78; }
.headers-help-strip { display: flex; gap: 1rem; align-items: center; justify-content: space-between; margin-top: 1.25rem; border: 1px solid #d2e1e4; border-left: 4px solid #218f7d; padding: 1rem; background: #fff; }
.headers-help-strip > div:first-child { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; }
.headers-help-strip > div:first-child > i { color: #218f7d; }
.headers-help-strip p { max-width: 42rem; margin: 0; color: #5a717d; font-size: 0.68rem; line-height: 1.6; }
.headers-help-strip p strong { color: #20495d; }
.headers-help-strip__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 0.45rem; }
.headers-help-strip__actions a, .headers-help-strip__actions button { display: inline-flex; gap: 0.35rem; align-items: center; min-height: 2.4rem; border: 1px solid #b9d0da; padding: 0.55rem 0.7rem; color: #176e82; background: #fff; font: 800 0.61rem/1.2 "Manrope", sans-serif; cursor: pointer; }
.headers-help-strip__actions a:hover, .headers-help-strip__actions button:hover { border-color: #258e79; color: #126756; }
.headers-help-strip__actions a:focus-visible, .headers-help-strip__actions button:focus-visible { outline: 3px solid rgba(34, 143, 124, 0.22); outline-offset: 2px; }

.headers-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.headers-method h2 { color: #f0faff; }
.headers-method p { color: rgba(223, 238, 247, 0.72); line-height: 1.7; }
.headers-method__map { display: grid; gap: 1px; background: rgba(102, 218, 241, 0.14); }
.headers-method__map article { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: start; padding: 1rem; background: rgba(4, 18, 30, 0.52); }
.headers-method__map article > span { position: absolute; top: 0.65rem; right: 0.7rem; color: #50788a; font-size: 0.54rem; font-weight: 900; }
.headers-method__map article > i { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; color: #082536; background: #58d5bd; }
.headers-method__map h3 { margin: 0 2rem 0.3rem 0; color: #edf9fd; font-size: 0.78rem; }
.headers-method__map p { margin: 0; color: #a3bac5; font-size: 0.67rem; line-height: 1.55; }

.headers-limits__layout { display: grid; grid-template-columns: minmax(15rem, 0.8fr) minmax(0, 1.2fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.headers-source-panel { display: grid; gap: 1px; background: #d6e2e5; }
.headers-source-panel > span { padding: 0.75rem 1rem; color: #5d7681; background: #edf4f5; font-size: 0.54rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.headers-source-panel a { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: center; padding: 0.85rem 1rem; color: #175d78; background: #fff; font-size: 0.7rem; font-weight: 800; }
.headers-source-panel a:hover { color: #147464; background: #f4faf8; }
.headers-source-panel a:focus-visible { outline: 3px solid rgba(34, 143, 124, 0.22); outline-offset: -3px; }

.headers-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.headers-faq__items { display: grid; gap: 0.55rem; }
.headers-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.headers-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.headers-faq__items summary::-webkit-details-marker { display: none; }
.headers-faq__items summary i { color: #248d79; transition: transform 160ms ease; }
.headers-faq__items details[open] summary i { transform: rotate(45deg); }
.headers-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .headers-hero .ats-page-hero__grid, .headers-check-layout, .headers-results-layout, .headers-priorities__layout, .headers-method__layout, .headers-limits__layout, .headers-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .headers-summary { position: static; }
  .headers-help-strip { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 767.98px) {
  .headers-result-intro { grid-template-columns: minmax(0, 1fr); }
  .headers-result-intro__counts { width: 100%; }
}
@media (max-width: 575.98px) {
  .headers-console__rail, .headers-result-intro__counts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .headers-console__request { grid-template-columns: auto minmax(0, 1fr); }
  .headers-console__request small { grid-column: 2; }
  .headers-console__footer { align-items: flex-start; flex-direction: column; }
  .headers-preview__stack span:nth-child(2), .headers-preview__stack span:nth-child(3) { margin-left: 0; }
  .headers-help-strip__actions { display: grid; width: 100%; }
  .headers-help-strip__actions a, .headers-help-strip__actions button { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .headers-submit-spinner { animation: none; }
  .headers-faq__items summary i { transition: none; }
}
@media print {
  .headers-hero, .headers-form-panel, .headers-method, .headers-limits, .headers-faq, .headers-help-strip { display: none !important; }
  .headers-check-section, .headers-results, .headers-priorities { background: #fff !important; }
  .headers-check-layout, .headers-results-layout, .headers-priorities__layout { display: block; }
  .headers-result-intro, .headers-summary, .headers-check-card, .headers-priority-list li { margin-bottom: 0.65rem; break-inside: avoid; box-shadow: none; }
  .headers-summary { border: 1px solid #cad8dc; }
  .headers-check-card pre { color: #111; background: #fff; }
}

/* Accessibility first look */
.a11y-hero { overflow: hidden; }
.a11y-console { min-height: 21rem; }
.a11y-console__body { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(7rem, 0.75fr); gap: 0.9rem; min-height: 16rem; align-items: center; padding: 1.2rem; background: radial-gradient(circle at 78% 38%, rgba(237, 176, 81, 0.1), transparent 13rem); }
.a11y-console__outline { display: grid; gap: 0.55rem; }
.a11y-console__outline > span { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 0.6rem; align-items: center; border-left: 3px solid #55d5bd; padding: 0.65rem; background: rgba(5, 25, 38, 0.82); }
.a11y-console__outline > span:nth-child(2) { margin-left: 1rem; border-left-color: #dc765b; }
.a11y-console__outline > span:nth-child(3) { margin-left: 2rem; border-left-color: #e3ad53; }
.a11y-console__outline i { display: grid; width: 2rem; height: 2rem; place-items: center; color: #092739; background: #58d7bf; font: 900 0.52rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.a11y-console__outline .is-issue i { background: #df765b; }
.a11y-console__outline .is-review i { background: #e4ad52; }
.a11y-console__outline b { min-width: 0; color: #e8f6fa; font-size: 0.6rem; }
.a11y-console__outline small { grid-column: 2; margin-top: -0.5rem; color: #7094a4; font-size: 0.5rem; }
.a11y-console__person { display: grid; gap: 0.8rem; justify-items: center; }
.a11y-console__person > i { display: grid; width: 4.5rem; height: 4.5rem; place-items: center; border: 1px solid rgba(87, 215, 190, 0.35); border-radius: 50%; color: #57d7be; background: rgba(27, 91, 91, 0.2); font-size: 2rem; }
.a11y-console__person span { display: grid; width: 100%; gap: 0.25rem; }
.a11y-console__person b { color: #8aabb8; font-size: 0.48rem; text-align: center; }
.a11y-console__person em { display: block; height: 0.25rem; background: #57d6bd; }
.a11y-console__person span:last-child em { width: 72%; justify-self: center; background: #e2ad56; }
.a11y-console__footer { display: flex; gap: 0.75rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7699aa; font-size: 0.52rem; font-weight: 850; letter-spacing: 0.07em; }

.a11y-check-section { scroll-margin-top: 7rem; background: radial-gradient(circle at 92% 8%, rgba(221, 163, 68, 0.08), transparent 29rem), #f6f9fa; }
.a11y-check-layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(22rem, 1.16fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.a11y-form-panel, .a11y-preview, .a11y-result-intro { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.a11y-form-panel h2, .a11y-preview h2, .a11y-result-intro h2 { color: #0a2d45; }
.a11y-form-panel > p:not(.premium-eyebrow), .a11y-preview > p, .a11y-result-intro p { color: #586f7c; line-height: 1.7; }
.a11y-input-wrap { position: relative; }
.a11y-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #8e651e; transform: translateY(-50%); }
.a11y-input-wrap input { padding-left: 2.35rem !important; }
.a11y-form button:disabled { opacity: 0.72; cursor: wait; }
.a11y-submit-spinner { animation: a11y-spin 900ms linear infinite; }
@keyframes a11y-spin { to { transform: rotate(360deg); } }
.a11y-service-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.a11y-service-note i { color: #a16d17; }
.a11y-service-note p { margin: 0; color: #5b727e; font-size: 0.69rem; line-height: 1.55; }
.a11y-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #faf5e9); }
.a11y-preview__route { display: grid; grid-template-columns: 1fr 2rem 1fr 2rem 1fr; gap: 0.45rem; align-items: center; margin-bottom: 1.5rem; }
.a11y-preview__route span { display: grid; min-height: 6rem; align-content: center; justify-items: center; border: 1px solid #d8e2e4; padding: 0.7rem 0.4rem; background: #fff; box-shadow: 0 0.5rem 1.3rem rgba(7, 40, 54, 0.05); }
.a11y-preview__route span i { margin-bottom: 0.4rem; color: #9a6b1b; font-size: 1.2rem; }
.a11y-preview__route span b { color: #315366; font-size: 0.58rem; text-align: center; }
.a11y-preview__route em { height: 1px; background: #d4a653; }
.a11y-result-intro { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.2rem; align-items: center; border-top: 4px solid #c58c31; }
.a11y-result-intro h2 { margin-bottom: 0.35rem; font-size: clamp(1rem, 2vw, 1.45rem); overflow-wrap: anywhere; }
.a11y-result-intro p { margin: 0; font-size: 0.67rem; }
.a11y-result-intro__notice { display: flex; gap: 0.4rem; align-items: flex-start; margin-top: 0.5rem !important; color: #8a601b !important; }
.a11y-result-intro__counts { display: grid; grid-template-columns: repeat(3, minmax(4rem, 1fr)); gap: 1px; background: #dbe5e8; }
.a11y-result-intro__counts span { display: grid; gap: 0.2rem; justify-items: center; padding: 0.8rem 0.6rem; background: #f9fbfb; }
.a11y-result-intro__counts strong { color: #aa503c; font: 800 1.2rem/1 "Manrope", sans-serif; }
.a11y-result-intro__counts .is-review strong { color: #a46c12; }
.a11y-result-intro__counts .is-observed strong { color: #1f876f; }
.a11y-result-intro__counts small { color: #667c87; font-size: 0.5rem; }

.a11y-results { background: #fff; }
.a11y-results-layout { display: grid; grid-template-columns: minmax(14rem, 0.52fr) minmax(0, 1.48fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.a11y-inventory { position: sticky; top: 7rem; border-top: 4px solid #c58c31; padding: 1.3rem; background: #f7f5ef; }
.a11y-inventory h2 { color: #0c3147; font-size: clamp(1.25rem, 2.4vw, 1.8rem); }
.a11y-inventory > p:not(.premium-eyebrow) { color: #5a717c; font-size: 0.7rem; line-height: 1.65; }
.a11y-inventory dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 1.1rem 0; background: #dcded9; }
.a11y-inventory dl > div { display: grid; gap: 0.25rem; padding: 0.75rem; background: #fff; }
.a11y-inventory dl > div:last-child { grid-column: 1 / -1; }
.a11y-inventory dt { color: #73858c; font-size: 0.5rem; font-weight: 850; letter-spacing: 0.06em; text-transform: uppercase; }
.a11y-inventory dd { margin: 0; color: #173f52; font: 800 1.1rem/1 "IBM Plex Mono", monospace; }
.a11y-legend { display: flex; flex-wrap: wrap; gap: 0.55rem 0.85rem; }
.a11y-legend span { display: inline-flex; gap: 0.35rem; align-items: center; color: #607680; font-size: 0.55rem; font-weight: 750; }
.a11y-legend i { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #ab503c; }
.a11y-legend .is-review i { background: #ca8c2d; }
.a11y-legend .is-observed i { background: #258c74; }
.a11y-findings { display: grid; gap: 0.8rem; }
.a11y-finding { border: 1px solid rgba(5, 52, 78, 0.11); border-left: 4px solid #278c74; padding: 1rem 1.1rem; background: #fff; box-shadow: 0 0.65rem 1.8rem rgba(5, 38, 57, 0.05); }
.a11y-finding--issue { border-left-color: #ad543f; }
.a11y-finding--review { border-left-color: #cd902f; }
.a11y-finding header { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(8rem, auto); gap: 0.75rem; align-items: center; }
.a11y-finding__icon { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #278b74; }
.a11y-finding--issue .a11y-finding__icon { background: #ad543f; }
.a11y-finding--review .a11y-finding__icon { background: #c98c2d; }
.a11y-finding header small { color: #258069; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.a11y-finding--issue header small { color: #9e4937; }
.a11y-finding--review header small { color: #966313; }
.a11y-finding h3 { margin: 0.12rem 0 0; color: #143d52; font-size: 0.83rem; }
.a11y-finding__wcag { color: #637b86; font-size: 0.52rem; font-weight: 700; line-height: 1.4; text-align: right; }
.a11y-finding > p { margin: 0.75rem 0 0; color: #596f7b; font-size: 0.68rem; line-height: 1.6; }
.a11y-evidence { display: grid; gap: 1px; margin: 0.75rem 0 0; padding: 0; background: #1a3948; list-style: none; }
.a11y-evidence li { min-width: 0; padding: 0.55rem 0.65rem; color: #d6edf2; background: #0b2737; overflow-wrap: anywhere; }
.a11y-evidence code { color: inherit; font: 600 0.57rem/1.45 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.a11y-finding__action { margin-top: 0.75rem; border-left: 2px solid #438ba4; padding-left: 0.7rem; }
.a11y-finding__action strong { color: #2d7792; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.07em; text-transform: uppercase; }
.a11y-finding__action p { margin: 0.2rem 0 0; color: #586f7b; font-size: 0.64rem; line-height: 1.55; }

.a11y-priorities { background: #f6f9fa; }
.a11y-priorities__layout { display: grid; grid-template-columns: minmax(15rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.a11y-priorities h2, .a11y-manual h2, .a11y-faq h2 { color: #0b2f45; }
.a11y-priorities__layout > div > p:not(.premium-eyebrow), .a11y-manual__heading p { color: #586f7c; line-height: 1.7; }
.a11y-priority-list { display: grid; gap: 1px; margin: 0; padding: 0; background: #d9e3e5; list-style: none; }
.a11y-priority-list li { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.8rem; padding: 1rem; background: #fff; }
.a11y-priority-list li > span { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; color: #fff; background: #ad543f; font-size: 0.56rem; font-weight: 900; }
.a11y-priority-list strong, .a11y-priority-empty strong { color: #163f53; font-size: 0.74rem; }
.a11y-priority-list p, .a11y-priority-empty p { margin: 0.25rem 0 0; color: #607681; font-size: 0.65rem; line-height: 1.55; }
.a11y-priority-empty { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; border: 1px solid #d6e1dd; padding: 1.1rem; background: #fff; }
.a11y-priority-empty > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #278c74; }

.a11y-manual { background: #fff; }
.a11y-manual__heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(13rem, 0.35fr); gap: 2rem; align-items: end; margin-bottom: 2rem; }
.a11y-manual__heading > div:first-child { max-width: 48rem; }
.a11y-manual__progress { display: grid; gap: 0.55rem; border: 1px solid #d4e0e3; padding: 0.8rem; background: #f7faf9; }
.a11y-manual__progress span { color: #496673; font-size: 0.64rem; font-weight: 750; }
.a11y-manual__progress strong { color: #9a6817; font: 850 1rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.a11y-manual__progress progress { width: 100%; height: 0.4rem; border: 0; background: #e0e8e9; }
.a11y-manual__progress progress::-webkit-progress-bar { background: #e0e8e9; }
.a11y-manual__progress progress::-webkit-progress-value { background: #c78b2d; }
.a11y-manual__progress progress::-moz-progress-bar { background: #c78b2d; }
.a11y-manual-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: #d5e1e3; }
.a11y-manual-card { position: relative; min-width: 0; min-height: 12rem; padding: 1rem; background: #f9fbfb; cursor: pointer; }
.a11y-manual-card input { position: absolute; top: 0.85rem; right: 0.85rem; width: 1.15rem; height: 1.15rem; accent-color: #217f6b; }
.a11y-manual-card > span { display: grid; align-content: start; height: 100%; }
.a11y-manual-card i { display: grid; width: 2.65rem; height: 2.65rem; place-items: center; margin-bottom: 1.5rem; color: #153e51; background: #f2dfb8; font-size: 1.05rem; }
.a11y-manual-card b { color: #153c51; font-size: 0.75rem; }
.a11y-manual-card small { margin-top: 0.45rem; color: #607681; font-size: 0.62rem; line-height: 1.55; }
.a11y-manual-card:has(input:checked) { background: #edf8f4; box-shadow: inset 0 0 0 2px #2a8d75; }
.a11y-manual-card:has(input:checked) i { color: #fff; background: #298b73; }
.a11y-manual-card:focus-within { z-index: 1; outline: 3px solid rgba(43, 119, 159, 0.28); outline-offset: 2px; }
.a11y-manual__actions { display: flex; flex-wrap: wrap; gap: 0.55rem; margin-top: 1rem; }
.a11y-manual__actions button, .a11y-manual__actions a { display: inline-flex; gap: 0.4rem; min-height: 2.6rem; align-items: center; border: 1px solid #bfd0d6; padding: 0.6rem 0.8rem; color: #17677f; background: #fff; font: 800 0.63rem/1.2 "Manrope", sans-serif; cursor: pointer; }
.a11y-manual__actions a { margin-left: auto; color: #fff; border-color: #1f806b; background: #1f806b; }
.a11y-manual__actions button:hover { border-color: #2a819f; color: #0f536a; }
.a11y-manual__actions a:hover { color: #fff; background: #176c5a; }
.a11y-manual__actions button:focus-visible, .a11y-manual__actions a:focus-visible { outline: 3px solid rgba(43, 119, 159, 0.25); outline-offset: 2px; }

.a11y-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.a11y-method h2 { color: #f0faff; }
.a11y-method p { color: rgba(223, 238, 247, 0.74); line-height: 1.7; }
.a11y-method a { color: #6fe0ca; font-size: 0.7rem; font-weight: 800; }
.a11y-method__path { display: grid; gap: 1px; background: rgba(102, 218, 241, 0.14); }
.a11y-method__path article { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: start; padding: 1rem; background: rgba(4, 18, 30, 0.52); }
.a11y-method__path article > span { position: absolute; top: 0.65rem; right: 0.7rem; color: #50788a; font-size: 0.54rem; font-weight: 900; }
.a11y-method__path article > i { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; color: #082536; background: #e5b25e; }
.a11y-method__path h3 { margin: 0 2rem 0.3rem 0; color: #edf9fd; font-size: 0.78rem; }
.a11y-method__path p { margin: 0; color: #a3bac5; font-size: 0.67rem; line-height: 1.55; }
.a11y-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.a11y-faq__items { display: grid; gap: 0.55rem; }
.a11y-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.a11y-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.a11y-faq__items summary::-webkit-details-marker { display: none; }
.a11y-faq__items summary i { color: #a26c14; transition: transform 160ms ease; }
.a11y-faq__items details[open] summary i { transform: rotate(45deg); }
.a11y-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 1099.98px) {
  .a11y-manual-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .a11y-hero .ats-page-hero__grid, .a11y-check-layout, .a11y-results-layout, .a11y-priorities__layout, .a11y-method__layout, .a11y-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .a11y-inventory { position: static; }
}
@media (max-width: 767.98px) {
  .a11y-result-intro, .a11y-manual__heading { grid-template-columns: minmax(0, 1fr); }
  .a11y-result-intro__counts { width: 100%; }
  .a11y-finding header { grid-template-columns: auto minmax(0, 1fr); }
  .a11y-finding__wcag { grid-column: 2; text-align: left; }
}
@media (max-width: 575.98px) {
  .a11y-console__body, .a11y-manual-grid { grid-template-columns: minmax(0, 1fr); }
  .a11y-console__person { grid-template-columns: auto 1fr 1fr; align-items: center; }
  .a11y-console__person > i { width: 3.2rem; height: 3.2rem; font-size: 1.4rem; }
  .a11y-console__outline > span:nth-child(2), .a11y-console__outline > span:nth-child(3) { margin-left: 0; }
  .a11y-console__footer { align-items: flex-start; flex-direction: column; }
  .a11y-preview__route { grid-template-columns: minmax(0, 1fr); }
  .a11y-preview__route em { width: 1px; height: 1rem; justify-self: center; }
  .a11y-result-intro__counts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .a11y-manual-card { min-height: 10rem; }
  .a11y-manual__actions { display: grid; }
  .a11y-manual__actions a { margin-left: 0; }
  .a11y-manual__actions button, .a11y-manual__actions a { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .a11y-submit-spinner { animation: none; }
  .a11y-faq__items summary i { transition: none; }
}
@media print {
  .a11y-hero, .a11y-form-panel, .a11y-method, .a11y-faq, .a11y-manual__actions { display: none !important; }
  .a11y-check-section, .a11y-results, .a11y-priorities, .a11y-manual { background: #fff !important; }
  .a11y-check-layout, .a11y-results-layout, .a11y-priorities__layout { display: block; }
  .a11y-result-intro, .a11y-inventory, .a11y-finding, .a11y-priority-list li, .a11y-manual-card { margin-bottom: 0.6rem; break-inside: avoid; box-shadow: none; }
  .a11y-inventory { border: 1px solid #cad8dc; }
  .a11y-manual-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* SEO essentials check */
.seo-hero { overflow: hidden; }
.seo-console { min-height: 21rem; }
.seo-console__body { display: grid; gap: 1rem; min-height: 16rem; align-content: center; padding: 1.25rem; background: radial-gradient(circle at 84% 12%, rgba(76, 216, 188, 0.11), transparent 11rem); }
.seo-console__head { display: grid; gap: 1px; background: rgba(100, 201, 215, 0.13); }
.seo-console__head span { display: grid; grid-template-columns: 4.3rem minmax(0, 1fr) auto; gap: 0.65rem; align-items: center; padding: 0.65rem 0.75rem; background: rgba(5, 28, 42, 0.85); }
.seo-console__head i { color: #69d8c3; font: 750 0.53rem/1.2 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.seo-console__head b { min-width: 0; color: #d9edf2; font-size: 0.58rem; overflow-wrap: anywhere; }
.seo-console__head em { color: #8ca8b5; font-size: 0.5rem; font-style: normal; font-weight: 800; }
.seo-console__head em.is-good { color: #62d6bd; }
.seo-console__head em.is-review { color: #e5b15e; }
.seo-console__serp { position: relative; border-left: 3px solid #d8a148; padding: 0.9rem 1rem; background: #f7fbfc; box-shadow: 0 0.8rem 1.9rem rgba(0, 13, 25, 0.18); }
.seo-console__serp small { color: #45616d; font-size: 0.52rem; }
.seo-console__serp strong { display: block; margin: 0.28rem 0; color: #2a59a1; font: 700 0.78rem/1.35 "Manrope", sans-serif; }
.seo-console__serp p { margin: 0; color: #4e626d; font-size: 0.55rem; line-height: 1.5; }
.seo-console__footer { display: flex; gap: 0.75rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7699aa; font-size: 0.52rem; font-weight: 850; letter-spacing: 0.07em; }

.seo-check-section { scroll-margin-top: 7rem; background: radial-gradient(circle at 90% 10%, rgba(47, 173, 147, 0.07), transparent 28rem), #f6f9fa; }
.seo-check-layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(22rem, 1.16fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.seo-form-panel, .seo-preview, .seo-result-intro { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.seo-form-panel h2, .seo-preview h2, .seo-result-intro h2 { color: #0a2d45; }
.seo-form-panel > p:not(.premium-eyebrow), .seo-preview > p, .seo-result-intro p { color: #586f7c; line-height: 1.7; }
.seo-input-wrap { position: relative; }
.seo-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #277f71; transform: translateY(-50%); }
.seo-input-wrap input { padding-left: 2.35rem !important; }
.seo-form button:disabled { opacity: 0.72; cursor: wait; }
.seo-submit-spinner { animation: seo-spin 900ms linear infinite; }
@keyframes seo-spin { to { transform: rotate(360deg); } }
.seo-service-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.seo-service-note i { color: #278273; }
.seo-service-note p { margin: 0; color: #5b727e; font-size: 0.69rem; line-height: 1.55; }
.seo-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #f2f8f6); }
.seo-preview__orbit { position: relative; min-height: 15rem; margin-bottom: 0.75rem; }
.seo-preview__orbit::before { position: absolute; inset: 2rem 18%; border: 1px dashed #a9cfca; border-radius: 50%; content: ""; }
.seo-preview__orbit > span { position: absolute; display: grid; width: 4.4rem; height: 4.4rem; place-items: center; border: 1px solid #d4e1e3; color: #1c556a; background: #fff; box-shadow: 0 0.65rem 1.5rem rgba(7, 40, 54, 0.08); }
.seo-preview__orbit > span i { font-size: 1.05rem; }
.seo-preview__orbit > span b { font-size: 0.52rem; }
.seo-preview__orbit .seo-preview__core { top: 50%; left: 50%; width: 5.2rem; height: 5.2rem; border: 0; border-radius: 50%; color: #fff; background: #0c3c51; transform: translate(-50%, -50%); }
.seo-preview__core i { font-size: 1.6rem !important; }
.seo-preview__orbit > span:nth-child(2) { top: 0; left: 7%; }
.seo-preview__orbit > span:nth-child(3) { top: 0; right: 7%; }
.seo-preview__orbit > span:nth-child(4) { bottom: 0; left: 7%; }
.seo-preview__orbit > span:nth-child(5) { right: 7%; bottom: 0; }
.seo-result-intro { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.2rem; align-self: start; align-items: center; border-top: 4px solid #2c8e7a; }
.seo-result-intro h2 { margin-bottom: 0.35rem; font-size: clamp(1rem, 2vw, 1.45rem); overflow-wrap: anywhere; }
.seo-result-intro p { margin: 0; font-size: 0.67rem; }
.seo-result-intro__notice { display: flex; gap: 0.4rem; align-items: flex-start; margin-top: 0.5rem !important; color: #865c18 !important; }
.seo-result-intro__counts { display: grid; grid-template-columns: repeat(3, minmax(4rem, 1fr)); gap: 1px; background: #dbe5e8; }
.seo-result-intro__counts span { display: grid; gap: 0.2rem; justify-items: center; padding: 0.8rem 0.6rem; background: #f9fbfb; }
.seo-result-intro__counts strong { color: #aa503c; font: 800 1.2rem/1 "Manrope", sans-serif; }
.seo-result-intro__counts .is-review strong { color: #a46c12; }
.seo-result-intro__counts .is-observed strong { color: #1f876f; }
.seo-result-intro__counts small { color: #667c87; font-size: 0.5rem; }

.seo-results { background: #fff; }
.seo-results-layout { display: grid; grid-template-columns: minmax(14rem, 0.5fr) minmax(0, 1.5fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.seo-result-guide { position: sticky; top: 7rem; border-top: 4px solid #2d8f7b; padding: 1.3rem; background: #f2f8f6; }
.seo-result-guide h2 { color: #0c3147; font-size: clamp(1.25rem, 2.4vw, 1.8rem); }
.seo-result-guide > p:not(.premium-eyebrow) { color: #5a717c; font-size: 0.7rem; line-height: 1.65; }
.seo-result-guide button { display: inline-flex; gap: 0.4rem; align-items: center; margin-top: 1rem; border: 1px solid #b9d2cf; padding: 0.62rem 0.75rem; color: #176a5b; background: #fff; font: 800 0.62rem/1 "Manrope", sans-serif; cursor: pointer; }
.seo-result-guide button:hover { border-color: #25836f; }
.seo-result-guide button:focus-visible { outline: 3px solid rgba(42, 130, 111, 0.25); outline-offset: 2px; }
.seo-legend { display: grid; gap: 0.5rem; margin-top: 1rem; }
.seo-legend span { display: inline-flex; gap: 0.4rem; align-items: center; color: #607680; font-size: 0.57rem; font-weight: 750; }
.seo-legend i { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #ad503c; }
.seo-legend .is-review i { background: #c78b2b; }
.seo-legend .is-observed i { background: #278b74; }
.seo-findings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.seo-finding { display: grid; align-content: start; border: 1px solid rgba(5, 52, 78, 0.11); border-top: 4px solid #278c74; padding: 1rem; background: #fff; box-shadow: 0 0.65rem 1.8rem rgba(5, 38, 57, 0.05); }
.seo-finding--issue { border-top-color: #ad543f; }
.seo-finding--review { border-top-color: #cd902f; }
.seo-finding header { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; align-items: center; }
.seo-finding__icon { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #278b74; }
.seo-finding--issue .seo-finding__icon { background: #ad543f; }
.seo-finding--review .seo-finding__icon { background: #c98c2d; }
.seo-finding header small { color: #258069; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.seo-finding--issue header small { color: #9e4937; }
.seo-finding--review header small { color: #966313; }
.seo-finding h3 { margin: 0.12rem 0 0; color: #143d52; font-size: 0.83rem; }
.seo-finding > p { margin: 0.75rem 0 0; color: #596f7b; font-size: 0.68rem; line-height: 1.6; }
.seo-evidence { display: grid; gap: 1px; margin: 0.75rem 0 0; padding: 0; background: #1a3948; list-style: none; }
.seo-evidence li { min-width: 0; padding: 0.55rem 0.65rem; color: #d6edf2; background: #0b2737; overflow-wrap: anywhere; }
.seo-evidence code { color: inherit; font: 600 0.56rem/1.45 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.seo-finding__action { margin-top: 0.75rem; border-left: 2px solid #438ba4; padding-left: 0.7rem; }
.seo-finding__action strong { color: #2d7792; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.07em; text-transform: uppercase; }
.seo-finding__action p { margin: 0.2rem 0 0; color: #586f7b; font-size: 0.64rem; line-height: 1.55; }
.seo-finding__source { display: flex; gap: 0.35rem; align-items: center; margin-top: 0.75rem !important; border-top: 1px solid #e2eaec; padding-top: 0.65rem; color: #748891 !important; font-size: 0.53rem !important; }

.seo-previews { background: radial-gradient(circle at 20% 90%, rgba(44, 142, 122, 0.08), transparent 28rem), #f5f8f8; }
.seo-previews__heading { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(15rem, 0.55fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.seo-previews__heading h2, .seo-priorities h2, .seo-faq h2 { color: #0b3046; }
.seo-previews__heading > p { margin: 0; color: #5c727e; font-size: 0.72rem; line-height: 1.7; }
.seo-preview-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); gap: 1.1rem; align-items: start; }
.seo-search-card, .seo-social-card { position: relative; min-width: 0; padding: clamp(1.1rem, 3vw, 1.7rem); background: #fff; box-shadow: 0 1rem 2.8rem rgba(8, 42, 58, 0.08); }
.seo-search-card { border-left: 4px solid #2b8d79; }
.seo-search-card__site { display: flex; gap: 0.65rem; align-items: center; }
.seo-search-card__site > span { display: grid; width: 2.15rem; height: 2.15rem; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #fff; background: #17495e; font-weight: 850; }
.seo-search-card__site div { display: grid; min-width: 0; }
.seo-search-card__site b { color: #243e4a; font-size: 0.65rem; }
.seo-search-card__site small { color: #59717c; font-size: 0.57rem; overflow-wrap: anywhere; }
.seo-search-card h3 { margin: 1rem 0 0.3rem; color: #2456a0; font-size: clamp(1rem, 2vw, 1.3rem); }
.seo-search-card > p { color: #435c68; font-size: 0.72rem; line-height: 1.65; }
.seo-social-card { border-top: 4px solid #d09a41; }
.seo-social-card__image { display: grid; min-height: 8.5rem; place-items: center; align-content: center; gap: 0.45rem; color: #23695d; background: linear-gradient(135deg, #dff3ed, #f8edd9); }
.seo-social-card__image.is-empty { color: #8b6729; background: #f0f3f3; }
.seo-social-card__image i { font-size: 1.7rem; }
.seo-social-card__image span { font-size: 0.6rem; font-weight: 800; }
.seo-social-card__copy { padding: 0.9rem 0 0.4rem; }
.seo-social-card__copy small { color: #70848d; font-size: 0.55rem; }
.seo-social-card__copy h3 { margin: 0.3rem 0; color: #1b3f51; font-size: 0.86rem; }
.seo-social-card__copy p { margin: 0; color: #566e79; font-size: 0.65rem; line-height: 1.55; }
.seo-preview-label { display: inline-flex; gap: 0.35rem; align-items: center; margin-top: 0.7rem; color: #7a8d94; font-size: 0.51rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }

.seo-priorities { background: #fff; }
.seo-priorities__layout { display: grid; grid-template-columns: minmax(15rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.seo-priorities__layout > div > p:not(.premium-eyebrow) { color: #586f7c; line-height: 1.7; }
.seo-priority-list { display: grid; gap: 1px; margin: 0; padding: 0; background: #d9e3e5; list-style: none; }
.seo-priority-list li { display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0.8rem; padding: 1rem; background: #f8fbfb; }
.seo-priority-list li > span { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; color: #fff; background: #ad543f; font-size: 0.56rem; font-weight: 900; }
.seo-priority-list strong, .seo-priority-empty strong { color: #163f53; font-size: 0.74rem; }
.seo-priority-list p, .seo-priority-empty p { margin: 0.25rem 0 0; color: #607681; font-size: 0.65rem; line-height: 1.55; }
.seo-priority-empty { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; border: 1px solid #d6e1dd; padding: 1.1rem; background: #f5faf8; }
.seo-priority-empty > i { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #278c74; }

.seo-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.seo-method h2 { color: #f0faff; }
.seo-method p { color: rgba(223, 238, 247, 0.74); line-height: 1.7; }
.seo-method__sources { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(102, 218, 241, 0.14); }
.seo-method__sources a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.7rem; align-items: center; min-height: 5rem; padding: 0.85rem; color: #e9f7fa; background: rgba(4, 18, 30, 0.55); }
.seo-method__sources a > i:first-child { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #082536; background: #67d4bd; }
.seo-method__sources a > i:last-child { color: #6d95a5; }
.seo-method__sources span { display: grid; }
.seo-method__sources b { font-size: 0.67rem; }
.seo-method__sources small { margin-top: 0.2rem; color: #91acb8; font-size: 0.54rem; }
.seo-method__sources a:hover { color: #fff; background: rgba(11, 46, 60, 0.78); }
.seo-method__sources a:focus-visible { outline: 3px solid #e3ad53; outline-offset: -3px; }
.seo-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.seo-faq__items { display: grid; gap: 0.55rem; }
.seo-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.seo-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.seo-faq__items summary::-webkit-details-marker { display: none; }
.seo-faq__items summary i { color: #288674; transition: transform 160ms ease; }
.seo-faq__items details[open] summary i { transform: rotate(45deg); }
.seo-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 1099.98px) {
  .seo-findings { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 991.98px) {
  .seo-hero .ats-page-hero__grid, .seo-check-layout, .seo-results-layout, .seo-priorities__layout, .seo-method__layout, .seo-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .seo-result-guide { position: static; }
}
@media (max-width: 767.98px) {
  .seo-result-intro, .seo-previews__heading, .seo-preview-grid { grid-template-columns: minmax(0, 1fr); }
  .seo-result-intro__counts { width: 100%; }
}
@media (max-width: 575.98px) {
  .seo-console__head span { grid-template-columns: 3.8rem minmax(0, 1fr); }
  .seo-console__head em { grid-column: 2; }
  .seo-console__footer { align-items: flex-start; flex-direction: column; }
  .seo-preview__orbit > span:nth-child(2), .seo-preview__orbit > span:nth-child(4) { left: 0; }
  .seo-preview__orbit > span:nth-child(3), .seo-preview__orbit > span:nth-child(5) { right: 0; }
  .seo-result-intro__counts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .seo-method__sources { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .seo-submit-spinner { animation: none; }
  .seo-faq__items summary i { transition: none; }
}
@media print {
  .seo-hero, .seo-form-panel, .seo-method, .seo-faq, .seo-result-guide button { display: none !important; }
  .seo-check-section, .seo-results, .seo-previews, .seo-priorities { background: #fff !important; }
  .seo-check-layout, .seo-results-layout, .seo-priorities__layout { display: block; }
  .seo-result-intro, .seo-result-guide, .seo-finding, .seo-search-card, .seo-social-card, .seo-priority-list li { margin-bottom: 0.65rem; break-inside: avoid; box-shadow: none; }
  .seo-result-guide { border: 1px solid #cad8dc; }
}

/* Broken link finder */
.linkfinder-hero { overflow: hidden; }
.linkfinder-map { min-height: 21rem; }
.linkfinder-map__canvas { position: relative; min-height: 16rem; background: radial-gradient(circle at 50% 50%, rgba(75, 208, 181, 0.11), transparent 9rem), linear-gradient(rgba(95, 187, 207, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(95, 187, 207, 0.035) 1px, transparent 1px); background-size: auto, 1.35rem 1.35rem, 1.35rem 1.35rem; }
.linkfinder-map__path { position: absolute; height: 1px; background: #4d9ca5; transform-origin: left center; }
.linkfinder-map__path::after { position: absolute; top: -0.2rem; right: 0; width: 0.4rem; height: 0.4rem; border-radius: 50%; background: #69d8c3; box-shadow: 0 0 0 0.25rem rgba(105, 216, 195, 0.1); content: ""; }
.linkfinder-map__path--one { top: 49%; left: 29%; width: 34%; transform: rotate(-24deg); }
.linkfinder-map__path--two { top: 52%; left: 29%; width: 34%; transform: rotate(21deg); }
.linkfinder-map__path--three { top: 35%; left: 60%; width: 20%; transform: rotate(61deg); }
.linkfinder-map__node { position: absolute; z-index: 1; display: grid; width: 4.6rem; height: 4.6rem; place-items: center; align-content: center; gap: 0.28rem; border: 1px solid rgba(105, 216, 195, 0.28); color: #c9e7ec; background: #0a2b3c; box-shadow: 0 0.75rem 1.8rem rgba(0, 8, 18, 0.25); }
.linkfinder-map__node i { font-size: 1.05rem; }
.linkfinder-map__node b { font-size: 0.5rem; }
.linkfinder-map__node--home { top: 50%; left: 20%; color: #062536; background: #69d8c3; transform: translate(-50%, -50%); }
.linkfinder-map__node--good { top: 13%; left: 62%; color: #64d8be; }
.linkfinder-map__node--move { top: 58%; left: 73%; color: #edc477; }
.linkfinder-map__node--broken { top: 12%; right: 5%; border-color: rgba(235, 133, 107, 0.35); color: #f09a82; }
.linkfinder-map__footer { display: flex; gap: 0.75rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7699aa; font-size: 0.52rem; font-weight: 850; letter-spacing: 0.07em; }

.linkfinder-check-section { scroll-margin-top: 7rem; background: radial-gradient(circle at 88% 12%, rgba(212, 156, 65, 0.08), transparent 25rem), #f6f9fa; }
.linkfinder-check-layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(22rem, 1.16fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.linkfinder-form-panel, .linkfinder-preview, .linkfinder-result-intro { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.linkfinder-form-panel h2, .linkfinder-preview h2, .linkfinder-result-intro h2 { color: #0a2d45; }
.linkfinder-form-panel > p:not(.premium-eyebrow), .linkfinder-preview > p, .linkfinder-result-intro p { color: #586f7c; line-height: 1.7; }
.linkfinder-input-wrap { position: relative; }
.linkfinder-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #277f71; transform: translateY(-50%); }
.linkfinder-input-wrap input { padding-left: 2.35rem !important; }
.linkfinder-form button:disabled { opacity: 0.72; cursor: wait; }
.linkfinder-spin { animation: linkfinder-spin 900ms linear infinite; }
@keyframes linkfinder-spin { to { transform: rotate(360deg); } }
.linkfinder-scope-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.linkfinder-scope-note i { color: #278273; }
.linkfinder-scope-note p { margin: 0; color: #5b727e; font-size: 0.69rem; line-height: 1.55; }
.linkfinder-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #f2f8f6); }
.linkfinder-preview__route { display: grid; grid-template-columns: auto minmax(2rem, 1fr) auto minmax(2rem, 1fr) auto; gap: 0.55rem; align-items: center; margin-bottom: 1.5rem; }
.linkfinder-preview__route i { display: grid; width: 3.2rem; height: 3.2rem; place-items: center; color: #fff; background: #17495e; font-size: 1rem; }
.linkfinder-preview__route i:nth-of-type(2) { color: #153e51; background: #f0cf91; }
.linkfinder-preview__route i:nth-of-type(3) { background: #278b74; }
.linkfinder-preview__route span { height: 1px; background: repeating-linear-gradient(90deg, #8db7b8 0 0.28rem, transparent 0.28rem 0.52rem); }
.linkfinder-result-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(10rem, 0.42fr); gap: 1.2rem; align-self: start; align-items: center; border-top: 4px solid #2c8e7a; }
.linkfinder-result-intro h2 { margin-bottom: 0.35rem; font-size: clamp(1rem, 2vw, 1.35rem); overflow-wrap: anywhere; }
.linkfinder-result-intro p { margin: 0; font-size: 0.67rem; }
.linkfinder-result-intro__notice { display: flex; gap: 0.4rem; align-items: flex-start; margin-top: 0.5rem !important; color: #815b20 !important; }
.linkfinder-result-intro__signal { display: grid; gap: 0.25rem; justify-items: start; border-left: 3px solid #2b8c75; padding: 0.8rem; background: #f1f8f6; }
.linkfinder-result-intro__signal.has-breaks { border-left-color: #ad543f; background: #fbf2ef; }
.linkfinder-result-intro__signal i { color: #278a73; font-size: 1.25rem; }
.linkfinder-result-intro__signal.has-breaks i { color: #ad543f; }
.linkfinder-result-intro__signal strong { color: #143d52; font-size: 0.72rem; }
.linkfinder-result-intro__signal small { color: #677d87; font-size: 0.54rem; }

.linkfinder-results { background: #fff; }
.linkfinder-results__header { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem; align-items: end; margin-bottom: 1.2rem; }
.linkfinder-results__header h2 { color: #0b3046; }
.linkfinder-results__header p:not(.premium-eyebrow) { margin-bottom: 0; color: #5b717d; line-height: 1.65; }
.linkfinder-filters { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-bottom: 1rem; }
.linkfinder-filters button { display: inline-flex; gap: 0.45rem; min-height: 2.45rem; align-items: center; border: 1px solid #c9d7da; padding: 0.55rem 0.7rem; color: #526b77; background: #fff; font: 800 0.61rem/1 "Manrope", sans-serif; cursor: pointer; }
.linkfinder-filters button span { display: grid; min-width: 1.35rem; height: 1.35rem; place-items: center; border-radius: 50%; color: #49616c; background: #eef3f4; font-size: 0.52rem; }
.linkfinder-filters button:hover { border-color: #2c8d78; color: #176653; }
.linkfinder-filters button.is-active { border-color: #1e806a; color: #fff; background: #1e806a; }
.linkfinder-filters button.is-active span { color: #115545; background: #d5f0e9; }
.linkfinder-filters button:focus-visible { outline: 3px solid rgba(38, 132, 111, 0.24); outline-offset: 2px; }
.linkfinder-list { display: grid; gap: 0.7rem; }
.linkfinder-item { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); border: 1px solid #dbe4e6; border-left: 4px solid #2b8b74; background: #fff; box-shadow: 0 0.6rem 1.5rem rgba(5, 38, 57, 0.045); }
.linkfinder-item[hidden] { display: none; }
.linkfinder-item--broken { border-left-color: #ad543f; }
.linkfinder-item--review { border-left-color: #c78928; }
.linkfinder-item--redirected { border-left-color: #397f9b; }
.linkfinder-item--skipped { border-left-color: #81929a; }
.linkfinder-item__status { display: grid; align-content: start; gap: 0.4rem; border-right: 1px solid #e3eaec; padding: 1rem; background: #f7faf9; }
.linkfinder-item__status span { display: inline-flex; gap: 0.4rem; align-items: center; color: #22775f; font-size: 0.62rem; font-weight: 900; text-transform: uppercase; }
.linkfinder-item--broken .linkfinder-item__status span { color: #a14834; }
.linkfinder-item--review .linkfinder-item__status span { color: #956214; }
.linkfinder-item--redirected .linkfinder-item__status span { color: #2d708b; }
.linkfinder-item--skipped .linkfinder-item__status span { color: #657980; }
.linkfinder-item__status small { color: #6b7f87; font: 700 0.55rem/1.2 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.linkfinder-item__body { min-width: 0; padding: 0.95rem 1rem; }
.linkfinder-item__body h3 { margin: 0; font-size: 0.75rem; }
.linkfinder-item__body h3 a { display: inline-flex; gap: 0.4rem; max-width: 100%; align-items: baseline; color: #16475d; overflow-wrap: anywhere; }
.linkfinder-item__body h3 a i { flex: 0 0 auto; font-size: 0.55rem; }
.linkfinder-item__body > p { margin: 0.35rem 0 0; color: #5b717b; font-size: 0.65rem; line-height: 1.55; }
.linkfinder-item__destination { color: #39778d !important; overflow-wrap: anywhere; }
.linkfinder-item details { margin-top: 0.7rem; border-top: 1px solid #e4ebed; padding-top: 0.6rem; }
.linkfinder-item summary { display: inline-flex; gap: 0.4rem; align-items: center; color: #326f82; cursor: pointer; font-size: 0.58rem; font-weight: 800; list-style: none; }
.linkfinder-item summary::-webkit-details-marker { display: none; }
.linkfinder-item summary i { transition: transform 160ms ease; }
.linkfinder-item details[open] summary i { transform: rotate(180deg); }
.linkfinder-item ul { display: grid; gap: 0.35rem; margin: 0.65rem 0 0; padding: 0; list-style: none; }
.linkfinder-item li { display: grid; gap: 0.16rem; border-left: 2px solid #b7ced1; padding-left: 0.6rem; }
.linkfinder-item li a { color: #315f72; font-size: 0.57rem; overflow-wrap: anywhere; }
.linkfinder-item li span { color: #74868e; font-size: 0.53rem; }
.linkfinder-empty { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: center; border: 1px solid #d4e1df; padding: 1.2rem; background: #f3f9f7; }
.linkfinder-empty > i { display: grid; width: 3rem; height: 3rem; place-items: center; color: #fff; background: #25836e; font-size: 1.2rem; }
.linkfinder-empty h3 { margin: 0; color: #153e51; font-size: 0.78rem; }
.linkfinder-empty p, .linkfinder-filter-empty { margin: 0.3rem 0 0; color: #607680; font-size: 0.65rem; }
.linkfinder-filter-empty { border: 1px dashed #c4d4d7; padding: 1rem; text-align: center; }

.linkfinder-coverage { background: radial-gradient(circle at 12% 80%, rgba(41, 138, 115, 0.07), transparent 23rem), #f5f8f8; }
.linkfinder-coverage__layout { display: grid; grid-template-columns: minmax(16rem, 0.7fr) minmax(0, 1.3fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.linkfinder-coverage h2 { color: #0b3046; }
.linkfinder-coverage__layout > div > p:not(.premium-eyebrow) { color: #586f7c; line-height: 1.7; }
.linkfinder-coverage__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 1.2rem; background: #d7e2e3; }
.linkfinder-coverage__stats div { display: grid; gap: 0.3rem; padding: 0.8rem; background: #fff; }
.linkfinder-coverage__stats dt { color: #6a7f88; font-size: 0.53rem; font-weight: 800; }
.linkfinder-coverage__stats dd { margin: 0; color: #1d7763; font: 850 1rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.linkfinder-pages { border-top: 4px solid #2b8c76; padding: 1rem; background: #fff; box-shadow: 0 0.8rem 2rem rgba(6, 38, 57, 0.06); }
.linkfinder-pages h3 { margin: 0 0 0.8rem; color: #153e51; font-size: 0.82rem; }
.linkfinder-pages ol { display: grid; gap: 1px; margin: 0; padding: 0; background: #dbe5e6; list-style: none; }
.linkfinder-pages li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; align-items: start; padding: 0.75rem; background: #f8fbfb; }
.linkfinder-pages li > span { display: grid; width: 1.9rem; height: 1.9rem; place-items: center; color: #fff; background: #17495e; font-size: 0.52rem; font-weight: 900; }
.linkfinder-pages li div { display: grid; min-width: 0; }
.linkfinder-pages strong { color: #244e60; font-size: 0.61rem; overflow-wrap: anywhere; }
.linkfinder-pages small { margin-top: 0.22rem; color: #6a7e87; font-size: 0.54rem; line-height: 1.45; }

.linkfinder-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.linkfinder-method h2 { color: #f0faff; }
.linkfinder-method > div > div > p, .linkfinder-method__layout > div:first-child > p:not(.premium-eyebrow) { color: rgba(223, 238, 247, 0.74); line-height: 1.7; }
.linkfinder-method__steps { display: grid; gap: 1px; background: rgba(102, 218, 241, 0.14); }
.linkfinder-method__steps article { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; padding: 1rem; background: rgba(4, 18, 30, 0.55); }
.linkfinder-method__steps article > span { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #082536; background: #67d4bd; font-size: 0.55rem; font-weight: 900; }
.linkfinder-method__steps h3 { margin: 0; color: #edf9fd; font-size: 0.75rem; }
.linkfinder-method__steps p { margin: 0.25rem 0 0; color: #98b1bc; font-size: 0.65rem; line-height: 1.55; }
.linkfinder-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.linkfinder-faq__items { display: grid; gap: 0.55rem; }
.linkfinder-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.linkfinder-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.linkfinder-faq__items summary::-webkit-details-marker { display: none; }
.linkfinder-faq__items summary i { color: #288674; transition: transform 160ms ease; }
.linkfinder-faq__items details[open] summary i { transform: rotate(45deg); }
.linkfinder-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .linkfinder-hero .ats-page-hero__grid, .linkfinder-check-layout, .linkfinder-coverage__layout, .linkfinder-method__layout, .linkfinder-faq__layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  .linkfinder-result-intro, .linkfinder-results__header { grid-template-columns: minmax(0, 1fr); }
  .linkfinder-results__header .premium-btn { justify-self: start; }
}
@media (max-width: 575.98px) {
  .linkfinder-map__node { width: 3.8rem; height: 3.8rem; }
  .linkfinder-map__node--home { left: 16%; }
  .linkfinder-map__node--broken { right: 1%; }
  .linkfinder-map__footer { align-items: flex-start; flex-direction: column; }
  .linkfinder-preview__route { grid-template-columns: auto 1fr auto; }
  .linkfinder-preview__route span:nth-of-type(2), .linkfinder-preview__route i:nth-of-type(3) { display: none; }
  .linkfinder-item { grid-template-columns: minmax(0, 1fr); }
  .linkfinder-item__status { grid-template-columns: minmax(0, 1fr) auto; border-right: 0; border-bottom: 1px solid #e3eaec; }
  .linkfinder-coverage__stats { grid-template-columns: minmax(0, 1fr); }
  .linkfinder-filters button { flex: 1 1 calc(50% - 0.45rem); justify-content: space-between; }
}
@media (prefers-reduced-motion: reduce) {
  .linkfinder-spin { animation: none; }
  .linkfinder-item summary i, .linkfinder-faq__items summary i { transition: none; }
}
@media print {
  .linkfinder-hero, .linkfinder-form-panel, .linkfinder-method, .linkfinder-faq, .linkfinder-filters, [data-linkfinder-print] { display: none !important; }
  .linkfinder-check-section, .linkfinder-results, .linkfinder-coverage { background: #fff !important; }
  .linkfinder-check-layout, .linkfinder-coverage__layout { display: block; }
  .linkfinder-result-intro, .linkfinder-item, .linkfinder-pages { margin-bottom: 0.6rem; break-inside: avoid; box-shadow: none; }
  .linkfinder-item[hidden] { display: grid; }
}

/* Robots.txt tester and builder */
.robots-hero { overflow: hidden; }
.robots-hero__actions { display: flex; flex-wrap: wrap; gap: 0.7rem; margin-top: 1.35rem; }
.robots-console { min-height: 20rem; }
.robots-console__body { display: grid; gap: 0.55rem; padding: 1.35rem; }
.robots-console__body > div:not(.robots-console__route) { position: relative; display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: 0.7rem; border-left: 2px solid #3a6e7b; padding: 0.8rem 0.9rem; background: rgba(5, 26, 40, 0.58); }
.robots-console__body span { color: #7e9eaa; font-size: 0.55rem; font-weight: 800; }
.robots-console__body strong { color: #e8f7fa; font: 700 0.68rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.robots-console__body > div.is-winning { border-color: #67d4bd; background: rgba(34, 119, 100, 0.19); }
.robots-console__body em { position: absolute; top: -0.4rem; right: 0.65rem; padding: 0.25rem 0.4rem; color: #082536; background: #67d4bd; font-size: 0.45rem; font-style: normal; font-weight: 900; letter-spacing: 0.05em; }
.robots-console__route { display: grid; grid-template-columns: auto minmax(2rem, 1fr) auto; gap: 0.7rem; align-items: center; padding: 0.8rem 1rem 0; }
.robots-console__route i { display: grid; width: 2.7rem; height: 2.7rem; place-items: center; color: #082536; background: #67d4bd; }
.robots-console__route i:last-child { color: #fff; background: #278b74; }
.robots-console__route span { height: 1px; background: repeating-linear-gradient(90deg, #55929a 0 0.35rem, transparent 0.35rem 0.65rem); }
.robots-console__footer { display: flex; gap: 0.7rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7699aa; font-size: 0.5rem; font-weight: 850; letter-spacing: 0.07em; }

.robots-test { scroll-margin-top: 7rem; background: radial-gradient(circle at 90% 10%, rgba(93, 180, 164, 0.09), transparent 24rem), #f6f9fa; }
.robots-test__layout { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(22rem, 1.15fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.robots-form-panel, .robots-preview, .robots-result { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.robots-form-panel h2, .robots-preview h2, .robots-result h2 { color: #0a2d45; }
.robots-form-panel > p:not(.premium-eyebrow), .robots-preview > p { color: #586f7c; line-height: 1.7; }
.robots-input-wrap { position: relative; }
.robots-input-wrap i { position: absolute; top: 50%; left: 0.8rem; z-index: 1; color: #278273; transform: translateY(-50%); }
.robots-input-wrap input { padding-left: 2.35rem !important; }
.robots-form button:disabled { opacity: 0.72; cursor: wait; }
.robots-spin { animation: robots-spin 900ms linear infinite; }
@keyframes robots-spin { to { transform: rotate(360deg); } }
.robots-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #f2f8f6); }
.robots-preview__path { display: grid; grid-template-columns: auto minmax(2rem, 1fr) auto minmax(2rem, 1fr) auto; gap: 0.5rem; align-items: center; margin-bottom: 1.4rem; }
.robots-preview__path i { display: grid; width: 3rem; height: 3rem; place-items: center; color: #fff; background: #17495e; }
.robots-preview__path i:nth-of-type(2) { color: #173f52; background: #f0cf91; }
.robots-preview__path i:last-child { background: #278b74; }
.robots-preview__path span { height: 1px; background: #8fb7ba; }
.robots-result { border-top: 4px solid #c29241; }
.robots-result--allowed { border-top-color: #278b74; }
.robots-result--disallowed { border-top-color: #b45a45; }
.robots-result__signal { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: center; }
.robots-result__signal > span { display: grid; width: 3.2rem; height: 3.2rem; place-items: center; color: #fff; background: #c29241; font-size: 1.25rem; }
.robots-result--allowed .robots-result__signal > span { background: #278b74; }
.robots-result--disallowed .robots-result__signal > span { background: #b45a45; }
.robots-result__signal h2 { margin: 0; font-size: clamp(1.25rem, 3vw, 1.75rem); }
.robots-result__detail { margin: 1rem 0; color: #506b78; line-height: 1.65; }
.robots-result__facts { display: grid; gap: 1px; margin: 0; background: #d9e3e4; }
.robots-result__facts div { display: grid; grid-template-columns: 7.2rem minmax(0, 1fr); gap: 0.7rem; padding: 0.7rem 0.8rem; background: #f8fbfb; }
.robots-result__facts dt { color: #6a7f88; font-size: 0.54rem; font-weight: 800; }
.robots-result__facts dd { margin: 0; color: #254f60; font-size: 0.62rem; font-weight: 700; overflow-wrap: anywhere; }
.robots-winner { display: grid; gap: 0.45rem; margin-top: 0.8rem; padding: 0.85rem; background: #0c3042; }
.robots-winner span { color: #86aab7; font-size: 0.53rem; font-weight: 800; }
.robots-winner code { color: #7be0ca; font-size: 0.68rem; overflow-wrap: anywhere; }
.robots-result__time { margin: 0.75rem 0 0; color: #73868f; font-size: 0.56rem; }

.robots-evidence__layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.robots-evidence h2 { color: #0b334a; }
.robots-evidence__layout > div > p:not(.premium-eyebrow) { color: #586f7c; line-height: 1.65; }
.robots-evidence code { color: #216b5c; }
.robots-rule-table { margin-top: 1.2rem; border: 1px solid #d7e2e4; }
.robots-rule-table__head, .robots-rule-table__row { display: grid; grid-template-columns: 3.1rem 5.5rem minmax(8rem, 1fr) 5rem; gap: 0.7rem; align-items: center; padding: 0.65rem 0.75rem; }
.robots-rule-table__head { color: #fff; background: #173f52; font-size: 0.5rem; font-weight: 850; }
.robots-rule-table__row { border-top: 1px solid #e0e8ea; color: #5c737e; background: #fff; font-size: 0.6rem; }
.robots-rule-table__row.is-winning { box-shadow: inset 3px 0 #2b8c76; background: #f0f9f6; }
.robots-rule-table__row strong { color: #234d5d; font-size: 0.6rem; }
.robots-rule-table__row code { overflow-wrap: anywhere; }
.robots-file-facts { border-top: 4px solid #d3a04c; padding: 1rem; background: #f7faf9; }
.robots-file-facts h3 { color: #143f53; font-size: 0.85rem; }
.robots-file-facts h4 { margin: 1rem 0 0.45rem; color: #326477; font-size: 0.62rem; }
.robots-file-facts dl { display: grid; gap: 0.65rem; margin: 0; }
.robots-file-facts dl div { display: grid; gap: 0.2rem; }
.robots-file-facts dt { color: #748790; font-size: 0.52rem; font-weight: 800; }
.robots-file-facts dd { margin: 0; color: #244d5e; font-size: 0.59rem; overflow-wrap: anywhere; }
.robots-file-facts ul { display: grid; gap: 0.45rem; margin: 0; padding-left: 1rem; color: #576f7a; font-size: 0.6rem; line-height: 1.55; overflow-wrap: anywhere; }

.robots-builder { scroll-margin-top: 7rem; }
.robots-builder__heading { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: end; margin-bottom: 1.6rem; }
.robots-builder h2 { color: #f0faff; }
.robots-builder__heading > div:first-child > p:last-child { color: #98b1bc; line-height: 1.7; }
.robots-builder__caution { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; border: 1px solid rgba(237, 196, 119, 0.22); padding: 0.9rem; background: rgba(4, 18, 30, 0.42); }
.robots-builder__caution i { color: #edc477; }
.robots-builder__caution p { margin: 0; color: #a9bec7; font-size: 0.64rem; line-height: 1.6; }
.robots-builder__caution strong { color: #f2d69b; }
.robots-builder__grid { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(22rem, 1.1fr); gap: 1px; background: rgba(102, 218, 241, 0.14); }
.robots-builder__form, .robots-builder__output { padding: clamp(1rem, 3vw, 1.5rem); background: rgba(4, 18, 30, 0.58); }
.robots-builder .tool-field label { color: #ddecf2; }
.robots-builder .tool-field label span { color: #7595a2; font-size: 0.54rem; }
.robots-builder .tool-field input, .robots-builder .tool-field textarea { width: 100%; border: 1px solid rgba(146, 198, 209, 0.22); border-radius: 0; padding: 0.72rem; color: #ecf8fb; background: #082536; font: 600 0.68rem/1.5 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.robots-builder .tool-field input:focus, .robots-builder .tool-field textarea:focus { border-color: #6ddac4; outline: 2px solid rgba(109, 218, 196, 0.2); }
.robots-builder .tool-field__help { color: #809faa; }
.robots-builder__output { display: grid; grid-template-rows: auto 1fr auto; }
.robots-builder__output-head { display: flex; gap: 0.8rem; align-items: center; justify-content: space-between; margin-bottom: 0.7rem; }
.robots-builder__output-head > div { display: flex; gap: 0.45rem; align-items: center; }
.robots-builder__output-head > div:first-child { display: grid; }
.robots-builder__output-head span { color: #e7f5f8; font-size: 0.68rem; font-weight: 850; }
.robots-builder__output-head small { color: #77a0ad; font-size: 0.5rem; }
.robots-builder__output-head button { border: 1px solid rgba(109, 218, 196, 0.28); padding: 0.45rem 0.6rem; color: #9ee8d9; background: transparent; font-size: 0.55rem; font-weight: 800; }
.robots-builder__output-head button:hover { color: #092536; background: #67d4bd; }
.robots-builder__output-head button:focus-visible { outline: 3px solid #edc477; outline-offset: 2px; }
.robots-builder__output textarea { width: 100%; min-height: 17rem; resize: vertical; border: 1px solid rgba(146, 198, 209, 0.18); border-radius: 0; padding: 1rem; color: #84e4cf; background: #061c2b; font: 600 0.68rem/1.7 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.robots-builder__message { margin-top: 0.7rem; color: #8eacb7; font-size: 0.6rem; line-height: 1.55; }
.robots-builder__message.is-warning { color: #edc477; }
.robots-builder__message.is-error { color: #f2a18c; }

.robots-guide__layout { display: grid; grid-template-columns: minmax(15rem, 0.65fr) minmax(0, 1.35fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.robots-guide h2 { color: #0c354b; }
.robots-guide__layout > div > p:last-child { color: #586f7c; line-height: 1.7; }
.robots-guide ol { display: grid; gap: 1px; margin: 0; padding: 0; background: #d8e3e4; list-style: none; }
.robots-guide li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; padding: 1rem; background: #fff; }
.robots-guide li > span { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #fff; background: #17495e; font-size: 0.54rem; font-weight: 900; }
.robots-guide h3 { margin: 0; color: #153e51; font-size: 0.74rem; }
.robots-guide li p { margin: 0.25rem 0 0; color: #637984; font-size: 0.64rem; line-height: 1.55; }
.robots-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.robots-faq__items { display: grid; gap: 0.55rem; }
.robots-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.robots-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.robots-faq__items summary::-webkit-details-marker { display: none; }
.robots-faq__items summary i { color: #288674; transition: transform 160ms ease; }
.robots-faq__items details[open] summary i { transform: rotate(45deg); }
.robots-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 991.98px) {
  .robots-hero .ats-page-hero__grid, .robots-test__layout, .robots-evidence__layout, .robots-builder__heading, .robots-builder__grid, .robots-guide__layout, .robots-faq__layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  .robots-rule-table { overflow-x: auto; }
  .robots-rule-table__head, .robots-rule-table__row { min-width: 34rem; }
}
@media (max-width: 575.98px) {
  .robots-hero__actions { align-items: stretch; flex-direction: column; }
  .robots-console__footer { align-items: flex-start; flex-direction: column; }
  .robots-preview__path { grid-template-columns: auto 1fr auto; }
  .robots-preview__path span:nth-of-type(2), .robots-preview__path i:last-child { display: none; }
  .robots-result__facts div { grid-template-columns: minmax(0, 1fr); }
  .robots-builder__output-head { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .robots-spin { animation: none; }
  .robots-faq__items summary i { transition: none; }
}
@media print {
  .robots-hero, .robots-form-panel, .robots-builder, .robots-guide, .robots-faq { display: none !important; }
  .robots-test, .robots-evidence { background: #fff !important; }
  .robots-test__layout, .robots-evidence__layout { display: block; }
  .robots-result, .robots-file-facts, .robots-rule-table__row { margin-bottom: 0.6rem; break-inside: avoid; box-shadow: none; }
}

/* Sitemap checker and builder */
.sitemap-hero { overflow: hidden; }
.sitemap-hero__actions { display: flex; flex-wrap: wrap; gap: 0.7rem; margin-top: 1.35rem; }
.sitemap-map { min-height: 21rem; }
.sitemap-map__canvas { position: relative; min-height: 16rem; background: radial-gradient(circle at 42% 48%, rgba(89, 210, 184, 0.12), transparent 8rem), linear-gradient(rgba(95, 187, 207, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(95, 187, 207, 0.035) 1px, transparent 1px); background-size: auto, 1.35rem 1.35rem, 1.35rem 1.35rem; }
.sitemap-map__line { position: absolute; z-index: 0; height: 1px; background: #5197a1; transform-origin: left center; }
.sitemap-map__line::after { position: absolute; top: -0.18rem; right: 0; width: 0.38rem; height: 0.38rem; border-radius: 50%; background: #69d8c3; content: ""; }
.sitemap-map__line--one { top: 49%; left: 30%; width: 31%; transform: rotate(-30deg); }
.sitemap-map__line--two { top: 52%; left: 30%; width: 32%; transform: rotate(12deg); }
.sitemap-map__line--three { top: 55%; left: 30%; width: 47%; transform: rotate(31deg); }
.sitemap-map__node { position: absolute; z-index: 1; display: grid; width: 4.8rem; min-height: 4.6rem; place-items: center; align-content: center; gap: 0.25rem; border: 1px solid rgba(105, 216, 195, 0.26); color: #cce8ec; background: #0a2b3c; box-shadow: 0 0.8rem 1.8rem rgba(0, 8, 18, 0.24); }
.sitemap-map__node i { font-size: 1.05rem; }
.sitemap-map__node b { padding: 0 0.25rem; font-size: 0.48rem; text-align: center; }
.sitemap-map__node--root { top: 50%; left: 21%; color: #092536; background: #69d8c3; transform: translate(-50%, -50%); }
.sitemap-map__node--page { top: 10%; left: 62%; color: #64d8be; }
.sitemap-map__node--move { top: 42%; left: 70%; color: #edc477; }
.sitemap-map__node--conflict { right: 4%; bottom: 4%; border-color: rgba(235, 133, 107, 0.36); color: #f09a82; }
.sitemap-map__footer { display: flex; gap: 0.75rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7699aa; font-size: 0.5rem; font-weight: 850; letter-spacing: 0.07em; }

.sitemap-check { scroll-margin-top: 7rem; background: radial-gradient(circle at 88% 12%, rgba(214, 164, 80, 0.08), transparent 24rem), #f6f9fa; }
.sitemap-check__layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(22rem, 1.16fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.sitemap-form-panel, .sitemap-preview, .sitemap-result { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.sitemap-form-panel h2, .sitemap-preview h2, .sitemap-result h2 { color: #0a2d45; }
.sitemap-form-panel > p:not(.premium-eyebrow), .sitemap-preview > p { color: #586f7c; line-height: 1.7; }
.sitemap-input-wrap { position: relative; }
.sitemap-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; z-index: 1; color: #278273; transform: translateY(-50%); }
.sitemap-input-wrap input { padding-left: 2.35rem !important; }
.sitemap-form button:disabled { opacity: 0.72; cursor: wait; }
.sitemap-spin { animation: sitemap-spin 900ms linear infinite; }
@keyframes sitemap-spin { to { transform: rotate(360deg); } }
.sitemap-preview { display: grid; min-height: 100%; align-content: center; background: linear-gradient(145deg, #fbfdfe, #f2f8f6); }
.sitemap-preview__flow { display: grid; grid-template-columns: auto minmax(2rem, 1fr) auto minmax(2rem, 1fr) auto; gap: 0.55rem; align-items: center; margin-bottom: 1.4rem; }
.sitemap-preview__flow i { display: grid; width: 3.1rem; height: 3.1rem; place-items: center; color: #fff; background: #17495e; }
.sitemap-preview__flow i:nth-of-type(2) { color: #173e50; background: #f0cf91; }
.sitemap-preview__flow i:last-child { background: #278b74; }
.sitemap-preview__flow span { height: 1px; background: repeating-linear-gradient(90deg, #8db7b8 0 0.3rem, transparent 0.3rem 0.55rem); }
.sitemap-result { border-top: 4px solid #cb994a; }
.sitemap-result--clear { border-top-color: #278b74; }
.sitemap-result--issues { border-top-color: #b45a45; }
.sitemap-result__head { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: center; }
.sitemap-result__head > span { display: grid; width: 3.2rem; height: 3.2rem; place-items: center; color: #fff; background: #c29241; font-size: 1.2rem; }
.sitemap-result--clear .sitemap-result__head > span { background: #278b74; }
.sitemap-result--issues .sitemap-result__head > span { background: #b45a45; }
.sitemap-result__head h2 { margin: 0; font-size: clamp(1.2rem, 3vw, 1.7rem); }
.sitemap-result__url { margin: 0.9rem 0; color: #607781; font: 600 0.61rem/1.5 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; }
.sitemap-result__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #d6e2e3; }
.sitemap-result__metrics div { display: grid; gap: 0.25rem; padding: 0.75rem; background: #f5faf9; }
.sitemap-result__metrics strong { color: #1e7764; font: 850 1rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.sitemap-result__metrics span { color: #667c86; font-size: 0.52rem; line-height: 1.4; }
.sitemap-result__facts { display: grid; gap: 1px; margin: 0.8rem 0 0; background: #dae4e5; }
.sitemap-result__facts div { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: 0.7rem; padding: 0.65rem 0.75rem; background: #fff; }
.sitemap-result__facts dt { color: #71858e; font-size: 0.52rem; font-weight: 800; }
.sitemap-result__facts dd { margin: 0; color: #244e60; font-size: 0.59rem; font-weight: 700; }

.sitemap-structure__layout { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.sitemap-structure h2 { color: #0b334a; }
.sitemap-structure__layout > div > p:not(.premium-eyebrow) { color: #586f7c; line-height: 1.65; }
.sitemap-structure__checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 1.2rem; background: #d9e4e5; }
.sitemap-structure__checks article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; align-items: start; padding: 0.9rem; background: #fff; }
.sitemap-structure__checks article > i { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: #278b74; }
.sitemap-structure__checks article.is-review > i { color: #133d50; background: #efca83; }
.sitemap-structure__checks article.is-issue > i { background: #b45a45; }
.sitemap-structure__checks h3 { margin: 0; color: #183f52; font-size: 0.7rem; }
.sitemap-structure__checks p { margin: 0.25rem 0 0; color: #637984; font-size: 0.61rem; line-height: 1.55; }
.sitemap-children { border-top: 4px solid #d1a04f; padding: 1rem; background: #f6f9f8; }
.sitemap-children h3 { margin: 0; color: #143f53; font-size: 0.82rem; }
.sitemap-children > p { color: #687e87; font-size: 0.61rem; line-height: 1.55; }
.sitemap-children ol { display: grid; gap: 1px; margin: 0; padding: 0; background: #dce5e6; list-style: none; }
.sitemap-children li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; padding: 0.7rem; background: #fff; }
.sitemap-children li > span { display: grid; width: 1.9rem; height: 1.9rem; place-items: center; color: #fff; background: #23856f; font-size: 0.5rem; font-weight: 900; }
.sitemap-children li.is-error > span { background: #b45a45; }
.sitemap-children li.is-nested_index > span { color: #143e51; background: #edc477; }
.sitemap-children li div { display: grid; min-width: 0; }
.sitemap-children strong { color: #285364; font-size: 0.57rem; overflow-wrap: anywhere; }
.sitemap-children small { margin-top: 0.18rem; color: #70838c; font-size: 0.53rem; line-height: 1.45; }
.sitemap-children__note { margin-bottom: 0 !important; border-top: 1px solid #dbe4e5; padding-top: 0.7rem; }

.sitemap-pages { background: radial-gradient(circle at 10% 90%, rgba(89, 180, 162, 0.08), transparent 22rem), #f6f9fa; }
.sitemap-pages__heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem; align-items: end; margin-bottom: 1.3rem; }
.sitemap-pages h2 { color: #0b334a; }
.sitemap-pages__heading > div:first-child > p:last-child { color: #5a717d; line-height: 1.65; }
.sitemap-pages__legend { display: flex; flex-wrap: wrap; gap: 0.55rem; justify-content: flex-end; }
.sitemap-pages__legend span { display: flex; gap: 0.35rem; align-items: center; color: #607681; font-size: 0.54rem; font-weight: 750; }
.sitemap-pages__legend i { width: 0.55rem; height: 0.55rem; border-radius: 50%; background: #b45a45; }
.sitemap-pages__legend i.is-review { background: #d0a14f; }
.sitemap-pages__legend i.is-good { background: #278b74; }
.sitemap-pages__legend i.is-skip { background: #81949c; }
.sitemap-page-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: #d9e3e4; }
.sitemap-page { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); background: #fff; }
.sitemap-page__status { display: grid; min-height: 7.5rem; place-items: center; align-content: center; gap: 0.25rem; padding: 0.7rem; color: #fff; background: #687f8a; text-align: center; }
.sitemap-page--issue .sitemap-page__status { background: #a94f3e; }
.sitemap-page--review .sitemap-page__status { color: #153e50; background: #e7bd6f; }
.sitemap-page--observed .sitemap-page__status { background: #23836e; }
.sitemap-page__status i { font-size: 1rem; }
.sitemap-page__status strong { font-size: 0.59rem; }
.sitemap-page__status span { font: 700 0.5rem/1.3 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.sitemap-page__body { display: grid; align-content: center; padding: 0.85rem; }
.sitemap-page__body h3 { margin: 0; color: #244f60; font: 700 0.62rem/1.5 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; }
.sitemap-page__body p { margin: 0.35rem 0; color: #627984; font-size: 0.61rem; line-height: 1.55; }
.sitemap-page__body small { margin-top: 0.18rem; color: #758890; font-size: 0.52rem; overflow-wrap: anywhere; }
.sitemap-page-empty { display: grid; grid-column: 1 / -1; grid-template-columns: auto minmax(0, 1fr); gap: 0.9rem; align-items: center; padding: 1.2rem; background: #fff; }
.sitemap-page-empty > i { display: grid; width: 3rem; height: 3rem; place-items: center; color: #173e51; background: #efca83; }
.sitemap-page-empty h3 { margin: 0; color: #173f52; font-size: 0.76rem; }
.sitemap-page-empty p { margin: 0.3rem 0 0; color: #637a85; font-size: 0.63rem; line-height: 1.55; }

.sitemap-builder { scroll-margin-top: 7rem; }
.sitemap-builder__heading { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: end; margin-bottom: 1.5rem; }
.sitemap-builder h2 { color: #f0faff; }
.sitemap-builder__heading > div:first-child > p:last-child { color: #98b1bc; line-height: 1.7; }
.sitemap-builder__format { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; border: 1px solid rgba(237, 196, 119, 0.2); padding: 0.9rem; background: rgba(4, 18, 30, 0.42); }
.sitemap-builder__format > i { color: #edc477; }
.sitemap-builder__format p { display: grid; gap: 0.25rem; margin: 0; }
.sitemap-builder__format strong { color: #f2d69b; font-size: 0.64rem; }
.sitemap-builder__format code { color: #84e4cf; font-size: 0.58rem; overflow-wrap: anywhere; }
.sitemap-builder__format span { color: #91aab5; font-size: 0.58rem; line-height: 1.5; }
.sitemap-builder__grid { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(23rem, 1.15fr); gap: 1px; background: rgba(102, 218, 241, 0.14); }
.sitemap-builder__form, .sitemap-builder__output { padding: clamp(1rem, 3vw, 1.5rem); background: rgba(4, 18, 30, 0.58); }
.sitemap-builder .tool-field label { color: #ddecf2; }
.sitemap-builder .tool-field textarea { width: 100%; border: 1px solid rgba(146, 198, 209, 0.22); border-radius: 0; padding: 0.8rem; color: #ecf8fb; background: #082536; font: 600 0.66rem/1.6 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.sitemap-builder .tool-field textarea:focus { border-color: #6ddac4; outline: 2px solid rgba(109, 218, 196, 0.2); }
.sitemap-builder .tool-field__help { color: #809faa; }
.sitemap-builder__output { display: grid; grid-template-rows: auto 1fr auto; }
.sitemap-builder__output-head { display: flex; gap: 0.8rem; align-items: center; justify-content: space-between; margin-bottom: 0.7rem; }
.sitemap-builder__output-head > div { display: flex; gap: 0.45rem; align-items: center; }
.sitemap-builder__output-head > div:first-child { display: grid; }
.sitemap-builder__output-head span { color: #e7f5f8; font-size: 0.68rem; font-weight: 850; }
.sitemap-builder__output-head small { color: #77a0ad; font-size: 0.5rem; }
.sitemap-builder__output-head button { border: 1px solid rgba(109, 218, 196, 0.28); padding: 0.45rem 0.6rem; color: #9ee8d9; background: transparent; font-size: 0.55rem; font-weight: 800; }
.sitemap-builder__output-head button:hover:not(:disabled) { color: #092536; background: #67d4bd; }
.sitemap-builder__output-head button:disabled { opacity: 0.42; cursor: not-allowed; }
.sitemap-builder__output-head button:focus-visible { outline: 3px solid #edc477; outline-offset: 2px; }
.sitemap-builder__output textarea { width: 100%; min-height: 19rem; resize: vertical; border: 1px solid rgba(146, 198, 209, 0.18); border-radius: 0; padding: 1rem; color: #84e4cf; background: #061c2b; font: 600 0.64rem/1.65 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.sitemap-builder__message { margin-top: 0.7rem; color: #8eacb7; font-size: 0.6rem; line-height: 1.55; }
.sitemap-builder__message.is-error { color: #f2a18c; }

.sitemap-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.sitemap-method h2 { color: #0b334a; }
.sitemap-method__layout > div:first-child > p:last-child { color: #5b727d; line-height: 1.7; }
.sitemap-method__steps { display: grid; gap: 1px; background: #dae4e5; }
.sitemap-method__steps article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; padding: 0.9rem; background: #f7faf9; }
.sitemap-method__steps article > span { display: grid; width: 2.15rem; height: 2.15rem; place-items: center; color: #fff; background: #17495e; font-size: 0.52rem; font-weight: 900; }
.sitemap-method__steps h3 { margin: 0; color: #173f52; font-size: 0.72rem; }
.sitemap-method__steps p { margin: 0.25rem 0 0; color: #647a84; font-size: 0.62rem; line-height: 1.55; }
.sitemap-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.sitemap-faq__items { display: grid; gap: 0.55rem; }
.sitemap-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.sitemap-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.sitemap-faq__items summary::-webkit-details-marker { display: none; }
.sitemap-faq__items summary i { color: #288674; transition: transform 160ms ease; }
.sitemap-faq__items details[open] summary i { transform: rotate(45deg); }
.sitemap-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 1099.98px) { .sitemap-page-list { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 991.98px) {
  .sitemap-hero .ats-page-hero__grid, .sitemap-check__layout, .sitemap-structure__layout, .sitemap-pages__heading, .sitemap-builder__heading, .sitemap-builder__grid, .sitemap-method__layout, .sitemap-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .sitemap-pages__legend { justify-content: flex-start; }
}
@media (max-width: 575.98px) {
  .sitemap-hero__actions { align-items: stretch; flex-direction: column; }
  .sitemap-map__node { width: 4rem; min-height: 4rem; }
  .sitemap-map__node--root { left: 16%; }
  .sitemap-map__node--conflict { right: 1%; }
  .sitemap-map__footer { align-items: flex-start; flex-direction: column; }
  .sitemap-preview__flow { grid-template-columns: auto 1fr auto; }
  .sitemap-preview__flow span:nth-of-type(2), .sitemap-preview__flow i:last-child { display: none; }
  .sitemap-result__metrics, .sitemap-structure__checks { grid-template-columns: minmax(0, 1fr); }
  .sitemap-page { grid-template-columns: minmax(0, 1fr); }
  .sitemap-page__status { grid-template-columns: auto minmax(0, 1fr) auto; min-height: auto; justify-items: start; text-align: left; }
  .sitemap-builder__output-head { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { .sitemap-spin { animation: none; } .sitemap-faq__items summary i { transition: none; } }
@media print {
  .sitemap-hero, .sitemap-form-panel, .sitemap-builder, .sitemap-method, .sitemap-faq { display: none !important; }
  .sitemap-check, .sitemap-structure, .sitemap-pages { background: #fff !important; }
  .sitemap-check__layout, .sitemap-structure__layout { display: block; }
  .sitemap-result, .sitemap-page, .sitemap-structure__checks article, .sitemap-children { margin-bottom: 0.6rem; break-inside: avoid; box-shadow: none; }
}

/* E-commerce readiness */
.ecommerce-readiness-hero { overflow: hidden; }
.ecommerce-journey { min-height: 21rem; }
.ecommerce-journey__body { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.55rem; min-height: 15rem; align-items: center; padding: 2rem 0.8rem; }
.ecommerce-journey__line { position: absolute; top: 50%; right: 10%; left: 10%; height: 1px; background: linear-gradient(90deg, #69d8c3, #5aaed0 58%, rgba(90, 174, 208, 0.2)); }
.ecommerce-journey__node { position: relative; z-index: 1; display: grid; min-width: 0; min-height: 7rem; place-items: center; align-content: center; gap: 0.38rem; border: 1px solid rgba(106, 208, 211, 0.19); padding: 0.65rem 0.35rem; color: #d8edf1; background: #092638; box-shadow: 0 0.8rem 2rem rgba(0, 8, 18, 0.25); text-align: center; }
.ecommerce-journey__node.is-current { border-color: #67d8c3; color: #082536; background: #67d8c3; }
.ecommerce-journey__node i { font-size: 1.2rem; }
.ecommerce-journey__node b { font-size: 0.68rem; line-height: 1.15; }
.ecommerce-journey__node small { display: block; color: #91b9c5; font: 750 0.5rem/1.15 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; letter-spacing: 0.035em; text-transform: uppercase; }
.ecommerce-journey__node.is-current small { color: #245a59; }
.ecommerce-journey__footer { display: flex; justify-content: space-between; border-top: 1px solid rgba(99, 205, 218, 0.13); padding-top: 0.8rem; color: #6e97a7; font: 700 0.5rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; letter-spacing: 0.05em; }

.ecommerce-check { scroll-margin-top: 6rem; }
.ecommerce-check__layout { display: grid; grid-template-columns: minmax(0, 0.84fr) minmax(22rem, 1.16fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: stretch; }
.ecommerce-form-panel, .ecommerce-coverage, .ecommerce-result-intro { border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1.15rem, 3vw, 2rem); background: #fff; box-shadow: 0 1.1rem 2.8rem rgba(6, 38, 57, 0.07); }
.ecommerce-form-panel h2, .ecommerce-coverage h2, .ecommerce-result-intro h2 { color: #0a2d45; }
.ecommerce-form-panel > p:not(.premium-eyebrow), .ecommerce-coverage > p, .ecommerce-result-intro p { color: #586f7c; line-height: 1.7; }
.ecommerce-input-wrap { position: relative; }
.ecommerce-input-wrap > i { position: absolute; top: 50%; left: 0.8rem; color: #8a6330; transform: translateY(-50%); }
.ecommerce-input-wrap input { padding-left: 2.35rem !important; }
.ecommerce-form button:disabled { opacity: 0.72; cursor: wait; }
.ecommerce-submit-spinner { animation: ecommerce-spin 900ms linear infinite; }
@keyframes ecommerce-spin { to { transform: rotate(360deg); } }
.ecommerce-scope-note { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; margin-top: 1rem; border-top: 1px solid rgba(5, 52, 78, 0.08); padding-top: 0.9rem; }
.ecommerce-scope-note i { color: #976a2c; }
.ecommerce-scope-note p { margin: 0; color: #5b727e; font-size: 0.69rem; line-height: 1.55; }
.ecommerce-coverage { display: grid; min-height: 100%; align-content: center; background: radial-gradient(circle at 75% 10%, rgba(229, 178, 94, 0.14), transparent 12rem), linear-gradient(145deg, #fbfdfe, #f5f8f7); }
.ecommerce-coverage__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-bottom: 1.2rem; background: #d8e3e4; }
.ecommerce-coverage__grid span { display: grid; min-height: 6rem; place-items: center; align-content: center; gap: 0.4rem; color: #17485a; background: #fff; }
.ecommerce-coverage__grid i { font-size: 1.25rem; }
.ecommerce-coverage__grid b { font-size: 0.57rem; }
.ecommerce-result-intro { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.2rem; align-self: start; align-items: center; border-top: 4px solid #b98436; }
.ecommerce-result-intro h2 { margin-bottom: 0.35rem; font-size: clamp(1rem, 2vw, 1.45rem); overflow-wrap: anywhere; }
.ecommerce-result-intro p { margin: 0; font-size: 0.67rem; }
.ecommerce-result-intro__notice { display: flex; gap: 0.4rem; align-items: flex-start; margin-top: 0.5rem !important; color: #865c18 !important; }
.ecommerce-result-intro__counts { display: grid; grid-template-columns: repeat(3, minmax(4rem, 1fr)); gap: 1px; background: #dbe5e8; }
.ecommerce-result-intro__counts span { display: grid; gap: 0.2rem; justify-items: center; padding: 0.8rem 0.6rem; background: #f9fbfb; }
.ecommerce-result-intro__counts strong { color: #aa503c; font: 800 1.2rem/1 "Manrope", sans-serif; }
.ecommerce-result-intro__counts .is-review strong { color: #a46c12; }
.ecommerce-result-intro__counts .is-observed strong { color: #1f876f; }
.ecommerce-result-intro__counts small { color: #667c87; font-size: 0.5rem; }

.ecommerce-findings-section { background: #fff; }
.ecommerce-results-layout { display: grid; grid-template-columns: minmax(14rem, 0.5fr) minmax(0, 1.5fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.ecommerce-result-guide { position: sticky; top: 7rem; border-top: 4px solid #b98436; padding: 1.3rem; background: #fbf7ee; }
.ecommerce-result-guide h2 { color: #0c3147; font-size: clamp(1.25rem, 2.4vw, 1.8rem); }
.ecommerce-result-guide > p:not(.premium-eyebrow) { color: #5a717c; font-size: 0.7rem; line-height: 1.65; }
.ecommerce-result-guide button { display: inline-flex; gap: 0.4rem; align-items: center; margin-top: 1rem; border: 1px solid #d9c4a1; padding: 0.62rem 0.75rem; color: #805a22; background: #fff; font: 800 0.62rem/1 "Manrope", sans-serif; cursor: pointer; }
.ecommerce-result-guide button:hover { border-color: #a87830; background: #fffaf2; }
.ecommerce-result-guide button:focus-visible { outline: 3px solid rgba(181, 128, 51, 0.28); outline-offset: 2px; }
.ecommerce-legend { display: grid; gap: 0.5rem; margin-top: 1rem; }
.ecommerce-legend span { display: inline-flex; gap: 0.4rem; align-items: center; color: #607680; font-size: 0.57rem; font-weight: 750; }
.ecommerce-legend i { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #ad503c; }
.ecommerce-legend .is-review i { background: #c78b2b; }
.ecommerce-legend .is-observed i { background: #278b74; }
.ecommerce-findings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.ecommerce-finding { display: grid; align-content: start; border: 1px solid rgba(5, 52, 78, 0.11); border-top: 4px solid #278c74; padding: 1rem; background: #fff; box-shadow: 0 0.65rem 1.8rem rgba(5, 38, 57, 0.05); }
.ecommerce-finding--issue { border-top-color: #ad543f; }
.ecommerce-finding--review { border-top-color: #cd902f; }
.ecommerce-finding header { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.7rem; align-items: center; }
.ecommerce-finding__icon { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #fff; background: #278b74; }
.ecommerce-finding--issue .ecommerce-finding__icon { background: #ad543f; }
.ecommerce-finding--review .ecommerce-finding__icon { background: #c98c2d; }
.ecommerce-finding header small { color: #258069; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.ecommerce-finding--issue header small { color: #9e4937; }
.ecommerce-finding--review header small { color: #966313; }
.ecommerce-finding h3 { margin: 0.12rem 0 0; color: #143d52; font-size: 0.83rem; }
.ecommerce-finding > p { margin: 0.75rem 0 0; color: #596f7b; font-size: 0.68rem; line-height: 1.6; }
.ecommerce-evidence { display: grid; gap: 1px; margin: 0.75rem 0 0; padding: 0; background: #1a3948; list-style: none; }
.ecommerce-evidence li { min-width: 0; padding: 0.55rem 0.65rem; color: #d6edf2; background: #0b2737; overflow-wrap: anywhere; }
.ecommerce-evidence code { color: inherit; font: 600 0.56rem/1.45 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.ecommerce-finding__action { margin-top: 0.75rem; border-left: 2px solid #b1813e; padding-left: 0.7rem; }
.ecommerce-finding__action strong { color: #805b26; font-size: 0.5rem; font-weight: 900; letter-spacing: 0.07em; text-transform: uppercase; }
.ecommerce-finding__action p { margin: 0.2rem 0 0; color: #586f7b; font-size: 0.64rem; line-height: 1.55; }
.ecommerce-finding__source { display: flex; gap: 0.35rem; align-items: center; margin-top: 0.75rem !important; border-top: 1px solid #e2eaec; padding-top: 0.65rem; color: #748891 !important; font-size: 0.53rem !important; }

.ecommerce-walkthrough { background: radial-gradient(circle at 12% 20%, rgba(185, 132, 54, 0.09), transparent 22rem), #f5f8f8; }
.ecommerce-walkthrough__heading { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(18rem, 0.7fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.ecommerce-walkthrough__heading h2, .ecommerce-faq h2, .ecommerce-next-step h2 { color: #0b3046; }
.ecommerce-walkthrough__heading > p { margin: 0; color: #5c727e; font-size: 0.72rem; line-height: 1.7; }
.ecommerce-walkthrough__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #d8e2e3; list-style: none; }
.ecommerce-walkthrough__steps li { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; min-height: 10rem; padding: 1rem; background: #fff; }
.ecommerce-walkthrough__steps li > span { color: #b07d34; font: 800 0.58rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.ecommerce-walkthrough__steps h3 { margin: 0; color: #173f52; font-size: 0.77rem; }
.ecommerce-walkthrough__steps p { margin: 0.35rem 0 0; color: #607680; font-size: 0.65rem; line-height: 1.6; }
.ecommerce-next-step { background: #fff; }
.ecommerce-next-step__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #b98436; padding: clamp(1.2rem, 3vw, 2rem); background: #fbf7ee; }
.ecommerce-next-step__layout p:not(.premium-eyebrow) { max-width: 68ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

.ecommerce-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.ecommerce-method h2 { color: #f0faff; }
.ecommerce-method p { color: rgba(223, 238, 247, 0.74); line-height: 1.7; }
.ecommerce-method__sources { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(102, 218, 241, 0.14); }
.ecommerce-method__sources a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.7rem; align-items: center; min-height: 5rem; padding: 0.85rem; color: #e9f7fa; background: rgba(4, 18, 30, 0.55); }
.ecommerce-method__sources a > i:first-child { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #082536; background: #e5b25e; }
.ecommerce-method__sources a > i:last-child { color: #6d95a5; }
.ecommerce-method__sources span { display: grid; }
.ecommerce-method__sources b { font-size: 0.67rem; }
.ecommerce-method__sources small { margin-top: 0.2rem; color: #91acb8; font-size: 0.54rem; }
.ecommerce-method__sources a:hover { color: #fff; background: rgba(11, 46, 60, 0.78); }
.ecommerce-method__sources a:focus-visible { outline: 3px solid #e3ad53; outline-offset: -3px; }
.ecommerce-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.ecommerce-faq__items { display: grid; gap: 0.55rem; }
.ecommerce-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.ecommerce-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.ecommerce-faq__items summary::-webkit-details-marker { display: none; }
.ecommerce-faq__items summary i { color: #a8752f; transition: transform 160ms ease; }
.ecommerce-faq__items details[open] summary i { transform: rotate(45deg); }
.ecommerce-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }

@media (max-width: 1099.98px) {
  .ecommerce-findings { grid-template-columns: minmax(0, 1fr); }
  .ecommerce-walkthrough__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .ecommerce-readiness-hero .ats-page-hero__grid, .ecommerce-check__layout, .ecommerce-results-layout, .ecommerce-walkthrough__heading, .ecommerce-method__layout, .ecommerce-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .ecommerce-result-guide { position: static; }
}
@media (max-width: 767.98px) {
  .ecommerce-result-intro, .ecommerce-next-step__layout { grid-template-columns: minmax(0, 1fr); }
  .ecommerce-result-intro__counts { width: 100%; }
  .ecommerce-next-step__layout { align-items: start; }
  .ecommerce-next-step__layout .premium-btn { justify-self: start; }
}
@media (max-width: 575.98px) {
  .ecommerce-journey__body { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ecommerce-journey__line { display: none; }
  .ecommerce-journey__node { min-height: 5.5rem; }
  .ecommerce-journey__footer { align-items: flex-start; flex-direction: column; gap: 0.3rem; }
  .ecommerce-result-intro__counts, .ecommerce-walkthrough__steps, .ecommerce-method__sources { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .ecommerce-submit-spinner { animation: none; }
  .ecommerce-faq__items summary i { transition: none; }
}
@media print {
  .ecommerce-readiness-hero, .ecommerce-form-panel, .ecommerce-method, .ecommerce-faq, .ecommerce-result-guide button, .ecommerce-next-step { display: none !important; }
  .ecommerce-check, .ecommerce-findings-section, .ecommerce-walkthrough { background: #fff !important; }
  .ecommerce-check__layout, .ecommerce-results-layout, .ecommerce-walkthrough__heading { display: block; }
  .ecommerce-result-intro, .ecommerce-result-guide, .ecommerce-finding, .ecommerce-walkthrough__steps li { margin-bottom: 0.65rem; break-inside: avoid; box-shadow: none; }
  .ecommerce-result-guide { border: 1px solid #cad8dc; }
}

/* Startup IT budget planner */
.startup-budget-hero { overflow: hidden; }
.startup-budget-map { min-height: 21rem; }
.startup-budget-map__body { display: grid; grid-template-columns: minmax(0, 0.9fr) auto minmax(0, 1.1fr); gap: 1rem; align-items: center; min-height: 15rem; padding: 1.25rem 0.35rem; }
.startup-budget-map__launch { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; padding: 1px; background: rgba(112, 211, 215, 0.18); }
.startup-budget-map__launch span { display: grid; min-width: 0; min-height: 6.5rem; place-items: center; align-content: center; gap: 0.45rem; padding: 0.5rem 0.25rem; color: #d8eff3; background: #0a2a3c; text-align: center; }
.startup-budget-map__launch i { color: #6dd9c4; font-size: 1.15rem; }
.startup-budget-map__launch b { font-size: 0.55rem; line-height: 1.25; }
.startup-budget-map__bridge { display: grid; justify-items: center; color: #e5b25e; }
.startup-budget-map__bridge small { margin-top: 0.3rem; color: #6d98a8; font: 750 0.45rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; letter-spacing: 0.06em; }
.startup-budget-map__run { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; align-items: end; }
.startup-budget-map__run div { display: grid; min-width: 0; gap: 0.35rem; }
.startup-budget-map__run small { color: #779eac; font: 700 0.43rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; white-space: nowrap; }
.startup-budget-map__run span { display: block; height: 4rem; background: linear-gradient(180deg, #62d3c0, #1c6e7c); box-shadow: 0 0.8rem 1.8rem rgba(4, 14, 25, 0.24); }
.startup-budget-map__run div:nth-child(2) span { height: 5.35rem; }
.startup-budget-map__run div:nth-child(3) span { height: 6.75rem; background: linear-gradient(180deg, #e5b25e, #8f6627); }
.startup-budget-map__run strong { grid-column: 1 / -1; color: #c9e2e8; font-size: 0.55rem; line-height: 1.4; }
.startup-budget-map__footer { display: flex; justify-content: space-between; border-top: 1px solid rgba(99, 205, 218, 0.13); padding-top: 0.8rem; color: #759cab; font: 750 0.48rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; letter-spacing: 0.06em; }

.startup-budget-section { scroll-margin-top: 6rem; background: radial-gradient(circle at 85% 8%, rgba(229, 178, 94, 0.1), transparent 24rem), #f5f8f7; }
.startup-budget-presets { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(25rem, 1.2fr); gap: 2rem; align-items: end; margin-bottom: 1.2rem; border-bottom: 1px solid #dbe5e5; padding-bottom: 1.2rem; }
.startup-budget-presets h2 { margin-bottom: 0.35rem; color: #0b3047; }
.startup-budget-presets > div:first-child > p:last-child { margin: 0; color: #5d737e; font-size: 0.72rem; line-height: 1.6; }
.startup-budget-presets__buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.startup-budget-presets__buttons button { min-height: 3.1rem; border: 1px solid #d0dcdf; padding: 0.6rem; color: #49616e; background: #fff; font: 800 0.62rem/1.3 "Manrope", sans-serif; cursor: pointer; }
.startup-budget-presets__buttons button:hover { border-color: #a77731; color: #714b16; background: #fffaf1; }
.startup-budget-presets__buttons button[aria-pressed="true"] { border-color: #b68134; color: #fff; background: #9c6d28; box-shadow: 0 0.7rem 1.5rem rgba(128, 88, 28, 0.17); }
.startup-budget-presets__buttons button:focus-visible { outline: 3px solid rgba(52, 114, 246, 0.26); outline-offset: 2px; }

.startup-budget-layout { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(21rem, 0.82fr); gap: clamp(1rem, 3vw, 2rem); align-items: start; }
.startup-budget-form { display: grid; gap: 0.8rem; }
.startup-budget-fieldset { min-width: 0; margin: 0; border: 1px solid rgba(6, 55, 79, 0.11); padding: clamp(1rem, 2.5vw, 1.35rem); background: #fff; box-shadow: 0 0.8rem 2rem rgba(8, 44, 61, 0.045); }
.startup-budget-fieldset legend { display: inline-flex; gap: 0.55rem; align-items: center; width: auto; margin: 0 0 0.85rem; padding: 0; color: #153f52; font: 850 0.76rem/1.2 "Manrope", sans-serif; }
.startup-budget-fieldset legend span { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; color: #fff; background: #174b5f; font: 800 0.5rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.startup-budget-fieldset--team { border-top: 4px solid #2b8b77; }
.startup-budget-fieldset--allowance { border-top: 4px solid #b68236; }
.startup-budget-fieldset__intro { margin: -0.25rem 0 0.9rem; color: #657a84; font-size: 0.65rem; line-height: 1.55; }
.startup-budget-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.9rem 0.75rem; }
.startup-budget-fields--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.startup-budget-fields > label, .startup-budget-fieldset--allowance > label { display: grid; min-width: 0; gap: 0.35rem; align-content: start; }
.startup-budget-fields label > span:first-child, .startup-budget-fieldset--allowance label > span:first-child { color: #1b4052; font-size: 0.63rem; font-weight: 800; line-height: 1.35; }
.startup-budget-fields input, .startup-budget-fieldset--allowance input { width: 100%; min-height: 2.9rem; border: 1px solid #cddade; border-radius: 0; padding: 0.65rem 0.7rem; color: #12394c; background: #fbfcfc; font: 750 0.74rem/1 "Manrope", sans-serif; }
.startup-budget-fields input:focus, .startup-budget-fieldset--allowance input:focus { border-color: #277f70; outline: 3px solid rgba(39, 127, 112, 0.13); }
.startup-budget-fields input[aria-invalid="true"], .startup-budget-fieldset--allowance input[aria-invalid="true"] { border-color: #aa503c; outline-color: rgba(170, 80, 60, 0.14); }
.startup-budget-fields small, .startup-budget-fieldset--allowance small { color: #71858e; font-size: 0.55rem; line-height: 1.5; }
.startup-budget-money, .startup-budget-percent { position: relative; display: block; }
.startup-budget-money > b { position: absolute; z-index: 1; top: 50%; left: 0.7rem; color: #9a6b28; font-size: 0.68rem; transform: translateY(-50%); }
.startup-budget-money input { padding-left: 1.65rem; }
.startup-budget-money > em { position: absolute; top: 50%; right: 0.65rem; color: #738892; font-size: 0.48rem; font-style: normal; font-weight: 750; transform: translateY(-50%); }
.startup-budget-money:has(> em) input { padding-right: 3.6rem; }
.startup-budget-percent { max-width: 12rem; }
.startup-budget-percent > b { position: absolute; top: 50%; right: 0.75rem; color: #9a6b28; font-size: 0.65rem; transform: translateY(-50%); }
.startup-budget-percent input { padding-right: 1.8rem; }
.startup-budget-error { min-height: 1.15rem; margin: 0; color: #983d2d; font-size: 0.64rem; font-weight: 750; }
.startup-budget-form__actions, .startup-budget-result__actions { display: flex; flex-wrap: wrap; gap: 0.55rem; }

.startup-budget-result { position: sticky; top: 7rem; display: grid; gap: 1rem; border: 1px solid rgba(5, 52, 78, 0.14); border-top: 5px solid #b98436; padding: clamp(1rem, 2.5vw, 1.4rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(6, 38, 57, 0.09); }
.startup-budget-result__topline { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.startup-budget-result__topline h2 { margin: 0.1rem 0 0; color: #11384c; font-size: clamp(1rem, 2vw, 1.35rem); }
.startup-budget-result__badge { display: inline-flex; gap: 0.3rem; align-items: center; border: 1px solid #dce4e4; padding: 0.38rem 0.5rem; color: #607681; background: #f7faf9; font-size: 0.5rem; font-weight: 850; }
.startup-budget-result__primary { display: grid; gap: 0.25rem; border-left: 4px solid #2b8c78; padding: 1rem; background: #eef8f5; }
.startup-budget-result__primary > span { color: #50706d; font-size: 0.58rem; font-weight: 800; }
.startup-budget-result__primary strong { color: #0f5f53; font: 850 clamp(1.9rem, 4vw, 2.65rem)/1 "Space Grotesk", sans-serif; letter-spacing: -0.04em; }
.startup-budget-result__primary small { color: #69817e; font-size: 0.53rem; }
.startup-budget-result__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #dce5e6; }
.startup-budget-result__metrics article { display: grid; min-width: 0; gap: 0.3rem; align-content: start; padding: 0.75rem 0.65rem; background: #f8faf9; }
.startup-budget-result__metrics i { color: #a06f28; }
.startup-budget-result__metrics span { min-height: 2.2em; color: #607680; font-size: 0.49rem; font-weight: 750; line-height: 1.25; }
.startup-budget-result__metrics strong { color: #173e50; font: 800 0.82rem/1.2 "Manrope", sans-serif; overflow-wrap: anywhere; }
.startup-budget-breakdown { display: grid; gap: 0.6rem; border-top: 1px solid #e0e8e9; padding-top: 0.85rem; }
.startup-budget-breakdown__heading { display: flex; gap: 0.75rem; align-items: baseline; justify-content: space-between; }
.startup-budget-breakdown h3 { margin: 0; color: #173f52; font-size: 0.7rem; }
.startup-budget-breakdown__heading > strong { color: #6b7f88; font-size: 0.5rem; font-weight: 750; text-align: right; }
.startup-budget-bar { display: flex; width: 100%; height: 0.65rem; overflow: hidden; background: #edf1f1; }
.startup-budget-bar span { display: block; height: 100%; transition: width 220ms ease; }
.startup-budget-bar [data-bar-devices], .startup-budget-breakdown li .is-devices, .startup-budget-bar [data-bar-software], .startup-budget-breakdown li .is-software { background: #1f8572; }
.startup-budget-bar [data-bar-workspace], .startup-budget-breakdown li .is-workspace, .startup-budget-bar [data-bar-protection], .startup-budget-breakdown li .is-protection { background: #3a7594; }
.startup-budget-bar [data-bar-onboarding], .startup-budget-breakdown li .is-onboarding, .startup-budget-bar [data-bar-support], .startup-budget-breakdown li .is-support { background: #b47d2f; }
.startup-budget-bar [data-bar-infrastructure], .startup-budget-breakdown li .is-infrastructure, .startup-budget-bar [data-bar-fixed], .startup-budget-breakdown li .is-fixed { background: #755f91; }
.startup-budget-bar [data-bar-one-off-allowance], .startup-budget-bar [data-bar-monthly-allowance], .startup-budget-breakdown li .is-allowance { background: #c85b46; }
.startup-budget-breakdown ul { display: grid; gap: 0.3rem; margin: 0; padding: 0; list-style: none; }
.startup-budget-breakdown li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.45rem; align-items: center; color: #607580; font-size: 0.54rem; }
.startup-budget-breakdown li i { width: 0.45rem; height: 0.45rem; }
.startup-budget-breakdown li strong { color: #284c5c; font-size: 0.56rem; font-variant-numeric: tabular-nums; }
.startup-budget-result__footnote { margin: 0; border-top: 1px solid #e1e8e9; padding-top: 0.75rem; color: #6e8189; font-size: 0.53rem; line-height: 1.5; }

.startup-budget-boundaries { background: #fff; }
.startup-budget-boundaries__layout { display: grid; grid-template-columns: minmax(15rem, 0.55fr) minmax(0, 1.45fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.startup-budget-boundaries h2, .startup-budget-faq h2, .startup-budget-next h2 { color: #0b3047; }
.startup-budget-boundaries__layout > div:first-child > p:last-child { color: #5c727d; line-height: 1.65; }
.startup-budget-boundaries__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #dbe4e5; }
.startup-budget-boundaries__grid article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; padding: 1rem; background: #f8faf9; }
.startup-budget-boundaries__grid article > i { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #fff; background: #1f6f63; }
.startup-budget-boundaries__grid article:nth-child(2) > i, .startup-budget-boundaries__grid article:nth-child(4) > i { background: #9c6c28; }
.startup-budget-boundaries__grid h3 { margin: 0; color: #173e51; font-size: 0.72rem; }
.startup-budget-boundaries__grid p { margin: 0.3rem 0 0; color: #607681; font-size: 0.63rem; line-height: 1.6; }
.startup-budget-method__layout { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.startup-budget-method h2 { color: #f0faff; }
.startup-budget-method p { color: #91aab5; line-height: 1.7; }
.startup-budget-method__flow { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.65rem; align-items: center; }
.startup-budget-method__flow > span { display: grid; min-height: 7rem; place-items: center; align-content: center; gap: 0.45rem; border: 1px solid rgba(113, 215, 214, 0.18); padding: 0.75rem; color: #ddf0f3; background: rgba(5, 30, 44, 0.65); text-align: center; }
.startup-budget-method__flow > span:last-child { border-color: rgba(229, 178, 94, 0.45); background: rgba(102, 70, 25, 0.3); }
.startup-budget-method__flow > span i { color: #67d4bd; font-size: 1.2rem; }
.startup-budget-method__flow > span:last-child i { color: #e5b25e; }
.startup-budget-method__flow b { font-size: 0.64rem; }
.startup-budget-method__flow small { color: #729dab; font: 700 0.46rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.startup-budget-method__flow > i { color: #e5b25e; }
.startup-budget-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.startup-budget-faq__items { display: grid; gap: 0.55rem; }
.startup-budget-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.startup-budget-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.startup-budget-faq__items summary::-webkit-details-marker { display: none; }
.startup-budget-faq__items summary i { color: #a8752f; transition: transform 160ms ease; }
.startup-budget-faq__items details[open] summary i { transform: rotate(45deg); }
.startup-budget-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }
.startup-budget-next { background: #fff; }
.startup-budget-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #b98436; padding: clamp(1.2rem, 3vw, 2rem); background: #fbf7ee; }
.startup-budget-next__layout p:not(.premium-eyebrow) { max-width: 69ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

@media (max-width: 1099.98px) {
  .startup-budget-layout, .startup-budget-boundaries__layout { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-result { position: static; }
}
@media (max-width: 991.98px) {
  .startup-budget-hero .ats-page-hero__grid, .startup-budget-presets, .startup-budget-method__layout, .startup-budget-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-presets { align-items: start; }
}
@media (max-width: 767.98px) {
  .startup-budget-map__body { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-map__bridge { transform: rotate(90deg); }
  .startup-budget-presets__buttons, .startup-budget-fields, .startup-budget-fields--two, .startup-budget-boundaries__grid { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-result__metrics { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-result__metrics article { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; }
  .startup-budget-result__metrics span { min-height: auto; }
  .startup-budget-method__flow { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-method__flow > i { justify-self: center; transform: rotate(90deg); }
  .startup-budget-next__layout { grid-template-columns: minmax(0, 1fr); }
  .startup-budget-next__layout .premium-btn { justify-self: start; }
}
@media (max-width: 575.98px) {
  .startup-budget-map__footer, .startup-budget-result__topline, .startup-budget-breakdown__heading { align-items: flex-start; flex-direction: column; }
  .startup-budget-form__actions, .startup-budget-result__actions { align-items: stretch; flex-direction: column; }
  .startup-budget-form__actions .tool-action, .startup-budget-result__actions .tool-action { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .startup-budget-bar span, .startup-budget-faq__items summary i { transition: none; }
}
@media print {
  .startup-budget-hero, .startup-budget-presets, .startup-budget-form, .startup-budget-boundaries, .startup-budget-method, .startup-budget-faq, .startup-budget-next, .startup-budget-result__actions { display: none !important; }
  .startup-budget-section { padding: 0; background: #fff !important; }
  .startup-budget-layout { display: block; }
  .startup-budget-result { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .startup-budget-breakdown, .startup-budget-result__metrics { break-inside: avoid; }
}

/* Website cost and scope estimator */
.website-scope-hero { overflow: hidden; }
.website-scope-map { min-height: 21rem; }
.website-scope-map__canvas { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(7.5rem, 0.65fr); gap: 1rem; align-items: center; min-height: 15rem; padding: 1.1rem 0.2rem; }
.website-scope-map__screen { position: relative; min-height: 11rem; border: 1px solid rgba(113, 215, 214, 0.2); padding: 2rem 0.8rem 0.8rem; background: #f4faf9; box-shadow: 0 1.4rem 3rem rgba(0, 10, 22, 0.28); }
.website-scope-map__browser { position: absolute; top: 0; right: 0; left: 0; display: flex; gap: 0.28rem; align-items: center; height: 1.35rem; border-bottom: 1px solid #d7e3e3; padding: 0 0.55rem; background: #e8f0ef; }
.website-scope-map__browser i { width: 0.3rem; height: 0.3rem; border-radius: 50%; background: #bf6a54; }
.website-scope-map__browser i:nth-child(2) { background: #d1a24f; }
.website-scope-map__browser i:nth-child(3) { background: #4da88e; }
.website-scope-map__hero-line { width: 72%; height: 2.45rem; margin: 0.15rem 0 0.75rem; background: linear-gradient(90deg, #174c5f 68%, #d7a34e 68%); }
.website-scope-map__layout { display: grid; grid-template-columns: 1.25fr 0.75fr; grid-template-rows: repeat(2, 2rem); gap: 0.42rem; }
.website-scope-map__layout span { display: block; background: #d9e8e6; }
.website-scope-map__layout span:first-child { grid-row: 1 / 3; background: linear-gradient(145deg, #8fd4c7, #2e7b78); }
.website-scope-map__content { display: grid; grid-template-columns: 0.6fr 1.4fr; gap: 0.42rem; margin-top: 0.42rem; }
.website-scope-map__content span { height: 1.25rem; background: #e2c995; }
.website-scope-map__content span:last-child { background: #dce7e8; }
.website-scope-map__route { display: grid; gap: 0.45rem; margin: 0; padding: 0; list-style: none; }
.website-scope-map__route li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.55rem; align-items: center; border-left: 2px solid #2c837a; padding: 0.58rem 0.62rem; color: #d8edf2; background: rgba(5, 32, 47, 0.7); }
.website-scope-map__route li:nth-child(even) { border-left-color: #d9a852; }
.website-scope-map__route i { color: #6bd6c2; }
.website-scope-map__route li:nth-child(even) i { color: #e1b45e; }
.website-scope-map__route span { font-size: 0.55rem; font-weight: 800; }
.website-scope-map__footer { display: flex; justify-content: space-between; border-top: 1px solid rgba(99, 205, 218, 0.13); padding-top: 0.8rem; color: #759cab; font: 750 0.46rem/1.4 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; letter-spacing: 0.06em; }

.website-scope-section { scroll-margin-top: 6rem; background: radial-gradient(circle at 88% 6%, rgba(47, 137, 126, 0.11), transparent 24rem), #f5f8f7; }
.website-scope-presets { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(24rem, 1.2fr); gap: 2rem; align-items: end; margin-bottom: 1.2rem; border-bottom: 1px solid #dbe5e5; padding-bottom: 1.2rem; }
.website-scope-presets h2 { margin-bottom: 0.35rem; color: #0b3047; }
.website-scope-presets > div:first-child > p:last-child { margin: 0; color: #5d737e; font-size: 0.72rem; line-height: 1.6; }
.website-scope-presets__buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.website-scope-presets__buttons button { min-height: 3.1rem; border: 1px solid #d0dcdf; padding: 0.6rem; color: #49616e; background: #fff; font: 800 0.62rem/1.3 "Manrope", sans-serif; cursor: pointer; }
.website-scope-presets__buttons button:hover { border-color: #24796d; color: #155c52; background: #f3fbf8; }
.website-scope-presets__buttons button[aria-pressed="true"] { border-color: #216f65; color: #fff; background: #216f65; box-shadow: 0 0.7rem 1.5rem rgba(25, 103, 92, 0.17); }
.website-scope-presets__buttons button:focus-visible { outline: 3px solid rgba(52, 114, 246, 0.26); outline-offset: 2px; }

.website-scope-layout { display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(21rem, 0.84fr); gap: clamp(1rem, 3vw, 2rem); align-items: start; }
.website-scope-form { display: grid; gap: 0.8rem; }
.website-scope-fieldset { min-width: 0; margin: 0; border: 1px solid rgba(6, 55, 79, 0.11); padding: clamp(1rem, 2.5vw, 1.35rem); background: #fff; box-shadow: 0 0.8rem 2rem rgba(8, 44, 61, 0.045); }
.website-scope-fieldset:first-child { border-top: 4px solid #26796e; }
.website-scope-fieldset--commercial { border-top: 4px solid #b68236; }
.website-scope-fieldset legend { display: inline-flex; gap: 0.55rem; align-items: center; width: auto; margin: 0 0 0.85rem; padding: 0; color: #153f52; font: 850 0.76rem/1.2 "Manrope", sans-serif; }
.website-scope-fieldset legend span { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; color: #fff; background: #174b5f; font: 800 0.5rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.website-scope-fieldset__intro { margin: -0.25rem 0 0.9rem; color: #657a84; font-size: 0.65rem; line-height: 1.55; }
.website-scope-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.9rem 0.75rem; }
.website-scope-fields > label { display: grid; min-width: 0; gap: 0.35rem; align-content: start; }
.website-scope-fields label > span:first-child { color: #1b4052; font-size: 0.63rem; font-weight: 800; line-height: 1.35; }
.website-scope-fields input, .website-scope-fields select { width: 100%; min-height: 2.9rem; border: 1px solid #cddade; border-radius: 0; padding: 0.65rem 0.7rem; color: #12394c; background: #fbfcfc; font: 750 0.68rem/1.2 "Manrope", sans-serif; }
.website-scope-fields select { padding-right: 2rem; }
.website-scope-fields input:focus, .website-scope-fields select:focus { border-color: #277f70; outline: 3px solid rgba(39, 127, 112, 0.13); }
.website-scope-fields input[aria-invalid="true"], .website-scope-fields select[aria-invalid="true"] { border-color: #aa503c; outline-color: rgba(170, 80, 60, 0.14); }
.website-scope-fields small { color: #71858e; font-size: 0.55rem; line-height: 1.5; }
.website-scope-money, .website-scope-percent { position: relative; display: block; }
.website-scope-money > b, .website-scope-percent > b { position: absolute; z-index: 1; top: 50%; left: 0.7rem; color: #956725; font-size: 0.68rem; transform: translateY(-50%); }
.website-scope-money input, .website-scope-percent input { padding-right: 3.8rem; padding-left: 1.65rem; }
.website-scope-money > em, .website-scope-percent > em { position: absolute; top: 50%; right: 0.65rem; color: #738892; font-size: 0.48rem; font-style: normal; font-weight: 750; transform: translateY(-50%); }
.website-scope-toggles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin-top: 0.9rem; }
.website-scope-toggles > label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.6rem; align-items: start; border: 1px solid #dbe4e5; padding: 0.75rem; background: #f8faf9; cursor: pointer; }
.website-scope-toggles > label:hover { border-color: #9fc7c0; background: #f3f9f7; }
.website-scope-toggles input { width: 1rem; height: 1rem; margin-top: 0.08rem; accent-color: #24796d; }
.website-scope-toggles input:focus-visible { outline: 3px solid rgba(52, 114, 246, 0.26); outline-offset: 2px; }
.website-scope-toggles span { display: grid; gap: 0.2rem; }
.website-scope-toggles b { color: #1c4555; font-size: 0.61rem; }
.website-scope-toggles small { color: #71858e; font-size: 0.54rem; line-height: 1.5; }
.website-scope-error { min-height: 1.15rem; margin: 0; color: #983d2d; font-size: 0.64rem; font-weight: 750; }
.website-scope-form__actions, .website-scope-result__actions { display: flex; flex-wrap: wrap; gap: 0.55rem; }

.website-scope-result { position: sticky; top: 7rem; display: grid; gap: 1rem; border: 1px solid rgba(5, 52, 78, 0.14); border-top: 5px solid #287f72; padding: clamp(1rem, 2.5vw, 1.4rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(6, 38, 57, 0.09); }
.website-scope-result__topline { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.website-scope-result__topline h2 { margin: 0.1rem 0 0; color: #11384c; font-size: clamp(1rem, 2vw, 1.35rem); }
.website-scope-result__badge { display: inline-flex; gap: 0.3rem; align-items: center; border: 1px solid #dce4e4; padding: 0.38rem 0.5rem; color: #607681; background: #f7faf9; font-size: 0.5rem; font-weight: 850; }
.website-scope-result__primary { display: grid; gap: 0.25rem; border-left: 4px solid #b98436; padding: 1rem; background: #fbf6ec; }
.website-scope-result__primary > span { color: #705e42; font-size: 0.58rem; font-weight: 800; }
.website-scope-result__primary strong { color: #825817; font: 850 clamp(1.7rem, 3.5vw, 2.35rem)/1 "Space Grotesk", sans-serif; letter-spacing: -0.04em; }
.website-scope-result__primary small { color: #7f725e; font-size: 0.53rem; }
.website-scope-result__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #dce5e6; }
.website-scope-result__metrics article { display: grid; min-width: 0; gap: 0.3rem; align-content: start; padding: 0.75rem 0.65rem; background: #f8faf9; }
.website-scope-result__metrics i { color: #237b6e; }
.website-scope-result__metrics span { min-height: 2.2em; color: #607680; font-size: 0.49rem; font-weight: 750; line-height: 1.25; }
.website-scope-result__metrics strong { color: #173e50; font: 800 0.76rem/1.2 "Manrope", sans-serif; overflow-wrap: anywhere; }
.website-scope-breakdown { display: grid; gap: 0.6rem; border-top: 1px solid #e0e8e9; padding-top: 0.85rem; }
.website-scope-breakdown__heading { display: flex; gap: 0.75rem; align-items: baseline; justify-content: space-between; }
.website-scope-breakdown h3 { margin: 0; color: #173f52; font-size: 0.7rem; }
.website-scope-breakdown__heading > strong { color: #6b7f88; font-size: 0.5rem; font-weight: 750; text-align: right; }
.website-scope-bar { display: flex; width: 100%; height: 0.65rem; overflow: hidden; background: #edf1f1; }
.website-scope-bar span { display: block; height: 100%; transition: width 220ms ease; }
.website-scope-bar [data-bar-phase-discovery], .website-scope-breakdown .is-discovery { background: #174c5f; }
.website-scope-bar [data-bar-phase-content], .website-scope-breakdown .is-content { background: #4b8d99; }
.website-scope-bar [data-bar-phase-design], .website-scope-breakdown .is-design { background: #b98436; }
.website-scope-bar [data-bar-phase-build], .website-scope-breakdown .is-build { background: #257c6f; }
.website-scope-bar [data-bar-phase-features], .website-scope-breakdown .is-features { background: #715f91; }
.website-scope-bar [data-bar-phase-quality], .website-scope-breakdown .is-quality { background: #c45f4b; }
.website-scope-bar [data-bar-phase-launch], .website-scope-breakdown .is-launch { background: #ddb661; }
.website-scope-breakdown ul { display: grid; gap: 0.3rem; margin: 0; padding: 0; list-style: none; }
.website-scope-breakdown li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.45rem; align-items: center; color: #607580; font-size: 0.54rem; }
.website-scope-breakdown li i { width: 0.45rem; height: 0.45rem; }
.website-scope-breakdown li strong { color: #284c5c; font-size: 0.56rem; font-variant-numeric: tabular-nums; }
.website-scope-result__range { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.6rem; border: 1px solid #dce6e5; padding: 0.7rem; background: #f7faf9; }
.website-scope-result__range > i { color: #9c6b28; }
.website-scope-result__range span { display: grid; gap: 0.2rem; }
.website-scope-result__range b { color: #244c5b; font-size: 0.57rem; }
.website-scope-result__range small { color: #71838b; font-size: 0.52rem; line-height: 1.45; }
.website-scope-result__footnote { margin: 0; border-top: 1px solid #e1e8e9; padding-top: 0.75rem; color: #6e8189; font-size: 0.53rem; line-height: 1.5; }
[data-website-scope-estimator][data-scope-state="invalid"] .website-scope-result__primary,
[data-website-scope-estimator][data-scope-state="invalid"] .website-scope-result__metrics,
[data-website-scope-estimator][data-scope-state="invalid"] .website-scope-breakdown,
[data-website-scope-estimator][data-scope-state="invalid"] .website-scope-result__range { opacity: 0.42; }

.website-scope-method { background: #fff; }
.website-scope-method__layout { display: grid; grid-template-columns: minmax(16rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.website-scope-method h2, .website-scope-faq h2, .website-scope-next h2 { color: #0b3047; }
.website-scope-method__intro > p:last-of-type { color: #5b727e; line-height: 1.7; }
.website-scope-method__formula { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.4rem; align-items: center; margin-top: 1.1rem; }
.website-scope-method__formula span { display: grid; min-height: 4.5rem; place-items: center; align-content: center; gap: 0.35rem; border: 1px solid #d9e4e4; color: #1d5960; background: #f7faf9; text-align: center; }
.website-scope-method__formula span:nth-of-type(2) { color: #825817; background: #fbf6ec; }
.website-scope-method__formula i { color: #2b8175; }
.website-scope-method__formula > i { color: #b48135; }
.website-scope-method__formula b { font-size: 0.54rem; }
.website-scope-method__table-wrap { overflow-x: auto; border: 1px solid #dbe5e5; box-shadow: 0 1rem 2.5rem rgba(7, 42, 58, 0.06); }
.website-scope-method table { width: 100%; border-collapse: collapse; color: #2e5361; background: #fff; font-size: 0.62rem; }
.website-scope-method caption { padding: 0.75rem 0.9rem; color: #5e747e; background: #f3f7f6; font-size: 0.55rem; text-align: left; caption-side: top; }
.website-scope-method th, .website-scope-method td { border-bottom: 1px solid #e3eaea; padding: 0.62rem 0.8rem; text-align: left; }
.website-scope-method th { color: #fff; background: #17495b; font-size: 0.55rem; letter-spacing: 0.04em; text-transform: uppercase; }
.website-scope-method td:last-child { color: #76531f; font-weight: 800; font-variant-numeric: tabular-nums; }
.website-scope-method tbody tr:last-child td { border-bottom: 0; }

.website-scope-boundaries__layout { display: grid; grid-template-columns: minmax(15rem, 0.55fr) minmax(0, 1.45fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.website-scope-boundaries h2 { color: #f0faff; }
.website-scope-boundaries__layout > div:first-child > p:last-child { color: #91aab5; line-height: 1.65; }
.website-scope-boundaries__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(102, 218, 241, 0.14); }
.website-scope-boundaries__grid article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; padding: 1rem; background: rgba(4, 18, 30, 0.56); }
.website-scope-boundaries__grid article > i { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; color: #062234; background: #67d4bd; }
.website-scope-boundaries__grid article:nth-child(even) > i { background: #e5b25e; }
.website-scope-boundaries__grid h3 { margin: 0; color: #eaf6f8; font-size: 0.72rem; }
.website-scope-boundaries__grid p { margin: 0.3rem 0 0; color: #91aab5; font-size: 0.63rem; line-height: 1.6; }
.website-scope-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.website-scope-faq__items { display: grid; gap: 0.55rem; }
.website-scope-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.website-scope-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.website-scope-faq__items summary::-webkit-details-marker { display: none; }
.website-scope-faq__items summary i { color: #277f70; transition: transform 160ms ease; }
.website-scope-faq__items details[open] summary i { transform: rotate(45deg); }
.website-scope-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }
.website-scope-next { background: #fff; }
.website-scope-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #287f72; padding: clamp(1.2rem, 3vw, 2rem); background: #eff8f5; }
.website-scope-next__layout p:not(.premium-eyebrow) { max-width: 69ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

@media (max-width: 1099.98px) {
  .website-scope-layout, .website-scope-boundaries__layout { grid-template-columns: minmax(0, 1fr); }
  .website-scope-result { position: static; }
}
@media (max-width: 991.98px) {
  .website-scope-hero .ats-page-hero__grid, .website-scope-presets, .website-scope-method__layout, .website-scope-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .website-scope-presets { align-items: start; }
}
@media (max-width: 767.98px) {
  .website-scope-map__canvas { grid-template-columns: minmax(0, 1fr); }
  .website-scope-map__route { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .website-scope-map__route li { grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center; }
  .website-scope-fields, .website-scope-toggles, .website-scope-presets__buttons, .website-scope-boundaries__grid { grid-template-columns: minmax(0, 1fr); }
  .website-scope-result__metrics { grid-template-columns: minmax(0, 1fr); }
  .website-scope-result__metrics article { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; }
  .website-scope-result__metrics span { min-height: auto; }
  .website-scope-next__layout { grid-template-columns: minmax(0, 1fr); }
  .website-scope-next__layout .premium-btn { justify-self: start; }
}
@media (max-width: 575.98px) {
  .website-scope-map__footer, .website-scope-result__topline, .website-scope-breakdown__heading { align-items: flex-start; flex-direction: column; }
  .website-scope-map__route { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .website-scope-form__actions, .website-scope-result__actions { align-items: stretch; flex-direction: column; }
  .website-scope-form__actions .tool-action, .website-scope-result__actions .tool-action { justify-content: center; width: 100%; }
  .website-scope-method__formula { grid-template-columns: minmax(0, 1fr); }
  .website-scope-method__formula > i { justify-self: center; transform: rotate(90deg); }
}
@media (prefers-reduced-motion: reduce) {
  .website-scope-bar span, .website-scope-faq__items summary i { transition: none; }
}
@media print {
  .website-scope-hero, .website-scope-presets, .website-scope-form, .website-scope-method, .website-scope-boundaries, .website-scope-faq, .website-scope-next, .website-scope-result__actions { display: none !important; }
  .website-scope-section { padding: 0; background: #fff !important; }
  .website-scope-layout { display: block; }
  .website-scope-result { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .website-scope-breakdown, .website-scope-result__metrics { break-inside: avoid; }
}

/* Shopify vs WooCommerce fit finder */
.platform-fit-hero { overflow: hidden; }
.platform-fit-map { min-height: 20rem; }
.platform-fit-map__canvas { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 6.5rem minmax(0, 1fr); gap: 0.85rem; align-items: center; min-height: 15rem; padding: clamp(1.15rem, 3vw, 2rem); background: radial-gradient(circle at 50% 50%, rgba(102, 214, 189, 0.12), transparent 9rem), linear-gradient(145deg, rgba(9, 39, 55, 0.95), rgba(5, 24, 37, 0.88)); }
.platform-fit-map__platform { position: relative; display: grid; min-height: 9rem; align-content: center; justify-items: center; border: 1px solid rgba(214, 236, 242, 0.13); padding: 1rem 0.6rem; text-align: center; }
.platform-fit-map__platform::after { position: absolute; top: 50%; width: 0.85rem; height: 1px; background: rgba(139, 191, 200, 0.55); content: ""; }
.platform-fit-map__platform--shopify { background: linear-gradient(145deg, rgba(36, 126, 104, 0.26), rgba(6, 31, 43, 0.7)); box-shadow: inset 0 3px #65d1b8; }
.platform-fit-map__platform--shopify::after { right: -0.85rem; }
.platform-fit-map__platform--woo { background: linear-gradient(145deg, rgba(185, 128, 49, 0.24), rgba(6, 31, 43, 0.7)); box-shadow: inset 0 3px #e2b15e; }
.platform-fit-map__platform--woo::after { left: -0.85rem; }
.platform-fit-map__platform > span { display: grid; width: 3.2rem; height: 3.2rem; place-items: center; margin-bottom: 0.8rem; color: #082536; background: #68d5bd; font-size: 1rem; font-weight: 950; }
.platform-fit-map__platform--woo > span { background: #e5b25e; }
.platform-fit-map__platform strong { color: #effafd; font-size: 0.75rem; }
.platform-fit-map__platform small { margin-top: 0.25rem; color: #83a3af; font-size: 0.52rem; }
.platform-fit-map__signals { position: relative; display: grid; gap: 0.45rem; z-index: 1; }
.platform-fit-map__signals::before { position: absolute; top: -1.15rem; bottom: -1.15rem; left: 50%; width: 1px; background: repeating-linear-gradient(180deg, #4f8994 0 0.3rem, transparent 0.3rem 0.55rem); content: ""; z-index: -1; }
.platform-fit-map__signals span { display: flex; gap: 0.35rem; align-items: center; justify-content: center; border: 1px solid rgba(142, 194, 202, 0.22); padding: 0.48rem 0.35rem; color: #bdd2d9; background: #0c3141; font-size: 0.48rem; font-weight: 800; }
.platform-fit-map__signals i { color: #6dd9c0; }
.platform-fit-map__footer { display: flex; gap: 0.65rem; justify-content: space-between; border-top: 1px solid rgba(103, 214, 239, 0.14); padding: 0.8rem 1.2rem; color: #7799a7; font-size: 0.48rem; font-weight: 850; letter-spacing: 0.06em; }

.platform-fit-section { scroll-margin-top: 7rem; background: radial-gradient(circle at 94% 8%, rgba(44, 140, 115, 0.09), transparent 24rem), #f5f8f8; }
.platform-fit-presets { display: grid; grid-template-columns: minmax(16rem, 0.7fr) minmax(0, 1.3fr); gap: 1.5rem; align-items: end; margin-bottom: 1.5rem; }
.platform-fit-presets h2 { color: #0b3046; }
.platform-fit-presets p:not(.premium-eyebrow) { margin-bottom: 0; color: #5b717c; line-height: 1.65; }
.platform-fit-presets__buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; border: 1px solid #d2dfe0; background: #d2dfe0; }
.platform-fit-presets__buttons button { min-height: 3rem; border: 0; padding: 0.65rem 0.8rem; color: #345d6c; background: #fff; font-size: 0.59rem; font-weight: 850; cursor: pointer; transition: color 160ms ease, background 160ms ease, box-shadow 160ms ease; }
.platform-fit-presets__buttons button:hover, .platform-fit-presets__buttons button:focus-visible { color: #0a4f43; background: #eef8f5; }
.platform-fit-presets__buttons button[aria-pressed="true"] { color: #fff; background: #1e755f; box-shadow: inset 0 -3px #75dcc4; }
.platform-fit-layout { display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(20rem, 0.78fr); gap: clamp(1.3rem, 3vw, 2.3rem); align-items: start; }
.platform-fit-form { display: grid; gap: 1rem; }
.platform-fit-form fieldset { margin: 0; border: 1px solid rgba(5, 52, 78, 0.1); padding: clamp(1rem, 3vw, 1.55rem); background: #fff; box-shadow: 0 1rem 2.4rem rgba(6, 38, 57, 0.055); }
.platform-fit-form legend { display: inline-flex; gap: 0.65rem; align-items: center; padding: 0 0.55rem 0 0; color: #123f53; font-size: 0.82rem; font-weight: 850; }
.platform-fit-form legend span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: #237963; font-size: 0.53rem; }
.platform-fit-form fieldset > p { margin: 0 0 1rem; color: #667b84; font-size: 0.66rem; line-height: 1.55; }
.platform-fit-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.platform-fit-field { display: grid; align-content: start; border-top: 3px solid #2b8974; padding: 0.85rem; background: #f4f8f7; }
.platform-fit-field > label:first-child { margin-bottom: 0.42rem; color: #234e60; font-size: 0.62rem; font-weight: 850; }
.platform-fit-field select { width: 100%; min-height: 2.8rem; border: 1px solid #cbdadb; border-radius: 0; padding: 0.58rem 2.1rem 0.58rem 0.65rem; color: #173f51; background-color: #fff; font-size: 0.6rem; font-weight: 700; }
.platform-fit-field select:hover { border-color: #7baba5; }
.platform-fit-field select:focus-visible { border-color: #19745f; outline: 3px solid rgba(46, 146, 121, 0.2); outline-offset: 1px; }
.platform-fit-field > small { min-height: 2.35rem; margin-top: 0.45rem; color: #70828a; font-size: 0.53rem; line-height: 1.45; }
.platform-fit-priority { display: flex; gap: 0.48rem; align-items: center; border-top: 1px solid #dce6e5; margin-top: 0.55rem; padding-top: 0.62rem; color: #406575; font-size: 0.54rem; font-weight: 800; cursor: pointer; }
.platform-fit-priority input { flex: 0 0 auto; width: 1rem; height: 1rem; margin: 0; accent-color: #227961; }
.platform-fit-priority:has(input:checked) { color: #15614f; }
.platform-fit-priority:has(input:checked)::after { margin-left: auto; color: #9a681d; content: "1.5×"; font: 850 0.5rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.platform-fit-error { min-height: 1rem; margin: 0; color: #a44736; font-size: 0.62rem; font-weight: 750; }
.platform-fit-form__actions, .platform-fit-result__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.platform-fit-result { position: sticky; top: 6.7rem; border: 1px solid rgba(5, 52, 78, 0.12); border-top: 4px solid #cc9a46; padding: clamp(1.1rem, 3vw, 1.55rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(5, 35, 51, 0.1); }
[data-fit-state="shopify"] .platform-fit-result { border-top-color: #27846d; }
[data-fit-state="woo"] .platform-fit-result { border-top-color: #d49a3e; }
.platform-fit-result:focus { outline: none; }
.platform-fit-result:focus-visible { outline: 3px solid rgba(40, 132, 109, 0.26); outline-offset: 4px; }
.platform-fit-result__topline { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.platform-fit-result__topline h2 { margin: 0; color: #0b3046; font-size: clamp(1.12rem, 2.3vw, 1.55rem); line-height: 1.12; }
.platform-fit-result__badge { flex: 0 0 auto; border: 1px solid #d7c08e; padding: 0.38rem 0.52rem; color: #77531e; background: #fbf5e8; font-size: 0.49rem; font-weight: 900; text-transform: uppercase; }
[data-fit-state="shopify"] .platform-fit-result__badge { border-color: #a7d2c5; color: #17604f; background: #edf8f4; }
.platform-fit-result__detail { margin: 0.85rem 0 1rem; color: #566e79; font-size: 0.65rem; line-height: 1.62; }
.platform-fit-scorecard { display: grid; gap: 0.75rem; border: 1px solid #dce5e5; padding: 0.8rem; background: #f6f9f9; }
.platform-fit-score > div:first-child { display: flex; align-items: baseline; justify-content: space-between; }
.platform-fit-score span { color: #315b6a; font-size: 0.58rem; font-weight: 850; }
.platform-fit-score strong { color: #1d7963; font: 900 0.85rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.platform-fit-score--woo strong { color: #a46c1e; }
.platform-fit-score__track { height: 0.45rem; margin-top: 0.35rem; overflow: hidden; background: #dfe8e8; }
.platform-fit-score__track i { display: block; width: 50%; height: 100%; background: linear-gradient(90deg, #1d6e5b, #68d4bc); transition: width 260ms ease; }
.platform-fit-score--woo .platform-fit-score__track i { background: linear-gradient(90deg, #b87827, #efc878); }
.platform-fit-result__section { margin-top: 1rem; }
.platform-fit-result__section h3 { margin: 0 0 0.55rem; color: #214d5e; font-size: 0.65rem; }
.platform-fit-result__section ul, .platform-fit-checks ol { display: grid; gap: 1px; margin: 0; padding: 0; background: #dce6e6; list-style: none; }
.platform-fit-checks ol { counter-reset: platform-fit-check; }
.platform-fit-result__section li, .platform-fit-checks li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.6rem; align-items: start; padding: 0.65rem 0.7rem; background: #f7faf9; }
.platform-fit-result__section li > i { color: #27826d; font-size: 0.62rem; }
.platform-fit-result__section li span { display: grid; }
.platform-fit-result__section li b { color: #365c6b; font-size: 0.55rem; line-height: 1.4; }
.platform-fit-result__section li small { margin-top: 0.18rem; color: #73868e; font-size: 0.51rem; line-height: 1.45; }
.platform-fit-result__section--tradeoff li { background: #fcf9f2; }
.platform-fit-result__section--tradeoff li > i { color: #b17b2d; }
.platform-fit-result__actions { margin-top: 1rem; }
.platform-fit-result__footnote { margin: 0.6rem 0 0; color: #75868d; font-size: 0.51rem; line-height: 1.5; }

.platform-fit-checks { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; margin-top: clamp(2.2rem, 6vw, 4.5rem); border-top: 1px solid #d8e3e3; padding-top: clamp(1.7rem, 4vw, 3rem); }
.platform-fit-checks h2 { color: #0b3046; }
.platform-fit-checks > div > p:last-child { color: #5a717c; line-height: 1.65; }
.platform-fit-checks li { position: relative; min-height: 3.5rem; align-items: center; padding-left: 3.8rem; color: #365c6b; background: #fff; counter-increment: platform-fit-check; font-size: 0.61rem; font-weight: 700; line-height: 1.55; }
.platform-fit-checks li::before { position: absolute; left: 0; display: grid; width: 3rem; align-self: stretch; place-items: center; color: #fff; background: #174a5d; content: counter(platform-fit-check, decimal-leading-zero); font: 850 0.56rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.platform-fit-checks li > i { display: none; }
.platform-fit-checks li span { display: contents; }
.platform-fit-checks li b { font-size: inherit; font-weight: inherit; }

.platform-fit-method { background: #fff; }
.platform-fit-method__layout { display: grid; grid-template-columns: minmax(16rem, 0.65fr) minmax(0, 1.35fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.platform-fit-method h2 { color: #0b3046; }
.platform-fit-method__layout > div:first-child > p:not(.premium-eyebrow) { color: #586f7b; line-height: 1.7; }
.platform-fit-formula { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.55rem; align-items: center; margin-top: 1.25rem; }
.platform-fit-formula span { display: grid; min-height: 4rem; align-content: center; border-top: 3px solid #29846e; padding: 0.6rem; background: #eff7f5; text-align: center; }
.platform-fit-formula b { color: #175a4c; font: 900 0.95rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }
.platform-fit-formula small { margin-top: 0.25rem; color: #617882; font-size: 0.48rem; }
.platform-fit-formula > i { color: #8aa4aa; }
.platform-fit-method__matrix { border-top: 4px solid #dda54b; background: #f6f9f9; box-shadow: 0 1rem 2.5rem rgba(6, 38, 57, 0.07); }
.platform-fit-method__head, .platform-fit-method__matrix dl > div { display: grid; grid-template-columns: minmax(8rem, 0.65fr) minmax(0, 1.35fr); gap: 0.8rem; padding: 0.68rem 0.85rem; }
.platform-fit-method__head { color: #fff; background: #17495b; font-size: 0.5rem; font-weight: 850; letter-spacing: 0.04em; text-transform: uppercase; }
.platform-fit-method__matrix dl { margin: 0; }
.platform-fit-method__matrix dl > div { border-bottom: 1px solid #dfe8e8; background: #fff; }
.platform-fit-method__matrix dl > div:last-child { border-bottom: 0; }
.platform-fit-method__matrix dt { color: #286372; font-size: 0.58rem; font-weight: 850; }
.platform-fit-method__matrix dd { margin: 0; color: #637780; font-size: 0.58rem; }

.platform-fit-basis { background: radial-gradient(circle at 10% 85%, rgba(70, 180, 151, 0.09), transparent 23rem), #081e2d; }
.platform-fit-basis__layout { display: grid; grid-template-columns: minmax(15rem, 0.55fr) minmax(0, 1.45fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.platform-fit-basis h2 { color: #f0faff; }
.platform-fit-basis__layout > div:first-child > p:last-child { color: #93abb5; line-height: 1.7; }
.platform-fit-basis__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: rgba(111, 191, 190, 0.16); }
.platform-fit-basis__cards article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.85rem; padding: 1rem; background: rgba(5, 26, 39, 0.78); }
.platform-fit-basis__mark { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; color: #072537; background: #67d4bd; font-size: 0.75rem; font-weight: 950; }
.platform-fit-basis__mark--woo { background: #e5b25e; }
.platform-fit-basis__cards h3 { margin: 0; color: #edf8fb; font-size: 0.75rem; }
.platform-fit-basis__cards p { color: #92aab4; font-size: 0.61rem; line-height: 1.62; }
.platform-fit-basis__cards a { display: flex; gap: 0.4rem; align-items: baseline; margin-top: 0.45rem; color: #6edac2; font-size: 0.54rem; font-weight: 800; }
.platform-fit-basis__cards article:last-child a { color: #efc571; }
.platform-fit-basis__cards a:hover, .platform-fit-basis__cards a:focus-visible { color: #fff; }
.platform-fit-basis__note { grid-column: 1 / -1; margin: 0; border-left: 3px solid #d8a04a; padding: 0.75rem 0.9rem; color: #8fa8b2; background: rgba(5, 24, 36, 0.55); font-size: 0.54rem; line-height: 1.6; }

.platform-fit-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.platform-fit-faq__items { display: grid; gap: 0.55rem; }
.platform-fit-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.platform-fit-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.78rem; font-weight: 800; list-style: none; }
.platform-fit-faq__items summary::-webkit-details-marker { display: none; }
.platform-fit-faq__items summary i { color: #27816d; transition: transform 160ms ease; }
.platform-fit-faq__items details[open] summary i { transform: rotate(45deg); }
.platform-fit-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.73rem; line-height: 1.65; }
.platform-fit-next { background: #fff; }
.platform-fit-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #287f72; padding: clamp(1.2rem, 3vw, 2rem); background: #eff8f5; }
.platform-fit-next__layout p:not(.premium-eyebrow) { max-width: 69ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

@media (max-width: 1099.98px) {
  .platform-fit-layout, .platform-fit-basis__layout { grid-template-columns: minmax(0, 1fr); }
  .platform-fit-result { position: static; }
}
@media (max-width: 991.98px) {
  .platform-fit-hero .ats-page-hero__grid, .platform-fit-presets, .platform-fit-checks, .platform-fit-method__layout, .platform-fit-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .platform-fit-presets { align-items: start; }
}
@media (max-width: 767.98px) {
  .platform-fit-fields, .platform-fit-basis__cards { grid-template-columns: minmax(0, 1fr); }
  .platform-fit-next__layout { grid-template-columns: minmax(0, 1fr); }
  .platform-fit-next__layout .premium-btn { justify-self: start; }
}
@media (max-width: 575.98px) {
  .platform-fit-map__canvas { grid-template-columns: minmax(0, 1fr); }
  .platform-fit-map__platform { min-height: 6.7rem; }
  .platform-fit-map__platform::after, .platform-fit-map__signals::before { display: none; }
  .platform-fit-map__signals { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .platform-fit-map__signals span { flex-direction: column; }
  .platform-fit-map__footer, .platform-fit-result__topline { align-items: flex-start; flex-direction: column; }
  .platform-fit-presets__buttons, .platform-fit-formula { grid-template-columns: minmax(0, 1fr); }
  .platform-fit-formula > i { justify-self: center; transform: rotate(90deg); }
  .platform-fit-form__actions, .platform-fit-result__actions { align-items: stretch; flex-direction: column; }
  .platform-fit-form__actions .tool-action, .platform-fit-result__actions .tool-action { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .platform-fit-presets__buttons button, .platform-fit-score__track i, .platform-fit-faq__items summary i { transition: none; }
}
@media print {
  .platform-fit-hero, .platform-fit-presets, .platform-fit-form, .platform-fit-method, .platform-fit-basis, .platform-fit-faq, .platform-fit-next, .platform-fit-result__actions { display: none !important; }
  .platform-fit-section { padding: 0; background: #fff !important; }
  .platform-fit-layout { display: block; }
  .platform-fit-result { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .platform-fit-checks { display: block; margin-top: 1.2rem; }
  .platform-fit-checks ol { margin-top: 0.8rem; }
  .platform-fit-scorecard, .platform-fit-result__section, .platform-fit-checks { break-inside: avoid; }
}

/* Server sizing conversation starter */
.server-sizing-hero { background: radial-gradient(circle at 76% 26%, rgba(79, 195, 180, 0.12), transparent 22rem), linear-gradient(130deg, #071d2b 0%, #0b2e43 62%, #0d3b4d 100%); }
.server-sizing-hero .ats-page-hero__lead { max-width: 66ch; }
.sizing-console { overflow: hidden; background: #061a28; }
.sizing-console__body { display: grid; gap: 1rem; padding: clamp(1rem, 3vw, 1.6rem); background: linear-gradient(rgba(45, 119, 132, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(45, 119, 132, 0.08) 1px, transparent 1px); background-size: 1.5rem 1.5rem; }
.sizing-console__signal { display: grid; grid-template-columns: 5rem repeat(5, minmax(0, 1fr)); gap: 0.35rem; align-items: end; min-height: 3rem; border-bottom: 1px solid rgba(105, 216, 196, 0.18); padding-bottom: 0.55rem; }
.sizing-console__signal span { align-self: center; color: #7edbc8; font: 800 0.48rem/1 IBM Plex Mono, monospace; letter-spacing: 0.09em; }
.sizing-console__signal i { display: block; height: 28%; background: #3ba88f; box-shadow: 0 0 0.8rem rgba(75, 210, 181, 0.22); }
.sizing-console__signal i:nth-child(3) { height: 55%; }
.sizing-console__signal i:nth-child(4) { height: 86%; }
.sizing-console__signal i:nth-child(5) { height: 68%; }
.sizing-console__signal i:nth-child(6) { height: 96%; background: #e1ad55; }
.sizing-console__signal--capacity i { height: 56%; background: #dca84f; }
.sizing-console__signal--capacity i:nth-child(3) { height: 66%; }
.sizing-console__signal--capacity i:nth-child(4) { height: 76%; }
.sizing-console__signal--capacity i:nth-child(5) { height: 86%; }
.sizing-console__signal--capacity i:nth-child(6) { height: 100%; background: #6bd6bf; }
.sizing-console__rack { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(122, 199, 193, 0.16); }
.sizing-console__rack span { display: grid; min-height: 6.4rem; place-items: center; align-content: center; padding: 0.65rem; color: #ebf8f8; background: rgba(5, 28, 42, 0.92); text-align: center; }
.sizing-console__rack i { margin-bottom: 0.5rem; color: #65d4bd; font-size: 1.05rem; }
.sizing-console__rack b { font: 850 0.52rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.04em; }
.sizing-console__rack small { margin-top: 0.3rem; color: #809ba5; font-size: 0.48rem; }
.sizing-console__footer { display: flex; gap: 0.7rem; justify-content: space-between; border-top: 1px solid rgba(110, 202, 194, 0.13); padding: 0.72rem 1rem; color: #74939e; background: #051722; font: 750 0.42rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.06em; }

.server-sizing-section { background: linear-gradient(180deg, #f2f7f6, #edf4f4); }
.server-sizing-presets { display: grid; grid-template-columns: minmax(15rem, 0.85fr) minmax(20rem, 1.15fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.server-sizing-presets h2 { color: #0b3046; }
.server-sizing-presets p:last-child { max-width: 62ch; color: #5d737d; line-height: 1.65; }
.server-sizing-presets__buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.server-sizing-presets__buttons button { min-height: 3rem; border: 1px solid #cad9d9; padding: 0.6rem; color: #285362; background: #fff; font-size: 0.57rem; font-weight: 850; transition: border-color 160ms ease, color 160ms ease, background 160ms ease; }
.server-sizing-presets__buttons button:hover, .server-sizing-presets__buttons button:focus-visible, .server-sizing-presets__buttons button[aria-pressed="true"] { border-color: #287c6a; color: #145a4c; background: #eaf6f2; }
.server-sizing-presets__buttons button:focus-visible { outline: 3px solid rgba(40, 124, 106, 0.2); outline-offset: 2px; }
.server-sizing-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.8fr); gap: clamp(1.2rem, 3vw, 2.2rem); align-items: start; }
.server-sizing-form { display: grid; gap: 1rem; }
.server-sizing-form fieldset { min-width: 0; border: 1px solid rgba(13, 63, 82, 0.12); margin: 0; padding: clamp(1rem, 3vw, 1.4rem); background: #fff; box-shadow: 0 0.7rem 2rem rgba(8, 48, 62, 0.045); }
.server-sizing-form legend { display: flex; gap: 0.7rem; align-items: center; margin: 0 0 0.7rem; padding: 0; color: #123e52; font-size: 0.8rem; font-weight: 850; }
.server-sizing-form legend span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: #1f7564; font: 850 0.51rem/1 IBM Plex Mono, monospace; }
.server-sizing-form fieldset > p { margin: 0 0 1rem; color: #667b84; font-size: 0.64rem; line-height: 1.58; }
.server-sizing-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.server-sizing-field { display: grid; align-content: start; border-top: 3px solid #27806d; padding: 0.85rem; background: #f3f8f7; }
.server-sizing-field--wide { grid-column: 1 / -1; }
.server-sizing-field > label { margin-bottom: 0.42rem; color: #234e60; font-size: 0.61rem; font-weight: 850; }
.server-sizing-field select, .server-sizing-field input { width: 100%; min-height: 2.8rem; border: 1px solid #cbdadb; border-radius: 0; padding: 0.58rem 0.65rem; color: #173f51; background-color: #fff; font-size: 0.61rem; font-weight: 700; }
.server-sizing-field select { padding-right: 2rem; }
.server-sizing-field select:hover, .server-sizing-field input:hover { border-color: #7baba5; }
.server-sizing-field select:focus-visible, .server-sizing-field input:focus-visible { border-color: #19745f; outline: 3px solid rgba(46, 146, 121, 0.2); outline-offset: 1px; }
.server-sizing-field > small { min-height: 2.3rem; margin-top: 0.45rem; color: #70828a; font-size: 0.52rem; line-height: 1.45; }
.server-sizing-input { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.server-sizing-input input { min-width: 0; }
.server-sizing-input span { display: grid; min-width: 3.4rem; place-items: center; border: 1px solid #cbdadb; border-left: 0; padding: 0 0.5rem; color: #416675; background: #e8f0ef; font: 800 0.5rem/1 IBM Plex Mono, monospace; }
.server-sizing-specials { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 1rem; background: #dce7e5; }
.server-sizing-specials > p { grid-column: 1 / -1; margin: 0; padding: 0.65rem 0.8rem; color: #fff; background: #17495b; font-size: 0.55rem; font-weight: 850; }
.server-sizing-specials label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; min-height: 4rem; padding: 0.75rem; background: #f5f9f8; cursor: pointer; }
.server-sizing-specials input { width: 1rem; height: 1rem; margin: 0.1rem 0 0; accent-color: #227961; }
.server-sizing-specials label:has(input:checked) { background: #e8f5f1; }
.server-sizing-specials span { display: grid; }
.server-sizing-specials b { color: #315b6a; font-size: 0.55rem; }
.server-sizing-specials small { margin-top: 0.2rem; color: #71848b; font-size: 0.49rem; line-height: 1.4; }
.server-sizing-error { min-height: 1rem; margin: 0; color: #a44736; font-size: 0.61rem; font-weight: 750; }
.server-sizing-form__actions, .server-sizing-result__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.server-sizing-result { position: sticky; top: 6.7rem; border: 1px solid rgba(5, 52, 78, 0.12); border-top: 4px solid #2c8370; padding: clamp(1.05rem, 3vw, 1.45rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(5, 35, 51, 0.1); }
[data-sizing-state="demanding"] .server-sizing-result { border-top-color: #d19a42; }
[data-sizing-state="review"] .server-sizing-result { border-top-color: #bd6c4f; }
.server-sizing-result:focus { outline: none; }
.server-sizing-result:focus-visible { outline: 3px solid rgba(40, 132, 109, 0.26); outline-offset: 4px; }
.server-sizing-result__topline { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.server-sizing-result__topline h2 { margin: 0; color: #0b3046; font-size: clamp(1.08rem, 2.2vw, 1.45rem); line-height: 1.12; }
.server-sizing-result__badge { flex: 0 0 auto; max-width: 9rem; border: 1px solid #a7d2c5; padding: 0.38rem 0.52rem; color: #17604f; background: #edf8f4; font-size: 0.47rem; font-weight: 900; text-align: center; text-transform: uppercase; }
[data-sizing-state="demanding"] .server-sizing-result__badge { border-color: #ddc18c; color: #79541d; background: #fbf5e9; }
[data-sizing-state="review"] .server-sizing-result__badge { border-color: #deb2a3; color: #854630; background: #fcf0ec; }
.server-sizing-result__detail { margin: 0.85rem 0 1rem; color: #566e79; font-size: 0.64rem; line-height: 1.62; }
.server-sizing-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #dce6e6; }
.server-sizing-summary article { display: grid; min-width: 0; align-content: start; padding: 0.7rem; background: #f4f8f7; }
.server-sizing-summary span { color: #57707a; font-size: 0.46rem; font-weight: 800; text-transform: uppercase; }
.server-sizing-summary strong { overflow-wrap: anywhere; margin: 0.32rem 0 0.25rem; color: #196452; font: 900 0.76rem/1.1 IBM Plex Mono, monospace; }
.server-sizing-summary small { color: #7b8d93; font-size: 0.44rem; line-height: 1.35; }
.server-sizing-result__section { margin-top: 1rem; }
.server-sizing-result__section h3 { margin: 0 0 0.55rem; color: #214d5e; font-size: 0.64rem; }
.server-sizing-result__section ul { display: grid; gap: 1px; margin: 0; padding: 0; background: #dce6e6; list-style: none; }
.server-sizing-result__section li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.6rem; align-items: start; padding: 0.65rem 0.7rem; background: #f7faf9; }
.server-sizing-result__section li > i { color: #27826d; font-size: 0.61rem; }
.server-sizing-result__section li span { display: grid; color: #476571; font-size: 0.54rem; line-height: 1.5; }
.server-sizing-result__section li b { color: #315866; font-size: 0.55rem; line-height: 1.4; }
.server-sizing-result__section li small { margin-top: 0.18rem; color: #73868e; font-size: 0.5rem; line-height: 1.45; }
.server-sizing-result__section--assumptions li { background: #fcf9f2; }
.server-sizing-result__section--assumptions li > i { color: #aa7429; }
.server-sizing-result__actions { margin-top: 1rem; }
.server-sizing-result__footnote { margin: 0.6rem 0 0; color: #75868d; font-size: 0.5rem; line-height: 1.5; }

.server-sizing-questions { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; margin-top: clamp(2.2rem, 6vw, 4.5rem); border-top: 1px solid #d8e3e3; padding-top: clamp(1.7rem, 4vw, 3rem); }
.server-sizing-questions h2 { color: #0b3046; }
.server-sizing-questions > div > p:last-child { color: #5a717c; line-height: 1.65; }
.server-sizing-questions ol { display: grid; gap: 1px; margin: 0; padding: 0; background: #dce6e6; counter-reset: sizing-question; list-style: none; }
.server-sizing-questions li { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); min-height: 3.5rem; align-items: center; padding: 0.68rem 0.75rem 0.68rem 3.9rem; color: #365c6b; background: #fff; counter-increment: sizing-question; font-size: 0.59rem; font-weight: 700; line-height: 1.55; }
.server-sizing-questions li::before { position: absolute; left: 0; display: grid; width: 3rem; align-self: stretch; place-items: center; color: #fff; background: #174a5d; content: counter(sizing-question, decimal-leading-zero); font: 850 0.55rem/1 IBM Plex Mono, monospace; }
.server-sizing-questions li > i { display: none; }

.server-sizing-method { background: #fff; }
.server-sizing-method__layout { display: grid; grid-template-columns: minmax(16rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.server-sizing-method h2 { color: #0b3046; }
.server-sizing-method__layout > div:first-child > p:not(.premium-eyebrow) { color: #586f7b; line-height: 1.7; }
.server-sizing-equation { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.45rem; align-items: center; margin-top: 1.2rem; }
.server-sizing-equation span { display: grid; min-height: 4.1rem; align-content: center; border-top: 3px solid #29846e; padding: 0.55rem; background: #eff7f5; text-align: center; }
.server-sizing-equation b { color: #175a4c; font-size: 0.56rem; }
.server-sizing-equation small { margin-top: 0.25rem; color: #667c84; font-size: 0.46rem; }
.server-sizing-equation > i { color: #8aa4aa; font-size: 0.55rem; }
.server-sizing-method__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; border-top: 4px solid #dda54b; background: #dce6e6; box-shadow: 0 1rem 2.5rem rgba(6, 38, 57, 0.07); }
.server-sizing-method__grid article { min-height: 9rem; padding: 1rem; background: #f7faf9; }
.server-sizing-method__grid span { color: #27816d; font: 900 0.58rem/1 IBM Plex Mono, monospace; }
.server-sizing-method__grid h3 { margin: 0.55rem 0 0.35rem; color: #204e5e; font-size: 0.73rem; }
.server-sizing-method__grid p { margin: 0; color: #657a82; font-size: 0.57rem; line-height: 1.6; }

.server-sizing-basis { background: radial-gradient(circle at 10% 85%, rgba(70, 180, 151, 0.09), transparent 23rem), #081e2d; }
.server-sizing-basis__layout { display: grid; grid-template-columns: minmax(15rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.server-sizing-basis h2 { color: #f0faff; }
.server-sizing-basis__layout > div:first-child > p:last-child { color: #93abb5; line-height: 1.7; }
.server-sizing-basis__links { display: grid; gap: 1px; background: rgba(111, 191, 190, 0.16); }
.server-sizing-basis__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; padding: 1rem; color: #edf8fb; background: rgba(5, 26, 39, 0.78); }
.server-sizing-basis__links a > i:first-child { display: grid; width: 2.7rem; height: 2.7rem; place-items: center; color: #09293a; background: #68d4bd; }
.server-sizing-basis__links a > i:last-child { color: #68d4bd; }
.server-sizing-basis__links span { display: grid; }
.server-sizing-basis__links strong { font-size: 0.67rem; }
.server-sizing-basis__links small { margin-top: 0.25rem; color: #90a9b3; font-size: 0.53rem; line-height: 1.5; }
.server-sizing-basis__links a:hover, .server-sizing-basis__links a:focus-visible { background: rgba(16, 54, 69, 0.92); }

.server-sizing-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.server-sizing-faq__items { display: grid; gap: 0.55rem; }
.server-sizing-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.server-sizing-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.77rem; font-weight: 800; list-style: none; }
.server-sizing-faq__items summary::-webkit-details-marker { display: none; }
.server-sizing-faq__items summary i { color: #27816d; transition: transform 160ms ease; }
.server-sizing-faq__items details[open] summary i { transform: rotate(45deg); }
.server-sizing-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.71rem; line-height: 1.65; }
.server-sizing-next { background: #fff; }
.server-sizing-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #287f72; padding: clamp(1.2rem, 3vw, 2rem); background: #eff8f5; }
.server-sizing-next__layout p:not(.premium-eyebrow) { max-width: 70ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

@media (max-width: 1100px) {
  .server-sizing-layout, .server-sizing-basis__layout { grid-template-columns: minmax(0, 1fr); }
  .server-sizing-result { position: static; }
}
@media (max-width: 800px) {
  .server-sizing-hero .ats-page-hero__grid, .server-sizing-presets, .server-sizing-questions, .server-sizing-method__layout, .server-sizing-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .server-sizing-presets { align-items: start; }
}
@media (max-width: 620px) {
  .server-sizing-fields, .server-sizing-specials, .server-sizing-method__grid { grid-template-columns: minmax(0, 1fr); }
  .server-sizing-field--wide, .server-sizing-specials > p { grid-column: auto; }
  .server-sizing-presets__buttons, .server-sizing-summary, .server-sizing-equation { grid-template-columns: minmax(0, 1fr); }
  .server-sizing-equation > i { justify-self: center; transform: rotate(90deg); }
  .server-sizing-next__layout { grid-template-columns: minmax(0, 1fr); }
  .server-sizing-next__layout .premium-btn { justify-self: start; }
  .server-sizing-result__topline, .sizing-console__footer { align-items: flex-start; flex-direction: column; }
  .server-sizing-form__actions, .server-sizing-result__actions { align-items: stretch; flex-direction: column; }
  .server-sizing-form__actions .tool-action, .server-sizing-result__actions .tool-action { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .server-sizing-presets__buttons button, .server-sizing-faq__items summary i { transition: none; }
}
@media print {
  .server-sizing-hero, .server-sizing-presets, .server-sizing-form, .server-sizing-method, .server-sizing-basis, .server-sizing-faq, .server-sizing-next, .server-sizing-result__actions { display: none !important; }
  .server-sizing-section { padding: 0; background: #fff !important; }
  .server-sizing-layout { display: block; }
  .server-sizing-result { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .server-sizing-questions { display: block; margin-top: 1.2rem; }
  .server-sizing-questions ol { margin-top: 0.8rem; }
  .server-sizing-summary, .server-sizing-result__section, .server-sizing-questions { break-inside: avoid; }
}

/* Backup storage estimator */
.backup-storage-hero { background: radial-gradient(circle at 77% 23%, rgba(244, 178, 76, 0.15), transparent 21rem), linear-gradient(130deg, #071d2b 0%, #0a3145 60%, #164858 100%); }
.backup-storage-hero .ats-page-hero__lead { max-width: 67ch; }
.backup-vault-console { overflow: hidden; background: #061a28; }
.backup-vault-console__body { display: grid; grid-template-columns: minmax(7rem, 0.68fr) 3rem minmax(11rem, 1.32fr); gap: 0.9rem; align-items: center; min-height: 19rem; padding: clamp(1rem, 3vw, 1.6rem); background: linear-gradient(rgba(72, 133, 144, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(72, 133, 144, 0.08) 1px, transparent 1px); background-size: 1.45rem 1.45rem; }
.backup-vault-console__source { display: grid; min-height: 7rem; place-items: center; align-content: center; border: 1px solid rgba(100, 216, 196, 0.27); padding: 0.75rem; color: #eaf9f7; background: rgba(7, 35, 48, 0.92); text-align: center; }
.backup-vault-console__source > i { margin-bottom: 0.6rem; color: #6bd5bd; font-size: 1.45rem; }
.backup-vault-console__source span { display: grid; }
.backup-vault-console__source b, .backup-vault-console__stack b, .backup-vault-console__copies b { font: 850 0.48rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.045em; }
.backup-vault-console__source small, .backup-vault-console__stack small { margin-top: 0.25rem; color: #819da7; font-size: 0.44rem; }
.backup-vault-console__flow { display: grid; gap: 0.35rem; }
.backup-vault-console__flow i { position: relative; display: block; height: 1px; background: #5dcbb4; }
.backup-vault-console__flow i::after { position: absolute; top: -0.18rem; right: 0; width: 0.35rem; height: 0.35rem; border-top: 1px solid #5dcbb4; border-right: 1px solid #5dcbb4; content: ""; transform: rotate(45deg); }
.backup-vault-console__stack { display: grid; gap: 2px; }
.backup-vault-console__stack span { display: grid; grid-template-columns: 4.2rem minmax(0, 1fr); gap: 0.7rem; min-height: 2.55rem; align-items: center; border-left: 3px solid #66d2bb; padding: 0.55rem 0.65rem; color: #eaf8f8; background: rgba(7, 31, 43, 0.94); }
.backup-vault-console__stack span:nth-child(2) { border-left-color: #4aa7a6; }
.backup-vault-console__stack span:nth-child(3) { border-left-color: #dca64d; }
.backup-vault-console__stack span:nth-child(4) { border-left-color: #c37a56; }
.backup-vault-console__copies { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px; }
.backup-vault-console__copies span { display: flex; gap: 0.55rem; align-items: center; padding: 0.6rem 0.75rem; color: #dff4f2; background: rgba(20, 65, 76, 0.78); }
.backup-vault-console__copies i { color: #e5b45e; }
.backup-vault-console__footer { display: flex; gap: 0.7rem; justify-content: space-between; border-top: 1px solid rgba(110, 202, 194, 0.13); padding: 0.72rem 1rem; color: #7897a1; background: #051722; font: 750 0.42rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.06em; }

.backup-storage-section { background: linear-gradient(180deg, #f3f7f6, #edf4f4); }
.backup-storage-presets { display: grid; grid-template-columns: minmax(15rem, 0.85fr) minmax(20rem, 1.15fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.backup-storage-presets h2, .backup-storage-checklist h2, .backup-storage-method h2 { color: #0b3046; }
.backup-storage-presets p:last-child, .backup-storage-checklist > div > p:last-child { max-width: 64ch; color: #5d737d; line-height: 1.65; }
.backup-storage-presets__buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.backup-storage-presets__buttons button { min-height: 3rem; border: 1px solid #cad9d9; padding: 0.6rem; color: #285362; background: #fff; font-size: 0.57rem; font-weight: 850; transition: border-color 160ms ease, color 160ms ease, background 160ms ease; }
.backup-storage-presets__buttons button:hover, .backup-storage-presets__buttons button:focus-visible, .backup-storage-presets__buttons button[aria-pressed="true"] { border-color: #287c6a; color: #145a4c; background: #eaf6f2; }
.backup-storage-presets__buttons button:focus-visible { outline: 3px solid rgba(40, 124, 106, 0.2); outline-offset: 2px; }
.backup-storage-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(19rem, 0.85fr); gap: clamp(1.2rem, 3vw, 2.2rem); align-items: start; }
.backup-storage-form { display: grid; gap: 1rem; }
.backup-storage-form fieldset { min-width: 0; border: 1px solid rgba(13, 63, 82, 0.12); margin: 0; padding: clamp(1rem, 3vw, 1.4rem); background: #fff; box-shadow: 0 0.7rem 2rem rgba(8, 48, 62, 0.045); }
.backup-storage-form legend { display: flex; gap: 0.7rem; align-items: center; margin: 0 0 0.7rem; padding: 0; color: #123e52; font-size: 0.8rem; font-weight: 850; }
.backup-storage-form legend span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: #1f7564; font: 850 0.51rem/1 IBM Plex Mono, monospace; }
.backup-storage-form fieldset > p { margin: 0 0 1rem; color: #667b84; font-size: 0.64rem; line-height: 1.58; }
.backup-storage-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.backup-storage-field { display: grid; align-content: start; border-top: 3px solid #27806d; padding: 0.85rem; background: #f3f8f7; }
.backup-storage-field > label { margin-bottom: 0.42rem; color: #234e60; font-size: 0.61rem; font-weight: 850; }
.backup-storage-field input { width: 100%; min-height: 2.8rem; border: 1px solid #cbdadb; border-radius: 0; padding: 0.58rem 0.65rem; color: #173f51; background: #fff; font-size: 0.61rem; font-weight: 700; }
.backup-storage-field input:hover { border-color: #7baba5; }
.backup-storage-field input:focus-visible { border-color: #19745f; outline: 3px solid rgba(46, 146, 121, 0.2); outline-offset: 1px; }
.backup-storage-field > small { min-height: 2.3rem; margin-top: 0.45rem; color: #70828a; font-size: 0.52rem; line-height: 1.45; }
.backup-storage-input { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.backup-storage-input input { min-width: 0; }
.backup-storage-input span { display: grid; min-width: 3.5rem; place-items: center; border: 1px solid #cbdadb; border-left: 0; padding: 0 0.5rem; color: #416675; background: #e8f0ef; font: 800 0.48rem/1 IBM Plex Mono, monospace; }
.backup-storage-error { min-height: 1rem; margin: 0; color: #a44736; font-size: 0.61rem; font-weight: 750; }
.backup-storage-form__actions, .backup-storage-result__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.backup-storage-result { position: sticky; top: 6.7rem; border: 1px solid rgba(5, 52, 78, 0.12); border-top: 4px solid #dca44b; padding: clamp(1.05rem, 3vw, 1.45rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(5, 35, 51, 0.1); }
.backup-storage-result:focus { outline: none; }
.backup-storage-result:focus-visible { outline: 3px solid rgba(40, 132, 109, 0.26); outline-offset: 4px; }
.backup-storage-result__topline { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.backup-storage-result__topline h2 { margin: 0; color: #0b3046; font: 900 clamp(1.25rem, 3vw, 1.8rem)/1 IBM Plex Mono, monospace; }
.backup-storage-result__badge { flex: 0 0 auto; max-width: 9rem; border: 1px solid #a7d2c5; padding: 0.38rem 0.52rem; color: #17604f; background: #edf8f4; font-size: 0.45rem; font-weight: 900; text-align: center; text-transform: uppercase; }
.backup-storage-result__intro { margin: 0.8rem 0 1rem; color: #566e79; font-size: 0.6rem; line-height: 1.58; }
.backup-storage-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: #dce6e6; }
.backup-storage-summary article { display: grid; min-width: 0; align-content: start; padding: 0.72rem; background: #f4f8f7; }
.backup-storage-summary span { color: #57707a; font-size: 0.45rem; font-weight: 800; text-transform: uppercase; }
.backup-storage-summary strong { overflow-wrap: anywhere; margin: 0.32rem 0 0.25rem; color: #196452; font: 900 0.72rem/1.1 IBM Plex Mono, monospace; }
.backup-storage-summary small { color: #7b8d93; font-size: 0.43rem; line-height: 1.35; }
.backup-storage-result__section { margin-top: 1rem; }
.backup-storage-result__section h3 { margin: 0 0 0.55rem; color: #214d5e; font-size: 0.64rem; }
.backup-storage-bars { display: grid; gap: 0.55rem; }
.backup-storage-bar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.25rem 0.6rem; align-items: center; }
.backup-storage-bar span { color: #4e6873; font-size: 0.5rem; font-weight: 750; }
.backup-storage-bar strong { color: #245668; font: 800 0.49rem/1 IBM Plex Mono, monospace; }
.backup-storage-bar > i { grid-column: 1 / -1; overflow: hidden; height: 0.38rem; background: #e5eded; }
.backup-storage-bar > i > b { display: block; height: 100%; background: #2c8b75; transition: width 220ms ease; }
.backup-storage-bar--weekly > i > b { background: #3f9695; }
.backup-storage-bar--monthly > i > b { background: #d7a14b; }
.backup-storage-bar--yearly > i > b { background: #bb7555; }
.backup-storage-result__section ul { display: grid; gap: 1px; margin: 0; padding: 0; background: #dde7e6; list-style: none; }
.backup-storage-result__section li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.45rem; align-items: start; padding: 0.58rem 0.65rem; color: #526d78; background: #f7faf9; font-size: 0.5rem; line-height: 1.48; }
.backup-storage-result__section li > i { color: #27816d; }
.backup-storage-result__actions { margin-top: 1rem; }
.backup-storage-result__footnote { margin: 0.6rem 0 0; color: #75868d; font-size: 0.49rem; line-height: 1.5; }

.backup-storage-checklist { display: grid; grid-template-columns: minmax(15rem, 0.62fr) minmax(0, 1.38fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; margin-top: clamp(2.2rem, 6vw, 4.5rem); border-top: 1px solid #d8e3e3; padding-top: clamp(1.7rem, 4vw, 3rem); }
.backup-storage-checklist ol { display: grid; gap: 1px; margin: 0; padding: 0; background: #dce6e6; counter-reset: backup-check; list-style: none; }
.backup-storage-checklist li { position: relative; min-height: 3.45rem; padding: 0.72rem 0.75rem 0.72rem 3.9rem; color: #365c6b; background: #fff; counter-increment: backup-check; font-size: 0.57rem; font-weight: 700; line-height: 1.55; }
.backup-storage-checklist li::before { position: absolute; inset: 0 auto 0 0; display: grid; width: 3rem; place-items: center; color: #fff; background: #174a5d; content: counter(backup-check, decimal-leading-zero); font: 850 0.55rem/1 IBM Plex Mono, monospace; }
.backup-storage-checklist li > i { display: none; }

.backup-storage-method { background: #fff; }
.backup-storage-method__layout { display: grid; grid-template-columns: minmax(16rem, 0.68fr) minmax(0, 1.32fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.backup-storage-method__layout > div:first-child > p:not(.premium-eyebrow) { color: #586f7b; line-height: 1.7; }
.backup-storage-equation { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.45rem; align-items: center; margin-top: 1.2rem; }
.backup-storage-equation span { display: grid; min-height: 4.1rem; align-content: center; border-top: 3px solid #29846e; padding: 0.55rem; background: #eff7f5; text-align: center; }
.backup-storage-equation span:last-child { border-top-color: #d8a04a; }
.backup-storage-equation b { color: #175a4c; font-size: 0.54rem; }
.backup-storage-equation small { margin-top: 0.25rem; color: #667c84; font-size: 0.44rem; }
.backup-storage-equation > i { color: #8aa4aa; font-size: 0.55rem; }
.backup-storage-method__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; border-top: 4px solid #dda54b; background: #dce6e6; box-shadow: 0 1rem 2.5rem rgba(6, 38, 57, 0.07); }
.backup-storage-method__grid article { min-height: 9rem; padding: 1rem; background: #f7faf9; }
.backup-storage-method__grid span { color: #27816d; font: 900 0.58rem/1 IBM Plex Mono, monospace; }
.backup-storage-method__grid h3 { margin: 0.55rem 0 0.35rem; color: #204e5e; font-size: 0.73rem; }
.backup-storage-method__grid p { margin: 0; color: #657a82; font-size: 0.57rem; line-height: 1.6; }

.backup-storage-basis { background: radial-gradient(circle at 10% 85%, rgba(70, 180, 151, 0.09), transparent 23rem), #081e2d; }
.backup-storage-basis__layout { display: grid; grid-template-columns: minmax(15rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.backup-storage-basis h2 { color: #f0faff; }
.backup-storage-basis__layout > div:first-child > p:last-child { color: #93abb5; line-height: 1.7; }
.backup-storage-basis__links { display: grid; gap: 1px; background: rgba(111, 191, 190, 0.16); }
.backup-storage-basis__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; padding: 0.95rem; color: #edf8fb; background: rgba(5, 26, 39, 0.78); }
.backup-storage-basis__links a > i:first-child { display: grid; width: 2.7rem; height: 2.7rem; place-items: center; color: #09293a; background: #68d4bd; }
.backup-storage-basis__links a > i:last-child { color: #68d4bd; }
.backup-storage-basis__links span { display: grid; }
.backup-storage-basis__links strong { font-size: 0.64rem; }
.backup-storage-basis__links small { margin-top: 0.25rem; color: #90a9b3; font-size: 0.51rem; line-height: 1.5; }
.backup-storage-basis__links a:hover, .backup-storage-basis__links a:focus-visible { background: rgba(16, 54, 69, 0.92); }

.backup-storage-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.backup-storage-faq__items { display: grid; gap: 0.55rem; }
.backup-storage-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.backup-storage-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.77rem; font-weight: 800; list-style: none; }
.backup-storage-faq__items summary::-webkit-details-marker { display: none; }
.backup-storage-faq__items summary i { color: #27816d; transition: transform 160ms ease; }
.backup-storage-faq__items details[open] summary i { transform: rotate(45deg); }
.backup-storage-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.71rem; line-height: 1.65; }
.backup-storage-next { background: #fff; }
.backup-storage-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #d8a04a; padding: clamp(1.2rem, 3vw, 2rem); background: #f5f7f3; }
.backup-storage-next__layout p:not(.premium-eyebrow) { max-width: 70ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

@media (max-width: 1100px) {
  .backup-storage-layout, .backup-storage-basis__layout { grid-template-columns: minmax(0, 1fr); }
  .backup-storage-result { position: static; }
}
@media (max-width: 800px) {
  .backup-storage-hero .ats-page-hero__grid, .backup-storage-presets, .backup-storage-checklist, .backup-storage-method__layout, .backup-storage-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .backup-storage-presets { align-items: start; }
}
@media (max-width: 620px) {
  .backup-vault-console__body { grid-template-columns: minmax(0, 1fr); }
  .backup-vault-console__flow { grid-template-columns: repeat(3, minmax(0, 1fr)); transform: rotate(90deg); }
  .backup-vault-console__copies { grid-column: auto; grid-template-columns: minmax(0, 1fr); }
  .backup-storage-fields, .backup-storage-method__grid { grid-template-columns: minmax(0, 1fr); }
  .backup-storage-presets__buttons, .backup-storage-equation { grid-template-columns: minmax(0, 1fr); }
  .backup-storage-equation > i { justify-self: center; transform: rotate(90deg); }
  .backup-storage-next__layout { grid-template-columns: minmax(0, 1fr); }
  .backup-storage-next__layout .premium-btn { justify-self: start; }
  .backup-storage-result__topline, .backup-vault-console__footer { align-items: flex-start; flex-direction: column; }
  .backup-storage-form__actions, .backup-storage-result__actions { align-items: stretch; flex-direction: column; }
  .backup-storage-form__actions .tool-action, .backup-storage-result__actions .tool-action { justify-content: center; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .backup-storage-presets__buttons button, .backup-storage-bar > i > b, .backup-storage-faq__items summary i { transition: none; }
}
@media print {
  .backup-storage-hero, .backup-storage-presets, .backup-storage-form, .backup-storage-method, .backup-storage-basis, .backup-storage-faq, .backup-storage-next, .backup-storage-result__actions { display: none !important; }
  .backup-storage-section { padding: 0; background: #fff !important; }
  .backup-storage-layout { display: block; }
  .backup-storage-result { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .backup-storage-checklist { display: block; margin-top: 1.2rem; }
  .backup-storage-checklist ol { margin-top: 0.8rem; }
  .backup-storage-summary, .backup-storage-result__section, .backup-storage-checklist { break-inside: avoid; }
}

/* Recovery priority planner */
.recovery-priority-hero { background: radial-gradient(circle at 78% 24%, rgba(93, 205, 182, 0.15), transparent 22rem), linear-gradient(130deg, #071b29 0%, #0a3042 59%, #174957 100%); }
.recovery-priority-hero .ats-page-hero__lead { max-width: 68ch; }
.recovery-map-console { overflow: hidden; background: #061a28; }
.recovery-map-console__body { display: grid; grid-template-columns: minmax(8rem, 0.72fr) 3.2rem minmax(10rem, 1.28fr); gap: 0.75rem; align-items: center; min-height: 19rem; padding: clamp(1rem, 3vw, 1.6rem); background: linear-gradient(rgba(77, 145, 150, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(77, 145, 150, 0.08) 1px, transparent 1px); background-size: 1.4rem 1.4rem; }
.recovery-map-console__foundation { display: grid; gap: 2px; }
.recovery-map-console__foundation span { display: grid; min-height: 5rem; place-items: center; align-content: center; border: 1px solid rgba(104, 211, 188, 0.23); padding: 0.6rem; color: #e9f8f6; background: rgba(7, 35, 48, 0.92); text-align: center; }
.recovery-map-console__foundation i { margin-bottom: 0.38rem; color: #67d2ba; font-size: 1rem; }
.recovery-map-console__foundation b, .recovery-map-console__services b { font: 850 0.46rem/1 IBM Plex Mono, monospace; letter-spacing: 0.05em; }
.recovery-map-console__foundation small { margin-top: 0.24rem; color: #77939d; font-size: 0.42rem; }
.recovery-map-console__routes { display: grid; gap: 1.7rem; }
.recovery-map-console__routes i { position: relative; display: block; height: 1px; background: #5bcab2; }
.recovery-map-console__routes i::after { position: absolute; top: -0.18rem; right: 0; width: 0.35rem; height: 0.35rem; border-top: 1px solid #5bcab2; border-right: 1px solid #5bcab2; content: ""; transform: rotate(45deg); }
.recovery-map-console__services { display: grid; gap: 2px; }
.recovery-map-console__services span { display: grid; grid-template-columns: 1.8rem 1.8rem minmax(0, 1fr); gap: 0.35rem; min-height: 3.5rem; align-items: center; border-left: 3px solid #62cfb7; padding: 0.5rem; color: #e8f7f6; background: rgba(7, 31, 43, 0.94); }
.recovery-map-console__services span:nth-child(2) { border-left-color: #d8a34c; }
.recovery-map-console__services span:nth-child(3) { border-left-color: #b97958; }
.recovery-map-console__services i { color: #70d4c0; }
.recovery-map-console__services small { color: #8da4ad; font-size: 0.43rem; }
.recovery-map-console__threshold { grid-column: 1 / -1; display: grid; grid-template-columns: auto repeat(4, minmax(0, 1fr)) auto; gap: 0.3rem; align-items: center; border-top: 1px solid rgba(104, 211, 188, 0.18); padding-top: 0.75rem; color: #728f99; font: 800 0.4rem/1 IBM Plex Mono, monospace; }
.recovery-map-console__threshold i { display: block; height: 0.45rem; background: #315f69; }
.recovery-map-console__threshold i:nth-of-type(2) { background: #3f8b83; }
.recovery-map-console__threshold i:nth-of-type(3) { background: #d3a04c; }
.recovery-map-console__threshold i:nth-of-type(4) { background: #b86e50; }
.recovery-map-console__footer { display: flex; gap: 0.7rem; justify-content: space-between; border-top: 1px solid rgba(110, 202, 194, 0.13); padding: 0.72rem 1rem; color: #7897a1; background: #051722; font: 750 0.4rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.05em; }

.recovery-priority-section { background: linear-gradient(180deg, #f3f7f6, #edf4f4); }
.recovery-priority-presets { display: grid; grid-template-columns: minmax(15rem, 0.85fr) minmax(20rem, 1.15fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.recovery-priority-presets h2, .recovery-priority-method h2 { color: #0b3046; }
.recovery-priority-presets p:last-child { max-width: 65ch; color: #5d737d; line-height: 1.65; }
.recovery-priority-presets__buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.recovery-priority-presets__buttons button { min-height: 3rem; border: 1px solid #cad9d9; padding: 0.6rem; color: #285362; background: #fff; font-size: 0.57rem; font-weight: 850; transition: border-color 160ms ease, color 160ms ease, background 160ms ease; }
.recovery-priority-presets__buttons button:hover, .recovery-priority-presets__buttons button:focus-visible, .recovery-priority-presets__buttons button[aria-pressed="true"] { border-color: #287c6a; color: #145a4c; background: #eaf6f2; }
.recovery-priority-presets__buttons button:focus-visible { outline: 3px solid rgba(40, 124, 106, 0.2); outline-offset: 2px; }
.recovery-priority-layout { display: grid; grid-template-columns: minmax(0, 1.23fr) minmax(21rem, 0.77fr); gap: clamp(1.2rem, 3vw, 2.2rem); align-items: start; }
.recovery-priority-form { min-width: 0; }
.recovery-priority-form__heading { display: flex; gap: 1rem; align-items: center; justify-content: space-between; border-top: 4px solid #267b68; padding: 1rem; background: #0c3244; }
.recovery-priority-form__heading .premium-eyebrow { color: #63d0b8; }
.recovery-priority-form__heading h3 { margin: 0; color: #eefafb; font-size: 0.92rem; }
.recovery-priority-form__heading .tool-action { flex: 0 0 auto; border-color: rgba(255, 255, 255, 0.28); color: #f1fbfa; background: rgba(255, 255, 255, 0.08); }
.recovery-priority-form__heading .tool-action:hover, .recovery-priority-form__heading .tool-action:focus-visible { background: rgba(255, 255, 255, 0.16); }
.recovery-priority-form__intro { margin: 0; border: 1px solid #d5e2e1; border-top: 0; padding: 0.8rem 1rem; color: #5d737d; background: #fff; font-size: 0.59rem; line-height: 1.58; }
.recovery-priority-service-list { display: grid; gap: 0.75rem; margin-top: 0.75rem; }
.recovery-priority-service { border: 1px solid rgba(10, 62, 79, 0.13); background: #fff; box-shadow: 0 0.65rem 1.8rem rgba(7, 42, 57, 0.045); }
.recovery-priority-service__heading { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #d9e4e3; padding: 0.62rem 0.75rem; background: #f5f9f8; }
.recovery-priority-service__heading > span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: #217562; font: 850 0.49rem/1 IBM Plex Mono, monospace; }
.recovery-priority-service__heading > strong { flex: 1; margin-left: 0.65rem; color: #244e5f; font-size: 0.59rem; }
.recovery-priority-service__remove { display: inline-flex; gap: 0.4rem; align-items: center; min-height: 2.2rem; border: 1px solid #dbcfc9; padding: 0.45rem 0.58rem; color: #844c3b; background: #fffaf8; font-size: 0.5rem; font-weight: 800; }
.recovery-priority-service__remove:hover, .recovery-priority-service__remove:focus-visible { border-color: #bd7c62; background: #fcefe9; }
.recovery-priority-service__remove:focus-visible { outline: 3px solid rgba(173, 96, 67, 0.18); outline-offset: 2px; }
.recovery-priority-service__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #dfe9e8; }
.recovery-priority-field { display: grid; align-content: start; min-width: 0; padding: 0.72rem; background: #f6f9f8; }
.recovery-priority-field > span { min-height: 1.65rem; margin-bottom: 0.35rem; color: #315a69; font-size: 0.53rem; font-weight: 850; line-height: 1.35; }
.recovery-priority-field input, .recovery-priority-field select { width: 100%; min-height: 2.7rem; border: 1px solid #cbdadb; border-radius: 0; padding: 0.55rem 0.62rem; color: #173f51; background: #fff; font-size: 0.54rem; font-weight: 700; }
.recovery-priority-field input:hover, .recovery-priority-field select:hover { border-color: #7baba5; }
.recovery-priority-field input:focus-visible, .recovery-priority-field select:focus-visible { border-color: #19745f; outline: 3px solid rgba(46, 146, 121, 0.2); outline-offset: 1px; }
.recovery-priority-field small { min-height: 1.7rem; margin-top: 0.38rem; color: #70838a; font-size: 0.46rem; line-height: 1.42; }
.recovery-priority-error { min-height: 1rem; margin: 0.7rem 0 0; color: #a44736; font-size: 0.59rem; font-weight: 750; }
.recovery-priority-form__actions, .recovery-priority-report__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }

.recovery-priority-report { position: sticky; top: 6.7rem; border: 1px solid rgba(5, 52, 78, 0.12); border-top: 4px solid #dba34a; padding: clamp(1rem, 3vw, 1.35rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(5, 35, 51, 0.1); }
.recovery-priority-report:focus { outline: none; }
.recovery-priority-report:focus-visible { outline: 3px solid rgba(40, 132, 109, 0.26); outline-offset: 4px; }
.recovery-priority-report__heading { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; }
.recovery-priority-report__heading h2 { margin: 0; color: #0b3046; font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.12; }
.recovery-priority-report__badge { flex: 0 0 auto; max-width: 8rem; border: 1px solid #d8c18c; padding: 0.36rem 0.5rem; color: #79551d; background: #fbf5e9; font-size: 0.43rem; font-weight: 900; text-align: center; text-transform: uppercase; }
.recovery-priority-report__intro { margin: 0.75rem 0 0.95rem; color: #596f79; font-size: 0.56rem; line-height: 1.55; }
.recovery-priority-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: #dce6e6; }
.recovery-priority-metrics article { display: grid; align-content: start; min-height: 4.1rem; padding: 0.65rem; background: #f4f8f7; }
.recovery-priority-metrics span { color: #57707a; font-size: 0.43rem; font-weight: 800; text-transform: uppercase; }
.recovery-priority-metrics strong { margin-top: 0.3rem; color: #196452; font: 900 0.82rem/1 IBM Plex Mono, monospace; }
.recovery-priority-report__section { margin-top: 1rem; }
.recovery-priority-report__section > h3 { margin: 0 0 0.55rem; color: #214d5e; font-size: 0.64rem; }
.recovery-order-list { display: grid; gap: 0.55rem; margin: 0; padding: 0; list-style: none; }
.recovery-order-item { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); border: 1px solid #dae5e4; background: #f8faf9; }
.recovery-order-item__marker { display: grid; place-items: center; color: #fff; background: #174b5c; font: 900 0.55rem/1 IBM Plex Mono, monospace; }
.recovery-order-item__content { min-width: 0; padding: 0.68rem; }
.recovery-order-item__top { display: flex; gap: 0.55rem; align-items: flex-start; justify-content: space-between; }
.recovery-order-item__top h4 { margin: 0; color: #244e5e; font-size: 0.62rem; line-height: 1.3; }
.recovery-order-item__impact { flex: 0 0 auto; padding: 0.25rem 0.34rem; color: #4b626c; background: #e8efef; font-size: 0.38rem; font-weight: 900; text-transform: uppercase; }
.recovery-order-item__impact--critical { color: #853f2d; background: #f9e9e4; }
.recovery-order-item__impact--high { color: #79551d; background: #fbf2df; }
.recovery-order-item__impact--moderate { color: #1d6657; background: #e5f4ef; }
.recovery-order-item__content > p { margin: 0.35rem 0 0.55rem; color: #647982; font-size: 0.49rem; line-height: 1.45; }
.recovery-order-item__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 0; background: #dce5e5; }
.recovery-order-item__metrics div { padding: 0.4rem; background: #fff; }
.recovery-order-item__metrics dt { color: #75858c; font-size: 0.36rem; font-weight: 800; text-transform: uppercase; }
.recovery-order-item__metrics dd { margin: 0.2rem 0 0; color: #295a68; font: 800 0.44rem/1.2 IBM Plex Mono, monospace; }
.recovery-order-item__details { display: grid; gap: 0.28rem; margin: 0.55rem 0 0; padding: 0; list-style: none; }
.recovery-order-item__details li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.4rem; align-items: start; color: #62777f; font-size: 0.44rem; line-height: 1.4; }
.recovery-order-item__details i { color: #27806c; }
.recovery-priority-report__section--gaps ul { display: grid; gap: 1px; margin: 0; padding: 0; background: #e4dfd8; list-style: none; }
.recovery-priority-report__section--gaps li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.45rem; align-items: start; padding: 0.58rem; color: #6e5548; background: #fcf8f3; font-size: 0.47rem; line-height: 1.45; }
.recovery-priority-report__section--gaps i { color: #af6f48; }
.recovery-priority-report__actions { margin-top: 1rem; }
.recovery-priority-report__footnote { margin: 0.6rem 0 0; color: #75868d; font-size: 0.48rem; line-height: 1.5; }

.recovery-priority-method { background: #fff; }
.recovery-priority-method__layout { display: grid; grid-template-columns: minmax(16rem, 0.7fr) minmax(0, 1.3fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.recovery-priority-method__layout > div:first-child > p:not(.premium-eyebrow) { color: #586f7b; line-height: 1.7; }
.recovery-priority-equation { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.4rem; align-items: center; margin-top: 1.2rem; }
.recovery-priority-equation span { display: grid; min-height: 5rem; place-items: center; align-content: center; border-top: 3px solid #27816d; padding: 0.55rem; background: #eff7f5; text-align: center; }
.recovery-priority-equation span:nth-of-type(2) { border-top-color: #d6a04b; }
.recovery-priority-equation span:nth-of-type(3) { border-top-color: #b86f51; }
.recovery-priority-equation span > i { margin-bottom: 0.35rem; color: #257663; }
.recovery-priority-equation b { color: #175a4c; font-size: 0.53rem; }
.recovery-priority-equation small { margin-top: 0.2rem; color: #667c84; font-size: 0.43rem; }
.recovery-priority-equation > i { color: #8aa4aa; font-size: 0.55rem; }
.recovery-priority-method__visual { display: grid; grid-template-columns: 0.9fr 1.2fr 0.9fr; gap: 1px; border-top: 4px solid #dca54d; background: #dae5e4; box-shadow: 0 1rem 2.5rem rgba(6, 38, 57, 0.07); }
.recovery-priority-method__visual article { display: grid; min-height: 12rem; align-content: center; padding: 1rem; background: #f7faf9; }
.recovery-priority-method__visual span { color: #778990; font: 850 0.42rem/1 IBM Plex Mono, monospace; letter-spacing: 0.05em; }
.recovery-priority-method__visual strong { margin: 0.65rem 0; color: #1f705e; font: 900 clamp(1.1rem, 2.6vw, 1.65rem)/1 IBM Plex Mono, monospace; }
.recovery-priority-method__visual p { margin: 0; color: #617780; font-size: 0.53rem; line-height: 1.55; }

.recovery-priority-terms { background: radial-gradient(circle at 9% 78%, rgba(70, 180, 151, 0.1), transparent 22rem), #081e2d; }
.recovery-priority-terms__layout { display: grid; grid-template-columns: minmax(15rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.recovery-priority-terms h2 { color: #eff9fc; }
.recovery-priority-terms__layout > div:first-child > p:last-child { color: #93abb5; line-height: 1.7; }
.recovery-priority-terms__track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(105, 195, 185, 0.17); }
.recovery-priority-terms__track article { min-height: 12rem; padding: 1rem; background: rgba(5, 28, 42, 0.9); }
.recovery-priority-terms__track span { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; color: #082b3b; background: #67d3bb; font: 900 0.52rem/1 IBM Plex Mono, monospace; }
.recovery-priority-terms__track h3 { margin: 0.75rem 0 0.45rem; color: #ecf8fb; font-size: 0.66rem; }
.recovery-priority-terms__track p { margin: 0; color: #8da6b0; font-size: 0.52rem; line-height: 1.58; }

.recovery-priority-basis { background: #fff; }
.recovery-priority-basis__layout { display: grid; grid-template-columns: minmax(15rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.recovery-priority-basis h2 { color: #0b3046; }
.recovery-priority-basis__layout > div:first-child > p:last-child { color: #5d737d; line-height: 1.7; }
.recovery-priority-basis__links { display: grid; gap: 1px; background: #dce7e6; }
.recovery-priority-basis__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; padding: 0.95rem; color: #234e5e; background: #f6f9f8; }
.recovery-priority-basis__links a > i:first-child { display: grid; width: 2.7rem; height: 2.7rem; place-items: center; color: #fff; background: #247763; }
.recovery-priority-basis__links a > i:last-child { color: #287b68; }
.recovery-priority-basis__links span { display: grid; }
.recovery-priority-basis__links strong { font-size: 0.64rem; }
.recovery-priority-basis__links small { margin-top: 0.25rem; color: #70848c; font-size: 0.5rem; line-height: 1.5; }
.recovery-priority-basis__links a:hover, .recovery-priority-basis__links a:focus-visible { background: #ebf5f2; }

.recovery-priority-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr); gap: clamp(1.5rem, 5vw, 4rem); }
.recovery-priority-faq__items { display: grid; gap: 0.55rem; }
.recovery-priority-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.recovery-priority-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.77rem; font-weight: 800; list-style: none; }
.recovery-priority-faq__items summary::-webkit-details-marker { display: none; }
.recovery-priority-faq__items summary i { color: #27816d; transition: transform 160ms ease; }
.recovery-priority-faq__items details[open] summary i { transform: rotate(45deg); }
.recovery-priority-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.71rem; line-height: 1.65; }
.recovery-priority-next { background: #fff; }
.recovery-priority-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #287f72; padding: clamp(1.2rem, 3vw, 2rem); background: #eff8f5; }
.recovery-priority-next__layout p:not(.premium-eyebrow) { max-width: 70ch; margin-bottom: 0; color: #5c717b; line-height: 1.7; }

@media (max-width: 1180px) {
  .recovery-priority-layout, .recovery-priority-basis__layout { grid-template-columns: minmax(0, 1fr); }
  .recovery-priority-report { position: static; }
}
@media (max-width: 820px) {
  .recovery-priority-hero .ats-page-hero__grid, .recovery-priority-presets, .recovery-priority-method__layout, .recovery-priority-terms__layout, .recovery-priority-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .recovery-priority-presets { align-items: start; }
}
@media (max-width: 640px) {
  .recovery-map-console__body { grid-template-columns: minmax(0, 1fr); }
  .recovery-map-console__routes { grid-template-columns: repeat(3, minmax(0, 1fr)); transform: rotate(90deg); }
  .recovery-map-console__threshold { grid-column: auto; }
  .recovery-priority-presets__buttons, .recovery-priority-service__fields, .recovery-priority-equation, .recovery-priority-method__visual, .recovery-priority-terms__track { grid-template-columns: minmax(0, 1fr); }
  .recovery-priority-equation > i { justify-self: center; transform: rotate(90deg); }
  .recovery-priority-next__layout { grid-template-columns: minmax(0, 1fr); }
  .recovery-priority-next__layout .premium-btn { justify-self: start; }
  .recovery-priority-form__heading, .recovery-priority-report__heading, .recovery-map-console__footer { align-items: flex-start; flex-direction: column; }
  .recovery-priority-form__heading .tool-action { width: 100%; justify-content: center; }
  .recovery-priority-form__actions, .recovery-priority-report__actions { align-items: stretch; flex-direction: column; }
  .recovery-priority-form__actions .tool-action, .recovery-priority-report__actions .tool-action { justify-content: center; width: 100%; }
  .recovery-order-item__top { align-items: flex-start; flex-direction: column; }
  .recovery-order-item__metrics { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .recovery-priority-presets__buttons button, .recovery-priority-faq__items summary i { transition: none; }
}
@media print {
  .recovery-priority-hero, .recovery-priority-presets, .recovery-priority-form, .recovery-priority-method, .recovery-priority-terms, .recovery-priority-basis, .recovery-priority-faq, .recovery-priority-next, .recovery-priority-report__actions { display: none !important; }
  .recovery-priority-section { padding: 0; background: #fff !important; }
  .recovery-priority-layout { display: block; }
  .recovery-priority-report { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .recovery-order-item, .recovery-priority-report__section { break-inside: avoid; }
}

/* Joiner–mover–leaver checklist builder */
.jml-hero { background: linear-gradient(90deg, rgba(245, 249, 246, 0.97), rgba(245, 249, 246, 0.8)), repeating-linear-gradient(90deg, rgba(36, 98, 85, 0.06) 0, rgba(36, 98, 85, 0.06) 1px, transparent 1px, transparent 4.5rem); color: #112f36; }
.jml-hero::before { content: "JML"; position: absolute; right: -0.04em; bottom: -0.32em; color: rgba(27, 105, 89, 0.035); font: 900 clamp(15rem, 31vw, 31rem)/1 Space Grotesk, sans-serif; letter-spacing: -0.11em; pointer-events: none; }
.jml-hero::after { background: radial-gradient(circle, rgba(48, 164, 134, 0.2), transparent 66%); }
.jml-hero h1 { color: #071e27; }
.jml-hero .ats-page-hero__lead { color: #465f65; }
.jml-hero .tools-breadcrumb a, .jml-hero .tools-breadcrumb span { color: #2b7868; }
.jml-lifecycle-console { color: #dff9ef; background: #092c34; box-shadow: 0 1.6rem 4rem rgba(8, 43, 50, 0.2); }
.jml-lifecycle-console__body { display: grid; grid-template-columns: minmax(6rem, 0.8fr) 2rem minmax(0, 1.35fr); grid-template-rows: minmax(8.5rem, 1fr) auto; gap: 0.7rem; padding: 1.2rem; background-image: linear-gradient(rgba(86, 199, 169, 0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(86, 199, 169, 0.07) 1px, transparent 1px); background-size: 2.4rem 2.4rem; }
.jml-lifecycle-console__identity, .jml-lifecycle-console__proof { display: flex; gap: 0.65rem; align-items: center; border: 1px solid rgba(95, 218, 184, 0.3); padding: 0.8rem; background: rgba(9, 54, 62, 0.88); }
.jml-lifecycle-console__identity > i, .jml-lifecycle-console__proof > i { color: #5fdab8; font-size: 1.55rem; }
.jml-lifecycle-console__identity span, .jml-lifecycle-console__proof span { display: grid; margin: 0; }
.jml-lifecycle-console__identity b, .jml-lifecycle-console__proof b { color: #fff; font: 800 0.65rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.12em; }
.jml-lifecycle-console__identity small, .jml-lifecycle-console__proof small { margin-top: 0.25rem; color: #8fb9b1; font-size: 0.55rem; }
.jml-lifecycle-console__rail { display: grid; align-items: center; }
.jml-lifecycle-console__rail i { display: block; width: 100%; height: 1px; background: #5fdab8; }
.jml-lifecycle-console__stages { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; align-items: center; background: rgba(95, 218, 184, 0.18); }
.jml-lifecycle-console__stages span { position: relative; display: grid; min-height: 7rem; place-items: center; align-content: center; background: #0d3941; }
.jml-lifecycle-console__stages span:nth-child(2) { background: #17464b; }
.jml-lifecycle-console__stages b { position: absolute; top: 0.55rem; left: 0.55rem; color: #e9bd59; font: 800 0.54rem/1 IBM Plex Mono, monospace; }
.jml-lifecycle-console__stages i { color: #62dab8; font-size: 1.45rem; }
.jml-lifecycle-console__stages small { margin-top: 0.35rem; color: #b7d5ce; font: 700 0.48rem/1 IBM Plex Mono, monospace; text-transform: uppercase; letter-spacing: 0.09em; }
.jml-lifecycle-console__proof { grid-column: 1 / -1; justify-self: end; width: min(18rem, 82%); border-left: 3px solid #e9bd59; }
.jml-lifecycle-console__footer { display: flex; justify-content: space-between; border-top: 1px solid rgba(95, 218, 184, 0.22); padding: 0.65rem 1.2rem; color: #7faea5; font: 700 0.44rem/1 IBM Plex Mono, monospace; letter-spacing: 0.08em; }

.jml-intro { display: grid; grid-template-columns: minmax(18rem, 1fr) minmax(22rem, 0.8fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.jml-intro h2 { max-width: 18ch; }
.jml-presets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; }
.jml-presets button { display: grid; min-height: 5.1rem; place-items: center; align-content: center; border: 1px solid #cdded8; border-radius: 0; padding: 0.7rem; color: #2d5a53; background: #f7fbf8; font-weight: 800; text-align: center; transition: border-color 160ms ease, background 160ms ease, transform 160ms ease; }
.jml-presets button i { color: #23806d; font-size: 1.25rem; }
.jml-presets button span { margin-top: 0.35rem; font-size: 0.7rem; }
.jml-presets button:hover, .jml-presets button[aria-pressed="true"] { border-color: #2b8975; background: #e8f6f1; transform: translateY(-2px); }
.jml-presets button:focus-visible { outline: 3px solid rgba(45, 108, 223, 0.35); outline-offset: 2px; }
.jml-layout { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(23rem, 1.05fr); gap: clamp(1.2rem, 3vw, 2.2rem); align-items: start; }
.jml-form, .jml-report { border: 1px solid #d2dfda; background: #fffef9; box-shadow: 0 1.2rem 3rem rgba(7, 44, 49, 0.07); }
.jml-form__heading { display: flex; gap: 0.8rem; align-items: center; border-bottom: 1px solid #dbe6e2; padding: 1rem; }
.jml-form__heading p, .jml-form__heading h3 { margin: 0; }
.jml-form__index { display: grid; width: 2.2rem; height: 2.2rem; flex: 0 0 auto; place-items: center; color: #fff; background: #1f7866; font: 850 0.55rem/1 IBM Plex Mono, monospace; }
.jml-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #dce6e2; }
.jml-field { display: grid; align-content: start; min-width: 0; padding: 0.82rem; background: #f8faf8; }
.jml-field > span { margin-bottom: 0.35rem; color: #214b4b; font-size: 0.62rem; font-weight: 800; }
.jml-field input, .jml-field select { width: 100%; min-height: 2.75rem; border: 1px solid #cbdad5; border-radius: 0; padding: 0.65rem; color: #173942; background: #fff; font-size: 0.72rem; }
.jml-field small { margin-top: 0.3rem; color: #6c7d7c; font-size: 0.53rem; line-height: 1.45; }
.jml-field input:focus, .jml-field select:focus { border-color: #2b8975; outline: 3px solid rgba(43, 137, 117, 0.15); }
.jml-scope { margin: 0; border: 0; padding: 0; }
.jml-scope legend { display: flex; width: 100%; gap: 0.8rem; align-items: center; border-block: 1px solid #dbe6e2; padding: 0.9rem 1rem; color: #163e43; }
.jml-scope legend > span:last-child { display: grid; }
.jml-scope legend b { font-size: 0.78rem; }
.jml-scope legend small { margin-top: 0.18rem; color: #718281; font-size: 0.55rem; font-weight: 500; }
.jml-scope__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #dce6e2; }
.jml-scope__grid label { position: relative; margin: 0; background: #f8faf8; cursor: pointer; }
.jml-scope__grid input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.jml-scope__grid label > span { display: flex; min-height: 3.9rem; gap: 0.55rem; align-items: center; border: 2px solid transparent; padding: 0.7rem; color: #38585a; transition: background 160ms ease, border-color 160ms ease; }
.jml-scope__grid label i { color: #3d8878; font-size: 1rem; }
.jml-scope__grid label b { font-size: 0.62rem; line-height: 1.35; }
.jml-scope__grid input:checked + span { border-color: #2f8b76; color: #173f42; background: #e6f5ef; }
.jml-scope__grid input:focus-visible + span { outline: 3px solid rgba(45, 108, 223, 0.35); outline-offset: -3px; }
.jml-error { min-height: 1.1rem; margin: 0; padding: 0.55rem 1rem 0; color: #a33c3c; font-size: 0.65rem; font-weight: 700; }
.jml-form__actions, .jml-report__actions { display: flex; flex-wrap: wrap; gap: 0.5rem; padding: 0.85rem 1rem; }
.jml-form__note { display: flex; gap: 0.45rem; align-items: center; margin: 0; border-top: 1px solid #e0e8e5; padding: 0.75rem 1rem; color: #687a79; font-size: 0.58rem; }
.jml-form__note i { color: #2c8874; }

.jml-report { position: sticky; top: 6.7rem; max-height: calc(100vh - 8rem); overflow: auto; }
.jml-report__heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.7rem; align-items: start; border-top: 4px solid #e1ad4f; border-bottom: 1px solid #dce6e2; padding: 1rem; }
.jml-report__heading p, .jml-report__heading h2 { margin: 0; }
.jml-report__heading h2 { margin-top: 0.22rem; font-size: 1.3rem; }
.jml-report__label { max-width: 12rem; padding: 0.42rem 0.55rem; color: #1c6256; background: #e2f3ed; font: 800 0.48rem/1.35 IBM Plex Mono, monospace; text-transform: uppercase; }
.jml-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: #dbe6e2; }
.jml-metrics article { display: grid; align-content: start; min-height: 4rem; padding: 0.6rem; background: #f6f9f7; }
.jml-metrics span { color: #70807e; font-size: 0.48rem; line-height: 1.25; }
.jml-metrics strong { margin-top: 0.25rem; color: #153d43; font: 850 1.05rem/1 IBM Plex Mono, monospace; }
.jml-progress { padding: 0.8rem 1rem; background: #0e3740; }
.jml-progress > span { display: flex; justify-content: space-between; color: #eefcf8; font-size: 0.62rem; }
.jml-progress > span strong { color: #6fe1c0; font-family: IBM Plex Mono, monospace; }
.jml-progress > div { height: 0.32rem; margin-top: 0.5rem; overflow: hidden; background: rgba(255, 255, 255, 0.12); }
.jml-progress > div i { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #5dd8b6, #e7b24f); transition: width 180ms ease; }
.jml-progress small { display: block; margin-top: 0.45rem; color: #a9c7c1; font-size: 0.5rem; line-height: 1.4; }
.jml-timeline { display: grid; }
.jml-phase { border-bottom: 1px solid #dce6e2; }
.jml-phase__heading { display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.55rem; align-items: center; padding: 0.75rem 1rem; background: #eef5f2; }
.jml-phase__heading > i { color: #287d6b; }
.jml-phase__heading h3 { margin: 0; color: #183f44; font-size: 0.72rem; }
.jml-phase__marker { color: #887047; font: 850 0.52rem/1 IBM Plex Mono, monospace; }
.jml-task-list { display: grid; gap: 1px; margin: 0; padding: 1px; background: #e0e8e5; list-style: none; }
.jml-task { position: relative; background: #fffefb; }
.jml-task > input { position: absolute; top: 0.8rem; left: 0.8rem; width: 1rem; height: 1rem; accent-color: #247a68; }
.jml-task > label { display: grid; gap: 0.5rem; min-height: 4.4rem; margin: 0; padding: 0.72rem 0.78rem 0.72rem 2.45rem; cursor: pointer; }
.jml-task__top { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.6rem; align-items: start; }
.jml-task__top strong { color: #29494d; font-size: 0.61rem; font-weight: 750; line-height: 1.45; }
.jml-task__priority { padding: 0.25rem 0.35rem; color: #765222; background: #fff0d6; font: 800 0.42rem/1 IBM Plex Mono, monospace; text-transform: uppercase; white-space: nowrap; }
.jml-task__meta { display: flex; flex-wrap: wrap; gap: 0.4rem 0.8rem; }
.jml-task__meta span { display: flex; gap: 0.3rem; align-items: center; color: #70807f; font-size: 0.49rem; }
.jml-task__meta i { color: #3c8a78; }
.jml-task__meta b { font-weight: 600; }
.jml-task input:checked + label { background: #f0f7f4; }
.jml-task input:checked + label .jml-task__top strong { color: #70807f; text-decoration: line-through; }
.jml-task input:focus-visible { outline: 3px solid rgba(45, 108, 223, 0.38); outline-offset: 2px; }
.jml-decisions { padding: 0.9rem 1rem; background: #fcf7ee; }
.jml-decisions h3 { margin: 0 0 0.55rem; color: #674e2f; font-size: 0.72rem; }
.jml-decisions ul { display: grid; gap: 0.4rem; margin: 0; padding: 0; list-style: none; }
.jml-decisions li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.45rem; align-items: start; color: #765f47; font-size: 0.55rem; line-height: 1.5; }
.jml-decisions i { margin-top: 0.08rem; color: #c18431; }
.jml-report__footnote { margin: 0; border-top: 1px solid #dfe7e4; padding: 0.8rem 1rem; color: #667977; font-size: 0.53rem; line-height: 1.5; }

.jml-method__layout { display: grid; grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.1fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.jml-method__flow { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr); gap: 0.35rem; align-items: center; margin-top: 1.3rem; }
.jml-method__flow span { display: grid; min-height: 5.5rem; place-items: center; align-content: center; border-top: 3px solid #2d846f; padding: 0.6rem; background: #edf6f2; text-align: center; }
.jml-method__flow span i { color: #2d846f; }
.jml-method__flow span b { margin-top: 0.32rem; color: #163f44; font-size: 0.63rem; }
.jml-method__flow span small { margin-top: 0.18rem; color: #73817f; font-size: 0.48rem; }
.jml-method__flow > i { color: #b38a45; }
.jml-method__ledger { border-top: 4px solid #e0aa4d; background: #0d343c; box-shadow: 0 1.5rem 3.5rem rgba(8, 43, 48, 0.14); }
.jml-method__ledger header, .jml-method__ledger footer { display: flex; justify-content: space-between; padding: 0.75rem 0.9rem; color: #89aaa4; font: 750 0.47rem/1 IBM Plex Mono, monospace; }
.jml-method__ledger > div { display: grid; grid-template-columns: 3.2rem auto minmax(0, 1fr) auto; gap: 0.65rem; align-items: center; border-top: 1px solid rgba(255, 255, 255, 0.09); padding: 0.85rem 0.9rem; }
.jml-method__ledger > div span { color: #deb45e; font: 700 0.53rem/1 IBM Plex Mono, monospace; }
.jml-method__ledger > div i { color: #63dbb9; }
.jml-method__ledger > div b { color: #edf9f5; font-size: 0.62rem; }
.jml-method__ledger > div small { color: #9ab6b0; font-size: 0.5rem; }
.jml-method__ledger footer { border-top: 1px solid rgba(255, 255, 255, 0.09); }
.jml-differences__track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(102, 218, 185, 0.16); }
.jml-differences__track article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; min-height: 12rem; align-content: center; padding: 1.25rem; background: #0b2d37; }
.jml-differences__track article:nth-child(2) { background: #123a41; }
.jml-differences__track article > span { display: grid; width: 3rem; height: 3rem; place-items: center; color: #082f35; background: #65d6b6; font: 900 0.8rem/1 IBM Plex Mono, monospace; }
.jml-differences__track h3 { margin: 0; font-size: 1rem; }
.jml-differences__track p { margin: 0.35rem 0 0; font-size: 0.67rem; }
.jml-guidance__layout, .jml-faq__layout { display: grid; grid-template-columns: minmax(16rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.jml-guidance__links { display: grid; gap: 1px; background: #dbe6e2; }
.jml-guidance__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; padding: 0.95rem; color: #234f51; background: #f6faf7; }
.jml-guidance__links a > i:first-child { display: grid; width: 2.7rem; height: 2.7rem; place-items: center; color: #fff; background: #277d69; }
.jml-guidance__links a > i:last-child { color: #b17c2d; }
.jml-guidance__links span { display: grid; }
.jml-guidance__links strong { font-size: 0.7rem; }
.jml-guidance__links small { margin-top: 0.24rem; color: #71807e; font-size: 0.55rem; line-height: 1.4; }
.jml-faq__items { display: grid; gap: 0.55rem; }
.jml-faq__items details { border: 1px solid #d7e2de; background: #fffef9; }
.jml-faq__items summary { display: flex; justify-content: space-between; gap: 1rem; padding: 0.9rem 1rem; color: #22494c; font-size: 0.72rem; font-weight: 800; cursor: pointer; }
.jml-faq__items summary::marker { display: none; }
.jml-faq__items details[open] summary i { transform: rotate(45deg); }
.jml-faq__items p { margin: 0; border-top: 1px solid #e0e8e5; padding: 0.85rem 1rem; font-size: 0.64rem; }
.jml-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #2b806d; padding: clamp(1.2rem, 3vw, 2rem); background: #ecf7f2; }

@media (max-width: 1100px) {
  .jml-layout, .jml-guidance__layout { grid-template-columns: minmax(0, 1fr); }
  .jml-report { position: static; max-height: none; overflow: visible; }
}
@media (max-width: 860px) {
  .jml-hero .ats-page-hero__grid, .jml-intro, .jml-method__layout, .jml-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .jml-presets { max-width: 34rem; }
  .jml-differences__track { grid-template-columns: minmax(0, 1fr); }
  .jml-differences__track article { min-height: 0; }
}
@media (max-width: 640px) {
  .jml-lifecycle-console__body { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; }
  .jml-lifecycle-console__rail { min-height: 1.5rem; justify-items: center; }
  .jml-lifecycle-console__rail i { width: 1px; height: 100%; }
  .jml-lifecycle-console__proof { grid-column: auto; justify-self: stretch; width: 100%; }
  .jml-presets, .jml-form__grid, .jml-scope__grid, .jml-metrics, .jml-method__flow { grid-template-columns: minmax(0, 1fr); }
  .jml-presets button { min-height: 3.6rem; grid-template-columns: auto 1fr; gap: 0.5rem; justify-content: start; justify-items: start; padding-inline: 1rem; }
  .jml-presets button span { margin: 0; }
  .jml-method__flow > i { justify-self: center; transform: rotate(90deg); }
  .jml-method__ledger > div { grid-template-columns: 2.8rem auto minmax(0, 1fr); }
  .jml-method__ledger > div small { grid-column: 3; }
  .jml-report__heading { grid-template-columns: minmax(0, 1fr); }
  .jml-task__top { grid-template-columns: minmax(0, 1fr); }
  .jml-task__priority { justify-self: start; }
  .jml-next__layout { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .jml-presets button, .jml-progress > div i { transition: none; }
}
@media print {
  .jml-hero, .jml-intro, .jml-form, .jml-method, .jml-differences, .jml-guidance, .jml-faq, .jml-next, .jml-report__actions, .jml-form__note { display: none !important; }
  .jml-section { padding: 0 !important; background: #fff !important; }
  .jml-layout { display: block !important; }
  .jml-report { position: static !important; display: block !important; max-height: none !important; border: 0 !important; box-shadow: none !important; overflow: visible !important; }
  .jml-task, .jml-phase, .jml-decisions { break-inside: avoid; }
}

/* Incident response card builder */
.irc-hero { background: linear-gradient(90deg, rgba(248, 246, 241, 0.98), rgba(248, 246, 241, 0.82)), repeating-linear-gradient(135deg, rgba(129, 46, 42, 0.055) 0, rgba(129, 46, 42, 0.055) 1px, transparent 1px, transparent 3.5rem); color: #26343a; }
.irc-hero::before { content: "IR"; position: absolute; right: 0.02em; bottom: -0.28em; color: rgba(132, 52, 45, 0.045); font: 900 clamp(17rem, 33vw, 32rem)/1 Space Grotesk, sans-serif; letter-spacing: -0.1em; pointer-events: none; }
.irc-hero::after { background: radial-gradient(circle, rgba(204, 86, 66, 0.2), transparent 66%); }
.irc-hero h1 { color: #201c1b; }
.irc-hero .ats-page-hero__lead { color: #625653; }
.irc-hero .tools-breadcrumb a, .irc-hero .tools-breadcrumb span { color: #8e453a; }
.irc-command-console { color: #f9ece7; background: #251b1b; box-shadow: 0 1.6rem 4rem rgba(59, 28, 24, 0.24); }
.irc-command-console__body { display: grid; grid-template-columns: minmax(6.5rem, 0.75fr) 2rem minmax(0, 1.4fr); grid-template-rows: minmax(8.5rem, 1fr) auto; gap: 0.7rem; padding: 1.2rem; background-image: linear-gradient(rgba(239, 130, 98, 0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(239, 130, 98, 0.07) 1px, transparent 1px); background-size: 2.4rem 2.4rem; }
.irc-command-console__signal { display: grid; place-items: center; align-content: center; border: 1px solid rgba(239, 130, 98, 0.35); padding: 0.8rem; background: rgba(63, 31, 30, 0.9); }
.irc-command-console__signal > span { color: #f2b66d; font: 800 0.52rem/1 IBM Plex Mono, monospace; }
.irc-command-console__signal i { margin-block: 0.65rem; color: #f2755f; font-size: 1.8rem; }
.irc-command-console__signal b { color: #fff; font: 800 0.64rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.12em; }
.irc-command-console__signal small { margin-top: 0.3rem; color: #c6aaa4; font-size: 0.5rem; }
.irc-command-console__line { display: grid; align-items: center; }
.irc-command-console__line i { display: block; width: 100%; height: 1px; background: #e07861; }
.irc-command-console__response { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; align-items: stretch; background: rgba(238, 125, 95, 0.2); }
.irc-command-console__response span { position: relative; display: grid; min-height: 8.5rem; place-items: center; align-content: center; background: #382525; }
.irc-command-console__response span:nth-child(2) { background: #472a28; }
.irc-command-console__response b { position: absolute; top: 0.55rem; left: 0.55rem; color: #f2b76f; font: 800 0.48rem/1 IBM Plex Mono, monospace; }
.irc-command-console__response i { color: #f07d65; font-size: 1.4rem; }
.irc-command-console__response small { margin-top: 0.4rem; color: #d1b6af; font: 700 0.46rem/1 IBM Plex Mono, monospace; text-transform: uppercase; letter-spacing: 0.08em; }
.irc-command-console__checkpoint { display: grid; grid-column: 1 / -1; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.7rem; align-items: center; justify-self: end; width: min(20rem, 88%); border-left: 3px solid #f1b568; padding: 0.8rem; background: #3a2827; }
.irc-command-console__checkpoint > i { color: #ee7b63; font-size: 1.4rem; }
.irc-command-console__checkpoint span { display: grid; }
.irc-command-console__checkpoint b { color: #fff; font: 800 0.58rem/1.2 IBM Plex Mono, monospace; letter-spacing: 0.1em; }
.irc-command-console__checkpoint small { margin-top: 0.22rem; color: #bda39d; font-size: 0.48rem; }
.irc-command-console__checkpoint > strong { color: #f4bc72; font: 800 0.62rem/1 IBM Plex Mono, monospace; }
.irc-command-console__footer { display: flex; justify-content: space-between; border-top: 1px solid rgba(239, 130, 98, 0.22); padding: 0.65rem 1.2rem; color: #b69a94; font: 700 0.44rem/1 IBM Plex Mono, monospace; letter-spacing: 0.08em; }

.irc-intro { display: grid; grid-template-columns: minmax(18rem, 1fr) minmax(27rem, 0.92fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.irc-intro h2 { max-width: 18ch; }
.irc-presets { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.4rem; }
.irc-presets button { display: grid; min-height: 5.4rem; place-items: center; align-content: center; border: 1px solid #ded2ce; border-radius: 0; padding: 0.65rem; color: #68423d; background: #fcf8f4; font-weight: 800; text-align: center; transition: border-color 160ms ease, background 160ms ease, transform 160ms ease; }
.irc-presets button i { color: #ae4e40; font-size: 1.22rem; }
.irc-presets button span { margin-top: 0.35rem; font-size: 0.61rem; line-height: 1.25; }
.irc-presets button:hover, .irc-presets button[aria-pressed="true"] { border-color: #b85749; background: #fae9e2; transform: translateY(-2px); }
.irc-presets button:focus-visible { outline: 3px solid rgba(45, 108, 223, 0.35); outline-offset: 2px; }
.irc-layout { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(23rem, 1.05fr); gap: clamp(1.2rem, 3vw, 2.2rem); align-items: start; }
.irc-form, .irc-report { border: 1px solid #dfd5d1; background: #fffdf9; box-shadow: 0 1.2rem 3rem rgba(70, 36, 31, 0.08); }
.irc-form__heading { display: flex; gap: 0.8rem; align-items: center; border-bottom: 1px solid #e6dcd8; padding: 1rem; }
.irc-form__heading p, .irc-form__heading h3 { margin: 0; }
.irc-form__index { display: grid; width: 2.2rem; height: 2.2rem; flex: 0 0 auto; place-items: center; color: #fff; background: #963f35; font: 850 0.55rem/1 IBM Plex Mono, monospace; }
.irc-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #e8ddda; }
.irc-field { display: grid; align-content: start; min-width: 0; padding: 0.82rem; background: #fbf8f5; }
.irc-field > span { margin-bottom: 0.35rem; color: #5e3b37; font-size: 0.62rem; font-weight: 800; }
.irc-field input, .irc-field select { width: 100%; min-height: 2.75rem; border: 1px solid #d9ccc7; border-radius: 0; padding: 0.65rem; color: #392d2b; background: #fff; font-size: 0.72rem; }
.irc-field small { margin-top: 0.3rem; color: #81716d; font-size: 0.53rem; line-height: 1.45; }
.irc-field input:focus, .irc-field select:focus { border-color: #b45144; outline: 3px solid rgba(180, 81, 68, 0.14); }
.irc-scope { margin: 0; border: 0; padding: 0; }
.irc-scope legend { display: flex; width: 100%; gap: 0.8rem; align-items: center; border-block: 1px solid #e6dcd8; padding: 0.9rem 1rem; color: #5b3834; }
.irc-scope legend > span:last-child { display: grid; }
.irc-scope legend b { font-size: 0.78rem; }
.irc-scope legend small { margin-top: 0.18rem; color: #81716e; font-size: 0.55rem; font-weight: 500; }
.irc-scope__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #e8ddda; }
.irc-scope__grid label { position: relative; margin: 0; background: #fbf8f5; cursor: pointer; }
.irc-scope__grid input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.irc-scope__grid label > span { display: flex; min-height: 3.9rem; gap: 0.55rem; align-items: center; border: 2px solid transparent; padding: 0.7rem; color: #6d5551; transition: background 160ms ease, border-color 160ms ease; }
.irc-scope__grid label i { color: #ad4e42; font-size: 1rem; }
.irc-scope__grid label b { font-size: 0.62rem; line-height: 1.35; }
.irc-scope__grid input:checked + span { border-color: #b45245; color: #55332f; background: #fae9e3; }
.irc-scope__grid input:focus-visible + span { outline: 3px solid rgba(45, 108, 223, 0.35); outline-offset: -3px; }
.irc-error { min-height: 1.1rem; margin: 0; padding: 0.55rem 1rem 0; color: #9f332f; font-size: 0.65rem; font-weight: 700; }
.irc-form__actions, .irc-report__actions { display: flex; flex-wrap: wrap; gap: 0.5rem; padding: 0.85rem 1rem; }
.irc-form__note { display: flex; gap: 0.45rem; align-items: center; margin: 0; border-top: 1px solid #e9dfdb; padding: 0.75rem 1rem; color: #7f706c; font-size: 0.58rem; }
.irc-form__note i { color: #ad4d41; }

.irc-report { position: sticky; top: 6.7rem; max-height: calc(100vh - 8rem); overflow: auto; }
.irc-report__heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.7rem; align-items: start; border-top: 4px solid #b84d3f; border-bottom: 1px solid #e6dcd8; padding: 1rem; }
.irc-report__heading p, .irc-report__heading h2 { margin: 0; }
.irc-report__heading h2 { margin-top: 0.22rem; font-size: 1.3rem; }
.irc-report__label { max-width: 13rem; padding: 0.42rem 0.55rem; color: #7d382f; background: #fae6df; font: 800 0.48rem/1.35 IBM Plex Mono, monospace; text-transform: uppercase; }
.irc-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: #e7dcda; }
.irc-metrics article { display: grid; align-content: start; min-height: 4rem; padding: 0.6rem; background: #faf7f4; }
.irc-metrics span { color: #81716d; font-size: 0.48rem; line-height: 1.25; }
.irc-metrics strong { margin-top: 0.25rem; color: #593733; font: 850 1.05rem/1 IBM Plex Mono, monospace; }
.irc-progress { padding: 0.8rem 1rem; background: #302323; }
.irc-progress > span { display: flex; justify-content: space-between; color: #fff5f1; font-size: 0.62rem; }
.irc-progress > span strong { color: #f2aa83; font-family: IBM Plex Mono, monospace; }
.irc-progress > div { height: 0.32rem; margin-top: 0.5rem; overflow: hidden; background: rgba(255, 255, 255, 0.12); }
.irc-progress > div i { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #e46956, #f4b66e); transition: width 180ms ease; }
.irc-progress small { display: block; margin-top: 0.45rem; color: #d0b9b3; font-size: 0.5rem; line-height: 1.4; }
.irc-emergency { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; border-bottom: 1px solid #efd6cc; padding: 0.8rem 1rem; color: #74392f; background: #fff1e8; }
.irc-emergency i { margin-top: 0.12rem; color: #b74638; }
.irc-emergency p { margin: 0; font-size: 0.55rem; line-height: 1.5; }
.irc-timeline { display: grid; }
.irc-phase { border-bottom: 1px solid #e6dcd8; }
.irc-phase__heading { display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.55rem; align-items: center; padding: 0.75rem 1rem; background: #f5eeeb; }
.irc-phase__heading > i { color: #aa4c40; }
.irc-phase__heading h3 { margin: 0; color: #5d3a36; font-size: 0.72rem; }
.irc-phase__marker { color: #a16a38; font: 850 0.52rem/1 IBM Plex Mono, monospace; }
.irc-task-list { display: grid; gap: 1px; margin: 0; padding: 1px; background: #ebe1de; list-style: none; }
.irc-task { position: relative; background: #fffdf9; }
.irc-task > input { position: absolute; top: 0.8rem; left: 0.8rem; width: 1rem; height: 1rem; accent-color: #a44439; }
.irc-task > label { display: grid; gap: 0.5rem; min-height: 4.4rem; margin: 0; padding: 0.72rem 0.78rem 0.72rem 2.45rem; cursor: pointer; }
.irc-task__top { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.6rem; align-items: start; }
.irc-task__top strong { color: #503d3a; font-size: 0.61rem; font-weight: 750; line-height: 1.45; }
.irc-task__priority { padding: 0.25rem 0.35rem; color: #7e322a; background: #fee3da; font: 800 0.42rem/1 IBM Plex Mono, monospace; text-transform: uppercase; white-space: nowrap; }
.irc-task__meta { display: flex; flex-wrap: wrap; gap: 0.4rem 0.8rem; }
.irc-task__meta span { display: flex; gap: 0.3rem; align-items: center; color: #80716d; font-size: 0.49rem; }
.irc-task__meta i { color: #ae5144; }
.irc-task__meta b { font-weight: 600; }
.irc-task input:checked + label { background: #f7f0ed; }
.irc-task input:checked + label .irc-task__top strong { color: #8c7c78; text-decoration: line-through; }
.irc-task input:focus-visible { outline: 3px solid rgba(45, 108, 223, 0.38); outline-offset: 2px; }
.irc-decisions { padding: 0.9rem 1rem; background: #fcf4e9; }
.irc-decisions h3 { margin: 0 0 0.55rem; color: #694a2d; font-size: 0.72rem; }
.irc-decisions ul { display: grid; gap: 0.4rem; margin: 0; padding: 0; list-style: none; }
.irc-decisions li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.45rem; align-items: start; color: #765d45; font-size: 0.55rem; line-height: 1.5; }
.irc-decisions i { margin-top: 0.08rem; color: #bd7436; }
.irc-report__footnote { margin: 0; border-top: 1px solid #e9dfdb; padding: 0.8rem 1rem; color: #7c6e6a; font-size: 0.53rem; line-height: 1.5; }

.irc-rhythm__layout { display: grid; grid-template-columns: minmax(18rem, 0.85fr) minmax(0, 1.15fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.irc-rhythm__board { border-top: 4px solid #b74c3f; background: #2b2020; box-shadow: 0 1.5rem 3.5rem rgba(68, 34, 30, 0.14); }
.irc-rhythm__board article { display: grid; grid-template-columns: 3.3rem auto minmax(0, 1fr); gap: 0.8rem; align-items: center; border-bottom: 1px solid rgba(255, 255, 255, 0.09); padding: 0.9rem 1rem; }
.irc-rhythm__board article > span { color: #f0b46b; font: 800 0.58rem/1 IBM Plex Mono, monospace; }
.irc-rhythm__board article > i { color: #ec735d; }
.irc-rhythm__board article div { display: grid; }
.irc-rhythm__board article b { color: #fff6f2; font-size: 0.68rem; }
.irc-rhythm__board article small { margin-top: 0.18rem; color: #c6aaa4; font-size: 0.52rem; }
.irc-rhythm__board footer { display: flex; justify-content: space-between; padding: 0.7rem 1rem; color: #ae918b; font: 750 0.46rem/1 IBM Plex Mono, monospace; }
.irc-boundaries__track { display: grid; grid-template-columns: 1.15fr 0.95fr 0.95fr 1.15fr; gap: 1px; background: rgba(239, 117, 91, 0.16); }
.irc-boundaries__track article { min-height: 13rem; padding: 1.2rem; background: #2b2020; }
.irc-boundaries__track article:nth-child(2), .irc-boundaries__track article:nth-child(3) { background: #372525; }
.irc-boundaries__track i { color: #f07b63; font-size: 1.35rem; }
.irc-boundaries__track h3 { margin: 2.2rem 0 0; font-size: 1rem; }
.irc-boundaries__track p { margin: 0.45rem 0 0; font-size: 0.64rem; }
.irc-guidance__layout, .irc-faq__layout { display: grid; grid-template-columns: minmax(16rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: start; }
.irc-guidance__links { display: grid; gap: 1px; background: #e5dad7; }
.irc-guidance__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; padding: 0.95rem; color: #5a3b37; background: #fbf7f4; }
.irc-guidance__links a > i:first-child { display: grid; width: 2.7rem; height: 2.7rem; place-items: center; color: #fff; background: #a7473b; }
.irc-guidance__links a > i:last-child { color: #b46d33; }
.irc-guidance__links span { display: grid; }
.irc-guidance__links strong { font-size: 0.7rem; }
.irc-guidance__links small { margin-top: 0.24rem; color: #81716d; font-size: 0.55rem; line-height: 1.4; }
.irc-faq__items { display: grid; gap: 0.55rem; }
.irc-faq__items details { border: 1px solid #e1d6d2; background: #fffdf9; }
.irc-faq__items summary { display: flex; justify-content: space-between; gap: 1rem; padding: 0.9rem 1rem; color: #5a3b37; font-size: 0.72rem; font-weight: 800; cursor: pointer; }
.irc-faq__items summary::marker { display: none; }
.irc-faq__items details[open] summary i { transform: rotate(45deg); }
.irc-faq__items p { margin: 0; border-top: 1px solid #e8dfdb; padding: 0.85rem 1rem; font-size: 0.64rem; }
.irc-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #a9473c; padding: clamp(1.2rem, 3vw, 2rem); background: #fbede7; }

@media (max-width: 1100px) {
  .irc-layout, .irc-guidance__layout { grid-template-columns: minmax(0, 1fr); }
  .irc-report { position: static; max-height: none; overflow: visible; }
}
@media (max-width: 900px) {
  .irc-hero .ats-page-hero__grid, .irc-intro, .irc-rhythm__layout, .irc-faq__layout { grid-template-columns: minmax(0, 1fr); }
  .irc-presets { max-width: 42rem; }
  .irc-boundaries__track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .irc-boundaries__track article { min-height: 10rem; }
}
@media (max-width: 640px) {
  .irc-command-console__body { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; }
  .irc-command-console__line { min-height: 1.5rem; justify-items: center; }
  .irc-command-console__line i { width: 1px; height: 100%; }
  .irc-command-console__checkpoint { grid-column: auto; justify-self: stretch; width: 100%; }
  .irc-presets, .irc-form__grid, .irc-scope__grid, .irc-metrics, .irc-boundaries__track { grid-template-columns: minmax(0, 1fr); }
  .irc-presets button { min-height: 3.6rem; grid-template-columns: auto 1fr; gap: 0.5rem; justify-content: start; justify-items: start; padding-inline: 1rem; }
  .irc-presets button span { margin: 0; }
  .irc-boundaries__track article { min-height: 0; }
  .irc-boundaries__track h3 { margin-top: 1rem; }
  .irc-report__heading { grid-template-columns: minmax(0, 1fr); }
  .irc-task__top { grid-template-columns: minmax(0, 1fr); }
  .irc-task__priority { justify-self: start; }
  .irc-next__layout { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .irc-presets button, .irc-progress > div i { transition: none; }
}
@media print {
  .irc-hero, .irc-intro, .irc-form, .irc-rhythm, .irc-boundaries, .irc-guidance, .irc-faq, .irc-next, .irc-report__actions, .irc-form__note { display: none !important; }
  .irc-section { padding: 0 !important; background: #fff !important; }
  .irc-layout { display: block !important; }
  .irc-report { position: static !important; display: block !important; max-height: none !important; border: 0 !important; box-shadow: none !important; overflow: visible !important; }
  .irc-task, .irc-phase, .irc-decisions, .irc-emergency { break-inside: avoid; }
}

/* Microsoft 365 security checklist */
.m365-hero { background: linear-gradient(90deg, rgba(244, 248, 251, 0.98), rgba(244, 248, 251, 0.82)), repeating-linear-gradient(0deg, rgba(34, 105, 168, 0.055) 0, rgba(34, 105, 168, 0.055) 1px, transparent 1px, transparent 4rem); color: #102c3d; }
.m365-hero::before { content: "365"; position: absolute; right: -0.04em; bottom: -0.34em; color: rgba(21, 103, 171, 0.035); font: 900 clamp(15rem, 31vw, 31rem)/1 Space Grotesk, sans-serif; letter-spacing: -0.1em; pointer-events: none; }
.m365-hero::after { background: radial-gradient(circle, rgba(43, 142, 219, 0.18), transparent 66%); }
.m365-hero h1 { color: #071d2c; }
.m365-hero .ats-page-hero__lead { color: #47616f; }
.m365-hero .tools-breadcrumb a, .m365-hero .tools-breadcrumb span { color: #236c9e; }
.m365-tenant-console { color: #dcefff; background: #071f34; box-shadow: 0 1.6rem 4rem rgba(5, 34, 57, 0.22); }
.m365-tenant-console__body { display: grid; grid-template-columns: 0.78fr 1.35fr; grid-template-rows: minmax(9rem, 1fr) auto; gap: 0.8rem; padding: 1.2rem; background-image: linear-gradient(rgba(80, 159, 218, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(80, 159, 218, 0.08) 1px, transparent 1px); background-size: 2.4rem 2.4rem; }
.m365-tenant-console__identity { display: grid; place-items: center; align-content: center; border: 1px solid rgba(79, 169, 230, 0.28); background: rgba(8, 43, 70, 0.88); }
.m365-tenant-console__identity > i { color: #5bb7f3; font-size: 2rem; }
.m365-tenant-console__identity span { display: grid; margin-top: 0.6rem; text-align: center; }
.m365-tenant-console__identity b { color: #fff; font: 850 0.65rem/1 IBM Plex Mono, monospace; }
.m365-tenant-console__identity small { margin-top: 0.28rem; color: #7fa7bf; font-size: 0.45rem; }
.m365-tenant-console__orbit { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.45rem; align-content: center; }
.m365-tenant-console__orbit span { display: grid; min-height: 4rem; place-items: center; align-content: center; border: 1px solid rgba(85, 171, 229, 0.24); background: rgba(7, 39, 63, 0.9); }
.m365-tenant-console__orbit span:nth-child(4), .m365-tenant-console__orbit span:nth-child(5) { transform: translateX(52%); }
.m365-tenant-console__orbit i { color: #5bb7f3; font-size: 0.9rem; }
.m365-tenant-console__orbit small { margin-top: 0.32rem; color: #b1cddd; font: 750 0.38rem/1 IBM Plex Mono, monospace; }
.m365-tenant-console__evidence { grid-column: 1 / -1; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.7rem; align-items: center; border-top: 1px solid rgba(88, 177, 234, 0.18); padding-top: 0.75rem; color: #789db4; font: 800 0.4rem/1.2 IBM Plex Mono, monospace; }
.m365-tenant-console__evidence b { color: #d8edf8; font-size: 0.43rem; }
.m365-tenant-console__evidence i { color: #62c6a8; font-size: 0.9rem; }
.m365-tenant-console__footer { display: flex; gap: 0.7rem; justify-content: space-between; border-top: 1px solid rgba(88, 177, 234, 0.15); padding: 0.72rem 1rem; color: #789db4; background: #051827; font: 750 0.39rem/1.2 IBM Plex Mono, monospace; }

.m365-section { background: linear-gradient(180deg, #f3f7f9, #edf3f6); }
.m365-intro { display: grid; grid-template-columns: minmax(16rem, 0.78fr) minmax(22rem, 1.22fr); gap: 2rem; align-items: end; margin-bottom: 1.5rem; }
.m365-intro h2, .m365-method h2, .m365-sources h2, .m365-faq h2 { color: #0b3048; }
.m365-intro > div:first-child > p:last-child { max-width: 65ch; color: #5c737e; line-height: 1.65; }
.m365-status-key { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: #d4e0e5; }
.m365-status-key > span { display: grid; min-height: 5.5rem; align-content: center; padding: 0.7rem; background: #fff; }
.m365-status-key i { color: #238468; }
.m365-status-key > span:nth-child(2) i { color: #b4772c; }
.m365-status-key > span:nth-child(3) i { color: #587483; }
.m365-status-key b { margin-top: 0.35rem; color: #214d63; font-size: 0.54rem; }
.m365-status-key small { margin-top: 0.24rem; color: #71858e; font-size: 0.43rem; line-height: 1.35; }
.m365-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(21rem, 0.7fr); gap: clamp(1.2rem, 3vw, 2.2rem); align-items: start; }
.m365-form { min-width: 0; }
.m365-form__heading { display: flex; gap: 1rem; align-items: center; justify-content: space-between; border-top: 4px solid #2e7fb8; padding: 1rem; background: #0a3049; }
.m365-form__heading--controls { margin-top: 1rem; border-top-color: #62c5a7; }
.m365-form__heading .premium-eyebrow { color: #68bdf3; }
.m365-form__heading--controls .premium-eyebrow { color: #66d0af; }
.m365-form__heading h3 { margin: 0; color: #eef9ff; font-size: 0.9rem; }
.m365-form__heading > span { color: #8cacc0; font: 800 0.43rem/1 IBM Plex Mono, monospace; }
.m365-context-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; padding: 1px; background: #d6e2e6; }
.m365-context-fields label { display: grid; align-content: start; padding: 0.75rem; background: #f8fafb; }
.m365-context-fields label > span, .m365-evidence > span { margin-bottom: 0.35rem; color: #315b70; font-size: 0.52rem; font-weight: 850; }
.m365-context-fields input, .m365-context-fields select, .m365-evidence input { width: 100%; min-height: 2.7rem; border: 1px solid #c9d8de; border-radius: 0; padding: 0.55rem 0.62rem; color: #153f57; background: #fff; font-size: 0.53rem; font-weight: 700; }
.m365-context-fields input:hover, .m365-context-fields select:hover, .m365-evidence input:hover { border-color: #76a9c6; }
.m365-context-fields input:focus-visible, .m365-context-fields select:focus-visible, .m365-evidence input:focus-visible { border-color: #1b78b0; outline: 3px solid rgba(43, 135, 190, 0.2); outline-offset: 1px; }
.m365-control-list { display: grid; gap: 0.85rem; margin-top: 0.85rem; }
.m365-control-group { border: 1px solid #d4e1e6; background: #fff; box-shadow: 0 0.65rem 1.8rem rgba(7, 42, 57, 0.045); }
.m365-control-group__heading { display: flex; gap: 0.65rem; align-items: center; border-bottom: 1px solid #d7e3e7; padding: 0.65rem 0.75rem; background: #f5f9fa; }
.m365-control-group__heading span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: #247cb4; font: 850 0.46rem/1 IBM Plex Mono, monospace; }
.m365-control-group__heading h3 { margin: 0; color: #244f65; font-size: 0.63rem; }
.m365-control { min-width: 0; margin: 0; border: 0; border-bottom: 1px solid #e0e8eb; padding: 0.8rem; }
.m365-control:last-child { border-bottom: 0; }
.m365-control__legend { display: grid; width: 100%; padding: 0; }
.m365-control__title { display: flex; gap: 0.65rem; align-items: center; justify-content: space-between; }
.m365-control__title strong { color: #173f57; font-size: 0.59rem; }
.m365-priority { flex: 0 0 auto; padding: 0.25rem 0.38rem; color: #7f4a36; background: #faebe5; font-size: 0.36rem; font-weight: 900; text-transform: uppercase; }
.m365-priority--high { color: #79591f; background: #fbf2df; }
.m365-control__question { max-width: 80ch; margin-top: 0.35rem; color: #607781; font-size: 0.49rem; line-height: 1.55; }
.m365-status-choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.38rem; margin-top: 0.65rem; }
.m365-status-choices label { position: relative; min-width: 0; cursor: pointer; }
.m365-status-choices input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.m365-status-choices label > span { display: flex; gap: 0.42rem; min-height: 2.5rem; align-items: center; justify-content: center; border: 1px solid #d0dde2; padding: 0.48rem; color: #536c78; background: #f8fafb; font-size: 0.47rem; }
.m365-status-choices label:hover > span { border-color: #80aabe; background: #f0f6f8; }
.m365-status-choices input:focus-visible + span { outline: 3px solid rgba(43, 135, 190, 0.22); outline-offset: 2px; }
.m365-status-choices input:checked + span { border-color: #247eb5; color: #15577d; background: #e9f5fc; box-shadow: inset 0 -3px #287fb5; }
.m365-status-choices label:first-child input:checked + span { border-color: #2a8a70; color: #17634f; background: #e9f6f2; box-shadow: inset 0 -3px #2a8a70; }
.m365-status-choices label:nth-child(2) input:checked + span { border-color: #bb7e30; color: #79511e; background: #fcf3e5; box-shadow: inset 0 -3px #bb7e30; }
.m365-evidence { display: grid; margin-top: 0.62rem; }
.m365-evidence input { min-height: 2.5rem; font-weight: 600; }
.m365-error { min-height: 1rem; margin: 0.7rem 0 0; color: #a44736; font-size: 0.59rem; font-weight: 750; }
.m365-form__actions, .m365-report__actions { display: flex; flex-wrap: wrap; gap: 0.65rem; margin-top: 1rem; }
.m365-form__note { margin: 0.65rem 0 0; color: #71848d; font-size: 0.49rem; line-height: 1.5; }
.m365-form__note i { margin-right: 0.3rem; color: #237db4; }

.m365-report { position: sticky; top: 6.7rem; border: 1px solid rgba(5, 52, 78, 0.13); border-top: 4px solid #61c5a7; padding: clamp(1rem, 3vw, 1.35rem); background: #fff; box-shadow: 0 1.2rem 3rem rgba(5, 35, 51, 0.1); }
.m365-report:focus { outline: none; }
.m365-report:focus-visible { outline: 3px solid rgba(43, 135, 190, 0.25); outline-offset: 4px; }
.m365-report__heading { display: flex; gap: 0.8rem; align-items: flex-start; justify-content: space-between; }
.m365-report__heading h2 { margin: 0; color: #0b3047; font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.12; }
.m365-report__heading > span { flex: 0 0 auto; max-width: 8rem; border: 1px solid #bad6e5; padding: 0.36rem 0.5rem; color: #23658c; background: #eff8fc; font-size: 0.42rem; font-weight: 900; text-align: center; text-transform: uppercase; }
.m365-report__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin-top: 0.9rem; background: #dce7eb; }
.m365-report__metrics article { display: grid; min-height: 4rem; align-content: start; padding: 0.62rem; background: #f5f9fa; }
.m365-report__metrics span { min-height: 1.2rem; color: #667d87; font-size: 0.38rem; font-weight: 850; text-transform: uppercase; }
.m365-report__metrics strong { margin-top: 0.25rem; color: #1b765f; font: 900 0.8rem/1 IBM Plex Mono, monospace; }
.m365-report__metrics article:nth-child(2) strong { color: #9b6625; }
.m365-report__metrics article:nth-child(3) strong { color: #526d7a; }
.m365-coverage { margin-top: 0.85rem; }
.m365-coverage > span { display: flex; justify-content: space-between; color: #345c6e; font-size: 0.48rem; }
.m365-coverage > span strong { font-family: IBM Plex Mono, monospace; }
.m365-coverage > div { height: 0.45rem; margin-top: 0.38rem; background: #e3ebee; overflow: hidden; }
.m365-coverage > div i { display: block; width: 0; height: 100%; background: #2b8d72; transition: width 220ms ease; }
.m365-coverage small { display: block; margin-top: 0.35rem; color: #74868e; font-size: 0.43rem; line-height: 1.45; }
.m365-report__section { margin-top: 1rem; }
.m365-report__section h3 { margin: 0 0 0.55rem; color: #234e63; font-size: 0.62rem; }
.m365-report__section ul { display: grid; gap: 1px; margin: 0; padding: 0; background: #dfe7ea; list-style: none; }
.m365-report__section li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.5rem; align-items: start; padding: 0.62rem; color: #637983; background: #f7fafb; font-size: 0.46rem; line-height: 1.48; }
.m365-report__section li > i { margin-top: 0.1rem; color: #2a82b7; }
.m365-report__section li > div { display: grid; }
.m365-report__section li strong { color: #264f62; font-size: 0.5rem; }
.m365-report__section li span { margin-top: 0.28rem; }
.m365-report__section li em { margin-top: 0.35rem; color: #4c6e7d; font-style: normal; font-weight: 750; }
.m365-result-status { justify-self: start; margin-top: 0.4rem; padding: 0.22rem 0.32rem; color: #5d7180; background: #e7eef1; font-size: 0.35rem; font-weight: 900; text-transform: uppercase; }
.m365-result-status--partial { color: #7a531e; background: #fbefd9; }
.m365-result-status--confirmed { color: #17634f; background: #e4f3ed; }
.m365-report__section--maintain li > i { color: #2a8a70; }
.m365-report__empty, .m365-report__more { margin: 0; padding: 0.65rem; color: #647984; background: #f6f9fa; font-size: 0.47rem; line-height: 1.5; }
.m365-report__more:empty { display: none; }
.m365-report__footnote { margin: 0.7rem 0 0; color: #74868e; font-size: 0.47rem; line-height: 1.52; }

.m365-method { background: #fff; }
.m365-method__layout, .m365-boundaries__layout, .m365-sources__layout, .m365-faq__layout { display: grid; grid-template-columns: minmax(15rem, 0.58fr) minmax(0, 1.42fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.m365-method__layout > div:first-child > p:last-child, .m365-sources__layout > div:first-child > p:last-child { color: #5a717d; line-height: 1.7; }
.m365-method__flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; border-top: 4px solid #2d83b9; background: #dce7eb; }
.m365-method__flow article { display: grid; min-height: 12rem; align-content: center; padding: 1rem; background: #f6f9fa; }
.m365-method__flow span { color: #6e8794; font: 850 0.42rem/1 IBM Plex Mono, monospace; }
.m365-method__flow i { margin-top: 0.85rem; color: #277eb4; font-size: 1.1rem; }
.m365-method__flow h3 { margin: 0.7rem 0 0.4rem; color: #204b61; font-size: 0.63rem; }
.m365-method__flow p { margin: 0; color: #667d87; font-size: 0.49rem; line-height: 1.55; }
.m365-boundaries { background: radial-gradient(circle at 9% 75%, rgba(62, 143, 198, 0.13), transparent 22rem), #071f31; }
.m365-boundaries h2 { color: #eef8fc; }
.m365-boundaries__layout > div:first-child > p:last-child { color: #91aab6; line-height: 1.7; }
.m365-boundaries__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(102, 174, 217, 0.18); }
.m365-boundaries__grid article { min-height: 13rem; padding: 1rem; background: rgba(5, 27, 43, 0.92); }
.m365-boundaries__grid i { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; color: #071f31; background: #61c5a7; }
.m365-boundaries__grid h3 { margin: 0.8rem 0 0.45rem; color: #edf8fc; font-size: 0.63rem; }
.m365-boundaries__grid p { margin: 0; color: #8fa8b3; font-size: 0.49rem; line-height: 1.58; }
.m365-sources { background: #fff; }
.m365-sources__layout { align-items: start; }
.m365-sources__links { display: grid; gap: 1px; background: #dce7eb; }
.m365-sources__links a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.85rem; align-items: center; padding: 0.9rem; color: #244e63; background: #f6f9fa; }
.m365-sources__links a > i:first-child { display: grid; width: 2.6rem; height: 2.6rem; place-items: center; color: #fff; background: #267db3; }
.m365-sources__links a > i:last-child { color: #2b7fac; }
.m365-sources__links span { display: grid; }
.m365-sources__links strong { font-size: 0.61rem; }
.m365-sources__links small { margin-top: 0.25rem; color: #6d828c; font-size: 0.48rem; line-height: 1.45; }
.m365-sources__links a:hover, .m365-sources__links a:focus-visible { background: #eaf4f9; }
.m365-faq__layout { align-items: start; }
.m365-faq__items { display: grid; gap: 0.55rem; }
.m365-faq__items details { border: 1px solid rgba(4, 63, 91, 0.1); background: #fff; }
.m365-faq__items summary { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 0.9rem 1rem; color: #123a54; cursor: pointer; font-size: 0.73rem; font-weight: 800; list-style: none; }
.m365-faq__items summary::-webkit-details-marker { display: none; }
.m365-faq__items summary i { color: #2b81b6; transition: transform 160ms ease; }
.m365-faq__items details[open] summary i { transform: rotate(45deg); }
.m365-faq__items details p { margin: 0; border-top: 1px solid rgba(4, 63, 91, 0.075); padding: 0.85rem 1rem; color: #536b79; font-size: 0.68rem; line-height: 1.65; }
.m365-next { background: #fff; }
.m365-next__layout { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; border-left: 4px solid #2b83b8; padding: clamp(1.2rem, 3vw, 2rem); background: #edf7fb; }
.m365-next__layout p:not(.premium-eyebrow) { max-width: 72ch; margin-bottom: 0; color: #5c727d; line-height: 1.7; }

@media (max-width: 1180px) {
  .m365-layout, .m365-sources__layout { grid-template-columns: minmax(0, 1fr); }
  .m365-report { position: static; }
}
@media (max-width: 820px) {
  .m365-hero .ats-page-hero__grid, .m365-intro, .m365-method__layout, .m365-boundaries__layout, .m365-faq__layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .m365-tenant-console__body, .m365-context-fields, .m365-status-key, .m365-status-choices, .m365-method__flow, .m365-boundaries__grid { grid-template-columns: minmax(0, 1fr); }
  .m365-tenant-console__orbit { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .m365-tenant-console__orbit span:nth-child(4), .m365-tenant-console__orbit span:nth-child(5) { transform: none; }
  .m365-tenant-console__evidence { grid-column: auto; }
  .m365-tenant-console__footer, .m365-form__heading, .m365-report__heading { align-items: flex-start; flex-direction: column; }
  .m365-control__title { align-items: flex-start; flex-direction: column; }
  .m365-report__metrics { grid-template-columns: minmax(0, 1fr); }
  .m365-form__actions, .m365-report__actions { align-items: stretch; flex-direction: column; }
  .m365-form__actions .tool-action, .m365-report__actions .tool-action { justify-content: center; width: 100%; }
  .m365-next__layout { grid-template-columns: minmax(0, 1fr); }
  .m365-next__layout .premium-btn { justify-self: start; }
}
@media (prefers-reduced-motion: reduce) {
  .m365-coverage > div i, .m365-faq__items summary i { transition: none; }
}
@media print {
  .m365-hero, .m365-intro, .m365-form, .m365-method, .m365-boundaries, .m365-sources, .m365-faq, .m365-next, .m365-report__actions { display: none !important; }
  .m365-section { padding: 0; background: #fff !important; }
  .m365-layout { display: block; }
  .m365-report { position: static; border: 1px solid #cddadc; box-shadow: none; }
  .m365-report__section li { break-inside: avoid; }
}

/* Google Workspace security checklist — shared review pattern, Google-specific visual language */
.gws-hero { background: radial-gradient(circle at 82% 18%, rgba(52, 168, 83, 0.13), transparent 21rem), radial-gradient(circle at 60% 82%, rgba(251, 188, 4, 0.12), transparent 23rem), linear-gradient(90deg, #fbfcfa, #f4f8fb); }
.gws-hero::before { content: "W"; right: 0.01em; bottom: -0.38em; color: rgba(52, 168, 83, 0.035); }
.gws-hero::after { background: radial-gradient(circle, rgba(66, 133, 244, 0.15), transparent 67%); }
.gws-hero .tools-breadcrumb a, .gws-hero .tools-breadcrumb span { color: #256d48; }
.gws-hero .premium-eyebrow { color: #2867b2; }
.gws-domain-console { background: #14243a; box-shadow: 0 1.6rem 4rem rgba(17, 38, 65, 0.22); }
.gws-domain-console__body { background-image: linear-gradient(rgba(126, 159, 190, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(126, 159, 190, 0.08) 1px, transparent 1px); }
.gws-domain-console__identity { display: grid; place-items: center; align-content: center; border: 1px solid rgba(115, 154, 191, 0.3); border-top: 4px solid #4285f4; background: rgba(19, 49, 76, 0.9); }
.gws-domain-console__identity > i { color: #fff; font-size: 2rem; text-shadow: -0.23rem 0 #34a853, 0.23rem 0 #ea4335; }
.gws-domain-console__identity span { display: grid; margin-top: 0.62rem; text-align: center; }
.gws-domain-console__identity b { color: #fff; font: 850 0.65rem/1 IBM Plex Mono, monospace; }
.gws-domain-console__identity small { margin-top: 0.28rem; color: #9bb2c5; font-size: 0.45rem; }
.gws-domain-console__orbit span { border-color: rgba(126, 159, 190, 0.26); background: rgba(14, 39, 61, 0.92); }
.gws-domain-console__orbit span:nth-child(1) { border-top: 3px solid #4285f4; }
.gws-domain-console__orbit span:nth-child(2) { border-top: 3px solid #ea4335; }
.gws-domain-console__orbit span:nth-child(3) { border-top: 3px solid #fbbc04; }
.gws-domain-console__orbit span:nth-child(4) { border-top: 3px solid #34a853; }
.gws-domain-console__orbit span:nth-child(5) { border-top: 3px solid #4285f4; }
.gws-domain-console__orbit i { color: #d8e8f5; }
.gws-domain-console__evidence i { color: #fbbc04; }
.gws-domain-console__footer { background: #0d1c2d; }
.gws-section { background: linear-gradient(180deg, #f6f8f5, #eef4f1); }
.gws-status-key { background: #d9e2df; }
.gws-status-key > span:first-child { box-shadow: inset 0 3px #34a853; }
.gws-status-key > span:nth-child(2) { box-shadow: inset 0 3px #fbbc04; }
.gws-status-key > span:nth-child(3) { box-shadow: inset 0 3px #4285f4; }
.gws-form__heading { border-top-color: #4285f4; background: #163754; }
.gws-form__heading--controls { border-top-color: #34a853; }
.gws-control-group:nth-child(4n + 1) .gws-control-group__heading span { background: #3375d0; }
.gws-control-group:nth-child(4n + 2) .gws-control-group__heading span { background: #c8493d; }
.gws-control-group:nth-child(4n + 3) .gws-control-group__heading span { color: #3f3413; background: #e8ae08; }
.gws-control-group:nth-child(4n) .gws-control-group__heading span { background: #2d8950; }
.gws-status-choices label:first-child input:checked + span { border-color: #318a50; color: #21613a; background: #e9f5ed; box-shadow: inset 0 -3px #34a853; }
.gws-status-choices label:nth-child(2) input:checked + span { border-color: #d19613; color: #735815; background: #fff7df; box-shadow: inset 0 -3px #fbbc04; }
.gws-status-choices label:nth-child(3) input:checked + span { border-color: #3d7fd4; color: #245b9d; background: #edf4fe; box-shadow: inset 0 -3px #4285f4; }
.gws-report { border-top-color: #fbbc04; }
.gws-coverage > div i { background: linear-gradient(90deg, #4285f4 0 34%, #34a853 34% 68%, #fbbc04 68%); }
.gws-method__flow { border-top-color: #34a853; }
.gws-method__flow article:nth-child(1) i { color: #4285f4; }
.gws-method__flow article:nth-child(2) i { color: #c84a3e; }
.gws-method__flow article:nth-child(3) i { color: #2f8850; }
.gws-boundaries { background: radial-gradient(circle at 10% 75%, rgba(52, 168, 83, 0.13), transparent 22rem), #10243a; }
.gws-boundaries__grid { background: rgba(115, 155, 190, 0.2); }
.gws-boundaries__grid article { background: rgba(13, 34, 54, 0.94); }
.gws-boundaries__grid article:nth-child(1) i { background: #4285f4; }
.gws-boundaries__grid article:nth-child(2) i { color: #46360b; background: #fbbc04; }
.gws-boundaries__grid article:nth-child(3) i { background: #34a853; }
.gws-sources__links a:nth-child(4n + 1) > i:first-child { background: #4285f4; }
.gws-sources__links a:nth-child(4n + 2) > i:first-child { background: #c8493d; }
.gws-sources__links a:nth-child(4n + 3) > i:first-child { color: #49370c; background: #fbbc04; }
.gws-sources__links a:nth-child(4n) > i:first-child { background: #2e8950; }
.gws-next__layout { border-left-color: #34a853; background: #eef8f1; }

@media print {
  .gws-hero, .gws-section .m365-intro, .gws-section .m365-form, .gws-method, .gws-boundaries, .gws-sources, .gws-faq, .gws-next { display: none !important; }
  .gws-section { display: block !important; padding: 0; background: #fff !important; }
  .gws-report { display: block !important; }
}

/* Retail technology opening and closing checklist */
.retail-hero { background: radial-gradient(circle at 83% 16%, rgba(241, 164, 64, 0.18), transparent 22rem), linear-gradient(90deg, #faf8f2, #edf6f5); }
.retail-hero::before { content: "OPEN"; right: -0.02em; bottom: -0.34em; color: rgba(11, 99, 101, 0.035); font-size: clamp(11rem, 24vw, 24rem); letter-spacing: -0.08em; }
.retail-hero::after { background: radial-gradient(circle, rgba(30, 137, 137, 0.14), transparent 67%); }
.retail-hero h1 { color: #102f35; }
.retail-hero .ats-page-hero__lead { color: #506e70; }
.retail-hero .tools-breadcrumb a, .retail-hero .tools-breadcrumb span { color: #176c6d; }
.retail-hero .premium-eyebrow { color: #a6542e; }
.retail-hero .premium-btn--primary { border-color: #d85d2e; background: #d85d2e; box-shadow: 0 0.65rem 1.4rem rgba(169, 71, 35, 0.2); }
.retail-operations-board { color: #e7f4f1; background: #102f35; box-shadow: 0 1.6rem 4rem rgba(17, 52, 57, 0.24); }
.retail-operations-board__body { display: grid; grid-template-columns: 0.75fr 1.25fr; grid-template-rows: minmax(9rem, 1fr) auto; gap: 0.8rem; padding: 1.2rem; background-image: linear-gradient(rgba(104, 185, 176, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(104, 185, 176, 0.08) 1px, transparent 1px); background-size: 2.4rem 2.4rem; }
.retail-operations-board__store { display: grid; place-items: center; align-content: center; border: 1px solid rgba(105, 190, 180, 0.26); border-top: 4px solid #ef8b43; background: rgba(13, 66, 70, 0.88); }
.retail-operations-board__store > i { color: #f5a55b; font-size: 2rem; }
.retail-operations-board__store span { display: grid; margin-top: 0.62rem; text-align: center; }
.retail-operations-board__store b { color: #fff; font: 850 0.65rem/1 IBM Plex Mono, monospace; }
.retail-operations-board__store small { margin-top: 0.3rem; color: #94bbb7; font-size: 0.45rem; }
.retail-operations-board__systems { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.45rem; align-content: center; }
.retail-operations-board__systems span { display: grid; min-height: 4.3rem; place-items: center; align-content: center; border: 1px solid rgba(105, 190, 180, 0.24); background: rgba(12, 57, 63, 0.92); }
.retail-operations-board__systems span:nth-child(1) { border-top: 3px solid #39a6a3; }
.retail-operations-board__systems span:nth-child(2) { border-top: 3px solid #ef8b43; }
.retail-operations-board__systems span:nth-child(3) { border-top: 3px solid #56b891; }
.retail-operations-board__systems span:nth-child(4) { border-top: 3px solid #e2bc58; }
.retail-operations-board__systems i { color: #e9f7f4; font-size: 0.9rem; }
.retail-operations-board__systems small { margin-top: 0.3rem; color: #b2d2ce; font: 750 0.36rem/1 IBM Plex Mono, monospace; }
.retail-operations-board__systems b { margin-top: 0.28rem; color: #f5a55b; font: 850 0.34rem/1 IBM Plex Mono, monospace; }
.retail-operations-board__handover { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr auto 1fr auto; gap: 0.5rem; align-items: center; border-top: 1px solid rgba(111, 197, 185, 0.2); padding-top: 0.75rem; color: #91b8b4; font: 800 0.39rem/1.2 IBM Plex Mono, monospace; }
.retail-operations-board__handover i { height: 2px; background: linear-gradient(90deg, #319894, #ef8b43); }
.retail-operations-board__handover b { color: #f6d18d; }
.retail-operations-board__footer { background: #0a252a; color: #86aaa7; }

.retail-section { background: linear-gradient(180deg, #f7f7f2, #eef4f2); }
.retail-status-key { background: #d8e2de; }
.retail-status-key > span:first-child { box-shadow: inset 0 3px #2c9278; }
.retail-status-key > span:nth-child(2) { box-shadow: inset 0 3px #d85d2e; }
.retail-status-key > span:nth-child(3) { box-shadow: inset 0 3px #71868c; }
.retail-status-key > span:nth-child(2) i { color: #c84f25; }
.retail-form__heading { border-top-color: #ef8b43; background: #123e43; }
.retail-form__heading .premium-eyebrow { color: #f6b878; }
.retail-form__heading--checks { border-top-color: #38a29a; }
.retail-form__heading--checks .premium-eyebrow { color: #79d2c4; }
.retail-form__heading > span b { color: #f5c981; font: inherit; }
.retail-context-fields__wide { grid-column: 1 / -1; }
.retail-control-group:nth-child(4n + 1) .retail-control-group__heading span { background: #d65e31; }
.retail-control-group:nth-child(4n + 2) .retail-control-group__heading span { background: #197b7d; }
.retail-control-group:nth-child(4n + 3) .retail-control-group__heading span { background: #4b8770; }
.retail-control-group:nth-child(4n) .retail-control-group__heading span { color: #493610; background: #e5b34d; }
.retail-control .m365-priority--routine { color: #4d6569; background: #e8efed; }
.retail-status-choices label:first-child input:checked + span { border-color: #27866f; color: #17624f; background: #e8f5f0; box-shadow: inset 0 -3px #2c9278; }
.retail-status-choices label:nth-child(2) input:checked + span { border-color: #cb5428; color: #91391b; background: #fff0e9; box-shadow: inset 0 -3px #d85d2e; }
.retail-status-choices label:nth-child(3) input:checked + span { border-color: #70858a; color: #4b6268; background: #edf2f1; box-shadow: inset 0 -3px #71868c; }
.retail-report { border-top-color: #ef8b43; }
.retail-report__run { display: flex; gap: 0.4rem; align-items: center; margin: 0.75rem 0 0; color: #527176; font-size: 0.5rem; font-weight: 800; }
.retail-report__run i { color: #c45a31; }
.retail-report__blockers { border: 1px solid #f0c8b9; padding: 0.7rem; background: #fff7f3; }
.retail-report__blockers > h3 { color: #9d3c1d; }
.retail-report__blockers > p { margin: -0.2rem 0 0.6rem; color: #805849; font-size: 0.46rem; line-height: 1.55; }
.retail-report__blockers li > i { color: #c94f26; }
.retail-result-status--issue { color: #91391b; background: #fde9e1; }
.retail-result-status--not_checked { color: #536b70; background: #e8efee; }
.retail-method__flow { border-top-color: #ef8b43; }
.retail-method__flow article:nth-child(1) i { color: #d65e31; }
.retail-method__flow article:nth-child(2) i { color: #197b7d; }
.retail-method__flow article:nth-child(3) i { color: #4b8770; }
.retail-boundaries { background: radial-gradient(circle at 10% 75%, rgba(239, 139, 67, 0.14), transparent 22rem), #102f35; }
.retail-boundaries__grid { background: rgba(105, 185, 176, 0.18); }
.retail-boundaries__grid article { background: rgba(10, 42, 47, 0.94); }
.retail-boundaries__grid article:nth-child(1) i { background: #ef8b43; }
.retail-boundaries__grid article:nth-child(2) i { background: #43a595; }
.retail-boundaries__grid article:nth-child(3) i { color: #46370f; background: #e5b34d; }
.retail-sources__links a:nth-child(4n + 1) > i:first-child { background: #d65e31; }
.retail-sources__links a:nth-child(4n + 2) > i:first-child { background: #197b7d; }
.retail-sources__links a:nth-child(4n + 3) > i:first-child { background: #4b8770; }
.retail-sources__links a:nth-child(4n) > i:first-child { color: #49360e; background: #e5b34d; }
.retail-next__layout { border-left-color: #ef8b43; background: #fdf4ea; }

@media (max-width: 640px) {
  .retail-operations-board__body { grid-template-columns: minmax(0, 1fr); }
  .retail-operations-board__systems { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .retail-operations-board__handover { grid-column: auto; }
  .retail-context-fields__wide { grid-column: auto; }
}
@media print {
  .retail-hero, .retail-section .m365-intro, .retail-section .m365-form, .retail-method, .retail-boundaries, .retail-sources, .retail-faq, .retail-next { display: none !important; }
  .retail-section { display: block !important; padding: 0; background: #fff !important; }
  .retail-report { display: block !important; }
}

/* Supplier and domain handover pack */
.handover-hero { background: radial-gradient(circle at 83% 17%, rgba(198, 111, 66, 0.17), transparent 22rem), linear-gradient(90deg, #f8f6f1, #eef2f5); }
.handover-hero::before { content: "TRANSFER"; right: -0.03em; bottom: -0.34em; color: rgba(43, 46, 91, 0.035); font-size: clamp(9rem, 20vw, 20rem); letter-spacing: -0.09em; }
.handover-hero::after { background: radial-gradient(circle, rgba(69, 77, 151, 0.13), transparent 68%); }
.handover-hero h1 { color: #252849; }
.handover-hero .ats-page-hero__lead { color: #5e6277; }
.handover-hero .tools-breadcrumb a, .handover-hero .tools-breadcrumb span { color: #4b518c; }
.handover-hero .premium-eyebrow { color: #a45132; }
.handover-hero .premium-btn--primary { border-color: #424a91; background: #424a91; box-shadow: 0 0.65rem 1.4rem rgba(53, 60, 124, 0.2); }
.handover-control-chain { color: #f4f1e9; background: #252849; box-shadow: 0 1.6rem 4rem rgba(35, 38, 74, 0.25); }
.handover-control-chain__body { display: grid; gap: 1rem; min-height: 20rem; align-content: center; padding: 1.25rem; background-image: linear-gradient(rgba(144, 150, 203, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(144, 150, 203, 0.08) 1px, transparent 1px); background-size: 2.4rem 2.4rem; }
.handover-control-chain__owner { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.8rem; align-items: center; border: 1px solid rgba(167, 173, 221, 0.25); border-left: 4px solid #d07a50; padding: 0.9rem; background: rgba(51, 55, 103, 0.9); }
.handover-control-chain__owner > i { display: grid; width: 2.8rem; height: 2.8rem; place-items: center; color: #292c53; background: #e4aa73; font-size: 1.15rem; }
.handover-control-chain__owner span { display: grid; }
.handover-control-chain__owner b { color: #fff; font: 850 0.65rem/1 IBM Plex Mono, monospace; }
.handover-control-chain__owner small { margin-top: 0.28rem; color: #afb4d5; font-size: 0.45rem; }
.handover-control-chain__rail { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; gap: 0.4rem; align-items: center; }
.handover-control-chain__rail span { display: grid; min-width: 3.6rem; min-height: 4rem; place-items: center; align-content: center; border: 1px solid rgba(163, 169, 216, 0.25); background: rgba(39, 42, 82, 0.94); }
.handover-control-chain__rail span:nth-of-type(1) { border-top: 3px solid #d27a50; }
.handover-control-chain__rail span:nth-of-type(2) { border-top: 3px solid #6e79d1; }
.handover-control-chain__rail span:nth-of-type(3) { border-top: 3px solid #4ca29b; }
.handover-control-chain__rail span:nth-of-type(4) { border-top: 3px solid #d3a44f; }
.handover-control-chain__rail span i { color: #f4f3fb; font-size: 0.9rem; }
.handover-control-chain__rail span small { margin-top: 0.36rem; color: #b6bad7; font: 780 0.34rem/1 IBM Plex Mono, monospace; }
.handover-control-chain__rail > i { height: 2px; background: linear-gradient(90deg, #d07a50, #6f79cf); }
.handover-control-chain__acceptance { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 0.45rem; align-items: center; border-top: 1px solid rgba(164, 170, 218, 0.22); padding-top: 0.9rem; color: #b4b9d8; text-align: center; font: 800 0.39rem/1.2 IBM Plex Mono, monospace; }
.handover-control-chain__acceptance i { color: #da976d; }
.handover-control-chain__acceptance b { color: #80c8bc; }
.handover-control-chain__footer { color: #aeb3d1; background: #1b1e39; }

.handover-section { background: linear-gradient(180deg, #f7f6f2, #eff1f5); }
.handover-status-key { grid-template-columns: repeat(4, minmax(0, 1fr)); background: #dedfe7; }
.handover-status-key > span:first-child { box-shadow: inset 0 3px #378d7d; }
.handover-status-key > span:nth-child(2) { box-shadow: inset 0 3px #d69a46; }
.handover-status-key > span:nth-child(3) { box-shadow: inset 0 3px #c65f43; }
.handover-status-key > span:nth-child(4) { box-shadow: inset 0 3px #777c91; }
.handover-status-key > span:nth-child(2) i { color: #a66d1c; }
.handover-status-key > span:nth-child(3) i { color: #b64d35; }
.handover-status-key > span:nth-child(4) i { color: #686d82; }
.handover-form__heading { border-top-color: #d07a50; background: #2b2e58; }
.handover-form__heading .premium-eyebrow { color: #e6b18d; }
.handover-form__heading--controls { border-top-color: #6873c9; }
.handover-form__heading--controls .premium-eyebrow { color: #aeb6ef; }
.handover-form__heading > span b { color: #e6b18d; font: inherit; }
.handover-control-group:nth-child(4n + 1) .handover-control-group__heading span { background: #b75f3e; }
.handover-control-group:nth-child(4n + 2) .handover-control-group__heading span { background: #4f589e; }
.handover-control-group:nth-child(4n + 3) .handover-control-group__heading span { background: #388b84; }
.handover-control-group:nth-child(4n) .handover-control-group__heading span { color: #44330e; background: #d3a44f; }
.handover-status-choices { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.handover-status-choices label:first-child input:checked + span { border-color: #318375; color: #1e6358; background: #e7f4f0; box-shadow: inset 0 -3px #378d7d; }
.handover-status-choices label:nth-child(2) input:checked + span { border-color: #c68a33; color: #7b561d; background: #fff5e4; box-shadow: inset 0 -3px #d69a46; }
.handover-status-choices label:nth-child(3) input:checked + span { border-color: #b9543c; color: #893a28; background: #fff0eb; box-shadow: inset 0 -3px #c65f43; }
.handover-status-choices label:nth-child(4) input:checked + span { border-color: #777c91; color: #565b70; background: #eff0f4; box-shadow: inset 0 -3px #777c91; }
.handover-form, .handover-report { scroll-margin-top: 6.5rem; }
.handover-report { border-top-color: #d07a50; }
.handover-report__type { display: flex; gap: 0.4rem; align-items: center; margin: 0.75rem 0 0; color: #5b607c; font-size: 0.5rem; font-weight: 800; }
.handover-report__type i { color: #b75f3e; }
.handover-report__metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.handover-coverage > div i { background: linear-gradient(90deg, #4f589e, #378d7d); }
.handover-report__blockers { border: 1px solid #edc1b6; padding: 0.7rem; background: #fff6f3; }
.handover-report__blockers > h3 { color: #963e2a; }
.handover-report__blockers > p { margin: -0.2rem 0 0.6rem; color: #81594f; font-size: 0.46rem; line-height: 1.55; }
.handover-report__blockers li > i { color: #b84e37; }
.handover-result-status--outstanding { color: #8e3b29; background: #fbe8e3; }
.handover-result-status--unverified { color: #78531b; background: #fbefd9; }
.handover-method__flow { border-top-color: #d07a50; }
.handover-method__flow article:nth-child(1) i { color: #b75f3e; }
.handover-method__flow article:nth-child(2) i { color: #4f589e; }
.handover-method__flow article:nth-child(3) i { color: #388b84; }
.handover-boundaries { background: radial-gradient(circle at 10% 75%, rgba(208, 122, 80, 0.15), transparent 22rem), #252849; }
.handover-boundaries__grid { background: rgba(137, 145, 202, 0.18); }
.handover-boundaries__grid article { background: rgba(31, 34, 67, 0.95); }
.handover-boundaries__grid article:nth-child(1) i { background: #d07a50; }
.handover-boundaries__grid article:nth-child(2) i { background: #6873c9; }
.handover-boundaries__grid article:nth-child(3) i { color: #41320e; background: #d3a44f; }
.handover-sources__links a:nth-child(4n + 1) > i:first-child { background: #b75f3e; }
.handover-sources__links a:nth-child(4n + 2) > i:first-child { background: #4f589e; }
.handover-sources__links a:nth-child(4n + 3) > i:first-child { background: #388b84; }
.handover-sources__links a:nth-child(4n) > i:first-child { color: #43330e; background: #d3a44f; }
.handover-next__layout { border-left-color: #d07a50; background: #faf0e8; }

@media (max-width: 900px) {
  .handover-status-key { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .handover-report__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .handover-status-key, .handover-status-choices, .handover-report__metrics { grid-template-columns: minmax(0, 1fr); }
  .handover-control-chain__rail { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .handover-control-chain__rail > i { display: none; }
}
@media print {
  .handover-hero, .handover-section .m365-intro, .handover-section .m365-form, .handover-method, .handover-boundaries, .handover-sources, .handover-faq, .handover-next { display: none !important; }
  .handover-section { display: block !important; padding: 0; background: #fff !important; }
  .handover-report { display: block !important; }
}
