.admin-page{padding:24px;box-sizing:border-box;font-family:Inter,Arial,sans-serif;color:#fff;background:#0a0a0a;font-size:14px;line-height:1.4;min-height:100%;--admin-muted:#8c9096;--admin-body:#dadbdf;--admin-border:#212327;--admin-card:#191919;--admin-green:#27f5a6;--admin-red:#ff5471;--admin-cyan:#45dfff;--admin-orange:#ff9d42}
.admin-page *{box-sizing:border-box}.admin-page button{font:inherit;color:inherit;cursor:pointer}.admin-page button:focus-visible{outline:2px solid #fff;outline-offset:3px}.admin-page button:disabled{cursor:default}.admin-page svg{display:block}.admin-muted,.admin-prior{color:var(--admin-muted)}.admin-positive{color:var(--admin-green)!important}.admin-negative{color:var(--admin-red)!important}
.admin-page-title{margin:0;font-size:20px;line-height:28px;font-weight:600}.admin-tabs{display:flex;gap:32px;border-bottom:1px solid var(--admin-border);height:42px;margin-top:24px}.admin-tabs button{background:none;border:0;border-radius:0;border-bottom:2px solid transparent;padding:0 0 12px;min-width:100px;text-align:left;color:var(--admin-body)}.admin-tabs .admin-selected{border-bottom-color:#fff;color:#fff;font-weight:600}
.admin-filter-row{display:flex;gap:12px;height:42px;margin:40px 0 24px}.admin-period{display:flex;border:1px solid #34363b;border-radius:10px;overflow:hidden;align-items:stretch;background:#111}.admin-filter-row>.admin-period{flex:1.45}.admin-period button{border:0;background:transparent;color:var(--admin-body);padding:0 20px;flex:1;white-space:nowrap}.admin-period button.admin-selected{color:#fff;background:#252525;box-shadow:inset 0 0 0 1px #72757c}.admin-date-range{display:flex;justify-content:space-between;align-items:center;padding:0 12px;gap:12px;border:1px solid #34363b;border-radius:9px;min-width:270px;background:#111}.admin-date-range svg{width:16px;height:16px;stroke:var(--admin-muted);fill:none;stroke-width:1.5}.admin-product-filter{display:flex;flex:1.7;align-items:center;gap:4px;border:1px solid #34363b;border-radius:10px;background:#111;padding:6px 12px;overflow:hidden;white-space:nowrap}.admin-product-filter>span{border:1px solid #73767c;border-radius:7px;background:#262626;line-height:22px;padding:0 6px;font-size:13px}
.admin-group{background:var(--admin-card);border:1px solid var(--admin-border);border-radius:16px;padding:20px 24px;margin:0 0 16px}.admin-group-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;line-height:28px;margin:0 0 16px}.admin-group-icon{display:grid;place-items:center;width:28px;height:28px;background:#0e0e0e;border-radius:8px}.admin-group-icon svg{width:18px;height:18px;stroke:#dadbdf;stroke-width:1.4;fill:none}.admin-info{color:var(--admin-muted);font-size:13px;font-weight:400}.admin-five-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.admin-account-metric,.admin-partner-metric,.admin-finance-metric{background:#101010;border:1px solid #292b30;border-radius:13px;padding:12px 16px;min-width:0;height:116px}.admin-metric-label{color:var(--admin-body);font-size:14px;line-height:20px;white-space:nowrap}.admin-metric-value{display:flex;align-items:center;gap:8px;font-size:24px;line-height:33px;font-weight:600;letter-spacing:-.3px;white-space:nowrap}.admin-change-arrow{font-weight:400;font-size:18px}.admin-metric-detail{color:var(--admin-body);font-size:12px;line-height:16px}.admin-delta,.admin-prior{display:block}.admin-prior{font-size:11px}
.admin-finance-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px}.admin-finance-stack{display:flex;flex-direction:column;gap:12px}.admin-chart-panel{background:#101010;border:1px solid #292b30;border-radius:13px;min-width:0;padding:14px 20px 8px;height:500px}.admin-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px;line-height:20px}.admin-chart-heading strong{font-weight:600}.admin-legend{display:flex;align-items:center;gap:16px;color:var(--admin-body);font-size:12px}.admin-legend span{display:flex;align-items:center;gap:6px;white-space:nowrap}.admin-legend i{width:10px;height:10px;border-radius:2px;display:inline-block}.admin-inflow{background:var(--admin-green)}.admin-outflow{background:var(--admin-red)}.admin-cashflow-svg{width:100%;height:440px;overflow:visible}.admin-cashflow-svg line,.admin-risk-chart line{stroke:#24262b;stroke-width:1}.admin-cashflow-svg text,.admin-risk-chart text{fill:var(--admin-muted);font-size:12px;font-family:Inter,Arial,sans-serif}.admin-inflow-bar{fill:var(--admin-green)}.admin-outflow-bar{fill:var(--admin-red)}
.admin-footer{text-align:center;color:var(--admin-body);font-size:16px;margin:46px 24px 0;padding-bottom:16px}.admin-footer p{color:var(--admin-muted);font-size:10px;line-height:16px;max-width:1040px;margin:8px auto 0}
.admin-breadcrumb{font-size:12px;line-height:18px;color:var(--admin-body)}.admin-risk-tabs{height:38px;margin-top:24px}.admin-risk-tabs button{font-weight:400!important;padding-bottom:12px;min-width:0}.admin-updated{text-align:right;color:var(--admin-body);margin-top:40px;line-height:20px;height:20px}.admin-risk-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:14px}.admin-risk-metric{border:1px solid #34363b;border-radius:20px;background:var(--admin-card);height:140px;padding:32px 24px 14px;position:relative;display:grid;grid-template-rows:22px 28px 42px;align-content:start}.admin-risk-metric>span{font-size:11px;line-height:16px;color:var(--admin-body);margin-bottom:6px}.admin-risk-metric>strong{font-size:23px;line-height:28px;font-weight:600}.admin-risk-metric>small{font-size:12px;line-height:21px;color:var(--admin-body)}.admin-ring{position:absolute;right:24px;top:47px;width:58px;height:58px;transform:rotate(-90deg)}.admin-ring circle{fill:none;stroke:#33363d;stroke-width:3.5}.admin-ring circle+circle{stroke:#dadbdf;stroke-linecap:round}.admin-risk-ring-card small{max-width:135px}
.admin-risk-table-panel{border:1px solid #34363b;border-radius:20px;background:var(--admin-card);margin-top:16px;min-height:408px;overflow:hidden}.admin-risk-panel-heading{font-size:16px;line-height:23px;font-weight:600;margin:0;padding:16px 24px;border-bottom:1px solid #34363b;height:56px}.admin-risk-table-body{padding:24px 24px 36px}.admin-table-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#494c52 #1b1c20}.admin-risk-table{border-collapse:collapse;width:100%;min-width:1320px;table-layout:fixed;text-align:right;font-size:14px}.admin-risk-table th{font-size:14px;font-weight:600;color:var(--admin-body);height:54px;border-bottom:1px solid #34363b;padding:0 16px;position:relative;white-space:nowrap}.admin-risk-table th:first-child,.admin-risk-table td:first-child{text-align:left;width:170px}.admin-risk-table th:nth-child(2),.admin-risk-table th:nth-child(3){width:126px}.admin-risk-table th:nth-child(4){width:155px}.admin-risk-table th:nth-child(5){width:142px;text-align:left}.admin-risk-table th:nth-child(6){width:142px}.admin-risk-table th:nth-child(7),.admin-risk-table th:nth-child(8){width:145px}.admin-risk-table td{height:60px;border-bottom:1px solid #303238;padding:0 16px;white-space:nowrap}.admin-risk-table td:nth-child(5){text-align:left}.admin-risk-table td:first-child strong{font-weight:600}.admin-sort{position:absolute;right:2px;top:15px;color:#6d7076;font-size:10px;line-height:8px}.admin-asset-icon{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;background:#35383d;border-radius:50%;margin-right:8px;font-size:16px;font-weight:600;vertical-align:middle}.admin-asset-btc{color:#fff;background:#bd812f}.admin-asset-eth{color:#101010;background:#dadbdf}.admin-asset-sol{color:#fff;background:#45464c}.admin-direction{font-size:11px;line-height:20px;border-radius:20px;padding:3px 8px}.admin-long{background:#073b29;color:var(--admin-green)}.admin-short{background:#492b11;color:#ff9d42}.admin-limit-cell{display:flex;align-items:center;justify-content:flex-end;gap:6px;font-size:12px}.admin-limit-cell>span{width:64px;height:6px;background:#3b3e45;border-radius:5px;overflow:hidden}.admin-limit-cell i{display:block;height:100%;background:#d9dbe0;border-radius:5px}.admin-pagination{display:flex;align-items:center;justify-content:space-between;height:56px;font-size:14px}.admin-pagination>div{display:flex;align-items:center;gap:12px}.admin-pagination button{background:none;border:0;width:30px;height:32px;border-radius:14px;font-size:18px}.admin-pagination button:disabled{color:#5b5e64}.admin-pagination .admin-current-page{border:1px solid #a8aab1;font-size:14px}.admin-pagination .admin-page-size{width:auto;border:1px solid #34363b;border-radius:12px;padding:0 10px;font-size:14px;margin-left:2px}.admin-page-size span{color:var(--admin-muted);margin-left:8px}
.admin-risk-history{border:1px solid #34363b;border-radius:20px;background:var(--admin-card);margin-top:16px;overflow:hidden}.admin-risk-history-heading{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 24px;border-bottom:1px solid #34363b}.admin-risk-history-heading h3{font-size:16px;line-height:24px;font-weight:600;margin:0}.admin-risk-history-heading .admin-period{height:36px}.admin-risk-history-heading .admin-period button{padding:0 16px;border-right:1px solid #34363b}.admin-risk-history-heading .admin-period button:last-child{border-right:0}.admin-risk-history-body{padding:24px}.admin-risk-chart{width:100%;height:330px}.admin-risk-chart polyline{fill:none;stroke:#dadbdf;stroke-width:1.6}.admin-zone-legend{font-size:11px;text-align:center;color:var(--admin-muted);margin:12px 0 24px}.admin-zone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.admin-zone-grid>div{border:1px solid #34363b;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px}.admin-zone-grid span{font-size:12px;color:var(--admin-body)}.admin-zone-grid strong{font-size:18px;font-weight:600;white-space:nowrap}

/* Current EdgeX control geometry, brighter semantic accents for the demo. */
.admin-page{--admin-green:#27f5a6;--admin-red:#ff5471;--admin-cyan:#45dfff;--admin-orange:#ff9d42}.admin-tabs{align-items:stretch}.admin-tabs button{min-width:0;padding-top:8px;padding-bottom:4px;border-radius:0}.admin-tabs button+button{margin-left:32px}.admin-risk-tabs button+button{margin-left:0}.admin-period button{border-radius:0}.admin-ring circle+circle{stroke:#27f5a6}.admin-risk-chart polyline{stroke:#45dfff}.admin-limit-cell i{background:#27f5a6}

.admin-risk-table .token-logo{width:24px;height:24px;flex-basis:24px;margin:0}

/* Keep the source card geometry while aligning English labels and numeric rows. */
.admin-account-metric,.admin-partner-metric,.admin-finance-metric{display:grid;grid-template-rows:32px 30px 28px;align-content:center;padding:10px 14px}
.admin-metric-label{font-size:12px;line-height:16px;white-space:normal;min-height:32px}
.admin-metric-value{align-items:baseline;line-height:30px;font-variant-numeric:tabular-nums}
.admin-metric-detail{display:grid;grid-template-rows:14px 14px;align-content:start;font-size:11px;line-height:14px}
.admin-prior{font-size:10px;line-height:14px}
.admin-delta{color:var(--admin-green);font-variant-numeric:tabular-nums}
.admin-risk-table th{vertical-align:middle;line-height:18px}
.admin-risk-table td,.admin-risk-metric>strong{font-variant-numeric:tabular-nums}
.admin-date-range{font-variant-numeric:tabular-nums;white-space:nowrap}

/* Vivid semantic accents sit on the landing page's near-black surfaces. */
.admin-group-icon{background:#082e26}
.admin-group-icon svg{stroke:var(--admin-cyan)}
.admin-inflow-bar{fill:var(--admin-green)}
.admin-outflow-bar{fill:var(--admin-red)}
.admin-ring circle+circle{stroke:var(--admin-green);stroke-width:5}
.admin-risk-chart polyline{stroke:var(--admin-cyan);stroke-width:3}


.admin-risk-metric:first-child>strong,.admin-account-metric:nth-child(n+3) .admin-metric-value{color:var(--admin-cyan)}
.admin-risk-ring-card>strong{color:var(--admin-green)}
.admin-zone-caution{color:var(--admin-cyan)}
.admin-zone-warning{color:var(--admin-orange)}
.admin-zone-critical{color:var(--admin-red)}
.admin-zone-grid>div:nth-child(1){border-top:3px solid var(--admin-green)}
.admin-zone-grid>div:nth-child(2){border-top:3px solid var(--admin-cyan)}
.admin-zone-grid>div:nth-child(3){border-top:3px solid var(--admin-orange)}
.admin-zone-grid>div:nth-child(4){border-top:3px solid var(--admin-red)}

/* One six-column grid aligns every cohort label, count and conversion rate. */
.admin-funnel-overview{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 20px;color:var(--admin-muted);font-size:12px;line-height:18px}
.admin-funnel-overview>span:last-child{white-space:nowrap}
.admin-funnel-overview strong{color:var(--admin-green);font-weight:600;font-variant-numeric:tabular-nums;margin-right:4px}
.admin-funnel-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#494c52 #101010}
.admin-funnel-layout{min-width:900px}
.admin-funnel-headings,.admin-funnel-rates{display:grid;grid-template-columns:repeat(var(--funnel-stages),minmax(0,1fr))}
.admin-funnel-stage-heading{display:grid;grid-template-rows:16px 20px 36px;gap:4px;text-align:center;padding:0 12px}
.admin-funnel-stage-heading>span{color:var(--admin-muted);font-size:11px;line-height:16px;letter-spacing:.3px}
.admin-funnel-stage-heading h4{margin:0;color:var(--admin-body);font-size:13px;line-height:20px;font-weight:400;text-transform:capitalize}
.admin-funnel-stage-heading>strong{font-size:28px;line-height:36px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.5px}
.admin-funnel-chart{width:100%;height:128px;margin:12px 0 16px;overflow:visible}
.admin-funnel-graphic-stage{--funnel-accent:var(--admin-green)}
.admin-funnel-graphic-stage:nth-of-type(even){--funnel-accent:var(--admin-cyan)}
.admin-funnel-volume{fill:var(--funnel-accent);fill-opacity:.9;stroke:var(--funnel-accent);stroke-width:1;vector-effect:non-scaling-stroke}
.admin-funnel-connector{fill:var(--funnel-accent);fill-opacity:.18}
.admin-funnel-guide{stroke:#303238;stroke-width:1;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}
.admin-funnel-stage-rates{margin:0;padding:12px 12px 0;border-top:1px solid #34363b;display:grid;grid-template-rows:16px 16px;row-gap:8px;font-size:11px;line-height:16px}
.admin-funnel-stage-rates+ .admin-funnel-stage-rates{border-left:1px solid #292b30}
.admin-funnel-stage-rates>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px}
.admin-funnel-stage-rates dt{color:var(--admin-muted);white-space:nowrap}
.admin-funnel-stage-rates dd{margin:0;color:var(--admin-body);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.admin-funnel-stage-rates>div:first-child dd{color:var(--admin-green)}

/* Shared page rhythm and chart bounds keep the dashboard tidy at full width. */
.admin-group{padding:24px;margin-bottom:20px}
.admin-filter-row{height:44px;margin:24px 0}
.admin-dashboard .admin-tabs button+button{margin-left:0}
.admin-chart-panel{display:flex;flex-direction:column;padding:16px 20px}
.admin-chart-heading{min-height:24px;line-height:20px;flex-shrink:0}
.admin-cashflow-svg{height:auto;min-height:0;flex:1;margin-top:12px}
.admin-footer{margin:32px 0 0;padding:24px 0 8px;border-top:1px solid var(--admin-border);font-size:12px;line-height:20px}

/* All risk columns fit the desktop content area without losing any fields. */
.admin-risk-table{min-width:1054px}
.admin-risk-table th,.admin-risk-table td{padding-left:12px;padding-right:12px}
.admin-risk-table th:first-child,.admin-risk-table td:first-child{width:156px}
.admin-risk-table th:nth-child(2),.admin-risk-table th:nth-child(3){width:114px}
.admin-risk-table th:nth-child(4){width:126px}
.admin-risk-table th:nth-child(5){width:96px}
.admin-risk-table th:nth-child(6){width:136px}
.admin-risk-table th:nth-child(7),.admin-risk-table th:nth-child(8){width:118px}
.admin-risk-table th:nth-child(9){width:76px}
.admin-asset-pair{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}
.admin-risk-table tbody tr:last-child td{border-bottom:0}

/* Net history has its own readable scale; the cards retain the gross limits. */
.admin-risk-chart line.admin-risk-zero{stroke:#59606a;stroke-dasharray:4 4}
.admin-risk-chart .admin-risk-endpoint{fill:var(--admin-cyan);stroke:var(--admin-card);stroke-width:2;vector-effect:non-scaling-stroke}
.admin-risk-chart text.admin-risk-last-value{fill:var(--admin-cyan);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--admin-card);stroke-width:4;stroke-linejoin:round}
.admin-zone-legend{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 24px;font-size:11px;line-height:16px}
.admin-net-series{display:inline-flex;align-items:center;gap:8px;color:var(--admin-body)}
.admin-net-series::before{content:"";width:22px;height:3px;border-radius:2px;background:var(--admin-cyan)}

/* Sorting preserves the table/card arrangement and its current scroll position. */
.admin-risk-table th>button{display:flex;align-items:center;justify-content:flex-end;gap:6px;width:100%;min-height:44px;border:0;background:none;color:inherit;font:inherit;text-align:inherit;white-space:nowrap;padding:0;cursor:pointer}
.admin-risk-table th:first-child>button,.admin-risk-table th:nth-child(5)>button{justify-content:flex-start}
.admin-risk-table th .admin-sort{position:static;flex-shrink:0}
.admin-risk-table th[aria-sort=ascending] .admin-sort,.admin-risk-table th[aria-sort=descending] .admin-sort{color:#65defa}
.admin-risk-sort-controls{display:none}
.admin-risk-sort-controls select{min-width:0;flex:1;height:44px;padding:0 12px;background:#101010;border:1px solid #383d44;border-radius:8px;color:#e3e5e8;font:14px Inter,Arial}
.admin-risk-sort-controls button{width:44px;height:44px;border:1px solid #383d44;border-radius:8px;background:#101010;color:#65defa;font-size:18px}
.artboard:is([data-device=mobile],[data-device=tablet]) .admin-risk-sort-controls{display:flex;gap:8px;margin-bottom:12px}
