@font-face{font-family:'TSUNI-HMI';src:url('/fonts/ModernH-Medium.ttf') format('truetype');font-weight:400 1000;font-style:normal;font-display:swap;}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;font-family:'TSUNI-HMI','Malgun Gothic',Arial,sans-serif;background:#07111f;color:#f4f7fb}.pop-body{width:100vw;height:100vh;background:linear-gradient(135deg,#07111f 0%,#0b1728 55%,#07111f 100%)}button,a,input{font-family:inherit}.pop-shell,.viewer-shell{width:100vw;height:100vh;display:flex;flex-direction:column;background:#07111f}.pop-topbar,.viewer-topbar{height:82px;flex:0 0 82px;background:#111b2c;border-bottom:2px solid #263a58;display:flex;align-items:center;gap:14px;padding:0 24px;box-shadow:0 8px 30px rgba(0,0,0,.35);position:relative;z-index:5}.pop-logo,.viewer-logo{display:flex;align-items:center;gap:12px;min-width:155px;flex:0 0 auto}.pop-logo img,.viewer-logo img{height:42px;max-width:118px;object-fit:contain}.pop-logo span{font-size:21px;font-weight:900;letter-spacing:-.5px;color:#fff}.pop-top-title{font-size:28px;font-weight:900;letter-spacing:-1px;flex:1;text-align:center}.pop-equipment-name{font-size:32px;font-weight:900;letter-spacing:-1.4px;position:absolute;left:50%;transform:translateX(-50%);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50vw}.viewer-equipment{font-size:32px;font-weight:900;letter-spacing:-1.4px;flex:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pop-clock{white-space:pre-line;text-align:right;font-size:22px;font-weight:1000;color:#dbe7f8;line-height:1.08;min-width:170px;flex:0 0 auto;letter-spacing:-.3px;margin-left:auto}.top-btn{height:48px;padding:0 18px;border:1px solid #4d6385;background:#1e2d44;color:#fff;text-decoration:none;border-radius:10px;display:flex;align-items:center;font-size:18px;font-weight:900;white-space:nowrap;flex:0 0 auto}.sos-btn{height:54px;min-width:118px;border:0;border-radius:12px;background:#e51f34;color:#fff;font-size:25px;font-weight:1000;box-shadow:0 0 0 3px rgba(229,31,52,.22),0 10px 24px rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:0 0 auto;margin-left:0}
/* 1. 설비 선택 */
.equip-main{flex:1;display:grid;grid-template-columns:170px 150px 1fr;gap:14px;padding:16px;min-height:0}.select-column{background:#0e1a2c;border:1px solid #263a58;border-radius:18px;padding:16px;min-height:0;display:flex;flex-direction:column}.select-column h2,.section-head h2{margin:0 0 14px;font-size:23px;font-weight:1000;color:#fff}.select-column.narrow{padding:14px}.zone-buttons,.floor-buttons{display:flex;flex-direction:column;gap:12px}.zone-buttons button,.floor-buttons button{height:78px;border:1px solid #344865;background:#172439;color:#e6eefb;border-radius:14px;font-size:27px;font-weight:1000}.zone-buttons button.active,.floor-buttons button.active{background:#0f67d8;border-color:#59a2ff;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.15),0 12px 24px rgba(15,103,216,.22)}.equipment-wide{padding:18px}.section-head{display:flex;align-items:center;justify-content:space-between}.section-head strong{font-size:22px;color:#8fbfff}.equipment-grid{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-right:6px}.equipment-card{height:96px;border:1px solid #30445f;border-radius:14px;background:#132035;color:#fff;text-align:left;padding:13px 15px;display:flex;align-items:center;justify-content:center;transition:.12s}.equipment-card:hover,.equipment-card.active{background:#174a86;border-color:#5fb0ff;box-shadow:0 0 0 3px rgba(95,176,255,.18)}.equipment-card strong{display:block;font-size:22px;font-weight:1000;line-height:1.18;letter-spacing:-1.1px;word-break:keep-all;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-align:center}.setting-footer{height:92px;flex:0 0 92px;background:#0d1626;border-top:2px solid #263a58;display:flex;align-items:center;gap:16px;padding:14px 20px}.selected-equipment{flex:1;background:#101f35;border:1px solid #2d415e;border-radius:14px;padding:12px 18px}.selected-equipment span{font-size:15px;color:#9fb1ce;font-weight:800}.selected-equipment strong{display:block;margin-top:4px;font-size:28px;color:#fff;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-equipment{height:62px;min-width:260px;border:0;border-radius:14px;background:#0f67d8;color:#fff;font-size:24px;font-weight:1000}.save-equipment:disabled{background:#334052;color:#8a95a6}
/* 2. 작업지시 선택 */
.order-main-screen{flex:1;min-height:0;padding:22px;display:flex;flex-direction:column;gap:18px}.order-heading{height:108px;background:#0e1a2c;border:1px solid #263a58;border-radius:18px;padding:20px 26px;display:flex;align-items:center;justify-content:space-between}.order-heading h1{margin:0;color:#fff;font-size:38px;font-weight:1000;letter-spacing:-1.5px}.order-heading p{margin:8px 0 0;color:#a8b9d2;font-size:18px;font-weight:800}.order-total{width:120px;height:74px;border-radius:16px;background:#14243b;border:1px solid #344865;display:flex;align-items:end;justify-content:center;gap:5px;padding-bottom:12px}.order-total strong{font-size:42px;line-height:1}.order-total span{font-size:20px;font-weight:900;margin-bottom:4px;color:#9fb1ce}/* 2. 작업지시 선택 */
.order-main-screen{flex:1;min-height:0;padding:22px;display:flex;flex-direction:column;gap:16px}.order-heading{height:108px;background:#0e1a2c;border:1px solid #263a58;border-radius:18px;padding:20px 26px;display:flex;align-items:center;justify-content:space-between}.order-heading h1{margin:0;color:#fff;font-size:38px;font-weight:1000;letter-spacing:-1.5px}.order-heading p{margin:8px 0 0;color:#a8b9d2;font-size:18px;font-weight:800}.order-total{width:120px;height:74px;border-radius:16px;background:#14243b;border:1px solid #344865;display:flex;align-items:end;justify-content:center;gap:5px;padding-bottom:12px}.order-total strong{font-size:42px;line-height:1}.order-total span{font-size:20px;font-weight:900;margin-bottom:4px;color:#9fb1ce}.work-order-grid{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:14px;padding-right:6px;align-content:flex-start;justify-content:flex-start}.work-order-card{margin:0;flex:0 0 auto}.work-order-card button{width:100%;min-height:132px;height:132px;border:1px solid #30445f;border-radius:18px;background:#132035;color:#fff;text-align:left;padding:18px 26px;display:grid;grid-template-columns:250px 210px 1fr 150px 150px;grid-template-rows:32px 1fr;column-gap:22px;row-gap:10px;align-items:center}.work-order-card button:hover{border-color:#5fb0ff;background:#17304f}.wo-label{font-size:17px;font-weight:1000;color:#b8c7dc;line-height:1}.wo-plan-label{text-align:right}.wo-no{font-size:25px;font-weight:1000;color:#7db8ff;word-break:break-all;line-height:1.15}.wo-item-code{font-size:23px;font-weight:900;color:#d8e7fa;line-height:1.2;word-break:keep-all}.wo-item-name{font-size:29px;font-weight:1000;letter-spacing:-1.2px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.wo-status{display:flex;align-items:center;gap:8px;color:#fff;font-size:21px;font-weight:1000;white-space:nowrap}.wo-status-dot{width:13px;height:13px;border-radius:50%;display:inline-block;box-shadow:0 0 0 2px rgba(255,255,255,.12)}.status-wait{background:#f5b400}.status-run{background:#22c55e}.status-done{background:#3b82f6}.status-stop{background:#ef4444}.wo-plan{display:flex;align-items:baseline;justify-content:flex-end;gap:8px;color:#fff;font-size:21px;font-weight:1000;white-space:nowrap}.wo-plan b{font-size:27px;font-weight:1000}.wo-plan span{font-size:21px;color:#d8e7fa;font-weight:1000}.order-empty{font-size:34px;font-weight:1000;color:#9fb1ce;display:flex;align-items:center;justify-content:center;background:#101f35;border-radius:18px;border:1px dashed #344865;min-height:160px}
/* 3. 생산실적 등록 */
.slide-countdown{height:46px;min-width:180px;border-radius:12px;background:#172439;border:1px solid #344865;display:flex;align-items:center;justify-content:center;color:#d5e6ff;font-size:20px;font-weight:1000}.slide-countdown span{font-size:31px;color:#55aaff;margin-right:3px}.prod-layout{flex:1;min-height:0;display:grid;grid-template-columns:40% 1fr;gap:18px;padding:20px}.prod-work-info,.prod-register-panel{background:#0e1a2c;border:1px solid #263a58;border-radius:18px;padding:24px;min-height:0}.prod-work-info{display:flex;flex-direction:column}.panel-title{font-size:22px;font-weight:1000;color:#8fbfff;margin-bottom:18px}.big-work-no{font-size:40px;font-weight:1000;color:#fff;border-bottom:1px solid #2d415e;padding-bottom:18px;margin-bottom:18px}.item-lines{display:flex;flex-direction:column;gap:14px}.item-lines div{background:#132035;border:1px solid #2d415e;border-radius:14px;padding:14px 18px}.item-lines span{display:block;color:#9fb1ce;font-size:17px;font-weight:900;margin-bottom:6px}.item-lines strong{display:block;color:#fff;font-size:28px;font-weight:1000;line-height:1.2;letter-spacing:-1.1px}.prod-actions-small{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.prod-actions-small a{height:62px;border-radius:14px;background:#1e2d44;color:#fff;text-decoration:none;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:1000}.prod-capa-box{margin-top:auto;border:2px solid #f5a400;border-radius:16px;background:#101f35;padding:14px 16px 18px;box-shadow:0 0 0 2px rgba(245,164,0,.12)}.prod-capa-box h3{margin:0 0 12px;font-size:22px;font-weight:1000;color:#8fbfff}.prod-capa-box table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:20px}.prod-capa-box th,.prod-capa-box td{border:1px solid #334865;padding:12px 10px;text-align:center;color:#fff}.prod-capa-box th{background:#172439;color:#cde0f8;font-weight:1000}.prod-capa-box td{background:#132035;font-weight:900}.prod-capa-box td:first-child{width:70px}.prod-capa-box td[colspan="2"]{font-size:21px}
.qty-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.qty-summary div{height:150px;border-radius:18px;background:#132035;border:1px solid #2d415e;display:flex;flex-direction:column;align-items:center;justify-content:center}.qty-summary span{font-size:20px;color:#9fb1ce;font-weight:900}.qty-summary strong{font-size:58px;line-height:1;font-weight:1000;color:#fff}.qty-summary strong.blue{color:#5eb2ff}.qty-summary em{font-size:18px;color:#9fb1ce;font-style:normal;font-weight:900}.input-row{display:grid;grid-template-columns:120px 1fr 170px 170px;gap:12px;align-items:center;margin-bottom:22px}.input-row label{font-size:22px;font-weight:1000;color:#dce7f5}.input-row input{height:70px;border:2px solid #41597a;border-radius:14px;background:#08111f;color:#fff;font-size:38px;font-weight:1000;text-align:center}.register-btn{height:70px;border:0;border-radius:14px;color:#fff;font-size:23px;font-weight:1000}.register-btn.good{background:#0f67d8}.register-btn.bad{background:#d73345}.time-result-box{background:#101f35;border:1px solid #2d415e;border-radius:16px;padding:18px}.time-result-box h3{margin:0 0 12px;font-size:24px}.time-result-box table{width:100%;border-collapse:collapse;font-size:20px}.time-result-box th,.time-result-box td{border:1px solid #334865;padding:14px;text-align:center}.time-result-box th{background:#172439;color:#cde0f8}.prod-footer{height:86px;background:#0d1626;border-top:2px solid #263a58;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:12px 20px}.prod-footer button{border:0;border-radius:14px;background:#1e2d44;color:#fff;font-size:25px;font-weight:1000}.prod-footer button.danger{background:#d73345}
/* 4. 작업표준서 슬라이드 */
.viewer-body{background:#050b14}.viewer-topbar{height:70px;flex-basis:70px;background:#111b2c;padding:0 16px;gap:12px}.viewer-logo{min-width:130px}.viewer-logo img{height:34px}.viewer-equipment{font-size:29px;text-align:left;min-width:0}.viewer-control{height:46px;min-width:78px;border:1px solid #445b7d;border-radius:10px;background:#1e2d44;color:#fff;font-size:18px;font-weight:1000;flex:0 0 auto}.viewer-control.stop{background:#d73345;border-color:#d73345}.viewer-page{height:46px;min-width:92px;border-radius:10px;background:#091323;border:1px solid #445b7d;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:1000;color:#fff;flex:0 0 auto}.viewer-clock{min-width:170px;font-size:22px;line-height:1.08}.a3-stage{flex:1;min-height:0;background:#111;display:flex;align-items:center;justify-content:center;padding:10px}.a3-paper{height:calc(100vh - 90px);aspect-ratio:1.414/1;background:#fff;color:#111;box-shadow:0 0 0 2px #777,0 16px 50px rgba(0,0,0,.55);padding:18px;display:flex;flex-direction:column}.a3-title{height:52px;border:2px solid #111;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-size:25px;font-weight:1000}.a3-drawing{flex:1;border:2px solid #111;border-top:0;padding:18px;display:flex;flex-direction:column}.drawing-head{height:44px;border-bottom:2px solid #111;font-size:26px;font-weight:1000;display:flex;align-items:center}.drawing-grid{flex:1;display:grid;grid-template-columns:1fr 270px;gap:18px;padding:18px 0}.diagram-large{border:3px solid #111;background:repeating-linear-gradient(45deg,#f6f6f6,#f6f6f6 12px,#ececec 12px,#ececec 24px);display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:1000;color:#333}.process-list{display:grid;grid-template-rows:repeat(4,1fr);gap:10px}.process-list div{border:2px solid #111;padding:12px;display:flex;flex-direction:column;justify-content:center}.process-list b{font-size:28px}.process-list span{font-size:24px;font-weight:1000}.a3-warning{height:58px;background:#fff0c6;border:2px solid #111;display:flex;align-items:center;padding:0 18px;font-size:22px;font-weight:1000;color:#111}
@media(max-width:1200px){.equipment-grid{grid-template-columns:repeat(3,1fr)}.work-order-grid{grid-template-columns:1fr}.work-order-card button{grid-template-columns:1fr;grid-template-rows:auto;}.wo-no,.wo-item-code,.wo-item-name,.wo-bottom{grid-column:1;grid-row:auto}.wo-bottom{align-items:flex-start;text-align:left}.prod-layout{grid-template-columns:1fr}.pop-topbar{height:76px}.pop-equipment-name{font-size:25px}.prod-footer{height:78px}}

/* POP SOS 사유 선택 */
.sos-btn{gap:8px;font-weight:1000;letter-spacing:.2px}
.sos-btn .sos-icon{font-size:44px;line-height:1;display:inline-flex;align-items:center;width:36px!important;height:36px!important;flex:0 0 36px!important}
.sos-btn.active{background:#ff7a00;box-shadow:0 0 0 3px rgba(255,122,0,.26),0 10px 24px rgba(0,0,0,.35)}
.sos-modal-backdrop{position:fixed;inset:0;background:rgba(2,8,18,.72);z-index:9999;display:flex;align-items:center;justify-content:center;padding:40px}
.sos-modal{width:min(920px,calc(100vw - 80px));background:#101b2d;border:2px solid #4f6f9b;border-radius:24px;box-shadow:0 24px 80px rgba(0,0,0,.58);padding:26px;color:#fff}
.sos-modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2d415e;padding-bottom:18px;margin-bottom:14px}
.sos-modal-head strong{font-size:36px;font-weight:1000;letter-spacing:-1.2px}
.sos-modal-head button{height:48px;padding:0 22px;border:1px solid #526985;border-radius:12px;background:#1e2d44;color:#fff;font-size:20px;font-weight:1000}
.sos-modal-sub{font-size:22px;font-weight:900;color:#b7c8df;margin-bottom:20px}
.sos-reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sos-reason-grid button{height:96px;border:1px solid #395271;border-radius:18px;background:#17263e;color:#fff;font-size:30px;font-weight:1000;letter-spacing:-1px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.sos-reason-grid button:hover{background:#21436b;border-color:#6ab6ff}

/* 작업표준서 PDF 보기 화면 */
.workstandard-viewer-body{background:#050b14;overflow:hidden}
.workstandard-viewer-shell{height:100vh;display:flex;flex-direction:column;background:#050b14;color:#fff}
.workstandard-topbar{height:74px;flex:0 0 74px;border-bottom:1px solid #263a58}
.viewer-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:3px;text-align:center}
.viewer-title-main{font-size:32px;font-weight:1000;letter-spacing:-1px;color:#fff}
.viewer-title-sub{display:flex;align-items:center;justify-content:center;gap:14px;font-size:16px;font-weight:900;color:#a8c4e8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workstandard-topbar .viewer-control{text-decoration:none;display:flex;align-items:center;justify-content:center}
.workstandard-info-bar{height:58px;flex:0 0 58px;display:grid;grid-template-columns:1.2fr 1.6fr .8fr;gap:10px;padding:9px 16px;background:#0b1424;border-bottom:1px solid #263a58}
.workstandard-info-bar div{border:1px solid #2d415e;border-radius:10px;background:#101f35;display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}
.workstandard-info-bar span{font-size:15px;font-weight:900;color:#8fbfff}
.workstandard-info-bar strong{font-size:18px;font-weight:1000;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workstandard-pdf-stage{flex:1;min-height:0;padding:12px;background:#111;display:flex;align-items:stretch;justify-content:center}
.workstandard-pdf-frame{width:100%;height:100%;border:0;background:#fff;border-radius:4px;box-shadow:0 0 0 2px #333,0 16px 50px rgba(0,0,0,.55)}
@media(max-width:1200px){.viewer-title-main{font-size:26px}.viewer-title-sub{font-size:14px}.workstandard-info-bar{grid-template-columns:1fr;height:auto;flex-basis:auto}.workstandard-topbar{gap:8px}.workstandard-topbar .viewer-control{min-width:66px}}

/* 작업표준서 폴더 자동 슬라이드 */
.workstandard-slide-info{grid-template-columns:.8fr 2fr .7fr}
.workstandard-slide-footer{height:64px;flex:0 0 64px;display:flex;align-items:center;justify-content:center;gap:14px;background:#0b1424;border-top:1px solid #263a58}
.workstandard-empty{width:100%;height:100%;align-items:center;justify-content:center;text-align:center;border:2px dashed #3a5375;border-radius:12px;background:#0b1424;color:#dbe7f8;font-size:30px;font-weight:1000;padding:30px}

/* POP 생산실적 수동 입력 + 자동저장 */
.auto-save-guide{display:flex;align-items:center;justify-content:flex-end;margin:-6px 0 14px;min-height:34px}
.save-state{font-size:17px;font-weight:1000;color:#9fb1ce;background:#0b1424;border:1px solid #2d415e;border-radius:999px;padding:8px 16px}
.save-state.saving{color:#ffe3a3;border-color:#a8791a;background:#251c0c}
.save-state.saved{color:#aef0bf;border-color:#27824a;background:#0d2619}
.save-state.error{color:#ffb8c0;border-color:#a93442;background:#2a1018}
.time-result-box td{padding:8px 10px}
.time-qty-input{width:100%;height:54px;border:2px solid #41597a;border-radius:10px;background:#07101d;color:#fff;font-size:24px;font-weight:1000;text-align:center;outline:none}
.time-qty-input:focus{border-color:#5eb2ff;box-shadow:0 0 0 3px rgba(94,178,255,.18)}
.time-qty-input:disabled{opacity:.45;background:#111a2a;cursor:not-allowed}
.time-total{font-size:24px;font-weight:1000;color:#fff;background:#132035}
.prod-footer{grid-template-columns:1fr 1fr 1fr 1fr}
.prod-footer .work-toggle-btn{grid-column:1 / 2;display:flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:14px;color:#fff;font-size:25px;font-weight:1000}
.prod-footer .work-toggle-btn.ready{background:#0f67d8}
.prod-footer .work-toggle-btn.running{background:#d73345}
.prod-footer .work-toggle-btn:disabled{opacity:.65;cursor:wait}
.work-toggle-icon{font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px}

/* 숫자 입력칸 기본 화살표 제거 */
.time-qty-input::-webkit-outer-spin-button,
.time-qty-input::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{
    -webkit-appearance:none;
    margin:0;
}
.time-qty-input,
input[type="number"]{
    -moz-appearance:textfield;
    appearance:textfield;
}


/* CAPA 영역 잘림 방지: 좌측 패널 내부에서 내용이 버튼/footer 밑으로 깔리지 않게 조정 */
.prod-layout{
    min-height:0;
    overflow:hidden;
}
.prod-work-info{
    min-height:0;
    overflow-y:auto;
    padding:20px 24px 26px;
}
.prod-work-info::-webkit-scrollbar{width:8px}
.prod-work-info::-webkit-scrollbar-thumb{background:#2d415e;border-radius:8px}
.big-work-no{
    font-size:36px;
    padding-bottom:14px;
    margin-bottom:14px;
}
.item-lines{
    gap:10px;
}
.item-lines div{
    padding:11px 16px;
}
.item-lines span{
    font-size:15px;
    margin-bottom:4px;
}
.item-lines strong{
    font-size:25px;
    line-height:1.15;
}
.prod-actions-small{
    margin-top:14px;
    gap:10px;
}
.prod-actions-small a{
    height:56px;
    font-size:21px;
}
.prod-capa-box{
    margin-top:22px;
    flex:1 1 auto;
    min-height:0;
    display:flex;
    flex-direction:column;
    padding:12px 14px 14px;
}
.prod-capa-box h3{
    margin:0 0 8px 0;
    font-size:20px;
    flex:0 0 auto;
}
.prod-capa-box table{
    flex:1 1 auto;
    height:100%;
    font-size:18px;
}
.prod-capa-box th,
.prod-capa-box td{
    padding:8px 8px;
    vertical-align:middle;
}
.prod-capa-box td[colspan="2"]{
    font-size:19px;
}

/* POP 부가입력 바로가기/현황 */
.pop-extra-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:-2px 0 14px}
.pop-extra-actions button{height:74px;border:1px solid #334865;border-radius:14px;background:#101f35;color:#fff;display:grid;grid-template-columns:42px 1fr;grid-template-rows:1fr 1fr;align-items:center;text-align:left;padding:10px 12px;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.pop-extra-actions button:hover{border-color:#5eb2ff;background:#142844}
.pop-extra-actions span{grid-row:1/3;font-size:30px;text-align:center}
.pop-extra-actions b{font-size:19px;font-weight:1000;line-height:1.1}
.pop-extra-actions em{font-style:normal;font-size:14px;font-weight:900;color:#a8c4e8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* POP 새창 입력 공통 */
.pop-popup-body{overflow:auto;background:#06101e;color:#fff}
.pop-extra-popup{min-height:100vh;padding:18px;background:#06101e;color:#fff}
.popup-head{height:70px;border:1px solid #2d415e;border-radius:16px;background:#101b2d;display:flex;align-items:center;justify-content:space-between;padding:0 18px;margin-bottom:14px}
.popup-head strong{display:block;font-size:30px;font-weight:1000;letter-spacing:-1px}
.popup-head span{display:block;margin-top:3px;color:#79b8ff;font-size:18px;font-weight:900}
.popup-head button{height:46px;padding:0 22px;border:1px solid #526985;border-radius:12px;background:#1e2d44;color:#fff;font-size:18px;font-weight:1000}
.popup-work-summary{display:grid;grid-template-columns:1fr 1.8fr 1.2fr;gap:10px;margin-bottom:14px}
.popup-work-summary div{border:1px solid #2d415e;border-radius:12px;background:#101b2d;padding:10px 14px;min-width:0}
.popup-work-summary span{display:block;color:#8fbfff;font-size:14px;font-weight:900;margin-bottom:4px}
.popup-work-summary b{display:block;color:#fff;font-size:19px;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.popup-form{display:grid;grid-template-columns:1fr 1fr 1fr 150px 120px;gap:10px;align-items:end;border:1px solid #2d415e;border-radius:16px;background:#101b2d;padding:14px;margin-bottom:10px}
.popup-form.defect-form{grid-template-columns:1fr 150px 2fr 120px}
.popup-form.inspection-form{grid-template-columns:1fr 1fr 1fr 2fr 120px}
.popup-form label{display:flex;flex-direction:column;gap:6px;color:#8fbfff;font-size:14px;font-weight:1000}
.popup-form label.wide{min-width:0}
.popup-form input,.popup-form select{height:44px;border:1px solid #41597a;border-radius:9px;background:#07101d;color:#fff;font-size:19px;font-weight:900;padding:0 12px;outline:none}
.popup-form input:focus,.popup-form select:focus{border-color:#5eb2ff;box-shadow:0 0 0 3px rgba(94,178,255,.16)}
.popup-form button{height:44px;border:0;border-radius:10px;background:#0f67d8;color:#fff;font-size:19px;font-weight:1000}
.popup-state{min-height:32px;display:flex;align-items:center;justify-content:flex-end;font-size:16px;font-weight:1000;color:#a8c4e8;margin-bottom:8px}
.popup-state.saving{color:#ffe3a3}.popup-state.saved{color:#aef0bf}.popup-state.error{color:#ffb8c0}
.popup-list-box{border:1px solid #2d415e;border-radius:16px;background:#101b2d;padding:14px}
.popup-list-box h3{margin:0 0 10px;color:#fff;font-size:24px;font-weight:1000}
.popup-list-box table{width:100%;border-collapse:collapse;font-size:17px}
.popup-list-box th,.popup-list-box td{border:1px solid #334865;padding:10px;text-align:center}
.popup-list-box th{background:#172439;color:#cde0f8;font-weight:1000}
.popup-list-box td{color:#fff;background:#0d1829;font-weight:900}
.popup-list-box td:nth-child(2),.popup-list-box td:nth-child(3){text-align:left}
.popup-list-box button{height:34px;border:0;border-radius:8px;background:#d73345;color:#fff;font-weight:1000;padding:0 12px}
@media(max-width:1100px){.pop-extra-actions{grid-template-columns:1fr}.popup-work-summary,.popup-form,.popup-form.defect-form,.popup-form.inspection-form{grid-template-columns:1fr}}

/* 불량등록: 제품/자재, 사내/외주 버튼 선택 + 설비별 불량유형 콤보 */
.popup-form.defect-step-form{grid-template-columns:1.1fr 1.1fr 1.4fr 120px 2fr 110px;align-items:end}
.defect-choice-group{display:flex;flex-direction:column;gap:6px;color:#8fbfff;font-size:14px;font-weight:1000}
.defect-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.defect-choice-row label{display:block}
.defect-choice-row input{position:absolute;opacity:0;pointer-events:none}
.defect-choice-row b{display:flex;align-items:center;justify-content:center;height:44px;border:1px solid #41597a;border-radius:9px;background:#07101d;color:#fff;font-size:19px;font-weight:1000;cursor:pointer}
.defect-choice-row input:checked + b{border-color:#5eb2ff;background:#0f67d8;box-shadow:0 0 0 3px rgba(94,178,255,.16)}
@media(max-width:1100px){.popup-form.defect-step-form{grid-template-columns:1fr}}

/* POP 내부 모달 팝업 */
.pop-inline-overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:9999;display:flex;align-items:center;justify-content:center;padding:28px}
.pop-inline-frame-wrap{width:min(1120px,92vw);height:min(760px,86vh);border:1px solid #365172;border-radius:18px;background:#07111f;box-shadow:0 20px 60px rgba(0,0,0,.55);overflow:hidden}
.pop-inline-frame{width:100%;height:100%;border:0;display:block;background:#07111f}
.pop-popup-body{height:100vh;overflow:hidden}
.pop-extra-popup{height:100vh;min-height:0;display:flex;flex-direction:column;box-sizing:border-box}
.popup-list-box{flex:1;min-height:0;overflow:auto}

/* 2026-07 POP: 버튼 4개 한 줄, 제품/자재불량 팝업 입력라인 정리 */
.pop-extra-actions{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.pop-extra-actions button{
    min-width:0;
    height:64px;
    padding:8px 10px;
}
.pop-extra-actions span{font-size:25px}
.pop-extra-actions b{font-size:17px;white-space:nowrap}
.pop-extra-actions em{font-size:13px}
.pop-inline-frame-wrap.no-frame{
    width:min(1060px,90vw);
    height:min(720px,84vh);
    overflow:hidden;
}
.defect-compact-form{
    grid-template-columns:160px 1fr 130px 110px !important;
    gap:10px;
    align-items:end;
}
.defect-compact-form.material-defect-form{
    grid-template-columns:280px 160px 1fr 130px 110px !important;
}
.defect-compact-form .defect-choice-group{min-width:0}
.defect-compact-form button[type="submit"]{width:100%;min-width:0}
.defect-compact-form select[name="defectType"]{min-width:0}
@media(max-width:1100px){
    .pop-extra-actions{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
    .defect-compact-form,.defect-compact-form.material-defect-form{grid-template-columns:1fr !important}
}

/* 2026-07 POP 자재불량/제품불량 내부 팝업 폭 확장 */
.pop-inline-frame-wrap,
.pop-inline-frame-wrap.no-frame{
    width:min(1360px,96vw) !important;
    height:min(720px,86vh) !important;
}

/* 자재불량 입력 라인: 거래처/자재품명/발생처/불량유형/수량/등록 한 줄 정렬 */
.defect-compact-form.material-defect-form{
    grid-template-columns:260px 260px 210px minmax(260px,1fr) 130px 100px !important;
    gap:10px !important;
    align-items:end !important;
}

/* 제품불량 입력 라인: 발생처/불량유형/수량/등록 정렬 */
.defect-compact-form:not(.material-defect-form){
    grid-template-columns:210px minmax(420px,1fr) 130px 100px !important;
    gap:10px !important;
    align-items:end !important;
}

.defect-compact-form select,
.defect-compact-form input{
    min-width:0 !important;
}

.defect-compact-form button[type="submit"]{
    width:100px !important;
    min-width:100px !important;
    justify-self:end !important;
}

@media(max-width:1200px){
    .pop-inline-frame-wrap,
    .pop-inline-frame-wrap.no-frame{
        width:96vw !important;
    }
    .defect-compact-form.material-defect-form,
    .defect-compact-form:not(.material-defect-form){
        grid-template-columns:1fr !important;
    }
    .defect-compact-form button[type="submit"]{
        width:100% !important;
        min-width:0 !important;
        justify-self:stretch !important;
    }
}
