:root {
  --bg: #ffffff;
  --paper: #ffffff;
  --paper-2: #fafafa;
  --line: #e8e8e8;
  --ink: #151515;
  --muted: #707070;
  --faint: #a2a2a2;
  --rose: #111111;
  --rose-soft: #f3f3f3;
  --blue: #3f3f3f;
  --blue-soft: #f5f5f5;
  --sage: #555555;
  --sage-soft: #f5f5f5;
  --amber: #333333;
  --amber-soft: #f6f6f6;
  --purple: #666666;
  --shadow: 0 18px 42px rgba(0, 0, 0, .045);
  --shadow-sm: 0 4px 16px rgba(0, 0, 0, .025);
}

html, body { background: #ffffff; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif; }

.sidebar { background: #ffffff; backdrop-filter: none; }
.brand-mark { color: #ffffff; background: #111111; box-shadow: none; }
.nav-button:hover, .nav-button.active { color: #111111; background: #f3f3f3; box-shadow: none; }
.nav-button.active { border-color: #e1e1e1; }
.nav-button.active i, .nav-button:hover i { color: #111111; }
.profile-line i, .empty-mark { color: #111111; background: #f3f3f3; }
.profile-line button:hover, .profile-line button:focus-visible { color: #111111; }

.topbar { border-bottom-color: #ededed; background: rgba(255, 255, 255, .94); backdrop-filter: blur(12px); }
.breadcrumb b { color: #d0d0d0; }
.topbar-icon:hover, .install-card { color: #111111; background: #f5f5f5; }
.logout-button:hover, .text-button:hover, .back-button:hover, .auth-switch:hover { color: #111111; }

.welcome, .page-hero, .page-hero.movie, .page-hero.item, .page-hero.stats, .page-hero.settings,
.detail-hero, .detail-hero.movie, .detail-hero.item { background: #ffffff; box-shadow: none; }
.welcome-mark { color: #111111; background: #f7f7f7; border-color: #e8e8e8; transform: none; }
.button.primary, .button.danger, .timer-ribbon button.stop { color: #ffffff; background: #111111; box-shadow: none; }
.button.primary:hover, .button.danger:hover, .timer-ribbon button.stop:hover { background: #000000; }
.button.secondary { color: #111111; border-color: #dedede; background: #ffffff; }
.button.secondary:hover, .button.ghost:hover { color: #111111; background: #f5f5f5; }
.button.ghost { color: #666666; border-color: #dedede; }

.quick-card, .panel, .metric, .library-card, .side-card, .info-panel, .timer-box,
.stats-panel, .settings-card { background: #ffffff; box-shadow: none; }
.quick-card:hover, .library-card:hover { box-shadow: var(--shadow); transform: translateY(-1px); }
.quick-card > i, .quick-card.reading > i, .quick-card.movie > i, .quick-card.item > i { color: #111111; background: #f5f5f5; }
.metric.rose, .metric.blue, .metric.sage, .metric.amber, .metric.purple { border-top-color: #111111; }
.active-timer, .timer-ribbon { color: #111111; border-color: #e2e2e2; background: #f5f5f5; }
.active-timer-time, .timer-ribbon strong { color: #111111; }
.timer-ribbon button { color: #111111; }

.cover, .cover.movie, .cover.item { color: #111111; background: #f3f3f3; }
.cover.empty small { color: #999999; }
.chip, .chip.accent { color: #666666; background: #f4f4f4; }
.chip.accent { color: #111111; }
.card-progress > i, .progress-track, .category-track { background: #eeeeee; }
.card-progress > i b, .progress-track b, .category-track i { background: #111111; }
.score, .cost-highlight strong, .item-price small, .rating-input > strong { color: #111111; }
.card-actions button { border-color: #e7e7e7; color: #333333; background: rgba(255, 255, 255, .96); }
.card-actions button:hover { color: #111111; }

.detail-hero > .cover { box-shadow: none; }
.progress-track b, .bar-column i { background: #111111; }
.session-number, .session-card.movie .session-number, .avatar { color: #111111; background: #f3f3f3; }
.note-quote, .note-thought, .note-actions { background: #fafafa; }
.note-thought { border-left-color: #e8e8e8; }
.note-card blockquote { border-left-color: #111111; }
.category-dot, .category-dot.blue, .category-dot.amber { background: #111111; }
.settings-card.account { background: #ffffff; }

.stats-tabs, .segmented, .form-section, .form-intro, .form-intro.movie, .form-intro.item,
.session-banner { background: #f7f7f7; }
.stats-tabs button.active, .segmented button.active { color: #111111; background: #ffffff; box-shadow: none; }
.bar-column i { background: #111111; }
.setting-tags span { background: #f4f4f4; }
.setting-tags button:hover { color: #111111; }

.modal-backdrop { background: rgba(0, 0, 0, .2); backdrop-filter: blur(3px); }
.modal { border-color: #e1e1e1; box-shadow: 0 25px 80px rgba(0, 0, 0, .14); }
.close-button { color: #666666; background: #f4f4f4; }
.close-button:hover { color: #111111; }
.field input, .field select, .field textarea, .toolbar-filters input, .toolbar-filters select, .stats-controls input,
.category-editor input { border-color: #dedede; background: #ffffff; }
.field input:focus, .field select:focus, .field textarea:focus, .toolbar-filters input:focus,
.toolbar-filters select:focus, .stats-controls input:focus, .category-editor input:focus { border-color: #111111; box-shadow: 0 0 0 3px rgba(0, 0, 0, .07); }
.rating-buttons button { color: #666666; background: #ffffff; }
.rating-buttons button.active { border-color: #111111; color: #ffffff; background: #111111; }
.upload-button { color: #111111; border-color: #dedede; background: #f4f4f4; }

.auth-shell, .loading-shell { background: #ffffff; }
.auth-card { border-color: #e5e5e5; background: #ffffff; box-shadow: none; }
.auth-mark { color: #ffffff; background: #111111; box-shadow: none; }
.auth-message.error, .danger-text { color: #777777 !important; }
.toast { border-color: #dedede; color: #111111; background: #ffffff; box-shadow: var(--shadow); }

.mobile-nav { background: rgba(255, 255, 255, .96); backdrop-filter: blur(12px); }
.mobile-nav button.active { color: #111111; background: #f3f3f3; }
#install-app-button:not(.hidden) { color: #111111; background: #f3f3f3; }
.native-app [data-action="install-app"] { display: none !important; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #111111; outline-offset: 2px; }

@media (max-width: 830px) {
  .mobile-nav { border-top-color: #e8e8e8; }
}
