:root { --primary: #2563eb; --bg: #f8fafc; }
body { font-family: 'Inter', sans-serif; background-color: var(--bg); overflow: hidden; height: 100vh; display: flex; flex-direction: column; color: #0f172a; -webkit-tap-highlight-color: transparent; }
.step-container { display: none; flex-direction: column; height: 100%; width: 100%; overflow: hidden; }
.step-container.active-step { display: flex; }
.quiz-question-box { display: none; flex-direction: column; gap: 1.25rem; width: 100%; animation: slideIn 0.45s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
.quiz-question-box.active-q { display: flex; }
@keyframes slideIn { from { opacity: 0; transform: translateX(25px); } to { opacity: 1; transform: translateX(0); } }
.message-bubble { opacity: 0; transform: translateY(12px); animation: fadeInChat 0.4s ease forwards; max-width: 85%; }
@keyframes fadeInChat { to { opacity: 1; transform: translateY(0); } }
.timeline-marker { position: absolute; transition: left 2s cubic-bezier(0.4, 0, 0.2, 1); }
.pulse-red { animation: pulseRed 1.5s infinite; }
@keyframes pulseRed { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.4); opacity: 0.6; } }
.xai-stream { font-family: 'Courier New', monospace; font-size: 11px; line-height: 1.6; color: #60a5fa; }
.apple-pay-btn { background: #000; color: #fff; padding: 1.1rem; border-radius: 16px; font-weight: 800; display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; transition: transform 0.15s ease; }
.split-hero { display: flex; height: 35vh; border-bottom: 3px solid #000; overflow: hidden; }
.split-side { flex: 1; padding: 1.5rem; display: flex; flex-direction: column; justify-content: flex-end; }
.neglect-side { background: #fee2e2; color: #991b1b; }
.relief-side { background: #dcfce7; color: #166534; }
.scan-frame { position: relative; width: 100%; max-width: 260px; aspect-ratio: 1; background: #1e293b; border-radius: 24px; overflow: hidden; }
.scan-line { position: absolute; width: 100%; height: 4px; background: #3b82f6; box-shadow: 0 0 15px #3b82f6; top: 0; animation: scanLoop 3.5s infinite linear; }
@keyframes scanLoop { 0% { top: 0; } 100% { top: 100%; } }
#consultation-chat::-webkit-scrollbar { width: 0; background: transparent; }