:root{--bg: #f3f4f6;--surface: #ffffff;--surface-2: #f8f9fb;--surface-3: #eef0f3;--border: #e2e5ea;--border-strong: #cbd2d9;--text: #1b1f24;--text-2: #4b5563;--text-3: #8a94a0;--accent: #0f766e;--accent-strong: #115e59;--accent-soft: #e6f4f2;--focus-ring: 0 0 0 3px rgba(15, 118, 110, .35);--radius: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.num{text-align:right;font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono);font-size:11px}.app{min-height:100dvh}.app-body{display:flex;align-items:stretch}.app-content{flex:1;min-width:0}.report-view.hidden{display:none}.sidebar{width:208px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:12px}.sidebar-nav{display:flex;flex-direction:column;gap:6px;position:sticky;top:76px}.sidebar-item{display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px 12px;border:1px solid transparent;border-radius:var(--radius);background:transparent;cursor:pointer}.sidebar-item:hover{background:var(--surface-3)}.sidebar-item.active{background:var(--accent-soft);border-color:#b7dcd8}.sidebar-item-title{font-size:13px;font-weight:700;color:var(--text)}.sidebar-item.active .sidebar-item-title{color:var(--accent-strong)}.sidebar-item-desc{font-size:11px;color:var(--text-3)}.app-header{position:sticky;top:0;z-index:20;background:var(--surface);border-bottom:1px solid var(--border);border-top:3px solid var(--accent);padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-title h1{font-size:17px;font-weight:700;margin:0;letter-spacing:-.01em}.app-title p{margin:2px 0 0;font-size:12px;color:var(--text-2)}.header-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.badge{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);white-space:nowrap}.badge.accent{background:var(--accent-soft);border-color:#b7dcd8;color:var(--accent-strong);font-weight:600}.filter-bar-wrap{background:var(--surface);border-bottom:1px solid var(--border)}.filter-bar{padding:12px 20px 8px;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}.filter-field{display:flex;flex-direction:column;gap:4px}.process-dropdown{position:relative;display:flex;flex-direction:column;gap:4px;min-width:190px}.process-dropdown label{font-size:11px;font-weight:600;color:var(--text-2)}.process-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;height:32px;min-width:190px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:13px;text-align:left;cursor:pointer}.process-dropdown-trigger:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.dropdown-chevron{color:var(--text-3)}.process-dropdown-menu{position:absolute;z-index:20;top:58px;left:0;min-width:260px;max-height:270px;overflow-y:auto;padding:4px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);box-shadow:0 8px 24px #1b1f2424}.process-dropdown-option{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:5px 8px;border:0;border-radius:3px;background:transparent;color:var(--text);font-size:13px;text-align:left;cursor:pointer}.process-dropdown-option:hover,.process-dropdown-option[aria-selected=true]{background:var(--accent-soft)}.process-dropdown-option input{width:15px;height:15px;margin:0;accent-color:var(--accent)}.process-dropdown .filter-field-hint{color:var(--text-3);font-size:10px;white-space:nowrap}.process-select-field select{min-width:190px;height:66px;padding:4px 6px}.filter-field-hint{color:var(--text-3);font-size:10px;white-space:nowrap}.filter-error{margin:0;padding:0 20px 10px;color:#b42318;font-size:12px;font-weight:600}.notice-close{margin-left:8px;padding:0 4px;border:0;background:none;color:inherit;opacity:.55;font-size:11px;line-height:1;cursor:pointer}.notice-close:hover{opacity:1}.filter-field label{font-size:11px;font-weight:600;color:var(--text-2);letter-spacing:.02em}.filter-field select,.filter-field input{height:32px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);font-size:13px;color:var(--text);min-width:0}.filter-field select:focus,.filter-field input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.filter-actions{display:flex;gap:8px;margin-left:auto}.btn{height:32px;padding:0 14px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);font-size:13px;font-weight:600;cursor:pointer}.btn:hover{background:var(--surface-3)}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.filter-summary{padding:0 20px 10px;font-size:12px;color:var(--text-2)}.reporting-day-list{display:flex;flex-wrap:wrap;gap:6px 14px;padding:0 20px 12px;color:var(--text-2);font-size:12px}.reporting-day-item strong{color:var(--accent-strong);font-family:var(--font-mono)}.reporting-day-note{color:var(--text-3)}.process-tabs-wrap{background:var(--surface);border-bottom:1px solid var(--border);padding:0 20px 12px}.process-tabs{display:flex;flex-wrap:wrap;gap:6px}.process-tab{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);font-size:12px;font-weight:600;color:var(--text-2);cursor:pointer;white-space:nowrap}.process-tab:hover{background:var(--surface-3);color:var(--text)}.process-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.process-tabs-wrap.has-selection .process-tab:not(.active){opacity:.55}.process-tabs-wrap.has-selection .process-tab:not(.active):hover{opacity:1}.process-tab-total{padding:1px 6px;border-radius:999px;background:var(--surface-3);color:var(--text-2);font-size:10px;font-variant-numeric:tabular-nums;font-weight:700}.process-tab.active .process-tab-total{background:#ffffff38;color:#fff}.process-tab-code{font-variant-numeric:tabular-nums}.process-tab-desc{font-weight:500;opacity:.85}.process-tabs-hint{margin:8px 0 0;font-size:11px;color:var(--text-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{background:var(--surface)}.app-main{max-width:1440px;margin:0 auto;padding:16px 20px 48px;display:flex;flex-direction:column;gap:16px}.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;box-shadow:var(--shadow-sm)}.kpi-label{font-size:11px;font-weight:600;color:var(--text-2);letter-spacing:.03em}.kpi-value{font-size:22px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.kpi-sub{font-size:11px;color:var(--text-3);margin-top:2px}.kpi-card.accent-card{border-color:#b7dcd8;background:linear-gradient(180deg,#f2faf9,var(--surface))}.kpi-card.accent-card .kpi-value{color:var(--accent-strong)}.charts-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.chart-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px;box-shadow:var(--shadow-sm)}.chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}.chart-head h3{font-size:13px;font-weight:700;margin:0}.chart-hint{font-size:11px;color:var(--text-3)}.bar-chart{display:flex;flex-direction:column}.bar-groups{display:flex;margin-bottom:4px}.bar-group-label{font-size:10px;font-weight:600;color:var(--text-3);letter-spacing:.04em}.bar-group-label.day{flex:17}.bar-group-label.next{flex:7}.bar-track{display:flex;align-items:flex-end;gap:2px;height:150px;border-bottom:1px solid var(--border-strong)}.bar-col{position:relative;flex:1;height:100%;padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:flex-end}.bar-col.last-day{border-right:1px solid var(--border-strong)}.bar-fill{width:100%;background:var(--accent);border-radius:2px 2px 0 0;min-height:2px;transition:background .15s ease}.bar-col:hover .bar-fill,.bar-col:focus-visible .bar-fill{background:var(--accent-strong)}.bar-tooltip{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background:var(--text);color:#fff;font-size:11px;padding:3px 7px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:5;font-variant-numeric:tabular-nums}.bar-col:hover .bar-tooltip,.bar-col:focus-visible .bar-tooltip{opacity:1}.bar-labels{display:flex;gap:2px;margin-top:4px}.bar-labels span{flex:1;text-align:center;font-size:10px;color:var(--text-3);font-variant-numeric:tabular-nums}.cum-chart{display:flex;flex-direction:column}.cum-plot{position:relative}.cum-plot svg{display:block;width:100%;height:150px}.cum-grid{stroke:var(--border);stroke-dasharray:3 3}.cum-area{fill:var(--accent);opacity:.12}.cum-line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.cum-dot{fill:var(--surface);stroke:var(--accent);stroke-width:2}.cum-hit{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}.cum-hit button{flex:1;border:none;background:transparent;cursor:pointer;padding:0}.cum-hit button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.daily-bar-col{cursor:default}.chart-empty{padding:40px 16px;text-align:center;color:var(--text-3);font-size:13px}.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:visible}.table-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:14px 16px 10px}.table-head h3{font-size:13px;font-weight:700;margin:0}.table-scroll{overflow-x:auto;overflow-y:auto}.prod-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1720px;font-size:12px}.prod-table th,.prod-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:6px 8px;text-align:right;white-space:nowrap}.prod-table th{background:var(--surface-2);font-weight:600;color:var(--text-2);font-size:11px;text-align:center}.prod-table thead th{position:sticky;top:0;z-index:3}.prod-table td.label,.prod-table th.label{text-align:left}.prod-table td.num{font-variant-numeric:tabular-nums}.prod-table td.zero{color:var(--text-3)}.prod-table td.total-col{font-weight:700;background:var(--surface-2)}.prod-table .group-day,.prod-table .group-next{font-size:10px;letter-spacing:.05em}.prod-table .group-day{color:var(--accent-strong)}.prod-table .group-next{color:var(--text-3)}.prod-table .date-header{background:var(--accent-soft);color:var(--accent-strong);font-size:11px;font-weight:700;letter-spacing:.03em;text-align:center}.prod-table th.sticky-col,.prod-table td.sticky-col{position:sticky;z-index:2;background:var(--surface);box-shadow:3px 0 5px -3px #1018282e}.prod-table thead th.sticky-col{z-index:4;background:var(--surface-2)}.prod-table .col-op{left:0;width:92px}.prod-table .col-eq{left:92px;width:80px}.prod-table th.hour-col{min-width:46px}.prod-table .total-col{min-width:84px}.prod-table td.empty-cell{text-align:center;color:var(--text-3);padding:32px 16px}.prod-table tr.process-group-row td{background:var(--surface-2);border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);text-align:left;padding:5px 8px;font-size:11px;color:var(--text-2)}.prod-table tr.process-group-row td.process-group-label{position:relative;z-index:5;overflow:visible;white-space:nowrap}.prod-table tbody tr.process-group-row:first-child td{border-top:none}.prod-table tfoot .overall-total-row th{background:var(--accent-soft);border-top:2px solid var(--accent);color:var(--text);font-weight:700;font-size:13px;text-align:right}.process-group-code{font-weight:700;color:var(--accent-strong);font-variant-numeric:tabular-nums}.process-group-desc{font-weight:600;margin-left:6px}.process-group-meta{margin-left:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.row-btn{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;padding:0;cursor:pointer;font-size:12px;text-align:left}.row-btn:hover{color:var(--accent-strong);text-decoration:underline}.op-code{font-weight:700;font-variant-numeric:tabular-nums}.op-desc{color:var(--text-2)}.cell-btn{border:none;background:transparent;padding:0;cursor:pointer;font:inherit;color:inherit;font-variant-numeric:tabular-nums;border-radius:3px}.cell-btn:hover{color:var(--accent-strong);background:var(--accent-soft)}.cell-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.daily-table{table-layout:fixed;width:max-content;min-width:max-content;border-collapse:separate;border-spacing:0;font-size:12px}.column-hidden,.table-card[data-hide-operation] .hourly-table .col-op,.table-card[data-hide-operation] .daily-table .col-op,.table-card[data-hide-model] .hourly-table .col-model,.table-card[data-hide-model] .daily-table .col-model,.table-card[data-hide-part] .hourly-table .col-part,.table-card[data-hide-part] .daily-table .col-part,.table-card[data-hide-customer] .hourly-table .col-customer,.table-card[data-hide-customer] .daily-table .col-customer{display:none!important}.hourly-table .col-op,.daily-table .col-op{left:var(--column-offset-op)!important}.hourly-table .col-desc,.daily-table .col-desc{left:var(--column-offset-desc)!important}.hourly-table .col-model,.daily-table .col-model{left:var(--column-offset-model)!important}.hourly-table .col-eq,.daily-table .col-eq{left:var(--column-offset-eq)!important}.hourly-table .col-pkg,.daily-table .col-pkg{left:var(--column-offset-pkg)!important}.hourly-table .col-body,.daily-table .col-body{left:var(--column-offset-body)!important}.hourly-table .col-part,.daily-table .col-part{left:var(--column-offset-part)!important}.hourly-table .col-customer,.daily-table .col-customer{left:var(--column-offset-customer)!important}.daily-table th,.daily-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:6px 8px;text-align:right;white-space:nowrap}.daily-table th{background:var(--surface-2);font-weight:600;color:var(--text-2);font-size:11px;text-align:center}.daily-table thead th{position:sticky;top:0;z-index:3}.daily-table thead tr:first-child th{top:0;height:28px}.daily-table thead tr:nth-child(2) th{top:28px;height:30px}.daily-table td.label,.daily-table th.label{text-align:center}.daily-table .row-btn{justify-content:center;text-align:center}.daily-table td.num{font-variant-numeric:tabular-nums}.daily-table td.zero{color:var(--text-3)}.daily-table td.blank{background:var(--surface-2)}.daily-table td.total-col{font-weight:700;background:var(--surface-2)}.daily-table .group-day{color:var(--accent-strong);font-size:10px;letter-spacing:.05em}.daily-table .group-next{color:var(--text-3);font-size:10px;letter-spacing:.05em}.daily-table th.day-col{min-width:64px}.daily-table .day-year,.daily-table .day-number{display:block}.daily-table .day-year{color:var(--muted);font-size:10px}.daily-table th.total-col{min-width:84px}.daily-table th.sticky-col,.daily-table td.sticky-col{position:sticky;z-index:2;background:var(--surface);box-shadow:3px 0 5px -3px #1018282e}.daily-table .col-op{left:0;width:68px;min-width:68px}.daily-table .col-desc{left:68px;width:104px;min-width:104px}.daily-table thead th.sticky-col{z-index:4;background:var(--surface-2)}.daily-table .col-model{left:172px;width:120px;min-width:120px}.daily-table .col-eq{left:292px;width:80px;min-width:80px}.daily-table .col-pkg{left:372px;width:90px;min-width:90px}.daily-table .col-body{left:462px;width:90px;min-width:90px}.daily-table .col-part{left:552px;width:120px;min-width:120px}.daily-table .col-customer{left:672px;width:120px;min-width:120px}.daily-table td.empty-cell{text-align:center;color:var(--text-3);padding:32px 16px}.daily-table tr.process-group-row td{background:var(--surface-2);border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);text-align:left;padding:5px 8px;font-size:11px;color:var(--text-2)}.daily-table tr.process-group-row td.process-group-label{position:relative;z-index:5;overflow:visible;white-space:nowrap}.daily-table tbody tr.process-group-row:first-child td{border-top:none}.hourly-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:max-content;font-size:12px}.hourly-table th,.hourly-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:6px 8px;text-align:right;white-space:nowrap}.hourly-table th{background:var(--surface-2);font-weight:600;color:var(--text-2);font-size:11px;text-align:center}.hourly-table thead th{position:sticky;top:0;z-index:3}.hourly-table thead tr:first-child th{top:0;height:28px}.hourly-table thead tr:nth-child(2) th{top:28px;height:30px}.hourly-table td.label,.hourly-table th.label,.hourly-table td{text-align:center}.hourly-table .row-btn{justify-content:center;text-align:center}.hourly-table td.num{font-variant-numeric:tabular-nums}.hourly-table td.zero{color:var(--text-3)}.hourly-table td.blank{background:var(--surface-2)}.hourly-table td.total-col{font-weight:700;background:var(--surface-2)}.hourly-table .date-header{background:var(--accent-soft);color:var(--accent-strong);font-size:11px;font-weight:700;letter-spacing:.03em;text-align:center}.hourly-table th.hour-col{min-width:46px}.hourly-table th.total-col{min-width:84px}.hourly-table th.sticky-col,.hourly-table td.sticky-col{position:sticky;z-index:2;background:var(--surface);box-shadow:3px 0 5px -3px #1018282e}.hourly-table thead th.sticky-col{z-index:4;background:var(--surface-2)}.hourly-table thead th.sticky-panel,.daily-table thead th.sticky-panel{position:sticky;left:0;z-index:6;width:var(--label-frame-width);min-width:var(--label-frame-width);background:var(--surface-2);box-shadow:3px 0 5px -3px #1018282e}.hourly-table .col-op{left:0;width:68px;min-width:68px}.hourly-table .col-desc{left:68px;width:104px;min-width:104px}.hourly-table .col-model{left:172px;width:120px;min-width:120px}.hourly-table .col-eq{left:292px;width:80px;min-width:80px}.hourly-table .col-pkg{left:372px;width:90px;min-width:90px}.hourly-table .col-body{left:462px;width:90px;min-width:90px}.hourly-table .col-part{left:552px;width:120px;min-width:120px}.hourly-table .col-customer{left:672px;width:120px;min-width:120px}.column-visibility{display:inline-flex;gap:12px;margin-left:auto;align-items:center;font-size:11px;color:var(--text-2)}.column-visibility label{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer}.hourly-table td.sticky-col,.hourly-table th.sticky-col,.daily-table td.sticky-col,.daily-table th.sticky-col{padding-left:4px;padding-right:4px}.resize-handle{position:absolute;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;z-index:8}.sticky-col{position:relative}.hourly-table td.empty-cell{text-align:center;color:var(--text-3);padding:32px 16px}.hourly-table tr.process-group-row td{background:var(--surface-2);border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);text-align:left;padding:5px 8px;font-size:11px;color:var(--text-2)}.hourly-table tbody tr.process-group-row:first-child td{border-top:none}.hourly-table tr.process-group-row td.process-group-label{position:sticky;left:0;z-index:5;background:var(--surface-2);overflow:visible;white-space:nowrap;box-shadow:3px 0 5px -3px #1018282e}.process-group-button{border:0;padding:0;background:transparent;color:inherit;cursor:pointer;font:inherit}.process-group-button:hover{text-decoration:underline}.hourly-table tr.process-group-row td.process-group-spacer{position:static;background:var(--surface-2)}.hourly-table tfoot .overall-total-row th{background:var(--accent-soft);border-top:2px solid var(--accent);color:var(--text);font-weight:700;font-size:13px;text-align:center}.hourly-table tfoot .overall-total-row th,.daily-table tfoot .overall-total-row th{position:sticky;bottom:0;z-index:3}.hourly-table tfoot .overall-total-row th.hourly-sticky-label{position:sticky;left:0;z-index:6;width:var(--label-frame-width);min-width:var(--label-frame-width);background:var(--accent-soft);box-shadow:3px 0 5px -3px #1018282e}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.summary-table{width:100%;border-collapse:collapse;font-size:12px}.summary-table th{text-align:left;font-size:11px;color:var(--text-2);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--border-strong)}.summary-table td{padding:6px 8px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.summary-table th.num,.summary-table td.num{text-align:right}.summary-row-btn{display:inline-flex;align-items:center;gap:8px;border:none;background:transparent;padding:0;cursor:pointer;text-align:left}.summary-row-btn:hover .sum-name{color:var(--accent-strong);text-decoration:underline}.sum-name{font-weight:600}.sum-desc{color:var(--text-2)}.lot-dialog{border:none;border-radius:var(--radius-lg);padding:0;width:min(760px,calc(100vw - 32px));color:var(--text);box-shadow:0 20px 60px #10182840}.lot-dialog::backdrop{background:#10182873}.lot-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.lot-dialog-head h2{font-size:15px;font-weight:700;margin:0}.lot-dialog-actions{display:flex;align-items:center;gap:8px}.lot-dialog-export{height:28px;padding:0 12px;font-size:12px}.lot-dialog-close{border:none;background:transparent;cursor:pointer;font-size:18px;line-height:1;padding:4px 8px;border-radius:var(--radius);color:var(--text-2)}.lot-dialog-close:hover{background:var(--surface-3);color:var(--text)}.lot-dialog-summary{display:flex;gap:16px;align-items:baseline;flex-wrap:wrap;padding:10px 16px;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:12px;color:var(--text-2)}.lot-dialog-summary strong{font-variant-numeric:tabular-nums;color:var(--text)}.lot-dialog-context{margin-left:auto;color:var(--text-3)}.lot-dialog-body{max-height:60vh;overflow:auto;padding:0 16px 16px}.lot-table{width:100%;border-collapse:collapse;font-size:12px}.lot-table th{text-align:center;font-size:11px;color:var(--text-2);font-weight:600;padding:8px 6px;border-bottom:1px solid var(--border-strong);position:sticky;top:0;background:var(--surface)}.lot-table td{text-align:center;padding:7px 6px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.lot-table th.num,.lot-table td.num{text-align:center}.lot-empty{padding:32px 16px;text-align:center;color:var(--text-3);font-size:13px}.otp-dialog{border:none;border-radius:var(--radius-lg);padding:0;width:min(380px,calc(100vw - 32px));color:var(--text);box-shadow:0 20px 60px #10182840}.otp-dialog::backdrop{background:#10182873}.otp-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.otp-dialog-head h2{font-size:15px;font-weight:700;margin:0}.otp-dialog-body{padding:16px;display:flex;flex-direction:column;gap:10px}.otp-dialog-guide{margin:0;font-size:13px;color:var(--text-2)}.otp-dialog-countdown{font-size:13px;color:var(--text-2)}.otp-dialog-countdown strong{font-family:var(--font-mono);font-size:16px;color:var(--accent-strong);font-variant-numeric:tabular-nums}.otp-dialog-input{height:44px;padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);font-size:20px;font-family:var(--font-mono);letter-spacing:.35em;text-align:center;color:var(--text)}.otp-dialog-input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.otp-dialog-input:disabled{background:var(--surface-3);color:var(--text-3)}.otp-dialog-expired{margin:0;font-size:12px;color:#b3261e;font-weight:600}.otp-dialog-actions{display:flex;gap:8px;justify-content:flex-end}.login-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:linear-gradient(180deg,#f2faf9,var(--bg))}.login-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:24px;display:flex;flex-direction:column;gap:14px}.login-brand{text-align:center;padding-bottom:14px;border-bottom:1px solid var(--border)}.login-brand h1{font-size:20px;font-weight:700;margin:0;color:var(--accent-strong);letter-spacing:-.01em}.login-brand p{margin:4px 0 0;font-size:12px;color:var(--text-2)}.login-field{display:flex;flex-direction:column;gap:4px}.login-field span{font-size:11px;font-weight:600;color:var(--text-2);letter-spacing:.02em}.login-field input{height:36px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);font-size:14px;color:var(--text)}.login-field input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.login-error{margin:0;font-size:12px;color:#b3261e;background:#fdecea;border:1px solid #f5c6c2;border-radius:var(--radius);padding:8px 10px}.login-submit{height:38px;font-size:14px}.login-demo{margin-top:4px;padding-top:14px;border-top:1px dashed var(--border-strong)}.login-demo-title{margin:0 0 6px;font-size:11px;font-weight:600;color:var(--text-3);letter-spacing:.02em}.login-demo ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.login-demo li{font-size:12px;color:var(--text-2)}.login-demo code{font-family:var(--font-mono);font-size:11px;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;color:var(--accent-strong)}.user-badge{background:var(--accent-soft);border-color:#b7dcd8;color:var(--accent-strong);font-weight:600}.master-table{border-collapse:separate;border-spacing:0;width:100%;min-width:720px;font-size:12px}.master-table th,.master-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:8px 10px;text-align:center;white-space:nowrap}.master-table th{background:var(--surface-2);font-weight:600;color:var(--text-2);font-size:11px}.master-table td.label{text-align:left}.master-table tr.current-row td{background:var(--accent-soft)}.master-table .perm-cell input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.master-table .manage-cell{display:flex;gap:6px;justify-content:center}.master-table .manage-cell .btn{height:28px;padding:0 10px;font-size:12px}.master-input{height:28px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);font-size:12px;color:var(--text);width:120px}.master-input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.btn-danger{border-color:#e5b8b4;color:#b3261e}.btn-danger:hover:not(:disabled){background:#fdecea}.master-add-form{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-end;padding:0 16px 16px}.master-add-form .filter-field input{width:140px}.master-add-form input[type=password],.master-add-form input[type=email],.master-add-form input[aria-label=호스트]{width:180px}.master-add-actions{display:flex;gap:8px;align-items:center}.db-message{margin:0;font-size:12px;border-radius:var(--radius);padding:8px 10px;flex-basis:100%}.db-message.ok{color:#1e7d32;background:#e8f5e9;border:1px solid #c8e6c9}.db-message.error{color:#b3261e;background:#fdecea;border:1px solid #f5c6c2}.db-config-status{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);white-space:nowrap;font-weight:600}.db-config-status.neutral{color:var(--text-2);background:var(--surface-2);border-color:var(--border-strong)}.db-config-status.info{color:var(--accent-strong);background:var(--accent-soft);border-color:#b7dcd8}.db-config-status.success{color:#1e7d32;background:#e8f5e9;border-color:#c8e6c9}.db-config-status.danger{color:#b3261e;background:#fdecea;border-color:#f5c6c2}.master-perm-fieldset{border:1px solid var(--border-strong);border-radius:var(--radius);padding:8px 10px;margin:0;display:flex;gap:12px;align-items:center}.master-perm-fieldset legend{font-size:11px;font-weight:600;color:var(--text-2);padding:0 4px}.master-perm-check{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-2);cursor:pointer}.master-perm-check input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.access-denied{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:48px 24px;text-align:center}.access-denied h2{font-size:17px;font-weight:700;margin:0 0 8px;color:var(--text)}.access-denied p{margin:0 0 20px;font-size:13px;color:var(--text-2)}.wip-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 8px;padding:8px 12px}.wip-toolbar>.wip-radio-group{flex-basis:100%}.wip-toolbar .filter-field{flex:0 0 auto}.wip-toolbar .filter-field input[type=text],.wip-toolbar .filter-field select{width:110px}.wip-toolbar .filter-field.compact input[type=text],.wip-toolbar .filter-field.compact select{width:86px}.app-main.wip-main{max-width:none}.wip-radio-group{display:flex;align-items:center;gap:14px;margin:0;padding:0;border:none}.wip-radio-group legend{padding:0;margin-right:2px;font-size:11px;font-weight:600;color:var(--text-2);letter-spacing:.02em}.wip-radio-group label{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.wip-radio-group input[type=radio]{width:15px;height:15px;margin:0;accent-color:var(--accent);cursor:pointer}.wip-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1200px;font-size:12px}.wip-table th,.wip-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:6px 8px;white-space:nowrap}.wip-table th{background:var(--surface-2);font-weight:600;color:var(--text-2);font-size:11px;text-align:center;position:sticky;top:0;z-index:3}.wip-table td.label{text-align:left}.wip-table td.num{text-align:right;font-variant-numeric:tabular-nums}.wip-table tr.wip-subtotal td{background:var(--accent-soft);font-weight:700;border-top:1px solid var(--border-strong)}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.charts-grid{grid-template-columns:1fr}}@media(max-width:720px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.summary-grid{grid-template-columns:1fr}.app-main{padding:12px 12px 40px}.app-header,.filter-bar,.wip-toolbar{padding:10px 12px}.process-tabs-wrap,.filter-summary{padding:0 12px 10px}.filter-actions{margin-left:0}.app-body{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);padding:8px 12px}.sidebar-nav{flex-direction:row;position:static;gap:8px}.sidebar-item{flex:1;padding:8px 10px}.master-add-form{padding:0 12px 12px}.master-add-form .filter-field input,.master-add-form input[type=password],.master-add-form input[type=email],.master-add-form input[aria-label=호스트]{width:100%}.master-perm-fieldset{flex-wrap:wrap}}.invoice-sheet{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:0 0 16px;padding:16px 20px}.invoice-sheet-title{font-size:20px;font-weight:700;letter-spacing:.02em;margin:0 0 12px;text-align:center}.invoice-sheet-grid{display:grid;gap:10px 24px;grid-template-columns:1fr 1fr}.invoice-block{border:1px solid var(--border);border-radius:var(--radius);min-height:62px;padding:8px 10px}.invoice-block-label{color:#000;display:block;font-size:12px;font-weight:600;margin-bottom:4px}.invoice-table th,.invoice-table td.label{text-align:center}.invoice-table th,.invoice-table td{color:#000}.invoice-total td{border-top:2px solid var(--border-strong);font-weight:700}.invoice-block-body{display:flex;flex-direction:column;font-size:13px;gap:2px;line-height:1.5}@media(max-width:900px){.invoice-sheet-grid{grid-template-columns:1fr}}.login-version{color:var(--text-3);font-size:11px;margin:4px 0 0;text-align:center}.invoice-block-body,.invoice-block-body .inv-line{color:#000}.invoice-inline{flex-direction:row;flex-wrap:wrap;gap:6px}.inv-input{background:var(--surface);border:1px dashed var(--border-strong);border-radius:4px;color:#000;font-family:Arial,Malgun Gothic,sans-serif;font-size:13px;min-width:0;padding:3px 6px;width:100%}.invoice-inline .inv-input{flex:1 1 110px;width:auto}.inv-input:focus{border-style:solid;border-color:var(--accent);outline:none}.inv-strong{font-size:16px;font-weight:700}.inv-remark{font-size:18px;font-weight:700}.inv-red{color:#e00000}.wip-toolbar .filter-field input.datetime-input,.filter-field .datetime-input{flex:0 0 auto;font-family:Consolas,Courier New,monospace;width:172px}.datetime-wrap{align-items:center;display:inline-flex;gap:4px;position:relative}.datetime-pick{height:32px;padding:0 8px}.datetime-picker-native{border:0;bottom:0;height:1px;opacity:0;padding:0;pointer-events:none;position:absolute;right:0;width:1px}.invoice-use-time{align-self:flex-end;height:32px}.pl-picker-menu{display:flex;flex-direction:column;gap:6px;max-height:380px;min-width:380px;overflow:hidden;padding:8px}.pl-picker-tools{display:flex;flex-wrap:wrap;gap:6px}.pl-picker-tools input{border:1px solid var(--border-strong);border-radius:var(--radius);flex:1 1 100%;font-size:13px;height:30px;padding:0 8px}.pl-picker-list{overflow-y:auto}.pl-picker-note{color:var(--text-3);font-size:12px;margin:0}.pl-picker-time{color:var(--text-3);font-size:11px;margin-left:auto}.pl-picker .process-dropdown-option span{font-size:13px}.invoice-toolbar .filter-field>span:first-child{color:var(--text-2);font-size:11px;font-weight:600;letter-spacing:.02em}.datetime-wrap .datetime-pick{flex:0 0 auto}.invoice-toolbar{align-items:flex-end}.wip-current-stock{align-self:flex-end;font-weight:600;height:32px}.filter-field input:disabled,.filter-field select:disabled{background:var(--surface-3);color:var(--text-3);cursor:not-allowed}.selection-summary{align-items:center;background:var(--accent-soft, #e8f5f2);border:1px solid var(--accent);border-radius:var(--radius);color:var(--text-1);display:flex;flex-wrap:wrap;font-size:12px;gap:6px 16px;margin:0 0 8px;padding:6px 10px}.selection-summary b{font-size:13px}.selection-note{color:var(--text-3)}.selection-clear{height:26px;margin-left:auto;padding:0 8px}.table-scroll td.cell-selected{background:var(--accent-soft, #d7ebe7)!important;box-shadow:inset 0 0 0 1px var(--accent)}.weight-paste{display:flex;flex-direction:column;gap:6px;padding:0 12px 8px}.weight-paste textarea{border:1px solid var(--border-strong);border-radius:var(--radius);font-family:Consolas,Courier New,monospace;font-size:12px;padding:6px 8px;resize:vertical;width:100%}.weight-paste .btn{align-self:flex-start}.master-tabs{border-bottom:1px solid var(--border);display:flex;gap:4px;margin-bottom:12px}.master-tab{background:none;border:1px solid transparent;border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;color:var(--text-2);cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.master-tab:hover{background:var(--surface-2)}.master-tab.active{background:var(--surface);border-color:var(--border);color:var(--accent-strong);margin-bottom:-1px}.wip-table tr.row-editing td{background:var(--accent-soft)}.cell-input{background:transparent;border:1px solid transparent;border-radius:3px;font:inherit;padding:2px 4px;text-align:inherit;width:100%}.cell-input:hover{border-color:var(--border)}.cell-input:focus{background:var(--surface);border-color:var(--accent);outline:none}.weight-save-bar{align-items:center;padding-top:0}.sidebar-group{display:flex;flex-direction:column;gap:4px}.sidebar-group-head{display:flex;align-items:center;gap:6px;text-align:left;padding:10px 12px;border:1px solid transparent;border-radius:var(--radius);background:transparent;cursor:pointer}.sidebar-group-head:hover{background:var(--surface-3)}.sidebar-group-head.active{background:var(--accent-soft);border-color:#b7dcd8}.sidebar-group.open .sidebar-group-head{background:var(--surface-3)}.sidebar-group-caret{font-size:11px;color:var(--text-muted);width:10px}.sidebar-group-count{margin-left:auto;font-size:11px;font-weight:700;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:1px 7px}.sidebar-group-body{display:flex;flex-direction:column;gap:4px;padding-left:10px;margin-left:6px;border-left:2px solid var(--border);max-height:46vh;overflow-y:auto}.sidebar-group-search{padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius);font-size:12px;background:var(--surface)}.sidebar-group-body .sidebar-item{padding:7px 10px}.sidebar-group-empty{margin:4px 2px;font-size:12px;color:var(--text-muted)}.date-field{position:relative}.date-field-row{display:flex;align-items:center;gap:8px}.date-field-value{display:inline-flex;align-items:center;gap:8px;min-width:140px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:13px;cursor:pointer}.date-field-value:disabled{opacity:.55;cursor:not-allowed}.date-field-text{font-variant-numeric:tabular-nums}.date-field-icon{margin-left:auto;font-size:12px}.date-field-time{font-size:12px;font-weight:700;color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;padding:3px 9px;white-space:nowrap}.calendar-pop{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:258px;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 28px #0f172a2e}.calendar-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}.calendar-nav{width:26px;height:26px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font-size:14px;line-height:1}.calendar-select{flex:1;padding:4px 6px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-weekday{text-align:center;font-size:11px;font-weight:700;color:var(--text-muted);padding-bottom:2px}.calendar-blank{height:30px}.calendar-day{height:30px;border:1px solid transparent;border-radius:var(--radius);background:transparent;cursor:pointer;font-size:12px;font-variant-numeric:tabular-nums}.calendar-day:hover:not(:disabled){background:var(--surface-3)}.calendar-day.selected{background:var(--accent-soft);border-color:#b7dcd8;font-weight:700;color:var(--accent-strong)}.calendar-day:disabled{opacity:.3;cursor:not-allowed}.calendar-foot{display:flex;justify-content:flex-end;margin-top:8px}.wip-radio-label{font-size:12px;font-weight:700;color:var(--text-muted);margin-right:2px}.cust-perm-toggle{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);cursor:pointer;font-size:12px;font-weight:700;white-space:nowrap}.cust-perm-toggle:hover{background:var(--surface-3)}.cust-perm-toggle.open{background:var(--accent-soft);border-color:#b7dcd8;color:var(--accent-strong)}.cust-perm-row>td{background:var(--surface-3);padding:10px 12px}.cust-perm-head{font-size:12px;font-weight:700;color:var(--text-muted);margin-bottom:8px}.cust-perm-panel{display:flex;flex-direction:column;gap:8px}.cust-perm-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cust-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 12px;max-height:210px;overflow-y:auto}.cust-perm-builtin{margin-left:4px;font-size:10px;font-weight:700;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:0 6px}.cust-pick-panel{display:flex;flex-direction:column;gap:10px;padding:10px 16px 14px}.cust-pick-panel .btn-primary{align-self:flex-start}.cust-builtin-row>td{color:var(--text-muted);background:var(--surface-3)}@media(max-width:900px){.sidebar-group{flex:1}.sidebar-group-body{max-height:40vh}.calendar-pop{left:auto;right:0}}.date-field-now{display:inline-flex;align-items:center;min-width:140px;padding:7px 10px;border:1px dashed var(--border);border-radius:var(--radius);font-size:13px;color:var(--text-muted)}.env-board+.env-board{margin-top:8px}.env-search-wrap{padding:8px 20px 2px}.env-board-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.env-board-head h3{font-size:14px;font-weight:700;margin:0}.env-board-sub{font-size:11px;font-weight:500;color:var(--text-3);margin-left:6px}.env-board-actions{display:flex;gap:8px}.env-search{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;padding:0 0 6px}.env-search .filter-field{flex-direction:row;align-items:center;gap:8px}.env-search .filter-field .env-key-label{font-size:13px;white-space:nowrap}.env-search .filter-field input{min-width:200px}.env-search-actions{margin-left:auto}.env-key-label{color:var(--text);font-weight:700}.env-list-main{padding-top:12px;padding-bottom:16px}.env-list-card{padding-bottom:10px}.env-summary{margin:0;padding:6px 16px 5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.env-legend{margin-left:auto;display:inline-flex;gap:14px;font-size:11px;font-weight:600}.env-legend-due{color:#b26a00}.env-legend-expired{color:#b3261e}.env-board-msg{padding:0 16px 8px;margin:0;white-space:pre-line}.env-ok{color:var(--accent);font-size:12px;margin:0}.env-muted{color:var(--text-3);font-size:12px}.env-table{width:100%;table-layout:auto;border-collapse:collapse;font-size:13px}.env-table th{background:#000;color:#fff;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.02em;text-align:left;padding:9px 12px;white-space:nowrap;border:none}.env-table td{padding:3px 12px;border:none;border-bottom:1px solid #c8c8c8;background:#fff;height:26px;color:#222;white-space:nowrap;vertical-align:middle}.env-table tbody tr:hover td{background:#f7f7f7}.env-table th.center,.env-table td.center{text-align:center}.env-table th.env-th-no{width:1%}.env-table td.env-expiry-due{color:#b26a00;font-weight:700}.env-table td.env-expiry-expired{color:#b3261e;font-weight:700}.env-empty{color:var(--text-3);padding:20px 8px!important;white-space:normal!important}.env-link{border:none;background:none;color:#1a4d8f;text-decoration:underline;cursor:pointer;font-size:12px;padding:0}.env-link:hover{color:#0b2f5e}.env-manage{white-space:nowrap}.env-btn-sm{height:20px;padding:0 8px;font-size:11px;margin:0 2px}.env-pager{display:flex;justify-content:center;gap:4px;padding:12px 0 2px}.env-pager button{min-width:30px;height:30px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);cursor:pointer;font-size:12px;color:var(--text-2)}.env-pager button:hover:not(:disabled){background:var(--surface-3)}.env-pager button.active{background:#000;border-color:#000;color:#fff;font-weight:700}.env-pager button:disabled{opacity:.45;cursor:default}.env-dialog-body{padding:14px 16px;max-height:70vh;overflow:auto}.env-dialog-foot{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.env-busy{margin-right:auto;font-size:12px;color:var(--text-2)}.env-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 14px}.env-form-field input{width:100%}.env-form-error{white-space:pre-line;margin-top:12px}.env-slot-list{margin-top:16px;border-top:1px solid var(--border);padding-top:10px}.env-slot-hint{font-size:11px;color:var(--text-3);margin:0 0 8px}.env-slot-row{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:start;padding:8px 0;border-bottom:1px dashed var(--border)}.env-slot-name{font-weight:700;font-size:12px;padding-top:4px}.env-slot-count{display:block;font-weight:400;font-size:11px;color:var(--text-3)}.env-slot-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12px}.env-slot-files li,.env-download-list li{display:flex;align-items:center;gap:8px}.env-slot-files li.removed .env-file-name{text-decoration:line-through;color:var(--text-3)}.env-slot-files li.pending .env-file-name{color:#1a4d8f}.env-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:420px}.env-file-size{color:var(--text-3);font-size:11px;white-space:nowrap}.env-file-x{border:none;background:none;color:#b3261e;cursor:pointer;font-size:11px;padding:0 4px}.env-file-add{position:relative;display:inline-flex;align-items:center;height:28px;font-size:12px;overflow:hidden}.env-file-add input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.env-file-add.disabled{opacity:.5;pointer-events:none}.env-download-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px}.env-download-list .env-file-name{flex:1}.env-alarm-form{display:flex;flex-direction:column;gap:14px}.env-alarm-form textarea{width:100%;font:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--border-strong);border-radius:var(--radius);resize:vertical}.env-inline{display:flex;align-items:center;gap:8px}.env-check{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600}.env-alarm-notes{margin:0;padding-left:18px;font-size:12px;color:var(--text-2);line-height:1.7}.login-notice{margin:0;font-size:12px;color:#7a4b00;background:#fff6e0;border:1px solid #f1d9a6;border-radius:var(--radius);padding:8px 10px}.session-restoring{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--text-muted, #666);font-size:13px}.idle-warning-text{margin:4px 0 8px;font-size:14px;line-height:1.7}.idle-warning-count{color:#b3261e;font-size:16px}.idle-warning-sub{margin:0;font-size:12px;color:var(--text-muted, #666)}.env-table.env-fill tbody tr{height:var(--env-row-h, 26px)}.env-table.env-fill td{height:auto}.env-board-fill .env-list-main{padding-bottom:0}.env-board-fill .env-list-card{padding-bottom:8px}
