/* The mural is decorative; opaque answer surfaces preserve text contrast. */
.ancestral-backdrop{position:absolute;inset:65px 0 auto;height:720px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 45%,var(--bg)),url('/assets/iran-mural.png') center top/cover no-repeat;opacity:.22}
html[data-theme="dark"] .ancestral-backdrop{opacity:.58}
.heritage-banner{order:0;margin:0;text-align:center;padding:16px 20px;color:var(--gold);border-bottom:1px solid color-mix(in srgb,var(--gold) 20%,transparent);background:color-mix(in srgb,var(--surface) 90%,transparent)}
.heritage-banner>span{display:block;font-size:15px;font-weight:600;letter-spacing:.2px}
.heritage-banner small{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.topbar{order:-1}
.welcome{padding:24px 18px;border-radius:28px;background:color-mix(in srgb,var(--surface) 84%,transparent);border:1px solid color-mix(in srgb,var(--gold) 25%,transparent);box-shadow:0 20px 70px #14264008}
.welcome h1{font-size:clamp(32px,3.2vw,46px)}
.hero-emblem{margin-top:20px}
.chat-heading{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:15px 20px;box-shadow:0 7px 24px #10223c08}
.chat-heading strong{font-size:15px}.chat-heading small{font-size:11px}
.message-list{gap:28px}
.message.assistant .message-text{white-space:normal;line-height:2.05;font-size:15px;border:1px solid var(--border);border-inline-start:3px solid var(--gold);padding:22px 26px;background:var(--surface)}
.message-text p{margin:0 0 12px;white-space:pre-wrap}.message-text p:last-child{margin-bottom:0}
.message-text h3{font-size:1.05em;color:var(--gold);margin:20px 0 10px}.message-text h3:first-child{margin-top:0}
.message-text strong{font-weight:700;color:var(--text)}
.message-text ul,.message-text ol{padding-inline-start:25px;margin:12px 0}.message-text li{padding-inline-start:5px;margin:8px 0}.message-text li::marker{color:var(--gold);font-weight:700}
.message-text code{font-family:Consolas,monospace;font-size:.9em;background:var(--field);border:1px solid var(--border);border-radius:5px;padding:2px 6px;unicode-bidi:isolate;direction:ltr;display:inline-block;max-width:100%;overflow-wrap:anywhere}
.message-text pre{direction:ltr;text-align:left;white-space:pre;overflow:auto;max-width:100%;background:var(--field);padding:16px;border:1px solid var(--border);border-radius:12px}
.message-text pre code{border:0;padding:0;display:block;overflow-wrap:normal}
.message.user{max-width:88%;margin-inline-start:auto}.message.user .message-text{padding:14px 20px;box-shadow:none}
.message-actions button{font-size:11px}.message-label{margin-bottom:9px}.message-label small{font-size:9px}
.answer-waiting{display:flex;align-items:center;gap:12px;padding:16px 20px;margin-inline-start:52px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:16px;width:fit-content;font-size:12px}
.waiting-dots{display:flex;gap:5px}.waiting-dots i{width:6px;height:6px;background:var(--gold);border-radius:50%;animation:ario-pulse 1.4s ease-in-out infinite}.waiting-dots i:nth-child(2){animation-delay:.18s}.waiting-dots i:nth-child(3){animation-delay:.36s}
@keyframes ario-pulse{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}
.composer{box-shadow:0 12px 40px #13284614}.composer textarea{line-height:1.9}
@media(min-width:1450px){.ancestral-backdrop{background-size:100% auto;height:900px}.workspace{max-width:1100px}}
@media(max-width:700px){.ancestral-backdrop{height:480px;background-size:auto 480px;opacity:.16}.heritage-banner{padding:12px 16px}.heritage-banner small{font-size:9px}.welcome{padding:20px 12px}.workspace{padding-inline:14px}.message.assistant .message-text{padding:17px;font-size:14px}.message.user{max-width:95%}.answer-waiting{margin-inline-start:0;font-size:11px}.message-text pre{padding:10px}.heritage-cards strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.waiting-dots i{animation:none}}
