.fapet-survey-shell{--fs-border:#e4e8ec;--fs-text:#18212b;--fs-muted:#66717d;--fs-bg:#f7f9fb;--fs-card:#fff;max-width:1120px;margin:32px auto;font-family:inherit;color:var(--fs-text)}
.fapet-survey-hero{padding:34px;border:1px solid var(--fs-border);border-radius:18px;background:var(--fs-card);margin-bottom:24px}.fapet-survey-hero.compact{padding:26px}.fapet-survey-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;color:var(--fs-muted);margin-bottom:8px}.fapet-survey-hero h2{margin:0 0 8px;font-size:clamp(28px,4vw,42px)}.fapet-survey-hero p{margin:6px 0;color:var(--fs-muted);max-width:780px}.fapet-survey-privacy-note{font-size:13px}
.fapet-survey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fapet-survey-card{border:1px solid var(--fs-border);background:var(--fs-card);border-radius:16px;padding:22px;box-shadow:0 8px 28px rgba(20,32,44,.05)}.fapet-survey-card h3{margin:5px 0 9px;font-size:21px}.fapet-survey-card p{color:var(--fs-muted);min-height:48px}.fapet-survey-card-code{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--fs-muted)}.fapet-survey-period{font-size:13px;font-weight:700;margin:14px 0}.fapet-survey-closed{padding:10px 12px;border-radius:10px;background:var(--fs-bg);color:var(--fs-muted);font-size:13px;margin-top:14px}.fapet-survey-button,.fapet-survey-secondary{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:11px 18px;font-weight:700;text-decoration:none;cursor:pointer}.fapet-survey-button{background:#1f4b3f;color:#fff!important}.fapet-survey-secondary{background:#eef2f4;color:var(--fs-text)}
.fapet-survey-progress-wrap{margin:0 0 18px}.fapet-survey-progress-meta{display:flex;justify-content:space-between;color:var(--fs-muted);font-size:13px;margin-bottom:6px}.fapet-survey-progress{height:8px;background:#e9edf0;border-radius:99px;overflow:hidden}.fapet-survey-progress span{display:block;height:100%;background:#1f4b3f;width:0;transition:width .25s ease}
.fapet-survey-step{background:var(--fs-card);border:1px solid var(--fs-border);border-radius:16px;padding:24px}.fapet-survey-step[hidden]{display:none!important}.fapet-survey-section-head{border-bottom:1px solid var(--fs-border);padding-bottom:16px;margin-bottom:12px}.fapet-survey-section-no{font-size:12px;font-weight:800;color:var(--fs-muted);text-transform:uppercase;letter-spacing:.08em}.fapet-survey-section-head h3{margin:4px 0 0;font-size:24px}.fapet-survey-question{padding:20px 0;border-bottom:1px solid var(--fs-border)}.fapet-survey-question:last-of-type{border-bottom:0}.fapet-survey-question-label label{display:block;font-weight:700;line-height:1.45}.fapet-survey-question-label small{display:block;color:var(--fs-muted);margin-top:6px}.fapet-survey-question-code{display:block;color:var(--fs-muted);font-size:11px;font-weight:800;letter-spacing:.05em;margin-bottom:5px}.required{color:#a32626}.fapet-survey-control{margin-top:13px}.fapet-survey-control select,.fapet-survey-control textarea{width:100%;max-width:760px;border:1px solid #cfd6dc;border-radius:10px;padding:11px 12px;background:#fff;font:inherit}
.fapet-rating-grid{display:grid;grid-template-columns:repeat(5,minmax(105px,1fr));gap:8px}.fapet-rating-grid label,.fapet-radio-list label,.fapet-check-grid label{cursor:pointer}.fapet-rating-grid input,.fapet-radio-list input,.fapet-check-grid input{position:absolute;opacity:0;pointer-events:none}.fapet-rating-grid span,.fapet-radio-list span,.fapet-check-grid span{display:block;border:1px solid #d6dde2;border-radius:10px;padding:10px 12px;background:#fff;transition:.15s ease}.fapet-rating-grid span{text-align:center;font-size:12px;min-height:62px}.fapet-rating-grid strong{display:block;font-size:18px}.fapet-rating-grid input:checked+span,.fapet-radio-list input:checked+span,.fapet-check-grid input:checked+span{border-color:#1f4b3f;box-shadow:0 0 0 2px rgba(31,75,63,.12);background:#f2f8f5}.fapet-radio-list,.fapet-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fapet-survey-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:22px}.fapet-survey-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fapet-survey-success,.fapet-result-panel{background:#fff;border:1px solid var(--fs-border);border-radius:16px;padding:28px}.fapet-survey-success h2{margin-top:0}.fapet-survey-ref{color:var(--fs-muted)}.fapet-back-link{display:inline-block;margin-bottom:18px}.fapet-result-count{font-weight:800;font-size:22px;margin-bottom:14px}.fapet-result-header{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:start;border-bottom:1px solid var(--fs-border);padding-bottom:22px;margin-bottom:22px}.fapet-result-header h3{margin:0;font-size:26px}.fapet-result-header p{color:var(--fs-muted);margin:5px 0}.fapet-result-big{min-width:130px;background:var(--fs-bg);border-radius:12px;padding:14px}.fapet-result-big strong{display:block;font-size:28px}.fapet-result-big span{font-size:12px;color:var(--fs-muted)}.fapet-dimension-row{padding:12px 0}.fapet-dimension-title{display:flex;justify-content:space-between;gap:16px;margin-bottom:7px}.fapet-dimension-bar{height:10px;background:#e9edf0;border-radius:99px;overflow:hidden}.fapet-dimension-bar span{display:block;height:100%;background:#1f4b3f}.fapet-result-note{font-size:12px;color:var(--fs-muted);margin-top:22px}
@media(max-width:760px){.fapet-survey-grid{grid-template-columns:1fr}.fapet-rating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fapet-radio-list,.fapet-check-grid{grid-template-columns:1fr}.fapet-result-header{grid-template-columns:1fr}.fapet-survey-shell{margin:18px 10px}.fapet-survey-hero,.fapet-survey-step{padding:18px}.fapet-survey-card p{min-height:0}}

/* Results dashboard v0.1.3 */
.fapet-results-hero{background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%)}
.fapet-result-card{display:flex;flex-direction:column}.fapet-result-card .fapet-survey-button{align-self:flex-start}.fapet-result-dashboard{padding:30px}.fapet-result-title-row{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding-bottom:22px;border-bottom:1px solid var(--fs-border)}.fapet-result-title-row h3{font-size:clamp(26px,4vw,38px);margin:3px 0 6px}.fapet-result-title-row p{margin:0;color:var(--fs-muted)}.fapet-public-period-form{display:flex;flex-direction:column;gap:6px;min-width:240px}.fapet-public-period-form label{font-size:12px;font-weight:800;color:var(--fs-muted);text-transform:uppercase;letter-spacing:.05em}.fapet-public-period-form select{border:1px solid #cfd6dc;border-radius:10px;padding:10px 34px 10px 11px;background:#fff;font:inherit}
.fapet-result-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.fapet-result-summary-card{border:1px solid var(--fs-border);border-radius:14px;padding:17px;background:#fff}.fapet-result-summary-card span{display:block;color:var(--fs-muted);font-size:12px;font-weight:700;margin-bottom:6px}.fapet-result-summary-card strong{display:block;font-size:28px;line-height:1.1}.fapet-result-summary-card small{display:block;color:var(--fs-muted);margin-top:7px;font-size:11px}.fapet-result-status{font-size:22px!important}
.fapet-result-section{border-top:1px solid var(--fs-border);padding:28px 0 4px}.fapet-result-section-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-end;margin-bottom:16px}.fapet-result-section-head>div>span{display:block;color:var(--fs-muted);font-size:11px;font-weight:800;letter-spacing:.1em}.fapet-result-section-head h4{font-size:22px;margin:3px 0 0}.fapet-result-section-head p{margin:0;color:var(--fs-muted);font-size:12px;max-width:420px;text-align:right}.fapet-dimension-list-large .fapet-dimension-row{padding:14px 0}.fapet-dimension-meta{font-size:11px;color:var(--fs-muted);margin-top:6px}
.fapet-distribution-bar{height:18px;display:flex;border-radius:999px;overflow:hidden;background:#eef2f4;margin:8px 0 18px}.fapet-distribution-bar span{height:100%;min-width:0}.fapet-distribution-bar .score-1,.fapet-distribution-legend i.score-1{background:#d9e0e4}.fapet-distribution-bar .score-2,.fapet-distribution-legend i.score-2{background:#adc2ba}.fapet-distribution-bar .score-3,.fapet-distribution-legend i.score-3{background:#648f80}.fapet-distribution-bar .score-4,.fapet-distribution-legend i.score-4{background:#1f4b3f}.fapet-distribution-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fapet-distribution-legend>div{display:grid;grid-template-columns:10px 1fr auto;gap:7px 8px;align-items:center;border:1px solid var(--fs-border);border-radius:12px;padding:12px}.fapet-distribution-legend i{width:9px;height:9px;border-radius:50%}.fapet-distribution-legend span{font-size:12px}.fapet-distribution-legend strong{font-size:15px}.fapet-distribution-legend small{grid-column:2 / 4;color:var(--fs-muted);font-size:11px}
.fapet-priority-list{display:grid;gap:10px}.fapet-priority-row{display:grid;grid-template-columns:34px minmax(0,1fr) 68px;gap:12px;align-items:center}.fapet-priority-rank{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f1f4f3;font-weight:800}.fapet-priority-main>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.fapet-priority-main span{font-weight:700}.fapet-priority-main strong{font-size:12px;color:var(--fs-muted);white-space:nowrap}.fapet-priority-bar{height:8px;background:#edf1f0;border-radius:99px;overflow:hidden;margin-top:7px}.fapet-priority-bar span{display:block;height:100%;background:#1f4b3f}.fapet-priority-pct{text-align:right;font-weight:800;font-size:13px}
.fapet-result-accordions{display:grid;gap:9px}.fapet-result-accordions details{border:1px solid var(--fs-border);border-radius:12px;background:#fff;overflow:hidden}.fapet-result-accordions summary{cursor:pointer;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;font-weight:800;list-style:none}.fapet-result-accordions summary::-webkit-details-marker{display:none}.fapet-result-accordions summary span{font-size:11px;color:var(--fs-muted);font-weight:600}.fapet-result-accordions details[open] summary{border-bottom:1px solid var(--fs-border);background:#fbfcfc}.fapet-indicator-table-wrap{overflow-x:auto}.fapet-indicator-table{width:100%;border-collapse:collapse;font-size:12px;min-width:840px}.fapet-indicator-table th,.fapet-indicator-table td{padding:10px 11px;border-bottom:1px solid #edf0f2;text-align:center;vertical-align:top}.fapet-indicator-table th:first-child,.fapet-indicator-table td:first-child{text-align:left;min-width:320px}.fapet-indicator-table td small{display:block;color:var(--fs-muted);font-size:10px;font-weight:800;margin-bottom:4px}.fapet-indicator-table tbody tr:last-child td{border-bottom:0}
.fapet-period-comparison{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fapet-period-comparison a{display:block;border:1px solid var(--fs-border);border-radius:12px;padding:13px;text-decoration:none;color:var(--fs-text)!important;background:#fff}.fapet-period-comparison a.is-current{border-color:#1f4b3f;box-shadow:0 0 0 2px rgba(31,75,63,.10)}.fapet-period-comparison span,.fapet-period-comparison small{display:block}.fapet-period-comparison span{font-size:12px;color:var(--fs-muted)}.fapet-period-comparison strong{display:block;font-size:20px;margin:5px 0}.fapet-period-comparison small{font-size:11px;color:var(--fs-muted)}.fapet-result-method-note{padding-top:18px;border-top:1px solid var(--fs-border)}
@media(max-width:900px){.fapet-result-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fapet-period-comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.fapet-distribution-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.fapet-result-dashboard{padding:18px}.fapet-result-title-row,.fapet-result-section-head{align-items:stretch;flex-direction:column}.fapet-public-period-form{min-width:0;width:100%}.fapet-result-summary-grid,.fapet-period-comparison,.fapet-distribution-legend{grid-template-columns:1fr}.fapet-result-section-head p{text-align:left}.fapet-priority-row{grid-template-columns:30px minmax(0,1fr)}.fapet-priority-pct{grid-column:2;text-align:left}.fapet-priority-main>div:first-child{align-items:flex-start;flex-direction:column;gap:3px}}
