/* 深蓝主题；布局与响应式结构保留在 style.css。 */
:root {
  color-scheme: dark;
  --ink: #e7eef9;
  --muted: #9aaec8;
  --line: #2a3b55;
  --paper: #16243a;
  --bg: #0e192b;
  --accent: #65adff;
  --coral: var(--accent);
  --dark: #246db5;
  --surface-hover: #203551;
  --input: #101e33;
  --secondary: #a5b7cf;
}

.demo-bar { background: #172c46; color: #b2c9e5; }
.header nav a { color: var(--secondary); }
.filters, .search-field, .card, .author-card, .download-panel, .creator-panel, .table-wrap { background: var(--paper); }
.avatar { background: #25466e; color: #cce4ff; border-color: var(--paper); box-shadow: 0 0 0 1px #3a587e; }
.button { background: var(--paper); color: var(--ink); }
.button:hover, .button.ghost:hover { background: var(--surface-hover); }
.button.dark:hover { background: #3080cd; }
.text-button, .sort-control, .sort-control select { color: var(--secondary); }
.section-title h1 { font-size: 26px; margin: 0; letter-spacing: -.02em; }
.section-title h1 > span { font-size: 11px; font-weight: 400; letter-spacing: 0; color: var(--muted); margin-left: 13px; vertical-align: middle; }
.filter-label, .sidebar-note > p, .search-field svg, .search-field input::placeholder { color: var(--muted); }
.filters select { background: var(--input); border-color: var(--line); color: var(--ink); }
.search-field input { color: var(--ink); }
.result-line, .result-line > span:first-child { color: var(--secondary); }
.card:hover { box-shadow: 0 8px 26px #0003; border-color: #385b82; }
.card-picture { background: #1d304b; }
.aircraft-chip { background: #11243cde; color: #e5f0ff; border: 1px solid #ffffff19; }
.card-eyebrow, .card-eyebrow > span:first-child, .card-subtitle { color: var(--secondary); }
.card-subtitle > span { color: #7189a8; }
.card-bottom { border-color: var(--line); }
.author-link, .download-stat { color: #b7c7dc; }
.download-stat small { color: #91a7c1; }
.empty-state, footer, footer > span { color: var(--secondary); }
.footer-brand { color: #cad9ec; }
.footer-brand > span { color: var(--muted); }

.page-intro p, .author-card-body p, .author-card-body > span:last-child { color: var(--secondary); }
.author-card-cover { background: #244263; opacity: 1; }
.author-card-body h2 > span { color: var(--accent); }
.author-avatar.large { border-color: var(--paper); }
.author-profile { background: linear-gradient(105deg, #16243a 35%, #244565); }
.profile-pattern { color: #ffffff16; }
.profile-content p, .profile-content > div > span:last-child, .back-link { color: var(--secondary); }
.detail-header p { color: var(--secondary); }
.detail-header p > span { color: #7189a8; }
.badge { background: #233e60; color: #b8d9ff; }
.badge.mint { background: #1d3c3c; color: #92d5bd; }
.badge.neutral { background: #263951; color: #bbcee7; }
.detail-image { background: #20334c; }
.description, .fine-print, .price > span { color: var(--secondary); }
.tag-row span { background: #213650; color: #bed3ed; }
.download-panel dt, .creator-panel small, .creator-panel > div > span { color: var(--secondary); }
.source-note, .source-note strong { color: var(--secondary); }

.management-intro p, .management-actions, .workspace-bottom p { color: var(--secondary); }
.notice { background: #302c27; color: #e0c19c; border-color: #544638; }
.notice.error { background: #392a37; color: #f0adbc; border-color: #613e50; }
.management-notice { background: #1b304b; color: #b2c8e3; border-color: #304a6b; }
.management-notice strong { color: #d3e5fb; }
th { background: #1b2c43; color: #b4c9e4; }
td { border-color: var(--line); }
.table-work small, .block, .sync-label { color: #a3b8d2; }
.status-dot { color: #99d7ba; }
.status-dot.draft { color: #e2c68e; }
.toast { background: #253f5df5; border: 1px solid #45668a; }

dialog { background: var(--paper); }
dialog::backdrop { background: #040b16bf; }
.modal-head { background: var(--paper); }
.modal-body, .intro-text { color: var(--ink); }
.modal-body, .modal-body.wide { max-width: 100%; }
.modal-body p { color: var(--secondary); }
.close { background: #243b59; color: #c5d8ef; }
.connection-icon { background: #213b5b; color: #a5ceff; }
.connection-state h3, .steps strong { color: var(--ink); }
.form-grid label { color: #b9cce4; }
.form-grid input:not([type=checkbox]), .form-grid select, .form-grid textarea { background: var(--input); border-color: #3a5273; color: var(--ink); }
.form-footer > span { color: var(--secondary); }
.form-error { color: #ffadc0; }

@media (max-width: 640px) {
  .filters .filter-label { display: block; position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .section-title h1 { font-size: 23px; }
  .section-title h1 > span { font-size: 9px; margin-left: 7px; }
}
