/* Mobile-only duty roster — weekly viewport, original action handlers unchanged. */
.mobile-duty-view{display:none}
@media(max-width:680px){
 body{padding:8px!important}
 .duty-app{gap:9px!important}
 .duty-toolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important;padding:9px!important}
 .duty-toolbar>.control,.duty-toolbar>.search{width:100%!important;min-width:0!important;max-width:100%;flex:none!important;height:44px!important}
 .duty-toolbar .search{grid-column:1/-1}
 .duty-toolbar .search input{width:100%;min-width:0}
 .duty-toolbar #slotsControl{grid-column:1}
 .duty-toolbar #refreshBtn{grid-column:2;min-width:0;height:44px}
 .duty-toolbar #randomizeBtn{grid-column:1/-1;min-height:44px;width:100%}
 .duty-toolbar #settingsBtn{min-height:44px;min-width:44px}
 .duty-toolbar #syncState{grid-column:1/-1;margin:0}
 .summary-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}
 .summary-card{min-width:0;padding:9px 6px!important;overflow-wrap:anywhere}
 .summary-card span{font-size:9px!important;line-height:1.2}
 .summary-card strong{font-size:19px!important}
 .mobile-duty-view{display:grid;grid-template-columns:42px minmax(0,1fr) 42px auto;align-items:center;gap:6px;padding:8px}
 .mobile-duty-view>span{text-align:center;font-weight:800;font-size:12px}
 .mobile-duty-view button{min-height:42px;min-width:0;padding:0 8px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:800;cursor:pointer}
 .mobile-duty-view button:first-child,.mobile-duty-view button:nth-of-type(2){font-size:23px}
 .mobile-duty-view button[aria-pressed="true"]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
 .mobile-duty-view button:disabled{opacity:.38}
 .schedule-head{gap:8px!important;padding:11px!important}
 .schedule-head>.legend{gap:6px;flex-wrap:wrap}
 .schedule-card{min-width:0;max-width:100%}
 .table-scroll{max-width:100%;min-width:0;overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
 .duty-table th:first-child,.duty-table td:first-child{min-width:125px!important;width:125px!important;max-width:125px!important;position:sticky!important;left:0!important}
 .duty-table .person-cell{min-width:0;gap:5px}
 .duty-table .person-name{white-space:normal;overflow-wrap:anywhere;font-size:10px}
 .duty-table .person-department{font-size:8px}
 .duty-table .avatar,.duty-table .avatar-fallback{width:22px;height:22px}
 .duty-table th:not(:first-child),.duty-table td.duty-cell{min-width:40px;width:40px}
 .duty-table .mobile-duty-outside-week{display:none!important}
 .settings-dialog{width:calc(100vw - 16px)!important;max-height:90dvh!important;overflow:auto}
 .eligibility-grid{grid-template-columns:minmax(0,1fr)!important}
 .eligibility-head{flex-wrap:wrap;gap:8px}
 .eligibility-actions{width:100%;justify-content:space-between}
 .eligibility-actions button{min-height:44px}
}
