/* Visitor paths reuse the existing navy palette and single-page catalogue. */
:root { --discover-ink:#142f4d; --discover-muted:#52687e; --discover-bg:#f4f8fd; --discover-card:#fff; --discover-border:#d9e4ef; }
[data-theme="dark"] { --discover-ink:#e2edf8; --discover-muted:#a8bbce; --discover-bg:#080f1c; --discover-card:#101e30; --discover-border:#293e57; }
#scenarios, #works, #cards, #about, #contact { scroll-margin-top:88px; }
#hero { scroll-margin-top:64px; }
.site-nav-links { display:flex; align-items:center; gap:28px; font-size:14px; font-weight:600; }
@media(min-width:768px) { .site-nav-links[hidden] { display:flex; } }
.nav-toggle, .mobile-home { display:none; }
.nav-toggle { align-items:center; gap:7px; min-height:44px; padding:8px 12px; border:1px solid var(--discover-border); border-radius:10px; background:var(--discover-card); color:var(--discover-ink); font-size:14px; font-weight:700; }
.nav-toggle:focus-visible, .site-nav-links a:focus-visible { outline:3px solid #60a5fa; outline-offset:4px; }
.discovery-wrap { max-width:1100px; margin:auto; padding:48px 20px; }
.discovery-section { background:var(--discover-bg); color:var(--discover-ink); }
.discovery-eyebrow { font-size:11px; font-weight:700; letter-spacing:.14em; color:#3b82c4; margin-bottom:10px; }
.discovery-title { font-size:clamp(23px,3vw,30px); font-weight:800; line-height:1.5; margin:0 0 10px; }
.discovery-copy { color:var(--discover-muted); font-size:14px; line-height:1.8; margin:0 0 24px; }
.path-grid, .starter-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.path-card { text-align:left; background:var(--discover-card); border:1px solid var(--discover-border); border-radius:18px; padding:24px; color:var(--discover-ink); display:flex; flex-direction:column; gap:12px; transition:transform .2s,border-color .2s; }
.path-card:hover { transform:translateY(-3px); border-color:#3b82c4; }
.path-card[aria-pressed="true"] { border-color:#3b82c4; box-shadow:inset 0 0 0 1px #3b82c4; }
.path-symbol { color:#3b82c4; font-size:12px; font-weight:700; letter-spacing:.1em; }
.path-name { font-size:21px; font-weight:800; }
.path-description { color:var(--discover-muted); font-size:14px; line-height:1.75; flex:1; }
.path-action { font-size:13px; font-weight:700; margin-top:6px; }
.starter-section { border-top:1px solid var(--discover-border); }
.starter-card { display:flex; flex-direction:column; background:var(--discover-card); border:1px solid var(--discover-border); border-radius:18px; padding:24px; min-width:0; }
.starter-category { font-size:12px; font-weight:700; color:#3b82c4; margin-bottom:14px; }
.starter-card h3 { font-size:19px; font-weight:800; margin:0 0 12px; }
.starter-problem { color:var(--discover-muted); font-size:14px; line-height:1.8; margin-bottom:22px; flex:1; }
.starter-link { color:var(--discover-ink); font-weight:700; font-size:14px; padding:10px 0; text-decoration:underline; text-underline-offset:5px; }
.starter-tech { color:var(--discover-muted); font-size:11px; margin-top:12px; }
.works-heading { max-width:1100px; margin:auto; padding:16px 20px 0; color:var(--discover-ink); }
.filter-controls { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.filter-button, .search-clear, .search-reset { border:1px solid var(--discover-border); border-radius:24px; background:var(--discover-card); color:var(--discover-ink); padding:10px 18px; font-size:14px; cursor:pointer; }
.filter-button[aria-pressed="true"] { background:#1e3a5f; color:#fff; border-color:#1e3a5f; }
[data-theme="dark"] .filter-button[aria-pressed="true"] { background:#3b82c4; border-color:#3b82c4; }
.search-clear { border-radius:10px; flex-shrink:0; }
.search-clear:disabled { opacity:.5; cursor:default; }
.search-feedback { max-width:1100px; padding:12px 20px 0; margin:auto; color:var(--discover-muted); font-size:13px; line-height:1.8; }
#search-empty { padding:20px; border:1px dashed var(--discover-border); border-radius:12px; margin-top:12px; color:var(--discover-ink); }
#search-empty p { margin:0 0 12px; }
.app-scenarios { display:flex; flex-wrap:wrap; gap:5px; margin:6px 0 10px; }
.app-scenario { font-size:10px; color:var(--discover-muted); background:var(--discover-bg); padding:3px 8px; border-radius:20px; }
.knowledge-intro, .contact-note { font-size:13px; line-height:1.8; color:var(--discover-muted); margin:0 0 16px; }
#contact .b-section-title { font-size:22px; color:var(--discover-ink); text-transform:none; letter-spacing:0; }
#contact .contact-prompt { font-size:14px; color:var(--discover-muted); margin-bottom:16px; line-height:1.8; }
#contact .contact-note { margin:16px 0 0; font-size:12px; }
.linkedin-link { min-height:44px; }
#about .linkedin-link { margin-top:12px; padding:10px 12px; font-size:12px; }
.footer-linkedin { display:inline-flex; align-items:center; gap:6px; color:var(--discover-ink); font-size:13px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.linkedin-link:focus-visible { outline:3px solid #60a5fa; outline-offset:4px; }
.bento-grid > [data-app-id][hidden] { display:none !important; }
.bento-grid > [data-app-id] { min-width:0; }
.discovery-hero { max-width:1100px; margin:auto; padding:64px 20px 52px; display:grid; grid-template-columns:minmax(0,2fr) minmax(240px,1fr); gap:52px; align-items:center; position:relative; }
.discovery-hero h1 { font-size:clamp(32px,4.2vw,48px); color:#fff; line-height:1.45; letter-spacing:-.025em; font-weight:800; margin:0 0 22px; }
.discovery-hero h1 > span { display:block; }
.discovery-hero .hero-description { max-width:600px; font-size:16px; line-height:1.95; color:#d0dfed; margin:0 0 28px; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.hero-actions a { padding:13px 18px; font-size:14px; }
.hero-actions .btn-primary { background:#2563eb; color:#fff; }
.hero-actions .hero-secondary { color:#d8e9fa; text-decoration:underline; text-underline-offset:6px; }
.maker-panel { border:1px solid #ffffff24; border-radius:22px; padding:26px; background:#ffffff08; color:#fff; }
.maker-panel .maker-caption { color:#b1c7db; font-size:13px; line-height:1.8; }
.maker-name { font-size:21px; font-weight:700; margin:8px 0; }
.maker-stats { display:flex; gap:30px; margin:25px 0; }
.maker-stats strong { display:block; font-size:26px; line-height:1.5; }
.maker-stats span { color:#b1c7db; font-size:12px; }
.maker-engagement { display:flex; gap:10px; margin-top:18px; }
.maker-engagement button { flex:1; justify-content:center; }
.bento-search-row { align-items:stretch; }
.bento-search-row input { min-height:44px; }
#card-search:focus-visible, .path-card:focus-visible, .filter-button:focus-visible, .starter-link:focus-visible, .search-clear:focus-visible, .search-reset:focus-visible, .hero-actions a:focus-visible { outline:3px solid #60a5fa; outline-offset:4px; }
/* Layout sizes can still react to real stats; no invented ranking badge. */
.b-rank-1::after { display:none; }
[data-theme="dark"] .card-desc-bento { color:#a8bbce !important; }
[data-theme="dark"] #cards .series-source { color:#9ab2c9 !important; }
[data-theme="dark"] .discovery-eyebrow, [data-theme="dark"] .path-symbol, [data-theme="dark"] .starter-category { color:#7ab3f0; }
[data-theme="dark"] #contact .b-section-title { color:var(--discover-ink) !important; }
[data-theme="dark"] footer { background:#080f1c !important; border-color:var(--discover-border); }
[data-theme="dark"] footer .visit-badge { color:var(--discover-muted) !important; }
[data-theme="dark"] #modal-card-name, [data-theme="dark"] .pdf-open-label { color:#e2edf8 !important; }
[data-theme="dark"] .modal-hd, [data-theme="dark"] .modal-form { border-color:#293e57; }
[data-theme="dark"] .modal-form { background:#0f1a2e; }
[data-theme="dark"] .modal-form input, [data-theme="dark"] .modal-form textarea { background:#101e30; color:#e2edf8; border-color:#415975; }
[data-theme="dark"] .modal-form input::placeholder, [data-theme="dark"] .modal-form textarea::placeholder { color:#a8bbce; }
.pdf-open-link:focus-visible { outline:3px solid #60a5fa; outline-offset:4px; }
@media(width < 768px) {
  .nav-toggle { display:inline-flex; }
  .site-nav-links { position:absolute; top:64px; left:0; right:0; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:8px 20px 16px; border-bottom:1px solid var(--discover-border); background:var(--discover-card); box-shadow:0 12px 24px #0002; max-height:calc(100dvh - 64px); overflow-y:auto; }
  .site-nav-links[hidden] { display:none; }
  .site-nav-links .nav-link { display:block; min-height:44px; padding:12px; border-radius:8px; }
  .site-nav-links .nav-link.active { background:var(--discover-bg); }
  .site-nav-links .nav-link.active::after { display:none; }
  .discovery-hero { grid-template-columns:1fr; gap:18px; padding-top:32px; padding-bottom:28px; }
  .maker-panel { display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; padding:14px 16px; border-radius:14px; }
  .maker-panel > .maker-caption, .maker-panel > .visit-badge { display:none; }
  .maker-name { margin:0; font-size:14px; }
  .maker-stats { margin:0; gap:14px; }
  .maker-stats strong { font-size:18px; }
  .maker-stats span { font-size:10px; }
  .maker-engagement { grid-column:1 / -1; margin:0; }
  .path-grid, .starter-grid { grid-template-columns:1fr; gap:12px; }
  .path-card { padding:20px; gap:8px; }
  .discovery-wrap { padding:32px 20px; }
  .starter-card { padding:22px; }
  .discovery-hero h1 { font-size:clamp(25px,7.9vw,34px); }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:10px; }
  .hero-actions .hero-secondary { padding-left:0; }
  .bento-search-row { flex-wrap:wrap; }
  .bento-search-row > div { min-width:180px; }
  #about .b-cell-inner > div:nth-child(2) { grid-template-columns:1fr !important; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto !important; }
  .path-card, .fade-up, .hero-in { transition:none; }
  .ticker-track, .card-btn-icon { animation:none !important; }
}
