.mobile-page.overtime-page .ot-band { padding: 0; border: 0; }
.mobile-page.overtime-page .brandbar { flex-direction: row; align-items: center; }
.mobile-page.overtime-page .ot-heading { margin: 20px 0 18px; }
.mobile-page.overtime-page .ot-heading h1 { font-size: 23px; }
.mobile-page.overtime-page .ot-tabs { gap: 22px; margin: 20px 0 16px; }
.mobile-page.overtime-page .ot-tabs button { border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: transparent; color: var(--muted); padding: 10px 0; font-size: 15px; }
.mobile-page.overtime-page .ot-tabs button[aria-selected="true"] { color: var(--green); border-color: var(--green); }
.mobile-page.overtime-page .ot-query { display: grid; grid-template-columns: minmax(0, 1fr) 46px 46px; gap: 8px; }
.mobile-page.overtime-page .ot-query > * { grid-area: auto; }
.mobile-page.overtime-page .ot-search-field { position: relative; min-width: 0; }
.mobile-page.overtime-page .ot-search-field input { padding-right: 46px; }
.mobile-page.overtime-page .ot-search-field input::-webkit-search-cancel-button { display: none; }
.mobile-page.overtime-page #clearKeywordBtn { position: absolute; right: 1px; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; min-height: 44px; padding: 12px; border: 0; background: transparent; }
.mobile-page.overtime-page .ot-applied-filters { display: flex; align-items: flex-start; gap: 8px 16px; flex-wrap: wrap; padding: 10px 0; border-bottom: 1px solid var(--line); }
.mobile-page.overtime-page .ot-applied-filters p { flex: 1 1 170px; min-width: 0; margin: 0; font-size: 13px; line-height: 1.7; color: var(--blue); overflow-wrap: anywhere; }
.mobile-page.overtime-page .ot-applied-filters button { flex: 0 0 auto; min-height: 44px; padding: 8px 10px; color: var(--blue); }
.mobile-page.overtime-page .ot-empty-state { padding: 24px 0; text-align: center; }
.mobile-page.overtime-page .ot-empty-state p { margin: 0 0 14px; color: var(--muted); font-size: 14px; }
.mobile-page.overtime-page .ot-empty-state button { min-height: 44px; color: var(--blue); }
.mobile-page.overtime-page .ot-summary-line { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 16px 0; }
.mobile-page.overtime-page .ot-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 0; flex: 1; min-width: 0; font-size: 12px; color: var(--muted); }
.mobile-page.overtime-page .ot-summary strong { display: block; font-size: 16px; color: var(--ink); margin: 2px 0 0; overflow-wrap: anywhere; }
.ot-record-code { color: var(--blue) !important; font-size: 13px !important; font-weight: 600; margin: 0 0 4px !important; }
.mobile-page.overtime-page .ot-records { border: 0; }
.mobile-page.overtime-page .ot-row { grid-template-columns: minmax(0, 1fr); background: white; padding: 16px; border: 1px solid var(--line); border-radius: 6px; margin-bottom: 12px; gap: 12px; }
.mobile-page.overtime-page .ot-row h3 { font-size: 16px; }
.mobile-page.overtime-page .ot-row-actions { justify-content: space-between; border-top: 1px solid #edf0f2; padding-top: 8px; }
.mobile-page.overtime-page .ot-row-actions button { font-size: 14px; min-height: 44px; color: var(--blue); padding: 8px 12px; }
.ot-active-records:empty { display: none; }
.ot-active-records > h2 { font-size: 15px; margin-bottom: 10px; }
.mobile-page.overtime-page .ot-active-records .ot-row { border-left: 3px solid var(--blue); }
.mobile-page.overtime-page .ot-active-records .ot-row-actions button { color: white; background: var(--green); border-color: var(--green); }
.mobile-page.overtime-page .ot-active-records .ot-row-actions button img { filter: brightness(0) invert(1); }
.mobile-page.overtime-page.detail-open > .shell > .brandbar, .mobile-page.overtime-page.detail-open .mobile-nav { display: none; }
.mobile-page.overtime-page #detailView > .ot-heading { padding: 12px 0; margin: 0; border-bottom: 1px solid var(--line); }
.mobile-page.overtime-page #detailView > .ot-heading h1 { font-size: 19px; }
.mobile-page.overtime-page #detailView > .ot-heading { gap: 8px; }
.mobile-page.overtime-page #detailView > .ot-heading h1 { flex: 1; min-width: 0; }
.mobile-page.overtime-page #deleteRecordBtn { flex: 0 0 44px; }
.mobile-page.overtime-page .ot-danger { background: #b33232; border-color: #b33232; color: white; }
.mobile-page.overtime-page .ot-danger img { filter: brightness(0) invert(1); }
#deleteRecordInfo { overflow-wrap: anywhere; }
.ot-record-summary { padding: 18px 0; }
.ot-record-summary p { font-size: 14px; margin: 8px 0 0; color: var(--muted); }
.mobile-page.overtime-page #recordActions { margin: 0 0 18px; }
.mobile-page.overtime-page #recordActions button { flex: 1; background: var(--green); color: white; border-color: var(--green); }
.mobile-page.overtime-page #recordActions button img { filter: brightness(0) invert(1); }
.mobile-page.overtime-page .ot-action-section { padding: 20px 0; gap: 16px; }
.mobile-page.overtime-page .ot-location-head { flex-direction: column; align-items: flex-start; gap: 8px; }
.mobile-page.overtime-page #locationAddress { background: #edf3f8; border-left: 3px solid var(--blue); padding: 12px; }
.mobile-page.overtime-page #locationAddress dd { font-size: 16px; font-weight: 600; }
.mobile-page.overtime-page #positionInfo { font-size: 12px; color: var(--muted); }
.mobile-page.overtime-page .ot-range { font-size: 14px; }
.mobile-page.overtime-page .ot-history { padding: 20px 0; }
.mobile-page.overtime-page .ot-history h2 { font-size: 16px; }
.mobile-page.overtime-page .ot-action-section > h2 { font-size: 18px; margin: 0; }
.mobile-page.overtime-page .ot-photo button { width: 44px; height: 44px; min-height: 44px; padding: 11px; right: 0; top: 0; }
.mobile-page.overtime-page .ot-photo .photo-retry { position: static; margin-top: 6px; }
.mobile-page.overtime-page .ot-photo > .photo-preview { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; position: static; padding: 0; }
.mobile-page.overtime-page .ot-photo .photo-preview img { width: 100%; height: 100%; object-fit: contain; filter: none; }
.mobile-page.overtime-page .ot-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mobile-page.overtime-page .ot-filter-fields { display: grid; gap: 18px; padding-top: 18px; }
.mobile-page.overtime-page .dialog-actions { display: flex; gap: 12px; }
.mobile-page.overtime-page .dialog-actions button { flex: 1; }
.mobile-page.overtime-page .ot-dialog .ot-heading { margin: 0; }
.mobile-page.overtime-page .ot-dialog .ot-heading h2 { font-size: 19px; }
.mobile-page.overtime-page .ot-camera video { max-height: 60dvh; }
.mobile-page.overtime-page .ot-actions.action-dock { margin: 0; }
.mobile-page.overtime-page #message { position: sticky; top: 0; z-index: 5; }
.mobile-page.overtime-page #message:not(:empty) { margin-top: 12px; }
.mobile-page.overtime-page .ot-status { white-space: normal; flex-shrink: 0; }
.mobile-page.overtime-page .filter-active { border-color: var(--blue); background: #eaf2f9; }
@media (max-width: 380px) {
  .mobile-page.overtime-page .ot-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 12px; }
  .mobile-page.overtime-page .ot-facts { grid-template-columns: minmax(0, 1fr); }
}
