#main-app {padding-bottom:calc(92px + env(safe-area-inset-bottom));}
[data-mobile-page][hidden],.mobile-bottom-nav [hidden] {display:none!important;}
.mobile-bottom-nav {position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,484px);display:grid;grid-template-columns:repeat(5,1fr);padding:6px 6px calc(6px + env(safe-area-inset-bottom));box-sizing:border-box;background:#fff;border-top:1px solid #ccd5dc;box-shadow:0 -3px 16px #14233212;z-index:40;}
.mobile-bottom-nav button {position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:58px;border:0;border-radius:10px;background:transparent;color:#57616b;font:600 12px/1.3 system-ui,sans-serif;cursor:pointer;padding:6px 2px;}
.mobile-bottom-nav button[aria-current="page"] {background:#fff0e5;color:#a43b00;}
.mobile-bottom-nav svg {width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.mobile-bottom-nav button:focus-visible {outline:3px solid #dd5e0a;outline-offset:-3px;}
.mobile-bottom-nav .mobile-nav-badge {position:absolute;top:2px;right:calc(50% - 26px);background:#ad2828;color:white;border-radius:50%;min-width:17px;font-size:12px;line-height:17px;}
.mobile-placeholder {padding:20px;margin-bottom:18px;}
.mobile-placeholder h2 {margin:0 0 12px;font-size:20px;}
.mobile-placeholder p {line-height:1.5;}
.mobile-placeholder ul {padding-left:22px;line-height:2;}
#mobile-page-driver #logout-button {width:100%;min-height:48px;}
@media print {.mobile-bottom-nav {display:none;}}


.mobile-page-help {font-size:14px;line-height:1.5;color:var(--gray-500);}
.mobile-quick-start {display:flex;justify-content:center;margin:24px 0;}
.mobile-quick-start button {width:auto;min-width:210px;max-width:100%;min-height:44px;}
/* Mobile inspection uses the same palette and card header as the job cards. */
#daily-mobile {margin:0 0 16px;padding:16px;border-radius:12px;border-color:var(--gray-200);color:var(--black);box-shadow:0 2px 8px #14233206;}
#daily-mobile > h2 {margin:-16px -16px 16px;padding:14px;background:var(--panel-head);color:var(--white);border-bottom:2px solid var(--orange);border-radius:11px 11px 0 0;font-size:16px;font-weight:800;}
.daily-mobile-dialog {color:var(--black);border-color:var(--gray-200);border-radius:12px;font-family:inherit;}
.daily-mobile-dialog .daily-dialog-head {background:var(--panel-head);color:var(--white);border-bottom:2px solid var(--orange);}
.daily-mobile-dialog .daily-dialog-head h2 {font-size:18px;}
#daily-mobile button,.daily-mobile-dialog button {background:var(--white);color:var(--black);border-color:var(--gray-300);border-radius:9px;font-weight:700;}
#daily-mobile button[data-open],.daily-mobile-dialog button[type=submit] {background:var(--orange-dark);border-color:var(--orange-dark);color:var(--white);}
#daily-mobile button:focus-visible,.daily-mobile-dialog button:focus-visible {outline-color:var(--orange);}
.daily-mobile-dialog input,.daily-mobile-dialog textarea {accent-color:var(--orange-dark);}
.daily-mobile-dialog input:not([type=radio]):not([type=checkbox]),.daily-mobile-dialog textarea {color:var(--black);border-color:var(--gray-300);border-radius:9px;}
.daily-mobile-dialog input:focus-visible,.daily-mobile-dialog textarea:focus-visible {outline:2px solid var(--orange);outline-offset:2px;}
#daily-mobile .daily-good,.daily-mobile-dialog .daily-good {background:var(--green-light);color:var(--green-dark);}
#daily-mobile .daily-stop,.daily-mobile-dialog .daily-stop {background:var(--red-light);color:var(--red);}
.daily-mobile-dialog .daily-check,.daily-mobile-dialog .daily-equipment {border-color:var(--gray-200);border-radius:12px;}
.daily-mobile-dialog .daily-confirm,.daily-mobile-dialog .daily-equipment {background:var(--gray-100);}
.daily-mobile-dialog .daily-muted {color:var(--gray-500);}

#daily-mobile .daily-inline-form {display:block;position:static;width:100%;max-width:none;max-height:none;box-sizing:border-box;margin:0;padding:0;border:0;border-radius:0;overflow:visible;background:transparent;}
#daily-mobile .daily-inline-form .daily-fields {grid-template-columns:1fr;}
#daily-mobile .daily-inline-form .daily-actions button {flex:1 1 180px;}

.daily-inline-form .daily-check-group,.daily-inline-form details.daily-equipment {border:1px solid var(--gray-200);border-radius:10px;margin:12px 0;background:var(--white);padding:0 12px;}
.daily-inline-form [data-check-group]>summary {padding:14px 0;font-size:16px;line-height:1.4;}
.daily-inline-form [data-group-progress] {display:block;padding-left:18px;color:var(--gray-500);font-size:12px;font-weight:500;}
.daily-inline-form .daily-check {border:0;border-top:1px solid var(--gray-200);border-radius:0;margin:0;padding:12px 0;}
.daily-inline-form .daily-check legend {font-size:14px;font-weight:650;padding:4px 0;}
.daily-inline-form .daily-options {display:flex;flex-wrap:wrap;gap:6px;}
.daily-inline-form .daily-options label {padding:4px 9px;border:1px solid var(--gray-200);border-radius:8px;font-size:14px;min-height:44px;box-sizing:border-box;}
.daily-inline-form .daily-options label:has(input:checked) {border-color:var(--orange);background:var(--orange-light);}
.daily-inline-form .daily-options label:has(input[value="fault"]:checked) {border-color:var(--red);background:var(--red-light);}
.daily-inline-form .daily-note summary,.daily-inline-form .daily-guide summary {font-size:13px;font-weight:500;padding:10px 0;color:var(--gray-500);}
.daily-inline-form .daily-progress-bar {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:14px 0;font-size:14px;}
.daily-inline-form .daily-progress-bar button {font-size:13px;padding:8px 10px;}

/* Clear hierarchy: vehicle and date, checks, confirmation, then history. */
#daily-mobile .daily-overview{margin:0 0 14px}
#daily-mobile .daily-vehicle{margin:0;font-size:15px;font-weight:700;color:var(--black)}
#daily-mobile .daily-date{margin:3px 0 12px;font-size:13px;color:var(--gray-500)}
#daily-mobile .daily-status{margin:0;padding:10px 12px;font-size:14px;line-height:1.45;font-weight:600;border-radius:8px}
#daily-mobile .daily-pending{background:var(--orange-light,#fff2e6);color:#854000;border-left:3px solid var(--orange)}
#daily-mobile .daily-history-footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--gray-200)}
#daily-mobile .daily-history-footer button{width:100%;font-size:14px;background:var(--gray-100);min-height:44px}
#daily-mobile .daily-guide{padding:0 0 10px;border-bottom:1px solid var(--gray-200);margin-bottom:12px}
#daily-mobile .daily-guide summary{padding:8px 0;font-size:13px}
#daily-mobile .daily-guide p{font-size:13px;margin:8px 0;color:var(--gray-500)}
#daily-mobile .daily-fields label{font-size:13px;font-weight:600;margin:8px 0}
#daily-mobile .daily-inline-form h3{margin:20px 0 8px;font-size:16px}
#daily-mobile .daily-inline-form h3+p{font-size:13px;color:var(--gray-500);margin:0 0 12px}
#daily-mobile .daily-confirm{font-size:14px;line-height:1.5;border:1px solid var(--gray-200)}
#daily-mobile .daily-muted{font-size:12px;line-height:1.5}
#daily-mobile .daily-actions{margin-bottom:0}

#daily-mobile .daily-equipment-marking{display:block;font-size:13px;font-weight:400;color:var(--gray-500);padding-left:18px;margin-top:3px}
#daily-mobile .daily-equipment-capacity{font-size:13px;color:var(--gray-500);margin:0 0 12px;line-height:1.5}

#daily-mobile [hidden]{display:none!important}
#daily-mobile .daily-review-list{padding-left:19px;margin:0 0 12px;font-size:14px;line-height:1.5;color:var(--black)}
#daily-mobile .daily-review-list li{margin:0 0 9px}
#daily-mobile .daily-group-actions button{width:100%;min-height:46px;background:var(--orange-dark);border-color:var(--orange-dark);color:white}
#daily-mobile .daily-group-actions button:disabled{opacity:1;background:var(--gray-100);border-color:var(--gray-200);color:var(--gray-500)}
#daily-mobile .daily-group-details>summary,#daily-mobile .daily-optional>summary{font-size:13px;font-weight:600;color:var(--gray-500);padding:12px 0}
#daily-mobile .daily-driver{font-size:13px;color:var(--gray-500);margin:0 0 6px}
#daily-mobile .daily-optional{margin:0 0 8px}

#daily-mobile .daily-inline-form .daily-actions{display:flex;flex-direction:column;gap:14px;margin-top:18px}
#daily-mobile .daily-inline-form .daily-actions button{flex:none;width:100%;min-height:48px}
#daily-mobile .daily-inline-form .daily-actions button[type=submit]{background:var(--orange-dark);border-color:var(--orange-dark);color:var(--white);font-size:16px}
#daily-mobile .daily-inline-form .daily-actions #daily-draft{background:transparent;border-color:var(--gray-200);color:var(--gray-500);font-size:14px}

#daily-mobile .daily-inline-form label.daily-confirm{display:flex;align-items:flex-start;gap:10px;text-align:left}
#daily-mobile .daily-inline-form .daily-confirm input[type=checkbox]{display:block;flex:0 0 20px;width:20px;height:20px;margin:2px 0 0;padding:0}
