.dream-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:18px 0; }
.dream-toolbar .button { padding:9px 16px; font-size:14px; min-height:40px; }
.dream-toolbar [aria-pressed="true"] { background:#55506d; color:#fff; border-color:#55506d; }
.dream-moon { width:21px; height:21px; flex:none; vertical-align:middle; margin-right:7px; }
.dream-badge { display:inline-flex; align-items:center; color:#55496f; font:600 13px/1.4 var(--font-sans, sans-serif); letter-spacing:.03em; }
.journal-card.dream-card { background:linear-gradient(120deg,#f0edf7,#faf8fc); border-color:#d3cadf; border-left:4px solid #86789c; }
.dream-card p { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.dream-card .dream-badge { margin-bottom:7px; }
.dream-empty { padding:24px; border-radius:20px; background:#efedf4; color:#55496f; }
.modal:has(.dream-heading) { background:#faf8fd; }
.dream-heading { display:flex; align-items:center; gap:10px; }
.dream-heading .dream-moon { width:30px; height:30px; color:#756586; }
.dream-original { background:#f0edf6; border-left:3px solid #9c8db4; padding:16px 20px; border-radius:4px 18px 18px 4px; margin:18px 0; }
.dream-original .journey-entry-text { margin:8px 0; }
.dream-context { margin:14px 0; }
.dream-context p,.dream-interpretation p { white-space:pre-wrap; overflow-wrap:anywhere; }
.dream-context h3 { font-size:17px; margin-bottom:6px; }
.dream-extras { margin:16px 0; }
.dream-extras > summary { color:#635671; cursor:pointer; margin-bottom:14px; }
.dream-interpretations { border-top:1px solid #d8d0e1; margin-top:26px; padding-top:20px; }
.dream-interpretation { border:1px solid #d8d0e1; border-radius:16px; padding:18px; margin:15px 0; background:#fff; }
.dream-interpretation > summary { font-weight:600; cursor:pointer; }
.dream-interpretation [data-dream-evidence] { color:#776341; font-size:13px; }
.dream-interpretation .text-link { margin-top:12px; font-size:13px; }
.dream-ai-status { min-height:1.4em; }
@media(max-width:480px) { .dream-toolbar { gap:8px; } .dream-toolbar .button { padding:8px 12px; } .dream-original { padding:14px; } .dream-interpretation { padding:14px; } }
