 :root {
   --yd-bg: #f6f7f9;
   --yd-panel: #ffffff;
   --yd-card: #f1f4f8;
   --yd-border: #dce1ea;
   --yd-text: #15171c;
   --yd-muted: #5f6876;
   --yd-dim: #7b8493;
   --yd-gold: #2454b8;
   --yd-gold-strong: #1c4496;
   --yd-green: #15803d;
   --yd-focus: #2454b8;
   --yd-header-height: 68px;
 }

 html {
   scroll-padding-top: calc(var(--yd-header-height) + 18px);
   overflow-x: hidden;
 }

 body.yd-has-shell {
   padding-top: var(--yd-header-height);
   overflow-x: clip;
 }

 body.yd-has-shell *,
 body.yd-has-shell *::before,
 body.yd-has-shell *::after {
   min-width: 0;
 }

 body.yd-has-shell a,
 body.yd-has-shell button {
   max-width: 100%;
   overflow-wrap: anywhere;
   word-break: normal;
 }

 body.yd-has-shell > nav:not(.yd-site-header),
 body.yd-has-shell > footer:not(.yd-site-footer),
 body.yd-has-shell > .navbar {
   display: none !important;
 }

 .yd-skip {
   position: fixed;
   left: 16px;
   top: 12px;
   z-index: 100000;
   transform: translateY(-180%);
   background: #ffffff;
   color: var(--yd-text);
   padding: 10px 14px;
   border-radius: 8px;
   font: 700 14px/1 system-ui, -apple-system, Segoe UI, sans-serif;
   text-decoration: none;
   transition: transform 0.16s ease;
 }

 .yd-skip:focus {
   transform: translateY(0);
   outline: 2px solid var(--yd-focus);
   outline-offset: 2px;
 }

 .yd-site-header {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: 99999;
   min-height: var(--yd-header-height);
   background: rgba(255, 255, 255, 0.96);
   border-bottom: 1px solid var(--yd-border);
   box-shadow: 0 10px 28px rgba(24, 34, 53, 0.07);
   backdrop-filter: blur(14px);
   -webkit-backdrop-filter: blur(14px);
 }

 .yd-shell-inner {
   width: min(1240px, calc(100% - 32px));
   max-width: 100%;
   min-height: var(--yd-header-height);
   margin: 0 auto;
   display: flex;
   align-items: center;
   gap: 20px;
 }

 .yd-brand {
   display: inline-flex;
   align-items: center;
   gap: 10px;
   color: var(--yd-text);
   text-decoration: none;
   font: 750 15px/1.2 system-ui, -apple-system, Segoe UI, sans-serif;
   white-space: nowrap;
 }

 .yd-brand-mark {
   display: grid;
   place-items: center;
   width: 34px;
   height: 34px;
   border-radius: 10px;
   color: #ffffff;
   background: var(--yd-gold);
   box-shadow: none;
 }

 .yd-primary-nav {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 4px;
   flex: 1;
 }

 .yd-primary-nav a,
 .yd-shell-actions a,
 .yd-mobile-panel a {
   text-decoration: none;
 }

 .yd-primary-nav a {
   color: var(--yd-muted);
   padding: 10px 11px;
   border-radius: 8px;
   font: 600 13px/1 system-ui, -apple-system, Segoe UI, sans-serif;
   white-space: nowrap;
 }

 .yd-primary-nav a:hover,
 .yd-primary-nav a[aria-current="page"] {
   color: var(--yd-text);
   background: #eef3ff;
 }

 .yd-shell-actions {
   display: flex;
   align-items: center;
   gap: 10px;
 }

 .yd-link-muted {
   color: var(--yd-muted);
   font: 650 13px/1 system-ui, -apple-system, Segoe UI, sans-serif;
   padding: 10px 4px;
 }

 .yd-cta {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex-wrap: wrap;
   min-height: 42px;
   max-width: 100%;
   padding: 0 16px;
   border-radius: 9px;
   color: #ffffff;
   background: var(--yd-gold);
   font: 750 13px/1 system-ui, -apple-system, Segoe UI, sans-serif;
   line-height: 1.2;
   text-align: center;
   box-shadow: none;
 }

 .yd-menu-button {
   display: none;
   align-items: center;
   justify-content: center;
   width: auto;
   min-width: 58px;
   height: 44px;
   padding: 0 12px;
   border-radius: 10px;
   border: 1px solid var(--yd-border);
   background: #ffffff;
   color: var(--yd-text);
   cursor: pointer;
   font: 750 13px/1 system-ui, -apple-system, Segoe UI, sans-serif;
   white-space: nowrap;
 }

 .yd-mobile-panel {
   display: none;
   border-top: 1px solid var(--yd-border);
   background: #ffffff;
 }

 .yd-mobile-panel[data-open="true"] {
   display: block;
 }

 .yd-mobile-grid {
   width: min(760px, calc(100% - 32px));
   max-width: 100%;
   margin: 0 auto;
   padding: 14px 0 18px;
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 8px;
 }

 .yd-mobile-panel a {
   color: var(--yd-muted);
   min-height: 44px;
   display: flex;
   align-items: center;
   padding: 10px 12px;
   border-radius: 10px;
   background: #f6f7f9;
   border: 1px solid var(--yd-border);
   font: 650 14px/1.25 system-ui, -apple-system, Segoe UI, sans-serif;
   overflow-wrap: anywhere;
 }

 .yd-mobile-panel a:hover,
 .yd-mobile-panel a:focus-visible {
   color: var(--yd-text);
   border-color: rgba(36, 84, 184, 0.32);
 }

 .yd-site-footer {
   color: var(--yd-muted);
   background: #ffffff;
   border-top: 1px solid var(--yd-border);
   margin-top: 64px;
 }

 .yd-footer-inner {
   width: min(1240px, calc(100% - 32px));
   margin: 0 auto;
   padding: 46px 0 28px;
 }

 .yd-footer-grid {
   display: grid;
   grid-template-columns: minmax(240px, 1.45fr) repeat(4, minmax(150px, 1fr));
   gap: 28px;
 }

 .yd-footer-brand {
   color: var(--yd-text);
   font: 780 18px/1.2 system-ui, -apple-system, Segoe UI, sans-serif;
   margin-bottom: 10px;
 }

 .yd-footer-copy {
   max-width: 34rem;
   color: var(--yd-muted);
   font: 400 14px/1.65 system-ui, -apple-system, Segoe UI, sans-serif;
 }

 .yd-footer-col h2 {
   color: var(--yd-dim);
   font: 800 11px/1.2 system-ui, -apple-system, Segoe UI, sans-serif;
   letter-spacing: 0.12em;
   text-transform: uppercase;
   margin: 0 0 12px;
 }

 .yd-footer-col a {
   display: flex;
   align-items: center;
   min-height: 34px;
   color: var(--yd-muted);
   text-decoration: none;
   font: 560 13px/1.25 system-ui, -apple-system, Segoe UI, sans-serif;
 }

 .yd-footer-col a:hover {
   color: var(--yd-gold-strong);
 }

 .yd-footer-bottom {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   gap: 14px;
   margin-top: 34px;
   padding-top: 18px;
   border-top: 1px solid var(--yd-border);
   color: var(--yd-dim);
   font: 500 12px/1.5 system-ui, -apple-system, Segoe UI, sans-serif;
 }

 .yd-footer-bottom a {
   color: var(--yd-dim);
   text-decoration: none;
 }

 .yd-footer-bottom a:hover {
   color: var(--yd-gold-strong);
 }

 .yd-site-map {
   width: min(1240px, calc(100% - 32px));
   margin: 54px auto 0;
   padding: 28px;
   border: 1px solid var(--yd-border);
   border-radius: 12px;
   background: #ffffff;
   box-shadow: 0 16px 42px rgba(24, 34, 53, 0.08);
 }

 .yd-site-map h2 {
   color: var(--yd-text);
   font: 760 20px/1.2 system-ui, -apple-system, Segoe UI, sans-serif;
   margin: 0 0 8px;
 }

 .yd-site-map p {
   color: var(--yd-muted);
   font: 400 14px/1.55 system-ui, -apple-system, Segoe UI, sans-serif;
   margin: 0 0 18px;
 }

 .yd-site-map-grid {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 14px;
 }

 .yd-site-map-card {
   border: 1px solid var(--yd-border);
   border-radius: 8px;
   background: #f6f7f9;
   padding: 16px;
 }

 .yd-site-map-card h3 {
   margin: 0 0 8px;
   color: var(--yd-text);
   font: 760 13px/1.2 system-ui, -apple-system, Segoe UI, sans-serif;
 }

 .yd-site-map-card a {
   display: block;
   min-height: 30px;
   color: var(--yd-muted);
   text-decoration: none;
   font: 560 13px/1.3 system-ui, -apple-system, Segoe UI, sans-serif;
 }

 .yd-site-map-card a:hover {
   color: var(--yd-gold-strong);
 }

 .yd-site-header a:focus-visible,
 .yd-site-footer a:focus-visible,
 .yd-site-map a:focus-visible,
 .yd-menu-button:focus-visible {
   outline: 2px solid var(--yd-focus);
   outline-offset: 3px;
 }

 @media (max-width: 1120px) {
   .yd-primary-nav,
   .yd-shell-actions {
     display: none;
   }

   .yd-shell-inner {
     justify-content: space-between;
   }

   .yd-menu-button {
     display: inline-flex;
   }

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

   .yd-footer-col:first-child {
     grid-column: 1 / -1;
   }

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

 @media (max-width: 640px) {
   :root {
     --yd-header-height: 64px;
   }

   body.yd-has-shell {
     overflow-x: hidden;
   }

   .yd-site-header,
   .yd-mobile-panel {
     max-width: 100vw;
     overflow-x: hidden;
   }

   .yd-shell-inner {
     width: calc(100% - 24px);
     gap: 12px;
   }

   .yd-brand {
     font-size: 14px;
   }

   .yd-brand-mark {
     width: 30px;
     height: 30px;
   }

   .yd-mobile-grid,
   .yd-footer-grid,
   .yd-site-map-grid {
     grid-template-columns: 1fr;
   }

   .yd-mobile-grid {
     width: calc(100% - 24px);
   }

   .yd-mobile-panel a,
   .yd-footer-col a,
   .yd-site-map-card a,
   .yd-footer-bottom a {
     white-space: normal;
     overflow-wrap: anywhere;
   }

   .yd-cta,
   .yd-menu-button {
     flex-shrink: 0;
   }

   .yd-footer-bottom {
     flex-direction: column;
   }
 }

 @media (prefers-reduced-motion: reduce) {
   .yd-skip {
     transition: none;
   }
 }

/* Public cohesion layer
   Legacy pages still ship their own local CSS. These scoped rules normalize
   public pages to one product UI without touching isolated tools such as /app. */
body.yd-has-shell {
  --bg: #f6f7f9;
  --card: #ffffff;
  --card-hover: #f8fafc;
  --border: #dce1ea;
  --fg: #20232b;
  --muted: #5f6876;
  --accent: #2454b8;
  --success: #15803d;
  --warn: #b88718;
  --danger: #b42318;
  --gold: #2454b8;
  --ink: #15171c;
  --panel: #ffffff;
  --bdr: #dce1ea;
  --tx: #20232b;
  --sub: #5f6876;
  --dim: #7b8493;
  background: #f6f7f9 !important;
  color: #20232b !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

body.yd-has-shell ::selection {
  background: #cfe0ff;
  color: #15171c;
}

body.yd-has-shell :where(p, li, td, dd, figcaption, small, label, input, select, textarea, summary) {
  font-size: max(1rem, 16px);
  line-height: 1.55;
}

body.yd-has-shell :where(button, a, input, select, textarea, summary, [role="button"], [tabindex]:not([tabindex="-1"])) {
  min-height: 44px;
}

body.yd-has-shell :where(button, a, input, select, textarea, summary, [role="button"], [tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 3px solid rgba(36, 84, 184, 0.32) !important;
  outline-offset: 3px !important;
}

body.yd-has-shell [style*="color:#333"],
body.yd-has-shell [style*="color: #333"],
body.yd-has-shell [style*="color:#444"],
body.yd-has-shell [style*="color: #444"],
body.yd-has-shell [style*="color:#555"],
body.yd-has-shell [style*="color: #555"],
body.yd-has-shell [style*="color:#666"],
body.yd-has-shell [style*="color: #666"],
body.yd-has-shell [style*="color:#777"],
body.yd-has-shell [style*="color: #777"],
body.yd-has-shell [style*="color:#888"],
body.yd-has-shell [style*="color: #888"],
body.yd-has-shell [style*="color:#999"],
body.yd-has-shell [style*="color: #999"],
body.yd-has-shell [style*="color:var(--dim)"],
body.yd-has-shell [style*="color: var(--dim)"],
body.yd-has-shell [style*="color:var(--sec)"],
body.yd-has-shell [style*="color: var(--sec)"] {
  color: #566171 !important;
}

body.yd-has-shell [style*="background:#0"],
body.yd-has-shell [style*="background: #0"],
body.yd-has-shell [style*="background:#1"],
body.yd-has-shell [style*="background: #1"],
body.yd-has-shell [style*="background:var(--card)"],
body.yd-has-shell [style*="background: var(--card)"],
body.yd-has-shell [style*="background:var(--panel)"],
body.yd-has-shell [style*="background: var(--panel)"] {
  background: #ffffff !important;
  color: #20232b !important;
  border-color: #dce1ea !important;
}

body.yd-has-shell > header:not(.yd-site-header),
body.yd-has-shell > .topnav,
body.yd-has-shell > .skip-link {
  display: none !important;
}

body.yd-has-shell main,
body.yd-has-shell .container,
body.yd-has-shell .wrap {
  width: min(1180px, calc(100% - 48px)) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.yd-has-shell main {
  padding-top: 74px !important;
}

body.yd-has-shell a {
  color: #2454b8 !important;
}

body.yd-has-shell a:hover {
  color: #183d8f !important;
}

body.yd-has-shell .yd-brand,
body.yd-has-shell .yd-brand:visited {
  color: #15171c !important;
}

body.yd-has-shell .yd-primary-nav a,
body.yd-has-shell .yd-link-muted,
body.yd-has-shell .yd-mobile-panel a {
  color: #5f6876 !important;
}

body.yd-has-shell .yd-primary-nav a:hover,
body.yd-has-shell .yd-primary-nav a[aria-current="page"],
body.yd-has-shell .yd-mobile-panel a:hover,
body.yd-has-shell .yd-mobile-panel a:focus-visible {
  color: #15171c !important;
}

body.yd-has-shell .yd-cta,
body.yd-has-shell .yd-cta:visited,
body.yd-has-shell .yd-cta:hover {
  color: #ffffff !important;
}

body.yd-has-shell h1,
body.yd-has-shell h2,
body.yd-has-shell h3,
body.yd-has-shell .section-title,
body.yd-has-shell .hero-d h1,
body.yd-has-shell .cta-bottom h2 {
  color: #15171c !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: 0 !important;
}

body.yd-has-shell h1,
body.yd-has-shell .hero h1,
body.yd-has-shell .hero-d h1 {
  font-size: clamp(38px, 4.7vw, 56px) !important;
  line-height: 1.04 !important;
  font-weight: 820 !important;
}

body.yd-has-shell h1 em {
  color: #15171c !important;
  font-style: normal !important;
}

body.yd-has-shell h2,
body.yd-has-shell .section-title {
  font-size: clamp(25px, 3vw, 38px) !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
}

body.yd-has-shell .hero-card h2,
body.yd-has-shell .context-box h2,
body.yd-has-shell .use-card h2,
body.yd-has-shell .proof-card h2 {
  font-size: clamp(21px, 2.2vw, 30px) !important;
  line-height: 1.14 !important;
  font-weight: 800 !important;
  overflow-wrap: anywhere !important;
}

body.yd-has-shell .proof-card h2 {
  font-size: clamp(20px, 2vw, 27px) !important;
}

body.yd-has-shell h3 {
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 780 !important;
}

body.yd-has-shell p,
body.yd-has-shell li,
body.yd-has-shell td,
body.yd-has-shell .lead,
body.yd-has-shell .subheading,
body.yd-has-shell .section-lede,
body.yd-has-shell .section-desc,
body.yd-has-shell .card-description,
body.yd-has-shell .item .desc,
body.yd-has-shell .hero-d p,
body.yd-has-shell .note {
  color: #566171 !important;
}

body.yd-has-shell .eyebrow,
body.yd-has-shell .tag,
body.yd-has-shell .section-count,
body.yd-has-shell .hero-d .ct .l,
body.yd-has-shell .social-proof-label {
  color: #2454b8 !important;
  letter-spacing: 0.08em !important;
}

body.yd-has-shell .hero,
body.yd-has-shell .hero-d {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-top: 54px !important;
  padding-bottom: 42px !important;
}

body.yd-has-shell .card,
body.yd-has-shell .item,
body.yd-has-shell .panel,
body.yd-has-shell .truth,
body.yd-has-shell .path,
body.yd-has-shell .step,
body.yd-has-shell .context-box,
body.yd-has-shell .hero-card,
body.yd-has-shell .proof-card,
body.yd-has-shell .use-card,
body.yd-has-shell .inside li,
body.yd-has-shell .file,
body.yd-has-shell .st,
body.yd-has-shell .note,
body.yd-has-shell .announcement,
body.yd-has-shell .social-proof,
body.yd-has-shell .skeleton-card,
body.yd-has-shell .overlay .box,
body.yd-has-shell details.matrix,
body.yd-has-shell .cta-bottom {
  background: #ffffff !important;
  border: 1px solid #dce1ea !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 30px rgba(24, 34, 53, 0.06) !important;
  color: #20232b !important;
}

body.yd-has-shell .announcement strong {
  color: #7a580c !important;
}

body.yd-has-shell .truth,
body.yd-has-shell .status-list li,
body.yd-has-shell label,
body.yd-has-shell .check label {
  color: #5f6876 !important;
}

body.yd-has-shell .truth strong,
body.yd-has-shell .status-list strong {
  color: #15171c !important;
}

body.yd-has-shell .item .file,
body.yd-has-shell .card .file {
  display: inline-flex !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 24px !important;
  margin: 0 0 8px !important;
  padding: 4px 9px !important;
  background: #eef3ff !important;
  border: 1px solid #dce1ea !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  color: #2454b8 !important;
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
}

body.yd-has-shell .card:hover,
body.yd-has-shell .item:hover,
body.yd-has-shell a.card:hover,
body.yd-has-shell .cats a:hover {
  border-color: #bfc7d4 !important;
  box-shadow: 0 16px 42px rgba(24, 34, 53, 0.08) !important;
  transform: none !important;
}

body.yd-has-shell .icon {
  display: none !important;
}

body.yd-has-shell .count,
body.yd-has-shell .file-pill,
body.yd-has-shell .cats a,
body.yd-has-shell .mark {
  background: #eef3ff !important;
  border: 1px solid #dce1ea !important;
  border-radius: 999px !important;
  color: #2454b8 !important;
  box-shadow: none !important;
}

body.yd-has-shell .mark {
  width: 34px !important;
  height: 34px !important;
  border-radius: 8px !important;
}

body.yd-has-shell .inside li::before {
  content: "" !important;
  margin: 0 !important;
}

body.yd-has-shell .grid,
body.yd-has-shell .steps,
body.yd-has-shell .stats {
  gap: 14px !important;
}

body.yd-has-shell .btn,
body.yd-has-shell .button,
body.yd-has-shell .btn-primary,
body.yd-has-shell .btn-p,
body.yd-has-shell button.btn,
body.yd-has-shell input[type="submit"] {
  min-height: 44px !important;
  border-radius: 8px !important;
  background: #2454b8 !important;
  border: 1px solid #2454b8 !important;
  color: #ffffff !important;
  font-weight: 780 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

body.yd-has-shell .btn:hover,
body.yd-has-shell .button:hover,
body.yd-has-shell .btn-primary:hover,
body.yd-has-shell .btn-p:hover,
body.yd-has-shell button.btn:hover {
  background: #183d8f !important;
  border-color: #183d8f !important;
  color: #ffffff !important;
  transform: none !important;
}

body.yd-has-shell .btn-secondary,
body.yd-has-shell .btn.secondary,
body.yd-has-shell .button.secondary,
body.yd-has-shell .btn-g {
  background: #ffffff !important;
  border: 1px solid #bfc7d4 !important;
  color: #15171c !important;
}

body.yd-has-shell pre,
body.yd-has-shell .result {
  background: #101827 !important;
  border: 1px solid #24324a !important;
  border-radius: 8px !important;
  color: #dbe7ff !important;
}

body.yd-has-shell input,
body.yd-has-shell select,
body.yd-has-shell textarea {
  background: #ffffff !important;
  color: #15171c !important;
  border: 1px solid #bfc7d4 !important;
  border-radius: 8px !important;
}

body.yd-has-shell input:focus,
body.yd-has-shell select:focus,
body.yd-has-shell textarea:focus,
body.yd-has-shell button:focus-visible,
body.yd-has-shell a:focus-visible {
  outline: 3px solid rgba(36, 84, 184, 0.24) !important;
  outline-offset: 2px !important;
  border-color: #2454b8 !important;
}

body.yd-has-shell table {
  background: #ffffff !important;
  border-radius: 8px !important;
  overflow: hidden;
}

body.yd-has-shell th {
  background: #f1f4f8 !important;
  color: #2454b8 !important;
}

body.yd-has-shell th,
body.yd-has-shell td {
  border-color: #dce1ea !important;
}

body.yd-has-shell .pill-ok,
body.yd-has-shell .tag.live {
  background: #eaf8ef !important;
  color: #15803d !important;
}

body.yd-has-shell .pill-warn,
body.yd-has-shell .tag.partial {
  background: #fff4d7 !important;
  color: #7a580c !important;
}

body.yd-has-shell .pill-info,
body.yd-has-shell .tag.ready,
body.yd-has-shell .tag.gen {
  background: #eef3ff !important;
  color: #2454b8 !important;
}

@media (max-width: 760px) {
  body.yd-has-shell main,
  body.yd-has-shell .container,
  body.yd-has-shell .wrap {
    width: calc(100% - 28px) !important;
  }

  body.yd-has-shell main {
    padding-top: 72px !important;
  }

  body.yd-has-shell h1,
  body.yd-has-shell .hero h1,
  body.yd-has-shell .hero-d h1 {
    font-size: clamp(34px, 11vw, 46px) !important;
  }
}
