/* Shared mobile controls: preserve readable input space and natural button height. */
.upcoming-filters .form-row{align-items:end}
.upcoming-filters .btn{width:auto;justify-self:end;align-self:end;margin:0;min-height:44px}
.upcoming-filters .form-row:first-child{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.photo-source-field{min-width:0;margin:12px 0 20px}
.photo-source-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.photo-source-options>.btn{min-width:0;margin:0;min-height:48px}
.photo-crop-controls{gap:18px;padding-block:10px}
.photo-crop-controls label{font-size:16px}
.photo-crop-controls input[type=range]{appearance:none;-webkit-appearance:none;height:48px;min-height:48px;margin-top:10px;background:transparent;touch-action:pan-y}
.photo-crop-controls input[type=range]::-webkit-slider-runnable-track{height:8px;border-radius:8px;background:#c5d9b9}
.photo-crop-controls input[type=range]::-moz-range-track{height:8px;border-radius:8px;background:#c5d9b9}
.photo-crop-controls input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:30px;height:30px;border-radius:50%;background:#28531a;border:3px solid #fff;box-shadow:0 0 0 1px #28531a;margin-top:-11px}
.photo-crop-controls input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#28531a;border:3px solid #fff;box-shadow:0 0 0 1px #28531a}
.photo-crop-controls input[type=range]:disabled{opacity:.5}
.app-shell :is(.check,.check-row) input[type=checkbox]{width:24px;height:24px}
.app-shell :is(input[type=date],input[type=month],input[type=datetime-local]){min-width:0;max-width:100%;width:100%;box-sizing:border-box;min-inline-size:0}
.app-shell :is(input[type=date],input[type=month],input[type=datetime-local])::-webkit-date-and-time-value{min-width:0;text-align:start}
.app-shell .field :is(input,select,textarea):disabled{background:#e9ede5;color:#677360;-webkit-text-fill-color:#677360;opacity:1}
.demand-area-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;width:100%}
.demand-area-search>input,.demand-area-search>.cgs-clear-field{width:100%;min-width:0}
.demand-area-search>button{width:auto;min-height:44px;margin:0;align-self:center;padding:10px 14px;white-space:normal}
@media(max-width:767px){
 .upcoming-filters .form-row:first-child{grid-template-columns:minmax(0,1fr)}
 .upcoming-filters .form-row:last-child{grid-template-columns:minmax(0,1fr) auto}
 .app-shell .pickup-time-fields{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:16px}
 .app-shell .pickup-time-fields .ampm-field{width:100%;min-width:0;margin:0}
 .app-shell .pickup-time-fields .ampm-clock-parts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .app-shell .pickup-time-fields .ampm-clock-parts select{padding-inline:8px}
 .app-shell .pickup-time-fields .ampm-clock-parts .native-select-trigger{padding-inline:6px;gap:4px}
 .app-shell .pickup-time-fields .ampm-clock-parts .native-select-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .app-shell .finance-filters{display:grid;grid-template-columns:minmax(0,1fr);align-items:end;gap:14px}
 .app-shell .finance-filters>label{width:100%;min-width:0}
 .app-shell .finance-filters>button{width:auto;justify-self:start}
 .app-shell .demand-area-picker{padding:16px}
 .app-shell .demand-area-search{grid-template-columns:minmax(0,1fr);gap:10px}
 .app-shell .demand-area-search>button{justify-self:start;width:auto;max-width:100%}
}

.device-push-settings{margin:16px 0 24px;padding:16px;background:#f4f7f0;border-radius:14px}
.device-push-settings .btn{width:auto;max-width:100%;margin-bottom:0}
