/* Shared blue-gray palette. Color only: preserve layout, photos and reading behavior. */
:root {
  --ink: #293f53;
  --deep: #20364b;
  --muted: #697d90;
  --accent: #3c617e;
  --accent-hover: #2a4963;
  --teal: var(--accent);
  --paper: #f7f9fc;
  --hairline: rgba(69,97,125,.18);
  --surface-tint: #eaf0f6;
  --action-gradient: linear-gradient(130deg, #4a6d88, #304f69);
  --blue-shadow: rgba(24,46,68,.16);
  --scene-ivory: #f4f8fc;
}
::selection { background: #cfdfef; color: #20364b; }
button:focus-visible, a:focus-visible, [tabindex='0']:focus-visible { outline-color: #648aaf; }
.wordmark { color: var(--ink); background: rgba(236,242,249,.9); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 8px 25px rgba(24,46,68,.08); }
.wordmark-symbol { border-color: var(--ink); }
.masthead-right .status-dot { background: #e5eef8; }
.intro-replay { color: #f4f8fc; background: rgba(45,70,95,.32); border-color: rgba(226,238,251,.35); }
.intro-replay:hover { background: rgba(220,235,251,.18); }

/* Connected glass navigation and the reading surface share the same cool whites. */
.main-shell { background: rgba(228,236,246,.52); border-color: rgba(245,249,255,.9); }
.section-tabs { background: rgba(223,233,244,.93); border-bottom-color: rgba(255,255,255,.8); box-shadow: inset 0 1px 0 rgba(255,255,255,.85); }
.section-tabs button.is-active { background: var(--action-gradient); color: #fff; box-shadow: 0 6px 15px rgba(27,53,80,.24), inset 0 1px 0 rgba(255,255,255,.2); }
.section-tabs button:hover:not(.is-active) { background: rgba(247,250,255,.7); }
.section-tabs, .main-shell { backdrop-filter: blur(26px) saturate(1.03); -webkit-backdrop-filter: blur(26px) saturate(1.03); }
.paper-stack { background: rgba(249,251,254,.97); }
.paper-stack::before { background: #e0e8f1; box-shadow: 0 7px 0 -3px #aabccd; }
.paper-stack::-webkit-scrollbar-thumb { background: rgba(72,105,139,.35); }
.paper-stack:focus-visible { box-shadow: inset 0 0 0 2px rgba(72,105,139,.28); }
.is-sequential-reader .main-shell { box-shadow: 0 16px 48px rgba(24,46,68,.16), inset 0 1px 0 rgba(255,255,255,.9); }
.is-sequential-reader .main-shell::after { background: rgba(249,251,254,.97); border-color: rgba(245,249,255,.9); backdrop-filter: blur(30px) saturate(1.03); -webkit-backdrop-filter: blur(30px) saturate(1.03); }
.is-sequential-reader[data-reader-end='true'] .main-shell { border-bottom-color: rgba(245,249,255,.9); box-shadow: 0 12px 0 -4px rgba(220,231,244,.65), 0 24px 0 -10px rgba(188,207,228,.45), 0 30px 74px rgba(24,46,68,.27), 0 8px 24px rgba(24,46,68,.13), inset 0 1px 0 rgba(255,255,255,.9); }
.reading-progress { background: #8baac5; }

/* Article, profile and works use the same ink and secondary text colors. */
.article-content .article-intro, .profile-copy p, .video-aside p { color: #4c6277; }
.toc-link, .chapter-label, .work-card-category, .work-card-link, .work-category,
.person-facts dt, .site-footer, .content-note, .article-end { color: var(--muted); }
.toc-link.is-current, .toc-link:hover, .chapter h3, .work-card-link > span { color: var(--deep); }
.chapter-number, .work-no { color: #94a9bd; }
.label-dash, .article-end > span:first-child, .article-end > span:last-child { background: #b6c7d8; }
.article-seal { color: #718ba4; border-color: #718ba4; }
.font-toggle[aria-pressed='true'] { color: var(--accent); background: #e4edf7; }
.feature-quote { background: linear-gradient(120deg, #e1eaf4, #eef3f9); border-left-color: #829db7; box-shadow: 0 8px 20px rgba(24,46,68,.05), inset 0 1px 0 rgba(255,255,255,.8); }
.feature-quote p, .profile-quote { color: var(--accent); }
.feature-quote cite { color: var(--muted); }
.quote-open { color: #a2b7cc; }
.person-overview, .gallery-photo, .work-card-cover { background: #dde7f1; }
.person-overview { box-shadow: 0 12px 30px rgba(24,46,68,.11); }
.person-motto { background: rgba(220,231,244,.52); }
.person-motto blockquote { color: var(--accent); }
.gallery-controls button { color: var(--accent); background: rgba(230,238,248,.8); }
.gallery-controls button:hover { background: #d5e3f1; }
.gallery-rail:focus-visible { outline-color: #7a99b7; }
.gallery-photo { box-shadow: 0 12px 27px -12px rgba(24,46,68,.24); }
.work-card { border-color: rgba(104,132,161,.23); background: rgba(253,254,255,.88); box-shadow: 0 8px 25px rgba(24,46,68,.07); }
.work-card:hover { box-shadow: 0 14px 32px rgba(24,46,68,.15); }
.work-card-number { background: rgba(239,245,252,.92); color: var(--accent); }
.work-date strong { color: #69859f; }
.journey-stops > div { border-top-color: #b5c7d9; }
.journey-dot { background: var(--accent); outline-color: var(--accent); }
.portrait-caption { background: linear-gradient(transparent, rgba(22,41,60,.8)); }

/* Video and conversation remain separate layers of the same blue-gray family. */
.interview-player { background: #233f57; box-shadow: 0 14px 36px rgba(24,46,68,.15); }
.interview-video { background: #172b3e; }
.interview-video-empty { color: #e5eef8; background: radial-gradient(ellipse at 25% 15%, rgba(137,168,201,.22), transparent 60%), linear-gradient(140deg, #3c5e7b, #223d55); }
.video-panel .guestbook { border-color: rgba(109,137,167,.3); background: rgba(222,232,244,.57); box-shadow: inset 0 1px 0 rgba(255,255,255,.78); }
.guestbook-field { color: #506b84; }
.guestbook-field small { color: #7b90a5; }
.guestbook-field input, .guestbook-field textarea { border-color: rgba(104,133,164,.32); background: rgba(255,255,255,.8); color: var(--ink); }
.guestbook-field input::placeholder, .guestbook-field textarea::placeholder { color: #8194a7; }
.guestbook-field input:focus, .guestbook-field textarea:focus { outline-color: rgba(76,117,158,.25); border-color: #7c9aba; background: #fff; }
.guestbook-flower { border-color: rgba(105,136,168,.4); color: #4a6b88; background: rgba(222,234,247,.75); }
.guestbook-flower:hover { background: #d6e5f5; }
.guestbook-flower[aria-pressed='true'] { background: #cfdfef; border-color: #8eaac6; }
.guestbook-flower-count { border-left-color: rgba(105,136,168,.35); color: #5e7b96; }
.guestbook-status { color: #4e7191; }
.guestbook-status[data-error='true'] { color: #9c6049; }
.guestbook-details, .video-panel .guestbook-details { border-color: rgba(109,137,167,.27); background: rgba(245,249,255,.67); }
.guestbook-details summary, .guestbook-message strong, .guestbook-retry { color: #4e6c88; }
.guestbook-details summary::after, .guestbook-details summary > span,
.guestbook-empty, .guestbook-message time, .guestbook-loading { color: #7c92a8; }
.guestbook-message { border-top-color: var(--hairline); }
.guestbook-message p { color: #415d76; }
.guestbook-retry { border-bottom-color: #8fa9c2; }

/* All small onward actions share one blue control. */
.guestbook-submit, .article-next .text-link, .primary-link {
  border-color: #365a79;
  background: var(--action-gradient);
  color: #fff;
  box-shadow: 0 5px 13px rgba(24,46,68,.15);
}
.guestbook-submit:hover, .article-next .text-link:hover, .primary-link:hover {
  border-color: var(--accent-hover);
  background: var(--accent-hover);
  color: #fff;
  box-shadow: 0 7px 17px rgba(24,46,68,.18);
}

/* Match the entrance's decorative motion to the blue-gray photographs. */
.butterfly-glow { background: rgba(219,234,250,.65); }
.water-wave { border-color: rgba(232,244,255,.72); box-shadow: 0 0 3px rgba(232,244,255,.7), inset 0 0 12px rgba(198,220,246,.32), 0 4px 10px rgba(56,95,139,.16); }
.water-wave:nth-child(2) { border-color: rgba(133,169,207,.4); }
.water-wave:nth-child(3) { border-color: rgba(232,244,255,.6); }
