.mission-entry { display:grid;gap:8px;margin-bottom:20px;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--sage-light); }
.mission-entry h3,.mission-entry p { margin:0; }.mission-entry button { justify-self:start; }
.life-mission-dialog { width:min(100% - 20px,650px);max-height:94dvh;border:1px solid #cad8ce;border-radius:24px;background:#fffdf7;color:#173f36;padding:0;overflow:auto;overscroll-behavior:contain; }
.life-mission-dialog::backdrop { background:#173f367a;backdrop-filter:blur(3px); }
.life-mission-dialog button,.life-mission-dialog select,.life-mission-dialog textarea { font:inherit;touch-action:manipulation; }
.life-mission-dialog button { cursor:pointer;min-height:44px;color:inherit; }.life-mission-dialog button:disabled { opacity:.6;cursor:default; }
.life-mission-dialog :focus-visible { outline:3px solid #b7682f;outline-offset:3px; }
.mission-top { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid #d5dfd7;font-weight:750; }
.mission-close { border:0;background:transparent;font-size:1.8rem!important;width:44px; }
.mission-settings { display:flex;align-items:start;gap:10px;padding:10px 18px;border-bottom:1px solid #d5dfd7; }.mission-preferences { flex:1;min-width:0; }.mission-preferences summary { cursor:pointer;min-height:44px;padding:10px;border:1px solid #d5dfd7;border-radius:12px;font-size:.8rem; }.mission-settings>button { flex:1;padding:10px;border:1px solid #d5dfd7;border-radius:12px;background:#edf2eb;font-size:.8rem; }.mission-settings>button[aria-pressed=true] { background:#155f52;color:white; }
.mission-tools { display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;border-bottom:1px solid #d5dfd7; }
.mission-tools label { display:grid;gap:4px;font-size:.75rem;max-width:100%;flex:1 1 150px; }.mission-tools select { max-width:100%;width:100%;min-height:44px;padding:6px;border:1px solid #bccfc2;border-radius:10px;background:white;color:inherit; }
.mission-tools button { padding:8px 12px;background:#edf2eb;border:1px solid #d5dfd7;border-radius:12px;flex:1 1 100px;font-size:.8rem; }
.mission-tools button[aria-pressed=true] { background:#155f52;color:white; }
.mission-body { padding:clamp(18px,4vw,30px); }.mission-body h2 { font-size:clamp(1.5rem,5.5vw,2.1rem);line-height:1.2;margin:12px 0 20px;font-family:Georgia,serif; }.mission-body p { line-height:1.55; }.mission-body small { display:block;line-height:1.5; }
.mission-kinds { display:grid;gap:10px;margin-top:20px; }.mission-kinds button { display:flex;align-items:center;gap:14px;text-align:start;padding:18px;border:1px solid #c7d5ca;border-radius:18px;background:#f0f4e9; }.mission-kinds button strong { flex:1; }
.life-mission-dialog svg { width:26px;height:26px;flex-shrink:0; }
.mission-steps { display:flex;list-style:none;gap:8px;padding:0;margin:4px 0 24px; }.mission-steps li { flex:1;min-width:0;display:grid;gap:6px;font-size:.72rem;line-height:1.3; }.mission-steps b { display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e8efe3; }.mission-steps .current b { background:#155f52;color:white; }.mission-steps .done b { background:#e5c89f; }
.mission-context { display:flex;align-items:center;gap:10px;font-size:.85rem;color:#50695f; }
.mission-message { display:flex;width:100%;align-items:center;gap:12px;text-align:start;padding:18px;border-radius:18px;border:1px solid #bdcfb9;background:#eef3e6;line-height:1.65; }.mission-message span { flex:1; }
.mission-audio { display:flex;gap:8px;margin:10px 0 18px; }.mission-audio button,.mission-help button { padding:9px 14px;background:white;border:1px solid #c7d5ca;border-radius:12px; }
.mission-answers { display:grid;gap:10px; }.mission-answers button { padding:16px;text-align:start;border:2px solid #d5dfd7;border-radius:16px;background:white;line-height:1.45; }.mission-answers button[aria-pressed=true] { border-color:#155f52;background:#edf2e7; }
.mission-primary,.mission-secondary { display:block;width:100%;margin:14px 0;padding:15px;border-radius:15px;border:1px solid #b6cbbc;font-weight:750!important; }.mission-primary { background:#155f52!important;color:white!important;border-color:#155f52; }.mission-secondary { background:#fffdf7; }
.mission-earlier,.mission-help { margin:18px 0; }.mission-earlier summary,.mission-help summary { cursor:pointer;min-height:44px;padding:10px 0;font-weight:700; }.mission-earlier p { padding:14px;border-inline-start:3px solid #b6cbbc; }
#mission-answer-form label { display:grid;gap:9px; }#mission-answer { box-sizing:border-box;width:100%;min-height:100px;resize:vertical;padding:14px;border:2px solid #a9bfae;border-radius:14px;color:#173f36;background:white; }
.mission-model { padding:15px;border-inline-start:4px solid #c9985a;background:#fff2dc;border-radius:10px; }.mission-model button { display:flex;align-items:center;gap:10px;justify-content:space-between;width:100%;border:0;background:transparent;text-align:start;font-weight:700;padding:10px 0; }.mission-model p { margin-bottom:0;font-size:.9rem; }
[data-mission-feedback] { min-height:24px; }[data-mission-feedback][data-kind=retry] { color:#933f30; }[data-mission-feedback][data-kind=correct] { color:#155f52;font-weight:750; }
.mission-success { display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e8efe3;font-size:2.5rem; }.mission-evidence { padding:18px;border-radius:18px;background:#edf2e7;margin:18px 0; }.mission-evidence>strong { font-size:2.2rem; }.mission-evidence p { margin:6px 0 18px; }
.mission-result-steps { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;font-size:.85rem; }.mission-result-steps span { display:grid;gap:5px; }.mission-result-steps b { font-size:1.2rem; }.mission-result-steps small { color:#526b60; }
@media(prefers-reduced-motion:no-preference){.life-mission-dialog[open] .mission-body { animation:mission-in .18s ease-out; }.life-mission-dialog button:active { transform:scale(.985); }.life-mission-dialog .playing svg { animation:mission-voice .7s ease-in-out infinite alternate; }@keyframes mission-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes mission-voice{to{transform:scale(1.12);opacity:.65}}}

.mission-resume { display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px 20px;border:1px solid var(--line);border-radius:20px;background:var(--sage-light);color:var(--ink);text-align:start;cursor:pointer; }
.mission-resume[hidden] { display:none; }.mission-resume small,.mission-resume strong { display:block; }.mission-resume small { font-size:.75rem;margin-bottom:4px; }.mission-resume strong { font-size:1rem; }.mission-resume:focus-visible { outline:3px solid #b7682f;outline-offset:3px; }

.mission-feedback-detail { display:block;font-weight:700;margin-top:6px; }.life-mission-dialog [data-kind="unrecognised"] { color:#52685e; }

.mission-followup { padding:18px;margin:20px 0;border:1px solid #b6cbbc;border-radius:18px;background:#edf2e7;text-align:start; }
.mission-followup>strong { display:flex;align-items:center;gap:12px;margin-top:8px;font-size:1.15rem; }
.mission-followup>p { font-size:.9rem; }.mission-followup .mission-primary { margin-bottom:0; }
.mission-followup .mission-primary small { font-weight:400;margin-top:5px; }
.mission-entry .mission-followup-cue { font-weight:750; }.mission-entry small { line-height:1.5; }
