:root{font-family:Microsoft YaHei,PingFang SC,sans-serif;color:#17211f;background:#f3f5f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.boot-screen{display:grid;min-height:100vh;place-items:center;color:#65706d}.admin-shell{display:flex;min-height:100vh}.sidebar{position:fixed;z-index:20;display:flex;width:232px;height:100vh;padding:18px 12px;color:#eef6f3;background:#153b35;flex-direction:column}.brand-block{display:flex;align-items:center;min-height:58px;padding:0 8px 16px;border-bottom:1px solid rgba(255,255,255,.13)}.brand-mark{display:grid;width:42px;height:42px;margin-right:11px;border-radius:6px;color:#153b35;background:#e8c66b;font-size:15px;font-weight:900;place-items:center}.brand-block strong,.brand-block span{display:block;letter-spacing:0}.brand-block span{margin-top:3px;color:#a9c1bb;font-size:12px}.sidebar nav{overflow-y:auto;padding:14px 0;flex:1}.sidebar nav button{display:flex;align-items:center;width:100%;height:43px;margin-bottom:3px;padding:0 13px;border:0;border-radius:5px;color:#c8d9d5;background:transparent;text-align:left}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#266159}.sidebar svg{width:18px;height:18px;margin-right:11px}.sidebar-foot{display:flex;align-items:center;justify-content:space-between;padding:14px 8px 2px;border-top:1px solid rgba(255,255,255,.13);font-size:13px}.main-area{width:calc(100% - 232px);min-width:0;margin-left:232px}.page-content{max-width:1600px;min-height:100vh;padding:28px 30px 48px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-heading h1{margin:0;font-size:25px;line-height:1.3}.page-heading p{margin:6px 0 0;color:#76807d;font-size:13px}.heading-actions,.row-actions,.form-actions,.selection-actions{display:flex;align-items:center;gap:8px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:5px;font-weight:700}.primary-button{border:1px solid #15786b;color:#fff;background:#15786b}.secondary-button{border:1px solid #cbd4d1;color:#31413d;background:#fff}.primary-button svg,.secondary-button svg{width:16px;height:16px;margin-right:7px}.icon-button{display:inline-grid;width:34px;height:34px;padding:0;border:0;color:inherit;background:transparent;place-items:center}.icon-button svg{width:18px;height:18px;margin:0}.toolbar{display:flex;align-items:flex-end;min-height:60px;margin-bottom:14px;padding:11px 14px;border:1px solid #dde3e1;background:#fff;gap:12px}.toolbar label{color:#68736f;font-size:12px}input,select,textarea{min-height:38px;padding:8px 10px;border:1px solid #cbd4d1;border-radius:4px;color:#1d2926;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:#168474;box-shadow:0 0 0 2px #1684741f}.toolbar label input,.toolbar label select{display:block;margin-top:5px}.search-field{position:relative;min-width:280px}.search-field svg{position:absolute;left:10px;bottom:10px;width:17px;color:#7c8783}.search-field input{width:100%;padding-left:34px}.toolbar-note{margin-left:auto;color:#6f7a76;font-size:13px}.table-wrap{overflow:auto;border:1px solid #dce2e0;background:#fff}table{width:100%;border-collapse:collapse;white-space:nowrap}th{height:43px;padding:0 12px;color:#58645f;background:#f7f9f8;font-size:12px;font-weight:700;text-align:left}td{max-width:320px;height:53px;padding:9px 12px;overflow:hidden;border-top:1px solid #e8eceb;font-size:13px;text-overflow:ellipsis}td strong,td small{display:block}td small{margin-top:4px;color:#7c8683}.row-actions button,.selection-actions button{display:inline-flex;align-items:center;padding:3px 7px;border:0;color:#087f72;background:transparent;font-size:12px}.row-actions svg{width:13px;height:13px;margin-right:3px}.danger-link{color:#c34636!important}.status{display:inline-block;padding:4px 7px;border-radius:4px;color:#596460;background:#edf0ef;font-size:11px}.status[data-status=active],.status[data-status=approved],.status[data-status=enabled]{color:#176b52;background:#e6f5ee}.status[data-status=pending]{color:#8a6400;background:#fff4d3}.status[data-status=rejected],.status[data-status=disabled]{color:#9b3d30;background:#fae9e6}.empty-state{padding:48px;color:#84908c;text-align:center}.alert,.account-warning{margin-bottom:14px;padding:11px 14px;border:1px solid;font-size:13px}.alert.error{border-color:#edc2bb;color:#a13d30;background:#fff3f1}.alert.success{border-color:#b9dfd1;color:#196d55;background:#eef9f5}.account-warning{border-color:#ead79e;color:#6e5511;background:#fff9e7}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:12px}.metric-grid article{min-height:108px;padding:19px;border:1px solid #dce2e0;background:#fff}.metric-grid span{display:block;color:#717c78;font-size:13px}.metric-grid strong{display:block;margin-top:15px;font-size:25px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;gap:16px}.content-section{padding:20px;border:1px solid #dce2e0;background:#fff}.content-section header{display:flex;justify-content:space-between}.content-section h2{margin:0;font-size:17px}.content-section header svg{width:20px;color:#78837f}.pending-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;gap:10px}.pending-list span{padding:14px;background:#f6f8f7;color:#65706c;font-size:13px}.pending-list strong{display:block;margin-top:8px;color:#18231f;font-size:22px}.quota-line{display:flex;justify-content:space-between;margin-top:24px}.progress{overflow:hidden;height:7px;margin-top:12px;background:#e7ecea}.progress i{display:block;height:100%;background:#278c78}.modal-mask{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;padding:30px;background:#0d181573;place-items:center}.modal-panel{overflow:hidden;width:min(620px,100%);max-height:calc(100vh - 60px);background:#fff;box-shadow:0 18px 60px #00000038}.modal-panel.wide{width:min(920px,100%)}.modal-panel>header{display:flex;align-items:center;justify-content:space-between;height:58px;padding:0 20px;border-bottom:1px solid #e1e6e4}.modal-panel h2{margin:0;font-size:18px}.text-button{border:0;color:#64706c;background:none}.modal-body{overflow-y:auto;max-height:calc(100vh - 118px);padding:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid label{color:#53605c;font-size:13px}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:6px}.form-grid textarea{min-height:86px;resize:vertical}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.form-actions{justify-content:flex-end;padding-top:8px}.check-label{display:flex!important;align-items:center;gap:8px}.check-label input{width:16px;min-height:16px;margin:0}.map-hint{display:flex;align-items:center;padding:11px;border:1px solid #c9ddd7;color:#236b5d;background:#f1f8f5;font-size:12px}.map-hint svg{width:16px;margin-right:6px}.file-button{cursor:pointer}.file-button input{display:none}.selection-head{display:flex;justify-content:space-between;margin-bottom:12px}.selection-head span{color:#65716d}.store-option{display:flex;align-items:center;padding:11px 4px;border-bottom:1px solid #e7ebe9;gap:10px}.store-option input{min-height:auto}.store-option span,.store-option small{display:block}.store-option small{margin-top:4px;color:#78837f}.image-editor{padding:12px;border:1px solid #dce3e0}.image-editor>div:first-child{display:flex;align-items:center;justify-content:space-between}.image-editor>img{width:160px;margin-top:12px;aspect-ratio:4/3;object-fit:cover}.detail-previews{display:grid!important;grid-template-columns:repeat(6,1fr);margin-top:12px;gap:8px}.detail-previews button{overflow:hidden;padding:0;border:1px solid #d5ddda;background:#fff}.detail-previews img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.image-upload-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.merchant-image-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;gap:10px}.merchant-image-grid figure{margin:0;border:1px solid #dce3e0}.merchant-image-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.merchant-image-grid figcaption{padding:7px;color:#65716d;font-size:11px}.upload-zone{display:flex;min-height:230px;margin-bottom:18px;border:1px dashed #aebcb7;color:#62706b;background:#fff;flex-direction:column;align-items:center;justify-content:center}.upload-zone.dragging{border-color:#168474;background:#f0f8f5}.upload-zone>svg{width:38px;height:38px;color:#168474}.upload-zone strong{margin-top:12px;color:#26332f}.upload-zone span{margin:7px 0 14px;font-size:12px}.upload-progress{position:relative;overflow:hidden;width:min(380px,80%);height:22px;margin-top:13px;background:#e9eeec}.upload-progress i{display:block;height:100%;background:#278c78}.upload-progress span{position:absolute;top:3px;right:0;bottom:0;left:0;margin:0;color:#17211f;text-align:center}.asset-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:12px}.asset-grid article{overflow:hidden;border:1px solid #dce2e0;background:#fff}.asset-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.asset-grid article>div{padding:10px}.asset-grid strong,.asset-grid span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-grid strong{font-size:12px}.asset-grid span{margin-top:5px;color:#7a8581;font-size:11px}.asset-grid footer{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:0 7px 0 10px;border-top:1px solid #e6eae8}.asset-grid footer button{border:0;color:#087f72;background:none;font-size:12px}.login-page{display:grid;min-height:100vh;padding:28px;background:#e9efed;place-items:center}.login-panel{width:min(420px,100%);padding:34px;border-top:4px solid #e1bd59;background:#fff;box-shadow:0 16px 48px #19373021}.login-brand{display:flex;align-items:center}.login-brand>span{display:grid;width:50px;height:50px;margin-right:12px;color:#173e37;background:#e7c76c;font-weight:900;place-items:center}.login-brand strong,.login-brand small{display:block}.login-brand small{margin-top:4px;color:#75807d}.login-panel h1{margin:34px 0 5px;font-size:24px}.login-panel>p{margin:0 0 23px;color:#7b8582;font-size:13px}.login-panel label{display:block;margin-top:14px;color:#58635f;font-size:13px}.login-panel input{width:100%;margin-top:6px}.login-button{width:100%;margin-top:22px}.form-error{margin-top:12px;color:#b54031;font-size:13px}.mobile-header,.mobile-only,.mobile-mask{display:none}.missing-text{color:#c34636}.trend-chart{display:flex;align-items:flex-end;overflow-x:auto;min-height:175px;margin-top:18px;padding-top:12px;gap:8px}.trend-column{display:flex;min-width:26px;flex:1;align-items:center;flex-direction:column;justify-content:flex-end}.trend-column i{width:70%;min-width:12px;max-width:28px;background:#278c78}.trend-column span{margin-top:7px;color:#78837f;font-size:10px;writing-mode:vertical-rl}.ranking-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;gap:16px}.ranking-list{margin:16px 0 0;padding-left:26px}.ranking-list li{padding:9px 0;border-bottom:1px solid #e8ecea;font-size:13px}.ranking-list li span,.ranking-list li strong{display:block}.ranking-list li strong{margin-top:4px;color:#63706b;font-size:11px}@media(max-width:1180px){.metric-grid,.asset-grid{grid-template-columns:repeat(3,1fr)}.ranking-grid{grid-template-columns:1fr}.page-content{padding:22px 20px 40px}}@media(max-width:800px){.sidebar{transform:translate(-100%);transition:transform .2s ease}.sidebar.open{transform:translate(0)}.mobile-mask.visible{position:fixed;z-index:19;top:0;right:0;bottom:0;left:0;display:block;background:#00000059}.main-area{width:100%;margin-left:0}.mobile-header{display:flex;align-items:center;height:54px;padding:0 14px;border-bottom:1px solid #dce2e0;background:#fff;gap:10px}.mobile-only{display:grid;margin-left:auto}.page-heading{align-items:flex-start}.heading-actions{flex-wrap:wrap;justify-content:flex-end}.toolbar{align-items:stretch;flex-direction:column}.search-field{min-width:0}.toolbar-note{margin-left:0}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.asset-grid{grid-template-columns:repeat(2,1fr)}.form-grid,.form-grid.three{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.modal-mask{padding:12px}}
