/* Diagnose-Trainer: Gestaltung im System der Seite. Logik und Markup unverändert übernommen. */
.diag-container{max-width:44rem;margin:0 auto}
.diag-disclaimer{background:var(--papier);border-left:3px solid var(--salbei);color:var(--grau);padding:14px 18px;font-size:.92rem;line-height:1.55;margin-bottom:40px}
.diag-tool-title{font-family:var(--serif);font-size:1.7rem;font-weight:420;color:var(--tinte);margin:0 0 6px}
.diag-tool-intro{font-size:1rem;color:var(--grau);margin:0 0 26px;line-height:1.5}
.diag-tool-divider{border:0;border-top:1px solid var(--stein);margin:56px 0 44px}
.diag-section{margin-bottom:30px}
.diag-section h4{font-family:var(--sans);font-size:1rem;font-weight:600;color:var(--tinte);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--stein)}
.diag-question{margin-bottom:20px}
.diag-question label{display:block;margin-bottom:8px;font-weight:600;font-size:1rem}
.diag-hint{display:block;font-weight:400;font-size:.9rem;color:var(--grau);margin-top:3px}
.diag-toggle-group{display:flex;gap:8px;flex-wrap:wrap}
.diag-toggle-group button{flex:1 1 0;min-width:110px;padding:10px 12px;border:1px solid var(--stein-tief);background:#fff;color:var(--tinte);border-radius:3px;font:inherit;font-size:.95rem;cursor:pointer;transition:background .12s,border-color .12s}
.diag-toggle-group button:hover{border-color:var(--tinte)}
.diag-toggle-group button.active{background:var(--salbei-hell);border-color:var(--petrol);color:var(--tinte)}
.diag-toggle-group.diag-missing button{border-color:#A4523F}
.diag-validation-msg{color:#8A3F2E;font-size:.92rem;margin:-6px 0 16px;display:none}
.diag-note{font-size:.92rem;color:var(--grau);margin:-8px 0 20px}
.diag-actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
.diag-btn,.diag-btn-reset{font:inherit;font-size:1rem;font-weight:500;padding:13px 20px;border-radius:3px;cursor:pointer}
.diag-btn{background:var(--petrol);color:var(--weiss);border:1px solid var(--petrol);flex:2}
.diag-btn:hover{background:var(--petrol-tief)}
.diag-btn-reset{background:transparent;color:var(--tinte);border:1px solid var(--stein-tief);flex:1}
.diag-btn-reset:hover{border-color:var(--tinte)}
.diag-results,.diag-tooth-result{margin-top:30px;padding:22px;background:var(--papier);border:1px solid var(--stein);border-radius:3px;display:none}
.diag-result-block{margin-bottom:22px}.diag-result-block:last-child{margin-bottom:0}
.diag-results h3{font-family:var(--sans);margin:0 0 4px;font-size:.92rem;font-weight:600;color:var(--grau)}
.diag-diagnosis-name{font-family:var(--serif);font-size:1.4rem;font-weight:450;margin:4px 0 6px}
.diag-rationale,.diag-no-match{font-size:.98rem;color:var(--grau);line-height:1.5;margin:0}
.diag-consistency-note,.diag-secondary-label,.diag-tooth-evidence{background:var(--salbei-hell);border-radius:3px;padding:10px 12px;font-size:.92rem;color:var(--tinte);line-height:1.5;margin:10px 0 0}
.diag-implausible-note{background:#F6ECE8;border:1px solid #DDBDB2;border-radius:3px;padding:12px 14px;font-size:.92rem;color:#6E3427;line-height:1.55;margin-top:20px}
.diag-implausible-headline{margin-bottom:12px}
.diag-resolve-list{display:flex;flex-direction:column;gap:12px}
.diag-resolve-item{background:#fff;border-radius:3px;padding:10px 12px}
.diag-resolve-top,.diag-ranking-top,.diag-ranking-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.diag-resolve-top{margin-bottom:5px}
.diag-resolve-label,.diag-ranking-top .diag-ranking-label{font-weight:600;font-size:.95rem;color:var(--tinte)}
.diag-resolve-pct{font-weight:600;font-size:.95rem;color:#6E3427;font-variant-numeric:tabular-nums}
.diag-resolve-bar{background:#EAD9D2;border-radius:2px;height:6px;overflow:hidden;margin-bottom:7px}
.diag-resolve-bar-fill{background:#A4523F;height:100%}
.diag-resolve-text{font-size:.92rem;color:var(--grau);line-height:1.5;margin:0}
.diag-resolve-note,.diag-ranking-note{font-size:.88rem;color:var(--grau);line-height:1.5;margin:12px 0 0}
.diag-ranking{margin-top:16px;padding-top:14px;border-top:1px solid var(--stein)}
.diag-ranking-top{margin-bottom:5px}
.diag-ranking-top .diag-ranking-pct{font-weight:600;color:var(--tinte);font-variant-numeric:tabular-nums}
.diag-ranking-bar{background:var(--stein);border-radius:2px;height:7px;overflow:hidden;margin-bottom:4px}
.diag-ranking-bar-sm{height:4px}
.diag-ranking-bar-fill{background:var(--petrol);height:100%}
.diag-ranking-details{margin-top:10px}
.diag-ranking-details summary{cursor:pointer;font-size:.92rem;color:var(--petrol);margin-bottom:8px}
.diag-ranking-row{margin-bottom:3px;font-size:.92rem;color:var(--grau)}
.diag-select{width:100%;padding:11px 12px;border:1px solid var(--stein-tief);border-radius:3px;font:inherit;font-size:1rem;background:#fff;color:var(--tinte)}
.diag-figure{margin:4px 0 28px}.diag-figure svg{width:100%;height:auto;display:block}
.diag-tooth-chart svg{width:100%;height:auto;display:block;max-width:560px;margin:0 auto}
.diag-chart-tooth{fill:#fff;stroke:var(--stein-tief);stroke-width:1.2;cursor:pointer;transition:fill .12s,stroke .12s}
.diag-chart-tooth:hover{stroke:var(--tinte)}
.diag-chart-tooth.active{fill:var(--petrol);stroke:var(--petrol)}
.diag-chart-label{font-size:10px;fill:var(--grau);font-family:var(--sans);pointer-events:none}
.diag-chart-tooth.active+.diag-chart-label{fill:#fff}
.diag-tooth-result-title{font-family:var(--serif);font-weight:450;margin:0 0 14px;font-size:1.3rem}
.diag-canal-row{background:#fff;border-radius:3px;padding:12px 14px;margin-bottom:10px}
.diag-canal-optional{border:1px dashed var(--stein-tief)}
.diag-canal-badge{display:inline-block;font-size:.8rem;font-weight:400;color:var(--grau);background:var(--papier);border:1px solid var(--stein);border-radius:3px;padding:1px 6px;margin-left:8px;vertical-align:middle}
.diag-canal-prevalence{font-size:.88rem;color:var(--grau);margin:0 0 8px}
.diag-canal-name{font-weight:600;font-size:.98rem;margin-bottom:8px}
.diag-canal-grid{display:flex;flex-wrap:wrap;gap:14px;font-size:.92rem;color:var(--tinte)}
.diag-canal-grid>div{flex:1 1 150px}
.diag-canal-label{display:block;font-size:.82rem;color:var(--grau);margin-bottom:2px}
.diag-tooth-note{font-size:.92rem;color:var(--grau);margin:14px 0 0;line-height:1.5}
.diag-methodnote{font-size:.9rem;color:var(--grau);line-height:1.6;margin-top:22px}
.diag-sources{font-size:.88rem;color:var(--grau);line-height:1.6;margin-top:14px}
.diag-sources summary{cursor:pointer;color:var(--petrol);font-size:.92rem}
