/* 星晗文化 · 人物资产库主题覆盖。保留原有表单、筛选、资产同步与弹窗。 */
:root {
  --bg: #030a12;
  --panel: #081522ee;
  --panel-2: #0b1b2b;
  --panel-3: #06111d;
  --border: #24435d;
  --border-soft: #ffffff12;
  --text: #eef5fb;
  --muted: #91aabd;
  --subtle: #637e94;
  --violet: #9dd8ff;
  --violet-2: #b785ff;
  --green: #82d9b4;
  --amber: #efc867;
  --blue: #9edbff;
}

html,
body { background-color: var(--bg); }
body {
  background-image:
    radial-gradient(circle at 68% -18%, #1a456b73, transparent 42%),
    linear-gradient(#ffffff08 1px, transparent 1px),
    linear-gradient(90deg, #ffffff08 1px, transparent 1px);
  background-size: auto, 40px 40px, 40px 40px;
}

.ambient-one {
  background: radial-gradient(ellipse, #21577d6b, transparent 68%);
}
.ambient-two {
  background: radial-gradient(circle, #5d3a7b2b, transparent 68%);
}
.topbar {
  background: #020914eb;
  border-bottom-color: #1a334b;
  box-shadow: 0 12px 40px #0008;
}
.brand {
  filter: drop-shadow(0 0 18px #e2b94e2b);
}
.main-nav a { color: #8ca4b7; }
.main-nav a:hover,
.main-nav a.active { color: #f5e6b8; }
.main-nav a.active::after {
  background: linear-gradient(90deg, #f0cf72, #9edbff);
  box-shadow: 0 0 15px #9edbff70;
}
.points-pill,
.avatar {
  background: #081522;
  border-color: #29455e;
}
.points-star { background: linear-gradient(135deg, #e5c66e, #8acdf4); }

.eyebrow { color: #f0cf72; }
.eyebrow span { background: linear-gradient(90deg, #efcf78, #a6ddff); }
.page-intro h1,
.section-caption strong,
.card-title-row h2,
.detail-head h2 { color: #f4e6bd; }

.button.primary {
  color: #06111d;
  background: linear-gradient(135deg, #e8cd7c, #9edbff);
  box-shadow: 0 10px 28px #62bce233;
}
.button.primary:hover { box-shadow: 0 14px 34px #62bce24d; }
.button.secondary,
.text-button,
.icon-button {
  color: #dce9f2;
  background: #091725;
  border-color: #29455e;
}

.metric-card,
.toolbar,
.character-card,
.detail-panel,
.modal,
.login-notice,
.asset-item,
.empty-state {
  background: linear-gradient(145deg, #0a1928f2, #06111df2);
  border-color: #24435d;
  box-shadow: 0 18px 52px #0007, inset 0 1px #ffffff0a;
}
.character-card:hover,
.character-card.selected,
.asset-item:hover {
  border-color: #5b819c;
  box-shadow: 0 22px 58px #0009, 0 0 0 1px #d8b85d29;
}
.status-pill,
.tag,
.demo-badge,
.card-project {
  background: #102b40;
  color: #bfe5ff;
  border-color: #315b7a;
}

.search-box,
.toolbar select,
.form-fields input,
.form-fields select,
.form-fields textarea {
  color: #eaf3fa;
  background: #07131f;
  border-color: #29455e;
}
.search-box:focus-within,
.toolbar select:focus,
.form-fields input:focus,
.form-fields select:focus,
.form-fields textarea:focus {
  border-color: #7ebee6;
  box-shadow: 0 0 0 3px #7ebee629;
}
.view-switch,
.cover-preview,
.asset-empty { background: #06111d; border-color: #24435d; }
.modal-backdrop { background: #01050bd9; backdrop-filter: blur(8px); }
.modal-header,
.modal-footer,
.asset-toolbar { border-color: #1e3850; }
.toast { background: #0b1b2b; border-color: #31516a; }

@media (max-width: 760px) {
  .topbar { box-shadow: none; }
}
