/* 《回声》主题：深青 · 数字 */
html, body { background: #050b10; font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif; color: #dff6f4; }

.bg-void     { background: radial-gradient(ellipse at 50% 40%, #0f3a40 0%, #071a20 45%, #020608 100%) !important; }
.bg-phone    { background: linear-gradient(180deg, #0a1f2e 0%, #1d4d63 55%, #08161f 100%) !important; }
.bg-lab      { background: linear-gradient(180deg, #0c1a24 0%, #23485a 50%, #0a141b 100%) !important; }
.bg-home     { background: linear-gradient(180deg, #5c4634 0%, #c39a6e 55%, #3a2a1e 100%) !important; }
.bg-night    { background: linear-gradient(180deg, #03060f 0%, #14213f 55%, #2a2440 100%) !important; }
.bg-school   { background: linear-gradient(180deg, #8fc3d8 0%, #d9e6d0 55%, #6a7d5a 100%) !important; }
.bg-stage    { background: linear-gradient(180deg, #050a1a 0%, #1a2f6a 45%, #3fd0d0 100%) !important; }
.bg-office   { background: linear-gradient(180deg, #1a2630 0%, #4b6070 55%, #121b22 100%) !important; }
.bg-rain     { background: linear-gradient(180deg, #0a0f18 0%, #26344a 55%, #3a1e24 100%) !important; }
.bg-darkroom { background: linear-gradient(180deg, #1a0405 0%, #6a1414 50%, #120203 100%) !important; }
.bg-grave    { background: linear-gradient(180deg, #a8b4b8 0%, #d8dcd4 50%, #6d7a6a 100%) !important; }
.bg-dawn     { background: linear-gradient(180deg, #1e3a4a 0%, #8fb8b8 55%, #f4d8a8 100%) !important; }

.petal {
  width: 3px; height: 3px; border-radius: 0;
  background: #6ff2e6; box-shadow: 0 0 6px #6ff2e6;
  opacity: .55;
  animation-name: drift;
}
@keyframes drift { to { transform: translate(0, 720px); opacity: 0; } }

.btn { background: linear-gradient(180deg, #13606a, #0a3238); border-color: #6ff2e6; color: #e6fffc; letter-spacing: 4px; }
.btn:hover { box-shadow: 0 4px 16px rgba(111,242,230,.4); }
.title-box h1 { color: #e6fffc; text-shadow: 0 0 22px rgba(111,242,230,.7), 2px 2px 0 #062a2e; letter-spacing: 18px; }
.subtitle { color: #9fcfcb; }
#title-screen { background: linear-gradient(180deg, rgba(5,30,35,.3), rgba(2,8,10,.88)); }

#dialog { background: linear-gradient(180deg, rgba(6,26,30,.9), rgba(3,12,14,.96)); border-color: #3fb8b0; }
#dialog::before { border-color: rgba(63,184,176,.3); }
#speaker { background: linear-gradient(180deg, #13606a, #0a3238); border-color: #6ff2e6; }
#text.narration { color: #b6d8d5; }
#next-hint { color: #6ff2e6; }

.stat, #menu-bar button { background: rgba(3,14,16,.68); border-color: rgba(111,242,230,.45); }
#menu-bar button:hover { background: rgba(19,96,106,.85); }
.stat .bar i { background: linear-gradient(90deg, #6ff2e6, #3f8cff); }

.choice { color: #072a2e; background: linear-gradient(90deg, rgba(230,255,252,.96), rgba(196,238,234,.96)); border-color: #3fb8b0; }
.choice:hover { background: linear-gradient(90deg, #d4fbf6, #a8e8e2); }
.choice.special { border-color: #ff7a9c; box-shadow: 0 0 10px rgba(255,122,156,.5); }
.choice.special::before { content: "【觉醒】"; color: #d0305a; }

#chapter-card span, .ending-box h2, .modal-box h3 { color: #dffcf9; text-shadow: 0 0 16px rgba(111,242,230,.55); }
.ending-tag { color: #6ff2e6; }
.modal-box { background: linear-gradient(180deg, #0a2a2e, #041214); border-color: #3fb8b0; }
.log-line b { color: #6ff2e6; }
