body.hl-promotion-settings-active .page-column>.app-main{display:none!important}
#hl-promotion-settings{position:relative;display:block;flex:1;min-width:0;overflow:auto;background:#f4f7fa;padding:18px 20px 36px;color:#3f4650;font:13px Arial,"Microsoft YaHei",sans-serif}
#hl-promotion-settings[hidden]{display:none!important}
#hl-promotion-settings *{box-sizing:border-box}
.promotion-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
.promotion-header h1{display:flex;align-items:center;gap:7px;margin:0;color:#303642;font-size:20px;font-weight:600}
.promotion-header p{margin:7px 0 0;color:#8b929c;line-height:1.5}
.promotion-sync-status{display:block;margin-top:5px;color:#89929e;font-size:12px;line-height:1.5}
.promotion-header>div:last-child{display:flex;gap:9px;flex-shrink:0}
#hl-promotion-settings button,#hl-promotion-settings input,#hl-promotion-settings select{min-height:34px;border:1px solid #d8dee7;border-radius:4px;background:#fff;color:#58616e;font:inherit}
#hl-promotion-settings button{padding:6px 13px;cursor:pointer}
#hl-promotion-settings button:hover:not(:disabled){border-color:#168fe4;color:#168fe4}
#hl-promotion-settings button.primary{border-color:#168fe4;background:#168fe4;color:#fff}
#hl-promotion-settings button.danger{border-color:#efb0b0;color:#d74747;background:#fff}
#hl-promotion-settings button.danger:hover{border-color:#d74747;color:#c62f2f;background:#fff7f7}
#hl-promotion-settings button:disabled{cursor:not-allowed;opacity:.48}
#hl-promotion-settings input,#hl-promotion-settings select{padding:6px 9px;outline:none}
#hl-promotion-settings input:focus,#hl-promotion-settings select:focus{border-color:#168fe4;box-shadow:0 0 0 2px rgba(22,143,228,.1)}
.promotion-message,.promotion-note{margin:0 0 12px;padding:10px 13px;border:1px solid #bfe2f8;border-radius:4px;background:#eff9ff;color:#2878a8}
.promotion-message.error{border-color:#f1c3c3;background:#fff3f3;color:#c54141}
.promotion-note{border-color:#f1d6a9;background:#fff9ee;color:#8b6728}
.promotion-summary{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:14px}
.promotion-summary article{display:flex;align-items:center;justify-content:space-between;min-height:74px;padding:15px 18px;border:1px solid #e2e7ee;border-radius:5px;background:#fff;box-shadow:0 1px 2px rgba(34,52,70,.03)}
.promotion-summary span{color:#838b96}.promotion-summary strong{color:#27313e;font-size:25px;font-weight:600}
.promotion-view-toolbar{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:#747d89}
.promotion-view-switch{display:inline-flex;padding:2px;border:1px solid #dce2e9;border-radius:5px;background:#fff}
#hl-promotion-settings .promotion-view-switch button{min-height:30px;padding:4px 17px;border:0;background:transparent;color:#697380}
#hl-promotion-settings .promotion-view-switch button:hover{border:0;background:#f3f8fc;color:#168fe4}
#hl-promotion-settings .promotion-view-switch button.active{border:0;background:#168fe4;color:#fff;box-shadow:0 1px 2px rgba(22,143,228,.18)}
.promotion-panel{margin-bottom:15px;border:1px solid #e0e5ec;border-radius:5px;background:#fff;box-shadow:0 1px 3px rgba(30,48,66,.04)}
.promotion-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid #e8ecf1}
.promotion-filters label{display:flex;align-items:center;gap:7px;color:#747d89}.promotion-filters input{width:220px;margin-left:auto}
.promotion-table-wrap{width:100%;overflow:auto}
.promotion-table{width:100%;min-width:1080px;border-collapse:collapse;table-layout:fixed}
.promotion-table th{position:sticky;top:0;z-index:1;padding:10px 9px;border-bottom:1px solid #dfe4eb;background:#f5f7fa;color:#4c5562;font-weight:600;text-align:left;vertical-align:middle;white-space:nowrap}
.promotion-table td{padding:10px 9px;border-bottom:1px solid #edf0f4;color:#5f6874;vertical-align:middle;overflow-wrap:anywhere}
.promotion-table tbody tr:hover{background:#f8fbfe}.promotion-table tbody tr.selected{background:#eef8ff}
.promotion-table small{display:block;margin-top:4px;color:#9aa1aa;font-size:11px}
.promotion-name,.promotion-product{height:auto!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;text-align:left}
.promotion-name b,.promotion-product b{display:block;color:#303844;font-weight:500}.promotion-name:hover b,.promotion-product:hover b{color:#168fe4}
.promotion-type{display:block;color:#4e5966}.promotion-status{display:inline-block;padding:3px 8px;border-radius:10px;background:#eef2f6;color:#697481;font-size:12px;white-space:nowrap}
.promotion-status.started,.promotion-status.active{background:#eaf8ef;color:#31935a}.promotion-status.pending,.promotion-status.programmed{background:#edf5ff;color:#357db3}.promotion-status.candidate{background:#fff5df;color:#ae7320}.promotion-status.finished{background:#f1f2f4;color:#8c929a}
.promotion-empty{padding:44px 20px;color:#9aa2ac;text-align:center}
.promotion-items>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid #e8ecf1}
.promotion-items>header h2{margin:0;color:#303844;font-size:16px}.promotion-items>header p{margin:5px 0 0;color:#9299a3}.promotion-items>header>div:last-child{display:flex;gap:9px}.promotion-items>header input{width:220px}
.promotion-item-table{min-width:1420px}.promotion-item-table th:nth-child(1){width:70px}.promotion-item-table th:nth-child(2){width:330px}.promotion-item-table th:nth-child(3){width:120px}.promotion-item-table th:nth-child(9){width:110px}
.promotion-image img{display:block;width:52px;height:52px;border:1px solid #e3e7ed;border-radius:4px;object-fit:contain;background:#fff}
.promotion-item-table td:nth-child(2) p{margin:5px 0;color:#77808c}.promotion-item-table .boost{color:#2d9b5f}
.promotion-product-search{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:13px 14px;border-bottom:1px solid #e8ecf1}
.promotion-product-search label{display:flex;flex-direction:column;gap:5px;color:#747d89}.promotion-product-search label:nth-child(2){min-width:310px}.promotion-product-search input{width:310px}
.promotion-product-table{min-width:1180px}.promotion-product-table th:nth-child(1){width:72px}.promotion-product-table th:nth-child(2){width:300px}.promotion-product-table th:nth-child(3){width:145px}.promotion-product-table th:nth-child(4){width:120px}.promotion-product-table th:nth-child(5){width:auto}
.promotion-product-table td{vertical-align:middle}.promotion-product-table td:nth-child(2) p{margin:5px 0;color:#77808c}
.promotion-product-activities{display:grid;gap:7px}.promotion-product-activity{display:grid;grid-template-columns:minmax(210px,1fr) auto;align-items:center;gap:5px 12px;padding:8px 10px;border:1px solid #e5eaf0;border-radius:4px;background:#f9fbfd}
.promotion-product-activity>div:first-child b{display:block;color:#39434f;font-weight:500}.promotion-product-activity>div:first-child small{margin-top:3px}.promotion-product-activity>div:nth-child(2){display:flex;align-items:center;justify-content:flex-end;gap:5px}.promotion-product-activity>small{grid-column:1/-1;margin:0;color:#929aa5}
.promotion-item-actions{display:inline-flex;align-items:center;gap:6px}#hl-promotion-settings button.compact{min-height:26px;padding:3px 10px}
.promotion-store{display:flex;flex-direction:column;gap:3px}.promotion-store>span{display:flex;align-items:center;gap:5px}.promotion-store img{width:17px;height:12px}.promotion-store small{margin:0;color:#74808d}
.promotion-readonly{color:#9aa2ac}.promotion-pages{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:11px 14px}.promotion-pages span{margin-right:auto;color:#929aa5}
.promotion-loading{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:10px;background:rgba(244,247,250,.72);color:#168fe4}.promotion-loading i{width:20px;height:20px;border:2px solid #bfe2f8;border-top-color:#168fe4;border-radius:50%;animation:promotion-spin .8s linear infinite}
@keyframes promotion-spin{to{transform:rotate(360deg)}}
.promotion-modal-mask{position:fixed;inset:0;z-index:10020;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(31,39,49,.43)}
.promotion-modal{width:min(610px,94vw);max-height:86vh;overflow:auto;border:0;border-radius:6px;background:#fff;box-shadow:0 16px 48px rgba(0,0,0,.24)}
.promotion-modal>header{display:flex;align-items:center;justify-content:space-between;padding:15px 19px;border-bottom:1px solid #e8ecf1}.promotion-modal h2{margin:0;color:#303844;font-size:17px}.promotion-modal>header button{min-height:28px!important;padding:0 7px!important;border:0!important;font-size:23px}
.promotion-modal form,.promotion-confirm,.promotion-remove-warning{padding:16px 20px}.promotion-modal form>label{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.promotion-modal form>label input{width:300px}.promotion-modal p{color:#838c98;line-height:1.65}.promotion-modal p.target{display:flex;flex-direction:column;padding:10px 12px;background:#f6f8fa}.promotion-modal p.target b{color:#39424e}.promotion-modal p.target span{margin-top:5px;font-size:12px}
.promotion-modal>footer,.promotion-modal form>footer{display:flex;justify-content:flex-end;gap:9px;margin:0;padding:13px 19px;border-top:1px solid #e8ecf1}.promotion-modal form>footer{margin:16px -20px -16px}
.promotion-confirm table{width:100%;border-collapse:collapse}.promotion-confirm th,.promotion-confirm td{padding:10px;border:1px solid #e5e9ef;text-align:left}.promotion-confirm th{width:34%;background:#f7f8fa;color:#5b6470}.promotion-confirm .promotion-error{padding:9px 11px;background:#fff2f2;color:#c33}
@media(max-width:900px){#hl-promotion-settings{padding:14px 10px}.promotion-header{align-items:flex-start;flex-direction:column}.promotion-summary{grid-template-columns:repeat(2,1fr)}.promotion-filters input{width:100%;margin-left:0}.promotion-items>header{align-items:flex-start;flex-direction:column}.promotion-product-activity{grid-template-columns:1fr}.promotion-product-activity>div:nth-child(2){justify-content:flex-start}.promotion-product-activity>small{grid-column:auto}.promotion-modal form>label{align-items:flex-start;flex-direction:column}.promotion-modal form>label input{width:100%}}
