.rental-page .full-width{grid-column:1/-1}.rental-alerts{display:grid;gap:10px;margin:0 0 22px}.rental-alerts div{display:flex;align-items:center;gap:10px;padding:14px 18px;border:1px solid #f5d277;border-radius:14px;background:#fff8df;color:#854d0e}.rental-alerts div span:last-child{font-weight:500}.rental-renew-badge{display:block;width:max-content;margin-top:7px;padding:5px 9px;border-radius:999px;background:#fff1bd;color:#a85400;font-weight:700;font-size:.78rem}.rental-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.rental-row-actions button{min-height:38px;padding:7px 11px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-weight:700;cursor:pointer}.rental-row-actions button.danger{border-color:#fecaca;background:#fff1f2;color:#c52222}.rental-row-actions button.success{border-color:#a7f3d0;background:#ecfdf5;color:#07865d}.rental-modal-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;background:rgba(8,27,53,.62)}.rental-document-modal{display:flex;flex-direction:column;width:min(1050px,95vw);height:min(820px,92vh);overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.32)}.rental-document-modal header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 24px;border-bottom:1px solid #dbe5f1}.rental-document-modal h2{margin:0}.rental-document-modal header span{color:#64748b}.rental-document-modal img{max-width:100%;max-height:calc(92vh - 90px);margin:auto;object-fit:contain}.rental-document-modal object{width:100%;height:100%;border:0}.calculated-field{display:flex;align-items:center;min-height:56px;padding:0 16px;border:1px solid #cbd8e8;border-radius:12px;background:#f6f9fd;color:#0a2342;font-weight:800}.installment-progress{display:inline-flex;min-width:70px;justify-content:center;padding:8px 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-weight:900}@media(max-width:900px){.rental-page .two-columns{grid-template-columns:1fr}.rental-page .full-width{grid-column:auto}.rental-row-actions{min-width:210px}}
.rental-contracts-page .summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.rental-contracts-page .summary-card { min-height: 104px; padding: 1rem; }
.rental-contracts-page .summary-card > div:last-child { flex: 1; text-align: center; }
.rental-contracts-page .summary-card strong { font-size: clamp(1.3rem, 1.65vw, 1.75rem); }
.rental-contracts-page .summary-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rental-contracts-page .form-required { color: #dc2626; }
.rental-contracts-page .rental-form-overlay { position: fixed; inset: 0; z-index: 2100; display: flex; align-items: center; justify-content: center; padding: 1.5rem; overflow-y: auto; background: rgba(15,23,42,.64); backdrop-filter: blur(4px); }
.rental-contracts-page .rental-form-modal { width: min(1040px, 96vw); max-height: calc(100dvh - 3rem); margin: auto; padding: 1.5rem; overflow-y: auto; }
.rental-contracts-page .rental-form-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.rental-contracts-page .rental-form-header h2 { margin: 0; }
.rental-contracts-page .form-grid { gap: 1.25rem; }
.rental-contracts-page .form-actions { margin-top: 1.5rem; }
.rental-contracts-page .data-table { min-width: 1000px; }
.rental-contracts-page .data-table td { vertical-align: middle; padding-top: 1rem; padding-bottom: 1rem; }
.rental-contracts-page .data-table th:nth-child(4), .rental-contracts-page .data-table td:nth-child(4), .rental-contracts-page .data-table td:nth-child(5) { white-space: nowrap; }
.rental-contracts-page .data-table th:nth-last-child(-n+2), .rental-contracts-page .data-table td:nth-last-child(-n+2) { text-align: center; }
.rental-contracts-page .data-table th:last-child { width: 96px; }
.rental-contracts-page .supplier-status-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 76px; padding: .4rem .85rem; border-radius: 999px; font-weight: 800; }
.rental-contracts-page .supplier-status-badge.active { color: #047857; background: #d1fae5; }
.rental-contracts-page .supplier-status-badge.inactive { color: #b91c1c; background: #fee2e2; }
.rental-contracts-page .rental-actions { position: relative; display: inline-flex; }
.rental-contracts-page .rental-kebab { width: 46px; height: 42px; border: 1px solid #bfdbfe; border-radius: 14px; background: #fff; color: #1d4ed8; font-size: 1.6rem; font-weight: 900; cursor: pointer; }
.rental-contracts-page .rental-action-menu { position: absolute; top: calc(100% + .45rem); right: 0; z-index: 130; min-width: 180px; padding: .45rem; border: 1px solid #dbeafe; border-radius: 16px; background: #fff; box-shadow: 0 20px 48px rgba(15,23,42,.18); }
.rental-contracts-page .rental-action-menu button { width: 100%; padding: .8rem .9rem; border: 0; border-radius: 12px; background: transparent; color: #0b1f3a; text-align: center; font-weight: 800; cursor: pointer; }
.rental-contracts-page .rental-action-menu button:hover { background: #eff6ff; }
.rental-contracts-page .rental-action-menu .danger { color: #b91c1c; }
.rental-contracts-page .rental-action-menu .success { color: #047857; }
.rental-contracts-page .table-responsive:has(.rental-action-menu) { padding-bottom: 190px; }
.rental-contracts-page .rental-actions-backdrop { position: fixed; inset: 0; z-index: 50; border: 0; background: transparent; }
.rental-contracts-page .rental-actions:has(.rental-action-menu) { z-index: 120; }
.rental-contracts-page .rental-pagination { display: flex; align-items: center; gap: .75rem; }
.rental-contracts-page.vehicle-contract-page .data-table { min-width: 1180px; table-layout: fixed; }
.rental-contracts-page.vehicle-contract-page .data-table th,
.rental-contracts-page.vehicle-contract-page .data-table td { padding-right: 1rem; padding-left: 1rem; vertical-align: top; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(1) { width: 12%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(2) { width: 18%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(3) { width: 11%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(4) { width: 15%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(5) { width: 8%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(6) { width: 8%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(7) { width: 12%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(8) { width: 9%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(9) { width: 7%; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(4),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(4) { text-align: right; font-variant-numeric: tabular-nums; }
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(5),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(5),
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(6),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(6),
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(7),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(7),
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(8),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(8),
.rental-contracts-page.vehicle-contract-page .data-table th:nth-child(9),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(9) { text-align: center; }
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(5),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(6),
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(7) { font-variant-numeric: tabular-nums; }
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(2) span { overflow-wrap: normal; word-break: normal; }
.rental-contracts-page.vehicle-contract-page .installment-progress { padding: 0; background: transparent; color: #0b1f3a; }
.rental-contracts-page.vehicle-contract-page .data-table td:nth-child(7) { white-space: nowrap; }
@media (max-width: 760px) {
    .rental-contracts-page .summary-grid { grid-template-columns: 1fr; }
    .rental-contracts-page .rental-form-overlay { padding: .5rem; }
    .rental-contracts-page .rental-form-modal { padding: 1rem; max-height: calc(100dvh - 1rem); }
    .rental-contracts-page .table-footer { flex-wrap: wrap; gap: 1rem; }
}
