.rs-heading,.rs-work-heading,.rs-toolbar,.rs-calendar-toolbar,.rs-actions,.rs-pagination,.rs-record-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rs-heading{justify-content:space-between;margin-bottom:24px}
#section-rescheduling{scroll-margin-top:calc(var(--rs-nav-offset,0px) + 12px)}
#section-rescheduling .rs-deadline{top:var(--rs-nav-offset,0px)}
body:has(#section-rescheduling.active) #onboarding-panel{display:none!important}
.rs-work-heading{padding-block:12px;border-bottom:1px solid #dce2e9}
.rs-toolbar{margin-block:18px}
.rs-toolbar .input-group{flex:1;min-width:180px;max-width:440px}
.rs-toolbar .form-select{width:auto;max-width:100%}
.rs-icon{width:44px;height:44px;display:inline-grid;place-items:center;flex:none;padding:0}
.rs-register{display:grid;gap:12px}
.rs-record{background:#fff;border:1px solid #dce2e9;border-radius:8px;padding:20px}
.rs-record-heading{justify-content:space-between;margin-bottom:18px}
.rs-record-heading strong{display:block}
.rs-status{font-size:14px;color:#21694e;background:#e9f6ef;padding:4px 10px;border-radius:4px}
.rs-status.rs-awaiting{color:#a94d0a;background:#fff0df}
.rs-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 20px}
.rs-facts div{min-width:0}
.rs-facts dt{font-size:13px;font-weight:400;color:#637083;margin-bottom:5px}
.rs-facts dd{font-weight:600;margin:0;overflow-wrap:anywhere}
.rs-contract{border-inline-start:3px solid #b88c45;padding-inline-start:12px}
.rs-expiring{background:#fff8e8;color:#8a570e}
.rs-deadline{position:sticky;top:0;z-index:3;background:#edf4fb;color:#123b63;border-block:1px solid #c8d9e9;padding:14px 18px;margin-block:16px;font-weight:600}
.rs-expired{background:#fff0f0;color:#9f2635}
.rs-workspace{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:28px;align-items:start}
.rs-summary{border-inline-end:1px solid #dce2e9;padding-inline-end:24px;position:sticky;top:80px}
.rs-summary .rs-facts{grid-template-columns:1fr}
.rs-main{min-width:0}
.rs-segments{display:flex;gap:8px;flex-wrap:wrap;border:0;padding:0;margin-block:16px}
.rs-segments label{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fff;border:1px solid #ccd7e2;border-radius:4px;cursor:pointer}
.rs-segments label:has(input:checked){background:#edf4fb;border-color:#53799c}
.rs-calendar-toolbar{justify-content:space-between}
.rs-calendar-toolbar input{width:190px;min-height:44px;max-width:calc(100% - 112px)}
.rs-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;background:#fff;padding:10px;border:1px solid #dce2e9;border-radius:8px}
.rs-weekday{text-align:center;font-size:12px;color:#637083;padding-block:8px}
.rs-day{min-height:122px;display:flex;flex-direction:column;gap:4px;align-items:stretch;border-bottom:1px solid #edf0f4;padding:3px;min-width:0}
.rs-day>span{text-align:center;font-weight:600;margin-block:3px}
.rs-day.inactive{color:#a7afb9;background:#fafbfc}
.rs-slot{min-height:40px;border:1px solid #bedace;border-radius:4px;background:#f0faf5;color:#1f654c;padding:5px 3px;font-size:13px;font-weight:600;overflow-wrap:anywhere}
.rs-slot:disabled{color:#87909d;background:#f1f3f5;border-color:#e4e7eb;text-decoration:line-through}
.rs-slot.selected{background:#dbe9f7;border:2px solid #194b79;color:#123b63}
.rs-slot:focus-visible,.rs-segments input:focus-visible{outline:3px solid #b88c45;outline-offset:2px}
.rs-date-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #dce2e9}
.rs-date-row>div{display:flex;gap:8px;flex-shrink:0}
.rs-date-row .rs-slot{min-width:65px;min-height:44px}
.rs-empty{padding:32px 12px;text-align:center;color:#637083}
.rs-import-date{padding:16px;background:#fff8e8;margin-bottom:18px;border-inline-start:3px solid #b88c45;display:grid;gap:10px}
.rs-import-date input{max-width:240px}
.rs-selection{padding:16px 0;font-weight:600;color:#123b63;border-bottom:1px solid #dce2e9;margin-bottom:18px}
.rs-ack{display:flex;align-items:flex-start;gap:10px;margin-top:16px}
.rs-ack input{margin-top:6px;flex:none}
.rs-actions{justify-content:flex-end;padding-block:18px}
.rs-history{margin-top:32px;border-top:1px solid #dce2e9;padding-top:20px}
.rs-history article{border-inline-start:2px solid #b88c45;padding:4px 16px;margin-block:18px;overflow-wrap:anywhere}
.rs-history article p{white-space:pre-wrap;margin-block:6px}
.rs-history small{color:#637083}
.rs-pagination{justify-content:center;margin-top:20px}
.rs-confirm{width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 32px);margin:auto;border:1px solid #dce2e9;border-radius:8px;padding:24px;color:#17304e;overflow:auto;box-shadow:0 16px 64px #12243a33}
.rs-confirm::backdrop{background:#15233666}
.rs-confirm h5{margin-bottom:22px}
.rs-setting{padding-block:20px;border-bottom:1px solid #dce2e9;margin-bottom:24px}
.rs-setting input{width:160px}
.rs-transfer-controls{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #dce2e9}
.rs-transfer-controls .form-select,.rs-transfer-controls .form-control{max-width:420px;min-height:44px}
.rs-settlement{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:14px;border-block:1px solid #dce2e9}
.rs-refund-due{margin-top:16px;color:#9b4e12;font-weight:600;border-inline-start:3px solid #d9a455;padding-inline-start:12px}
#rs-error:not(:empty){padding:14px;border:1px solid #e4a7ac;border-radius:4px;margin-block:16px;background:#fff5f5}
@media(max-width:767px){.rs-workspace{grid-template-columns:minmax(0,1fr);gap:16px}.rs-summary{position:static;border:0;border-bottom:1px solid #dce2e9;padding:0 0 20px}.rs-summary .rs-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.rs-deadline{font-size:14px;padding:12px;top:0}.rs-record{padding:16px}.rs-calendar{gap:3px;padding:4px}.rs-day{padding:1px}.rs-slot{font-size:12px;min-height:44px}.rs-actions .btn{flex:1}.rs-date-row{align-items:flex-start}.rs-date-row strong{font-size:14px}.rs-confirm{padding:20px}.rs-confirm .rs-facts{grid-template-columns:1fr}.rs-work-heading{align-items:flex-start}}
@media(prefers-reduced-motion:no-preference){.rs-confirm[open]{animation:rs-appear 160ms ease-out}@keyframes rs-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
