/* yfd-assessment.v1.css — shared styling for the data-driven assessment engine.
   Ported from kep001-ilp-sustainability.v2.css, generalized to .yfd-as-* and
   [data-as-*] selectors so one stylesheet serves every assessment. Includes the
   Next-right / Back-left anchor fix. */
.yfd-as-wrap{box-sizing:border-box;max-width:100%;margin:24px 0;padding:24px;border:1px solid #ddd5c8;border-radius:16px;background:#fafaf7;box-shadow:0 4px 12px rgba(0,0,0,.06)}
.yfd-as-wrap *{box-sizing:border-box}
.yfd-as-wrap [hidden]{display:none!important}
.yfd-as-wrap .yfd-as-title{margin:0 0 12px;font-size:1.25rem;line-height:1.4}
.yfd-as-wrap .yfd-as-fallback{padding:12px 0}
.yfd-as-wrap .yfd-as-fallback ol,.yfd-as-wrap .yfd-as-fallback ul{padding-left:1.4rem}
.yfd-as-wrap .yfd-as-fallback li{margin-bottom:10px}
.yfd-as-wrap .yfd-as-app{margin-top:8px}
.yfd-as-wrap .yfd-as-intro{text-align:left}
.yfd-as-wrap .yfd-as-intro .yfd-as-button{display:flex;margin:16px auto 0}
.yfd-as-wrap .yfd-as-intro p{margin:0 0 16px}
.yfd-as-wrap .yfd-as-progress{margin:0 0 12px;font-size:.9rem;font-weight:700;opacity:.85}
.yfd-as-wrap .yfd-as-question{min-width:0;margin:0 0 16px;padding:0;border:0}
.yfd-as-wrap .yfd-as-question legend{width:100%;margin:0 0 8px;padding:0}
.yfd-as-wrap .yfd-as-question-number{display:inline-block;margin-bottom:10px;padding:3px 10px;border-radius:999px;background:#1f463a;color:#fff;font-size:.75rem;font-weight:600}
.yfd-as-wrap .yfd-as-question-text{display:block;color:var(--red-ink,#a8322a);font-size:1.15rem;font-weight:700;line-height:1.4}
.yfd-as-wrap .yfd-as-help{font-size:.9rem;opacity:.8;margin:0 0 12px}
.yfd-as-wrap .yfd-as-options{display:flex;flex-direction:column;gap:12px}
.yfd-as-wrap .yfd-as-option{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--line,#ccc);border-radius:8px;cursor:pointer;line-height:1.45}
.yfd-as-wrap .yfd-as-option:hover{border-color:rgba(31,70,58,.4);background:rgba(31,70,58,.03)}
.yfd-as-wrap .yfd-as-option:has(input:checked){border:2px solid #1f463a;background:rgba(31,70,58,.09);box-shadow:0 2px 6px rgba(31,70,58,.14)}
.yfd-as-wrap .yfd-as-option:has(input:focus-visible){outline:3px solid #1f463a;outline-offset:2px}
.yfd-as-wrap .yfd-as-option input{flex:0 0 20px;width:20px;height:20px}
.yfd-as-wrap .yfd-as-feedback{margin:14px 0 0;padding:12px;border-left:4px solid #1f463a;background:#f1eee6}
.yfd-as-wrap .yfd-as-feedback-label{display:block;font-weight:700;margin-bottom:6px}
.yfd-as-wrap .yfd-as-feedback-label.is-correct{color:#1f7a3d}
.yfd-as-wrap .yfd-as-feedback-label.is-review{color:#b3261e}
.yfd-as-wrap .yfd-as-fb-line{display:block;margin:4px 0}
.yfd-as-wrap .yfd-as-error{margin:12px 0 0;color:#b3261e;font-weight:700}
.yfd-as-wrap .yfd-as-actions{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}
/* Keep the primary action (Next / Show result / Score / Restart) anchored to
   the right and the secondary (Back / Review / Edit) on the left, even when the
   Back button is hidden on question 1 — otherwise space-between drops the lone
   Next button to the left edge. */
.yfd-as-wrap .yfd-as-actions .yfd-as-button:not(.yfd-as-secondary){margin-left:auto}
.yfd-as-wrap .yfd-as-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px 20px;border:1px solid #1f463a;border-radius:8px;background:#1f463a;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.yfd-as-wrap .yfd-as-button:hover{background:#173628}
.yfd-as-wrap .yfd-as-button.yfd-as-secondary{background:transparent;color:#1f463a}
.yfd-as-wrap .yfd-as-button.yfd-as-secondary:hover{background:#f1eee6}
.yfd-as-wrap .yfd-as-button:focus-visible,.yfd-as-wrap input:focus-visible{outline:3px solid #a8692a;outline-offset:2px}
.yfd-as-wrap [data-as-next]{background:transparent;color:#1f463a}
.yfd-as-wrap [data-as-next]:hover{background:rgba(31,70,58,.06)}
.yfd-as-wrap .yfd-as-option input:focus-visible{outline:3px solid #1f463a;outline-offset:2px}
/* The theme's global `section{padding:clamp(64px,11vw,132px) 0}` rule (meant
   for full-width page sections) otherwise leaks into every bare <section>
   result/review panel, since nothing here previously reset padding on the
   panel itself (only on things inside it). Neutralize it explicitly. */
.yfd-as-wrap .yfd-as-result,.yfd-as-wrap .yfd-as-review,.yfd-as-wrap .yfd-as-result-card{padding:0}
.yfd-as-wrap .yfd-as-result h4,.yfd-as-wrap .yfd-as-review h4{margin:0 0 10px;outline:none}
.yfd-as-wrap .yfd-as-limitation{font-size:.875rem;opacity:.82}
.yfd-as-wrap .yfd-as-score{font-weight:700}
.yfd-as-wrap .yfd-as-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (forced-colors:active){
  .yfd-as-wrap .yfd-as-option:has(input:checked){outline:2px solid CanvasText}
}
/* --- Decision result-panel presentation (PRS-003 convergence slice 2) -------
   Additive: emitted only by decision profiles whose result panels carry a
   driver line, a follow-up link block, a "what's still missing" list, a small
   disclaimer and a closing disclosure (e.g. prs003-fee-checker). KEP-001
   panels use none of these classes, so nothing above changes. Ported from
   prs003-assessment.v1.css, re-scoped to the shared .yfd-as-* namespace. */
.yfd-as-wrap .yfd-as-driver{font-weight:700;margin:0 0 12px}
.yfd-as-wrap .yfd-as-driver-lead{color:var(--red-ink,#a8322a)}
.yfd-as-wrap .yfd-as-result ol,.yfd-as-wrap .yfd-as-result ul{margin:0 0 16px;padding-left:20px}
.yfd-as-wrap .yfd-as-result-links{display:flex;flex-direction:column;gap:10px;margin-top:32px;margin-bottom:16px;padding-top:24px;border-top:1px solid #ddd5c8}
.yfd-as-wrap .yfd-as-result-links a.yfd-as-button{color:#fff;text-decoration:none}
.yfd-as-wrap .yfd-as-result-links a.yfd-as-button:visited{color:#fff}
.yfd-as-wrap .yfd-as-result-links a.yfd-as-button:hover{background:#173628;border-color:#173628}
.yfd-as-wrap .yfd-as-result-links a.yfd-as-button:active{background:#122a20;border-color:#122a20}
/* Secondary (non-.yfd-as-button) result-link anchor -- additive, ported from
   en-002-assessment.v9.css. Only EN-002's r1/r3/r4/r5 panels use a plain link
   alongside the primary button; PRS-003 panels use only .yfd-as-button links,
   so nothing above changes. */
.yfd-as-wrap .yfd-as-result-links a:not(.yfd-as-button){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:8px;border:1px solid #1f463a;background:#fff;color:#1f463a;font-weight:700;text-decoration:none}
.yfd-as-wrap .yfd-as-result-links a:not(.yfd-as-button):visited{color:#1f463a}
.yfd-as-wrap .yfd-as-result-links a:not(.yfd-as-button):hover{background:#f4efe3}
.yfd-as-wrap .yfd-as-result-links a:not(.yfd-as-button):active{background:#e9e2d3}
.yfd-as-wrap .yfd-as-result-links a:not(.yfd-as-button):focus-visible{outline:3px solid #a8692a;outline-offset:2px}
.yfd-as-wrap .yfd-as-disclaimer-small{font-size:.85rem;opacity:.75;margin:16px 0}
.yfd-as-wrap .yfd-as-disclosure{font-size:.85rem;opacity:.8;margin-top:16px}
/* --- Asset 001 r2/r3/r5/r6 supplementary result-panel elements (convergence
   slice 5): a warning callout (r3/r6), a conditional extra note (r5, toggled
   by the engine's generic data-as-extra-note/data-as-extra-if mechanism) and
   a consultation CTA block (r2). Ported verbatim from
   asset001-assessment.v1.css's .asset001-warning/-extra/-cta rules -- no
   other decision profile needs them yet, so this is additive only. */
.yfd-as-wrap .yfd-as-warning{margin:12px 0 0;padding:8px 12px;border-left:3px solid #8a531e;color:#6a604d;font-size:.9rem}
.yfd-as-wrap .yfd-as-extra{margin:12px 0 0;color:#6a604d;font-size:.92rem}
.yfd-as-wrap .yfd-as-cta{margin-top:16px;padding-top:14px;border-top:1px dashed #ddd5c8}
.yfd-as-wrap .yfd-as-cta-label{margin:0 0 6px;color:#6a604d;font-size:.9rem;font-weight:600}
.yfd-as-wrap .yfd-as-cta p{margin:0 0 8px;color:#6a604d;font-size:.88rem}
.yfd-as-wrap .yfd-as-cta-link{color:#1f463a;font-size:.88rem;text-decoration:underline}
