.breakers-catalog{margin:20px 0;background:#fff;border:1px solid #d5dce3;border-radius:12px;overflow:hidden}
.breakers-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 24px;background:#152e46;color:#fff}
.breakers-eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;color:#9bc8eb;text-transform:uppercase}
.breakers-heading h2{font-size:25px;margin:7px 0}
.breakers-heading p{max-width:650px;color:#d5e2ec;line-height:1.5}
.breakers-heading-icon{font-size:36px;opacity:.85}
.breakers-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:16px 20px;border-bottom:1px solid #e3e9ee}
.breakers-tabs{display:flex;flex-wrap:wrap;gap:6px}
.breakers-tabs button{background:#edf2f6;color:#30495d;border:1px solid #dae3ea;border-radius:6px;padding:9px 12px}
.breakers-tabs button[aria-pressed=true]{background:#185d99;color:white;border-color:#185d99}
.breakers-filters{display:flex;flex-wrap:wrap;gap:12px;flex:1 1 100%;justify-content:flex-start;order:-1}
.breakers-filters label:last-child{order:-1}
.breakers-filters label{display:flex;align-items:center;gap:7px;font-size:12px;color:#526779}
.breakers-filters input{min-width:190px;width:240px;max-width:100%;padding:9px;border:1px solid #c9d5df;border-radius:6px;background:#f9fbfc}
.breakers-filters select{max-width:220px;padding:9px;border:1px solid #c9d5df;border-radius:6px;background:white;font:inherit}
.breakers-status{padding:0 20px;color:#536777;font-size:13px;margin:14px 0}
.breakers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px;padding:0 20px 20px}
.breakers-card{border:1px solid #dce5ec;border-radius:9px;overflow:hidden;display:flex;flex-direction:column;background:white;transition:box-shadow .15s,transform .15s}
.breakers-card:hover{box-shadow:0 6px 22px #16324f1c;transform:translateY(-2px)}
button.breakers-photo{position:relative;display:block;width:100%;height:185px;border:0;border-radius:0;padding:0;overflow:hidden;background:#eaf0f4;color:#526779;cursor:zoom-in}
.breakers-photo img{width:100%;height:100%;object-fit:cover;display:block}
.breakers-photo-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px}
.breakers-photo-badge{position:absolute;bottom:10px;right:10px;background:#112b43da;color:#fff;font-size:11px;padding:5px 8px;border-radius:4px}
.breakers-card-body{padding:14px;display:flex;flex-direction:column;flex:1;gap:9px}
.breakers-card-group{color:#185d99;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px}
.breakers-card h3{font-size:15px;line-height:1.4;margin:0;overflow-wrap:anywhere;font-weight:600}
.breakers-card-actions{display:flex;gap:8px;margin-top:auto;padding-top:8px}
.breakers-card-actions button{flex:1;padding:8px;font-size:13px;border-radius:5px}
.breakers-more,.breakers-retry{display:block;margin:0 auto 20px;border-radius:6px}
.breakers-catalog [hidden]{display:none!important}
.breakers-note{padding:12px 20px;margin:0;border-top:1px solid #e3e9ee;color:#647787;background:#f8fafc;font-size:12px;line-height:1.5}
.breakers-viewer{padding:16px;border:0;border-radius:10px;max-width:94vw;width:980px;max-height:94vh;color:#203448}
.breakers-viewer::backdrop{background:#0b1e31d9}
.breakers-viewer-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}
.breakers-viewer-head strong{font-size:15px;overflow-wrap:anywhere}
.breakers-viewer-head button{flex-shrink:0}
.breakers-viewer>img{display:block;width:100%;height:65vh;object-fit:contain;background:#f2f5f7;border-radius:5px}
.breakers-viewer [hidden]{display:none!important}
.breakers-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0}
button.breakers-gallery-photo{padding:0;border:0;border-radius:6px;overflow:hidden;background:transparent;cursor:zoom-in}
.breakers-gallery-photo img{display:block;width:100%;height:145px;object-fit:cover}
.breakers-viewer-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;font-size:13px}
@media(max-width:600px){.breakers-heading{padding:18px 16px}.breakers-heading h2{font-size:22px}.breakers-heading-icon{display:none}.breakers-controls{padding:12px}.breakers-filters{justify-content:flex-start}.breakers-filters label{flex:1;flex-wrap:wrap}.breakers-filters input{width:100%;min-width:0}.breakers-grid{padding:0 12px 12px;gap:12px}.breakers-status{padding:0 12px}.breakers-viewer{padding:10px}.breakers-viewer>img{height:55vh}}
