:root{--sw-rail:78px}
body{background:#f4f6f4}
#admin-global-nav{display:none!important}
.sw-command-rail{position:fixed;z-index:60;inset:0 auto 0 0;width:var(--sw-rail);display:flex;flex-direction:column;align-items:center;gap:10px;border-right:1px solid #cfe0da;background:#e7f3ef;padding:12px 8px}
.sw-rail-brand{display:grid;width:50px;height:50px;place-items:center;border-radius:14px;background:#6fc4b4;color:#163f36;font-size:14px;font-weight:950;text-decoration:none}
.sw-command-rail nav{display:grid;width:100%;gap:6px}
.sw-command-rail nav a{display:grid;min-height:54px;place-items:center;gap:1px;border-radius:12px;color:#25594e;padding:5px 2px;text-decoration:none}
.sw-command-rail nav a:hover,.sw-command-rail nav a.active{background:#bfe5dc;color:#123f35}
.sw-command-rail nav span{font-size:19px;font-weight:900;line-height:1}
.sw-command-rail nav b{font-size:12px;line-height:1.15}
.sw-header{display:none!important}
.sw-shell{width:auto!important;max-width:none!important;margin-left:var(--sw-rail)!important;padding:8px 10px 24px!important}
.sw-datebar{border:1px solid #d9e1dd!important;border-radius:14px!important;background:#fff!important}
.staff-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
.staff-work-calendar{overflow:hidden;border:1px solid #d9e1dd;border-radius:14px;background:#fff}
.staff-work-calendar>header{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid #d9e1dd}
.staff-work-calendar>header p{margin:0;color:#347062;font-size:10px;font-weight:900;letter-spacing:.14em}
.staff-work-calendar>header h2{margin:2px 0 0;color:#182d27;font-size:22px}
.staff-work-calendar>header span{color:#64756f;font-size:13px;font-weight:750}
.work-calendar-scroll{max-height:520px;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.work-calendar-grid{display:grid;min-width:760px;grid-template-columns:58px minmax(0,1fr)}
.work-calendar-times{position:relative;border-right:1px solid #dce4e0;background:#fbfcfb}
.work-calendar-times span{position:absolute;right:8px;transform:translateY(-50%);color:#6b7874;font-size:11px;font-weight:750}
.work-calendar-staff{display:grid;grid-template-columns:repeat(var(--staff-count),minmax(92px,1fr))}
.work-calendar-column{min-width:0;border-right:1px solid #e0e7e3}
.work-calendar-column:last-child{border-right:0}
.work-calendar-column>header{position:sticky;z-index:3;top:0;display:grid;height:48px;place-items:center;border-bottom:1px solid #dce4e0;background:#fbfcfb;color:#203c34;font-size:15px;font-weight:950}
.work-calendar-track{position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 23px,#e9eeeb 24px)}
.work-calendar-column:nth-child(odd)>header{background:#fbfcfb}.work-calendar-column:nth-child(odd) .work-calendar-track{background-color:#fbfcfb}.work-calendar-column:nth-child(even)>header{background:#eaf2ee}.work-calendar-column:nth-child(even) .work-calendar-track{background-color:#f0f6f3}
.staff-work-event{position:absolute;z-index:1;left:4px;right:4px;display:grid;align-content:start;gap:2px;overflow:hidden;border:2px solid #9bb7ae;border-radius:9px;background:#edf5f1;color:#263d36;padding:6px;box-shadow:0 2px 6px rgba(24,50,42,.08)}
.staff-work-event.odd{border-color:#8eafa4;background:#e7f1ec}
.staff-work-event.even{border-color:#aeb9b5;background:#f0f3f1}
.staff-work-event strong{font-size:13px;line-height:1.1}
.staff-work-event span{font-size:11px;font-weight:800;line-height:1.1}
.staff-work-event small{overflow:hidden;color:#5f6f69;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.staff-work-event em{display:inline-flex;width:max-content;max-width:100%;border-radius:999px;background:#fff6e8;color:#81470d;padding:2px 5px;font-size:9px;font-style:normal;font-weight:900}
.work-calendar-now{position:absolute;z-index:2;left:0;right:0;border-top:2px solid #bf4938;pointer-events:none}
.work-calendar-now:before{content:'现在';position:absolute;top:-10px;left:2px;border-radius:8px;background:#bf4938;color:#fff;padding:2px 5px;font-size:9px;font-weight:900}
.staff-summary-grid{border:1px solid #d9e1dd!important;border-radius:14px!important;background:#fff!important;padding:10px!important}
.selected-staff-detail{border:1px solid #d9e1dd!important;border-radius:14px!important;background:#fff!important}
@media(max-width:767px){:root{--sw-rail:62px}.sw-command-rail{padding-inline:5px}.sw-command-rail nav a{min-height:48px}.sw-command-rail nav b{font-size:10px}.sw-shell{padding-inline:6px!important}.staff-work-calendar>header{align-items:start;flex-direction:column}.work-calendar-scroll{max-height:460px}}
