:root{--ink:#17243d;--muted:#77849a;--line:#e2e9f2;--blue:#1d5fae;--navy:#112a50;--green:#0b8d72;--purple:#695cc5;--orange:#d57a13;--bg:#f3f6fa}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:"Malgun Gothic","Apple SD Gothic Neo",Arial,sans-serif;font-size:14px}button,input,select{font:inherit}.hidden{display:none!important}.app{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:var(--navy);color:#dbe6f8;display:flex;flex-direction:column;z-index:30;box-shadow:8px 0 28px #0b183016}.brand{height:82px;padding:0 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #ffffff15}.mark{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,#347fd8,#8ac2f7);display:grid;place-items:center;font:800 20px Georgia;color:#fff}.brand b{display:block;font-size:18px;letter-spacing:2px}.brand span{display:block;font-size:9px;color:#8ea8cd;letter-spacing:1.5px;margin-top:2px}.sidebar nav{padding:17px 11px;flex:1;overflow:auto}.sidebar label{display:block;color:#7795be;font-size:9px;letter-spacing:1px;padding:0 11px;margin:10px 0 6px}.nav,.sheet-link{width:100%;border:0;background:transparent;color:#b6c6df;text-decoration:none;display:flex;gap:10px;align-items:center;padding:11px;border-radius:8px;cursor:pointer;text-align:left;margin:2px 0;font-size:12px}.nav:hover,.sheet-link:hover{background:#ffffff0d;color:#fff}.nav.active{background:#306cb9;color:#fff;box-shadow:0 5px 18px #081b3e55}.sheet-link{color:#8fb6e7}.account{border-top:1px solid #ffffff15;padding:14px 18px;display:flex;align-items:center;gap:10px}.account>div{width:34px;height:34px;border-radius:50%;background:#dcecff;color:#1e5ca7;display:grid;place-items:center;font-weight:800}.account p{margin:0}.account b,.account span{display:block;font-size:10px}.account span{color:#8ba2c4;margin-top:3px}.workspace{margin-left:238px;width:calc(100% - 238px)}header{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:20}header small,.panel-head small{font-size:8px;letter-spacing:1.3px;color:#3977c6;font-weight:800}header h1{font-size:21px;margin:4px 0 0;letter-spacing:-.8px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.header-actions>span{font-size:9px;color:#8994a5;margin-right:6px}.outline,.primary,.ghost,.mini,.icon-btn{border:1px solid #cad7e6;background:#fff;color:#36577f;border-radius:7px;padding:8px 11px;font-size:10px;font-weight:700;cursor:pointer}.primary{background:var(--blue);border-color:var(--blue);color:#fff}.small{padding:7px 10px}.ghost,.mini{border:0;background:transparent;color:#5d7190}.icon-btn{display:none;font-size:18px;border:0;padding:5px}.top-links{display:none}.filters{background:#fff;border-bottom:1px solid var(--line);min-height:58px;padding:10px 28px;display:flex;align-items:center;gap:8px}.filters label,.detail-filters label{display:flex;align-items:center;gap:7px;border:1px solid #d9e2ed;background:#fbfcfe;border-radius:6px;padding:0 9px;min-height:36px;font-size:9px;color:#8390a3;white-space:nowrap}.filters select,.detail-filters select,.detail-filters input{border:0;outline:0;background:transparent;color:#2f405b;font-size:10px;font-weight:700;min-width:66px}.content{padding:19px 28px 40px;max-width:1600px;margin:auto}.loading{height:calc(100vh - 140px);display:flex;align-items:center;justify-content:center;gap:12px;color:#67778e}.loading i{width:20px;height:20px;border:2px solid #d5e1ef;border-top-color:#2875cc;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{margin:25px 28px;padding:18px;background:#fff3ef;border:1px solid #f0cfc6;border-radius:9px;color:#b54c32}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:11px}.kpi,.panel{background:#fff;border:1px solid #e0e7f0;border-radius:10px;box-shadow:0 4px 15px #203a5d0a}.kpi{min-height:105px;padding:15px;display:flex;gap:12px}.kpi>i{font-style:normal;width:34px;height:34px;border-radius:9px;background:#e7f1ff;color:#276bb9;display:grid;place-items:center}.kpi>i.navy{background:#e8edf5;color:#244873}.kpi>i.green{background:#e2f7ef;color:var(--green)}.kpi>i.purple{background:#eeeafe;color:var(--purple)}.kpi>i.orange{background:#fff0dd;color:var(--orange)}.kpi span,.kpi strong,.kpi small{display:block}.kpi span{font-size:9px;color:#7c899d}.kpi strong{font-size:19px;margin:6px 0;letter-spacing:-.7px}.kpi small{font-size:8px;color:#8c97a8}.main-grid{display:grid;grid-template-columns:2fr 1fr;gap:11px;margin-bottom:11px}.bottom-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:11px}.panel{padding:16px;margin-bottom:11px;min-width:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.panel-head h2{font-size:13px;margin:4px 0 0}.trend-svg{width:100%;height:270px;overflow:visible}.trend-svg text{font-size:9px;fill:#8490a1}.trend-svg .grid line{stroke:#e8edf4;stroke-width:1}.target-bars rect{fill:#dfeaf8}.sales-line{fill:none;stroke:#1960ad;stroke-width:3}.orders-line{fill:none;stroke:#7769cb;stroke-width:2}.chart-legend{display:flex;gap:14px;justify-content:center;font-size:8px;color:#768397}.chart-legend span:before{content:"";width:8px;height:8px;display:inline-block;margin-right:4px;border-radius:2px}.lg-target:before{background:#dfeaf8}.lg-sales:before{background:#1960ad}.lg-order:before{background:#7769cb}.plant-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plant-cards article{padding:12px;background:#f5f8fc;border-radius:8px}.plant-cards span,.plant-cards b,.plant-cards small,.plant-cards p{display:block}.plant-cards span{font-size:9px;color:#758398}.plant-cards b{font-size:16px;margin:7px 0}.plant-cards small,.plant-cards p{font-size:8px;color:#8793a5}.plant-cards article>div{height:6px;background:#e8edf3;border-radius:6px;margin:9px 0}.plant-cards article>div i{display:block;height:100%;background:#2873c7;border-radius:6px}.plant-cards article>div i.vn{background:#7165c6}.plant-cards p{margin:0}.compare-note{margin-top:9px;border-left:3px solid #0c9677;background:#eff9f6;padding:11px;border-radius:5px}.compare-note b,.compare-note strong{display:block}.compare-note b{font-size:9px}.compare-note strong{font-size:20px;color:#087d65;margin:4px 0}.compare-note p{font-size:8px;color:#748596;margin:0}.table-wrap{overflow:auto}.table-wrap table{border-collapse:collapse;width:100%;font-size:9px;white-space:nowrap}.table-wrap th{background:#f5f8fc;color:#6e7e93;text-align:left;padding:10px;border-top:1px solid #e5ebf3;border-bottom:1px solid #e5ebf3}.table-wrap td{padding:10px;border-bottom:1px solid #edf1f6;color:#43536b}.pill{display:inline-block;padding:4px 7px;border-radius:11px;font-size:8px;font-weight:700}.pill.green{background:#e4f6f0;color:#087d65}.pill.blue{background:#e8f1fd;color:#2462ad}.pill.purple{background:#eeeafe;color:#6758bc}.pill.orange{background:#fff0e4;color:#c76422}.pill.gray{background:#eef1f4;color:#667486}.ranking{display:flex;flex-direction:column;gap:9px}.ranking>div{display:grid;grid-template-columns:18px 85px 1fr 52px;gap:7px;align-items:center;font-size:8px}.ranking em{font-style:normal;background:#edf3fb;color:#2a69b7;border-radius:4px;text-align:center;padding:3px}.ranking b{overflow:hidden;text-overflow:ellipsis}.ranking span{height:5px;background:#edf1f6;border-radius:5px}.ranking span i{display:block;height:100%;background:#4f8fd9;border-radius:5px}.ranking strong{text-align:right}.empty{text-align:center;color:#8a96a7;padding:25px}.rate{display:flex;align-items:center;gap:7px}.rate>i{width:65px;height:5px;background:#2f77c7;border-radius:4px}.up{color:#087f68!important}.down{color:#d05a43!important}.target-cell{border:1px solid #cfe0f4;background:#f5f9ff;color:#175ba8;border-radius:5px;padding:5px 9px;font-weight:700;cursor:pointer}.micro{width:90px;height:6px;background:#edf1f6;border-radius:5px}.micro i{display:block;height:100%;background:#397fce;border-radius:5px}.composition>.stack{height:18px;border-radius:9px;display:flex;overflow:hidden;margin:10px 0 18px;background:#edf1f6}.composition>.stack i:first-child{background:#1b5da9}.composition>.stack i:last-child{background:#91c3ef}.composition>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:8px}.composition article{background:#f5f8fc;padding:12px;border-radius:8px;display:grid;grid-template-columns:1fr auto;gap:6px}.composition article span,.composition article small{font-size:8px;color:#77869a}.composition article b{font-size:14px}.composition article strong{color:#2366b5}.detail-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.detail-filters .search{margin-left:auto}.detail-summary{background:#eaf2fc;border:1px solid #d3e3f6;padding:11px 14px;border-radius:8px;margin-bottom:10px;display:flex;gap:20px;font-size:10px;color:#315c91}.detail-table td:nth-child(5){max-width:260px;overflow:hidden;text-overflow:ellipsis}.limit{text-align:center;color:#8b96a6;font-size:9px}.modal{position:fixed;inset:0;background:#0e203c99;display:grid;place-items:center;padding:20px;z-index:50}.modal-card{width:min(750px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:13px;padding:22px;box-shadow:0 20px 80px #07152c66}.modal-head{display:flex;justify-content:space-between}.modal-head small{font-size:8px;color:#3574c5;letter-spacing:1px}.modal-head h2{font-size:18px;margin:5px 0}.modal-head p{font-size:9px;color:#7c899b}.modal-head .icon-btn{display:block}.target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.target-grid label{border:1px solid #dbe3ed;border-radius:7px;display:grid;grid-template-columns:34px 1fr 16px;align-items:center;padding:9px}.target-grid span,.target-grid small{font-size:9px;color:#738196}.target-grid input{border:0;outline:0;text-align:right;color:#174f94;font-weight:700;min-width:0}.modal-actions{border-top:1px solid #e6ebf1;padding-top:14px;display:flex;align-items:center;gap:8px}.modal-actions>span{font-size:9px;color:#7b8798;margin-right:auto}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.main-grid,.bottom-grid{grid-template-columns:1fr}.header-actions>span{display:none}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.workspace{margin-left:0;width:100%}.icon-btn{display:block;margin-right:10px}.header-actions .outline{display:none}header{padding:0 14px}.filters{padding:9px 14px;overflow:auto}.top-links{display:flex;gap:8px;padding:8px 14px;background:#edf4fc}.top-links a{font-size:9px;color:#275e9f}.content{padding:14px}.target-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.kpi-grid{grid-template-columns:1fr}.target-grid{grid-template-columns:1fr}.header-actions .primary{font-size:0}.header-actions .primary:after{content:"목표";font-size:10px}.plant-cards{grid-template-columns:1fr}.modal-actions>span{display:none}}

/* 기존 템플릿 구성요소를 그대로 사용하기 위한 기능 보조 스타일 */
.filters input[type="date"]{border:0;outline:0;background:transparent;color:#2f405b;font-size:10px;font-weight:700;width:112px}
.source-label{display:inline-block;margin:0 0 8px;padding:5px 8px;border:1px solid #d9e2ed;border-radius:6px;background:#fbfcfe;color:#71839a;font-size:9px}
.analysis-row{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.analysis-row article{border:1px solid #dbe3ed;border-radius:7px;padding:12px;background:#fbfcfe}
.analysis-row b{font-size:10px;color:#174f94}.analysis-row p{margin:7px 0 0;color:#5f7087;font-size:10px;line-height:1.55}
.target-error{margin:0 0 12px;padding:10px 12px;border:1px solid #f0b8ae;border-radius:7px;background:#fff2ef;color:#c74432;font-size:10px}
@media(max-width:760px){.analysis-row{grid-template-columns:1fr}}

/* 경영진 검토 화면 */
.executive-banner{position:relative;display:grid;grid-template-columns:1.15fr 2.1fr auto;gap:20px;align-items:center;margin-bottom:12px;padding:20px 22px;border-radius:12px;background:linear-gradient(120deg,#102a50 0%,#194d7c 55%,#17677b 100%);color:#fff;box-shadow:0 10px 28px rgba(17,42,80,.18);overflow:hidden}
.executive-banner:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-90px;top:-130px;background:rgba(255,255,255,.07)}
.executive-title{position:relative;z-index:1}.executive-title small{font-size:8px;letter-spacing:1.6px;color:#9ed7ee;font-weight:800}.executive-title h2{margin:6px 0;font-size:19px;letter-spacing:-.5px}.executive-title p{margin:0;color:#bfd1e4;font-size:9px}
.executive-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.executive-metrics article{padding:11px 13px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:rgba(255,255,255,.08)}.executive-metrics span,.executive-metrics b,.executive-metrics small{display:block}.executive-metrics span{color:#b9d1e5;font-size:8px}.executive-metrics b{margin:5px 0;font-size:16px}.executive-metrics small{color:#d5e3ef;font-size:8px}
.executive-status{position:relative;z-index:1;min-width:72px;padding:8px 10px;border-radius:999px;text-align:center;font-size:9px;font-weight:800;background:#ffffff20;border:1px solid #ffffff2e}.executive-status.good{background:#14a17f}.executive-status.watch{background:#d8902c}.executive-status.risk{background:#d65b53}.executive-status.neutral{background:#71829a}
.target-bars rect{fill:#dce8f4}.sales-line{stroke:#0b8d72;stroke-width:3.2}.orders-line{stroke:#655bc5;stroke-width:2.6}.lg-target:before{background:#dce8f4}.lg-sales:before{background:#0b8d72}.lg-order:before{background:#655bc5}.chart-legend{margin-top:2px;padding-top:9px;border-top:1px solid #edf1f6}
.analysis-row article{position:relative;min-height:126px;padding:16px 15px 14px;border:0;border-top:3px solid #2a70bb;background:linear-gradient(180deg,#f7faff,#fff);box-shadow:inset 0 0 0 1px #e1e8f1}.analysis-row article.evaluation{border-top-color:#0b8d72}.analysis-row article.direction{border-top-color:#d28a25}.analysis-row article>span{position:absolute;right:13px;top:11px;color:#c9d5e3;font-size:18px;font-weight:800}.analysis-row b{display:block;padding-right:28px;font-size:11px;color:#183a63}.analysis-row p{margin-top:12px;color:#52667f;font-size:10px;line-height:1.7}
.panel-head{padding-bottom:9px;border-bottom:1px solid #eef2f6}.kpi{border-top:2px solid #dbe7f3}.plant-cards article:first-child{background:linear-gradient(180deg,#f3f8fd,#fff)}.plant-cards article:nth-child(2){background:linear-gradient(180deg,#f5f3fd,#fff)}
@media(max-width:1100px){.executive-banner{grid-template-columns:1fr}.executive-status{position:absolute;right:18px;top:18px}.executive-metrics{max-width:720px}}
@media(max-width:760px){.executive-banner{padding:18px}.executive-metrics{grid-template-columns:1fr}.executive-status{position:static;width:max-content}.executive-title h2{font-size:17px}}
.rank-no{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:6px;background:#edf3fb;color:#235f9f}
.toast{position:fixed;right:24px;bottom:24px;z-index:80;min-width:240px;padding:13px 16px;border-radius:9px;background:#0b7d67;color:#fff;font-size:11px;font-weight:700;box-shadow:0 12px 35px #102a5040}
.toast.error{background:#b84838}
@media(max-width:480px){.toast{left:14px;right:14px;bottom:14px;min-width:0;text-align:center}}
.filters{flex-wrap:wrap}
.sales-point{fill:#fff;stroke:#0b8d72;stroke-width:3}.orders-point{fill:#fff;stroke:#655bc5;stroke-width:2.5}

/* 계정 전용 접속 화면 */
.access-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 15%,#e9f3ff 0,#f3f6fa 45%,#eef2f7 100%)}
.access-card{width:min(420px,100%);padding:42px 36px;border:1px solid #dce5f0;border-radius:16px;background:#fff;text-align:center;box-shadow:0 22px 65px #1733531f}
.access-mark{width:52px;height:52px;margin:0 auto 18px;border-radius:14px;background:linear-gradient(145deg,#1d5fae,#68a9e8);display:grid;place-items:center;color:#fff;font:800 27px Georgia}
.access-card>small{color:#3977c6;font-size:9px;font-weight:800;letter-spacing:1.5px}.access-card h1{margin:8px 0 12px;font-size:24px;letter-spacing:-1px}.access-card p{margin:0 auto 24px;color:#6f7f94;font-size:12px;line-height:1.65}.access-login{width:100%;padding:12px;font-size:12px}.access-error{margin-top:14px;padding:11px;border:1px solid #efc2ba;border-radius:7px;background:#fff3f0;color:#b94835;font-size:10px;line-height:1.5}
.account{padding:14px 12px 14px 18px}.account>div{flex:0 0 auto}.account p{min-width:0}.account span{max-width:105px;overflow:hidden;text-overflow:ellipsis}.account button{margin-left:auto;border:0;background:transparent;color:#8fb6e7;font-size:9px;cursor:pointer;padding:5px}

/* 추이 그래프 월별 금액 툴팁 */
.trend-chart{position:relative}.chart-hotspot{fill:transparent;cursor:crosshair;outline:none}.chart-hotspot:hover,.chart-hotspot:focus{fill:#2b77c710}.chart-tooltip{position:absolute;top:8px;transform:translateX(-50%);z-index:4;min-width:150px;padding:10px 12px;border:1px solid #cddbeb;border-radius:8px;background:#102a50ee;color:#fff;pointer-events:none;box-shadow:0 8px 24px #102a5030}.chart-tooltip b,.chart-tooltip span{display:block}.chart-tooltip b{margin-bottom:5px;font-size:11px}.chart-tooltip span{font-size:9px;line-height:1.6;color:#dce9f6}

/* 순위 폭·정렬 */
.bottom-grid{grid-template-columns:1fr 1fr}.ranking-sort{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:-3px 0 10px;color:#74849a;font-size:9px}.ranking-sort select{min-width:108px;border:1px solid #d8e2ed;border-radius:6px;background:#fbfcfe;color:#344963;padding:6px 8px;font-size:9px;font-weight:700;outline:0}.ranking>div{grid-template-columns:20px minmax(150px,1.2fr) minmax(90px,1fr) 122px;gap:8px;font-size:9px}.ranking b{white-space:nowrap}.ranking-value{text-align:right;min-width:0}.ranking-value strong,.ranking-value small{display:block;white-space:nowrap}.ranking-value small{margin-top:3px;color:#8794a6;font-size:8px;font-weight:400}
@media(max-width:1280px){.ranking>div{grid-template-columns:20px minmax(115px,1.1fr) minmax(70px,1fr) 105px}.ranking-value small{font-size:7px}}
@media(max-width:1100px){.bottom-grid{grid-template-columns:1fr}.ranking>div{grid-template-columns:20px minmax(180px,1.3fr) minmax(100px,1fr) 122px}}
@media(max-width:600px){.access-card{padding:32px 22px}.ranking>div{grid-template-columns:20px minmax(110px,1fr) 82px}.ranking>div>span{display:none}.ranking-value{max-width:105px}}

/* 2026-09-09 데이터 업로드/기준정보 관리 - 기존 대시보드 템플릿 외 관리 UI만 추가 */
.admin-nav{width:100%;border:0;background:transparent;color:#b6c6df;text-decoration:none;display:flex;gap:9px;align-items:center;padding:10px 11px;border-radius:7px;cursor:pointer;text-align:left;margin:2px 0;font-size:10px}.admin-nav:hover{background:#ffffff0d;color:#fff}.admin-only.hidden{display:none!important}
.manage-modal-card{width:min(1120px,94vw);max-height:92vh;overflow:auto}.manage-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #e5ebf2}.manage-tab,.master-tab{border:1px solid #d8e2ed;background:#fbfcfe;color:#52677f;border-radius:7px;padding:8px 11px;font-size:10px;font-weight:800;cursor:pointer}.manage-tab.active,.master-tab.active{background:#e8f1ff;border-color:#9ebee6;color:#1c5fa9}.manage-rule{margin-bottom:10px;padding:10px 12px;border:1px solid #dbe5f0;border-radius:7px;background:#f8fbff;color:#4e6580;font-size:10px;line-height:1.65}.manage-textarea{width:100%;min-height:210px;resize:vertical;border:1px solid #cbd8e7;border-radius:8px;background:#fbfdff;color:#273a52;padding:12px;font:10px/1.55 Consolas,'Malgun Gothic',monospace;outline:none}.manage-textarea:focus{border-color:#5b93d3;box-shadow:0 0 0 3px #5b93d314}.manage-result{margin-top:10px;padding:10px 12px;border-radius:7px;font-size:10px;line-height:1.6}.manage-result.ok{border:1px solid #a8dec7;background:#effaf5;color:#167250}.manage-result.warn{border:1px solid #ead28a;background:#fff8df;color:#7a5a12}.manage-result.error{border:1px solid #efb8af;background:#fff3f0;color:#b24532}.manage-preview{margin-top:12px;border:1px solid #e0e7ef;border-radius:8px;overflow:auto;max-height:330px}.manage-preview table{width:100%;border-collapse:collapse;font-size:9px}.manage-preview th{position:sticky;top:0;z-index:1;background:#f3f6fa;color:#607188;text-align:left;padding:8px 9px;border-bottom:1px solid #dfe6ef;white-space:nowrap}.manage-preview td{padding:8px 9px;border-bottom:1px solid #edf1f5;white-space:nowrap;color:#354a63}.master-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px}.master-toolbar input{flex:1;min-width:180px;border:1px solid #d6e0eb;border-radius:7px;padding:9px 10px;font-size:10px;outline:none}.master-table-wrap{max-height:430px}.master-row-action{border:0;background:#edf4fc;color:#2862a3;border-radius:6px;padding:5px 7px;font-size:8px;font-weight:700;cursor:pointer}.master-row-action.danger{background:#fff0ee;color:#b33f32}.master-row-action.danger:hover{background:#ffe3df}.master-row-action:disabled{cursor:wait;opacity:.65}.master-action-cell{text-align:center}.master-edit{margin-top:12px;padding:13px;border:1px solid #dbe5f0;border-radius:8px;background:#fbfcfe}.master-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.master-edit-grid label{display:grid;gap:5px;color:#6e7d90;font-size:9px}.master-edit-grid input,.master-edit-grid select{width:100%;border:1px solid #d6e0eb;border-radius:6px;padding:8px;background:#fff;color:#2f435b;font-size:10px;outline:none}.manage-pane.hidden{display:none!important}
@media(max-width:850px){.master-edit-grid{grid-template-columns:1fr}.manage-modal-card{width:96vw}.manage-preview table{font-size:8px}}


/* 2026-09-09 영업부 보고자료 내장 화면 */
.report-nav{width:100%;border:0;background:transparent;color:#b6c6df;display:flex;gap:9px;align-items:center;padding:10px 11px;border-radius:7px;cursor:pointer;text-align:left;margin:2px 0;font-size:10px}.report-nav:hover,.report-nav.active{background:#ffffff12;color:#fff}.report-workspace{position:relative;z-index:1;height:calc(100vh - 82px);padding:0;background:#f3f6fa}.report-workspace.report-inactive{position:fixed;top:82px;right:0;bottom:0;left:238px;width:auto;height:auto;visibility:hidden;opacity:0;pointer-events:none;z-index:-1}.report-frame-head{min-height:62px;padding:11px 18px;border-bottom:1px solid #dce5ef;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.report-frame-head small{display:block;color:#3977c6;font-size:8px;font-weight:800;letter-spacing:1.4px}.report-frame-head h2{margin:4px 0 0;font-size:16px}.report-frame-actions{display:flex;align-items:center;gap:9px;color:#7b899b;font-size:9px}.report-open-new{text-decoration:none}.report-frame-stack{position:relative;width:100%;height:calc(100vh - 144px);overflow:hidden;background:#fff}.report-frame{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:#fff;visibility:visible;opacity:1;pointer-events:auto}.report-frame.report-frame-inactive{visibility:hidden;opacity:0;pointer-events:none}.report-frame-loading{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:24px;background:#f7faff;color:#526b88;text-align:center}.report-frame-loading i{width:25px;height:25px;border:3px solid #d5e1ef;border-top-color:#2875cc;border-radius:50%;animation:spin .8s linear infinite}.report-frame-loading b{font-size:13px;color:#294d75}.report-frame-loading span{font-size:10px;color:#7b899b}.report-frame-loading.is-slow{background:#fffaf0}.report-frame-loading.is-slow i{animation:none;border-color:#e1ba64}.report-frame-loading.is-slow b{color:#7d641f}.report-frame-notice{padding:7px 16px;border-top:1px solid #e1e8f0;background:#fff9e8;color:#7d641f;font-size:8px}
@media(max-width:760px){.report-workspace.report-inactive{left:0}.report-frame-head{align-items:flex-start;flex-direction:column}.report-frame-actions{width:100%;flex-wrap:wrap}.report-frame-actions span{display:none}.report-frame-stack{height:calc(100vh - 174px)}}

/* 2026-09-09 가독성 개선: 기존 레이아웃 유지, 글자 크기만 단계적으로 확대 */
html,body{font-size:15px}
.sidebar label{font-size:10px}
.nav,.sheet-link,.admin-nav,.report-nav{font-size:13px}
.brand span{font-size:10px}
.account b{font-size:12px}.account span{font-size:10px}
header small{font-size:10px}header h1{font-size:23px}
.filters label{font-size:11px}.filters select,.filters input{font-size:12px}
.outline,.primary,.ghost{font-size:12px}
.kpi span,.mini-kpi span,.chart-card small,.table-note{font-size:11px}
.kpi strong,.mini-kpi strong{font-size:22px}
.panel-title h2,.section-title h2{font-size:17px}
.analysis-row article b{font-size:13px}.analysis-row article p{font-size:12px;line-height:1.65}
.manage-tab,.master-tab{font-size:12px}.manage-rule,.manage-result,.modal-head p,.modal-actions{font-size:12px}
.manage-preview table,.master-table-wrap table{font-size:11px}
.report-frame-head small{font-size:9px}.report-frame-head h2{font-size:17px}.report-frame-actions{font-size:10px}.report-frame-notice{font-size:9px}

/* 2026-09-09 v3: 전체 가독성 추가 개선 */
html,body{font-size:16px}
.nav,.sheet-link,.admin-nav,.report-nav{font-size:14px;line-height:1.35}
.sidebar label{font-size:11px}
.account b{font-size:13px}.account span{font-size:11px}
header small{font-size:11px}header h1{font-size:24px}
.filters label{font-size:12px}.filters select,.filters input{font-size:13px}
.outline,.primary,.ghost{font-size:13px}
.kpi span,.mini-kpi span,.chart-card small,.table-note{font-size:12px}
.panel-title h2,.section-title h2{font-size:18px}
.analysis-row article b{font-size:14px}.analysis-row article p{font-size:13px}
.manage-tab,.master-tab{font-size:13px}.manage-rule,.manage-result,.modal-head p,.modal-actions{font-size:13px}
.manage-preview table,.master-table-wrap table{font-size:12px}
.manage-textarea{font-size:12px}
.master-toolbar select{border:1px solid #d6e0eb;border-radius:7px;padding:9px 10px;font-size:11px;background:#fff;color:#334b66;min-width:135px}
.master-bulk-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px;padding:10px;border:1px solid #cfe0f4;background:#f5f9ff;border-radius:8px}
.master-bulk-bar.hidden{display:none!important}.master-bulk-bar b{font-size:11px;color:#245b97;margin-right:4px}.master-bulk-bar input,.master-bulk-bar select{border:1px solid #d2deeb;border-radius:7px;padding:8px 9px;background:#fff;color:#334b66;font-size:11px;min-width:130px}.master-missing-row{background:#fffdfa}.missing-cell{background:#fff2e8!important;color:#b54c20!important;font-weight:800}.master-check{width:15px;height:15px;cursor:pointer}
@media(max-width:850px){.master-toolbar{align-items:stretch;flex-direction:column}.master-toolbar select,.master-toolbar input,.master-toolbar button{width:100%}.master-bulk-bar{align-items:stretch;flex-direction:column}.master-bulk-bar input,.master-bulk-bar select,.master-bulk-bar button{width:100%}}

/* 2026-09-09 final5: 기준정보 한 화면 + 셀 직접수정 */
.master-manage-wide{width:min(1580px,98vw);max-width:1580px;max-height:95vh}
.master-manage-wide .master-table-wrap{max-height:58vh;overflow:auto}
.master-manage-wide .master-table-wrap table{width:100%;min-width:0;table-layout:fixed;font-size:12px}
.master-manage-wide .master-table-wrap th,.master-manage-wide .master-table-wrap td{padding:7px 6px;overflow:hidden;text-overflow:ellipsis}
.master-manage-wide .master-table-wrap th:nth-child(1){width:34px}
.master-manage-wide .master-table-wrap th:nth-child(2){width:118px}
.master-manage-wide .master-table-wrap th:nth-child(3){width:190px}
.master-manage-wide .master-table-wrap th:nth-child(4){width:145px}
.master-manage-wide .master-table-wrap th:nth-child(5){width:70px}
.master-manage-wide .master-table-wrap th:nth-child(6){width:82px}
.master-manage-wide .master-table-wrap th:nth-child(7){width:92px}
.master-manage-wide .master-table-wrap th:nth-child(8){width:220px}
.master-manage-wide .master-table-wrap th:nth-child(9){width:105px}
.master-manage-wide .master-table-wrap th:last-child{width:72px}
.master-inline-input,.master-inline-select{width:100%;min-width:0;border:1px solid transparent;background:transparent;border-radius:5px;padding:5px 6px;color:#2d425c;font-size:12px;outline:none}
.master-inline-input:hover,.master-inline-select:hover{border-color:#c9d7e8;background:#fbfdff}
.master-inline-input:focus,.master-inline-select:focus{border-color:#5b93d3;background:#fff;box-shadow:0 0 0 2px #5b93d315}
.master-inline-input.missing,.master-inline-select.missing{background:#fff3ea;color:#b54f1e}
.master-dirty-row{background:#fffbea!important}
.master-price-cell{white-space:normal!important}.master-price-cell .master-inline-input{display:block}.master-price-status{display:inline-flex;width:max-content;max-width:100%;align-items:center;margin-top:2px;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:800;line-height:1.45;white-space:nowrap}.master-price-status.protected{background:#eaf3ff;color:#285f9e}.master-price-status.linked{background:#eef7f2;color:#28704f}.master-price-status.conflict{background:#fff0e4;color:#b55224;cursor:help}
#masterInlineSave{white-space:nowrap}
@media(max-width:900px){.master-manage-wide{width:99vw}.master-manage-wide .master-table-wrap table{min-width:1080px}}

/* v6: 주요 오더 상세를 가로 한 화면 안에 표시 */
.detail-table{overflow-x:hidden!important;width:100%}
.detail-table table{width:100%!important;table-layout:fixed!important;white-space:normal!important;font-size:10px!important}
.detail-table th,.detail-table td{padding:8px 5px!important;white-space:normal!important;word-break:keep-all;overflow-wrap:anywhere;line-height:1.28;vertical-align:middle}
.detail-table th:nth-child(1),.detail-table td:nth-child(1){width:7%}
.detail-table th:nth-child(2),.detail-table td:nth-child(2){width:4%}
.detail-table th:nth-child(3),.detail-table td:nth-child(3){width:6%}
.detail-table th:nth-child(4),.detail-table td:nth-child(4){width:15%}
.detail-table th:nth-child(5),.detail-table td:nth-child(5){width:8%}
.detail-table th:nth-child(6),.detail-table td:nth-child(6){width:22%;max-width:none!important}
.detail-table th:nth-child(7),.detail-table td:nth-child(7){width:5%}
.detail-table th:nth-child(8),.detail-table td:nth-child(8){width:5%}
.detail-table th:nth-child(9),.detail-table td:nth-child(9){width:5%}
.detail-table th:nth-child(10),.detail-table td:nth-child(10){width:7%}
.detail-table th:nth-child(11),.detail-table td:nth-child(11){width:6%}
.detail-table th:nth-child(12),.detail-table td:nth-child(12){width:7%}
.detail-table th:nth-child(13),.detail-table td:nth-child(13){width:8%}

/* v10 - 주요 오더 상세: 고정 헤더 + 내부 스크롤 + 페이지네이션 */
.detail-table{max-height:560px;overflow:auto;border:1px solid #e2e9f2;border-radius:8px}
.detail-table thead th{position:sticky;top:0;z-index:5;background:#f5f8fc;box-shadow:0 1px 0 #dfe6ef}
.detail-pager{display:flex;align-items:center;gap:12px;min-height:38px;padding:5px 0;color:#6f7f94;font-size:10px}
.detail-pager>span{margin-right:auto}
.detail-pager>div{display:flex;align-items:center;gap:8px}
.detail-pager label{display:flex;align-items:center;gap:6px}
.detail-pager select{border:1px solid #d6e0eb;border-radius:6px;background:#fff;color:#344963;padding:6px 8px;font-size:10px;font-weight:700}
.detail-pager b{min-width:86px;text-align:center;color:#40536d;font-size:10px}
.pager-btn:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:760px){.detail-pager{flex-wrap:wrap}.detail-pager>span{margin-right:0}.detail-pager>div{margin-left:auto}}

/* 2026-09-10 운영 안정성/가독성 개선 v12 */
.sidebar{width:218px}
.workspace{margin-left:218px;width:calc(100% - 218px)}
.brand{padding:0 16px;gap:10px}
.sidebar nav{padding:15px 9px}
.sidebar label{padding:0 10px;margin:11px 0 5px;font-size:10px;font-weight:800;letter-spacing:.8px;color:#87a4c9}
.nav,.sheet-link,.admin-nav,.report-nav{padding:10px 10px;gap:9px;font-size:13px!important;font-weight:700;line-height:1.25;white-space:nowrap}
.nav span,.sheet-link span,.admin-nav span,.report-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav.active{font-weight:800}
.account{padding-left:14px;padding-right:10px}
.content{max-width:1680px;padding-left:22px;padding-right:22px}
.filters{padding-left:22px;padding-right:22px}
.header-actions>span#updatedAt{font-size:9px;max-width:470px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#65768d}
.manage-preview .history-rollback{padding:5px 8px;font-size:9px;white-space:nowrap}
.master-history-wrap{max-height:62vh}
.master-history-wrap table{min-width:980px}
.master-history-wrap th:nth-child(1){width:145px}.master-history-wrap th:nth-child(2){width:90px}.master-history-wrap th:nth-child(3){width:150px}.master-history-wrap th:nth-child(4){width:80px}
.master-history-wrap .history-change{white-space:normal;min-width:450px;line-height:1.55}
#historyPane .manage-preview{max-height:56vh}
#historyPane table{min-width:860px}
#historyPane th,#historyPane td{text-align:center}
#historyPane th:nth-child(1),#historyPane td:nth-child(1),#historyPane th:nth-child(2),#historyPane td:nth-child(2){text-align:left}
@media(max-width:760px){.sidebar{width:218px}.workspace{margin-left:0;width:100%}.content{padding-left:14px;padding-right:14px}.filters{padding-left:14px;padding-right:14px}.header-actions>span#updatedAt{display:none}}

/* v13 chart axis readability */
.trend-svg text{font-size:12px;font-weight:600;fill:#6f7d90}
.chart-legend{font-size:10px}



/* ===== v15: approved navy sidebar, readable content and bottom pagination ===== */
:root{--naus-ui-font:"Malgun Gothic","Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--sidebar-width:216px}
html,body{font-family:var(--naus-ui-font);-webkit-text-size-adjust:100%;text-size-adjust:100%}
button,input,select,textarea{font-family:var(--naus-ui-font)}
/* Sidebar: matching coloured SVG badges, never emoji/icon-font dependent. */
.sidebar{width:var(--sidebar-width)!important;background:linear-gradient(155deg,#102a4e 0%,#102b50 60%,#0c2341 100%)!important;border-right:1px solid #203b5e;box-shadow:5px 0 22px #102a5012!important}
.workspace{margin-left:var(--sidebar-width)!important;width:calc(100% - var(--sidebar-width))!important;min-width:0}
.sidebar .brand{height:88px;min-height:88px;padding:0 17px;gap:12px;border-bottom:1px solid #ffffff12}
.sidebar .mark{width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:linear-gradient(140deg,#2079f1,#7ac8ff);box-shadow:0 6px 18px #061b3530,inset 0 1px 0 #ffffff40;font-size:26px}
.sidebar .brand b{font-family:var(--naus-ui-font);font-size:20px;letter-spacing:1.6px;color:#f2f7ff}
.sidebar .brand span{font-size:9.5px;line-height:1.5;letter-spacing:1.1px;color:#9cbad8;margin-top:3px;max-width:111px}
.sidebar nav.side-nav{padding:12px 10px 16px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#426285 transparent;min-height:0}
.sidebar .nav-group-title{position:relative;display:block;margin:13px 7px 6px;padding:13px 2px 0;font-size:11.5px;font-weight:700;line-height:1.4;letter-spacing:.1px;color:#99b8d9}
.sidebar .nav-group-title:first-child{padding-top:0;margin-top:3px}
.sidebar .nav-group-title:not(:first-child)::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#a2bfdb26}
.sidebar :is(.nav,.report-nav,.admin-nav){position:relative;display:flex;align-items:center;width:100%;min-height:43px;padding:6px 9px!important;gap:9px!important;margin:2px 0!important;border:1px solid transparent;border-radius:11px;background:transparent;color:#e6eef9!important;font-family:var(--naus-ui-font);font-size:13px!important;font-weight:700!important;letter-spacing:-.28px;line-height:1.4;text-align:left;text-decoration:none;cursor:pointer;transition:background .16s,border-color .16s,box-shadow .16s}
.sidebar :is(.nav,.report-nav,.admin-nav):hover{background:#ffffff0b;color:#fff!important;border-color:#ffffff10}
.sidebar :is(.nav,.report-nav,.admin-nav):focus-visible{outline:2px solid #79d3ff;outline-offset:1px}
.sidebar :is(.nav,.report-nav,.admin-nav).active{background:linear-gradient(105deg,#1e62bb,#1a52a0)!important;color:#fff!important;border-color:#4a9bfa50;box-shadow:0 6px 16px #041b3c36!important}
.sidebar :is(.nav,.report-nav,.admin-nav).active::before{content:"";position:absolute;left:-1px;top:9px;bottom:9px;width:3px;border-radius:3px;background:#50d8fb}
.sidebar .nav-ico{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;overflow:visible;box-shadow:inset 0 1px 0 #ffffff09;line-height:1}
.sidebar .nav-ico svg{display:block;width:19px;height:19px;flex:none}
.sidebar .ico-overview{color:#8dcbff;background:#3884e044}
.sidebar .ico-sales{color:#63e7cc;background:#20a68e36}
.sidebar .ico-order{color:#c8a7ff;background:#8c61d93b}
.sidebar .ico-report{color:#ffc467;background:#d994263b}
.sidebar .ico-admin{color:#abd4ff;background:#80a9de2c}
.sidebar #dataManageBtn .nav-ico{color:#68d9ee}
.sidebar .active .nav-ico{color:#fff;background:#74b9ff44;box-shadow:inset 0 0 0 1px #b7dfff1c}
.sidebar .nav-text{min-width:0;overflow:visible!important;text-overflow:clip!important;white-space:nowrap;line-height:1.4}
.sidebar .account{flex-shrink:0;padding:13px 14px;background:#061b3324;border-top:1px solid #ffffff12;gap:10px}
.sidebar .account>div{flex:0 0 30px;width:30px;height:30px;background:#dfeeff;color:#285b8c;font-size:13px}
.sidebar .account b{font-size:12px;color:#dfebf9}.sidebar .account span{font-size:10px;color:#9db6d3}
/* Body only: preserve the existing layout and data, increase actual selectors. */
.workspace>header{padding-left:24px;padding-right:24px;gap:10px}
.workspace>header h1{font-family:var(--naus-ui-font);font-size:25px;line-height:1.25;letter-spacing:-.6px}
.workspace>header small{font-size:11px;line-height:1.5}
.workspace .header-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end;column-gap:8px;row-gap:3px}
.workspace .header-actions>span#updatedAt{font-size:11px;line-height:1.5;max-width:min(470px,42vw)}
.workspace .content{max-width:1720px;padding:20px 22px 36px;font-size:14px;line-height:1.55}
.workspace :is(.outline,.primary,.ghost,.mini),.modal :is(.outline,.primary,.ghost,.mini){font-family:var(--naus-ui-font);font-size:13px;line-height:1.4}
.workspace .mini{font-weight:700}
.workspace .filters{gap:8px;padding:12px 22px;align-items:center}
.workspace .filters label,.workspace .detail-filters label{font-size:12.5px;min-height:38px;line-height:1.4;color:#62748b;gap:7px;padding:0 9px}
.workspace .filters :is(input,select),.workspace .detail-filters :is(input,select){font-family:var(--naus-ui-font);font-size:13px;font-weight:600;color:#253b55;line-height:1.45;min-width:0;max-width:185px;background:transparent}
.workspace .detail-filters{row-gap:8px}.workspace .detail-filters label.search{margin-left:0}
.workspace .source-label{font-size:12px;color:#64778d;margin:0 0 12px}
.workspace .kpi{min-height:116px;padding:16px;gap:11px}
.workspace .kpi>div{min-width:0}.workspace .kpi span{font-size:13px;line-height:1.5;color:#62758e}
.workspace .kpi strong{font-size:25px;line-height:1.25;letter-spacing:-.6px;overflow-wrap:anywhere}
.workspace .kpi small{font-size:12px;line-height:1.55;color:#6d7d91}
.workspace .panel{padding:17px;line-height:1.55}.workspace .panel-head{gap:12px}
.workspace .panel-head h2{font-family:var(--naus-ui-font);font-size:17px;line-height:1.4;margin:4px 0 0;color:#1c3553}
.workspace .panel-head small{font-size:10.5px;line-height:1.5;letter-spacing:1.2px}
.workspace .executive-title small{font-size:10.5px}.workspace .executive-title h2{font-size:21px;line-height:1.45}
.workspace .executive-title p{font-size:12px;line-height:1.6}.workspace .executive-metrics span{font-size:12px;line-height:1.45}
.workspace .executive-metrics b{font-size:21px;line-height:1.3}.workspace .executive-metrics small{font-size:11.5px;line-height:1.5}
.workspace .executive-status{font-size:11.5px;white-space:nowrap}
.workspace .table-wrap table{font-family:var(--naus-ui-font);font-size:13px;line-height:1.55}
.workspace .table-wrap th{font-size:12.5px;font-weight:700;color:#526981;padding:11px 10px}
.workspace .table-wrap td{font-size:13px;color:#354d69;padding:10px;line-height:1.55}
.workspace .pill{font-size:11px;padding:4px 7px;line-height:1.35;white-space:nowrap}
.workspace .target-cell{font-size:13px}.workspace .limit{font-size:12px}
.workspace .plant-cards span{font-size:12.5px}.workspace .plant-cards b{font-size:20px;line-height:1.35}
.workspace .plant-cards :is(p,small){font-size:12px;line-height:1.55}
.workspace .compare-note b{font-size:13px}.workspace .compare-note strong{font-size:23px;line-height:1.35}
.workspace .compare-note p{font-size:12px;line-height:1.65}
.workspace .ranking-sort{font-size:12px;gap:8px}.workspace .ranking-sort select{font-family:var(--naus-ui-font);font-size:12px}
.workspace .ranking>div{font-size:12px;line-height:1.5;grid-template-columns:24px minmax(100px,1.2fr) minmax(45px,1fr) minmax(118px,auto)}
.workspace .ranking b{font-size:12px}.workspace .ranking-value strong{font-size:12.5px}.workspace .ranking-value small{font-size:11px;line-height:1.5}
.workspace .composition article :is(span,small){font-size:12px;line-height:1.5}.workspace .composition article b{font-size:17px}.workspace .composition article strong{font-size:14px}
.workspace .analysis-row article b{font-size:14px}.workspace .analysis-row article p{font-size:13px;line-height:1.75}
.workspace .trend-svg{height:300px}.workspace .trend-svg text{font-family:var(--naus-ui-font);font-size:14px;font-weight:600;fill:#596f8b}
.workspace .chart-legend{font-size:12px;line-height:1.5;gap:17px;padding-top:11px}
.workspace .chart-legend span:before{width:9px;height:9px;margin-right:6px}
.workspace .chart-tooltip b{font-size:14px}.workspace .chart-tooltip span{font-size:13px;line-height:1.65}
.workspace .report-frame-head h2{font-size:18px}.workspace .report-frame-head small{font-size:11px}
.workspace .report-frame-actions{font-size:12px}.workspace .report-frame-notice{font-size:11px;line-height:1.6}
.modal{font-family:var(--naus-ui-font)}.modal .modal-head h2{font-size:20px;line-height:1.4}
.modal .modal-head small{font-size:11px}.modal .modal-head p,.modal .modal-actions>span{font-size:13px;line-height:1.6}
.modal :is(.manage-tab,.master-tab){font-family:var(--naus-ui-font);font-size:13px;line-height:1.45}
.modal :is(.manage-rule,.manage-result){font-size:13px;line-height:1.7}.modal .manage-result{white-space:pre-line}
.modal .manage-preview table{font-family:var(--naus-ui-font);font-size:12.5px;line-height:1.5}
.modal .master-toolbar :is(input,select),.modal .master-edit-grid :is(input,select),.modal .master-bulk-bar :is(input,select){font-family:var(--naus-ui-font);font-size:13px;line-height:1.4}
.modal .master-manage-wide .master-table-wrap table{font-size:12.5px}
.modal .master-inline-input,.modal .master-inline-select{font-family:var(--naus-ui-font);font-size:13px;line-height:1.5}
.modal .manage-preview .history-rollback{font-size:12px}.modal .master-edit-grid label{font-size:12px}
.modal .target-grid span,.modal .target-grid small{font-size:12px}.modal .target-grid input{font-size:15px}
/* Order detail: preserve every column, fixed table viewport and sticky header. */
.workspace .detail-summary{flex-wrap:wrap;gap:8px 22px;font-size:13px;line-height:1.6;padding:12px 15px}
.workspace .detail-table{width:100%;height:clamp(300px,52vh,580px);max-height:none;overflow:auto!important;border:1px solid #dfe7f1;border-radius:9px;scrollbar-width:thin;scrollbar-color:#b1c2d5 #f5f8fc;scrollbar-gutter:stable}
.workspace .detail-table:focus-visible{outline:2px solid #3e8ade;outline-offset:2px}
.workspace .detail-table table{width:100%!important;min-width:1120px;table-layout:fixed!important;font-family:var(--naus-ui-font)!important;font-size:12.5px!important;border-collapse:separate;border-spacing:0}
.workspace .detail-table th,.workspace .detail-table td{font-family:var(--naus-ui-font)!important;font-size:12.5px!important;line-height:1.55!important;padding:10px 6px!important;word-break:keep-all;overflow-wrap:break-word;vertical-align:middle;white-space:normal!important}
.workspace .detail-table thead th{position:sticky;top:0;z-index:5;background:#f1f6fc;color:#516a86;font-weight:700;box-shadow:0 1px 0 #dce5f0;text-align:left}
.workspace .detail-table tbody td{color:#344d69;border-bottom:1px solid #edf1f6}
.workspace .detail-table tbody tr:nth-child(even){background:#fafcfe}.workspace .detail-table tbody tr:hover{background:#f0f6ff}
.workspace .detail-table :is(th,td):nth-child(1){width:7%;white-space:nowrap!important}
.workspace .detail-table :is(th,td):nth-child(2){width:4%;text-align:center;white-space:nowrap!important}
.workspace .detail-table :is(th,td):nth-child(3){width:6%}
.workspace .detail-table :is(th,td):nth-child(4){width:11%}
.workspace .detail-table :is(th,td):nth-child(5){width:9%;max-width:none;white-space:nowrap!important}
.workspace .detail-table :is(th,td):nth-child(6){width:16%;max-width:none!important}
.workspace .detail-table :is(th,td):nth-child(7){width:4.5%;text-align:center}
.workspace .detail-table :is(th,td):nth-child(8){width:5.5%;text-align:center}
.workspace .detail-table :is(th,td):nth-child(9){width:4.5%;text-align:center}
.workspace .detail-table :is(th,td):nth-child(10){width:8%;text-align:right;white-space:nowrap!important}
.workspace .detail-table :is(th,td):nth-child(11){width:7%;text-align:right;white-space:nowrap!important}
.workspace .detail-table :is(th,td):nth-child(12){width:9.5%;text-align:right;white-space:nowrap!important}
.workspace .detail-table :is(th,td):nth-child(13){width:8%;text-align:center}
.workspace .detail-table .empty{padding:45px 12px!important;text-align:center!important;font-size:13px!important}
.workspace .order-pagination{display:grid;grid-template-columns:minmax(235px,1fr) auto minmax(95px,1fr);align-items:center;gap:14px;padding:16px 0 2px;font-family:var(--naus-ui-font);color:#61758d;font-size:13px;line-height:1.4}
.workspace .page-size-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.workspace .page-size-control label{font-size:12px;white-space:nowrap}
.workspace .page-size-control select{font-family:var(--naus-ui-font);font-size:13px;font-weight:600;color:#334f70;background:#fff;border:1px solid #d4e0ed;border-radius:7px;padding:7px 6px;min-height:34px;cursor:pointer}
.workspace .page-range{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.workspace .pagination-nav{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0}
.workspace .page-btn{display:inline-flex;justify-content:center;align-items:center;min-width:33px;height:34px;padding:0 8px;border:1px solid #dbe5f1;border-radius:7px;background:#fff;color:#526984;font-family:var(--naus-ui-font)!important;font-size:13px!important;font-weight:600;line-height:1;cursor:pointer;font-variant-numeric:tabular-nums;transition:background .15s,border-color .15s}
.workspace .page-btn:hover:not(:disabled){background:#eff6ff;border-color:#8bb6eb;color:#1c60ac}
.workspace .page-btn.is-current{background:#2368bc;border-color:#2368bc;color:#fff;font-weight:800;box-shadow:0 3px 8px #2368bc26}
.workspace .page-btn:focus-visible,.workspace .page-size-control select:focus-visible{outline:2px solid #4290e9;outline-offset:2px}
.workspace .page-btn:disabled{color:#b1bdca;background:#f7f9fc;border-color:#edf1f6;cursor:not-allowed}
.workspace .page-gap{display:inline-flex;justify-content:center;align-items:center;width:17px;color:#90a0b3}
.workspace .page-status{text-align:right;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-height:840px){.sidebar .brand{height:74px;min-height:74px}.sidebar nav.side-nav{padding-top:9px;padding-bottom:9px}.sidebar .nav-group-title{margin-top:9px;margin-bottom:4px;padding-top:10px;font-size:11px}.sidebar .nav-group-title:first-child{padding-top:0}.sidebar :is(.nav,.report-nav,.admin-nav){min-height:39px;padding-top:4px!important;padding-bottom:4px!important}.sidebar .account{padding-top:10px;padding-bottom:10px}}
@media(max-width:1320px){.workspace .order-pagination{grid-template-columns:1fr auto}.workspace .pagination-nav{grid-column:1 / -1;grid-row:2}.workspace .page-status{grid-column:2;grid-row:1}.workspace .ranking>div{grid-template-columns:24px minmax(100px,1.2fr) minmax(30px,.5fr) 125px}.workspace .executive-banner{grid-template-columns:1fr}.workspace .executive-status{position:absolute;top:15px;right:18px}}
@media(max-width:1100px){.workspace .header-actions>span#updatedAt{display:none}.workspace .ranking>div{grid-template-columns:24px minmax(150px,1.2fr) minmax(75px,1fr) 140px}.workspace .trend-svg{height:310px}}
@media(max-width:760px){.sidebar{width:var(--sidebar-width)!important}.workspace{margin-left:0!important;width:100%!important}.workspace>header{padding:0 14px}.workspace>header h1{font-size:22px}.workspace .content{padding:16px 14px 28px}.workspace .filters{padding:10px 14px}.workspace .panel{padding:14px}.workspace .kpi{padding:14px}.workspace .kpi strong{font-size:23px}.workspace .detail-table{height:clamp(290px,49vh,470px)}.workspace .pagination-nav{gap:4px;flex-wrap:wrap}.workspace .page-btn{min-width:30px;height:33px;padding:0 6px}.workspace .order-pagination{gap:10px}.workspace .page-size-control{gap:6px}.workspace .page-size-control label{display:none}}
@media(max-width:480px){.workspace .ranking>div{grid-template-columns:24px minmax(85px,1fr) 125px}.workspace .ranking>div>span{display:none}.workspace .trend-svg{height:250px}.workspace .filters :is(input,select){max-width:175px}.workspace>header h1{font-size:20px}.workspace .page-range{font-size:11px}.workspace .page-gap{width:10px}.workspace .page-status{font-size:11px}.workspace .detail-summary{font-size:12px}}
@media(prefers-reduced-motion:reduce){.sidebar :is(.nav,.report-nav,.admin-nav),.workspace .page-btn{transition:none}}

/* v16: reserve room for the EA suffix; keep the existing table and pager design. */
.workspace .detail-table :is(th,td):nth-child(10),
.workspace .detail-table :is(th,td):nth-child(11){width:124px!important;white-space:nowrap!important}

/* v26: separate C-code sales customer and purchase vendor. */
.workspace .detail-table table{min-width:1250px}
.workspace .detail-table :is(th,td):nth-child(1){width:6.5%!important}
.workspace .detail-table :is(th,td):nth-child(2){width:3.5%!important}
.workspace .detail-table :is(th,td):nth-child(3){width:5.5%!important}
.workspace .detail-table :is(th,td):nth-child(4){width:10%!important}
.workspace .detail-table :is(th,td):nth-child(5){width:8%!important}
.workspace .detail-table :is(th,td):nth-child(6){width:15%!important}
.workspace .detail-table :is(th,td):nth-child(7){width:4%!important}
.workspace .detail-table :is(th,td):nth-child(8){width:5%!important}
.workspace .detail-table :is(th,td):nth-child(9){width:4%!important}
.workspace .detail-table :is(th,td):nth-child(10){width:7.5%!important}
.workspace .detail-table :is(th,td):nth-child(11){width:6%!important}
.workspace .detail-table :is(th,td):nth-child(12){width:9%!important}
.workspace .detail-table :is(th,td):nth-child(13){width:7%!important}
.workspace .detail-table :is(th,td):nth-child(14){width:9%!important}
.master-manage-wide .master-table-wrap table.commercial-master-table{min-width:1300px!important}
.master-manage-wide .master-table-wrap table.commercial-master-table th:nth-child(10){width:220px}

/* v34: Google Sheets inventory snapshot for today's orders. */
.inventory-manage-card{width:min(1040px,94vw)}
.inventory-date-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 12px}
.inventory-date-row label{display:flex;align-items:center;gap:9px;color:#52677f;font-size:13px;font-weight:700}
.inventory-date-row input{border:1px solid #ccd9e7;border-radius:7px;background:#fff;color:#2e4866;padding:8px 10px;font:600 13px/1.4 var(--naus-ui-font);outline:none}
.inventory-date-row input[readonly]{background:#f5f8fc;color:#385674}
.inventory-sheet-link{display:inline-flex;align-items:center;border:1px solid #b8cde5;border-radius:7px;background:#f4f8fd;color:#2564aa;padding:8px 11px;font-size:12px;font-weight:700;text-decoration:none}
.inventory-sheet-link:hover{background:#eaf3ff;border-color:#8fb4df}
.inventory-date-row>span{color:#667b93;font-size:12px;line-height:1.55}
.inventory-sync-preview{max-height:260px;margin-bottom:14px}
.inventory-sync-preview td:first-child{font-weight:700;color:#294d75}
.inventory-sync-preview :is(th,td):nth-child(n+3){text-align:right}
#inventorySync:disabled{cursor:wait;opacity:.65}
@media(max-width:760px){.inventory-date-row{align-items:flex-start;flex-direction:column;gap:8px}.inventory-manage-card{width:96vw}}
.shipment-reset-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.shipment-reset-row>span{flex:1}.shipment-reset-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.shipment-reset-actions input{border:1px solid #ccd9e7;border-radius:7px;background:#fff;color:#2e4866;padding:8px 10px;font:600 13px/1.4 var(--naus-ui-font);outline:none}.shipment-reset-actions input:focus{border-color:#5b93d3;box-shadow:0 0 0 3px #5b93d314}.shipment-reset-row .outline{flex:0 0 auto}

/* Give the online inventory app the viewport so its own navigation is the only sidebar. */
.report-back-btn{display:none}
body.online-inventory-mode{overflow:hidden}
.online-inventory-mode #reportWorkspace:not(.report-inactive){position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;z-index:100;display:flex;flex-direction:column;padding:0;background:#fff}
.online-inventory-mode .report-frame-head{flex:0 0 auto;height:50px;min-height:50px;padding:6px 14px;display:flex;align-items:center;flex-direction:row;gap:10px}
.online-inventory-mode .report-frame-head>div:not(.report-frame-actions){display:none}
.online-inventory-mode .report-back-btn{display:inline-flex;align-items:center;white-space:nowrap}
.online-inventory-mode .report-frame-actions{width:auto;margin-left:auto;flex-wrap:nowrap}
.online-inventory-mode .report-frame-actions>span{display:none}
.online-inventory-mode .report-frame-stack{flex:1;min-height:0;height:auto}
.online-inventory-mode .report-frame-notice{display:none}
@media(max-width:540px){.online-inventory-mode .report-frame-head{height:auto;min-height:50px;flex-wrap:wrap;padding:6px 9px}.online-inventory-mode .report-frame-actions{gap:5px}.online-inventory-mode .report-frame-actions :is(.outline,.report-open-new){padding:6px 7px;font-size:11px}}

/* v42: monthly target changes, scoped to this report and its detail dialog. */
.monthly-target-table{table-layout:fixed;min-width:1180px;width:100%}
.monthly-target-table th,.monthly-target-table td{padding:13px 10px;vertical-align:middle}
.monthly-target-table th{white-space:normal;line-height:1.55}
.monthly-target-table th small{display:block;font-size:10px;font-weight:400;color:#6c7f98}
.monthly-target-table td{font-variant-numeric:tabular-nums}
.monthly-target-table .rate{min-width:0;gap:6px}
.monthly-target-table .rate i{max-width:95px}
.monthly-target-table .rate b{font-size:11px;white-space:nowrap}
.monthly-target-table .target-cell{white-space:nowrap}
.target-delta{display:block;font-size:10px;margin-top:5px;white-space:nowrap}
.target-remark{display:block;width:100%;text-align:left;background:transparent;border:0;padding:3px 0;color:#274767;font:inherit;cursor:pointer;white-space:normal}
.target-remark>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6;overflow-wrap:anywhere}
.target-remark>small{display:block;color:#2165b2;margin-top:5px;font-size:11px}
.target-remark:hover>small{text-decoration:underline}
.target-remark:focus-visible{outline:2px solid #377bc1;outline-offset:3px}
.target-changes-card{width:min(1220px,96vw);max-height:92vh;overflow:auto;padding:24px}
.target-changes-card .modal-head{align-items:flex-start;gap:12px}
.target-changes-card .modal-head .icon-btn{display:block;flex-shrink:0}
.target-changes-card .modal-head h2{font-size:20px}
.target-changes-card .modal-head p{line-height:1.6}
.target-changes-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px;background:#f2f7fd;border:1px solid #dbe7f3;border-radius:8px;margin:18px 0 12px;color:#57718d;font-size:12px}
.target-changes-summary b{display:block;margin-top:4px;color:#1a3d68;font-size:17px;font-variant-numeric:tabular-nums}
.target-changes-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.target-changes-toolbar>span{margin-right:auto;color:#56718f;font-size:12px}
.target-change-form{border:1px solid #b9d2ee;background:#f6faff;border-radius:8px;padding:16px;margin:12px 0 18px}
.target-change-form h3{margin:0 0 12px;font-size:15px;color:#24486e}
.target-change-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.target-change-fields label{display:flex;flex-direction:column;gap:6px;color:#45617f;font-size:12px}
.target-change-fields input,.target-change-fields select,.target-change-fields textarea{width:100%;min-width:0;font:inherit;background:#fff;color:#183454;border:1px solid #ccdbea;border-radius:5px;padding:9px 10px}
.target-change-fields input[readonly]{background:#eef3f9}
.target-change-fields textarea{resize:vertical;line-height:1.7}
.target-change-fields small{font-size:11px;color:#657c96}
.target-change-reason{grid-column:1/-1}
.target-change-customer{position:relative}
.target-change-suggestions{position:absolute;top:calc(100% - 16px);left:0;right:0;z-index:20;max-height:260px;overflow:auto;background:#fff;border:1px solid #b8cce5;border-radius:7px;box-shadow:0 12px 26px #14345b20;padding:4px}
.target-change-suggestions button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:10px;color:#173c67;font:inherit;cursor:pointer}
.target-change-suggestions button:hover,.target-change-suggestions button:focus{background:#eaf3ff}
.target-forecast{border:0;background:transparent;color:#1661bc;font:inherit;font-weight:800;cursor:pointer;padding:3px;text-align:left}
.target-forecast:hover,.target-forecast:focus-visible{text-decoration:underline}
.target-forecast b{display:block;font-weight:800}
.target-forecast-change{display:block;font-weight:500;font-size:11px;line-height:1.5;margin-top:3px;color:#667f99;white-space:normal;text-decoration:none}
.target-write-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.target-write-actions label{color:#55708e;font-size:12px}
.target-write-actions select{border:1px solid #d1dfed;border-radius:6px;padding:7px 9px;color:#244868;background:#fff;font:inherit}
.target-delta-base{display:block;color:#667f99;font-size:11px;white-space:normal;margin-top:3px}
.target-change-form-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;margin-top:12px}
.target-change-form-actions>span{margin-right:auto;color:#1f568c;font-size:12px}
.target-change-table table{width:100%;min-width:900px;font-size:12px}
.target-change-table td{vertical-align:top;line-height:1.6}
.target-change-table td small,.target-change-history td small{display:block;margin-top:3px;color:#6e8196;font-size:11px}
.target-change-table td.target-change-note{min-width:220px;max-width:400px;overflow-wrap:anywhere;white-space:pre-wrap}
.target-change-money{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.target-change-actions{white-space:nowrap}
.target-change-actions button+button{margin-left:5px}
.target-change-pager{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0;font-size:12px;color:#586f88}
.target-change-pager label{display:flex;align-items:center;gap:7px}
.target-change-pager select,.target-change-pager button{padding:6px 10px;border:1px solid #d6e1ed;border-radius:5px;background:#fff;color:#315879;font:inherit}
.target-change-pager nav{display:flex;gap:5px;flex-wrap:wrap;margin-left:auto}
.target-change-pager .active{background:#205fae;color:#fff;border-color:#205fae}
.target-change-pager button:disabled{opacity:.45;cursor:default}
.target-change-history{margin-top:12px}
.target-change-history table{font-size:12px;min-width:800px}
.target-change-history td{white-space:normal;overflow-wrap:anywhere}
@media(max-width:800px){.target-changes-card{padding:16px}.target-change-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.target-changes-summary{grid-template-columns:1fr}.target-changes-summary span{display:flex;justify-content:space-between;align-items:center;gap:12px}.target-changes-summary b{margin-top:0;font-size:15px}}
@media(max-width:460px){.target-change-fields{grid-template-columns:1fr}.target-changes-card .modal-head h2{font-size:17px}}

.target-change-manager{grid-column:1/-1;max-width:320px}

/* V48: requested fifth metric and distinct sales-order trend. */
.overview-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.overview-five .kpi strong{font-size:clamp(16px,1.45vw,24px)}
.executive-five{grid-template-columns:1fr auto}
.executive-five .executive-title{grid-column:1;grid-row:1}
.executive-five .executive-status{grid-column:2;grid-row:1}
.executive-five .executive-metrics{grid-column:1 / -1;grid-row:2;grid-template-columns:repeat(5,minmax(0,1fr))}
.sales-orders-line{fill:none;stroke:#d97916;stroke-width:2.8}
.sales-order-point{fill:#fff;stroke:#d97916;stroke-width:2}
.lg-sales-order:before{background:#d97916}
#salesOrderCompleteBox input{width:auto;margin-right:8px}
.so-date-preview:empty{display:none}.so-date-preview{margin:10px 0;max-height:220px;overflow:auto}
.manage-tabs{flex-wrap:wrap}
@media(max-width:1100px){.overview-five,.executive-five .executive-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.overview-five{grid-template-columns:1fr}.executive-five .executive-metrics{grid-template-columns:1fr}.executive-five{padding:16px;gap:12px}}
