.wfh{max-width:1200px}.wfh .dashboard-card{padding:18px}.wfh form{display:grid;gap:12px;margin:16px 0;max-width:680px}.wfh label{display:grid;gap:5px;font-size:14px}.wfh input,.wfh select{box-sizing:border-box;min-width:0;max-width:100%;min-height:44px;border:1px solid #bdcec3;border-radius:9px;padding:9px;background:white;font:inherit}.wfh .wfh-check{display:flex;align-items:center}.wfh fieldset{border:1px solid #dce5df;border-radius:10px}.wfh button{min-height:44px}.wfh-row{display:flex!important;flex-wrap:wrap;align-items:end}.wfh-row label{flex:1;min-width:120px}.wfh-shift{display:flex;flex-direction:column;gap:5px;border:1px solid #d5e3da;border-left:4px solid var(--role-color,#126246);background:var(--role-bg,#f5f9f6);border-radius:10px;padding:12px;margin:10px 0;overflow-wrap:anywhere}.wfh-scroll{overflow:auto}.wfh table{width:100%;min-width:500px;border-collapse:collapse;text-align:left}.wfh td,.wfh th{border-bottom:1px solid #dce5df;padding:12px}.wfh-muted{font-size:12px;color:#60766b}.wfh details>summary{cursor:pointer;min-height:44px;line-height:44px}.wfh [role=status]{overflow-wrap:anywhere}@media(max-width:767px){.wfh{padding-inline:10px!important}.wfh .dashboard-card{padding:14px!important}}
/* Use the planner's shared day, time-group and name-row layout for employees. */
.wfp-team .wfp-team-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px}
.wfp-team .wfp-mobile-site{min-width:0}.wfp-team .wfp-mobile-site h1{font-size:22px;margin:0 0 5px}.wfp-team .wfp-site-label select{max-width:260px;width:100%}
.wfp-team .wfp-mobile-week-tools{display:flex;align-items:center;gap:8px}.wfp-team .wfp-week-picker{min-width:100px}
.wfp-team .wfp-team-options>div{width:290px;max-width:calc(100vw - 20px)}.wfp-team .wfp-team-filters{display:grid;gap:10px;padding:8px}.wfp-team .wfp-team-filters label{display:grid;gap:5px;font-size:12px}.wfp-team .wfp-team-filters input[type=search]{width:100%;min-width:0}.wfp-team .wfp-team-filters>.wfp-team-check{display:flex;align-items:center;gap:8px;min-height:42px}.wfp-team .wfp-team-check input{width:18px;height:18px;min-height:18px;padding:0}
.wfp-team .wfp-team-menu-dot{display:none}.wfp-team .wfp-team-week-heading{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:8px 0 12px}.wfp-team .wfp-team-week-heading h2{margin:0;font-size:21px}.wfp-team .wfp-team-today{border-radius:22px;background:#f4f8f5;padding:7px 16px}
.wfp-team .wfp-day-column-heading{min-height:44px}.wfp-team .wfp-day-column-heading time{font-size:12px;font-weight:600}.wfp-team .wfp-day-shifts{min-height:160px}
.wfp-team .wfp-team-card{cursor:default;padding:6px 9px!important}.wfp-team .wfp-team-card.wfp-team-mine{background:#f0f7f1!important}.wfp-team .wfp-team-own-label{font-size:10px;font-weight:600;color:#245b3a;margin-left:13px}.wfp-team .wfp-team-no-shifts{padding:10px;border-radius:8px;background:#f2f6f2}
@media(max-width:767px){.wfp-team .wfp-team-toolbar{margin-bottom:12px}.wfp-team .wfp-team-toolbar .wfp-mobile-site h1{font-size:17px!important}.wfp-team .wfp-week-controls{gap:4px}.wfp-team .wfp-week-controls>button{min-width:32px;min-height:40px;padding:5px}.wfp-team .wfp-week-picker{min-width:86px;font-size:12px}.wfp-team .wfp-team-desktop-label{display:none}.wfp-team .wfp-team-menu-dot{display:inline}.wfp-team .wfp-team-filters input[type=search]{font-size:16px}.wfp-team .wfp-day-column-heading time{font-size:12px}.wfp-team .wfp-day-total small{font-size:9px}.wfp-team .wfp-day-total b{font-size:10px}}
/* Exchange forms share the portal controls without widening mobile calendars. */
.wfx-entry{padding:8px 0}.wfx-panel{margin:8px 0!important;padding:16px!important}.wfx-heading,.wfx-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wfx-heading{justify-content:space-between}.wfx-panel h2{font-size:20px!important;margin:0!important}.wfx-panel form{display:grid;gap:12px;margin:18px 0}.wfx-panel label{display:grid;gap:6px;font-size:14px}.wfx-panel select{width:100%;min-width:0;max-width:100%;font-size:14px;min-height:44px}.wfx-panel button{min-height:40px!important}.wfx-panel p,.wfx-request{overflow-wrap:anywhere}.wfx-request{border-top:1px solid #dce5df;padding:14px 0}.wfx-actions>span{font-size:12px}.wfx-panel [role=alert]{padding:10px;background:#fff4eb;border:1px solid #e8c9a8;border-radius:6px}
