.rp-week-nav,.rp-person,.rp-plan-links{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:22px 0}.rp-person{justify-content:flex-start;padding:18px;border:1px solid #454052;background:#272334;border-radius:9px}.rp-person>div{flex:1}.rp-person strong,.rp-person span{display:block}.rp-person span{font-size:13px;color:#b8b1c7}.rp-plan-links{justify-content:flex-start;gap:10px}.rp-plan-links a{padding:12px 16px;background:#302a3f;border:1px solid #5e4e72;border-radius:8px;text-decoration:none}.rp-team{min-width:1100px}.rp-team th:first-child,.rp-team td:first-child{width:210px;position:sticky;left:0;z-index:2;background:#272334!important}.rp-team .ops-person{min-width:185px}.rp-day-link{display:block;text-decoration:none;min-height:65px}.rp-mini{display:block;font-size:12px;padding:9px;border-radius:6px;margin:5px 0}.rp-mini.available{background:#175d62;color:#d5f4ed}.rp-mini.busy{background:#63462c;color:#ffe1b3}.rp-mini.off{background:#373142;color:#b8b1c7}.rp-horizontal-grid{min-width:1100px}.rp-time-header,.rp-day-row{display:grid;grid-template-columns:110px minmax(0,1fr)}.rp-time-header{background:#322d40;font-size:11px;color:#c8c0d8;min-height:42px;align-items:center}.rp-time-header>span{padding:10px}.rp-time-header>div{display:flex;justify-content:space-between;padding:0 4px}.rp-day-row>h3{font-size:13px!important;background:#2c273a;border-right:1px solid #454052;border-bottom:1px solid #454052;margin:0!important;padding:17px 10px;letter-spacing:0;line-height:1.5}.rp-horizontal .ops-roster-track{height:122px;background:repeating-linear-gradient(90deg,transparent,transparent calc(100% / 24 - 1px),#454052 calc(100% / 24 - 1px),#454052 calc(100% / 24));border-bottom:1px solid #454052}.rp-horizontal .ops-roster-block{position:absolute;top:8px;height:44px;min-height:0!important;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4px 14px!important;font-size:11px!important;line-height:1.25;overflow:hidden;touch-action:none}.rp-horizontal .ops-roster-block.busy{top:55px;height:26px;flex-direction:row;gap:6px;font-size:10px!important}.rp-horizontal .ops-roster-block.busy strong{font-size:10px}.rp-horizontal .ops-roster-handle{position:absolute;top:0!important;bottom:0!important;width:12px;height:100%;display:grid;place-items:center;font-size:16px;cursor:ew-resize}.rp-horizontal .ops-roster-handle.top{left:0;right:auto}.rp-horizontal .ops-roster-handle.bottom{left:auto;right:0}.rp-horizontal .ops-roster-booking{position:absolute;top:86px;height:29px;padding:3px 5px;font-size:10px;line-height:1.2;min-height:0;background:#744da0;border:1px solid #c8a6e1;border-radius:5px;overflow:hidden;z-index:4;color:#f4e8ff}.rp-horizontal .ops-roster-draft{position:absolute;top:8px;height:44px;background:#17606899;border:2px dashed #75d5c5;border-radius:7px;font-size:11px;overflow:hidden}.rp-horizontal .ops-roster-editor{margin-top:20px}.rp-pattern>summary{font-size:18px!important;min-height:58px;display:flex;align-items:center;justify-content:space-between;font-weight:600}.rp-pattern>summary:after{content:'+';font-size:22px}.rp-pattern[open]>summary:after{content:'−'}.rp-pattern p{margin-top:12px}.rp-form .desktop-form{margin-bottom:22px}.rp-week-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.rp-week-day{min-width:0;border:1px solid #514760;border-radius:9px;padding:18px;background:#2c273a}.rp-week-day legend{font-weight:650;color:#d8c0ee;padding:0 7px}.rp-week-day>label{margin-bottom:16px}.rp-shift{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}.rp-week-day.is-off .rp-shift{opacity:.45}.rp-second-shift{border-top:1px solid #514760;margin-top:10px}.rp-second-shift summary{font-size:13px!important;min-height:35px!important;padding:8px 0!important}.rp-weekday-ticks{display:flex;flex-wrap:wrap;gap:12px;border:1px solid #514760;border-radius:9px;padding:16px;margin:20px 0}.rp-weekday-ticks legend{color:#d8c0ee;padding:0 7px}.rp-weekday-ticks label{margin:0}.rp-copy{display:flex;flex-wrap:wrap;gap:12px}.rp-override{display:flex;gap:15px;align-items:center;flex-wrap:wrap;border:1px solid #71532f;background:#473425;padding:14px;border-radius:8px;margin:14px 0}.rp-override span{flex:1}.rp-override form{margin:0}.rp-toolbar label{flex:1;max-width:400px}.rp-pattern:target{outline:2px solid #ad8bd0;outline-offset:4px}
@media(max-width:800px){.rp-week-days{grid-template-columns:1fr;gap:14px}.rp-week-day{padding:16px}.rp-week-nav{gap:10px}.rp-week-nav strong{order:-1;flex-basis:100%;font-size:16px}.rp-week-nav .button{flex:1;font-size:13px!important;padding:10px}.rp-person{padding:16px}.rp-person>a{flex-basis:100%;padding-top:6px}.rp-plan-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rp-plan-links a{font-size:13px;padding:12px}.rp-pattern>summary{font-size:16px!important;line-height:1.5}.rp-shift{gap:12px}.rp-shift label{font-size:13px!important}.rp-week-day .rp-shift input,.rp-week-day .rp-shift select{padding:10px!important}.rp-copy{display:grid}.rp-copy button{width:100%}.rp-horizontal-grid{min-width:1100px}.rp-day-row>h3{position:sticky;left:0;z-index:6}.rp-time-header>span{position:sticky;left:0;z-index:7;background:#322d40}.rp-horizontal .ops-roster-block{font-size:12px!important}.rp-week-day:has(input[type=checkbox]:not(:checked)) .rp-second-shift{opacity:.5}.rp-form>button{width:100%;margin-top:12px}.rp-override{display:block}.rp-override strong,.rp-override span{display:block;margin-bottom:9px}.rp-override button{width:100%}.rp-toolbar button{width:100%}.rp-team .ops-person{min-width:160px}.rp-team th:first-child,.rp-team td:first-child{width:185px}}

.rp-presets{display:flex;gap:7px;flex-wrap:wrap}.rp-presets button{font-size:12px!important;padding:8px 10px!important;min-height:36px}.rp-team .rp-mini{border-left:3px solid #38bdb6}.rp-team .rp-mini.busy{border-color:#efb453}.rp-team .rp-mini.off{border-color:#676073}

.rp-sliders{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rp-sliders input[type=range]{padding:0!important;accent-color:#54cec2;min-height:40px;width:100%}.rp-sliders output{grid-column:1/-1;color:#c4f5ec;font-weight:650}.rp-mini small{display:block;opacity:.85;margin-top:4px}.rp-toolbar label{min-width:170px}.rp-override details{max-width:100%}
