/* 自动生成：node scripts/night/build.mjs，勿手改；手调写在 scripts/night/extra-home.css */
html.night {
    --bg: rgb(18,17,23) !important;
    --card: rgba(19,19,19,0.58) !important;
    --card-solid: rgba(20,20,20,0.78) !important;
    --border: rgba(19,19,19,0.72) !important;
    --border-outer: rgba(49,52,58,0.18) !important;
    --shadow: 0 2px 20px rgba(0,0,0,0.21),0 0 0 0.5px rgba(19,19,19,0.85) inset !important;
    --shadow-lg: 0 8px 32px rgba(0,0,0,0.27),0 0 0 0.5px rgba(19,19,19,0.9) inset !important;
    --glass-border: rgba(19,19,19,0.72) !important;
    --rose: rgb(32,25,28) !important;
    --rose-deep: rgb(139,138,140) !important;
    --lav: rgb(31,26,31) !important;
    --lav-deep: rgb(122,128,143) !important;
    --mint: rgb(24,30,34) !important;
    --mint-deep: rgb(120,132,152) !important;
    --gold: rgb(128,126,130) !important;
    --cream: rgb(24,26,21) !important;
    --cream2: rgb(31,32,29) !important;
    --text: rgb(175,175,175) !important;
    --text-l: rgb(139,138,140) !important;
    --text-m: rgb(168,168,169) !important;
    --rose-text: rgb(139,138,140) !important
}
html.night .deco1 {
    background: linear-gradient(135deg,rgb(24,30,34),rgb(27,31,37))
}
html.night .deco2 {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(31,26,31))
}
html.night .deco3 {
    background: linear-gradient(135deg,rgb(35,36,40),rgb(30,30,31))
}
html.night .days {
    background: linear-gradient(135deg,rgb(49,48,50) 0%,rgb(49,52,58) 45%,rgb(50,55,65) 100%)
}
html.night .daily {
    background: rgba(32,25,28,0.35)
}
html.night .chat-fab-icon {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(35,36,40));
    box-shadow: 0 4px 20px rgba(0,0,0,0.5);
    border: 1.5px solid rgba(19,19,19,0.7)
}
html.night .chat-fab-icon svg {
    stroke: rgb(107,107,107)
}
html.night .chat-transition {
    background: rgba(18,17,23,0.94)
}
html.night .sg-btn.act {
    background: rgba(32,25,28,0.4)
}
html.night .mc-cat {
    background: linear-gradient(135deg,rgba(44,32,32,0.3),rgba(38,33,43,0.2))
}
html.night .fi,html.night .fta {
    background: rgb(19,19,19)
}
html.night .co {
    background: rgb(19,19,19)
}
html.night .co.sel {
    background: rgba(32,25,28,0.35)
}
html.night .sub-btn {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(35,36,40));
    color: rgb(107,107,107);
    box-shadow: 0 4px 16px rgba(0,0,0,0.45)
}
html.night .nc-from {
    background: linear-gradient(135deg,rgba(44,32,32,0.3),rgba(38,33,43,0.2))
}
html.night .vc-from {
    background: linear-gradient(135deg,rgba(37,45,42,0.3),rgba(38,33,43,0.2))
}
html.night .edit-modal {
    background: rgba(50,52,59,0.1)
}
html.night .edit-inner {
    box-shadow: 0 12px 40px rgba(0,0,0,0.3)
}
html.night .fab {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(35,36,40));
    color: rgb(107,107,107);
    border: 1.5px solid rgba(19,19,19,0.7);
    box-shadow: 0 4px 20px rgba(0,0,0,0.5)
}
html.night .toast {
    box-shadow: 0 4px 20px rgba(0,0,0,0.24)
}
html.night .hr-i {
    background: rgba(32,25,28,0.55)
}
html.night .st-i {
    background: rgba(24,30,34,0.55)
}
html.night .sl-i {
    background: rgba(31,26,31,0.55)
}
html.night .ox-i {
    background: rgba(49,48,50,0.35)
}
html.night .g-again {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(49,52,58));
    color: rgb(107,107,107)
}
html.night .cal-cell.has-entry {
    background: rgba(32,25,28,0.4)
}
html.night .cal-cell.sel {
    background: rgba(38,33,43,0.15)
}
html.night .diary-ta {
    background: rgb(19,19,19)
}
html.night .diary-author-btn {
    background: rgb(19,19,19)
}
html.night .diary-author-btn.sel {
    background: rgba(32,25,28,0.35)
}
html.night .diary-save {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(49,52,58));
    color: rgb(107,107,107)
}
html.night .diary-entry {
    background: rgba(30,26,22,0.5)
}
html.night .diary-entry-author.kiki {
    background: rgba(32,25,28,0.55)
}
html.night .diary-entry-author.vince {
    background: rgba(24,30,34,0.55)
}
html.night .cmt-item .cmt-from {
    background: rgba(44,32,32,0.2)
}
html.night .cmt-input input {
    background: rgb(19,19,19)
}
html.night .cmt-input button {
    color: rgb(107,107,107)
}
html.night .bg-opt-preview {
    border: 1.5px solid rgba(31,35,43,0.3)
}
html.night input[type="range"] {
    background: rgba(31,35,43,0.3)
}
html.night .mochi-ground {
    background: linear-gradient(180deg,rgba(35,44,35,0.15),rgba(35,44,35,0.08))
}
html.night .mochi-bubble {
    background: rgba(19,19,19,0.85)
}
html.night input[type="range"]::-webkit-slider-thumb {
    background: rgb(19,19,19);
    border: 2px solid rgb(49,52,58);
    box-shadow: 0 2px 8px rgba(0,0,0,0.45)
}
html.night .ledger-summary::before {
    background: linear-gradient(90deg,rgb(32,25,28),rgb(31,26,31),rgb(24,30,34))
}
html.night .ledger-cat-chip {
    background: rgba(32,25,28,0.4)
}
html.night .ledger-add-bar input {
    background: rgba(19,19,19,0.6)
}
html.night .ledger-add-bar input:focus {
    background: rgb(19,19,19);
    box-shadow: 0 0 0 4px rgba(0,0,0,0.36)
}
html.night .ledger-add-btn {
    background: linear-gradient(135deg,rgb(32,25,28),rgb(35,36,40));
    color: rgb(107,107,107);
    box-shadow: 0 2px 12px rgba(0,0,0,0.5)
}
html.night .ledger-cat-btn.sel {
    background: rgba(32,25,28,0.45)
}
html.night .pomo-dot {
    border: 1.5px solid rgba(48,40,52,0.3)
}
html.night .pomo-dot.active {
    border-color: rgba(60,48,67,0.6);
    background: linear-gradient(135deg,rgba(56,41,52,0.15),rgba(50,42,58,0.15));
    box-shadow: 0 0 16px rgba(0,0,0,0.45)
}
html.night .pomo-dot.done {
    border-color: rgba(50,69,60,0.5);
    background: linear-gradient(135deg,rgba(50,69,60,0.15),rgba(46,60,53,0.1))
}
html.night .pomo-progress-line {
    background: rgba(48,40,52,0.12)
}
html.night .pomo-progress-fill {
    background: linear-gradient(90deg,rgb(49,48,50),rgb(49,52,58),rgb(50,55,65))
}
html.night .pomo-primary {
    background: linear-gradient(135deg,rgb(49,48,50),rgb(49,52,58));
    color: rgb(107,107,107);
    box-shadow: 0 6px 24px rgba(0,0,0,0.5)
}
html.night .pomo-primary.running {
    background: linear-gradient(135deg,rgb(54,48,45),rgb(59,59,55));
    box-shadow: 0 6px 24px rgba(0,0,0,0.5)
}
html.night .app-edit-button {
    background: rgba(19,19,19,0.36)
}
html.night .app-edit-button.done {
    background: rgba(19,19,19,0.62)
}
html.night .desktop-date {
    color: rgba(121,126,134,0.96);
    text-shadow: 0 1px 4px rgba(19,19,19,0.45)
}
html.night .desktop-time {
    color: rgb(107,107,107)
}
@media (min-width:700px) {
    html.night .desktop-time {
        color: rgb(107,107,107)
    }
}
html.night #stateAppContent #bodyStateBtn,html.night #stateAppContent #psycheStateBtn,html.night #stateAppContent #arousalStateBtn {
    background: rgba(19,19,19,0.58) !important;
    border: 1px solid rgba(32,25,28,0.9) !important;
    box-shadow: 0 8px 26px rgba(0,0,0,0.27) !important
}
html.night .tab-bar {
    border: 1px solid rgba(19,19,19,0.72) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.39) !important;
    background: rgba(19,19,19,0.64) !important
}
html.night .daily-note-widget {
    background: rgb(29,21,24) !important;
    border: 1px solid rgba(52,38,45,0.78) !important;
    box-shadow: 2px 7px 14px rgba(0,0,0,0.5),inset 0 0 18px rgba(19,19,19,0.5) !important
}
html.night .daily-note-tape {
    background: rgba(46,33,38,0.78) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.36) !important
}
html.night .daily-note-widget .daily {
    color: rgb(177,169,173) !important
}
html.night .daily-note-widget .daily:empty:before {
    color: rgb(156,141,147)
}
html.night .daily-note-widget .daily-from {
    color: rgb(150,136,142) !important
}
html.night .daily-note-widget {
    background: rgba(26,19,22,0.58) !important;
    background-image: linear-gradient(145deg,rgba(19,19,19,0.68),rgba(28,20,24,0.38)) !important;
    border: 1px solid rgba(19,19,19,0.74) !important;
    box-shadow: 2px 7px 16px rgba(0,0,0,0.36),inset 0 0 20px rgba(19,19,19,0.42) !important
}
html.night .daily-note-tape {
    background: rgba(35,26,30,0.48) !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.24) !important
}
html.night .daily-note-widget .daily {
    color: rgb(173,166,169) !important
}
html.night .daily-note-widget .daily:empty:before {
    color: rgb(148,132,139) !important
}
html.night .daily-note-widget .daily-from {
    color: rgb(145,129,136) !important
}
html.night .home-widget-slot {
    border: 1px dashed rgba(19,19,19,0.48);
    background: rgba(19,19,19,0.08)
}
html.night #p-home > .daily-note-widget {
    background: rgba(23,16,16,0.95) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.48) !important
}
html.night #p-home > .daily-note-widget .daily {
    color: rgb(178,175,177) !important
}
html.night #p-home > .daily-note-widget .daily:empty:before {
    color: rgb(148,141,145) !important
}
html.night #p-home > .daily-note-widget .daily-from {
    color: rgb(148,141,145) !important
}
html.night #p-home > .daily-note-widget {
    background: rgba(23,16,16,0.96) !important;
    color: rgb(178,175,177) !important
}
html.night #p-home > .daily-note-widget .daily {
    color: rgb(178,175,177) !important
}
html.night #p-home > .daily-note-widget .daily-from {
    color: rgb(148,141,145) !important
}
html.night #p-home > .daily-note-widget .daily {
    color: rgb(178,175,177) !important
}
html.night .app-edit-button {
    background: rgba(19,19,19,0.5)
}
html.night .app-btn span {
    color: rgb(170,170,172)
}
html.night .app-btn:active .app-icon {
    box-shadow: 0 1px 8px rgba(0,0,0,0.36),0 0 0 .5px rgba(19,19,19,0.9) inset
}
html.night .tab-btn.active {
    color: rgb(173,173,176) !important
}
html.night .night-switch i {
    background: rgba(49,52,58,0.28)
}
html.night .night-switch i::after {
    background: rgb(19,19,19)
}
html.night .night-switch input:checked+i {
    background: rgb(63,57,69)
}
@media (prefers-reduced-motion:reduce) {
    html.night #drawerIcon.breathing {
        box-shadow: 0 0 0 3px rgba(0,0,0,0.5)
    }
}
html.night [style*="background:linear-gradient(135deg,#EFE4E9,#DEEBF4)"]{background:linear-gradient(135deg,rgb(32,25,28),rgb(24,30,34))!important}
html.night [style*="color:#5F5F5F"]{color:rgb(175,175,175)!important}
html.night [style*="background:#F5EFF1"]{background:rgb(28,22,24)!important}
html.night [style*="border:1px solid #EFE4E9"]{border:1px solid rgb(32,25,28)!important}
html.night [style*="box-shadow:0 2px 12px rgba(162,161,164,.1)"]{box-shadow:0 2px 12px rgba(0,0,0,0.3)!important}
html.night [style*="background:linear-gradient(135deg,#EFE4E9,#D0CED2)"]{background:linear-gradient(135deg,rgb(32,25,28),rgb(40,39,41))!important}
html.night [style*="color:#A2A1A4"]{color:rgb(139,138,140)!important}
html.night [style*="background:#EFE4E9"]{background:rgb(32,25,28)!important}
html.night [style*="background:rgba(95,95,95,0.2)"]{background:rgba(67,67,67,0.2)!important}
html.night [style*="background:#FBFAFF"]{background:rgb(18,17,23)!important}
html.night [style*="box-shadow:0 12px 48px rgba(95,95,95,0.12)"]{box-shadow:0 12px 48px rgba(0,0,0,0.36)!important}
html.night [style*="color:#BDBBBF"]{color:rgb(128,126,130)!important}
html.night [style*="border:1px solid #E8DDE2"]{border:1px solid rgb(35,29,32)!important}
html.night [style*="box-shadow:0 2px 12px rgba(165,172,191,.1)"]{box-shadow:0 2px 12px rgba(0,0,0,0.3)!important}
html.night [style*="background:linear-gradient(135deg,#EDE6EE,#D0D2DB)"]{background:linear-gradient(135deg,rgb(31,26,31),rgb(35,36,40))!important}
html.night [style*="color:#7A7A7C"]{color:rgb(168,168,169)!important}
html.night [style*="background:#E8DDE2"]{background:rgb(35,29,32)!important}
html.night [style*="border-top:1px solid #EFE4E9"]{border-top:1px solid rgb(32,25,28)!important}
html.night [style*="box-shadow:0 2px 12px rgba(200,137,155,.1)"]{box-shadow:0 2px 12px rgba(0,0,0,0.3)!important}
html.night [style*="background:linear-gradient(135deg,#F0D8DE,#C8899B)"]{background:linear-gradient(135deg,rgb(36,26,29),rgb(67,49,54))!important}
html.night [style*="color:#FFF"]{color:rgb(107,107,107)!important}
html.night [style*="background:linear-gradient(135deg,#EFE4E9,#E8DDE2)"]{background:linear-gradient(135deg,rgb(32,25,28),rgb(35,29,32))!important}
html.night [style*="background:linear-gradient(135deg,#EDE6EE,#E3DCE6)"]{background:linear-gradient(135deg,rgb(31,26,31),rgb(34,30,35))!important}
html.night [style*="color:#A59AAE"]{color:rgb(139,132,145)!important}
html.night [style*="background:linear-gradient(135deg,#F1E6EA,#E7DADF)"]{background:linear-gradient(135deg,rgb(32,24,27),rgb(36,29,32))!important}
html.night [style*="color:#B08A93"]{color:rgb(152,130,135)!important}
html.night [style*="background:linear-gradient(135deg,#F0E8E6,#E8E0DE)"]{background:linear-gradient(135deg,rgb(32,26,25),rgb(35,30,29))!important}
html.night [style*="color:#A09896"]{color:rgb(145,140,139)!important}
html.night [style*="background:linear-gradient(135deg,#F4EDE4,#EAE0D0)"]{background:linear-gradient(135deg,rgb(32,28,23),rgb(40,36,29))!important}
html.night [style*="color:#B08A56"]{color:rgb(170,155,133)!important}
html.night [style*="background:linear-gradient(135deg,#EDE6EE,#E0DAE8)"]{background:linear-gradient(135deg,rgb(31,26,31),rgb(32,29,36))!important}
html.night [style*="color:#A5ACBF"]{color:rgb(122,128,143)!important}
html.night [style*="background:linear-gradient(135deg,#DEEBF4,#D3DFF2)"]{background:linear-gradient(135deg,rgb(24,30,34),rgb(27,31,37))!important}
html.night [style*="color:#93A4C1"]{color:rgb(120,132,152)!important}
html.night [style*="background:linear-gradient(135deg,#F4EDE4,#EADFD0)"]{background:linear-gradient(135deg,rgb(32,28,23),rgb(40,35,29))!important}
html.night [style*="background:#E5735F"]{background:rgb(71,54,51)!important}
html.night [style*="box-shadow:0 0 0 2px #fff"]{box-shadow:0 0 0 2px rgb(19,19,19)!important}
html.night [style*="background:linear-gradient(135deg,#EEF0E6,#DFE5D6)"]{background:linear-gradient(135deg,rgb(30,32,25),rgb(35,38,30))!important}
html.night [style*="color:#7E8F72"]{color:rgb(152,158,147)!important}
html.night [style*="background:linear-gradient(135deg,#E8F0EF,#D6E3E3)"]{background:linear-gradient(135deg,rgb(25,31,30),rgb(31,38,38))!important}
html.night [style*="color:#5F8A8F"]{color:rgb(160,176,178)!important}
html.night [style*="background:linear-gradient(135deg,#F7E7EC,#F0DDE5)"]{background:linear-gradient(135deg,rgb(31,22,25),rgb(35,25,29))!important}
html.night [style*="color:#B77D95"]{color:rgb(159,126,140)!important}
html.night [style*="background:linear-gradient(135deg,#F4EBE0,#EADFD0)"]{background:linear-gradient(135deg,rgb(33,29,24),rgb(40,35,29))!important}
html.night [style*="color:#B8896A"]{color:rgb(165,142,127)!important}
html.night [style*="background:linear-gradient(135deg,#EFE9DC,#E4DAC5)"]{background:linear-gradient(135deg,rgb(35,32,26),rgb(44,40,32))!important}
html.night [style*="color:#8A7A54"]{color:rgb(181,175,161)!important}
html.night [style*="background:linear-gradient(135deg,#FFD3D4,#D6EBE4)"]{background:linear-gradient(135deg,rgb(34,24,25),rgb(28,38,35))!important}
html.night [style*="color:#775C55"]{color:rgb(180,169,167)!important}
html.night [style*="background:linear-gradient(135deg,#E0EDE8,#D8E5E0)"]{background:linear-gradient(135deg,rgb(26,34,31),rgb(30,37,35))!important}
html.night [style*="color:#88A89A"]{color:rgb(135,152,144)!important}
html.night [style*="background:linear-gradient(135deg,#E0EDE8,#E0EDE8)"]{background:linear-gradient(135deg,rgb(26,34,31),rgb(26,34,31))!important}
html.night [style*="background:linear-gradient(135deg,#EDE6EE,#E7E8E4)"]{background:linear-gradient(135deg,rgb(31,26,31),rgb(31,32,29))!important}
html.night [style*="background:#A5ACBF"]{background:rgb(49,52,58)!important}
html.night [style*="background:#E0DAE8"]{background:rgb(32,29,36)!important}
html.night [style*="background:#EDE6EE"]{background:rgb(31,26,31)!important}
html.night [style*="background:linear-gradient(135deg,#FBFAFF,#DEEBF4)"]{background:linear-gradient(135deg,rgb(18,17,23),rgb(24,30,34))!important}
html.night [style*="background:linear-gradient(160deg,#F5EFF1,#EDE6EE,#DEEBF4)"]{background:linear-gradient(160deg,rgb(28,22,24),rgb(31,26,31),rgb(24,30,34))!important}
html.night [style*="background:linear-gradient(160deg,#DEEBF4,#DEEBF4,#DEEBF4)"]{background:linear-gradient(160deg,rgb(24,30,34),rgb(24,30,34),rgb(24,30,34))!important}
html.night [style*="background:linear-gradient(160deg,#EDE6EE,#EDE6EE,#EDE6EE)"]{background:linear-gradient(160deg,rgb(31,26,31),rgb(31,26,31),rgb(31,26,31))!important}
html.night [style*="background:linear-gradient(160deg,#E0EDE8,#E0EDE8,#E0EDE8)"]{background:linear-gradient(160deg,rgb(26,34,31),rgb(26,34,31),rgb(26,34,31))!important}
html.night [style*="background:linear-gradient(160deg,#F7F8F4,#F7F8F4,#F7F8F4)"]{background:linear-gradient(160deg,rgb(24,26,21),rgb(24,26,21),rgb(24,26,21))!important}
html.night [style*="background:linear-gradient(160deg,#F5EFF1,#F5EFF1,#F5EFF1)"]{background:linear-gradient(160deg,rgb(28,22,24),rgb(28,22,24),rgb(28,22,24))!important}
html.night [style*="background:rgba(255,255,255,0.4)"]{background:rgba(19,19,19,0.4)!important}
html.night [style*="accent-color:#A5ACBF"]{accent-color:rgb(49,52,58)!important}
html.night [style*="background:rgba(255,255,255,0.5)"]{background:rgba(19,19,19,0.5)!important}
html.night [style*="border:1px solid rgba(255,255,255,0.7)"]{border:1px solid rgba(19,19,19,0.7)!important}
html.night [style*="border:1px solid rgba(255,255,255,0.8)"]{border:1px solid rgba(19,19,19,0.8)!important}
html.night [style*="background:rgba(255,255,255,0.45)"]{background:rgba(19,19,19,0.45)!important}
html.night [style*="border-top:1px solid rgba(255,255,255,.65)"]{border-top:1px solid rgba(19,19,19,0.65)!important}
html.night [style*="background:#FBF6F7"]{background:rgb(26,19,20)!important}
html.night [style*="border:1px solid #EEE3E7"]{border:1px solid rgb(33,26,28)!important}
html.night [style*="color:#9A8E92\\"]{color:rgb(148,142,144)\!important}
html.night [style*="background:#F0E6E9"]{background:rgb(32,25,27)!important}
html.night [style*="color:#8A7F82"]{color:rgb(153,149,150)!important}
html.night [style*="color:#C29A6B"]{color:rgb(167,146,121)!important}
html.night [style*="border-bottom:1px dashed #EFE4E9"]{border-bottom:1px dashed rgb(32,25,28)!important}
html.night [style*="color:#5F5F5F\\"]{color:rgb(175,175,175)\!important}
html.night [style*="color:#9A8E92"]{color:rgb(148,142,144)!important}

/* ---- 手调 ---- */
html.night{--bg:#121114!important;--card:rgba(30,28,33,.72)!important;--card-solid:rgba(34,32,37,.9)!important;--border:rgba(255,255,255,.07)!important;--glass-border:rgba(255,255,255,.07)!important;--border-outer:rgba(255,255,255,.06)!important;--text:#BDB9C2!important;--text-m:#9C98A2!important;--text-l:#77737D!important}
/* 首页背景（含 setBg 写在 body 上的渐变/图片）统一压暗 */
html.night body{background:#121114!important}
html.night #bgLayer{filter:brightness(.35) saturate(.7)}
html.night img{filter:brightness(.85)}
html.night input,html.night textarea,html.night select{color:var(--text)}
html.night ::placeholder{color:#5F5B65!important}
html.night .night-switch i::after{background:#CFCAD4}
html.night #push-banner{background:linear-gradient(135deg,#201A1D,#181E22)!important;color:#BDB9C2!important;border-bottom-color:rgba(255,255,255,.06)!important}
/* 这几个变量既当底色又当文字色；当文字时单独提亮 */
html.night [style*="color:var(--rose)"]:not([style*="background"]),html.night [style*="color:var(--mint)"]:not([style*="background"]),html.night [style*="color:var(--lav)"]:not([style*="background"]),html.night [style*="color:var(--cream)"]:not([style*="background"]){filter:none}
html.night #hpRHR{color:#B39AA6!important}
html.night #hpScreen{color:#8FA3B4!important}
html.night .bg-opt-preview{filter:brightness(.6)}
