/* Evidence-first editorial workspace. Shared palette, distinct hierarchy. */
.ability-overlay{padding:clamp(24px,4vw,56px);background:#f5f5ee!important;color:#263d32!important}
.ability-wrap{max-width:1240px;min-width:0}
.ability-wrap>.ability-head{align-items:flex-end;border-bottom:1px solid #bbc9b5;padding:0 0 28px;gap:24px}
.ability-wrap>.ability-head .eyebrow{font-size:14px;letter-spacing:.12em;color:#52684b;font-weight:650}
.ability-wrap>.ability-head h1{font-size:clamp(32px,4.2vw,56px);letter-spacing:-.055em;line-height:1.16;margin:14px 0 0;font-weight:800;color:#213c2d}
.ability-wrap>.ability-head button{background:transparent;border-color:#b6c3af;border-radius:99px;padding:12px 22px;white-space:nowrap}
.ability-wrap>nav{margin:26px 0 16px;gap:0;display:inline-flex;padding:5px;background:#e5eadf;border:1px solid #d3ddca;border-radius:99px}
.ability-wrap>nav button{border:0;background:transparent;border-radius:99px;min-width:132px;padding:11px 22px;color:#53674e}
.ability-wrap>nav button.active{background:#263f30!important;color:#fffdf5!important;box-shadow:0 2px 8px #263f3018}
.ability-wrap>p{max-width:760px;font-size:16px;line-height:1.8;margin:0 0 18px}
.ability-wrap>.ability-head+p{margin-top:24px}
.ability-wrap>.ability-actions{justify-content:space-between;align-items:center;padding-bottom:22px;margin:0;border-bottom:1px solid #d4ddcc}
.ability-wrap>.ability-actions button{padding:8px 14px;background:transparent;font-size:14px}
.ability-overlay button{box-shadow:none;font-size:14px;line-height:1.45;min-height:44px}
.ability-overlay button:disabled{opacity:.45;cursor:default}
.ability-overlay button:active:not(:disabled){transform:scale(.98)}
.ability-report-body{padding-top:28px;counter-reset:report-section}
#abilityReportBody>.ability-filters{justify-content:flex-end;gap:6px}
#abilityReportBody>.ability-filters button{border:0;background:transparent;border-radius:6px;color:#586d50}
#abilityReportBody>.ability-filters button.active{background:#dfe8d3!important;color:#314a2d!important}
.ability-stats{gap:0;background:#fffef8;border:1px solid #cfd8c7;border-radius:16px;overflow:hidden;margin:18px 0 24px}
.ability-stat{background:transparent!important;border:0;border-radius:0!important;box-shadow:none!important;padding:26px 22px;color:#60715a;font-size:14px;border-right:1px solid #dce3d5}
.ability-stat:last-child{border:0}
.ability-stat strong{font-size:clamp(30px,3.5vw,48px);line-height:1.2;font-weight:650;letter-spacing:-.05em;font-variant-numeric:tabular-nums;color:#263f30;margin-bottom:14px;overflow-wrap:anywhere}
.ability-stat:first-child{background:#eaf0df!important}
.ability-section{margin:28px 0;padding:26px;background:#fffef8;border:1px solid #d3ddca;border-radius:16px}
.ability-section>h2,.ability-section>.ability-head h2{font-size:23px;color:#263f30;letter-spacing:-.025em;margin:0 0 10px;display:flex;align-items:center;gap:12px}
.ability-section>h2:before{counter-increment:report-section;content:counter(report-section,decimal-leading-zero);font-size:14px;letter-spacing:.04em;font-weight:500;color:#7b8b70}
.ability-section>p.ability-muted{margin:0 0 22px;max-width:900px}
.ability-bars{gap:18px 32px;padding-top:10px}
.ability-bar{padding:12px 0;border-top:1px solid #e4e9df}
.ability-bar label{font-size:15px;color:#40523a}.ability-bar label span:last-child{font-variant-numeric:tabular-nums;color:#64765a}
.ability-bar-track{height:6px;background:#edf0e7;margin-top:12px;border-radius:99px}
.ability-bar-track i{background:#789850;border-radius:99px}
.ability-card{background:#f6f7ef!important;border:1px solid #dae2d1;border-radius:12px!important;box-shadow:none!important}
.ability-card p,.ability-card li{color:#4c6044;line-height:1.85;font-size:16px}
.ability-plans{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.ability-plans .ability-card{display:flex;flex-direction:column;padding:24px;background:#eef3e3!important;border-color:#ccdab8}
.ability-plans h3{color:#2f4a27;font-size:20px;line-height:1.5}
.ability-plans ol{padding-left:20px}.ability-plans li{margin:9px 0}
.ability-plans .ability-actions{margin-top:auto;padding-top:14px}.ability-plans button{width:100%;text-align:left;background:#fffef8;border-color:#ccd8bb}
.ability-section .ability-head{flex-wrap:wrap;align-items:center;border:0;padding:0 0 18px}
.ability-section .ability-head .ability-actions{margin:0}
.ability-record{padding:24px 0;grid-template-columns:minmax(0,1fr) auto;gap:24px;border-color:#dce3d5}
.ability-record strong{font-size:14px;letter-spacing:.015em;color:#5c7052;font-weight:600}
.ability-record p{font-size:18px;line-height:1.8;color:#283e2c;margin:12px 0}
.ability-record .ability-muted{font-size:14px;line-height:1.8;color:#6b7b62}
.ability-record .ability-actions{flex-direction:column;min-width:104px;gap:8px}
.ability-record .ability-actions button:first-child{background:#e5edda;border-color:#c9d8b8;color:#36532b}
.ability-record .ability-actions button:last-child{background:transparent;border-color:#cfd8c7}
.ability-record:last-child{border-bottom:0}
.ability-overlay[data-view=wrong] .ability-section{background:transparent;border:0;padding:0}
.ability-overlay[data-view=wrong] .ability-section>h2:before{display:none}
.ability-overlay[data-view=wrong] #abilityRecords>.ability-card{padding:22px 26px;background:#fffef8!important;border-color:#d3ddca;margin-bottom:16px!important}
.ability-overlay[data-view=wrong] #abilityRecords>.ability-card>.ability-muted{font-size:14px;color:#6b7b62}
.ability-overlay[data-view=wrong] #abilityRecords>.ability-card>p{display:inline-block;background:#f4e9dd;color:#785338;border-radius:6px;padding:9px 14px;font-size:14px;margin:14px 0 0}
.ability-overlay[data-view=wrong] .ability-record{padding-bottom:0}
.ability-overlay[data-view=wrong] .ability-section>.ability-actions{justify-content:center;padding-top:16px;align-items:center}
.ability-overlay :focus-visible{outline:3px solid #6d8b4f!important;outline-offset:3px}
@media(hover:hover) and (pointer:fine){.ability-overlay button:hover:not(:disabled){border-color:#8ea17b;filter:brightness(.97)}}
@media(max-width:1100px){.ability-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ability-stat:nth-child(2){border-right:0}.ability-stat:nth-child(-n+2){border-bottom:1px solid #dce3d5}}
@media(max-width:700px){
 .ability-overlay{padding:24px 16px 80px}.ability-wrap>.ability-head{align-items:flex-start;gap:14px;padding-bottom:22px}.ability-wrap>.ability-head button{padding:9px 13px;white-space:normal}
 .ability-wrap>nav{display:flex}.ability-wrap>nav button{min-width:0;flex:1;padding:10px 14px}.ability-section{padding:20px 16px;margin:22px 0}
 .ability-stat{padding:20px 16px}.ability-bars{grid-template-columns:1fr;gap:6px}.ability-record{grid-template-columns:1fr;gap:14px}.ability-record .ability-actions{flex-direction:row}.ability-record p{font-size:16px}
 .ability-overlay[data-view=wrong] #abilityRecords>.ability-card{padding:20px 16px}.ability-wrap>.ability-actions{align-items:flex-start;gap:12px}
}
.wrong-type-section{margin:24px 0 30px;padding:22px 0;border-bottom:1px solid #ccd7c1}.wrong-type-section h3{margin:0 0 8px;font-size:19px;color:#284a35}.wrong-type-filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.wrong-type-filters button{display:inline-flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #c6d4bb;border-radius:10px;background:#fffdf5;color:#405b40;font:inherit;font-size:14px;cursor:pointer}.wrong-type-filters button span{font-variant-numeric:tabular-nums;opacity:.75}.wrong-type-filters button.active{background:#294735;color:#fffdf5;border-color:#294735}.wrong-type-filters button:focus-visible{outline:2px solid #779a55;outline-offset:3px}@media(max-width:600px){.wrong-type-section{margin:18px 0;padding:16px 0}.wrong-type-filters{gap:6px}.wrong-type-filters button{padding:9px 11px}}
