:root{--paper:#f4f7f5;--white:#fff;--ink:#173e34;--green:#427164;--muted:#566960;--line:#dee7e1;--amber:#9a591f;--amber-bg:#fbf1e5;--soft:#eaf1ed;--body:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;--data:"Bahnschrift","Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--body);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--amber);outline-offset:4px}h1,h2,h3,p{margin:0}button{color:inherit}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:20px;z-index:20;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:196px;background:var(--white);border-right:1px solid var(--line);padding:33px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;padding:0 7px;margin-bottom:47px;font-size:22px;font-weight:800;letter-spacing:-1px;line-height:1.2}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:2px;margin-top:7px}.side-caption{display:block;color:var(--muted);font-size:10px;letter-spacing:.7px;margin:0 12px 10px}.nav-current{display:flex;gap:12px;align-items:center;padding:12px;background:var(--soft);border-radius:8px;color:var(--ink);text-decoration:none;font-size:12px;font-weight:700}.nav-current span{font-size:20px}.farm-note{border-top:1px solid var(--line);margin:34px 6px 0;padding-top:23px}.farm-note .side-caption{margin-left:0}.farm-note strong{font:21px var(--data);letter-spacing:.4px}.farm-note p{font-size:11px;color:var(--muted);margin-top:9px}.farm-note a{display:inline-block;font-size:10px;margin-top:19px}.side-bottom{margin-top:auto;padding:35px 12px 0}.side-bottom p{font-size:15px;font-weight:700;line-height:1.85;margin:15px 0 12px}.side-bottom>span:last-child{font-size:10px;color:var(--muted)}.leaf-line{display:block;width:29px;height:16px;border:1.5px solid var(--green);border-radius:100% 0 100% 0;transform:rotate(-15deg)}
main{margin-left:196px;padding:37px 38px 20px;max-width:1740px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:1.1px;font-weight:700;color:var(--muted)}.eyebrow span{margin:0 8px;color:#7b8e84}h1{font-size:29px;line-height:1.35;letter-spacing:-1.4px;margin:8px 0}.title-dot{display:inline-block;background:var(--green);width:7px;height:7px;border-radius:50%;margin-left:8px}.page-intro{color:var(--muted);font-size:12px}.header-actions{display:flex;align-items:center;gap:20px}.header-actions time{font:12px var(--data);white-space:nowrap;color:var(--muted)}.button-primary{border:1px solid var(--ink);background:var(--ink);border-radius:7px;padding:10px 15px;color:white;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;min-height:41px}.button-primary:hover{background:var(--green)}.refresh-icon{font:24px/16px var(--data)}.button-primary.is-loading .refresh-icon{animation:spin 1.5s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.season-panel{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:22px 24px 15px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-top h2{font-size:16px;letter-spacing:-.4px;margin-top:4px}.muted{font-size:10px;color:var(--muted)}.season-track{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));margin:24px -6px 19px}.track-step{position:relative;background:transparent;border:0;text-align:left;padding:0 6px;min-width:0}.track-step:before{content:"";position:absolute;top:27px;left:14px;right:-6px;height:2px;background:var(--line)}.track-step:last-child:before{display:none}.track-month{display:block;font:13px var(--data);color:var(--muted);margin-bottom:11px;white-space:nowrap}.track-dot{position:relative;display:block;height:9px;width:9px;background:#b9cbc0;border:2px solid var(--white);border-radius:50%;outline:1px solid #b9cbc0;margin-bottom:13px}.track-step.is-selected .track-dot{background:var(--ink);outline:3px solid #bcd5c7}.track-step.is-selected .track-month,.track-step.is-selected .track-name{color:var(--ink);font-weight:800}.track-name{display:block;font-size:11px;color:var(--muted);white-space:nowrap}.track-order{display:block;font:9px var(--data);color:var(--muted);margin-top:2px}.track-step:hover .track-name{text-decoration:underline;text-underline-offset:4px}.season-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:10px}.season-footer>span:first-child{white-space:nowrap}.legend-dot{display:inline-block;width:6px;height:6px;background:var(--ink);border-radius:50%;margin-right:6px}
.overview{display:flex;align-items:center;gap:0;padding:23px 0}.overview>div{padding:0 24px;border-right:1px solid var(--line);white-space:nowrap}.overview>div:first-child{padding-left:2px}.overview>div:nth-child(4){border:0}.overview>div>span{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}.overview strong{font:27px/1.1 var(--data);letter-spacing:-.5px}.overview small{font-size:10px;margin-left:5px;color:var(--muted)}.overview>p{margin-left:auto;color:var(--muted);font-size:10px;max-width:240px;text-align:right}.connection-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:6px}.connection-dot.is-warning{background:var(--amber)}.notice{padding:12px 16px;background:var(--amber-bg);border:1px solid #ead8c0;border-radius:7px;color:#71421a;margin-bottom:17px;font-size:12px}
.workspace{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:22px;align-items:start}.schedule-panel,.detail-panel{background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden}.schedule-panel>.section-top{padding:22px 22px 15px}.count-tag{font:11px var(--data);display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;background:var(--soft);border-radius:50%;vertical-align:middle;margin-left:5px}.list-tools{display:flex;gap:10px;padding:0 22px 18px}.search{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;min-width:0;flex:1;padding:7px 10px;color:var(--muted)}.search>span{font:21px/20px var(--data)}.search input{width:100%;min-width:0;background:transparent;border:0;color:var(--ink);font-size:11px;outline-offset:7px}.search input::placeholder{color:var(--muted)}.filter-label select{border:1px solid var(--line);border-radius:6px;background:var(--white);padding:10px 26px 10px 9px;max-width:160px;font-size:10px;color:var(--muted)}.list-heading,.schedule-row{display:grid;grid-template-columns:1.03fr 1.17fr .62fr .72fr;gap:10px;align-items:center}.list-heading{padding:10px 22px;background:#f8faf9;border-block:1px solid var(--line);font-size:9px;color:var(--muted)}.schedule-row{width:100%;padding:15px 22px;min-height:61px;text-align:left;background:var(--white);border:0;border-bottom:1px solid #edf1ee;position:relative}.schedule-row:hover{background:#f5f8f6}.schedule-row.is-selected{background:var(--soft)}.schedule-row.is-selected:before{content:"";position:absolute;inset:0 auto 0 0;background:var(--green);width:3px}.schedule-row .period-text{font-size:10px;white-space:nowrap}.schedule-row .name-text{font-size:12px;font-weight:700;white-space:nowrap}.schedule-row .name-text small{display:block;font-size:9px;color:var(--muted);font-weight:400;margin-top:3px}.schedule-row .candidate-number{font:13px var(--data)}.schedule-row .candidate-number small{font-size:9px;color:var(--muted);margin-left:3px}.schedule-row .pending-label{font-size:9px;color:var(--amber);white-space:nowrap}.pending-label:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--amber);margin:0 5px 2px 0}.today-label{display:block;font-size:9px;color:var(--green);font-weight:700;margin-top:2px}.list-footnote{color:var(--muted);font-size:10px;padding:15px 22px}.empty-state{padding:38px 22px;color:var(--muted);font-size:12px;text-align:center}
.detail-panel{padding:22px;scroll-margin-top:15px}.detail-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.sequence-label{font:11px var(--data);color:var(--muted)}.detail-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-title-row h2{font-size:26px;font-weight:800;letter-spacing:-.8px}.label-pill{background:var(--amber-bg);color:var(--amber);padding:5px 8px;border-radius:4px;font-size:9px;white-space:nowrap}.detail-period{font-size:11px;color:var(--muted);margin-top:6px}.detail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#f7faf8;border:1px solid var(--line);border-radius:7px;padding:12px;margin:19px 0 24px}.detail-summary span{display:block;color:var(--muted);font-size:9px}.detail-summary strong{display:block;font-size:11px;margin-top:5px;font-weight:600}.candidate-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.candidate-heading h3{font-size:13px;letter-spacing:-.3px}.candidate-heading h3>span{font:14px var(--data);color:var(--green);margin-left:5px}.mode-badge{font-size:9px;color:var(--green);background:var(--soft);padding:3px 6px;border-radius:4px}.mode-badge.is-warning{color:var(--amber);background:var(--amber-bg)}.candidate-help{color:var(--muted);font-size:10px;margin:9px 0 15px;line-height:1.8}.candidate{border:1px solid var(--line);border-radius:7px;margin-bottom:8px;background:white}.candidate summary{list-style:none;cursor:pointer;padding:12px 13px;display:flex;justify-content:space-between;align-items:center;gap:14px}.candidate summary::-webkit-details-marker{display:none}.candidate summary:after{content:"+";font:18px var(--data);color:var(--muted)}.candidate[open] summary:after{content:"−"}.candidate[open] summary{border-bottom:1px solid var(--line);background:#f8faf9}.candidate-name{font-size:12px;font-weight:600}.candidate-meta{display:block;font-size:10px;color:var(--muted);margin-top:3px;word-break:keep-all}.raw-grid{margin:0;padding:0 13px}.raw-grid>div{padding:11px 0;border-bottom:1px solid #edf1ee}.raw-grid>div:last-child{border:0}.raw-grid dt{font-size:9px;color:var(--muted);margin-bottom:4px}.raw-grid dd{font-size:12px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.raw-notice{margin:0;padding:8px 13px 12px;font-size:9px;color:var(--amber)}.candidate-empty{padding:20px 14px;border:1px dashed #c9d6cd;border-radius:6px;color:var(--muted);font-size:11px;line-height:1.9}.source-note{font-size:9px;color:var(--muted);margin-top:17px;display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap}.source-note time{margin-left:5px}.label-reminder{border-top:1px solid var(--line);padding-top:18px;margin-top:20px;display:flex;gap:10px;align-items:flex-start}.label-reminder>span{width:17px;height:17px;flex-shrink:0;border:1px solid #b98a58;border-radius:50%;color:var(--amber);font:11px/16px var(--data);text-align:center;margin-top:2px}.label-reminder p{font-size:10px;color:var(--muted);line-height:1.85}.label-reminder strong{display:block;font-size:11px;margin-bottom:3px;color:var(--ink)}.page-footer{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:9px;padding:23px 2px 4px}.page-footer>div{display:flex;gap:20px}
@media(min-width:1600px){main{padding-inline:54px}.workspace{grid-template-columns:1.2fr 1fr}.schedule-row{min-height:66px}}
@media(max-width:1150px){.sidebar{width:166px;padding-inline:14px}.brand{font-size:20px;gap:8px}main{margin-left:166px;padding:28px 23px}.header-actions{gap:10px}.header-actions time{display:none}.workspace{gap:16px;grid-template-columns:1.08fr 1fr}.overview>div{padding-inline:16px}.overview>p{max-width:180px}.list-heading,.schedule-row{gap:7px;padding-inline:16px;grid-template-columns:1fr 1fr .6fr .65fr}.schedule-panel>.section-top,.list-tools{padding-inline:16px}.section-top>.muted{display:none}.detail-panel{padding:18px}.schedule-row .period-text{font-size:9px}.schedule-row .name-text{font-size:11px}.detail-title-row{flex-wrap:wrap}}
@media(max-width:900px){.sidebar{position:static;width:auto;flex-direction:row;flex-wrap:wrap;align-items:center;padding:13px 22px;border-right:0;border-bottom:1px solid var(--line);gap:12px 20px}.brand{margin:0;font-size:19px}.brand small{display:none}.brand img{width:29px;height:29px}.sidebar>.side-caption,.side-bottom{display:none}.farm-note{width:100%;margin:4px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.farm-note strong{font-size:14px}.farm-note p{margin:0;font-size:11px}.farm-note .search{margin-top:0;padding:4px 8px;min-height:36px;max-width:180px;background:var(--white)}.nav-current{padding:5px 12px;font-size:11px}.nav-current span{font-size:16px}main{margin:0;padding:25px 22px}.workspace{grid-template-columns:1.05fr 1fr}.overview>p{max-width:200px}.season-panel{padding-inline:20px}}
@media(max-width:720px){main{padding:22px 16px}.page-header{align-items:flex-start;margin-bottom:22px;gap:10px}h1{font-size:25px}.page-intro{font-size:10px}.header-actions{padding-top:14px}.button-primary{font-size:10px;padding:9px 10px;min-height:39px;gap:4px}.eyebrow{font-size:9px}.season-panel{padding:18px 16px 12px}.section-top h2{font-size:14px}.season-track{overflow-x:auto;grid-template-columns:repeat(10,70px);padding-bottom:9px;margin-bottom:8px}.track-name{font-size:10px}.season-footer{font-size:9px;gap:10px}.season-footer>span:last-child{max-width:240px;text-align:right}.overview{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:20px 0 16px}.overview>div{padding:0 10px}.overview>div>span{font-size:9px}.overview strong{font-size:25px}.overview small{font-size:9px;margin-left:3px}.overview>p{max-width:none;grid-column:1/-1;text-align:left;margin:14px 0 0;font-size:10px}.workspace{grid-template-columns:minmax(0,1fr);gap:20px}.schedule-panel>.section-top{padding-top:19px}.list-tools{padding-bottom:14px}.list-heading,.schedule-row{grid-template-columns:1fr 1.15fr .6fr .65fr;padding-inline:19px;gap:12px}.schedule-row{min-height:63px}.schedule-row .period-text{font-size:10px}.schedule-row .name-text{font-size:12px}.schedule-row .pending-label{font-size:10px}.detail-panel{padding:21px}.detail-title-row{flex-wrap:nowrap}.detail-title-row h2{font-size:27px}.candidate summary{padding:14px}.candidate-name{font-size:13px}.candidate-help{font-size:11px}.raw-grid dt{font-size:10px}.raw-grid dd{font-size:13px}.page-footer{font-size:9px;gap:12px;align-items:flex-start}.page-footer>div{gap:12px}}
.completion-legend{margin-left:12px;color:var(--green);font-weight:700}.track-step.is-completed .track-dot{display:flex;align-items:center;justify-content:center;background:var(--green);border-color:var(--green);color:white;width:13px;height:13px;font-size:9px;line-height:1;margin-top:-2px;margin-bottom:11px}.track-step.is-completed .track-order{color:var(--green);font-family:var(--body);font-size:10px;font-weight:700}.row-status{display:flex;flex-direction:column;gap:3px}.application-status{font-size:11px;color:var(--muted)}.application-status.is-completed,#detail-application-status.is-completed{color:var(--green);font-weight:700}.schedule-row .name-text .completed-method{color:var(--green);font-weight:600}.application-record{margin:-9px 0 22px;padding:13px 14px;border:1px solid #c9ddcf;border-radius:7px;background:#eef6f0;display:flex;flex-direction:column;gap:9px}.application-record strong{font-size:13px}.application-record p{font-size:11px;color:var(--muted);margin-top:5px}.application-record a{font-size:10px;align-self:flex-start}
@media(max-width:720px){.completion-legend{display:block;margin:4px 0 0}.row-status{gap:4px}.application-record p{font-size:12px}}
/* 현장에서 확인할 일정과 사용기준은 보조 설명보다 크게 표시한다. */
.page-intro{font-size:13px}.track-name{font-size:12px}.schedule-row .name-text{font-size:14px}.schedule-row .period-text{font-size:11px}.schedule-row .pending-label{font-size:11px}.search input{font-size:12px}.candidate-name{font-size:14px}.candidate-meta{font-size:11px}.candidate-help{font-size:11px}.raw-grid dt{font-size:11px}.raw-grid dd{font-size:14px}.detail-period{font-size:12px}.detail-summary strong{font-size:12px}.label-reminder p{font-size:11px}.list-footnote{font-size:11px}.label-pill{font-size:10px}.detail-summary span{font-size:10px}.candidate-empty{font-size:12px}
@media(max-width:720px){.page-intro{font-size:11px}.schedule-row .name-text{font-size:13px}.candidate-help{font-size:12px}.candidate-meta{font-size:12px}.button-primary{font-size:11px}.track-name{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}
