/* ===== 暗色模式（html[data-theme="dark"] 覆盖层） ===== */
html[data-theme="dark"]{
  --bg:#000000; --card:rgba(28,28,30,.82); --card-solid:#1c1c1e;
  --text:#f5f5f7; --text-2:#a1a1a6; --text-3:#86868b;
  --hairline:rgba(255,255,255,.12); --hairline-strong:rgba(255,255,255,.2);
  --shadow:0 8px 28px rgba(0,0,0,.5), 0 1px 3px rgba(0,0,0,.4);
  --shadow-lift:0 14px 40px rgba(0,0,0,.6), 0 2px 6px rgba(0,0,0,.4);
  color-scheme:dark;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(1100px 520px at 12% -6%, rgba(0,113,227,.10), transparent 60%),
    radial-gradient(900px 480px at 88% 2%, rgba(175,82,222,.07), transparent 55%),
    #000000;
}
html[data-theme="dark"] .topbar{background:rgba(10,10,12,.78)}
html[data-theme="dark"] .sidebar{background:rgba(20,20,22,.92)}
html[data-theme="dark"] table.tbl th{background:#2c2c2e}
html[data-theme="dark"] .cal-dow{background:#2c2c2e}
html[data-theme="dark"] .modal{background:#1c1c1e}
html[data-theme="dark"] .gsearch:focus-within{background:#1c1c1e}
html[data-theme="dark"] .gsearch-res{background:#1c1c1e}
html[data-theme="dark"] .gsearch-res .gr-item:hover{background:#2c2c2e}
html[data-theme="dark"] .gsearch-res .gr-item{border-color:rgba(255,255,255,.06)}
html[data-theme="dark"] .modal-task .t-field input:focus,html[data-theme="dark"] .modal-task .t-field select:focus{background:#1c1c1e}
html[data-theme="dark"] .seg-btn.active{background:#2c2c2e}
html[data-theme="dark"] .imp-list{background:#1c1c1e}
html[data-theme="dark"] table.tbl td{border-bottom-color:rgba(255,255,255,.08)}
html[data-theme="dark"] table.tbl tbody tr:nth-child(even) td{background:rgba(255,255,255,.03)}
html[data-theme="dark"] .cal-cell{border-right-color:rgba(255,255,255,.08);border-bottom-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .cal-cell.other{background:rgba(255,255,255,.02)}
html[data-theme="dark"] .cal-ev i{background:rgba(255,255,255,.08)}
html[data-theme="dark"] .cal-dl-item{border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .task-item{border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .btn.gray{background:rgba(255,255,255,.12)}
html[data-theme="dark"] .btn.gray:hover{background:rgba(255,255,255,.18)}
html[data-theme="dark"] .empty svg{background:rgba(255,255,255,.06)}
html[data-theme="dark"] ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2)}
html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.32)}
html[data-theme="dark"] .dtpick:hover .dt-view,html[data-theme="dark"] .tbl input[type=text]:hover,html[data-theme="dark"] .tbl input[type=date]:hover,html[data-theme="dark"] .tbl select{background:rgba(255,255,255,.05)}
html[data-theme="dark"] .ws-item .w-bar{background:rgba(255,255,255,.1)}
html[data-theme="dark"] .c7-row{border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .c7-item{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}
html[data-theme="dark"] .admin-table tbody tr:nth-child(even){background:rgba(255,255,255,.03)}
html[data-theme="dark"] .task-item .t-check svg{color:#000}
html[data-theme="dark"] .today-item .t-check svg{color:#000}
html[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1)}

.dark .guest-gate{background:linear-gradient(160deg,#16181d,#1c2130)}
.dark .guest-card{background:rgba(30,32,40,.9);border-color:rgba(120,150,220,.2)}
.dark .guest-card h2{color:#f5f5f7}
.dark .guest-card p{color:#a1a1a6}
