/* Private customer dashboard: scoped so checkout/signing layouts stay unchanged. */
.rental-dashboard{color:#172b4d;line-height:1.6}
.rental-dashboard h1,.rental-dashboard h2{text-transform:none;letter-spacing:-.025em}
.rental-dashboard h1{margin:4px 0 12px}
.rental-dashboard h2{font-size:23px;margin:0 0 12px;color:#002266}
.rental-dashboard h3{font-size:18px;margin:0 0 8px;color:#002266}
.rental-overview{padding:28px;background:#f3f6ff;border:1px solid #d9e1f4;border-top:5px solid #204ce5;border-radius:8px;margin-bottom:24px}
.rental-reference,.rental-dashboard p,.rental-dashboard dd{overflow-wrap:anywhere}
.rental-reference{font-size:14px;color:#536074}
.rental-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.rental-status-grid>div{background:#fff;border:1px solid #d9dfe8;padding:14px;border-radius:6px}
.status-caption{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;color:#536074}
.rental-dashboard .rental-status{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;padding:6px 10px;border:1px solid;border-radius:5px;line-height:1.5;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
.rental-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.status-complete{background:#e8f6ee;color:#146338;border-color:#a8d7bb!important}
.status-pending{background:#fff6d8;color:#765100;border-color:#e6cd7a!important}
.status-error{background:#fdeced;color:#9e2431;border-color:#e8b0b6!important}
.overview-copy{margin-bottom:22px}
.rental-section-nav{display:flex;gap:8px 16px;flex-wrap:wrap;border-top:1px solid #d9e1f4;padding-top:16px;font-size:14px}
.rental-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:24px;align-items:start}
.rental-main-column,.rental-side-column{min-width:0}
.dashboard-panel{padding:24px;border:1px solid #d9dfe8;border-radius:8px;background:#fff;margin-bottom:24px;box-shadow:0 6px 20px #00226606;scroll-margin-top:24px}
.next-steps{border-left:4px solid #e2b52f;background:#fffdf5}
.section-intro,.section-footnote,.unit-reference{color:#536074;font-size:14px}
.section-footnote{border-top:1px solid #e5e9ef;padding-top:14px;margin-bottom:0}
.rental-unit-card,.rental-payment-card{padding:18px;border:1px solid #dfe5ee;background:#fafbfe;border-radius:6px;margin-top:16px}
.rental-unit-heading{display:flex;gap:16px;align-items:center}
.rental-unit-heading>div:last-child{min-width:0}
.rental-thumbnail{width:112px;height:96px;flex:none;object-fit:contain;background:#fff;border:1px solid #e0e6ef;border-radius:5px}
.thumbnail-empty{display:flex;align-items:center;justify-content:center;padding:10px;box-sizing:border-box;text-align:center;color:#536074;font-size:12px}
.unit-reference{margin:0 0 8px}
.rental-dashboard .rental-facts{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(0,1.4fr);gap:12px;margin:18px 0 0;font-size:14px}
.rental-dashboard .rental-facts dt{color:#536074}
.rental-dashboard .rental-facts dd{text-align:left;font-weight:600}
.rental-dashboard .rental-facts small{font-weight:400;margin-top:4px}
.rental-action-row,.panel-heading,.payment-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.rental-action-row{justify-content:flex-start}
.rental-dashboard .panel-heading h2,.rental-dashboard .panel-heading form{margin:0}
.payment-heading h3{font-size:24px;margin:0}
.payment-heading small{font-size:13px;font-weight:400}
.rental-dashboard .secondary-action{color:#002266;background:#fff;border:1px solid #a9b8d3;box-shadow:none}
.rental-dashboard .secondary-action:hover{background:#eef2ff}
.rental-dashboard .danger-action{color:#9e2431;background:#fff;border:1px solid #dba2aa;box-shadow:none}
.rental-dashboard .danger-action:hover{background:#fdeced}
.rental-dashboard button,.rental-dashboard .button{font-size:14px;border-radius:5px;white-space:normal;text-align:center;overflow-wrap:anywhere}
.document-actions{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.document-actions>a:last-child:not(.button){font-size:14px;text-align:center;padding:8px}
.rental-total .total-amount{font-size:38px;line-height:1.2;color:#002266;overflow-wrap:anywhere}
.rental-total>p{margin-top:6px}
.rental-total dl{font-size:14px;grid-template-columns:minmax(0,1fr) auto}
.rental-dashboard details{margin-top:18px}
.rental-dashboard summary{cursor:pointer;font-weight:600;min-height:44px;display:list-item;align-content:center}
.staff-controls{border-top:1px solid #d9dfe8;margin-top:18px;padding-top:14px;font-size:14px}
.rental-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.rental-page .message-success{background:#e8f6ee;color:#146338;border:1px solid #a8d7bb}
.rental-page .message-error{background:#fdeced;color:#9e2431;border:1px solid #e8b0b6}
.rental-page .message-warning,.rental-page .message-info{background:#fff6d8;color:#765100;border:1px solid #e6cd7a}
@media(max-width:800px){.rental-dashboard-grid{grid-template-columns:minmax(0,1fr);gap:0}.rental-status-grid{grid-template-columns:minmax(0,1fr)}.rental-management-grid{grid-template-columns:minmax(0,1fr);gap:20px}.rental-overview,.dashboard-panel{padding:20px}.rental-status-grid{gap:10px}.rental-status-grid>div{padding:12px}.rental-status-grid .status-caption{margin-bottom:4px}}
@media(max-width:420px){.rental-unit-heading{align-items:flex-start;gap:12px}.rental-thumbnail{width:80px;height:80px}.rental-unit-card,.rental-payment-card{padding:14px}.rental-dashboard .rental-facts{grid-template-columns:minmax(0,1fr);gap:4px}.rental-facts dd{margin-bottom:10px}.rental-action-row{align-items:stretch;flex-direction:column}.rental-dashboard .panel-heading{align-items:flex-start;flex-direction:column}.rental-page{padding-right:12px;padding-left:12px}.rental-overview,.dashboard-panel{padding:16px}}
@media print{.rental-section-nav,.rental-dashboard form,.rental-action-row,.staff-controls{display:none}.rental-dashboard-grid{display:block}.dashboard-panel{break-inside:avoid;box-shadow:none}.rental-status{print-color-adjust:exact}}