.insurance-page h1 { font-size: 28px; color: #203d33; overflow-wrap: anywhere; }
.insurance-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 18px; }
.insurance-toolbar input { flex: 2 1 240px; width: auto; min-width: 0; }
.insurance-toolbar select { flex: 1 1 180px; width: auto; min-width: 0; max-width: 310px; }
.insurance-statuses { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 20px; }
.insurance-statuses button { display: inline-flex; align-items: center; gap: 10px; background: #fff; color: #627467; border: 1px solid #dce5dd; border-radius: 8px; padding: 10px 14px; font-size: 12px; font-weight: 500; }
.insurance-statuses b { min-width: 21px; border-radius: 4px; padding: 2px 5px; background: #f0f4ed; font-variant-numeric: tabular-nums; }
.insurance-statuses button.active { color: #24523d; border-color: #668e76; background: #eef5ed; }
.insurance-pagination { display: flex; align-items: center; gap: 12px; font-size: 12px; }
.insurance-pagination>span { margin-right: auto; }
.insurance-heading { margin-top: 24px; }
.insurance-detail-sub { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; color: #758375; font-size: 12px; }
.insurance-aircraft-link { background: transparent; color: #316950; padding: 0; border-radius: 0; font-weight: 500; }
.insurance-info { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 26px; margin: 0; }
.insurance-info .kv { display: block; min-width: 0; }
.insurance-info dt { margin-bottom: 6px; font-size: 12px; }
.insurance-info dd { margin: 0; overflow-wrap: anywhere; }
.insurance-page .badge.muted { color: #6e7d71; background: #edf0e9; }
.insurance-chain { display: flex; gap: 12px; margin: 0 0 20px; }
.insurance-history details { border-bottom: 1px solid #e5ebe1; padding: 14px 0; }
.insurance-history details:last-child { border-bottom: 0; }
.insurance-history summary { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; cursor: pointer; font-size: 13px; color: #3f6250; }
.insurance-history summary span { color: #78877b; font-size: 11px; }
.insurance-history details[open] summary { margin-bottom: 15px; }
.insurance-history .attachments { margin-top: 14px; }
.insurance-page .attachments .attachment { overflow-wrap: anywhere; min-width: 0; }
.insurance-alert { display: flex; align-items: center; gap: 20px; background: #fffaf2; border: 1px solid #efdfbf; border-radius: 10px; padding: 14px 18px; margin-bottom: 24px; }
.insurance-alert-title { display: flex; align-items: center; gap: 8px; color: #856323; font-size: 13px; }
.insurance-alert-title .icon { width: 19px; height: 19px; }
.insurance-alert-counts { display: flex; gap: 18px; }
.insurance-alert button { background: transparent; color: #856323; padding: 4px 0; font-size: 12px; font-weight: 400; }
.insurance-alert b { font-size: 17px; margin: 0 4px; font-variant-numeric: tabular-nums; }
.insurance-alert .is-expired { color: #b75035; }
.insurance-alert .insurance-alert-link { margin-left: auto; white-space: nowrap; }
@media(max-width:700px) {
 .insurance-toolbar select { max-width: none; flex-basis: 140px; }
 .insurance-page table { min-width: 820px; }
 .insurance-info { grid-template-columns: 1fr; }
 .insurance-statuses { gap: 7px; }
 .insurance-statuses button { padding: 8px 10px; }
 .insurance-alert { flex-wrap: wrap; gap: 8px 16px; }
 .insurance-alert-title { width: 100%; }
}
