/* Safety Quest — learning journey, daily challenge, and accessibility controls */
.learning-hub{margin:26px 0;padding:22px}
.journey-summary{display:flex;gap:24px;flex-wrap:wrap;margin:10px 0}
.journey-summary div{display:flex;flex-direction:column;gap:2px}
.journey-summary strong{font:900 22px Nunito,sans-serif;color:var(--green)}
.journey-summary span,.achievement-heading span{font-size:13px;color:var(--muted)}
.journey-track{height:13px;border-radius:99px;background:#e7ece2;overflow:hidden}
.journey-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#80a86b,#c4d78b);transition:width .35s ease}
.journey-next{margin:10px 0 22px;color:var(--muted);font-size:14px}
.daily-challenge{background:#f5f7ed;border:1px solid #e1e8d7;border-radius:17px;padding:18px;margin-top:16px}
.daily-heading,.achievement-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.daily-heading h3,.achievement-heading h3{margin:5px 0 0;font:900 20px Nunito,sans-serif;color:var(--ink)}
.daily-reward{background:#fff;border:1px solid #eadba9;color:#765c20;border-radius:999px;padding:7px 11px;font-weight:800;font-size:13px}
.daily-prompt{font-size:16px;line-height:1.55;color:var(--ink);font-weight:700;margin:15px 0}
.daily-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.daily-option{min-height:68px;padding:12px;border:1px solid #d8e1d1;border-radius:12px;background:#fff;color:var(--ink);font:700 14px/1.4 'DM Sans',sans-serif;text-align:left;cursor:pointer}
.daily-option:hover:not(:disabled),.daily-option:focus-visible{border-color:var(--green);outline:3px solid #286b5322}
.daily-option:disabled{cursor:default;opacity:1}
.daily-option.is-correct{border-color:#75a85f;background:#e8f4e1}
.daily-option.is-wrong{border-color:#df9a73;background:#fff0e8}
.daily-feedback{margin:13px 0 0;color:#40584f;font-size:14px;line-height:1.55}
.daily-feedback.is-try-again{color:#754d29}
.daily-retry{margin-left:7px;min-height:36px;padding:6px 12px}
.daily-challenge.is-complete{border-color:#a8c99a}
.achievement-shelf{margin-top:22px}
.achievement-heading{margin-bottom:12px}
.achievement-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.achievement{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:12px 7px;border:1px solid var(--line);border-radius:13px;background:#fff;min-width:0}
.achievement>span{font-size:25px}
.achievement strong{font-size:12px;color:var(--ink)}
.achievement small{font-size:11px;line-height:1.35;color:var(--muted)}
.achievement.locked{filter:grayscale(.7);opacity:.7;background:#f6f6f2}
.achievement.earned{border-color:#c6d9b9;background:#f4f8ef}
.accessibility-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}
.accessibility-tools strong{font-size:13px;color:var(--muted);margin-right:auto}
.accessibility-tools button{min-height:40px}
.accessibility-tools button.is-selected{background:var(--green2);border-color:var(--green);color:var(--green)}
body.large-text{font-size:112%}
body.large-text p,body.large-text label,body.large-text button,body.large-text input,body.large-text select{font-size:1.08em}
body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
@media(max-width:760px){.daily-options{grid-template-columns:1fr}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-hub{padding:16px}.daily-option{min-height:54px}}
@media(prefers-reduced-motion:reduce){.journey-track span{transition:none}}
