/* res — RES-01 배치 스케줄러 · RES-02 후보 검색 · RES-03 배치 변경 */
/* RES-01: 열 수 가변 (주 14 / 월 9) */
.pt-res01-g .mo,.pt-res01-g .wk,.pt-res01-g .hm{grid-template-columns:repeat(var(--n),minmax(0,1fr))}
.pt-res01-g .tl{background-size:calc(100% / var(--n)) 100%}
.pt-res01-g .hm .hc{cursor:cell;user-select:none}
.pt-res01-g .hm .hc i{transition:box-shadow .1s}
.pt-res01-g .hm .hc:hover i{box-shadow:0 0 0 2px var(--hq)}
.pt-res01-g .hm .hc.pt-res-sel i{box-shadow:0 0 0 2px var(--hq);outline:2px dashed var(--hq);outline-offset:1px}
.pt-res01-g .res01-bar[data-act]{cursor:pointer}
.pt-res01-g .res01-bar[data-act]:hover{filter:brightness(1.12);z-index:2}
.pt-res01-g .gr{user-select:none}
.pt-res01-g .pt-res-hl{background:color-mix(in srgb,var(--plan) 12%,var(--surface))}
.pt-res01-g .nx .btn{justify-self:start}
/* 배치 추가 팝오버를 모달 안에 */
.res01-pop.pt-res-inmodal{position:static;width:auto;box-shadow:none;border:0;padding:0;font-size:12px}
.res01-pop.pt-res-inmodal::before{display:none}
.res01-pop.pt-res-inmodal .pc .inp{width:80px}
/* 공통 입력 */
.pt-res-dt{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pt-res-dt input.inp{width:auto;flex:0 1 150px}
.pt-res-ck{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--fg);white-space:nowrap}
.pt-res-pc{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}
.field .pt-res-pc input.inp,.pt-res-pc input.inp{width:72px;flex:0 0 auto}
.pt-res-dis{opacity:.4;cursor:not-allowed!important}
.pt-res-f3{grid-template-columns:1.4fr 1fr 1fr}
.pt-res-f4{grid-template-columns:1fr 1.2fr 1.2fr 1fr}
.pt-res-g2{display:grid;grid-template-columns:1fr 1.4fr;gap:6px;width:100%}
.pt-res-g2 .inp{width:100%}
.pt-res-hint{margin-top:10px;font-size:12px;color:var(--muted)}
/* RES-03 */
.res03-bar.pt-res-tn{background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--plan) 55%,var(--surface)) 0 4px,color-mix(in srgb,var(--plan) 22%,var(--surface)) 4px 8px);border:1px solid var(--plan);color:var(--fg);line-height:16px}
.res03-asg>div[data-k]{cursor:pointer}
.res03-asg>div[data-k]:hover{border-color:var(--hq)}
.res03-imp{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.res03-xc select.inp{width:100%}
/* RES-02 */
.res02-f .ck input{margin:0 4px 0 0}
.res02-f select.inp{width:100%}
.res02-t td:last-child{white-space:nowrap}
.res02-ok input.inp{width:auto}
.res02-ok .pt-res-dt input.inp{flex:0 0 136px}
.res02-cmp .hd:hover{background:color-mix(in srgb,var(--hq) 4%,var(--surface))}
.res02-ok .pt-res-pc input.inp{width:72px;flex:0 0 72px}
/* D-017 인접 후보 구분 줄 · D-022 공급 확정 전 안내 */
.res02-adjh td { background: color-mix(in srgb, var(--plan) 8%, var(--surface)); font-size: 11.5px; border-top: 1px dashed var(--line); }
.res02-pre { font-size: 11.5px; }
