/* Shared mobile usability for every role and operational module. */
html{scroll-padding-top:180px}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #77bfff;outline-offset:2px}.mobile-table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.mobile-table-wrap table{min-width:640px}.mobile-table-hint{font-size:.8rem;color:var(--muted);margin:4px 0 8px}.pwa-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pwa-status{font-size:.8rem;color:var(--muted)}.mobile-table-hint{display:none}
@media(max-width:760px){
 body{overflow-x:hidden}.topbar{position:relative!important;padding:12px!important;padding-top:max(12px,env(safe-area-inset-top))!important}.top-controls{width:100%!important;gap:8px!important}.top-controls label{max-width:100%;min-width:0}.top-controls select,.top-controls input{min-height:44px!important;max-width:100%}.session-box{max-width:100%;flex-wrap:wrap}.session-box span{overflow-wrap:anywhere}.pwa-actions{width:100%;justify-content:space-between}.pwa-actions .btn{min-height:44px}.app-shell{min-height:calc(100dvh - 120px)}main{width:100%;padding:12px!important;padding-bottom:calc(20px + env(safe-area-inset-bottom))!important}.head{flex-direction:column!important;gap:8px!important}.head h1{font-size:1.55rem!important;line-height:1.3;overflow-wrap:anywhere}.head .toolbar{margin:0;max-width:100%}.grid,.grid.two,.grid.three,.split,.form-grid{grid-template-columns:1fr!important}.card,.panel,.section{min-width:0;max-width:100%}.panel{padding:14px!important}.toolbar{gap:8px!important}.toolbar .btn{white-space:normal;line-height:1.3}.btn,button,input:not([type=checkbox]):not([type=radio]),select{min-height:44px!important}.field input,.field select,.field textarea{font-size:16px!important;min-width:0;max-width:100%}.field label,.field>span{line-height:1.4}.field textarea{min-height:104px}.field input[type=file]{height:auto;white-space:normal;font-size:14px!important}input[type=checkbox],input[type=radio]{width:22px!important;height:22px!important;min-height:22px!important;flex:0 0 22px}label{overflow-wrap:anywhere}.search{min-width:0!important;width:100%}.table-wrap,.mobile-table-wrap{max-width:100%;overflow-x:auto!important;max-height:none!important}.table-wrap table{min-width:640px}.table-wrap td,.mobile-table-wrap td{min-width:80px;overflow-wrap:break-word}.table-wrap th,.mobile-table-wrap th{position:static!important;white-space:normal}.mobile-table-hint{display:block}.modal-card{margin:12px auto!important;width:calc(100% - 20px)!important;max-height:calc(100dvh - 24px)!important;padding:42px 14px 18px!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important}.modal-close{width:44px;height:44px;top:0!important;right:0!important}.qa-check-row{grid-template-columns:minmax(0,1fr) 64px 64px!important;gap:5px!important}.qa-choice{padding:8px 4px!important;font-size:.85rem;min-height:44px}.qa-choice input{width:18px!important;height:18px!important;flex-basis:18px}.account-card{grid-template-columns:1fr!important;gap:8px!important}.summary-line{gap:12px;align-items:flex-start;flex-wrap:wrap}.statline{gap:10px}.toast{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:calc(100% - 24px);overflow-wrap:anywhere}.contract-paper{padding:14px!important;max-width:100%;overflow-x:auto}.legal-section{max-width:100%;min-width:0}details>summary{min-height:44px;padding:10px 0;cursor:pointer}#nav{padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}#nav button{min-height:48px!important;white-space:normal!important}.login-overlay{padding:10px;align-items:center}.login-card{max-height:calc(100dvh - 20px)!important;overflow-y:auto!important}.pax-edit-line{gap:8px}.pax-edit-line input{width:100%;max-width:150px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.pwa-actions,.mobile-table-hint{display:none!important}.mobile-table-wrap{overflow:visible!important}.mobile-table-wrap table{min-width:0!important}}
.pwa-settings,.pwa-settings-content{display:contents}.pwa-settings>summary{display:none}
@media(max-width:760px){.top-controls{flex-wrap:wrap!important;overflow:visible!important;justify-content:flex-start!important;flex:1 1 auto!important}.top-controls>.session-box,.top-controls>label:has(#workDate),.top-controls>.pwa-actions,.top-controls>.pwa-settings{flex:0 0 100%!important;min-width:0!important}.top-controls .session-box{min-width:0!important}.top-controls #workDate{width:100%}}
@media(max-width:760px){.pwa-settings{display:block;width:100%;order:4;border-top:1px solid #29425a}.pwa-settings>summary{display:list-item;font-size:.85rem;color:var(--muted);min-height:44px}.pwa-settings-content{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0}.pwa-settings:not([open]) .pwa-settings-content{display:none}.pwa-settings-content label{flex:1 1 130px}.top-controls>.session-box{width:100%;order:1;justify-content:space-between}.top-controls>label:has(#workDate){width:100%;order:2}.top-controls>.pwa-actions{order:3}.qa-check-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;min-inline-size:0;gap:10px!important}.qa-check-row label{display:flex;align-items:center;gap:6px;font-size:.85rem;line-height:1.4;min-height:48px;min-width:0}.qa-check-row legend{max-width:100%;line-height:1.4;font-size:.9rem}.qa-check-row input{width:20px!important;height:20px!important;flex:0 0 20px}.modal-card{height:auto!important}}
