.bp-structure-resolver{margin-top:10px;border:1px solid var(--bp-line-strong);border-radius:14px;background:color-mix(in srgb,var(--bp-surface) 94%,var(--bp-accent) 6%);overflow:hidden}
.bp-structure-resolver>summary{cursor:pointer;padding:12px 14px;font-size:.68rem;font-weight:900;color:var(--bp-text)}
.bp-structure-resolver-body{padding:0 12px 12px}
.bp-structure-resolver-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:9px}
.bp-structure-resolver .bp-field label{font-size:.58rem}
.bp-structure-resolver .bp-field input{padding:9px 10px}
.bp-structure-results{display:grid;gap:9px;margin-top:10px}
.bp-structure-candidate{border:1px solid var(--bp-line-strong);border-radius:13px;background:var(--bp-surface);padding:12px}
.bp-structure-candidate.is-recommended{border-color:var(--bp-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--bp-accent) 12%,transparent)}
.bp-structure-candidate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.bp-structure-candidate-head h4{margin:6px 0 3px;font-size:.74rem}
.bp-structure-candidate-head>strong{color:var(--bp-accent);font-size:1rem}
.bp-structure-candidate p,.bp-structure-candidate li,.bp-structure-candidate small{font-size:.58rem;color:var(--bp-muted);line-height:1.45}
.bp-structure-candidate ul{margin:7px 0 3px;padding-left:18px}
.bp-structure-candidate li.bp-structure-blocker{color:var(--bp-danger,#b42318);font-weight:700}
.bp-structure-badges{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0}
.bp-structure-badges span{border:1px solid var(--bp-line);border-radius:999px;padding:3px 7px;font-size:.52rem;font-weight:800;color:var(--bp-muted)}
.bp-target-passport{margin:12px 0 2px;border:1px solid var(--bp-line-strong);border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--bp-surface) 96%,var(--bp-accent) 4%),var(--bp-surface));padding:14px;box-shadow:0 10px 30px color-mix(in srgb,var(--bp-text) 5%,transparent)}
.bp-target-passport.good{border-color:color-mix(in srgb,#16835b 52%,var(--bp-line-strong))}
.bp-target-passport.warn{border-color:color-mix(in srgb,#b7791f 55%,var(--bp-line-strong))}
.bp-target-passport.bad{border-color:color-mix(in srgb,#b42318 55%,var(--bp-line-strong))}
.bp-passport-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--bp-line)}
.bp-passport-head h4{margin:7px 0 4px;font-size:.88rem;color:var(--bp-text)}
.bp-passport-head p{margin:0;max-width:680px;font-size:.59rem;line-height:1.5;color:var(--bp-muted)}
.bp-passport-head .bp-status{flex:0 0 auto;max-width:220px;text-align:center}
.bp-passport-checks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:10px 0}
.bp-passport-check{display:grid;gap:2px;border:1px solid var(--bp-line);border-radius:10px;padding:7px 8px;background:var(--bp-surface)}
.bp-passport-check b{font-size:.54rem;color:var(--bp-text)}
.bp-passport-check small{font-size:.49rem;color:var(--bp-muted)}
.bp-passport-check.good{border-color:color-mix(in srgb,#16835b 45%,var(--bp-line));background:color-mix(in srgb,var(--bp-surface) 95%,#16835b 5%)}
.bp-passport-check.warn{border-color:color-mix(in srgb,#b7791f 45%,var(--bp-line));background:color-mix(in srgb,var(--bp-surface) 95%,#b7791f 5%)}
.bp-passport-check.bad{border-color:color-mix(in srgb,#b42318 45%,var(--bp-line));background:color-mix(in srgb,var(--bp-surface) 95%,#b42318 5%)}
.bp-passport-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.bp-passport-grid>div{display:grid;gap:3px;min-width:0;border:1px solid var(--bp-line);border-radius:11px;padding:9px;background:color-mix(in srgb,var(--bp-surface) 98%,var(--bp-accent) 2%)}
.bp-passport-grid span{font-size:.49rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--bp-muted)}
.bp-passport-grid b{font-size:.61rem;line-height:1.35;color:var(--bp-text);overflow-wrap:anywhere}
.bp-passport-grid small{font-size:.51rem;line-height:1.4;color:var(--bp-muted);overflow-wrap:anywhere}
.bp-passport-review{margin-top:9px;border-top:1px solid var(--bp-line);padding-top:8px}
.bp-passport-review>summary{cursor:pointer;font-size:.56rem;font-weight:900;color:var(--bp-text)}
.bp-passport-review ul{margin:7px 0 5px;padding-left:18px}
.bp-passport-review li,.bp-passport-review small{font-size:.52rem;line-height:1.45;color:var(--bp-muted)}
.bp-passport-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:9px;padding-top:8px;border-top:1px solid var(--bp-line);font-size:.51rem;color:var(--bp-muted)}
.bp-passport-footer a{font-weight:900;color:var(--bp-accent);text-decoration:none}
@media(max-width:980px){.bp-structure-resolver-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bp-passport-checks{grid-template-columns:repeat(3,minmax(0,1fr))}.bp-passport-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.bp-structure-resolver-grid{grid-template-columns:1fr}.bp-structure-candidate-head{align-items:center}.bp-structure-candidate .bp-actions{display:grid;grid-template-columns:1fr}.bp-structure-candidate .bp-btn{width:100%;justify-content:center}.bp-passport-head{display:grid}.bp-passport-head .bp-status{max-width:none}.bp-passport-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.bp-passport-grid{grid-template-columns:1fr}.bp-passport-footer{display:grid}}
