#goal-next{border:1px solid #dfc5ac;border-radius:24px;background:#fffaf5;padding:24px;box-shadow:0 12px 35px #513c2310}
#goal-next h3{font-size:21px;line-height:1.3;margin:0 0 20px}
#goal-summary{margin:0 0 18px;display:grid;gap:12px}
#goal-summary>div{display:grid;grid-template-columns:minmax(95px,.8fr) minmax(0,1.2fr);gap:18px;border-bottom:1px solid #eaded3;padding-bottom:12px}
#goal-summary dt{font-size:13px;color:#716356;line-height:1.5}
#goal-summary dd{font-size:15px;line-height:1.5;margin:0;overflow-wrap:anywhere}
#goal-next #goal-progress{font-size:13px;color:#6c563b}
#goal-transfer[aria-disabled=true]{opacity:.5;cursor:wait}
#goal-skip{display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin-top:10px;padding:8px 15px;border-radius:11px;background:#f26835;color:#171716;font-size:13px;font-weight:700;text-decoration:none}
#goal-skip:hover{background:#df582a}
#goal-skip[hidden]{display:none}
#goal-skip[aria-disabled=true]{opacity:.5;cursor:wait}
#goal-next [hidden]{display:none}
.goal-privacy{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
#goal-reset{font:inherit;font-size:12px;color:#796b5e;border:0;padding:0;background:none;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.goal-suggestions[hidden]{display:none}
@media(max-width:480px){#goal-next{padding:19px}#goal-summary>div{grid-template-columns:1fr;gap:3px}#goal-next h3{font-size:19px}}
/* At the chat bubble, look at the visitor, then point down using a straight gaze. */
#goal-avatar[data-docked="true"] .assistant-character .character-gaze{animation:none!important;transform:translate(0,0)}
#goal-avatar[data-prompting="true"] .assistant-character .character-gaze{animation:goal-prompt-gaze 8s ease-in-out infinite!important}
#goal-avatar[data-prompting="true"] .assistant-character .character-body{animation:goal-prompt-nod 8s ease-in-out infinite!important;transform-origin:64px 70px}
#goal-avatar[data-thinking="true"] .assistant-character .character-body{animation:goal-thinking-bob 1.5s ease-in-out infinite!important}
#goal-avatar[data-thinking="true"] .assistant-character .character-gaze{animation:none!important;transform:translate(0,-3px)}
#goal-avatar[data-thinking="true"] .assistant-character :is(.character-eye-left,.character-eye-right){animation:none!important}
#goal-avatar .goal-thought{position:absolute;top:-4px;right:0;z-index:2;display:grid;place-items:center;width:43px;height:29px;border-radius:16px 16px 16px 4px;background:#fffdfb;box-shadow:0 4px 15px #512a171c;color:#f26835;font-size:17px;letter-spacing:3px;visibility:hidden;opacity:0;pointer-events:none}
#goal-avatar[data-thinking="true"] .goal-thought{visibility:visible;opacity:1;animation:goal-thought-pulse 1.2s ease-in-out infinite}
@media(max-width:960px){#goal-avatar .goal-thought{top:-18px;right:-20px}}
#goal-status[data-pending="true"]{color:transparent}
.goal-message.user.pending{opacity:.72}
@keyframes goal-prompt-gaze{0%,14%,36%,47%,69%,80%,100%{transform:translate(0,0)}21%,29%,54%,62%,87%,94%{transform:translate(0,9px)}}
@keyframes goal-prompt-nod{0%,14%,36%,47%,69%,80%,100%{transform:translateY(0) perspective(260px) rotateX(-4deg)}21%,29%,54%,62%,87%,94%{transform:translateY(2px) perspective(260px) rotateX(14deg)}}
@keyframes goal-thinking-bob{50%{transform:translateY(-5px)}}
@keyframes goal-thought-pulse{50%{opacity:.45;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){#ziel #goal-avatar[data-docked="true"]{transform:translateX(var(--goal-dock-x,0px))!important}#goal-avatar[data-thinking="true"] .goal-thought,#goal-avatar[data-thinking="true"] .assistant-character .character-body{animation:none!important}}

/* Match the app's compact composer: one line at rest, voice, then send. */
#goal-form{display:flex;align-items:flex-end;gap:2px;min-width:0;padding:4px;border:1px solid #c5b3a1;border-radius:26px;background:#fffdfb;transition:border-color .2s,box-shadow .2s}
#goal-form:focus-within{border-color:#f26835;box-shadow:0 0 0 3px #f2683520}
#goal-input{display:block;flex:1 1 0;min-width:0;width:0;height:42px;min-height:42px;max-height:112px;margin:0;padding:10px 8px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#171716;font:inherit;font-size:16px;line-height:22px;resize:none;overflow-y:auto;scrollbar-width:thin}
#goal-input:focus{border:0;outline:0;box-shadow:none}
#goal-input[data-invited=true]{border:0;box-shadow:none}
#goal-input::placeholder{color:#8d7c6d;opacity:1}
#goal-form :is(.goal-mic,.goal-send){position:static;display:grid;place-items:center;flex:0 0 42px;width:42px;min-width:42px;height:42px;min-height:42px;margin:0;padding:0;border:0;border-radius:50%;box-sizing:border-box;line-height:1;cursor:pointer}
#goal-form :is(.goal-mic,.goal-send) svg{display:block;flex:none;width:22px;height:22px;margin:0}
#goal-form .goal-mic{background:transparent;color:#665344}
#goal-form .goal-mic:hover{background:#f5e6db;color:#9e4326}
#goal-form .goal-mic.recording{background:#fbe4dc;color:#b52928;animation:goal-recording-pulse 1.2s ease-in-out infinite}
#goal-form .goal-send{background:#f26835;color:white}
#goal-form .goal-send:hover{background:#d95224;color:white}
#goal-form .goal-send svg{transform:translateX(1px)}
#goal-form :is(.goal-mic,.goal-send):focus-visible{outline:2px solid #f26835;outline-offset:2px}
#goal-form :is(.goal-mic,.goal-send):disabled{opacity:.4;cursor:wait}
@keyframes goal-recording-pulse{50%{box-shadow:0 0 0 4px #b5292826}}
@media(prefers-reduced-motion:reduce){#goal-form .goal-mic.recording{animation:none}}

/* Keep the mobile story attached to the changing visual viewport. The progress
   line belongs to the header, where it cannot cover a meal or the phone. */
@media(max-width:960px){
 .enhanced .stage{height:100lvh}
 .enhanced .chapter:first-of-type{margin-top:-100lvh}
 .enhanced:not(.reduced) .story::after{height:0}
 .enhanced .scene-progress{display:none}
 .header[data-story-active="true"]::after{content:"";position:absolute;left:0;bottom:-1px;width:var(--story-progress,0%);height:2px;background:#f26835;pointer-events:none}
}
