/* Đợt 1: chế độ tối (ban đêm). theme-init.js đặt <html data-theme="dark">.
   Nền nâu trầm, chữ màu kem sáng; các trang "giấy" (nhật ký, hỏi đáp, thẻ con giáp) vẫn là giấy ngà như sách dưới đèn. */
html[data-theme="dark"] {
  color-scheme: dark;
  --fa-bg: #1D1510;
  --fa-bg-2: #271C15;
  --fa-surface: #2A1F18;
  --fa-ink: #F4E7D7;
  --fa-muted: #C9B29D;
  --fa-honey: #F5B54A;
  --fa-amber: #E9924C;
  --fa-amber-dark: #F7BC7A;   /* chữ màu cam trên nền tối: phải sáng hơn */
  --fa-peach: #5A3A2A;
  --fa-coral: #F29B7E;
  --fa-soft: #3B2B20;
  --fa-line: #47362A;
  --fa-shadow: 0 10px 28px -14px rgba(0, 0, 0, .7);
  --fa-shadow-lg: 0 22px 44px -18px rgba(0, 0, 0, .8);
  --bs-body-color: var(--fa-ink);
  --bs-body-bg: var(--fa-bg);
  --bs-link-color-rgb: 247, 188, 122;
  --bs-link-hover-color-rgb: 255, 212, 160;
  --bs-secondary-color: var(--fa-muted);
  --bs-border-color: var(--fa-line);
}
/* ánh trăng ấm thay cho ánh nắng */
html[data-theme="dark"] body::before {
  background: radial-gradient(circle, rgba(245, 181, 74, .14) 0%, rgba(245, 181, 74, .05) 38%, rgba(29, 21, 16, 0) 68%); }
html[data-theme="dark"] .fa-nav { background: rgba(29, 21, 16, .88); }
html[data-theme="dark"] .navbar-toggler { color: var(--fa-ink); }

/* những chỗ trước đây tô trắng cứng */
html[data-theme="dark"] :is(.fa-album, .fa-photo, .fa-photo-big, .fa-node, .fa-chip-fam, .fa-like-btn, .fa-comment .bubble,
  .fa-dup-list li, .fa-dup-card, .fa-key, .fa-user-btn:hover, .fa-user-btn.show, .btn-outline-fa:hover) { background: var(--fa-surface); }
html[data-theme="dark"] .fa-steps-nav li .n { background: var(--fa-surface); }
html[data-theme="dark"] :is(.form-control, .form-select) { background-color: #231913; color: var(--fa-ink); }
html[data-theme="dark"] .form-control::placeholder { color: #8F7A68; }
html[data-theme="dark"] .form-control:disabled { background-color: var(--fa-bg-2); }
html[data-theme="dark"] :is(.fa-album-body p, .fa-hero .lead) { color: var(--fa-muted); }
html[data-theme="dark"] .fa-empty { background: rgba(42, 31, 24, .6); }
html[data-theme="dark"] .fa-drop { background: var(--fa-bg-2); border-color: #6B4B2E; }
html[data-theme="dark"] .fa-photo-frame { background: linear-gradient(110deg, #2E2219 30%, #3A2B20 50%, #2E2219 70%); background-size: 200% 100%; }
html[data-theme="dark"] .fa-photo-frame.is-loaded { background: var(--fa-soft); }
html[data-theme="dark"] .fa-day-head { background: linear-gradient(var(--fa-bg) 78%, rgba(29, 21, 16, 0)); }
html[data-theme="dark"] :is(.fa-role, .fa-opt) { background: #3A2C22; }

/* thông báo và nút có màu */
html[data-theme="dark"] .alert-fa-success { background: #26301A; color: #CFE3A8; border-color: #3C4A28; }
html[data-theme="dark"] .alert-fa-danger { background: #3A1E14; color: #FFB79A; border-color: #5C2E1E; }
html[data-theme="dark"] .alert-fa-info { background: #352812; color: #F6D38A; border-color: #554018; }
html[data-theme="dark"] .fa-danger-zone { background: #2E1A12; border-color: #5C2E1E; }
html[data-theme="dark"] .btn-decline { background: transparent; color: #FFB79A; border-color: #5C2E1E; }
html[data-theme="dark"] .btn-decline:hover { background: #3A1E14; color: #FFD0BC; }
html[data-theme="dark"] .fa-req { color: #FF9F6E; }

/* chip màu: nền trong suốt nhẹ, chữ sáng */
html[data-theme="dark"] :is(.fa-chip.c0, .ic.c1, .fa-scope.FAMILY) { background: rgba(245, 181, 74, .18); color: #FFD58A; }
html[data-theme="dark"] :is(.fa-chip.c1, .ic.c4, .fa-scope.BIG_FAMILY) { background: rgba(242, 139, 107, .2); color: #FFB79A; }
html[data-theme="dark"] :is(.fa-chip.c2, .ic.c2) { background: rgba(150, 190, 100, .18); color: #CFE3A8; }
html[data-theme="dark"] :is(.fa-chip.c3, .ic.c6) { background: rgba(230, 120, 150, .18); color: #F6B3C6; }
html[data-theme="dark"] :is(.fa-chip.c4, .ic.c3) { background: rgba(110, 160, 210, .18); color: #B4D2EE; }
html[data-theme="dark"] :is(.fa-chip.c5, .ic.c5, .fa-scope.PERSONAL) { background: rgba(170, 140, 220, .18); color: #D3C2F0; }
html[data-theme="dark"] .fa-scope { background: #3A2C22; color: var(--fa-muted); }
html[data-theme="dark"] .fa-rel { background: rgba(245, 181, 74, .18); color: #FFD58A; }

/* các khung kính mờ đặt trên ảnh */
html[data-theme="dark"] :is(.fa-hero-chips span, .fa-cover-pick .hint, .fa-float-stats .fa-stat, .fa-pill-glass) { background: rgba(42, 31, 24, .88); }
html[data-theme="dark"] .fa-card-new { background: rgba(42, 31, 24, .6); }

/* trang đăng nhập và các bìa màu nắng: dịu lại */
html[data-theme="dark"] .fa-login { background: linear-gradient(165deg, #241A13 0%, #2B1E15 45%, #2E1E17 100%); }
html[data-theme="dark"] .fa-login .fa-card { background: rgba(42, 31, 24, .92); }
html[data-theme="dark"] .fa-login-bg span { opacity: .25; }
html[data-theme="dark"] :is(.fa-profile-cover, .fa-member-cover, .fa-family-cover) { filter: brightness(.62) saturate(.9); }

/* ảnh nền tự chọn (ý 8): tối đi để chữ dễ đọc */
html[data-theme="dark"] .fa-art { filter: brightness(.32) saturate(.85); }

/* Giấy (nhật ký, hỏi đáp, thẻ con giáp, chỗ dán ảnh): trả lại màu chữ của giấy sáng */
html[data-theme="dark"] :is(.dy-page, .dy-leaf, .dy-snap, .qa-book, .qa-paper, .zd-card, .fa-notebook-page) {
  --fa-ink: #4A3426; --fa-muted: #86695A; --fa-amber-dark: #B85E1E; --fa-soft: #FFEBD2; --fa-line: #F3E1C7; --fa-surface: #FFFDF8; }

/* giấy dưới ánh đèn: ngà hơn một chút cho đỡ chói */
html[data-theme="dark"] { --nb-paper: #EFE4D1; --nb-photo: #F7F0E4; --qa-paper: #EFE6D6; --dy-paper: #EFE4D1; --dy-paper-2: #E8DAC2; }
html[data-theme="dark"] .fa-notebook-page { box-shadow: 0 18px 36px -22px rgba(0, 0, 0, .8), 0 2px 0 #D9C7A8, 0 4px 0 #C9B48F; }

/* Nút đổi sáng/tối trên menu */
.fa-theme-btn { width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--fa-line); background: var(--fa-surface); color: var(--fa-amber-dark);
  display: inline-grid; place-items: center; padding: 0; position: relative; overflow: hidden; flex: none; }
.fa-theme-btn:hover { border-color: var(--fa-honey); }
.fa-theme-btn i { grid-area: 1 / 1; font-size: 1.05rem; transition: transform .5s var(--fa-ease), opacity .35s; }
.fa-theme-btn .bi-moon-stars-fill { transform: translateY(0) rotate(0); opacity: 1; }
.fa-theme-btn .bi-sun-fill { transform: translateY(120%) rotate(90deg); opacity: 0; color: var(--fa-honey); }
html[data-theme="dark"] .fa-theme-btn .bi-moon-stars-fill { transform: translateY(-120%) rotate(-90deg); opacity: 0; }
html[data-theme="dark"] .fa-theme-btn .bi-sun-fill { transform: translateY(0) rotate(0); opacity: 1; }
/* mục "Theo điện thoại" chỉ có dấu tích khi đang tự động */
.fa-theme-reset .bi-check2 { margin-left: .4rem; opacity: 0; }
html[data-theme-mode="auto"] .fa-theme-reset .bi-check2 { opacity: 1; }
@media (prefers-reduced-motion: reduce) { .fa-theme-btn i { transition: none; } }
