:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#202a35;background:#f5f7fa}*{box-sizing:border-box}body{margin:0}.layout{display:flex;min-height:100vh}.sidebar{width:238px;background:#162b3a;color:#dce8ee;padding:24px 16px;display:flex;flex-direction:column}.brand{padding:4px 10px 24px}.brand strong{display:block;color:#fff;font-size:24px}.brand span{display:block;color:#9fb3c0;font-size:12px;margin-top:6px}.menu-group{display:grid;gap:4px;margin:0 0 18px}.menu-group>small{color:#78909c;font-size:11px;padding:0 12px 5px}.menu-group button{border:0;background:transparent;color:#b9cad3;text-align:left;padding:10px 12px;border-radius:7px;font-size:14px;cursor:pointer}.menu-group button i{display:inline-block;width:24px;color:#91b5a5;font-style:normal}.menu-group button.active,.menu-group button:hover{background:#28495b;color:#fff}.logout{margin-top:auto;border:1px solid #567080;background:transparent;color:#dce8ee;padding:10px;border-radius:7px;cursor:pointer}.content{flex:1;padding:30px 38px;overflow:auto}.page-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.page-header h1{margin:4px 0 0;font-size:26px}.page-header small{color:#71808a}.message{color:#1d805c}.panel,.metric{background:#fff;border:1px solid #dfe5ea;border-radius:9px}.panel{padding:22px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-title h3,.panel h3{margin:0}.panel-title span,.metric span{color:#71808a;font-size:12px}.page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.metric{padding:20px;display:grid;gap:8px}.metric small{color:#71808a}.metric strong{font-size:30px;color:#1d805c}.wide{grid-column:1/-1;min-height:180px}.quick-actions{display:flex;gap:10px;margin-top:20px}.quick-actions button,.module-placeholder button{background:#1d805c;color:#fff;border:0;border-radius:6px;padding:9px 14px;cursor:pointer}.table{background:#fff;border:1px solid #dfe5ea;border-radius:9px;overflow:hidden}.row{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;padding:14px 18px;border-bottom:1px solid #eef1f3;font-size:14px}.row:last-child{border:0}.row.head{background:#f7f9fa;color:#667782;font-size:12px}.config-list{display:grid}.config-list label{display:grid;grid-template-columns:230px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #eef1f3;font-size:13px}.config-list label span{display:grid;gap:4px}.config-list label small{color:#8a989f;font-size:11px}.config-list input{padding:9px;border:1px solid #d8e0e5;border-radius:6px}.config-list button,.primary{background:#1d805c;color:#fff;border:0;border-radius:6px;padding:9px 14px;cursor:pointer}.empty{padding:44px;text-align:center;color:#7b8b92;background:#fafcfc;border:1px dashed #d9e2e5;border-radius:7px}.module-placeholder{text-align:center;padding:70px 20px}.placeholder-icon{font-size:34px;color:#1d805c;margin-bottom:12px}.module-placeholder p{color:#71808a;margin:12px auto 22px;max-width:480px}.login{margin:12vh auto 0;background:#fff;border:1px solid #dfe5ea;border-radius:10px;padding:30px;width:min(380px,calc(100% - 32px));display:grid;gap:12px}.login-brand strong{display:block;color:#1d805c;font-size:22px}.login-brand span{display:block;color:#71808a;font-size:12px;margin-top:3px}.login h1{margin:8px 0 10px}.login input{padding:12px;border:1px solid #d8e0e5;border-radius:6px}.login small{color:#bf4b42;min-height:20px}.hint{margin:0;color:#71808a;font-size:12px}.trace-admin-filter{display:flex;gap:10px;margin-bottom:16px}.trace-admin-filter input{width:min(360px,100%);padding:9px;border:1px solid #d8e0e5;border-radius:6px}.trace-admin-filter button{background:#1d805c;color:#fff;border:0;border-radius:6px;padding:9px 14px;cursor:pointer}.trace-admin-table .row{grid-template-columns:1.15fr 1.1fr .8fr .8fr .8fr 1.45fr 1.15fr .75fr;gap:10px;align-items:center}.trace-admin-table small{display:block;color:#7b8b92;font-size:11px;margin-top:3px}@media (max-width:980px){.trace-admin-table{overflow-x:auto}.trace-admin-table .row{min-width:1040px}.trace-admin-filter input{width:100%}}@media (max-width:760px){.sidebar{width:190px}.content{padding:22px}.page-grid,.config-list label{grid-template-columns:1fr}.row{grid-template-columns:1fr 1fr;gap:8px}}.package-page{display:flex;flex-direction:column;gap:20px}.package-page .panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.package-page .panel-title>div{display:flex;align-items:baseline;gap:14px}.package-page .panel-title h3{margin:0}.package-page .panel-title span{color:#7b8794;font-size:13px}.global-params{padding:22px 24px;border:1px solid #e6ebf2;border-radius:14px;background:#fff}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-heading h4{margin:0 0 4px;font-size:16px;color:#1f2937}.section-heading small{color:#8a96a3}.section-badge,.count-badge{padding:5px 10px;border-radius:999px;background:#eef6ff;color:#2774c6;font-size:12px}.global-param-grid{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}.global-param-grid label{display:flex;flex-direction:column;gap:7px;color:#435466;font-size:13px}.global-param-grid input[type=number]{width:150px}.global-param-grid small{color:#9aa6b2;font-size:12px}.switch-label{min-width:180px}.switch-label input{display:none}.switch-label i{position:relative;width:42px;height:24px;border-radius:20px;background:#cbd5e1;cursor:pointer}.switch-label i:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}.switch-label input:checked+i{background:#2f80ed}.switch-label input:checked+i:after{left:21px}.compact-btn{height:36px}.package-list-section{padding:22px 24px;border:1px solid #e6ebf2;border-radius:14px;background:#fff}.package-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}.package-card{padding:20px;border:1px solid #e4eaf2;border-radius:14px;background:linear-gradient(145deg,#fff,#f8fbff);box-shadow:0 4px 15px #2441660d}.package-card-top{display:flex;justify-content:space-between;align-items:center}.package-id{font-size:12px;color:#9aa6b2}.status-pill{padding:4px 9px;border-radius:999px;font-size:12px}.status-pill.active{background:#e8f7ef;color:#198754}.status-pill.inactive{background:#f1f3f5;color:#7c8795}.package-card h3{margin:15px 0 8px;font-size:19px;color:#172b4d}.package-price{display:flex;align-items:baseline;gap:5px;margin:8px 0 16px}.package-price b{font-size:28px;color:#2563eb}.package-price span{color:#8b98a7;font-size:13px}.package-meta{margin:0 0 18px;display:grid;gap:9px}.package-meta div{display:flex;justify-content:space-between;gap:12px}.package-meta dt{color:#7b8794;font-size:13px}.package-meta dd{margin:0;color:#364152;font-size:13px}.package-actions{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid #edf0f5;padding-top:14px}.package-actions button,.permission-toolbar button,.dialog-footer button{border:1px solid #d8e0ea;background:#fff;color:#3f5065;border-radius:7px;padding:7px 11px;cursor:pointer}.package-actions button:hover,.permission-toolbar button:hover{border-color:#6aa8f7;color:#2563eb}.package-actions .danger{color:#d64545}.legacy-plan-section{margin-top:0}.modal-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:20px}.package-dialog{width:min(760px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;padding:24px;box-shadow:0 20px 60px #0f172a40}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.dialog-header h3{margin:0 0 5px}.dialog-header small{color:#8a96a3}.dialog-close{border:0;background:transparent;font-size:28px;color:#8793a2;cursor:pointer}.package-basic-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:22px}.package-basic-form label{display:flex;flex-direction:column;gap:7px;color:#4b5d70;font-size:13px}.package-basic-form input{width:100%}.permission-toolbar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eef1f5;padding-top:18px;margin-bottom:12px}.permission-toolbar>div{display:flex;gap:7px}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.permission-group{border:1px solid #e7ecf3;border-radius:10px;padding:14px;background:#fbfdff}.permission-group h4{margin:0 0 12px;color:#273b53}.permission-group label{display:block;margin:9px 0;color:#536579;font-size:13px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid #eef1f5}.primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}@media (max-width:700px){.package-page .panel-title,.package-page .panel-title>div{align-items:flex-start;flex-direction:column}.global-param-grid{align-items:stretch;flex-direction:column}.global-param-grid input[type=number]{width:100%}.package-basic-form,.permission-groups{grid-template-columns:1fr}.package-list-section,.global-params{padding:16px}.package-dialog{padding:18px}}.audit-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:18px;color:#667782;font-size:13px}.audit-pagination label{display:flex;align-items:center;gap:6px}.audit-pagination select,.audit-pagination button{height:32px;border:1px solid #d8e0e5;border-radius:6px;background:#fff;color:#40505a;padding:0 10px}.audit-pagination button{cursor:pointer}.audit-pagination button.active{border-color:#27945b;background:#27945b;color:#fff}.audit-pagination button:disabled{cursor:not-allowed;opacity:.45}@media (max-width:760px){.audit-pagination{justify-content:flex-start;flex-wrap:wrap}}.farmer-admin-page{display:grid;gap:18px;padding:22px;background:#fff;border:1px solid #dfe5ea;border-radius:8px}.farmer-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e8eeeb}.farmer-admin-heading h3{margin:0;font-size:18px}.farmer-admin-heading span{display:block;margin-top:6px;color:#929e97;font-size:12px}.farmer-admin-actions,.farmer-admin-filter-actions{display:flex;align-items:center;gap:8px}.farmer-admin-btn{height:36px;min-width:108px;padding:0 14px;border:1px solid #d2ddd7;border-radius:6px;background:#fff;color:#4b5b52;font:inherit;cursor:pointer}.farmer-admin-btn:hover{border-color:#9fc8b1;background:#f5faf7;color:#237d4e}.farmer-admin-btn.primary{border-color:#27945b;background:#27945b;color:#fff}.farmer-admin-btn.primary:hover{background:#217e4e}.farmer-admin-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:14px;align-items:end;padding:16px;border:1px solid #dfe8e3;border-radius:8px;background:#f8fbf9}.farmer-admin-filter label{display:grid;gap:7px;color:#4c5e54;font-size:13px}.farmer-admin-filter input{width:100%;height:38px;padding:0 11px;border:1px solid #d5dfda;border-radius:6px;background:#fff;font:inherit;outline:none}.farmer-admin-filter input:focus{border-color:#27945b;box-shadow:0 0 0 2px #27945b1f}.farmer-admin-table-wrap{min-width:0}.farmer-admin-table{overflow-x:auto}.farmer-admin-table .row{grid-template-columns:minmax(150px,1.2fr) minmax(120px,1fr) minmax(120px,.9fr) minmax(140px,1fr) minmax(110px,.8fr) minmax(170px,1.15fr) minmax(70px,.5fr);min-width:1000px;gap:12px;align-items:center;min-height:52px}.farmer-admin-table .row.head{min-height:46px;background:#dfece5;color:#2e4c3b;font-size:13px}.farmer-admin-table .row:not(.head):nth-child(odd){background:#f8faf9}.farmer-admin-table .row:hover:not(.head){background:#f1f8f4}.farmer-admin-table small{display:block;margin-top:3px;color:#86948c;font-size:11px}.farmer-admin-number{text-align:right;font-variant-numeric:tabular-nums}.farmer-admin-action-title{text-align:right}.farmer-admin-table .row-actions{display:flex;justify-content:flex-end}.farmer-delete-btn{position:relative;width:32px;height:32px;border:1px solid transparent;border-radius:6px;background:transparent;color:#98a49d;cursor:pointer}.farmer-delete-btn i,.farmer-delete-btn i:before{position:absolute;display:block;content:""}.farmer-delete-btn i{left:10px;top:10px;width:10px;height:12px;border:2px solid currentColor;border-top:0;border-radius:0 0 2px 2px}.farmer-delete-btn i:before{left:-3px;top:-5px;width:12px;height:2px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.farmer-delete-btn:hover{border-color:#f0b9b4;background:#fff1f0;color:#c53d35}.farmer-admin-pagination{margin-bottom:0}@media (max-width:900px){.farmer-admin-heading{align-items:stretch;flex-direction:column}.farmer-admin-actions{flex-wrap:wrap}.farmer-admin-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.farmer-admin-filter-actions{grid-column:1/-1}}@media (max-width:640px){.farmer-admin-page{padding:16px}.farmer-admin-actions,.farmer-admin-filter,.farmer-admin-filter-actions{display:grid;grid-template-columns:1fr;width:100%}.farmer-admin-actions .farmer-admin-btn,.farmer-admin-filter-actions .farmer-admin-btn{width:100%}}.customer-admin-page{display:grid;gap:18px;padding:22px;background:#fff;border:1px solid #dfe5ea;border-radius:8px;box-shadow:0 4px 14px #2340300f}.customer-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e8eeeb}.customer-admin-heading h3{margin:0;font-size:18px}.customer-admin-heading span{display:block;margin-top:6px;color:#75837b;font-size:13px}.customer-admin-heading>small{color:#98a29c;font-size:12px}.customer-admin-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:14px;align-items:end;padding:16px;border:1px solid #dfe8e3;border-radius:8px;background:#f8fbf9}.customer-admin-filter label{display:grid;gap:7px;color:#4c5e54;font-size:13px}.customer-admin-filter input{width:100%;height:38px;padding:0 11px;border:1px solid #d5dfda;border-radius:6px;background:#fff;font:inherit;outline:none}.customer-admin-filter input:focus{border-color:#27945b;box-shadow:0 0 0 2px #27945b1f}.customer-admin-filter-actions{display:flex;align-items:center;gap:8px}.customer-admin-btn{height:38px;min-width:82px;padding:0 16px;border:1px solid #d2ddd7;border-radius:6px;background:#fff;color:#4b5b52;font:inherit;cursor:pointer}.customer-admin-btn:hover{border-color:#9fc8b1;background:#f5faf7;color:#237d4e}.customer-admin-btn.primary{border-color:#27945b;background:#27945b;color:#fff}.customer-admin-btn.primary:hover{background:#217e4e}.customer-admin-table-wrap{min-width:0}.customer-admin-table{overflow-x:auto}.customer-admin-table .row{grid-template-columns:minmax(150px,1.15fr) minmax(130px,1fr) minmax(130px,.9fr) minmax(160px,1.15fr) minmax(120px,.8fr) minmax(175px,1.15fr) minmax(70px,.5fr);min-width:1010px;gap:12px;align-items:center;min-height:52px}.customer-admin-table .row.head{min-height:46px;background:#dfece5;color:#2e4c3b;font-size:13px}.customer-admin-table .row:not(.head):nth-child(odd){background:#f8faf9}.customer-admin-table .row:hover:not(.head){background:#f1f8f4}.customer-admin-table small{display:block;margin-top:3px;color:#86948c;font-size:11px}.customer-admin-number{text-align:right;font-variant-numeric:tabular-nums}.customer-admin-action-title{text-align:right}.customer-admin-table .row-actions{display:flex;justify-content:flex-end}.customer-delete-btn{position:relative;width:32px;height:32px;border:1px solid transparent;border-radius:6px;background:transparent;color:#98a49d;cursor:pointer}.customer-delete-btn i,.customer-delete-btn i:before{position:absolute;display:block;content:""}.customer-delete-btn i{left:10px;top:10px;width:10px;height:12px;border:2px solid currentColor;border-top:0;border-radius:0 0 2px 2px}.customer-delete-btn i:before{left:-3px;top:-5px;width:12px;height:2px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.customer-delete-btn:hover{border-color:#f0b9b4;background:#fff1f0;color:#c53d35}.customer-admin-pagination{margin-bottom:0}@media (max-width:900px){.customer-admin-heading{align-items:stretch;flex-direction:column}.customer-admin-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-admin-filter-actions{grid-column:1/-1}}@media (max-width:640px){.customer-admin-page{padding:16px}.customer-admin-filter,.customer-admin-filter-actions{display:grid;grid-template-columns:1fr;width:100%}.customer-admin-filter-actions .customer-admin-btn{width:100%}}.agents-page{border-radius:8px;box-shadow:0 5px 18px #203a2e0f}.agent-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:18px}.agent-toolbar input{width:min(360px,100%);height:38px;padding:0 12px;border:1px solid #d8e0e5;border-radius:6px}.agent-toolbar button{height:38px;padding:0 16px;border:1px solid #d8e0e5;border-radius:6px;background:#fff;cursor:pointer}.agent-table{border-radius:8px}.agent-table .row{grid-template-columns:minmax(140px,1.15fr) minmax(120px,1fr) minmax(110px,.9fr) minmax(165px,1.2fr) minmax(90px,.7fr) minmax(350px,2.2fr);gap:14px;align-items:center;min-height:62px}.agent-table .row.head{min-height:46px;background:#e9f1ed;color:#304d3e;font-size:13px}.agent-table .row:not(.head):nth-child(odd){background:#f8faf9}.agent-table small{display:block;margin-top:4px;color:#84918a;font-size:12px}.agent-table .row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.agent-action{height:32px;min-width:64px;padding:0 11px;border:1px solid transparent;border-radius:6px;font-size:12px;cursor:pointer}.agent-action.edit{background:#2f80ed;color:#fff}.agent-action.package{border-color:#9fc5ef;background:#eaf4ff;color:#2867a8}.agent-action.quota,.agent-action.enable{background:#27945b;color:#fff}.agent-action.disable{background:#d94b4b;color:#fff}.agent-status{display:inline-block;padding:4px 9px;border-radius:999px;font-style:normal;font-size:12px}.agent-status.active,.agent-status.trial{background:#e7f6ed;color:#197443}.agent-status.disabled{background:#fdeaea;color:#bd3333}.agent-status.expired,.agent-status.frozen{background:#fff2df;color:#a76313}@media (max-width:1100px){.agent-table{overflow-x:auto}.agent-table .row{min-width:1080px}}@media (max-width:760px){.agent-toolbar{align-items:stretch;flex-wrap:wrap}.agent-toolbar input{width:100%}}.customer-admin-table .row{grid-template-columns:minmax(130px,1.1fr) minmax(120px,1fr) minmax(110px,.9fr) minmax(130px,1fr) minmax(100px,.8fr) minmax(160px,1.2fr) minmax(70px,.55fr);gap:12px;align-items:center}.subscription-admin-table .row{grid-template-columns:minmax(150px,1.2fr) minmax(130px,1fr) minmax(120px,.9fr) minmax(120px,.9fr) minmax(160px,1.15fr) minmax(90px,.7fr);gap:12px;align-items:center}.customer-admin-table small,.subscription-admin-table small{display:block;margin-top:4px;color:#84918a;font-size:12px}@media (max-width:1100px){.customer-admin-table,.subscription-admin-table{overflow-x:auto}.customer-admin-table .row{min-width:940px}.subscription-admin-table .row{min-width:860px}}.agent-edit-dialog{width:min(760px,100%);padding:0;overflow:hidden;border-radius:12px;box-shadow:0 22px 60px #0f172a3d}.agent-edit-header{margin:0;padding:20px 24px;background:#f1f7f4;border-bottom:1px solid #dfe9e3;align-items:center}.agent-edit-header h3{color:#213c2e}.agent-edit-header small{display:block;margin-top:5px;color:#77857d;font-size:12px}.agent-edit-header .dialog-close{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:6px;color:#637169;font-size:24px;line-height:1}.agent-edit-header .dialog-close:hover{background:#e2ece7;color:#1f6f47}.agent-edit-body{padding:24px}.agent-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px}.agent-edit-grid label{display:flex;flex-direction:column;gap:8px;min-width:0;color:#405048;font-size:13px;font-weight:600;text-align:left}.agent-edit-grid input,.agent-edit-grid select{width:100%;height:40px;padding:0 11px;border:1px solid #d5dfda;border-radius:6px;background:#fff;color:#26352d;font:inherit;font-weight:400}.agent-edit-grid input:focus,.agent-edit-grid select:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}.agent-edit-date{grid-column:1/2}.agent-edit-date small{color:#8b9690;font-size:12px;font-weight:400;line-height:1.5}.agent-edit-footer{justify-content:flex-end;margin-top:24px;padding-top:18px}.agent-edit-footer button{height:38px;min-width:96px;padding:0 16px;border-radius:6px;font-weight:500}.agent-edit-footer .reset-password-btn{margin-right:auto;border-color:#a9c8e9;background:#edf6ff;color:#266aa8}.agent-edit-footer .cancel-btn{border-color:#d3dcd7;background:#fff;color:#4f5e56}.agent-edit-footer .save-btn{border-color:#27945b;background:#27945b;color:#fff}@media (max-width:640px){.agent-edit-dialog{width:100%}.agent-edit-header,.agent-edit-body{padding:18px}.agent-edit-grid{grid-template-columns:1fr;gap:16px}.agent-edit-date{grid-column:auto}.agent-edit-footer{flex-wrap:wrap}.agent-edit-footer button{flex:1;min-width:0}.agent-edit-footer .reset-password-btn{flex-basis:100%;margin-right:0}}.trace-editor-dialog{width:min(860px,100%);padding:28px}.trace-editor-dialog>label{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:start;gap:14px;margin:0 0 16px;color:#435466;font-size:13px;line-height:36px}.trace-editor-dialog>label input,.trace-editor-dialog>label textarea{width:100%;min-width:0;padding:9px 11px;border:1px solid #d8e0e5;border-radius:6px;background:#fff;color:#202a35;font:inherit;line-height:1.5}.trace-editor-dialog>label textarea{min-height:78px;resize:vertical;line-height:1.55}.trace-editor-dialog>label:focus-within{color:#1d805c}.trace-editor-dialog>label input:focus,.trace-editor-dialog>label textarea:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}.trace-editor-list{margin:4px 0 18px;padding:16px;border:1px solid #e5ece8;border-radius:8px;background:#f8fcf9}.trace-editor-list>b{display:block;margin-bottom:12px;color:#2d4b3a;font-size:13px}.trace-editor-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr auto;gap:8px;align-items:center;margin-bottom:9px}.trace-editor-row input{min-width:0;width:100%;height:36px;padding:8px 10px;border:1px solid #d8e0e5;border-radius:6px;font:inherit}.trace-editor-row button,.trace-editor-list>button{height:36px;padding:0 11px;border:1px solid #cfd9d3;border-radius:6px;background:#fff;color:#536579;cursor:pointer;white-space:nowrap}.trace-editor-row button{color:#b44a42}.trace-editor-list>button{margin-top:2px;color:#1d805c}.trace-editor-row button:hover,.trace-editor-list>button:hover{border-color:#27945b;background:#f1faf4}.trace-editor-dialog .dialog-footer{margin-top:8px}.trace-editor-dialog .dialog-footer button{min-width:84px;height:38px}@media (max-width:700px){.trace-editor-dialog{padding:20px 16px}.trace-editor-dialog>label{grid-template-columns:1fr;gap:6px;line-height:1.4;margin-bottom:14px}.trace-editor-row{grid-template-columns:1fr 1fr}.trace-editor-row button{grid-column:1/-1}.trace-editor-dialog .dialog-footer{justify-content:stretch}.trace-editor-dialog .dialog-footer button{flex:1}}.admin-trace-page{display:grid;gap:18px}.admin-trace-filter-card,.admin-trace-table-card{padding:20px 22px;border:1px solid #dfe8e3;border-radius:8px;background:#fff;box-shadow:0 5px 18px #203a2e0f}.admin-trace-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.admin-trace-heading h3{margin:0;color:#263c30}.admin-trace-heading span{display:block;margin-top:5px;color:#7b8981;font-size:13px}.admin-trace-filter{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(190px,1fr) minmax(160px,.8fr) auto;gap:12px;align-items:end}.admin-trace-filter label{display:grid;gap:7px;color:#4c5e54;font-size:13px}.admin-trace-filter input,.admin-trace-filter select{width:100%;height:38px;padding:0 11px;border:1px solid #d5dfda;border-radius:6px;background:#fff;color:#26352d;font:inherit}.admin-trace-filter input:focus,.admin-trace-filter select:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}.admin-trace-filter-actions{display:flex;gap:8px}.admin-trace-btn{height:34px;padding:0 12px;border:1px solid transparent;border-radius:6px;font-size:12px;white-space:nowrap;cursor:pointer}.admin-trace-btn.primary-action,.admin-trace-btn.export,.admin-trace-btn.edit{background:#27945b;color:#fff}.admin-trace-btn.secondary{height:38px;border-color:#d2ddd7;background:#fff;color:#4b5b52}.admin-trace-btn.primary-action{height:38px}.admin-trace-btn.preview{border-color:#9fc5ef;background:#eaf4ff;color:#2867a8}.admin-trace-btn.copy{border-color:#bad8c6;background:#f0faf4;color:#24794e}.admin-trace-btn:disabled{border-color:#dde3e0;background:#f1f3f2;color:#9aa39e;cursor:not-allowed}.admin-trace-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-trace-metrics article{min-height:112px;padding:20px;border:1px solid #e0e8e4;border-radius:8px;background:#fff;box-shadow:0 5px 18px #203a2e0d;display:grid;align-content:center;gap:10px}.admin-trace-metrics small{color:#6d7e74}.admin-trace-metrics strong{color:#243a2e;font-size:27px;line-height:1.2}.admin-trace-metrics article:nth-child(3) strong{color:#c46b22}.admin-trace-table{overflow-x:auto;border-radius:8px}.admin-trace-table .row{grid-template-columns:minmax(135px,1.05fr) minmax(155px,1.2fr) minmax(90px,.65fr) minmax(95px,.7fr) minmax(90px,.68fr) minmax(135px,1fr) minmax(105px,.78fr) minmax(88px,.65fr) minmax(155px,1.1fr) minmax(250px,1.8fr);gap:11px;align-items:center;min-width:1320px;min-height:60px}.admin-trace-table .row.head{min-height:46px;background:#dfece5;color:#2e4c3b;font-size:13px}.admin-trace-row{cursor:pointer}.admin-trace-row:nth-of-type(odd){background:#f8faf9}.admin-trace-row:hover,.admin-trace-row.expanded{background:#edf7f1}.admin-trace-table small{display:block;margin-top:4px;color:#84918a;font-size:12px}.admin-trace-ellipsis,.admin-trace-code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-trace-status,.admin-trace-out-status{display:inline-block;padding:4px 9px;border-radius:999px;font-style:normal;font-size:12px}.admin-trace-status.published{background:#e7f6ed;color:#197443}.admin-trace-status.pending{background:#fff2df;color:#a76313}.admin-trace-out-status.none{background:#eef1f3;color:#64727a}.admin-trace-out-status.partial{background:#eaf2ff;color:#2c6ea8}.admin-trace-out-status.all{background:#e7f6ed;color:#197443}.admin-trace-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.admin-trace-detail{min-width:1320px;padding:18px 20px;border-bottom:1px solid #dfe8e3;background:#f8fbf9;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px}.admin-trace-detail>div{display:grid;gap:5px;min-width:0}.admin-trace-detail b{color:#3f5448;font-size:12px}.admin-trace-detail span{color:#68776f;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.admin-trace-pagination{margin-bottom:0}.admin-trace-preview-dialog{width:min(470px,100%);height:min(820px,92vh);padding:18px;background:#fff;border-radius:10px;box-shadow:0 22px 70px #0f172a47;display:flex;flex-direction:column}.admin-trace-preview-dialog .dialog-header{margin-bottom:12px}.admin-trace-preview-dialog .dialog-header h3{margin:0 0 4px}.admin-trace-preview-dialog .dialog-header small{color:#7c8982}.admin-trace-preview-dialog iframe{width:100%;flex:1;border:1px solid #dfe8e3;border-radius:8px;background:#f5f7f6}@media (max-width:1180px){.admin-trace-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-trace-filter-actions{align-self:end}.admin-trace-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.admin-trace-filter-card,.admin-trace-table-card{padding:16px}.admin-trace-heading{align-items:stretch;flex-direction:column}.admin-trace-filter{grid-template-columns:1fr}.admin-trace-filter-actions,.admin-trace-filter-actions .admin-trace-btn,.admin-trace-heading .admin-trace-btn{width:100%}.admin-trace-metrics{grid-template-columns:1fr}.admin-trace-detail{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-trace-preview-dialog{height:94vh;padding:13px}}.trace-editor-dialog .trace-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-bottom:18px}.trace-editor-dialog .trace-editor-grid label,.trace-editor-dialog .trace-editor-section>label,.trace-editor-dialog>label{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:0;margin:0;color:#435466;font-size:13px;line-height:1.4;text-align:left}.trace-editor-dialog .trace-editor-wide{grid-column:1/-1}.trace-editor-dialog .trace-editor-grid input,.trace-editor-dialog .trace-editor-grid textarea,.trace-editor-dialog .trace-editor-section>label textarea,.trace-editor-dialog>label textarea,.trace-editor-dialog .trace-editor-row textarea{width:100%;min-width:0;padding:9px 11px;border:1px solid #d8e0e5;border-radius:6px;background:#fff;color:#202a35;font:inherit;line-height:1.5}.trace-editor-dialog .trace-editor-grid input{height:38px}.trace-editor-dialog .trace-editor-grid textarea,.trace-editor-dialog .trace-editor-section>label textarea,.trace-editor-dialog>label textarea,.trace-editor-dialog .trace-editor-row textarea{min-height:78px;resize:vertical}.trace-editor-dialog .trace-editor-grid input:focus,.trace-editor-dialog .trace-editor-grid textarea:focus,.trace-editor-dialog .trace-editor-section textarea:focus,.trace-editor-dialog .trace-editor-row textarea:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}.trace-editor-dialog .trace-editor-section{margin:0 0 18px;padding:16px;border:1px solid #e5ece8;border-radius:8px;background:#f8fcf9}.trace-editor-dialog .trace-editor-section>b{display:block;margin-bottom:14px;color:#2d4b3a;font-size:13px}.trace-editor-dialog .trace-editor-section .trace-editor-grid{margin-bottom:0}.trace-editor-dialog .trace-editor-section>label+label,.trace-editor-dialog>label+label{margin-top:16px}.trace-editor-dialog .trace-editor-row{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.2fr) auto}.trace-editor-dialog .trace-editor-row textarea{min-height:38px;height:38px}.trace-editor-dialog>.dialog-footer{margin-top:22px}@media (max-width:700px){.trace-editor-dialog .trace-editor-grid{grid-template-columns:minmax(0,1fr);gap:14px}.trace-editor-dialog .trace-editor-wide{grid-column:auto}.trace-editor-dialog .trace-editor-row{grid-template-columns:repeat(2,minmax(0,1fr))}.trace-editor-dialog .trace-editor-row button{grid-column:1/-1}.trace-editor-dialog .trace-editor-section{padding:14px}}@media (max-width:440px){.trace-editor-dialog .trace-editor-row{grid-template-columns:minmax(0,1fr)}}.orders-page{border-radius:8px;box-shadow:0 5px 18px #203a2e0f}.orders-page>.panel-title{align-items:flex-start}.orders-page>.panel-title>div{display:grid;gap:5px}.order-filter{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:14px;align-items:end;margin-bottom:18px;padding:16px;border:1px solid #e1e9e5;border-radius:8px;background:#f8fbf9}.order-filter label{display:grid;gap:7px;color:#4c5e54;font-size:13px}.order-filter input,.order-filter select{width:100%;height:38px;padding:0 11px;border:1px solid #d5dfda;border-radius:6px;background:#fff;color:#26352d;font:inherit}.order-filter input:focus,.order-filter select:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}.order-filter-actions{display:flex;gap:8px}.order-btn{height:34px;padding:0 12px;border:1px solid transparent;border-radius:6px;font-size:12px;white-space:nowrap;cursor:pointer}.order-btn.primary-action,.order-btn.export,.order-btn.approve{background:#27945b;color:#fff}.order-btn.secondary{border-color:#d2ddd7;background:#fff;color:#4b5b52}.order-btn.proof{border-color:#a8c7e8;background:#edf6ff;color:#27689f}.order-btn.reject{background:#d94b4b;color:#fff}.order-btn:disabled{border-color:#dde3e0;background:#f1f3f2;color:#9aa39e;cursor:not-allowed}.order-table{border-radius:8px;overflow-x:auto}.order-table .row{grid-template-columns:minmax(150px,1.25fr) minmax(120px,1fr) minmax(100px,.8fr) minmax(70px,.55fr) minmax(90px,.7fr) minmax(145px,1.05fr) minmax(85px,.65fr) minmax(120px,.9fr) minmax(92px,.7fr) minmax(205px,1.5fr);gap:12px;align-items:center;min-width:1260px;min-height:60px}.order-table .row.head{min-height:46px;background:#dfece5;color:#2e4c3b;font-size:13px}.order-table .row:not(.head):nth-child(odd){background:#f8faf9}.order-table small{display:block;margin-top:4px;color:#84918a;font-size:12px}.order-table .row-actions{display:flex;align-items:center;gap:7px}.order-no,.order-remark{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-amount{font-weight:600;color:#273f32;text-align:right}.order-status{display:inline-block;padding:4px 9px;border-radius:999px;font-style:normal;font-size:12px}.order-status.pending{background:#fff2df;color:#a76313}.order-status.paid{background:#e7f6ed;color:#197443}.order-status.reject,.order-status.refunded,.order-status.cancelled{background:#fdeaea;color:#bd3333}.order-pagination{margin-bottom:0}.proof-dialog{width:min(920px,100%);max-height:92vh;padding:20px;background:#fff;border-radius:10px;box-shadow:0 22px 70px #0f172a47;overflow:hidden}.proof-toolbar{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px}.proof-toolbar button{height:34px;padding:0 12px;border:1px solid #d5dfda;border-radius:6px;background:#fff;color:#405048;cursor:pointer}.proof-toolbar span{min-width:58px;text-align:center;color:#607068;font-size:13px}.proof-viewport{height:min(68vh,680px);overflow:auto;border:1px solid #dfe6e2;border-radius:8px;background:#eef2f0;display:flex;align-items:flex-start;justify-content:center;padding:20px}.proof-viewport img{display:block;max-width:100%;height:auto;transform-origin:top center;transition:transform .15s ease}.order-reject-dialog{width:min(520px,100%);padding:22px;background:#fff;border-radius:10px;box-shadow:0 22px 60px #0f172a40}.order-reject-dialog>label{display:grid;gap:8px;color:#405048;font-size:13px;font-weight:600}.order-reject-dialog textarea{width:100%;min-height:120px;padding:10px 12px;border:1px solid #d5dfda;border-radius:6px;resize:vertical;font:inherit;font-weight:400}.order-reject-dialog textarea:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}@media (max-width:1200px){.order-filter{grid-template-columns:repeat(2,minmax(180px,1fr))}.order-filter-actions{align-self:end}}@media (max-width:700px){.order-filter{grid-template-columns:1fr}.order-filter-actions,.order-filter-actions .order-btn{width:100%}.orders-page>.panel-title{gap:12px;flex-direction:column}.orders-page>.panel-title .order-btn{width:100%}.proof-dialog{padding:14px}.proof-viewport{height:65vh;padding:10px}.proof-toolbar{flex-wrap:wrap}.order-reject-dialog{padding:18px}}.order-table .row{grid-template-columns:minmax(125px,1.15fr) minmax(100px,.9fr) minmax(78px,.72fr) minmax(58px,.5fr) minmax(76px,.65fr) minmax(125px,1.05fr) minmax(68px,.58fr) minmax(78px,.68fr) minmax(76px,.65fr) minmax(160px,1.35fr);gap:8px;min-width:1060px;padding-left:14px;padding-right:14px}.order-table .row-actions{gap:6px}.admin-trace-page{grid-template-columns:minmax(0,1fr);min-width:0}.admin-trace-filter-card,.admin-trace-table-card{min-width:0}.settlements-page{display:grid;gap:18px}.settlement-filter-card,.settlement-section{padding:20px 22px;border:1px solid #dfe8e3;border-radius:8px;background:#fff;box-shadow:0 5px 18px #203a2e0f}.settlement-filter-card{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.settlement-filter-card h3,.settlement-section-title h3{margin:0;color:#263c30}.settlement-filter-card>div:first-child span,.settlement-section-title span{display:block;margin-top:5px;color:#7b8981;font-size:13px}.settlement-filter{display:flex;align-items:flex-end;gap:8px}.settlement-filter label{display:grid;gap:7px;color:#4c5e54;font-size:13px}.settlement-filter input{width:260px;height:38px;padding:0 11px;border:1px solid #d5dfda;border-radius:6px;font:inherit}.settlement-filter input:focus{outline:0;border-color:#27945b;box-shadow:0 0 0 3px #27945b1f}.settlement-btn{height:38px;padding:0 15px;border:1px solid transparent;border-radius:6px;white-space:nowrap;cursor:pointer}.settlement-btn.primary-action,.settlement-btn.export{background:#27945b;color:#fff}.settlement-btn.secondary{border-color:#d2ddd7;background:#fff;color:#4b5b52}.settlement-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.settlement-metrics article{min-height:112px;padding:20px;border:1px solid #e0e8e4;border-radius:8px;background:#fff;box-shadow:0 5px 18px #203a2e0d;display:grid;align-content:center;gap:10px}.settlement-metrics small{color:#6d7e74}.settlement-metrics strong{color:#243a2e;font-size:25px;line-height:1.2}.settlement-metrics article:nth-child(3) strong{color:#c46b22}.settlement-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.settlement-section-title>b{padding:5px 10px;border-radius:999px;background:#edf7f1;color:#24794e;font-size:12px}.settlement-table{overflow-x:auto;border-radius:8px}.settlement-table .row{grid-template-columns:minmax(140px,1.15fr) minmax(150px,1.2fr) minmax(110px,.9fr) minmax(105px,.8fr) minmax(95px,.75fr) minmax(105px,.8fr) minmax(85px,.65fr) minmax(90px,.7fr);gap:12px;align-items:center;min-width:980px;min-height:58px}.settlement-table .row.head{min-height:46px;background:#dfece5;color:#2e4c3b;font-size:13px}.settlement-table .settlement-row{cursor:pointer}.settlement-table .settlement-row:nth-of-type(4n+1){background:#f8faf9}.settlement-table .settlement-row.unpaid-row{background:#fff5e8}.settlement-table .settlement-row:hover,.settlement-table .settlement-row.expanded{background:#edf7f1}.settlement-table small{display:block;margin-top:4px;color:#84918a;font-size:12px}.settlement-money{color:#202722;font-weight:600}.settlement-status{display:inline-block;padding:4px 9px;border-radius:999px;font-style:normal;font-size:12px}.settlement-status.unpaid{background:#fff0dc;color:#ad651d}.settlement-status.partial{background:#eaf2ff;color:#2c6ea8}.settlement-status.settled{background:#e7f6ed;color:#197443}.settlement-detail-btn{height:32px;padding:0 11px;border:1px solid #9fcbb1;border-radius:6px;background:#f1faf4;color:#23764c;cursor:pointer}.settlement-detail{min-width:980px;padding:18px 20px;border-bottom:1px solid #dfe8e3;background:#f8fbf9}.settlement-detail-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(480px,1.7fr);gap:24px}.settlement-detail h4{margin:0 0 12px;color:#2f4939}.settlement-source dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.settlement-source dl div{display:grid;gap:4px}.settlement-source dt{color:#829087;font-size:12px}.settlement-source dd{margin:0;color:#33463b;font-size:13px}.flow-list{display:grid;gap:7px}.flow-list>div{display:grid;grid-template-columns:1.2fr .9fr .7fr .8fr 1.2fr;gap:10px;padding:9px 10px;border-radius:6px;background:#fff;color:#536159;font-size:12px}.flow-list b{color:#253b2e}.settlement-flow p,.detail-loading{margin:0;color:#829087;font-size:13px}.settlement-pagination{margin-top:16px;margin-bottom:0}@media (max-width:1180px){.settlement-filter-card{align-items:stretch;flex-direction:column}.settlement-filter{flex-wrap:wrap}.settlement-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.settlement-filter{align-items:stretch;flex-direction:column}.settlement-filter input,.settlement-filter .settlement-btn{width:100%}.settlement-metrics{grid-template-columns:1fr}.settlement-filter-card,.settlement-section{padding:16px}.settlement-detail-grid,.settlement-source dl{grid-template-columns:1fr}.flow-list>div{grid-template-columns:1fr 1fr}.settlement-section-title{align-items:flex-start}}.app-frame{min-height:100vh;display:flex;flex-direction:column}.app-frame>.layout{flex:1;min-height:0}.app-frame>.site-footer{margin-top:auto;padding:16px 24px;text-align:center;color:#84929b;font-size:12px;line-height:1.6;border-top:1px solid #dfe5ea;background:#fff;overflow-wrap:anywhere}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover,.site-footer a:focus-visible{color:#237c59;text-decoration:underline}.config-list label{grid-template-columns:230px minmax(0,1fr)}.config-list input,.config-list select{min-width:0;width:100%;height:38px;padding:9px;border:1px solid #d8e0e5;border-radius:6px;background:#fff;font:inherit;color:inherit}.config-save-actions{display:flex;justify-content:flex-end;padding-top:20px}.config-save-actions button{min-height:38px}.config-save-actions button:disabled{opacity:.6;cursor:not-allowed}.permission-group .quota-field{display:grid;gap:7px}.permission-group .quota-field input{width:100%;margin:0}.permission-group .quota-field small{color:#8a96a3}.package-list-table .row{grid-template-columns:minmax(150px,1.3fr) minmax(100px,.8fr) minmax(140px,1fr) minmax(90px,.7fr) minmax(300px,1.8fr);gap:14px;align-items:center}.package-list-table .row-actions{display:flex;flex-wrap:wrap;gap:7px}.package-list-table .row-actions button{border:1px solid #d8e0ea;background:#fff;color:#3f5065;border-radius:7px;padding:7px 11px;cursor:pointer}.package-list-table .row-actions .danger{color:#d64545}.package-list-table .status-pill{display:inline-block;font-style:normal}@media (max-width: 900px){.package-list-table{overflow-x:auto}.package-list-table .row{min-width:900px}}
