/* A phone presents the briefing first, with the same signals and sources as desktop. */
/* The diagram keeps the same coordinate system in every language, including RTL editions. */
.signal-stage { direction: ltr; }
@media (max-width: 960px) {
  :where(body:not(.page-admin):not(.page-login):not(.page-translations):not(.page-analytics)) .wrap {
    padding-inline: 24px;
  }
  .page-event .article-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .page-event .article-layout > aside {
    position: static;
    order: initial;
  }
  .page-event .article, .page-event .article-layout > aside {
    min-width: 0;
  }
}

@media (max-width: 760px) {
  :where(body:not(.page-admin):not(.page-login):not(.page-translations):not(.page-analytics)) .wrap {
    padding-inline: 20px;
  }
  :where(body:not(.page-admin):not(.page-login):not(.page-translations):not(.page-analytics)) .masthead {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 0;
    gap: 10px 16px;
    padding-block: 16px 8px;
  }
  .world-brand { min-width: 0; gap: 10px; }
  .world-emblem { width: 36px; height: 36px; }
  .world-wordmark { gap: 5px; }
  .world-wordmark strong { font-size: 23px; }
  .world-wordmark > span { font-size: 9px; letter-spacing: .08em; }
  .masthead .header-actions { gap: 8px; margin: 0; min-width: 0; }
  .masthead > nav {
    grid-column: 1 / -1;
    width: 100%;
    gap: 8px;
    font-size: 13px;
    align-items: stretch;
    justify-content: space-between;
  }
  .masthead > nav a {
    display: flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 44px;
    max-width: none;
    padding: 8px 4px;
    line-height: 1.4;
    text-align: center;
    overflow-wrap: anywhere;
  }
  .masthead .language-picker summary {
    min-height: 44px;
    padding: 10px;
    font-size: 13px;
    gap: 5px;
  }
  .language-menu {
    width: min(280px, calc(100vw - 32px));
    max-height: 70vh;
    max-height: min(70dvh, calc(100dvh - 112px));
    overscroll-behavior-y: contain;
    padding: 8px;
  }
  .language-menu a { min-height: 48px; padding: 11px 14px; font-size: 16px; }
  .language-menu a > span { flex-shrink: 0; }
  .masthead .rss { min-height: 44px; display: inline-flex; align-items: center; }

  /* The readable chronology is the primary phone control; the graph remains explorable. */
  .observatory { display: grid; grid-template-columns: minmax(0, 1fr); }
  .observatory-workspace { display: contents; }
  .observatory-topline { order: 0; padding-block: 14px; gap: 8px; }
  .observatory-intro { order: 1; padding-block: 28px 30px; }
  .observatory-chronology { order: 2; padding-block: 20px 24px; border-top: 1px solid #2c383d; border-bottom: 0; }
  .signal-detail { order: 3; }
  .observatory-map-panel { order: 4; padding-block: 30px; margin-top: 28px; border-top: 1px solid #2c383d; }
  .observatory-kicker { font-size: 10px; }
  .observatory-monitor { font-size: 11px; gap: 6px; line-height: 1.6; }
  .observatory-monitor #feed-status { padding-inline-start: 8px; min-width: 0; overflow-wrap: anywhere; }
  .observatory-eyebrow { font-size: 10px; margin-bottom: 18px; }
  .observatory-intro h1 { font-size: clamp(62px, 16.5vw, 102px); line-height: .93; }
  html:not([lang=en]) .observatory-intro h1 { font-size: clamp(36px, 9.5vw, 58px); line-height: 1.08; letter-spacing: -.035em; }
  .observatory-cover-row {
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 24px;
    margin-top: 27px;
    max-width: 620px;
    align-items: start;
  }
  .observatory-portrait { max-width: 210px; transform: none; border-width: 4px; }
  .observatory-portrait figcaption { gap: 5px; font-size: 10px; line-height: 1.5; padding: 8px 5px; }
  .observatory-portrait figcaption > span:first-child { font-size: 10px; }
  .observatory-description { font-size: 22px; line-height: 1.3; margin-bottom: 12px; max-width: none; }
  .observatory-instruction { font-size: 14px; line-height: 1.65; margin-bottom: 14px; max-width: none; }
  .observatory-explainer { min-height: 44px; font-size: 13px; padding-block: 9px; gap: 16px; }
  .observatory-motto { font-size: 12px; line-height: 1.65; margin-top: 15px; max-width: none; }

  .chronology-heading { align-items: flex-start; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
  .chronology-controls { width: 100%; gap: 8px; }
  .chronology-heading h2 { font-size: 15px; line-height: 1.45; margin-inline-end: auto; min-width: 0; }
  .chronology-controls button { flex: 0 0 44px; width: 44px; min-height: 44px; font-size: 18px; }
  .chronology-heading > span { font-size: 11px; max-width: 100%; text-align: start; justify-content: flex-start; gap: 7px; }
  .chronology-heading time { font-size: 11px; }
  .chronology-track { gap: 10px; scroll-padding-inline: 1px; padding: 5px 1px 12px; }
  .chronology-item {
    flex-basis: 76%;
    max-width: 320px;
    min-height: 132px;
    gap: 12px;
    padding: 16px;
    border: 1px solid #34483d;
    border-top: 2px solid #465d40;
    background: #101e20;
  }
  .chronology-point { display: none; }
  .chronology-item > time { font-size: 12px; color: #a4b69e; }
  .chronology-title { font-size: 16px; line-height: 1.5; -webkit-line-clamp: 3; color: #ccd8c6; }
  .chronology-item.is-selected { background: #1c2a1d; border-color: #70824b; border-top-color: #d7ff43; }
  html[dir=rtl] .chronology-item { padding: 16px; }

  .signal-detail { padding: 22px; row-gap: 22px; }
  .signal-detail-header h2 { font-size: 12px; }
  .signal-detail-meta, .signal-detail-meta > time { font-size: 12px; line-height: 1.6; }
  .signal-detail h3 { font-size: 27px; line-height: 1.25; letter-spacing: -.025em; }
  .signal-detail-status { font-size: 11px; padding: 5px 8px; }
  .signal-detail-summary, .signal-relevance p { font-size: 15px; line-height: 1.75; color: #bdcfb6; }
  .signal-relevance h4 { font-size: 13px; margin-bottom: 10px; }
  .signal-detail-source .eyebrow { font-size: 10px; }
  .signal-detail-source [data-signal-source] { font-size: 13px; }
  .signal-detail-source a { min-height: 44px; align-items: center; font-size: 14px; }
  .signal-detail-actions { gap: 10px; }
  .signal-open-button, .signal-discuss-link { min-height: 48px; font-size: 14px; align-items: center; }
  .signal-open-button { padding: 13px 16px; }
  .signal-discuss-link { padding-block: 12px; }

  .observatory-panel-heading h2 { font-size: 12px; }
  .observatory-panel-heading > span { font-size: 10px; }
  .observatory-map-filters { gap: 8px; }
  .observatory-map-filters button { min-height: 44px; font-size: 12px; padding: 10px 12px; gap: 7px; }
  .observatory-map-filters button > span:last-child { font-size: 11px; }
  .signal-stage { width: 100%; max-width: 100%; margin-top: 18px; }
  .signal-map-plane { min-width: 560px; min-height: 370px; }
  .signal-group { width: 104px; min-height: 78px; gap: 8px; }
  .signal-group > strong { line-height: 42px; font-size: 19px; }
  .group-orbit { width: 44px; height: 44px; }
  .group-name { font-size: 11px; }
  .signal-node time { font-size: 10px; }
  .observatory-map-note { font-size: 12px; line-height: 1.65; margin-block: 12px 20px; }
  .observatory-stat-grid span { font-size: 11px; line-height: 1.5; }

  .atlas-home .atlas-section { padding-top: 38px; }
  .atlas-home .atlas-section-head { gap: 16px; padding-bottom: 20px; margin-bottom: 12px; flex-wrap: wrap; }
  .atlas-home .atlas-section-head .eyebrow { font-size: 10px; margin-bottom: 12px; }
  .atlas-home .atlas-section-head h2 { font-size: 36px; line-height: 1.1; }
  html:not([lang=en]) .atlas-home .atlas-section-head h2 { font-size: 29px; line-height: 1.18; }
  .atlas-home .atlas-section-head > span, .atlas-home .archive-count { font-size: 12px; }
  .atlas-home .text-link, .atlas-home .atlas-section-head .text-link { font-size: 14px; min-height: 44px; padding-block: 10px; flex-shrink: 1; }
  .atlas-home .story-meta, .atlas-home .story-meta > time { font-size: 12px; letter-spacing: 0; }
  .atlas-home .story-card .story-title { font-size: 27px; line-height: 1.25; }
  .atlas-home .story-card .story-deck { font-size: 16px; line-height: 1.7; }
  .atlas-home .story-card .story-link, .atlas-home .story-link { min-height: 48px; font-size: 14px; padding-block: 12px; }
  .atlas-home .story-card .story-question { font-size: 13px; min-height: 44px; padding-block: 10px; }
  .atlas-home .start-label { font-size: 11px; letter-spacing: .03em; }
  .atlas-home .start-description { font-size: 15px; line-height: 1.7; }
  .atlas-home .start-title { font-size: 27px; line-height: 1.25; }
  .atlas-home .topic-links a { min-height: 44px; padding: 10px 12px; font-size: 12px; }
  .atlas-home .atlas-filters { gap: 10px; }
  .atlas-home .atlas-filters .search { min-width: 0; flex-basis: 100%; }
  .atlas-home .atlas-filters .search input { font-size: 16px; min-height: 48px; padding-block: 12px; }
  .atlas-home .atlas-filters select { font-size: 16px; min-height: 48px; max-width: 100%; flex: 1 1 100%; width: 100%; }
  .atlas-home .atlas-filters .check { font-size: 14px; min-height: 44px; flex: 1 1 100%; gap: 9px; }
  .atlas-home .atlas-filters .check input { width: 20px; height: 20px; }
  .atlas-home .atlas-filters .button { min-height: 48px; font-size: 14px; padding: 12px 18px; flex: 1 1 auto; }
  .atlas-home .archive-date { font-size: 12px; }
  .atlas-home .archive-tags { font-size: 11px; letter-spacing: 0; }
  .atlas-home .archive-tags .tag { font-size: 10px; }
  .atlas-home .archive-title { font-size: 26px; line-height: 1.3; }
  .atlas-home .archive-summary { font-size: 16px; line-height: 1.75; }
  .atlas-home .archive-bottom .text-link { font-size: 14px; min-height: 44px; padding-block: 10px; }
  .atlas-home .archive-bottom > span { font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }
  .atlas-home .radar-label, .atlas-home .radar-link time { font-size: 11px; }
  .atlas-home .radar-note, .atlas-home .radar-principle p { font-size: 15px; line-height: 1.75; }
  .atlas-home .radar-link > span { font-size: 16px; }
  .atlas-home .radar-principle .eyebrow { font-size: 11px; }
  .atlas-home .radar-principle .text-link { font-size: 14px; }
  .atlas-home .follow-banner { padding: 28px 24px; gap: 22px; margin-top: 38px; }
  .atlas-home .follow-copy .eyebrow { font-size: 10px; }
  .atlas-home .follow-description { font-size: 16px; line-height: 1.7; }
  .atlas-home .follow-actions { width: 100%; gap: 14px; }
  .atlas-home .hero-primary { width: 100%; font-size: 14px; min-height: 48px; }
  .atlas-home .hero-secondary, .atlas-home button.hero-secondary, .atlas-home .follow-actions .text-link { font-size: 14px; min-height: 44px; }
  .atlas-home .rss-help { font-size: 14px; }
  .atlas-home .rss-help summary { min-height: 44px; padding-block: 9px; }
  .atlas-home .rss-help code { font-size: 13px; }

  .page-event .breadcrumb { font-size: 13px; margin-block: 22px; }
  .page-event .article h1 { font-size: 34px; line-height: 1.16; }
  .page-event .article .dek { font-size: 19px; line-height: 1.65; }
  .page-event .event-meta, .page-event .status, .page-event .article-info { font-size: 12px; }
  .page-event .reader-source { gap: 10px 20px; margin-block: 24px; padding-block: 8px; font-size: 14px; }
  .page-event .reader-source a { display: inline-flex; align-items: center; min-height: 44px; }
  .page-event .analysis { padding: 10px 18px; }
  .page-event .analysis p { font-size: 16px; }
  .page-event .comments { padding: 24px 20px; }
  .page-event .comments h2 { font-size: 25px; line-height: 1.25; }
  .page-event .comments .eyebrow { font-size: 11px; }
  .page-event .discussion-prompt { font-size: 17px; line-height: 1.65; padding: 16px; }
  .page-event .field { font-size: 15px; gap: 8px; }
  .page-event .field input, .page-event .field textarea, .page-event .field select { font-size: 16px; min-height: 48px; padding: 12px; }
  .page-event .field textarea { min-height: 180px; }
  .page-event .consent { font-size: 14px; gap: 10px; line-height: 1.7; }
  .page-event .consent input { width: 20px; height: 20px; flex: 0 0 20px; }
  .page-event .consent .text-link { font-size: inherit; }
  .page-event .button { min-height: 48px; font-size: 14px; }
  .page-event .form-actions { gap: 12px; align-items: stretch; }
  .page-event .share-row { flex-wrap: wrap; gap: 10px 16px; }
  .page-event .share-row .text-link { min-height: 44px; padding-block: 10px; }
  .page-event .report button { font-size: 13px; min-height: 44px; }
  .page-event .comment-header { flex-wrap: wrap; row-gap: 5px; }

  .page-about .prose, .page-superintelligence .prose, .page-privacy .prose { padding-top: 32px; }
  .page-about .prose h1, .page-superintelligence .prose h1, .page-privacy .prose h1 { font-size: 36px; line-height: 1.17; letter-spacing: -.035em; }
  .pipeline-stage { font-size: 13px; padding: 20px 16px 20px 0; }
  .page-about .standards-flow li { font-size: 16px; }
  :where(body:not(.page-admin):not(.page-login):not(.page-translations):not(.page-analytics)) .footer { margin-top: 40px; padding-block: 28px; gap: 18px; font-size: 13px; }
  .world-footer-name { font-size: 21px; gap: 12px; }
  .world-footer p { font-size: 14px; }
  .footer-links { gap: 8px 20px; }
  .footer-links a { font-size: 14px; display: inline-flex; align-items: center; min-height: 44px; }
}

@media (max-width: 620px) {
  .masthead .header-actions > .rss { display: none; }
  .masthead .language-picker summary > span { display: none; }
  .observatory-cover-row { display: flow-root; }
  .observatory-portrait { width: 132px; float: left; margin-inline-end: 20px; margin-bottom: 16px; max-width: 42%; }
  html[dir=rtl] .observatory-portrait { float: right; }
  .observatory-portrait img { width: 100%; }
  .observatory-portrait figcaption { font-size: 10px; overflow-wrap: anywhere; }
  .observatory-intro-notes { display: contents; }
  .observatory-description { font-size: 23px; margin-bottom: 10px; }
  .observatory-motto { margin-top: 12px; }
  .atlas-home .atlas-query-head h1 { font-size: 45px; }
  html:not([lang=en]) .atlas-home .atlas-query-head h1 { font-size: 34px; }
}

@media (max-width: 430px) {
  :where(body:not(.page-admin):not(.page-login):not(.page-translations):not(.page-analytics)) .wrap { padding-inline: 16px; }
  .masthead { gap: 8px 12px; }
  .world-wordmark strong { font-size: 21px; }
  .world-wordmark > span { font-size: 8.5px; }
  .signal-detail { padding: 20px 16px; }
  .signal-detail h3 { font-size: 25px; }
  .observatory-intro { padding-top: 24px; }
  .observatory-portrait { width: 112px; margin-inline-end: 18px; }
  .observatory-intro h1 { font-size: clamp(55px, 16.5vw, 71px); }
  html:not([lang=en]) .observatory-intro h1 { font-size: clamp(33px, 9.5vw, 41px); }
  .page-event .article h1 { font-size: 31px; }
  .page-event .comments { padding: 22px 16px; }
  .page-about .prose h1, .page-superintelligence .prose h1, .page-privacy .prose h1 { font-size: 32px; }
  .atlas-home .follow-banner { padding: 25px 20px; }
  .atlas-home .follow-title { font-size: 38px; }
  html:not([lang=en]) .atlas-home .follow-title { font-size: 31px; }
}
