/* Familiar chat shapes, subtle centred portrait movement and an illustrative presence light. */
.conversation-scene .email-card{border-radius:18px;padding:26px;box-shadow:0 12px 35px #203b3010}.email-heading{margin-bottom:28px}.email-header{position:relative;gap:13px;border-bottom:0;padding-bottom:20px}.chat-avatar{position:relative;flex:0 0 48px;width:48px;height:48px}.chat-avatar .avatar{display:block;transform-origin:50% 80%;animation:portrait-attention 7s ease-in-out infinite;animation-play-state:paused}.presence-dot{position:absolute;right:0;bottom:1px;width:10px;height:10px;border:2px solid #fffcf5;border-radius:50%;background:#5d8e60;animation:presence-breathe 2.8s ease-in-out infinite;animation-play-state:paused}.email-bubble{border:1px solid #d9dfd2;border-radius:16px 16px 4px 16px;padding:16px 18px;margin:12px 0 18px 24px;background:#f0f0e8}.email-bubble.reply{margin:0 24px 0 0;border-radius:16px 16px 16px 4px;padding:18px;background:#e4ecde;border-color:#cad8c0}.email-bubble p{font:15px/1.6 Inter,Arial,sans-serif;letter-spacing:0;margin:8px 0 0}.email-bubble small{font-size:9px;font-weight:650;letter-spacing:.1em}.chat-response{position:relative}.chat-typed{display:none}.chat-enhanced .chat-full{color:transparent}.chat-enhanced .chat-typed{display:block;position:absolute;inset:0;white-space:pre-wrap;color:var(--ink)}.chat-enhanced[data-typing=true] .chat-typed:after{content:'';display:inline-block;width:2px;height:1em;background:#55775d;vertical-align:-2px;margin-left:2px;animation:chat-cursor 1s steps(2,end) infinite;animation-play-state:paused}.chat-controls{display:flex;align-items:center;justify-content:space-between;margin-top:16px;height:32px}.chat-activity{display:flex;gap:4px;visibility:hidden}.chat-activity i{height:5px;width:5px;border-radius:50%;background:#678567;animation:chat-dot 1.4s ease-in-out infinite;animation-play-state:paused}.chat-activity i:nth-child(2){animation-delay:.15s}.chat-activity i:nth-child(3){animation-delay:.3s}.chat-enhanced[data-typing=true] .chat-activity{visibility:visible}.chat-pause{border:1px solid #aebeab;background:#f7f8ef;border-radius:50%;width:32px;height:32px;padding:7px;color:#294b36}.chat-pause svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}.chat-pause[aria-pressed=true] .pause-mark{display:none}.chat-pause[aria-pressed=true] .play-mark{display:block;fill:currentColor;stroke:none}.email-card[data-chat-running=true] .avatar,.email-card[data-chat-running=true] .presence-dot,.email-card[data-chat-running=true] .chat-activity i,.email-card[data-chat-running=true] .chat-typed:after{animation-play-state:running}
@keyframes portrait-attention{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-1px) rotate(-1.4deg)}55%{transform:translateY(0) rotate(.8deg)}75%{transform:translateY(-.5px) rotate(0)}}@keyframes presence-breathe{50%{box-shadow:0 0 0 4px #6a94621c}}@keyframes chat-dot{50%{transform:translateY(-3px);opacity:.45}}@keyframes chat-cursor{50%{opacity:0}}
/* The board stays on Tanwen's right, including while she scans. */
.brand-rig .held-evidence,.brand-rig[data-action=scan] .held-evidence{left:calc(50% + 82px);bottom:70px;width:96px;min-height:92px;transform:rotate(-2deg);padding:9px;border:1px solid #95ab83;border-top:4px solid #6f8b66;border-radius:6px;background:#fcfff3;box-shadow:0 4px 0 #b0c19a,0 8px 22px #385b3220}.task-board .board-title{display:block;font-size:7px;letter-spacing:.09em;color:#657e59;margin-bottom:7px}.task-board [data-evidence-number]{float:right;font-size:8px}.task-board [data-evidence-name]{font-size:10px;line-height:1.25;padding-right:12px}.task-board [data-task-action]{display:block;font-size:8px;line-height:1.35;color:#5d7655;margin-top:5px}.task-board .board-lines{display:grid;gap:3px;margin-top:7px}.task-board .board-lines i{margin:0;width:70%;height:2px;background:#bbcca8}.task-board .board-lines i:nth-child(2){width:90%}.task-board .board-lines i:last-child{width:55%}.task-board .board-progress{height:3px;background:#e1e8d8;margin-top:7px;overflow:hidden}.task-board .board-progress i{height:3px;width:100%;margin:0;background:#61824e;transform:scaleX(var(--task-progress,0));transform-origin:left}.cinema .task-board{animation:board-breathe 2.6s ease-in-out infinite}.cinema .task-board .board-lines i{animation:board-line 1.8s ease-in-out infinite}.task-board .board-lines i:nth-child(2){animation-delay:.2s!important}.task-board .board-lines i:nth-child(3){animation-delay:.4s!important}
@keyframes board-breathe{50%{box-shadow:0 4px 0 #a9be91,0 0 0 4px #94b47416,0 7px 24px #5c85453b;transform:translateY(-2px) rotate(-1deg)}}@keyframes board-line{50%{background:#7d9c63}}
/* Six distinct miniature work cues, only on the connected surface. */
.cinema .being-worked[data-facet='0'] .mini-site b{animation:site-layout 2.4s ease-in-out infinite}.cinema .being-worked[data-facet='0'] .mini-site span,.cinema .being-worked[data-facet='0'] .mini-site i{animation:text-write 2s ease-in-out infinite;transform-origin:left}
.cinema .being-worked[data-facet='1'] .mini-search{animation:search-rank 2.2s ease-in-out infinite}.cinema .being-worked[data-facet='2'] .mini-map b{animation:map-match 1.8s ease-in-out infinite}.cinema .being-worked[data-facet='3'] .mini-search>*{animation:parse-lines 1.6s steps(4,end) infinite;transform-origin:left}.cinema .being-worked[data-facet='3'] .mini-search>*:nth-child(2n){animation-delay:.3s}.cinema .being-worked[data-facet='4'] .mini-list b:last-child{animation:listing-add 2s ease-in-out infinite}.cinema .being-worked[data-facet='5'] .mini-answer b{animation:answer-build 2.2s ease-in-out infinite;transform-origin:left}.cinema .being-worked[data-facet='5'] .mini-answer i{animation:answer-build 2.2s .35s ease-in-out infinite;transform-origin:right}
@keyframes site-layout{50%{transform:scale(.82) translateX(2px);background:#7c9d67}}@keyframes text-write{50%{transform:scaleX(.5)}}@keyframes search-rank{35%{transform:translateY(3px)}70%{transform:translateY(-2px)}}@keyframes map-match{50%{box-shadow:0 0 0 5px #94ac6840;background:#6c8e55;transform:translateY(-2px) rotate(-45deg)}}@keyframes parse-lines{0%,100%{transform:scaleX(1)}40%{transform:scaleX(.3);background:#6d8e62}}@keyframes listing-add{0%,100%{opacity:1;transform:translateY(0)}40%{opacity:.2;transform:translateY(7px)}75%{opacity:1;transform:translateY(-1px)}}@keyframes answer-build{0%,100%{transform:scaleX(1)}40%{transform:scaleX(.25);opacity:.4}75%{transform:scaleX(1);opacity:1}}
@media(max-width:700px){.conversation-scene .email-card{padding:18px}.email-bubble{margin-left:12px;padding:14px}.email-bubble.reply{margin-right:12px;padding:14px}.email-bubble p{font-size:14px}.brand-rig .held-evidence,.brand-rig[data-action=scan] .held-evidence{left:calc(50% + 59px);bottom:56px;width:78px;min-height:88px;padding:6px}.task-board .board-title{font-size:6px;margin-bottom:5px}.task-board [data-evidence-name]{font-size:8px;padding-right:9px}.task-board [data-task-action]{font-size:7px}.task-board [data-evidence-number]{font-size:6px}.task-board .board-lines{gap:2px;margin-top:5px}}
@media(prefers-reduced-motion:reduce){.chat-typed{display:none!important}.chat-full{color:inherit!important}.chat-avatar *,.chat-activity *,.task-board,.task-board *,.facet-art *{animation:none!important}}

.cinema .task-board,.cinema .task-board .board-lines i,.cinema .being-worked .facet-art *{animation-play-state:paused}.cinema[data-running=true] .task-board,.cinema[data-running=true] .task-board .board-lines i,.cinema[data-running=true] .being-worked .facet-art *{animation-play-state:running}
/* Conversation controls own their motion independently of the lower scene. */
.email-card .avatar,.email-card .presence-dot,.email-card .chat-activity i,.email-card .chat-typed:after{animation-play-state:paused!important}.email-card[data-chat-running=true] .avatar,.email-card[data-chat-running=true] .presence-dot,.email-card[data-chat-running=true] .chat-activity i,.email-card[data-chat-running=true] .chat-typed:after{animation-play-state:running!important}
/* Reserve space for the taller task board below the six surfaces. */
.assembly-cinema .studio-rig{height:445px}.brand-rig .held-evidence,.brand-rig[data-action=scan] .held-evidence{bottom:84px}
@media(max-width:700px){.assembly-cinema .studio-rig{height:370px}.brand-rig .held-evidence,.brand-rig[data-action=scan] .held-evidence{bottom:70px}}
