:root{color-scheme:light;--bg:#f4f6f8;--surface:#fff;--surface2:#f8fafc;--border:#e5e7eb;--border2:#d9dee7;--text:#1f2937;--muted:#7b8794;--blue:#2563eb;--green:#16a34a;--orange:#f59e0b;--red:#ef4444;--shadow:0 1px 3px rgba(15,23,42,.05)}*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;color:var(--text);background:var(--bg);font-size:13px}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh;background:var(--bg)}.side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--border);overflow:auto}.brand{height:58px;display:flex;align-items:center;gap:10px;padding:0 18px;border-bottom:1px solid var(--border);font-size:15px;color:#111827}.brand i{width:30px;height:30px;display:inline-block;border-radius:7px;background:var(--blue);position:relative}.brand i:after{content:"";position:absolute;left:8px;top:7px;width:14px;height:13px;border:2px solid white;border-top-width:3px;border-radius:1px}.brand small{display:block;font-size:11px;color:var(--muted);font-weight:500;margin-top:2px}.section-label{padding:14px 20px 7px;color:#8a95a3;font-size:12px}.menu{display:flex;flex-direction:column;gap:2px;padding:0 10px}.navitem{width:100%;height:42px!important;display:flex!important;align-items:center;text-align:left!important;padding:0 14px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#374151!important;font-weight:500!important;box-shadow:none!important;transform:none!important}.navitem:before{content:"";width:7px;height:7px;border:1px solid #6b7280;border-radius:50%;margin-right:13px}.navitem.active,.navitem:hover{color:var(--blue)!important;background:#eff6ff!important}.navitem.active:before{background:var(--blue);border-color:var(--blue)}.side-bottom{margin-top:auto;padding:16px 20px;color:#9ca3af;font-size:12px;border-top:1px solid var(--border)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px}.main{min-width:0;background:var(--bg)}main>header{height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;background:#fff;border-bottom:1px solid var(--border)}.title{display:flex;align-items:center;gap:18px}.title h1,header h1{font-size:14px;line-height:1.2;font-weight:500;margin:0;color:#4b5563}.title p,header p{display:none}.account{display:flex;align-items:center;gap:10px;color:#374151;white-space:nowrap}.account:before{content:"";display:inline-block;width:26px;height:26px;border-radius:50%;background:#eef2f7}.account button{height:30px!important;border:0!important;background:transparent!important;color:#4b5563!important;padding:0 8px!important}.role{color:#6b7280;font-size:12px}.main #content{padding:22px 20px 40px;max-width:1700px;margin:auto}.metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric{min-height:94px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow)}.metric span{color:#8a95a3;font-size:12px;order:2}.metric b{font-size:27px;line-height:1;font-weight:500;color:var(--blue);order:1}.metric small{color:#9ca3af;font-size:11px;order:3}.metric:nth-child(2) b{color:var(--green)}.metric:nth-child(3) b{color:var(--orange)}.metric:nth-child(4) b{color:#3b82f6}.metric:nth-child(5) b{color:var(--red)}.grid2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px}.card{background:var(--surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow);padding:0;margin-bottom:16px}.card-title{height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;border-bottom:1px solid var(--border);font-size:14px;font-weight:600;color:#374151}.card>pre,.card>.kv,.card>.toolbar,.card>form,.card>.tablewrap,.card>.empty,.card>.quote-empty,.card>.quote-grid,.card>.quote-actions{margin:18px 20px}.card>.toolbar{margin-top:18px}.ghost{border:1px solid var(--border2)!important;background:#fff!important;color:#4b5563!important;height:32px!important;padding:0 12px!important;border-radius:5px!important}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.toolbar input,.toolbar select,input,select{height:34px;min-width:145px;border:1px solid var(--border2);border-radius:5px;background:#fff;color:#374151;padding:0 10px;outline:none}.toolbar input:focus,.toolbar select:focus,input:focus,select:focus,textarea:focus{border-color:#93c5fd;box-shadow:0 0 0 2px #dbeafe}.toolbar button,button{height:34px;border:1px solid var(--border2);border-radius:5px;background:#fff;color:#374151;padding:0 13px;font-weight:500}.toolbar button.primary,.primary{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}.toolbar button.success,.success{background:#ecfdf5!important;border-color:#86efac!important;color:#15803d!important}.danger{color:#dc2626!important;background:#fff!important}.wide{width:100%}.tablewrap{overflow:auto}.tablewrap table{min-width:720px;width:100%;border-collapse:collapse}.tablewrap th{background:#f8fafc;color:#6b7280;font-weight:600;font-size:12px;white-space:nowrap}.tablewrap th,.tablewrap td{padding:11px 10px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.tablewrap td{color:#4b5563}.tablewrap tr:hover td{background:#fafcff}.small{height:28px;padding:0 8px;font-size:12px}.smalllink{display:inline-flex;align-items:center;height:28px;padding:0 8px;border:1px solid var(--border2);border-radius:5px;color:var(--blue);font-size:12px;text-decoration:none}.pill{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:12px;border:1px solid #d1d5db;background:#f9fafb;color:#6b7280;font-size:11px;font-weight:500}.pill.ok{color:#15803d;border-color:#bbf7d0;background:#f0fdf4}.pill.warn{color:#b45309;border-color:#fde68a;background:#fffbeb}.pill.bad{color:#dc2626;border-color:#fecaca;background:#fef2f2}.empty{padding:35px 20px;text-align:center;color:#9ca3af;border:1px dashed var(--border2);border-radius:5px}.notice{padding:14px 0;border-bottom:1px solid var(--border)}.notice:last-child{border-bottom:0}.notice b{font-size:13px}.notice p{margin:6px 0 0;color:#6b7280;white-space:pre-wrap}.quote-empty{min-height:145px;display:grid;place-items:center;color:#9ca3af;border:1px dashed var(--border2);border-radius:5px}.quote-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.quote-grid>div{padding:12px;border:1px solid var(--border);background:#f8fafc;border-radius:5px;display:flex;flex-direction:column;gap:5px}.quote-grid span{color:#8a95a3;font-size:11px}.quote-grid b{font-size:16px;color:#374151}.quote-actions{display:flex;align-items:center;gap:12px}.quote-actions em{font-style:normal;color:#b45309;font-size:12px}.kv{display:grid;grid-template-columns:120px 1fr;gap:12px}.kv span{color:#8a95a3}.kv b{font-weight:500;overflow-wrap:anywhere}.card pre{margin:18px 20px;background:#f8fafc;color:#374151;border:1px solid var(--border);border-radius:5px;padding:14px;white-space:pre-wrap;word-break:break-word;max-height:420px;overflow:auto}.inline{width:90px!important;min-width:90px!important;height:28px!important;padding:0 7px!important}.login{min-height:100vh;display:grid;place-items:center;background:#f4f6f8;padding:18px}.login-card{width:min(390px,100%);padding:30px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 30px rgba(15,23,42,.08)}.login-card .brand{height:auto;border:0;padding:0;margin:0 0 26px}.login-card h1{margin:0 0 8px;font-size:24px;font-weight:600}.login-card input{display:block;width:100%;margin:12px 0}.login-card .primary{height:40px;margin-top:8px}.error{min-height:18px;color:var(--red);font-size:12px}.drawer{position:fixed;right:0;top:0;width:min(640px,100%);height:100vh;padding:20px;background:#fff;border-left:1px solid var(--border);box-shadow:-8px 0 28px rgba(15,23,42,.12);overflow:auto;z-index:9}.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.drawer-head h2{margin:0;font-size:18px}.drawer-head button{font-size:22px;width:32px;padding:0}.drawer .toolbar{margin-bottom:15px}.drawer .btn{display:inline-flex;align-items:center;text-decoration:none}.hidden{display:none}.toast{position:fixed;right:18px;top:18px;z-index:10;min-width:240px;padding:12px 16px;border:1px solid var(--border);border-radius:6px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.13);color:#374151}.btn{display:inline-flex;align-items:center;text-decoration:none}textarea{width:100%;min-height:110px;padding:10px;border:1px solid var(--border2);border-radius:5px;background:#fff;color:#374151;resize:vertical}pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}@media(max-width:1100px){.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.shell{display:block}.side{position:relative;height:auto}.menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.side-bottom{margin-top:14px}.main>header{height:auto;min-height:58px;padding:14px 18px}.main #content{padding:16px}.account{width:100%;justify-content:flex-end}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.grid2{grid-template-columns:1fr}.metric{padding:14px;min-height:85px}.metric b{font-size:22px}}@media(max-width:430px){.metrics,.quote-grid{grid-template-columns:1fr}.toolbar input,.toolbar select,.toolbar button{width:100%;min-width:0}.account{font-size:12px}.title h1{font-size:13px}}
.upstream-card{min-height:170px}.upstream-money{padding:18px 20px 4px;font-size:32px;font-weight:600;color:var(--blue)}.upstream-sub{padding:0 20px 20px;color:#8a95a3;font-size:12px}.quote-grid{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.quote-actions{justify-content:center;flex-wrap:wrap}.quote-actions .success{min-width:90px}@media(max-width:1100px){.quote-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Quote result: desktop horizontal information strip, mobile horizontal scroll. */
.quote-grid{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.quote-grid>div{flex:1 0 150px;min-width:150px;min-height:76px}
.quote-grid b{white-space:nowrap}
/* Product editor modal. */
#modal-root{position:relative;z-index:20}
.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.35);z-index:20}
.modal{width:min(620px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 18px 50px rgba(15,23,42,.25)}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px 16px;border-bottom:1px solid var(--border)}
.modal-head h2{margin:0;color:#1f2937;font-size:18px}
.modal-head p{margin:6px 0 0;color:var(--muted);font-size:12px}
.modal-close{width:32px!important;height:32px!important;padding:0!important;border:0!important;background:transparent!important;color:#6b7280!important;font-size:22px!important}
.modal-form{display:flex;flex-direction:column;gap:14px;padding:20px 24px 24px}
.modal-form label{display:flex;flex-direction:column;gap:7px;color:#4b5563;font-size:12px;font-weight:500}
.modal-form input,.modal-form textarea{width:100%;min-width:0}
.modal-form textarea{min-height:82px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.check-row{flex-direction:row!important;align-items:center;gap:8px!important}
.check-row input{width:16px!important;height:16px!important;min-width:16px!important}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:6px}
.modal-actions button{min-width:86px}
@media(max-width:600px){.modal-backdrop{padding:12px}.modal-head,.modal-form{padding-left:18px;padding-right:18px}.form-grid{grid-template-columns:1fr}}
.login-link{margin-top:16px;text-align:center;color:var(--muted);font-size:12px}.login-link a{color:var(--blue);text-decoration:none}.recharge-tip{margin:0 20px 18px;color:var(--muted);font-size:12px}
.user-select{appearance:auto!important;width:16px!important;min-width:16px!important;height:16px!important;padding:0!important;margin:0 4px 0 0!important;border:0!important;box-shadow:none!important}
.cdk-select{appearance:auto!important;width:16px!important;min-width:16px!important;height:16px!important;padding:0!important;margin:0 4px 0 0!important;border:0!important;box-shadow:none!important}
.cdk-select-all{appearance:auto!important;width:16px!important;min-width:16px!important;height:16px!important;padding:0!important;margin:0 6px 0 0!important;border:0!important;box-shadow:none!important;vertical-align:middle}
.order-modal{width:min(520px,100%)}.order-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:20px 24px 8px}.order-summary>div{display:flex;flex-direction:column;gap:6px;padding:13px 14px;background:var(--surface2);border:1px solid var(--border);border-radius:7px}.order-summary span{font-size:12px;color:var(--muted)}.order-summary b{font-size:15px;color:var(--text)}.order-summary b.amount{font-size:20px;color:var(--blue)}.order-warning,.order-error{margin:12px 24px 0;padding:11px 13px;border-radius:6px;font-size:12px;line-height:1.6}.order-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.order-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.order-modal .modal-actions{padding:18px 24px 24px}.order-modal button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.order-summary{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.order-warning,.order-error{margin-left:18px;margin-right:18px}.order-modal .modal-actions{padding-left:18px;padding-right:18px}}
.recharge-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:16px;align-items:stretch}.recharge-info{display:flex;flex-direction:column;justify-content:center;min-height:150px;padding:24px 28px}.recharge-info h3{margin:0 0 10px;font-size:18px}.recharge-info p{margin:0;color:var(--muted);line-height:1.8}.cdk-form{display:flex;align-items:center;gap:12px;min-height:150px;padding:24px}.cdk-form input{flex:1;min-width:0;height:42px}.cdk-form button{height:42px;white-space:nowrap}@media(max-width:760px){.recharge-layout{grid-template-columns:1fr}.cdk-form{padding:18px}.cdk-form input,.cdk-form button{width:100%}}
.order-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.order-detail-grid>div{display:flex;flex-direction:column;gap:5px;padding:12px;background:var(--surface2);border:1px solid var(--border);border-radius:6px}.order-detail-grid span{color:var(--muted);font-size:12px}.order-detail-grid b{color:var(--text);overflow-wrap:anywhere}.detail-error{margin:14px 0}.detail-error p{margin:6px 0 0;white-space:pre-wrap;word-break:break-word}.json-section{margin:14px 0;border:1px solid var(--border);border-radius:6px;background:var(--surface2)}.json-section summary{cursor:pointer;padding:12px 14px;color:var(--blue);font-weight:600}.json-section pre{margin:0;border:0;max-height:360px}
@media(max-width:600px){.order-detail-grid{grid-template-columns:1fr}}
.auto-pool-form{display:flex;flex-direction:column;gap:16px;padding:20px}.auto-pool-form label{display:flex;flex-direction:column;gap:7px;color:#4b5563;font-size:12px;font-weight:500}.auto-pool-form input,.auto-pool-form select{width:100%;min-width:0}.field-wide{grid-column:1/-1}.hub-type-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:4px;border:1px solid var(--border2);border-radius:7px;background:#f8fafc}.hub-tab{display:block!important;cursor:pointer}.hub-tab input{display:none}.hub-tab span{display:flex;align-items:center;justify-content:center;height:40px;border-radius:5px;color:#6b7280;font-weight:700}.hub-tab input:checked+span{background:var(--blue);color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.22)}.switch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.switch-grid label{flex-direction:row!important;align-items:center;padding:11px 12px;border:1px solid var(--border);border-radius:7px;background:var(--surface2);font-weight:500}.switch-grid input{width:16px!important;height:16px!important;min-width:16px!important}.hub-help{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 20px}.hub-help>div{padding:14px;border:1px solid var(--border);border-radius:7px;background:var(--surface2)}.hub-help p{margin:7px 0 0;color:var(--muted);line-height:1.7}
@media(max-width:760px){.switch-grid,.hub-help{grid-template-columns:1fr}.hub-type-tabs{grid-template-columns:1fr}}
.pagebar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 20px 20px;padding-top:14px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}.pagebar>div{display:flex;gap:8px}.pagebar button:disabled{opacity:.45;cursor:not-allowed}.filterbar{margin:16px 20px!important;padding:12px;background:var(--surface2);border:1px solid var(--border);border-radius:6px}.filterbar input,.filterbar select{min-width:150px}@media(max-width:760px){.pagebar{align-items:flex-start;flex-direction:column}.filterbar input,.filterbar select{width:100%}}
.download-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.download-format{min-width:160px}.row-inline{display:flex;align-items:center;gap:10px}.row-inline input{flex:1}.small-tabs .hub-tab span{height:34px}.check-row{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important}.switch-inline{display:inline-flex;align-items:center;gap:8px}.switch-inline input{width:16px!important;height:16px!important;min-width:16px!important}.small-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.small-tabs .hub-tab span{font-size:12px}.download-btn{display:inline-flex;align-items:center;height:34px;text-decoration:none}@media(max-width:760px){.row-inline{flex-direction:column;align-items:stretch}.download-strip{width:100%}.download-strip .download-format,.download-strip .download-btn{width:100%}}

.auto-pool-scheme-note{padding:10px 12px;border:1px dashed var(--border2);border-radius:6px;background:var(--surface2);color:var(--muted);font-size:12px;line-height:1.6}
/* Auto pool two-scheme editor */
.auto-pool-card .card-subtitle{margin:18px 20px 0;color:#374151;font-weight:700}
.split-tabs{display:flex;gap:8px;padding:4px;margin-bottom:4px;border:1px solid var(--border2);border-radius:8px;background:#f8fafc}
.split-tabs .hub-tab{flex:1;height:40px!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#64748b!important;font-weight:700!important;box-shadow:none!important}
.split-tabs .hub-tab.active{background:var(--blue)!important;color:#fff!important;box-shadow:0 6px 16px rgba(37,99,235,.18)!important}
.scheme-panel{padding:14px;border:1px solid var(--border);border-radius:8px;background:#fbfdff}
.scheme-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.scheme-title b{font-size:14px;color:#1f2937}.scheme-title span{color:var(--muted);font-size:12px;line-height:1.6;text-align:right}
.group-toolbar{margin-top:8px;padding-top:10px;border-top:1px dashed var(--border2)}
.group-result{margin-top:10px}.group-empty,.group-loading,.group-error{min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px 12px;border:1px dashed var(--border2);border-radius:7px;background:#fff;color:var(--muted);font-size:12px}.group-loading{color:var(--blue);background:#f8fbff}.group-error{justify-content:flex-start;color:#b91c1c;background:#fef2f2;border-color:#fecaca}
.group-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px}
.group-chip{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px;border:1px solid var(--border);border-radius:7px;background:#fff}
.group-chip b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-chip small{grid-column:1/-1;color:var(--muted);font-size:11px}.group-chip .small{white-space:nowrap}
.auto-pool-form input:disabled,.auto-pool-form select:disabled{opacity:.55;background:#f8fafc}
@media(max-width:760px){.split-tabs{flex-direction:column}.scheme-title{display:block}.scheme-title span{display:block;margin-top:6px;text-align:left}.group-chip{grid-template-columns:1fr}.group-chip small{grid-column:auto}.group-chip .small{width:100%}}
/* User dashboard operation overview, modeled after source operation summary. */
.side-announcements{margin:16px 10px 0;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.side-card-title{font-size:12px;font-weight:700;color:#374151;margin-bottom:8px}.side-announcements article{padding:9px 0;border-top:1px solid var(--border)}.side-announcements article:first-of-type{border-top:0}.side-announcements b{display:block;font-size:12px;color:#1f2937;line-height:1.4}.side-announcements p{margin:5px 0 0;color:#7b8794;font-size:11px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.side-empty{padding:10px 0;color:#9ca3af;font-size:12px;text-align:center}
.ops-overview{padding:18px 18px 16px}.ops-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.ops-head span{font-size:11px;color:#2563eb;font-weight:800;letter-spacing:.02em}.ops-head h2{margin:6px 0 0;font-size:18px;line-height:1.2;color:#111827}.ops-legend{display:flex;align-items:center;gap:10px;color:#475569;font-size:11px}.ops-legend i,.ops-legend em{display:inline-block;width:16px;height:3px;border-radius:3px}.ops-legend i{background:#0f9f8e}.ops-legend em{background:#f59e0b}.ops-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid #d1d5db;border-radius:6px;background:#e5e7eb;margin-bottom:22px}.ops-strip>div{min-height:58px;padding:12px;border-right:1px solid #d1d5db}.ops-strip>div:last-child{border-right:0}.ops-strip span{display:block;color:#64748b;font-size:11px;margin-bottom:7px}.ops-strip b{font-size:14px;color:#0f172a}.ops-chart{min-height:285px;display:flex;flex-direction:column;justify-content:flex-end;position:relative}.ops-chart-note{position:absolute;left:0;right:0;top:58px;text-align:center;color:#64748b;font-size:12px}.ops-future{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding:10px 0 20px;color:#64748b;font-size:12px}.ops-future b{color:#c2410c;font-size:12px}.ops-line{height:64px;display:flex;align-items:flex-end;padding:0 72px}.ops-line i{display:block;width:100%;height:3px;background:#60a5fa;border-radius:999px;box-shadow:0 0 0 1px rgba(96,165,250,.12)}.ops-axis{display:grid;grid-template-columns:repeat(3,1fr);padding:0 72px;color:#94a3b8;font-size:16px}.ops-axis span:nth-child(2){text-align:center}.ops-axis span:nth-child(3){text-align:right}.ops-state{display:grid;grid-template-columns:1.25fr 1fr 1.15fr .8fr 1.15fr;overflow:hidden;border-left:3px solid #c75100}.ops-state-cell{min-height:128px;padding:20px 16px;border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;gap:7px}.ops-state-cell:last-child{border-right:0}.ops-state-cell small{color:#64748b;font-size:12px}.ops-state-cell b{font-size:14px;color:#0f172a}.ops-state-cell span{color:#64748b;font-size:12px;line-height:1.55}.ops-state-cell.auto{position:relative;padding-left:38px}.ops-state-cell.auto:before{content:"";position:absolute;left:16px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:#c75100}.ops-state-cell.status{align-items:stretch}.ops-state-cell.status b{text-align:right}.ops-progress{height:4px;border-radius:99px;background:#e5e7eb;overflow:hidden}.ops-progress i{display:block;height:100%;width:100%;background:#2563eb}.ops-progress.warn i{background:#f59e0b;width:62%}.ops-progress.ok i{background:#16a34a}
@media(max-width:1100px){.ops-state{grid-template-columns:1fr 1fr}.ops-state-cell{border-bottom:1px solid var(--border)}.ops-strip{grid-template-columns:repeat(2,1fr)}.ops-strip>div:nth-child(2){border-right:0}.ops-line,.ops-axis{padding-left:30px;padding-right:30px}}@media(max-width:760px){.side-announcements{margin:12px 10px}.ops-head{display:block}.ops-legend{margin-top:12px}.ops-strip{grid-template-columns:1fr}.ops-strip>div{border-right:0;border-bottom:1px solid #d1d5db}.ops-strip>div:last-child{border-bottom:0}.ops-chart{min-height:220px}.ops-line,.ops-axis{padding-left:10px;padding-right:10px}.ops-axis{font-size:13px}.ops-state{grid-template-columns:1fr}.ops-state-cell{min-height:96px;border-right:0}}


.group-summary{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.group-summary span{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);font-size:12px}
.group-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.group-columns h4{margin:0 0 8px;font-size:13px;color:var(--text)}
.group-columns .group-list{grid-template-columns:1fr;margin-top:0}
.group-chip.proxy{border-color:#fed7aa;background:#fff7ed}.group-chip.group{border-color:#bfdbfe;background:#eff6ff}
.group-chip .pill{font-size:11px;padding:4px 8px;border-radius:999px}.group-chip .pill.ok{background:#dcfce7;color:#166534}.group-chip .pill.warn{background:#ffedd5;color:#9a3412}
@media(max-width:900px){.group-columns{grid-template-columns:1fr}}

.ops-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.ops-metric-card{position:relative;min-height:118px;padding:20px;border:1px solid var(--border);border-radius:9px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.ops-metric-card:after{content:"";position:absolute;right:0;top:0;width:3px;height:100%;background:#22c55e}.ops-metric-card.blue:after{background:#5b7cfa}.ops-metric-card.orange:after{background:#d97706}.ops-metric-card.purple:after{background:#a855f7}.metric-label{display:flex;gap:8px;align-items:center;color:#53657f;font-size:13px;font-weight:700}.metric-label i{font-style:normal}.ops-metric-card strong{display:block;margin-top:18px;font-size:26px;line-height:1;color:#0f172a}.ops-metric-card p{margin:12px 0 0;color:#53657f;font-size:12px;line-height:1.6}.source-like{padding:18px}.source-strip{background:#e5e7eb;border-color:#d1d5db}.source-chart{min-height:300px}.source-chart .ops-chart-note{top:38%;color:#53657f}.source-state{display:grid;grid-template-columns:1.45fr 1fr 1.15fr .8fr 1fr;padding:0}.source-state .ops-state-cell{padding:20px 18px;border-right:1px solid var(--border)}.source-state .ops-state-cell:last-child{border-right:0}@media(max-width:1100px){.ops-metric-grid{grid-template-columns:repeat(2,1fr)}.source-state{grid-template-columns:1fr 1fr}}@media(max-width:640px){.ops-metric-grid,.source-state{grid-template-columns:1fr}}
/* Quote result polish */
.card>.quote-result{margin:18px 20px 20px;border:1px solid #dbe3ee;border-radius:12px;background:linear-gradient(180deg,#fbfdff 0%,#f7faff 100%);box-shadow:0 8px 22px rgba(37,99,235,.06);overflow:hidden}
.quote-result .quote-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;margin:0;overflow:visible}
.quote-result .quote-grid>div{min-width:0;min-height:78px;padding:13px 14px;border:1px solid #e1e8f2;border-radius:9px;background:rgba(255,255,255,.86);box-shadow:0 2px 5px rgba(15,23,42,.025);justify-content:center}
.quote-result .quote-grid>div:first-child{grid-column:span 2}
.quote-result .quote-grid span{color:#718096;font-size:11px;letter-spacing:.02em}
.quote-result .quote-grid b{color:#1e3a5f;font-size:16px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quote-result .quote-grid>div:nth-child(5) b{color:#2563eb}
.quote-result .quote-grid>div:nth-child(6) b{color:#0f766e;font-size:18px}
.quote-result .quote-grid>div:nth-child(7) b{color:#15803d;font-size:14px}
.quote-result .quote-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:13px 16px;border-top:1px solid #e1e8f2;background:#fff}
.quote-result .quote-status{color:#718096;font-size:12px}
.quote-result .success{min-width:108px;height:36px;border-radius:8px;box-shadow:0 4px 10px rgba(22,163,74,.12)}
@media(max-width:1100px){.quote-result .quote-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.quote-result .quote-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.quote-result .quote-grid>div:first-child{grid-column:span 2}.quote-result .quote-actions{align-items:stretch;flex-direction:column}.quote-result .success{width:100%}}
.upstream-status{display:inline-flex;align-items:center;margin-left:8px;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:500}.upstream-status.ok{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.upstream-status.bad{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}
.captcha-field{display:block;margin:12px 0;color:var(--muted);font-size:12px}.captcha-field span{display:block;margin-bottom:6px}.captcha-field input{margin:0!important}
.top-announcement{height:34px;display:flex;align-items:center;gap:9px;margin:14px 20px 0;padding:0 12px;border:1px solid #bfdbfe;border-radius:6px;background:#eff6ff;color:#1d4ed8;overflow:hidden}
.top-announcement-icon{flex:0 0 auto;font-size:14px}
.top-announcement-viewport{min-width:0;overflow:hidden;white-space:nowrap}
.top-announcement-track{display:inline-flex;min-width:max-content;animation:announcement-marquee 28s linear infinite}
.top-announcement-track span{padding-right:72px;font-size:12px}
.top-announcement:hover .top-announcement-track{animation-play-state:paused}
@keyframes announcement-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.top-announcement-track{animation:none}}
