.staff-app .staff-wrap{margin:32px auto;padding:0;min-width:0}
.staff-app .staff-dashboard{width:calc(100% - 64px);max-width:1760px}
.staff-app .staff-login{width:calc(100% - 40px);max-width:560px;margin-top:64px}
.staff-app .staff-wrap>.panel{padding:32px;min-width:0;border-radius:12px}
.staff-app h1{font-size:36px;line-height:1.2;margin:0 0 24px}
.staff-app h2{font-size:26px;line-height:1.3;margin:28px 0 12px}
.staff-app p{max-width:1100px}
.staff-app .site-footer .site-credit{max-width:none;text-align:center}
.staff-app .staff-dashboard{max-width:1200px}
.staff-appointments-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;background:#fff}
.staff-appointments-table caption{text-align:left;padding:10px 12px;color:#665c50;font-size:12px}
.staff-appointments-table th,.staff-appointments-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e8e2da;vertical-align:middle;overflow-wrap:anywhere}
.staff-appointments-table th{background:#f5efe6;font-size:12px}
.staff-appointments-table th:last-child{width:22%}
.staff-appointments-table tbody tr:hover{background:#faf7f2}
.staff-appointment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.staff-appointment-actions form{margin:0}
body.staff-app .staff-appointment-actions button,.staff-whatsapp{display:inline-block;font-size:12px;padding:8px 10px;letter-spacing:0;text-transform:none;border-radius:5px}
.staff-whatsapp{background:#21633b;color:#fff}
.staff-whatsapp:hover{background:#174a2b;color:#fff}
.staff-status{display:inline-block;padding:4px 7px;border-radius:5px;font-size:12px}
.staff-status-pending{background:#fff1d5;color:#805400}
.staff-status-confirmed{background:#e4f4e8;color:#215d35}
.staff-status-rescheduled{background:#f1e8fc;color:#69438a}
.staff-schedule{margin:24px 0}
.staff-schedule>summary{cursor:pointer;font-weight:600;padding:12px 0}
#upcoming-appointments{scroll-margin-top:20px}
@media(max-width:700px){.staff-appointments-table{min-width:780px}.staff-appointments-scroll{margin-bottom:20px}}
@media(min-width:701px) and (max-width:1200px){
    .staff-app .staff-dashboard{width:calc(100% - 40px)}
    .staff-app .staff-wrap>.panel{padding:22px}
    .staff-app .staff-hours-table{table-layout:auto;min-width:980px}
    .staff-app .staff-hours-table th,.staff-app .staff-hours-table td{min-width:110px;padding:7px}
    .staff-app .staff-hours-table input,.staff-app .staff-hours-table select{min-width:100px;padding:8px 4px}
}
@media(min-width:701px) and (max-height:650px){
    .staff-app .staff-login{margin-top:24px;margin-bottom:24px}
    .staff-app .staff-wrap>.panel{padding:22px}
    .staff-app h1{font-size:30px;margin-bottom:16px}
}
.staff-table-scroll{overflow-x:auto;margin:18px 0 32px;border:1px solid #ddd;border-radius:10px;max-width:100%}
.staff-hours-table{border-collapse:collapse;width:100%;min-width:1080px;background:#fff;color:#292624;font-size:14px}
.staff-hours-table caption{text-align:left;padding:14px;font-weight:600}
.staff-hours-table th,.staff-hours-table td{padding:10px;border:1px solid #e8e2da;text-align:center;min-width:130px}
.staff-hours-table thead th{background:#f5efe6}
.staff-hours-table tbody th{position:sticky;left:0;background:#f5efe6;text-align:left;z-index:1}
.staff-hours-table input,.staff-hours-table select{width:100%;min-width:120px;margin:0;box-sizing:border-box}
.staff-app .staff-hours-table button{display:block;width:100%;margin:4px 0;font-size:13px;padding:10px;letter-spacing:0;text-transform:none;border-radius:4px}
.staff-footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:20px}
.staff-footer-links a{border:1px solid currentColor;border-radius:6px;padding:8px 16px}
@media(min-width:1200px){.staff-dashboard .staff-hours-table{table-layout:fixed}.staff-hours-table input,.staff-hours-table select{padding:10px 6px}}
@media(max-width:700px){.staff-app .staff-dashboard{width:calc(100% - 24px)}.staff-app .staff-wrap{margin-top:16px}.staff-app .staff-wrap>.panel{padding:18px}.staff-app h1{font-size:28px}.staff-app h2{font-size:22px}}
