.diag{padding:clamp(2rem,5vw,5rem) 0;color:var(--ink,#263329)}
.diag h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.08;max-width:20ch;margin:1rem 0 1.5rem}
.diag h2{font-size:clamp(1.4rem,3vw,2rem);margin-bottom:1rem;line-height:1.2}
.diag h3{font-size:1.2rem;margin:1.5rem 0 .75rem}
.diag p{line-height:1.65;margin:.8rem 0;max-width:75ch}
.diag section{margin:2.5rem 0}
.diag label{display:block;font-weight:700;margin:1rem 0 .4rem}
.diag input,.diag select{width:100%;min-width:0;padding:.8rem;border:1px solid #809180;border-radius:3px;background:#fffefa;color:#263329;font:inherit}
.diag input:focus,.diag select:focus,.diag button:focus-visible,.diag a:focus-visible{outline:3px solid #bd7434;outline-offset:3px}
.diag button{font:inherit;cursor:pointer;white-space:normal;min-height:44px;padding:.75rem 1.1rem;border:1px solid #375f42;background:#375f42;color:#fffefa;border-radius:3px;font-weight:700}
.diag button:disabled{opacity:.6;cursor:wait}
.diag .diag-search-row{display:flex;gap:.7rem;align-items:end}
.diag .diag-search-row>div{flex:1;min-width:0}
.diag .diag-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}
.diag .diag-description{padding:1.5rem;background:#f1f3ec;border:1px solid #d1d8cc}
.diag .diag-status{border-bottom:1px solid #b3c1ab;padding:1rem 0;min-height:3rem}
.diag #diag-suggestions{padding:0;list-style:none;display:grid;gap:.5rem;margin-top:1rem}
.diag #diag-suggestions button,.diag #diag-buildings button{width:100%;text-align:left;background:#fffefa;color:#263329;border-color:#809180;overflow-wrap:anywhere}
.diag #diag-buildings{display:grid;gap:.5rem}
.diag dl{display:grid;grid-template-columns: minmax(10rem,1fr) 2fr;gap:.6rem 1.5rem;border-top:1px solid #d1d8cc;padding-top:1rem}
.diag dt{font-weight:700}.diag dd{margin:0;overflow-wrap:anywhere}
.diag .diag-table{max-width:100%;overflow-x:auto;border:1px solid #d1d8cc}
.diag table{width:100%;border-collapse:collapse;min-width:580px;line-height:1.5}
.diag th,.diag td{padding:.8rem;text-align:left;border-bottom:1px solid #d1d8cc;vertical-align:top}
.diag th{background:#f1f3ec}.diag caption{text-align:left;padding:.8rem;font-weight:700}
.diag #diag-advice{padding-left:1.25rem}.diag #diag-advice li{padding:.8rem 0;border-bottom:1px solid #d1d8cc}
.diag #diag-advice strong{font-size:1.1rem}.diag .diag-sources{font-size:.9rem;border-top:1px solid #d1d8cc;padding-top:1rem;overflow-wrap:anywhere}
.diag [hidden]{display:none!important}.diag .diag-actions{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin:1.5rem 0}
@media(max-width:600px){.diag .diag-grid{grid-template-columns:1fr}.diag .diag-search-row{display:block}.diag .diag-search-row button{margin-top:.8rem;width:100%}.diag dl{grid-template-columns:1fr;gap:.3rem}.diag dd{margin-bottom:.8rem}.diag .diag-description{padding:1rem}.diag .pb-wrap-mid{padding-inline:20px}}
