:root{font-family:Inter,Arial,sans-serif;color:#172033;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}header{height:72px;background:#121722;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4vw}header div{display:flex;gap:22px;align-items:center}header b{font-size:22px}main{max-width:1180px;margin:auto;padding:28px 24px}.cards,.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid{grid-template-columns:1fr 1fr;margin:22px 0}article,form,section:has(table){background:#fff;border-radius:16px;padding:22px;box-shadow:0 4px 20px #18223812}small{color:#687287}strong{font-size:28px;display:block;margin-top:10px}label{display:grid;gap:6px;margin:12px 0;color:#596174}input,select,textarea,button{font:inherit;border:1px solid #dce1e8;border-radius:9px;padding:11px}textarea{min-height:75px}button{border:0;background:#1e6ee6;color:white;font-weight:700;cursor:pointer}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #edf0f4}@media(max-width:760px){.cards,.grid{grid-template-columns:1fr}}
:root [hidden]{display:none!important}nav a{color:#d5e5ff}#filters{background:white;padding:20px;border-radius:16px;margin:20px 0;display:flex;gap:18px;align-items:end;flex-wrap:wrap}#filters h2{width:100%;margin:0}#filters label{min-width:180px}output{display:block;margin-top:12px;color:#a23c26}
/* Rental workplace: readable fields and independently scrolling journals. */
#booking,#payment,#status{min-width:0}form label{display:block;min-width:0;margin:12px 0;line-height:1.5}form input,form select,form textarea{box-sizing:border-box;width:100%;min-width:0;padding:10px;font:inherit}form textarea{min-height:76px}form button{white-space:normal;line-height:1.4}#client-panel{padding:14px;background:#f0f7ff;border:1px solid #cbdff5;border-radius:12px;margin:12px 0}#client-panel h2{font-size:18px;margin:0 0 8px}.client-choice{display:block;width:100%;text-align:left;margin:6px 0;background:#fff;color:#153a58;border:1px solid #bcd3e8}#client-history p{padding-top:8px;border-top:1px solid #cbdff5}#crm-status{padding:14px;background:#fff6dc;border-radius:10px}section:has(#payments),section:has(#bookings){overflow:auto}table:has(#bookings){min-width:1100px}table:has(#payments){min-width:850px}table:has(#bookings) td:nth-child(1),table:has(#bookings) td:nth-child(n+6):nth-child(-n+8){white-space:nowrap}table:has(#bookings) td:nth-child(3){min-width:180px;max-width:260px;overflow-wrap:anywhere}#filters label{min-width:180px}main{max-width:1400px;margin:auto}@media(max-width:720px){.grid{display:block}#booking{margin-bottom:20px}}
details{background:white;border:1px solid #dce5ef;border-radius:12px;margin:10px 0;padding:12px}summary{cursor:pointer;font-weight:700;color:#214b77;padding:8px}details form{box-shadow:none;padding:12px}nav a[aria-current=page]{background:#2d496b;border-radius:7px;padding:8px}.report-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px}.report-sidebar{background:#fff;border:1px solid #e1e7ef;border-radius:12px;padding:16px;align-self:start}.report-sidebar h2{margin-top:0}.report-sidebar fieldset{border:0;border-top:1px solid #e1e7ef;margin:18px 0;padding:10px 0}.report-sidebar legend{font-weight:700}.report-sidebar label{display:flex;align-items:center;gap:8px;line-height:1.4;color:#253850}.report-sidebar input[type=checkbox]{width:16px;height:16px;flex-shrink:0;accent-color:#2371e5}.report-sidebar button{background:#edf4ff;color:#22518e;font-size:12px;padding:6px}.report-sidebar select{max-width:100%}.report-content{min-width:0}.report-content h1{font-size:24px}.report-table{overflow:auto;margin-top:20px}.report-table table{min-width:750px}.report-table td:not(:first-child){white-space:nowrap;text-align:right}.report-table tbody tr:nth-child(even){background:#f6f9fd}.report-table tfoot{font-weight:700;background:#eef4fc}.report-content #filters{gap:12px}.report-content #filters label{min-width:150px}.report-content #report-note{color:#627389;font-size:14px;line-height:1.5}@media(max-width:850px){.report-layout{grid-template-columns:1fr}.report-sidebar{max-height:240px;overflow:auto}header{height:auto;min-height:72px;flex-wrap:wrap;padding:16px;gap:16px}}
section:has(#bookings),section:has(#ops){max-height:520px;overflow:auto}section:has(#bookings) thead,section:has(#ops) thead{position:sticky;top:0;background:#fff;z-index:1}.report-table{max-height:65vh}.report-table thead{position:sticky;top:0;background:#fff;z-index:1}
.report-sidebar>label{display:block}.report-sidebar>label select{display:block;width:100%;min-width:0;margin-top:8px}.report-sidebar label{overflow-wrap:anywhere}
.order-builder{background:#f6f9fe;padding:16px;border-radius:12px;margin:16px 0}.order-line{display:grid;grid-template-columns:minmax(120px,2fr) 85px 120px 35px;align-items:center;gap:8px;border-bottom:1px solid #dce5ef}.inline-check{display:flex!important;align-items:center;gap:8px}.inline-check input{width:18px;flex-shrink:0}.order-builder p,details p{font-size:14px;line-height:1.5;color:#526781}@media(max-width:650px){.order-line{grid-template-columns:1fr 1fr}.order-line label:first-child{grid-column:1 / -1}}
.booking-dialog{border:0;border-radius:16px;max-width:850px;width:90vw;max-height:85vh;overflow:auto;padding:24px;box-shadow:0 15px 80px #17203355}.booking-dialog::backdrop{background:#17203377}.close-dialog{float:right}.view-booking{font-size:12px;padding:6px;margin-top:7px}
