.wh{--bg:#f3f6fa;--paper:#fff;--ink:#172d44;--sub:#667b91;--accent:#117d7c;--line:#dae3ed;--shadow:0 12px 32px #1d31440e}.wh *{box-sizing:border-box}.wh{background:var(--bg);color:var(--ink);margin:0;font-family:system-ui,-apple-system,Malgun Gothic,Apple SD Gothic Neo,sans-serif}.wh button,.wh input,.wh select{font:inherit}.wh button{cursor:pointer}.wh button:disabled{cursor:not-allowed}.wh header{border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:21px max(28px,50vw - 950px);display:flex}.wh header .brand{letter-spacing:.18em;color:#137d7a;font-size:12px;font-weight:900}.wh h1{letter-spacing:-.04em;margin:4px 0 0;font-size:23px}.wh header small{color:var(--sub);font-size:12px}.wh button{border:1px solid var(--line);color:#36536a;background:#fff;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:700;transition:all .15s}.wh button:hover{background:#ecf5f5;border-color:#94c8c5}.wh button.primary{color:#fff;background:#146e74;border-color:#146e74}.wh button.primary:hover{background:#0f5a5f}.wh .toolbar{flex-wrap:wrap;gap:8px;display:flex}.wh .wrap{max-width:1900px;margin:0 auto;padding:24px 28px}.wh .statline{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.wh .stat{box-shadow:var(--shadow);background:#fff;border:1px solid #e0e7ef;border-radius:12px;align-items:center;gap:14px;padding:13px 20px;display:flex}.wh .stat .num{letter-spacing:-.05em;color:#173b54;font-size:24px;font-weight:800}.wh .stat .lab{color:#7c8fa3;font-size:12px;line-height:1.55}.wh .search{border:1px solid var(--line);background:#fff;border-radius:10px;outline-color:#118b83;min-width:265px;margin-left:auto;padding:12px 14px;font-size:13px}.wh .main{grid-template-columns:minmax(0,1fr) 335px;align-items:start;gap:16px;display:grid}.wh .card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;overflow:hidden}.wh .card-head{border-bottom:1px solid #e9eef4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:17px 21px;display:flex}.wh .card-head b{font-size:15px}.wh .card-head small{color:#8a9ba9;font-size:12px}.wh .card-body{padding:12px}.wh .map-scroll{border-radius:10px;max-width:100%;overflow-x:auto}.wh .map-scroll svg{width:100%;min-width:790px;height:auto;display:block}.wh .legend{color:#7e8c9c;flex-wrap:wrap;gap:20px;padding:4px 16px 12px;font-size:11px;display:flex}.wh .legend i{vertical-align:middle;background:#dbf3ef;border:1px solid #b7d9d1;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.wh .legend .plain{background:#fff;border-color:#cbd5e1}.wh .legend .util{background:#e5f7f1;border-color:#84c9ae}.wh .details{min-height:550px;padding:19px 20px}.wh .select-placeholder{text-align:center;color:#8395a9;padding:85px 0 70px}.wh .select-placeholder .dot{color:#087978;background:#eef5f6;border-radius:18px;place-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:26px;display:grid}.wh .info-title{word-break:break-word;margin:4px 0 8px;font-size:20px;font-weight:850}.wh .subtitle{color:#8a9bad;font-size:12px}.wh .keyvalue{border-top:1px solid #e8eef4;grid-template-columns:82px 1fr;gap:12px 6px;margin-top:12px;padding:16px 0;font-size:12px;display:grid}.wh .keyvalue dt{color:#8695a4}.wh .keyvalue dd{color:#2a415a;word-break:break-word;margin:0}.wh .stock{background:#f0f7f7;border-radius:10px;margin:12px 0;padding:16px}.wh .stock small{color:#738f95}.wh .stock strong{color:#127275;letter-spacing:-.02em;margin-top:3px;font-size:25px;display:block}.wh .record-table{border-collapse:collapse;width:100%;font-size:11px}.wh .record-table th{text-align:right;color:#8ea0af;background:#f6f8fb;border-bottom:1px solid #e1e8ef;padding:9px 6px}.wh .record-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #edf1f4;padding:8px 6px}.wh .record-table th:first-child,.wh .record-table td:first-child{text-align:left}.wh .tag{color:#1a7775;background:#eff6f7;border-radius:99px;margin:0 5px 5px 0;padding:5px 9px;font-size:11px;display:inline-block}.wh .tiny{color:#8a9cab;font-size:11px;line-height:1.6}.wh .divider{border-top:1px solid #e6edf3;margin:17px 0}.wh .modal-wrap{z-index:20;background:#14263880;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.wh .modal-wrap.show{display:flex}.wh .modal{background:#fff;border-radius:16px;flex-direction:column;width:min(1100px,100%);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 90px #182f4060}.wh .modal-h{border-bottom:1px solid #e9edf2;justify-content:space-between;align-items:center;gap:12px;padding:22px 25px;display:flex}.wh .modal-h h2{margin:0;font-size:20px}.wh .modal-b{padding:20px 24px;overflow:auto}.wh .modal-b table{border-collapse:collapse;width:100%;font-size:12px}.wh .modal-b th{color:#60798d;text-align:left;background:#f5f8fb;border-bottom:1px solid #dce5ef;padding:11px 9px;position:sticky;top:0}.wh .modal-b td{border-bottom:1px solid #e9eef4;padding:10px 9px}.wh .modal-b tr:hover td{background:#f8fbfc}.wh .modal-filter{flex-wrap:wrap;gap:10px;margin-bottom:13px;display:flex}.wh .modal-filter input,.wh .modal-filter select,.wh .climate-form input{background:#fff;border:1px solid #dce4ec;border-radius:9px;min-width:150px;min-height:38px;padding:9px 11px}.wh .climate-form{flex-wrap:wrap;align-items:end;gap:9px;margin-bottom:12px;display:flex}.wh .climate-form label{color:#718296;flex-direction:column;gap:4px;font-size:12px;display:flex}.wh .page-info{color:#7a8fa3;margin:12px 0;font-size:12px}.wh .rowbtn{color:#127678;background:#eaf5f4;border:0;border-radius:7px;padding:4px 9px}.wh .close{border:0;padding:4px 10px;font-size:19px}.wh .infohint{color:#8395a7;margin-top:11px;font-size:12px}@media (width<=1220px){.wh .main{grid-template-columns:minmax(0,1fr)}.wh .details{min-height:160px}.wh .search{margin-left:0}}@media (width<=700px){.wh .wrap{padding:12px}.wh .stat{padding:9px 11px}.wh .stat .num{font-size:18px}.wh .stat .lab{font-size:10px}.wh header{padding:17px 15px}.wh h1{font-size:19px}.wh .card-head{padding:13px}.wh .modal-b{padding:12px}}@media print{.wh header .toolbar,.wh .search,.wh .details,.wh .legend,.wh .statline,.wh .infohint{display:none!important}.wh .main{display:block}.wh .map-scroll svg{min-width:0!important}.wh .wrap{padding:5px}.wh .card{box-shadow:none;border:0}.wh .card-head{border:0}}.wh #warehouse .rack-slot{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.wh #warehouse .rack-slot:active{cursor:grabbing}.wh #warehouse .rack-slot.drag-source{opacity:.43}.wh #warehouse .rack-slot.drag-target .rack-bg{filter:drop-shadow(0 0 7px #10b98177);fill:#d8f7e7!important;stroke:#07956d!important;stroke-width:4px!important}.wh #warehouse .rack-slot.rack-empty .rack-bg{stroke-dasharray:5 4;fill:#f8fafc}.wh #warehouse .rack-slot .rack-text,.wh #warehouse .rack-slot .rack-index,.wh #warehouse .rack-slot .rack-empty-text{pointer-events:none}.wh .drag-hint{color:#206b67;background:#f0f8f6;border:1px solid #d3e9e4;border-radius:10px;align-items:center;gap:8px;margin:0 2px 12px;padding:10px 15px;font-size:12px;font-weight:650;display:flex}.wh .map-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.wh .map-actions button{padding:7px 10px;font-size:12px}.wh .palette{border-top:1px solid #e5edf2;padding:15px 19px 17px}.wh .palette-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.wh .palette-title strong{font-size:14px}.wh .palette input{border:1px solid #d5e2eb;border-radius:9px;outline-color:#108582;width:100%;min-width:0;padding:9px 10px;font-size:12px}.wh .palette-list{background:#fcfdff;border:1px solid #e3ebf1;border-radius:10px;max-height:180px;margin-top:9px;overflow:auto}.wh .palette-item{text-align:left;cursor:grab;color:#2d4859;background:0 0;border:0;border-bottom:1px solid #eef2f5;border-radius:0;justify-content:space-between;align-items:center;gap:5px;width:100%;padding:8px 11px;font-size:11px;font-weight:650;display:flex}.wh .palette-item:last-child{border-bottom:0}.wh .palette-item:hover{background:#eaf6f4}.wh .palette-item small{color:#78909b;text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:10px;font-weight:400;overflow:hidden}.wh .palette-item:active{cursor:grabbing}.wh .unplace-drop{color:#627f91;text-align:center;background:#f9fcfd;border:1.5px dashed #b4c8d1;border-radius:10px;margin-top:9px;padding:13px;font-size:11px;transition:all .15s}.wh .unplace-drop.drag-target{color:#9f3b37;background:#fff1f0;border-color:#dc6c64}.wh #layout-toast{opacity:0;pointer-events:none;color:#fff;z-index:60;background:#153c49;border-radius:10px;padding:11px 18px;font-size:12px;font-weight:700;transition:all .15s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);box-shadow:0 12px 28px #153c4955}.wh #layout-toast.show{opacity:1;transform:translate(-50%)}.wh #layout-ghost{pointer-events:none;z-index:70;color:#fff;word-break:break-word;background:#0e7677;border-radius:9px;min-width:95px;max-width:200px;padding:10px 13px;font-size:12px;font-weight:750;position:fixed;box-shadow:0 10px 30px #173b4b44}.wh .palette-sub{color:#7c8c9d;margin-top:7px;font-size:10px}@media (width<=950px){.wh .palette-list{max-height:125px}.wh .map-actions{justify-content:flex-start}}@media print{.wh .drag-hint,.wh .map-actions,.wh .palette,.wh #layout-toast,.wh #layout-ghost{display:none!important}}.wh .facility-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.wh .facility-actions button{padding:7px 10px;font-size:12px}.wh .facility-edit-note{color:#9a6b00;background:#fff8e8;border:1px solid #f1dfaa;border-radius:10px;margin:10px 2px 0;padding:9px 12px;font-size:12px;font-weight:650;display:none}.wh .facility-edit-note.show{display:block}.wh #warehouse .facility-movable{transition:filter .15s,opacity .15s}.wh #warehouse .facility-movable .move-handle{pointer-events:none;display:none}.wh.facility-edit-mode #warehouse .facility-movable{cursor:grab;filter:drop-shadow(0 4px 10px #0d94882e)}.wh.facility-edit-mode #warehouse .facility-movable.dragging{cursor:grabbing;opacity:.88}.wh.facility-edit-mode #warehouse .facility-movable.resizing{filter:drop-shadow(0 0 7px #19a78d80)}.wh #warehouse .facility-movable .resize-grip{pointer-events:none;display:none}.wh.facility-edit-mode #warehouse .facility-movable .resize-grip{pointer-events:all;cursor:nwse-resize;touch-action:none;display:block}.wh.facility-edit-mode #warehouse .facility-movable{touch-action:none;-webkit-user-select:none;user-select:none}.wh.facility-edit-mode #warehouse .facility-movable .move-handle{display:block}.wh.facility-edit-mode #warehouse .facility-movable.drag-target{filter:drop-shadow(0 0 #0000)drop-shadow(0 0 10px #10b98147)}@media print{.wh .facility-actions,.wh .facility-edit-note{display:none!important}}.wh #full-ledger-shell{z-index:250;background:#f8fafc;flex-direction:column;min-width:0;min-height:0;display:none;position:fixed;inset:0}.wh #full-ledger-shell.open{display:flex}.wh #full-ledger-shell .full-ledger-bar{color:#f7fafc;background:#18354b;flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:10px 18px;display:flex;box-shadow:0 2px 12px #19334424}.wh #full-ledger-shell .full-ledger-head{flex-direction:column;gap:2px;min-width:0;display:flex}.wh #full-ledger-shell .full-ledger-head strong{letter-spacing:-.3px;font-size:16px}.wh #full-ledger-shell .full-ledger-head small{color:#c7d9e6;font-size:11px;font-weight:400;line-height:1.4}.wh #full-ledger-shell .full-ledger-close{color:#17374a;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #819bad;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:700}.wh #full-ledger-shell .full-ledger-close:hover{background:#e8f4f8}.wh #full-ledger-frame{background:#f9fafb;border:0;flex:1;width:100%;min-height:0;display:block}@media print{.wh #full-ledger-shell .full-ledger-bar{display:none!important}.wh #full-ledger-shell{position:static!important}}.wh #modal-bg:has(.climate-dashboard) .modal{width:min(1180px,100%);max-height:94vh}.wh .climate-dashboard{color:#20354a}.wh .climate-muted{color:#71859b;margin:0 0 12px;font-size:12px;line-height:1.6}.wh .climate-section{background:#fff;border:1px solid #e1eaf1;border-radius:13px;margin-bottom:16px;padding:16px}.wh .climate-section-title{justify-content:space-between;align-items:center;gap:9px;margin-bottom:14px;display:flex}.wh .climate-section-title strong{letter-spacing:-.2px;font-size:15px}.wh .climate-section-title .climate-small{color:#7790a4;font-size:11px;font-weight:500}.wh .climate-input-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.wh .climate-input-row>label{color:#60798d;align-items:center;gap:9px;font-size:12px;font-weight:700;display:flex}.wh .climate-dashboard input,.wh .climate-dashboard select{color:#20354a;background:#fff;border:1px solid #d5e2ec;border-radius:9px;outline-color:#0d9488;min-height:38px;padding:8px 11px}.wh .climate-dashboard input[type=number]{width:100%;min-width:0}.wh .climate-input-row input[type=date]{min-width:148px}.wh .climate-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.wh .climate-half{background:#f9fbfd;border:1px solid #dce7f0;border-radius:11px;padding:14px}.wh .climate-half.pm{background:#fcfbf8;border-color:#ede6d9}.wh .climate-half-title{align-items:center;gap:8px;margin-bottom:9px;font-size:14px;font-weight:800;display:flex}.wh .climate-half-title:before{content:"";background:#0d9488;border-radius:50%;width:7px;height:7px;display:block}.wh .climate-half.pm .climate-half-title:before{background:#d39b56}.wh .climate-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.wh .climate-fields label,.wh .climate-limits label{color:#647d91;flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.wh .climate-actions{flex-wrap:wrap;align-items:center;gap:9px;margin-top:13px;display:flex}.wh .climate-action-primary{color:#fff!important;cursor:pointer!important;background:#0f766e!important;border:1px solid #0f766e!important;border-radius:9px!important;padding:9px 17px!important;font-size:13px!important;font-weight:800!important}.wh .climate-action-secondary{color:#3b556c!important;cursor:pointer!important;background:#fff!important;border:1px solid #cbdde8!important;border-radius:9px!important;padding:9px 13px!important;font-size:12px!important}.wh .climate-help{color:#7790a4;font-size:11px;line-height:1.6}.wh .climate-limits{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.wh .climate-limit-group{background:#f6f9fc;border:1px solid #e0e9f0;border-radius:11px;padding:13px}.wh .climate-limit-group strong{margin-bottom:11px;font-size:13px;display:block}.wh .climate-limit-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.wh .climate-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.wh .climate-chart-card{border:1px solid #dee8f0;border-radius:11px;min-width:0;padding:12px}.wh .climate-chart-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.wh .climate-chart-head b{font-size:13px}.wh .climate-chart-head span{color:#7b8fa1;font-size:11px}.wh .climate-chart-frame{border-radius:7px;width:100%;overflow:auto}.wh .climate-chart-frame svg{width:100%;max-width:100%;height:auto;min-height:205px;display:block}.wh .climate-chart-legend{color:#687f92;flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;font-size:11px;display:flex}.wh .climate-chart-legend i{vertical-align:middle;border-top:3px solid #0d9488;width:21px;height:0;margin-right:4px;display:inline-block}.wh .climate-chart-legend i.bound{border-top:2px dashed #c95b62}.wh .climate-dashboard .climate-table-wrap{border:1px solid #dee9f0;border-radius:10px;max-height:340px;overflow:auto}.wh .climate-dashboard table{border-collapse:collapse;width:100%;min-width:720px;font-size:12px}.wh .climate-dashboard th{z-index:1;white-space:nowrap;position:sticky;text-align:center!important;color:#49657a!important;background:#f3f7fb!important;border-bottom:1px solid #dbe6ef!important;font-size:11px!important}.wh .climate-dashboard td{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;padding:9px 6px!important}.wh .climate-dashboard tr:hover td{background:#f8fbfe}.wh .climate-dashboard .climate-out{color:#b42336;background:#fff0f1;font-weight:800}.wh .climate-dashboard .climate-cell-am{background:#f1f9f8}.wh .climate-dashboard .climate-cell-pm{background:#fdf9f1}.wh .climate-dashboard .climate-empty{color:#9eacba}.wh .climate-dashboard .climate-date{color:#324c61;font-weight:700}.wh .climate-row-btn{white-space:nowrap;color:#346476;cursor:pointer;background:#ebf3f7;border:0;border-radius:6px;margin:2px;padding:5px 8px;font-size:11px!important}.wh .climate-row-btn:hover{background:#cce3e9}@media (width<=700px){.wh .climate-split,.wh .climate-limits,.wh .climate-charts{grid-template-columns:1fr}.wh .climate-section{padding:12px}.wh .climate-fields{gap:8px}.wh .climate-chart-frame svg{min-height:180px}}:is(.wh #warehouse-dashboard:fullscreen,.wh #warehouse-dashboard.warehouse-fullscreen-fallback){background:#f3f6fa;overflow:auto;z-index:1000!important;grid-template-columns:minmax(0,1fr) minmax(280px,335px)!important;align-items:stretch!important;gap:12px!important;width:100vw!important;max-width:none!important;height:100dvh!important;margin:0!important;padding:12px!important;display:grid!important;position:fixed!important;inset:0!important}:is(.wh #warehouse-dashboard:fullscreen>.card:first-child,.wh #warehouse-dashboard.warehouse-fullscreen-fallback>.card:first-child){flex-direction:column;min-width:0;min-height:0;display:flex}:is(.wh #warehouse-dashboard:fullscreen>.card:first-child>.card-body,.wh #warehouse-dashboard.warehouse-fullscreen-fallback>.card:first-child>.card-body){flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}:is(.wh #warehouse-dashboard:fullscreen .map-scroll,.wh #warehouse-dashboard.warehouse-fullscreen-fallback .map-scroll){flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:auto}:is(.wh #warehouse-dashboard:fullscreen .map-scroll svg,.wh #warehouse-dashboard.warehouse-fullscreen-fallback .map-scroll svg){object-fit:contain;width:100%!important;min-width:0!important;height:100%!important}:is(.wh #warehouse-dashboard:fullscreen>aside,.wh #warehouse-dashboard.warehouse-fullscreen-fallback>aside){min-height:0;overflow:auto}:is(.wh #warehouse-dashboard:fullscreen .legend,.wh #warehouse-dashboard.warehouse-fullscreen-fallback .legend){flex-shrink:0}.wh #warehouse-fullscreen-toggle{color:#fff;white-space:nowrap;background:#0e7775;border-color:#0e7775}.wh #warehouse-fullscreen-toggle:hover{background:#0a5e5d}.wh.warehouse-fullscreen-fallback-active{overflow:hidden!important}@media (width<=850px){:is(.wh #warehouse-dashboard:fullscreen,.wh #warehouse-dashboard.warehouse-fullscreen-fallback){grid-template-columns:minmax(0,1fr)!important}:is(.wh #warehouse-dashboard:fullscreen>aside,.wh #warehouse-dashboard.warehouse-fullscreen-fallback>aside){display:none}}@media print{.wh #warehouse-fullscreen-toggle{display:none!important}.wh #warehouse-dashboard.warehouse-fullscreen-fallback{width:auto!important;height:auto!important;padding:0!important;position:static!important}}.wh .recent-stock-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.wh .recent-stock-title b{font-size:13px}.wh .recent-expand-btn{color:#185b71;background:#f0f7fb;border:1px solid #c9dee8;border-radius:7px;padding:5px 8px;font-size:11px}.wh .recent-expand-btn:hover{background:#e0f1f8}.wh .recent-ledger-scroll{scrollbar-color:#b8cbd9 #f2f6f9;border:1px solid #dae4ed;border-radius:9px;max-width:100%;margin-top:10px;overflow-x:auto}.wh .recent-stock-table{border-collapse:separate;border-spacing:0;table-layout:fixed;white-space:nowrap;width:100%;min-width:785px;font-size:11px}.wh .recent-stock-table th,.wh .recent-stock-table td{box-sizing:border-box;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;border-bottom:1px solid #e7edf2;border-right:1px solid #e0e9f0;padding:9px 6px}.wh .recent-stock-table th:last-child,.wh .recent-stock-table td:last-child{border-right:0}.wh .recent-stock-table th{color:#22506a;text-align:center;font-weight:700;line-height:1.38}.wh .recent-stock-table .stock-header-group th{letter-spacing:-.02em;border-bottom:1px solid #b9ccdf;font-size:11px}.wh .recent-stock-table .stock-header-group .group-internal{color:#9a5118;background:#ffead4}.wh .recent-stock-table .stock-header-group .group-external{color:#3a5592;background:#e1e7ff}.wh .recent-stock-table .stock-header-group .group-total{color:#a12f4b;background:#ffe1ea}.wh .recent-stock-table .stock-header-sub th{color:#24526e;background:#dff3ff}.wh .recent-stock-table th.date-col{color:#31556b;z-index:2;min-width:70px;position:sticky;left:0;background:#edf4f8!important}.wh .recent-stock-table td.date-col{z-index:1;text-align:left;color:#425b70;background:#fff;min-width:70px;font-weight:650;position:sticky;left:0}.wh .recent-stock-table tbody tr:nth-child(2n) td,.wh .recent-stock-table tbody tr:nth-child(2n) td.date-col{background:#f8fbfd}.wh .recent-stock-table tbody tr:hover td,.wh .recent-stock-table tbody tr:hover td.date-col{background:#eef8fb}.wh .recent-stock-table .stock-int{color:#176583;font-weight:650}.wh .recent-stock-table .stock-ext{color:#40599e;font-weight:650}.wh .recent-stock-table .stock-total{color:#9c294d;background:#fff5f7;font-weight:750}.wh .recent-stock-table tbody tr:nth-child(2n) .stock-total{background:#fff0f4}.wh .recent-stock-table td.recent-empty{text-align:center;padding:25px}.wh #recent-detail-dialog{color:#263e53;background:#fff;border:0;border-radius:16px;width:min(1140px,95vw);max-width:95vw;max-height:84vh;padding:0;box-shadow:0 22px 70px #14273955}.wh #recent-detail-dialog::backdrop{background:#0e22349e}.wh #recent-detail-dialog .recent-dialog-head{border-bottom:1px solid #d7e4ed;justify-content:space-between;align-items:center;gap:14px;padding:15px 20px;display:flex}.wh #recent-detail-dialog .recent-dialog-head strong{font-size:16px}.wh #recent-detail-dialog .recent-dialog-body{max-height:calc(84vh - 64px);padding:18px;overflow:auto}.wh #recent-expanded-table{width:100%;overflow:auto}.wh #recent-expanded-table .recent-stock-table{min-width:785px}@media print{.wh #recent-detail-dialog,.wh .recent-expand-btn{display:none!important}}.wh .auth-label{color:#5d7287;flex-direction:column;gap:6px;margin-top:14px;font-size:12px;font-weight:700;display:flex}.wh .auth-input{border:1px solid #d5e2eb;border-radius:10px;outline-color:#118b83;padding:11px 12px;font-size:14px}.wh{background:var(--bg);min-height:100vh}.wh .role-badge{color:#0f6f6e;vertical-align:middle;background:#e6f4f3;border-radius:99px;margin-left:8px;padding:4px 9px;font-size:11px;font-weight:800;display:inline-block}.wh .role-badge.viewer{color:#9a5a00;background:#fff4e0}.wh .sync-dot{background:#10b981;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block;box-shadow:0 0 0 3px #10b98122}.wh .readonly-note{color:#8a5a12;background:#fff8ec;border:1px solid #f1dfbd;border-radius:10px;align-items:center;gap:8px;margin:0 2px 12px;padding:10px 15px;font-size:12px;font-weight:650;display:flex}
