#rentalAccessorySettingsList .accessory-compact-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 16px; padding: 12px 14px; }
.accessory-compact-name { overflow-wrap: anywhere; }
#rentalAccessorySettingsList .checkbox-row { display: flex; align-items: center; gap: 9px; margin: 0; }
#rentalAccessorySettingsList .accessory-stock-required { border: 2px solid #b42318; color: #9f1c14; background: #fff0ed; animation: accessory-stock-pulse 1.6s ease-in-out infinite; }
@keyframes accessory-stock-pulse { 50% { background: #ffd6ce; box-shadow: 0 0 0 3px #b4231826; } }
.rental-accessory-editor { box-sizing: border-box; width: min(800px, calc(100vw - 24px)); max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); padding: 0; border: 1px solid #d5dfeb; border-radius: 18px; color: #173452; }
.rental-accessory-editor::backdrop { background: #172b4c99; }
.accessory-editor-card { display: flex; flex-direction: column; max-height: calc(100dvh - 28px); margin: 0; }
.accessory-editor-card header { display: flex; gap: 16px; justify-content: space-between; align-items: flex-start; padding: 20px; border-bottom: 1px solid #d8e2ef; }
.accessory-editor-card h2 { margin: 0 0 9px; font-size: 1.35rem; }
.accessory-editor-card p { margin: 0; font-size: .9rem; line-height: 1.5; color: #63758d; }
.accessory-editor-fields { display: grid; gap: 16px; padding: 20px; overflow: auto; min-height: 0; }
.accessory-editor-fields label { display: grid; gap: 7px; min-width: 0; font-weight: 600; }
.accessory-editor-fields input:not([type=checkbox]), .accessory-editor-fields select { box-sizing: border-box; min-width: 0; width: 100%; padding: 11px 12px; border: 1px solid #c8d5e7; border-radius: 10px; font: inherit; background: white; }
.accessory-editor-fields input:focus, .accessory-editor-fields select:focus { outline: 2px solid #4b75cd; outline-offset: 1px; }
.accessory-editor-pricing { display: grid; grid-template-columns: 1fr 1fr 1.3fr; gap: 14px; }
.accessory-editor-fields .checkbox-row, .accessory-editor-fields .rental-accessory-vehicle-option { display: flex; align-items: center; gap: 9px; }
.accessory-editor-fields .checkbox-row input, .accessory-editor-fields .rental-accessory-vehicle-option input { flex: 0 0 auto; width: 20px; height: 20px; }
.accessory-editor-vehicles { display: grid; gap: 12px; }
.accessory-editor-vehicles[hidden], .accessory-editor-vehicles [hidden] { display: none !important; }
.accessory-editor-vehicles .rental-accessory-vehicle-options { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.accessory-editor-fields .accessory-editor-error { color: #a12d2d; overflow-wrap: anywhere; }
.accessory-editor-error:empty { display: none; }
.accessory-editor-card footer { display: flex; flex-shrink: 0; justify-content: flex-end; gap: 10px; padding: 16px 20px; border-top: 1px solid #d8e2ef; background: white; }
@media (prefers-reduced-motion: reduce) { #rentalAccessorySettingsList .accessory-stock-required { animation: none; } }
@media (max-width: 540px) {
  #rentalAccessorySettingsList .accessory-compact-row { grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }
  .accessory-compact-name { grid-column: 1/-1; }
  .accessory-editor-card header, .accessory-editor-fields { padding: 16px; }
  .accessory-editor-pricing { grid-template-columns: 1fr; }
  .accessory-editor-card footer { padding: 14px; }
  .accessory-editor-card footer button { flex: 1; }
}
