.sfg-guide{--sfg-primary:#173d5c;--sfg-accent:#e8ef68;--sfg-soft:#eef5f8;--sfg-text:#24333f;--sfg-border:#d6e0e6;color:var(--sfg-text);font:inherit;line-height:1.6;margin:2rem auto;max-width:980px}
.sfg-guide *{box-sizing:border-box}.sfg-shell{background:#fff;border:1px solid var(--sfg-border);border-radius:18px;box-shadow:0 8px 30px rgba(20,50,70,.08);overflow:hidden}.sfg-header,.sfg-result-head{padding:clamp(26px,5vw,54px);background:linear-gradient(135deg,var(--sfg-soft),#fff)}
.sfg-guide h2,.sfg-guide h3,.sfg-guide h4{color:var(--sfg-primary);line-height:1.2}.sfg-guide h2{font-size:clamp(1.8rem,4vw,2.8rem);margin:.15em 0 .4em}.sfg-header>p{font-size:1.08rem;max-width:760px}.sfg-header>.sfg-privacy-note{font-size:.9rem;margin-top:14px;color:#52616b}.sfg-disclaimer{margin-top:20px;padding:13px 15px;border-left:4px solid var(--sfg-primary);background:#fff;border-radius:8px;font-size:.92rem}
.sfg-progress-wrap{padding:15px clamp(24px,5vw,52px) 0;background:#fff}.sfg-progress-text{font-size:.86rem;font-weight:800;color:#5c6a73;margin-bottom:8px;letter-spacing:.01em}.sfg-progress{height:7px;background:#e6ecef;border-radius:999px;overflow:hidden}.sfg-progress span{display:block;height:100%;background:var(--sfg-accent);width:8.333%;transition:width .25s ease}
.sfg-form{padding:clamp(34px,6vw,66px) clamp(24px,5vw,52px) clamp(28px,5vw,48px)}.sfg-step{display:none;min-height:330px}.sfg-step.is-active{display:block}.sfg-step h3{font-size:clamp(1.55rem,3vw,2rem);margin:0 0 12px;max-width:780px}.sfg-help{color:#5c6a73;margin:0 0 24px;max-width:760px}.sfg-help-quiet{font-size:.9rem;margin-top:18px}.sfg-options{display:grid;gap:13px;margin:28px 0}.sfg-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sfg-choice{display:block;cursor:pointer}.sfg-choice input{position:absolute;opacity:0;pointer-events:none}.sfg-choice span{display:flex;align-items:center;min-height:56px;padding:15px 17px;border:1px solid var(--sfg-border);border-radius:13px;background:#fff;transition:border-color .15s,box-shadow .15s,background .15s,transform .15s;font-weight:650}.sfg-choice:hover span{border-color:#9fb1bc;transform:translateY(-1px)}.sfg-choice input:checked+span{border-color:var(--sfg-primary);box-shadow:inset 0 0 0 2px var(--sfg-primary);background:var(--sfg-soft)}.sfg-choice input:focus-visible+span{outline:3px solid rgba(23,61,92,.25);outline-offset:3px}.sfg-choice input:disabled+span{opacity:.45;cursor:not-allowed;transform:none}.sfg-small-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.sfg-field{display:block;font-weight:700;margin:28px 0}.sfg-field small{font-weight:400}.sfg-field select,.sfg-field input{display:block;width:100%;margin-top:9px;padding:14px 14px;border:1px solid #bac8d0;border-radius:10px;background:#fff;color:inherit;font:inherit;min-height:50px}.sfg-field input:focus,.sfg-field select:focus{outline:3px solid rgba(23,61,92,.18);border-color:var(--sfg-primary)}.sfg-field-title{font-weight:700;margin:24px 0 6px}.sfg-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:720px}
.sfg-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;padding-top:26px;border-top:1px solid var(--sfg-border)}.sfg-btn{appearance:none;border:0;border-radius:999px;padding:13px 23px;min-height:48px;font:inherit;font-weight:800;cursor:pointer;background:var(--sfg-primary);color:#fff;transition:transform .15s,box-shadow .15s,opacity .15s}.sfg-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,50,70,.14)}.sfg-btn:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none}.sfg-back{background:transparent;color:var(--sfg-primary);border:1px solid #c9d4da}.sfg-next,.sfg-submit{margin-left:auto}.sfg-next::after{content:' →'}.sfg-form-error{color:#9c2f2f;font-weight:700;margin-top:16px}.sfg-loading{text-align:center;padding:78px 24px}.sfg-loading h3{font-size:1.55rem;margin:16px 0 8px}.sfg-loading p{color:#5c6a73}.sfg-spinner{display:inline-block;width:38px;height:38px;border:4px solid #d9e0e5;border-top-color:var(--sfg-primary);border-radius:50%;animation:sfgspin .8s linear infinite}@keyframes sfgspin{to{transform:rotate(360deg)}}
.sfg-results{padding-bottom:42px}.sfg-results>section,.sfg-sources,.sfg-specialist,.sfg-footer-note{margin:36px clamp(20px,5vw,52px)}.sfg-profile-note{padding:13px 15px;background:#fff;border-radius:9px;border:1px solid var(--sfg-border)}.sfg-section-title{font-size:1.45rem}.sfg-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sfg-card{border:1px solid var(--sfg-border);border-top:5px solid var(--sfg-primary);border-radius:12px;padding:18px;background:#fff}.sfg-card h4{margin-top:0;font-size:1.05rem}.sfg-card p{font-size:.95rem}.sfg-card details{margin-top:12px}.sfg-card summary{cursor:pointer;font-weight:800;color:var(--sfg-primary)}.sfg-helps{border-top-color:#4d8a5b}.sfg-less{border-top-color:#c59a31}.sfg-care{border-top-color:#b25a4b;background:#fffaf5}.sfg-source{display:block;margin-top:10px;font-size:.82rem;overflow-wrap:anywhere}.sfg-activity{background:var(--sfg-soft);padding:24px!important;border-radius:14px}.sfg-start{background:#fff;border-left:5px solid var(--sfg-accent);padding:13px 15px;border-radius:8px;margin:14px 0}.sfg-actions{border:2px solid var(--sfg-primary);border-radius:14px;padding:24px!important}.sfg-actions ol{padding-left:1.4rem}.sfg-actions li{padding:7px 0}.sfg-recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sfg-recipe{display:block;text-decoration:none!important;border:1px solid var(--sfg-border);border-radius:12px;padding:18px;color:inherit!important;background:#fff}.sfg-recipe:hover{box-shadow:0 5px 18px rgba(20,50,70,.12);transform:translateY(-1px)}.sfg-recipe h4{margin:0 0 8px}.sfg-recipe span{display:inline-block;background:var(--sfg-soft);border-radius:999px;padding:4px 8px;font-size:.75rem;margin:3px 3px 0 0}.sfg-specialist{padding:20px;border-radius:12px;background:#fff8e8;border-left:5px solid #d7a83e}.sfg-footer-note{background:#f5f7f8;border-radius:10px;padding:16px;font-size:.9rem}.sfg-restart{display:block;margin:34px auto}.sfg-sources .sfg-source{margin:8px 0}
.sfg-download-box{background:linear-gradient(135deg,var(--sfg-soft),#fff);border:1px solid var(--sfg-border);border-radius:14px;padding:24px!important}.sfg-download-box h3{margin-top:0}.sfg-download-box p{max-width:760px}.sfg-download-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.sfg-download-actions .sfg-print{background:#fff;color:var(--sfg-primary);border:1px solid var(--sfg-primary)}.sfg-download-note{font-size:.86rem;color:#5c6a73;margin-bottom:0}
@media(max-width:760px){.sfg-options-grid,.sfg-card-grid,.sfg-recipe-grid,.sfg-small-options{grid-template-columns:1fr}.sfg-two-col{grid-template-columns:1fr}.sfg-shell{border-radius:10px}.sfg-guide{margin:1rem auto}.sfg-step{min-height:0}.sfg-form{padding-top:36px}.sfg-choice span{min-height:58px}.sfg-nav{position:sticky;bottom:0;background:#fff;padding-bottom:8px;z-index:2}.sfg-btn{min-height:50px}.sfg-download-actions{display:grid}.sfg-download-actions .sfg-btn{width:100%}}

/* v0.1.6: questionnaire must never contain navigable auto-links. */
.sfg-form a,.sfg-form a:visited,.sfg-form a:hover{pointer-events:none!important;text-decoration:none!important;color:inherit!important;border:0!important;background:transparent!important}
.sfg-unlinked-text{color:inherit!important;text-decoration:none!important}
.sfg-result-intro{margin:30px clamp(20px,5vw,52px) 8px;padding:20px 22px;background:var(--sfg-soft);border-radius:14px}
.sfg-result-intro>p:first-child{margin-top:0}.sfg-result-intro>p:last-child{margin-bottom:0}
