/* ATC 2026 mobile layout; desktop appearance unchanged. */
@media (max-width: 800px) {
 html,body {min-width:0;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;}
 body {font-size:14px;}
 .app-shell {height:auto;min-height:100dvh;padding:10px 10px max(12px,env(safe-area-inset-bottom));gap:12px;}
 .topbar {display:flex;flex-direction:column;align-items:stretch;gap:12px;min-height:0;}
 .brand {font-size:clamp(14px,3.6vw,18px);line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:center;padding:8px 4px;}
 .toptools {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;align-items:stretch;}
 .toptools .report-top {grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;}
 .report-top label {grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;white-space:normal;font-size:12px;}
 .report-top input[type=date] {width:min(60%,180px);min-width:0;}
 .report-top select {min-width:0;width:100%;}
 .report-top button {min-width:0;width:100%;white-space:normal;line-height:1.2;}
 .toptools>.new-record,.toptools>form:not(.report-top) {width:100%;min-width:0;}
 .toptools>form:not(.report-top)>button {width:100%;}
 .customer-section {min-width:0;}
 .section-title {font-size:15px;margin:3px 0 7px;}
 .form-grid {grid-template-columns:minmax(0,1fr);gap:12px;padding:12px;border-radius:10px;}
 .form-field,.form-field.atc-vehicle-field,.form-field.atc-ecu-field {display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0;}
 .form-field>span,.form-field.atc-vehicle-field>span:first-child,.form-field.atc-ecu-field>span:first-child {width:auto!important;flex-basis:auto!important;font-size:12px;font-weight:700;}
 .form-field input,.form-field select {min-width:0;width:100%;height:44px;font-size:16px;border-radius:7px;}
 .atc-vehicle-controls,.atc-ecu-controls {width:100%;min-width:0;}
 .form-field.atc-vehicle-field .atc-vehicle-controls input,.form-field.atc-ecu-field .atc-ecu-controls input {min-width:0;}
 .option-strip {overflow:visible;white-space:normal;flex-wrap:wrap;gap:8px;padding:10px;border-radius:10px;}
 .opt {border:1px solid #5b7189;border-radius:8px;background:#34465c;padding:9px 10px;min-height:40px;font-size:12px;}
 .opt input {width:17px;height:17px;}
 .date-label {width:100%;margin:8px 0 0;text-align:center;line-height:2.3;font-size:12px;}
 .date-label strong {border-radius:7px;font-size:14px;font-variant-numeric:tabular-nums;}
 .toolbar {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;white-space:normal;align-items:stretch;}
 .toolbar>button,.toolbar>.btn {min-height:44px;min-width:0;width:100%;white-space:normal;line-height:1.2;padding:9px 5px;}
 .toolbar>.paid {justify-content:center;min-height:44px;border-radius:8px;}
 .toolbar>.filter-label {display:flex;flex-direction:column;align-items:stretch;gap:5px;min-width:0;font-size:12px;}
 .toolbar>.filter-label select {width:100%;max-width:none;height:42px;font-size:14px;}
 .toolbar>.search-form {grid-column:1/-1;margin:0;display:flex;gap:8px;min-width:0;}
 .search-form label {flex:1;min-width:0;}
 .search-form input {flex:1;min-width:0;width:100%;height:42px;font-size:16px;}
 .search-form button {min-height:42px;}
 .table-area {flex:none;width:100%;min-height:260px;max-height:55dvh;overflow:auto;-webkit-overflow-scrolling:touch;border-radius:9px;overscroll-behavior-x:contain;}
 .jobs-table {font-size:12px;}
 .jobs-table th {padding:10px 12px;}
 .jobs-table td {padding:10px 9px;}
 .bottom-status {font-size:12px;line-height:1.7;padding:8px 2px;overflow-wrap:anywhere;}
 .report-mini {margin-top:6px;}
 .atc-login-page {min-height:100dvh;padding:16px 12px max(18px,env(safe-area-inset-bottom));}
 .atc-login-card {width:min(100%,440px);max-width:100%;}
 .atc-login-form input {font-size:16px;}
 #atcNewModal .modal-card,#atcLogoutCard,#atcDeleteModal .atc-delete-card,#atcRestoreModal .atc-restore-card,#atcSelectWarning .atc-restore-card {max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);overflow-y:auto;}
}
@media (max-width:380px) {
 .toptools .report-top {grid-template-columns:1fr;}
 .report-top label,.report-top select,.report-top button {grid-column:1/-1;}
 .brand {font-size:13px;}
 .opt {padding:8px;}
}
@media print { .app-shell {height:auto;} }

/* ATC mobile v2: force consistent form controls, avoid overflow and overlaps. */
@media screen and (max-width:800px) {
 html,body {width:100%;min-width:0!important;overflow-x:hidden!important;}
 .app-shell {width:100%;max-width:100vw;min-width:0;overflow-x:clip;padding:12px!important;gap:14px!important;}
 .topbar,.toptools,.customer-section,.form-grid,.form-field,.option-strip,.toolbar {min-width:0;max-width:100%;}
 .toptools {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 .toptools button,.toptools select {font-size:13px!important;white-space:normal!important;min-height:46px;line-height:1.25;}
 .section-title {font-size:17px!important;line-height:1.4;margin:5px 0 8px!important;}
 .form-grid {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;padding:14px!important;}
 .form-grid .form-field,.form-grid .form-field.atc-vehicle-field,.form-grid .form-field.atc-ecu-field {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;margin:0!important;width:100%!important;}
 .form-grid .form-field > span:first-child {display:block!important;flex:none!important;width:100%!important;font-size:14px!important;line-height:1.3!important;margin:0!important;}
 .form-grid .form-field > input,.form-grid .form-field > select {width:100%!important;max-width:100%!important;min-width:0!important;height:46px!important;font-size:16px!important;border-radius:8px!important;padding:8px 12px!important;}
 .form-field.atc-vehicle-field > .atc-vehicle-controls,.form-field.atc-ecu-field > .atc-ecu-controls {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;width:100%!important;flex:none!important;min-width:0!important;align-items:stretch!important;}
 .form-field.atc-vehicle-field .atc-vehicle-controls select,.form-field.atc-ecu-field .atc-ecu-controls select {grid-row:1;min-width:0!important;max-width:100%!important;width:100%!important;height:46px!important;flex:none!important;font-size:14px!important;border-radius:8px!important;padding:6px!important;}
 .form-field.atc-vehicle-field .atc-vehicle-controls input,.form-field.atc-ecu-field .atc-ecu-controls input {grid-column:1/-1;grid-row:2;min-width:0!important;max-width:100%!important;width:100%!important;height:46px!important;flex:none!important;font-size:15px!important;border-radius:8px!important;padding:8px 12px!important;}
 .option-strip {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important;white-space:normal!important;padding:10px!important;}
 .option-strip .opt {display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;width:100%!important;min-height:48px!important;margin:0!important;padding:8px!important;font-size:12px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere;}
 .option-strip .opt input {width:20px!important;height:20px!important;min-width:20px!important;flex:none!important;margin:0!important;}
 .option-strip .opt span {min-width:0!important;overflow-wrap:anywhere;}
 .option-strip .date-label {grid-column:1/-1!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;margin:8px 0 0!important;padding:10px 4px!important;line-height:1.4!important;font-size:13px!important;width:100%!important;white-space:normal!important;}
 .date-label strong {font-size:14px!important;white-space:nowrap!important;line-height:1.4!important;}
 .toolbar {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;align-items:stretch!important;white-space:normal!important;overflow:visible!important;}
 .toolbar > .paid {grid-column:1/-1!important;display:flex!important;gap:12px!important;align-items:center!important;justify-content:flex-start!important;padding:12px!important;min-height:48px!important;}
 .toolbar > .paid input {width:22px;height:22px;margin:0;}
 .toolbar > button,.toolbar > .btn {width:100%!important;min-width:0!important;min-height:48px!important;font-size:13px!important;white-space:normal!important;line-height:1.25!important;overflow-wrap:anywhere;padding:10px 7px!important;}
 .toolbar > .filter-label {min-width:0!important;}
 .toolbar > .search-form {grid-column:1/-1!important;}
 .table-area {width:100%;max-width:100%;overflow-x:auto!important;}
}
@media screen and (max-width:360px) {
 .app-shell {padding:8px!important;}
 .option-strip .opt {font-size:11px!important;padding:6px!important;}
 .date-label {flex-wrap:wrap;}
}
