.brief-preparation,.brief-clarification { padding:clamp(22px,3vw,36px); border-radius:10px; background:var(--surface); }
.brief-preparation-top { display:flex; justify-content:space-between; gap:16px; align-items:baseline; margin-bottom:26px; }
.brief-preparation-top .eyebrow { margin:0; }
.brief-preparation-top .date { white-space:nowrap; color:var(--muted); }
.brief-preparation h2 { font:500 clamp(30px,3vw,40px)/1.15 var(--serif); margin:0 0 14px; }
.brief-preparation > p,.brief-clarification > p { font-size:14px; line-height:1.7; }
.brief-flight { height:44px; margin-top:12px; overflow:hidden; pointer-events:none; }
.brief-flight-track { width:calc(100% - 44px); height:44px; opacity:.65; }
.brief-flight-bird { position:relative; display:block; width:44px; height:44px; }
.brief-flight-frame { position:absolute; inset:0; width:44px; height:44px; overflow:hidden; }
.brief-flight-frame--up { opacity:0; }
.brief-activity { height:5px; overflow:hidden; border-radius:4px; background:var(--wash); margin:0 0 28px; }
.brief-activity > span { display:block; width:42%; height:100%; border-radius:inherit; background:linear-gradient(90deg,transparent,var(--jade),var(--deep),transparent); transform:translateX(65%); }
.brief-preparation-detail ul { padding:0; margin:14px 0 24px; list-style:none; display:grid; gap:14px; }
.brief-preparation-detail li { display:flex; align-items:center; gap:12px; color:var(--ink); font-size:14px; }
.brief-preparation-detail li::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--jade); }
.brief-preparation .brief-wait-note { color:var(--muted); font-size:12px; }
.brief-clarification h2 { font-size:23px; line-height:1.45; overflow-wrap:anywhere; }
.brief-clarification label { display:block; margin:24px 0 8px; }
.brief-clarification textarea { width:100%; resize:vertical; min-height:96px; padding:12px; color:var(--ink); background:var(--canvas); border:1px solid var(--line); border-radius:5px; font:inherit; }
.brief-answer-actions { display:flex; flex-wrap:wrap; gap:12px 22px; align-items:center; margin-top:16px; }
.brief-answer-error { color:#9b332b; margin-top:12px; }
.brief-answer-receipt { padding:16px; margin-top:20px; border-radius:6px; background:var(--wash); }
.brief-answer-receipt p { white-space:pre-wrap; overflow-wrap:anywhere; }
@keyframes brief-sweep { from { transform:translateX(-110%); } to { transform:translateX(350%); } }
/* Three wingbeats, then glide. The last quarter is quiet, not another bird. */
@keyframes brief-robin-cross {
    0% { transform:translateX(0); opacity:0; }
    5% { opacity:.65; }
    70% { opacity:.65; }
    76%,100% { transform:translateX(100%); opacity:0; }
}
@keyframes brief-robin-lift {
    0%,16%,32%,48%,100% { transform:translateY(0); }
    8%,24%,40% { transform:translateY(-3px); }
}
@keyframes brief-wing-up {
    0%,16%,32%,48%,100% { opacity:0; }
    8%,24%,40% { opacity:1; }
}
@keyframes brief-wing-down {
    0%,16%,32%,48%,100% { opacity:1; }
    8%,24%,40% { opacity:0; }
}
@media (prefers-reduced-motion:no-preference) {
    .brief-preparation[aria-busy=true] .brief-activity > span { animation:brief-sweep 2.6s ease-in-out infinite; }
    .brief-preparation[aria-busy=true] .brief-flight-track { animation:brief-robin-cross 6.8s linear infinite; }
    .brief-preparation[aria-busy=true] .brief-flight-bird { animation:brief-robin-lift 6.8s ease-in-out infinite; }
    .brief-preparation[aria-busy=true] .brief-flight-frame--up { animation:brief-wing-up 6.8s ease-in-out infinite; }
    .brief-preparation[aria-busy=true] .brief-flight-frame--down { animation:brief-wing-down 6.8s ease-in-out infinite; }
}
.brief-motion-paused .brief-activity > span,
.brief-motion-paused .brief-flight * { animation-play-state:paused!important; }
@media (max-width:620px) {
    .brief-preparation-top { gap:10px; margin-bottom:20px; }
    .brief-clarification textarea { font-size:16px; }
}
