/* Homepage additions. Shared branding, artwork and interior pages stay in site.css. */
.edge-dot { display: inline-block; width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #57e1bd; box-shadow: 0 0 0 4px rgb(87 225 189 / 12%); }
.home-edge .nav__item--cta { margin-left: 18px; }
.home-edge .nav__item--cta .edge-dot { background: #234c40; box-shadow: none; }
.home-edge .nav__link { padding-inline: 12px; font-size: 15px; }
.edge-mobile-demo { display: none; }
/* Account for the existing footer gap without adding it beyond 100% width. */
@media (min-width: 901px) {
  .home-edge .site-footer__top { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
}
.edge-announcement { background: #091b43; color: #d5e2fa; font-size: 13px; border-bottom: 1px solid #294272; }
.edge-announcement .container { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px 22px; padding-block: 13px; }
.edge-announcement__label { display: inline-flex; gap: 10px; align-items: center; color: #7df0cf; font-size: 11px; font-weight: 750; letter-spacing: .1em; }
.edge-announcement a { color: var(--gold); font-weight: 650; text-underline-offset: 4px; }
.edge-announcement a:hover { text-decoration: underline; }
.edge-hero-link { display: inline-flex; align-items: center; gap: 14px; }
.edge-hero-link:hover { background: #122f74; color: #fff; }
.edge-section { background: linear-gradient(180deg, #f4f7ff, #fff); border-bottom: 1px solid #e4eaf5; }
.edge-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: 52px; }
.edge-copy h2 { font-size: clamp(30px, 3.2vw, 42px); line-height: 1.1; letter-spacing: -.035em; margin: 12px 0 20px; }
.edge-copy > p { color: var(--text-muted); font-size: 16px; line-height: 1.8; }
.edge-capabilities { margin: 26px 0 30px; }
.edge-capabilities li { display: flex; gap: 16px; margin-bottom: 22px; }
.edge-capabilities li > span { display: grid; place-items: center; width: 32px; height: 32px; flex: 0 0 32px; border: 1px solid #d5def5; background: #eaf0fe; border-radius: 8px; color: var(--blue); font: 11px ui-monospace, monospace; }
.edge-capabilities strong { font-size: 16px; }
.edge-capabilities p { color: var(--text-muted); font-size: 14px; line-height: 1.7; margin: 5px 0 0; }
.edge-secondary-link { display: block; width: fit-content; font-size: 13px; font-weight: 600; color: var(--blue); margin-top: 17px; text-underline-offset: 4px; }
.edge-secondary-link:hover { text-decoration: underline; }
.edge-console { min-width: 0; overflow: hidden; border: 1px solid #263e65; border-radius: 16px; background: #0b1831; color: #d8e5ff; box-shadow: 0 24px 60px -24px rgb(11 30 75 / 45%); font-size: 13px; }
.edge-console__bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 22px; background: #101f3d; border-bottom: 1px solid #263651; font: 10px ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .04em; }
.edge-console__bar > span:first-child { display: inline-flex; align-items: center; gap: 11px; }
.edge-sample-label { color: #b9c9e3; border: 1px solid #425475; padding: 3px 6px; border-radius: 4px; font-size: 9px; }
.edge-console__intro { padding: 22px 24px 0; }
.edge-console__intro h3 { color: #f2f6ff; font-size: 22px; line-height: 1.3; margin: 0 0 7px; }
.edge-console__intro p { color: #a9bbd8; font-size: 12px; line-height: 1.6; margin: 0 0 20px; }
.edge-scenarios { display: flex; gap: 6px; padding: 0 24px 17px; flex-wrap: wrap; }
.edge-console [hidden] { display: none; }
.edge-scenarios button { border: 1px solid #3b506f; background: #122440; color: #bacce6; font: inherit; font-size: 11px; padding: 8px 10px; border-radius: 6px; cursor: pointer; transition: background .2s, border-color .2s; }
.edge-scenarios button:hover { background: #253c61; color: #fff; }
.edge-scenarios button[aria-pressed="true"] { background: #193d4a; border-color: #59d9bd; color: #8aefd5; }
.edge-assessment { margin: 0 24px 20px; padding: 18px; background: linear-gradient(135deg, #142b49, #10213b); border: 1px solid #344b6a; border-radius: 10px; }
.edge-assessment__heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.edge-assessment__heading > span { color: #a9bddb; font: 9px ui-monospace, monospace; letter-spacing: .07em; }
.edge-assessment__heading strong { font-size: 16px; }
.edge-assessment[data-tone="block"] .edge-assessment__heading strong, .edge-assessment[data-tone="block"] .edge-policy strong { color: #ffaaa7; }
.edge-assessment[data-tone="allow"] .edge-assessment__heading strong, .edge-assessment[data-tone="allow"] .edge-policy strong { color: #80ebca; }
.edge-assessment[data-tone="caution"] .edge-assessment__heading strong { color: #f4d080; }
.edge-assessment[data-tone="caution"] .edge-policy strong { color: #ffaaa7; }
.edge-evidence { margin: 0; }
.edge-evidence > div { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 12px; padding-block: 6px; line-height: 1.5; }
.edge-evidence dt { color: #9fb2cf; font-size: 12px; }
.edge-evidence dd { margin: 0; color: #e6edfa; font-size: 12px; overflow-wrap: anywhere; }
.edge-evidence [data-edge-ip] { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.edge-policy { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 13px; padding-top: 13px; border-top: 1px solid #324765; font-size: 11px; }
.edge-policy > span { color: #adc0dc; }
.edge-policy strong { letter-spacing: .09em; }
.edge-feed-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 24px 12px; font: 10px ui-monospace, monospace; }
.edge-stream-state { color: #87cbbf; font-size: 9px; margin-left: 7px; }
.edge-feed-heading button { border: 1px solid #3a5070; background: transparent; color: #c4d4ed; padding: 6px 8px; border-radius: 5px; font: 10px var(--font-body); cursor: pointer; }
.edge-feed-heading button:hover { background: #1a3153; color: #fff; }
.edge-log-wrap { padding: 0 24px; }
.edge-feed-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 24px 18px; border: 1px solid #2d4160; border-radius: 8px; background: #10213b; }
.edge-feed-stats > div { min-width: 0; padding: 10px 12px; }
.edge-feed-stats > div + div { border-left: 1px solid #2d4160; }
.edge-feed-stats dt { color: #acbdd8; font-size: 10px; }
.edge-feed-stats dd { margin: 4px 0 0; color: #edf3ff; font: 600 20px ui-monospace, SFMono-Regular, Consolas, monospace; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.edge-feed-stats [data-tone="block"] dd { color: #ffb0b1; }
.edge-feed-stats [data-tone="allow"] dd { color: #88e8c9; }
.edge-feed-stats [data-tone="review"] dd { color: #f4d080; }
.edge-feed-note { margin: 12px 24px 0; color: #a5b8d5; font-size: 10px; line-height: 1.6; }
.edge-log { table-layout: fixed; border-collapse: collapse; width: 100%; text-align: left; font-size: 11px; line-height: 1.4; }
.edge-log th { color: #9aafce; font-size: 10px; font-weight: 500; padding: 0 0 9px; }
.edge-log th:first-child { width: 18%; }
.edge-log th:nth-child(2) { width: 19%; }
.edge-log td { height: 66px; border-top: 1px solid #223451; color: #d7e3f6; padding: 10px 8px 10px 0; vertical-align: top; white-space: normal; overflow-wrap: anywhere; }
.edge-log td:first-child { font: 10px ui-monospace, monospace; color: #9fb4d1; }
.edge-log time { display: block; white-space: nowrap; line-height: 1.6; font-variant-numeric: tabular-nums; }
.edge-log__country { display: block; color: #bfcee5; font-size: 9px; letter-spacing: .1em; margin-top: 5px; }
.edge-log__reason { display: block; font-size: 11px; line-height: 1.5; }
.edge-log__layer { display: block; margin-top: 4px; color: #95acca; font-size: 9px; line-height: 1.4; }
.edge-status { display: inline-block; font-size: 10px; font-weight: 600; border-radius: 4px; padding: 3px 7px; }
.edge-status[data-tone="block"] { background: #462b3c; color: #ffb0b1; }
.edge-status[data-tone="allow"] { background: #143d39; color: #88e8c9; }
.edge-status[data-tone="review"] { background: #3d3423; color: #f4d080; }
.edge-log .edge-log__new { animation: edge-row-in .4s ease-out; }
.edge-console__footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-top: 14px; padding: 14px 24px; border-top: 1px solid #253854; color: #9fb1cc; font-size: 10px; }
.edge-console__footer a { color: #8eebd3; font-weight: 600; text-underline-offset: 4px; }
.edge-console__footer a:hover { text-decoration: underline; }
@keyframes edge-row-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
@media (min-width: 961px) and (max-width: 1100px) {
  .home-edge .site-header__inner { gap: 10px; }
  .home-edge .nav__link { padding-inline: 9px; font-size: 13px; }
  .home-edge .nav__item--cta { margin-left: 8px; }
}
@media (max-width: 960px) {
  .edge-layout { grid-template-columns: 1fr; gap: 36px; }
  .edge-copy { max-width: 660px; }
  .edge-console { width: 100%; max-width: 660px; justify-self: center; }
  .edge-mobile-demo { display: inline-flex; align-items: center; gap: 7px; margin-left: auto; padding: 9px 12px; border: 1px solid var(--gold-border); border-radius: 6px; color: var(--ink); background: var(--gold); font-size: 12px; font-weight: 650; white-space: nowrap; }
  .home-edge .nav__item--cta { margin: 14px 0 0; }
  .home-edge .nav-toggle { flex: 0 0 38px; }
}
@media (max-width: 480px) {
  .home-edge .site-header__inner { gap: 10px; }
  .home-edge .site-logo img { width: 136px; }
  .edge-mobile-demo { padding: 8px; font-size: 11px; }
  .edge-announcement .container { gap: 6px 12px; padding-block: 10px; font-size: 11px; }
  .edge-announcement__label { font-size: 10px; }
  .edge-announcement a { flex-basis: 100%; text-align: center; }
  .edge-console__bar { padding: 14px; font-size: 9px; gap: 6px; }
  .edge-console__bar > span:first-child { gap: 7px; }
  .edge-console__intro { padding-inline: 16px; }
  .edge-scenarios { padding-inline: 16px; gap: 5px; }
  .edge-scenarios button { font-size: 10px; padding: 8px; }
  .edge-assessment { margin-inline: 16px; padding: 13px; }
  .edge-evidence > div { grid-template-columns: 78px minmax(0, 1fr); gap: 8px; }
  .edge-evidence dd, .edge-evidence dt { font-size: 11px; }
  .edge-assessment__heading > span { font-size: 8px; }
  .edge-assessment__heading strong { font-size: 14px; }
  .edge-feed-heading { padding-inline: 16px; }
  .edge-stream-state { display: block; margin: 5px 0 0; }
  .edge-log-wrap { padding-inline: 16px; }
  .edge-feed-stats { margin-inline: 16px; }
  .edge-feed-stats > div { padding: 10px 7px; }
  .edge-feed-stats dt { font-size: 9px; }
  .edge-feed-stats dd { font-size: 17px; }
  .edge-feed-note { margin-inline: 16px; }
  .edge-log th:first-child { width: 23%; }
  .edge-log th:nth-child(2) { width: 24%; }
  .edge-log td { height: 85px; padding-right: 5px; }
  .edge-status { font-size: 9px; padding-inline: 5px; }
  .edge-console__footer { padding-inline: 16px; flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .edge-log .edge-log__new { animation: none; }
  .edge-scenarios button { transition: none; }
}
