/* ALFARI Theme 6.38.136 – Planfinder NEXT presentation only. Fully scoped. */
.alfari-pfnext-stage{padding:clamp(2rem,5vw,4.5rem) 0;background:#f5f7f8;color:#20252a}
.alfari-pfnext{box-sizing:border-box;max-width:860px;margin:0 auto}
.alfari-pfnext *{box-sizing:border-box}
.alfari-pfnext__boot,.alfari-pfnext__app,.alfari-pfnext__error,.alfari-pfnext-unavailable{padding:clamp(1rem,4vw,2rem);border:1px solid #dce2e5;border-radius:24px;background:#fff;box-shadow:0 14px 38px rgba(23,31,38,.08)}
.alfari-pfnext__eyebrow,.alfari-pfnext__progress{margin:0 0 .5rem;color:#587100;font-size:.82rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.alfari-pfnext h2{margin:.2rem 0 .7rem;color:#20252a;font-size:clamp(1.65rem,6vw,2.7rem);line-height:1.08;letter-spacing:-.025em}
.alfari-pfnext h3,.alfari-pfnext h4{color:#20252a}.alfari-pfnext p{line-height:1.6}
.alfari-pfnext__questions{display:grid;gap:1rem;margin-top:1.25rem}.alfari-pfnext__question{min-width:0;margin:0;padding:1rem;border:1px solid #dce2e5;border-radius:18px}.alfari-pfnext__question legend{padding:0 .25rem;font-size:1.06rem;font-weight:850}
.alfari-pfnext__choice{display:flex;min-height:52px;align-items:center;gap:.7rem;margin:.5rem 0;padding:.7rem .8rem;border:1px solid #ccd4d8;border-radius:14px;background:#fff;cursor:pointer}.alfari-pfnext__choice input{width:1.2rem;height:1.2rem;flex:0 0 auto}.alfari-pfnext__choice:has(input:checked){border-color:#6f8d00;background:#f4fad7}
.alfari-pfnext input[data-pfnext-input],.alfari-pfnext select[data-pfnext-input]{width:100%;min-height:52px;border:1px solid #87939a;border-radius:12px;background:#fff;color:#20252a;padding:.75rem .85rem;font:inherit}.alfari-pfnext input:focus-visible,.alfari-pfnext select:focus-visible,.alfari-pfnext button:focus-visible,.alfari-pfnext summary:focus-visible{outline:3px solid #20252a;outline-offset:3px}
.alfari-pfnext__help{margin:.55rem 0 0;color:#59646b;font-size:.92rem}.alfari-pfnext__preserved{padding:.75rem 1rem;border-radius:12px;background:#f1f6e6}
.alfari-pfnext__actions{position:sticky;bottom:0;display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.25rem;padding:.9rem 0 calc(.9rem + env(safe-area-inset-bottom));background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 24%)}
.alfari-pfnext__actions button,.alfari-pfnext__substitutes button{min-height:52px;border-radius:13px;padding:.72rem 1rem;font:inherit;font-weight:850;cursor:pointer}.alfari-pfnext__primary{border:1px solid #20252a;background:#20252a;color:#fff;flex:1 1 240px}.alfari-pfnext__secondary,.alfari-pfnext__substitutes button{border:1px solid #7a858c;background:#fff;color:#20252a}
.alfari-pfnext__summary{margin-top:1.2rem}.alfari-pfnext__summary dl{display:grid;gap:.55rem}.alfari-pfnext__summary dl div{display:grid;grid-template-columns:minmax(8rem,.7fr) 1fr;gap:.75rem;padding:.7rem 0;border-bottom:1px solid #e5e9eb}.alfari-pfnext__summary dt{font-weight:800;text-transform:capitalize}.alfari-pfnext__summary dd{margin:0}
.alfari-pfnext__plan{display:grid;gap:1.15rem}.alfari-pfnext__session{display:grid;gap:.9rem;padding:1rem;border:1px solid #cfd7db;border-radius:18px;background:#f8faf8}.alfari-pfnext__session>header h3{margin:0;color:#171b1f;font-size:clamp(1.2rem,4.7vw,1.55rem);line-height:1.15}.alfari-pfnext__session>header p{margin:.25rem 0 0;color:#39434a}.alfari-pfnext__exercise{padding:1rem;border:1px solid #e0e5e7;border-radius:15px;background:#fff;box-shadow:0 2px 8px rgba(20,30,24,.07)}.alfari-pfnext__exercise h4{margin:0 0 .75rem;color:#171b1f;font-size:clamp(1.12rem,4.6vw,1.4rem);line-height:1.18}.alfari-pfnext__prescription{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.6rem}.alfari-pfnext__prescription>div{display:grid;gap:.18rem;padding:.72rem;border:1px solid #dfe5e7;border-radius:11px;background:#f5f7f8;color:#1d2327}.alfari-pfnext__prescription strong{color:#171b1f;font-size:1rem;line-height:1.25}.alfari-pfnext__prescription small{color:#455159;font-weight:650}.alfari-pfnext__prescription .alfari-pfnext__target{background:#f2f8df;border-color:#bfd47a}.alfari-pfnext__prescription .alfari-pfnext__target strong{font-size:1.22rem}.alfari-pfnext__calibration{grid-column:1/-1}.alfari-pfnext__ramp{margin:0 0 .8rem;padding:.75rem;border-left:4px solid #86bd2b;background:#f6f9ed;border-radius:0 10px 10px 0}.alfari-pfnext__ramp h5{margin:0 0 .45rem;color:#20252a;font-size:.95rem}.alfari-pfnext__ramp>div{display:flex;justify-content:space-between;gap:.75rem;padding:.28rem 0;color:#2c353a}.alfari-pfnext__ramp span{color:#536067}.alfari-pfnext__substitutes{margin-top:.8rem}.alfari-pfnext__substitutes button{margin:.3rem .35rem .3rem 0;min-height:44px}
.alfari-pfnext__why,.alfari-pfnext__exercise details{margin-top:.8rem;border-top:1px solid #e0e5e7;padding-top:.7rem}.alfari-pfnext summary{cursor:pointer;font-weight:800}
.alfari-pfnext__processing{position:relative;overflow:hidden}.alfari-pfnext__processing:after{content:"";display:block;width:42%;height:4px;margin-top:1rem;border-radius:999px;background:#86bd2b;animation:alfari-pfnext-progress 1.1s ease-in-out infinite alternate}@keyframes alfari-pfnext-progress{to{transform:translateX(130%)}}
.alfari-pfnext__state--error,.alfari-pfnext__error{border-left:5px solid #b26a00}.alfari-pfnext__error-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;overflow-wrap:anywhere}
.alfari-pfnext-admin{margin-top:1rem;padding:.8rem;border:1px dashed #778087;border-radius:14px;background:#fafbfb}.alfari-pfnext-admin summary{cursor:pointer;font-weight:800}.alfari-pfnext-admin dl{display:grid;grid-template-columns:max-content 1fr;gap:.35rem .7rem;font-size:.85rem}.alfari-pfnext-admin dd{margin:0;overflow-wrap:anywhere}
@media(max-width:600px){.alfari-pfnext-stage{padding:1rem 0}.alfari-pfnext__boot,.alfari-pfnext__app,.alfari-pfnext__error{border-radius:18px}.alfari-pfnext__summary dl div{grid-template-columns:1fr;gap:.2rem}.alfari-pfnext__actions{display:grid;grid-template-columns:1fr}.alfari-pfnext__actions button{width:100%}.alfari-pfnext-admin dl{grid-template-columns:1fr}.alfari-pfnext__prescription{grid-template-columns:1fr 1fr}.alfari-pfnext__exercise{padding:.9rem}.alfari-pfnext__ramp>div{display:grid;gap:.1rem}}
@media(max-width:380px){.alfari-pfnext__prescription{grid-template-columns:1fr}}
@media(forced-colors:active){.alfari-pfnext__choice,.alfari-pfnext__question,.alfari-pfnext__app,.alfari-pfnext__boot{border:1px solid CanvasText}.alfari-pfnext__primary{forced-color-adjust:auto}}
