/* Scoped layouts: keep filters, actions and cards in distinct aligned rows. */
.availability-controls,.revenue-filters{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:20px}
.availability-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.availability-search{display:flex;flex-direction:column;gap:8px;flex:1 1 300px;max-width:540px;font-size:12px;color:var(--muted)}
.availability-search input{width:100%;min-width:0;height:42px}
.availability-actions,.revenue-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.availability-actions button,.revenue-actions button{min-height:42px;margin:0}
.revenue-fields{display:grid;grid-template-columns:repeat(2,minmax(140px,180px)) repeat(2,minmax(180px,1fr));gap:16px;align-items:end}
.revenue-fields label{display:flex;flex-direction:column;gap:8px;min-width:0;color:var(--muted);font-size:12px}
.revenue-fields input,.revenue-fields select{width:100%;height:44px;margin:0;min-width:0}
.revenue-actions{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}
.revenue-actions .danger{margin-left:auto}.revenue-period{font-size:12px;margin:0 0 18px}
.client-revenue-tabs{gap:10px;margin-bottom:18px;flex-wrap:wrap}
#content:has(.revenue-filters) .kpi-grid{gap:16px;margin:20px 0}
#content:has(.revenue-filters) .note{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px;border-radius:10px}
#content:has(.revenue-filters) .kpi{padding:18px;min-height:108px}
@media(max-width:1100px){.revenue-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.availability-controls,.revenue-filters{padding:14px}.availability-actions{width:100%}.availability-actions button{flex:1}.revenue-fields{grid-template-columns:minmax(0,1fr)}.revenue-actions button{flex:1 1 140px}.revenue-actions .danger{margin-left:0}}
