/* Shared phone layouts; print reports retain their own page dimensions. */
.confirmation-symbol{display:grid;place-items:center;width:48px;height:48px;margin-bottom:16px;border-radius:15px;background:#edf4e8;color:#3c6a32;font-size:25px;font-weight:700}.confirmation-symbol.is-danger{background:#fff0ed;color:#ae3c2c}.modal-body p{line-height:1.7;margin:0}.modal-footer .btn{min-height:44px}.modal-close{min-width:44px;min-height:44px}.modal-backdrop{padding:16px;overflow-y:auto}.modal{width:calc(100% - 32px);max-width:480px;max-height:calc(100dvh - 32px);display:flex;flex-direction:column}.modal-body{overflow-y:auto;min-height:0;overflow-wrap:anywhere}.modal-header,.modal-footer{flex-shrink:0}.modal-header h3{overflow-wrap:anywhere}.page-content,.card,.card-body,.form-card-clean,.form-group{min-width:0}.table-responsive,.table-container{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
@media screen and (max-width:640px){
.main-content{width:100%;min-width:0}.page-content{padding:16px!important}.topbar{padding:12px 16px;gap:10px;height:auto;min-height:64px;flex-wrap:wrap}.topbar-title{min-width:0;flex:1}.topbar-title h1{font-size:18px;overflow-wrap:anywhere}.topbar-actions{margin-left:auto;flex-wrap:wrap}.topbar-date{font-size:11px;padding:7px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.page-header h2{font-size:22px;overflow-wrap:anywhere}.page-header>form,.page-header>.btn{width:100%}.page-header>form>.btn{width:100%}.card-body,.form-card-body{padding:18px}.form-row,.form-row.form-row-3,.settings-grid,.labor-page .form-grid{grid-template-columns:minmax(0,1fr)!important}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select,.form-group textarea{max-width:100%;min-width:0;font-size:16px}.form-control{min-height:44px}.filter-grid{flex-wrap:wrap}.filter-grid>.form-group{flex-basis:100%}.search-box{min-width:0;width:100%}.search-box input{min-width:0;width:100%}.btn{min-height:44px;white-space:normal}.table-actions{gap:8px}.table-actions .btn{white-space:nowrap}.form-actions,.form-actions-toolbar{display:flex;flex-wrap:wrap;gap:10px}.form-actions>.btn,.form-actions-toolbar>.btn{flex:1 1 140px}.modal{width:100%;border-radius:18px}.modal-header,.modal-body,.modal-footer{padding:18px}.modal-header h3{font-size:20px}.modal-footer{display:flex;flex-wrap:wrap;gap:10px}.modal-footer>.btn{flex:1 1 120px;margin:0}.toast-container{left:12px;right:12px;bottom:12px;width:auto;max-width:none}.toast{min-width:0;max-width:100%;overflow-wrap:anywhere}.app-footer{flex-wrap:wrap;overflow-wrap:anywhere}.sidebar .nav-link{min-height:44px}.sidebar .btn-logout,.mobile-menu-close,.topbar-toggle{min-width:44px;min-height:44px}.login-form-wrapper{max-width:100%;min-width:0}.pagination{flex-wrap:wrap;gap:6px}
}
@media(prefers-reduced-motion:reduce){.modal,.toast{animation:none!important;transition:none!important}}

/* Compact confirmations, independent of the viewport width. */
#globalModal{width:100%;max-width:480px;border-radius:18px;box-shadow:0 20px 65px #142d2030;outline:none}
#globalModal:focus-visible{outline:none}
#globalModal .modal-header{padding:22px 24px 8px;border-bottom:0;border-radius:18px 18px 0 0}
#globalModal .modal-header h3{font-size:20px;line-height:1.4}
#globalModal .modal-close{border-radius:50%;font-size:24px}
#globalModal .modal-close:hover{background:#f2f5f0}
#globalModal .modal-body{padding:8px 24px 24px;font-size:14px;color:#58655b}
#globalModal .confirmation-symbol{display:none}
#globalModal .modal-footer{padding:16px 24px;background:#fafbf9;gap:10px;border-top:1px solid #edf0e9;border-radius:0 0 18px 18px}
#globalModal .modal-footer .btn{box-shadow:none;border-radius:10px;padding:10px 18px;font-size:13px}
@media screen and (max-width:480px){#globalModal .modal-header{padding:18px 18px 6px}#globalModal .modal-body{padding:8px 18px 20px}#globalModal .modal-footer{padding:14px 18px}#globalModal .modal-footer>.btn{flex:1 1 100px}}
