:root {
  color-scheme:dark;
  --bg:#090b0d;
  --panel:#111519;
  --panel-soft:#14191e;
  --line:#242a30;
  --line-soft:#1b2025;
  --text:#f0f3f2;
  --muted:#89939c;
  --green:#20c665;
  --green-bg:#12301f;
  --gold:#d8b56f;
  --silver:#bcc7d4;
  --bronze:#c68d68;
  --red:#f09892;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
* {
  box-sizing:border-box
}
body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--sans);
  font-size:14px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased
}
a {
  color:inherit;
  text-decoration:none
}
button,input,select {
  font:inherit
}
button,a,input,select {
  outline-offset:4px
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible {
  outline:2px solid var(--green)
}
button {
  cursor:pointer
}
button:disabled {
  cursor:not-allowed;
  opacity:.45
}
button,select,input {
  color:var(--text)
}
svg {
  display:block;
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round
}
button svg {
  pointer-events:none
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
[hidden] {
  display:none!important
}
.skip-link {
  position:fixed;
  left:16px;
  top:-70px;
  z-index:100;
  padding:10px 18px;
  background:var(--green);
  color:#041208;
  border-radius:8px
}
.skip-link:focus {
  top:16px
}
.sidebar {
  width:220px;
  position:fixed;
  inset:0 auto 0 0;
  background:#0e1114;
  border-right:1px solid var(--line-soft);
  padding:30px 18px 20px;
  display:flex;
  flex-direction:column;
  z-index:20
}
.brand {
  display:flex;
  gap:12px;
  align-items:center;
  padding:2px 10px 37px;
  font-size:24px;
  font-weight:650;
  letter-spacing:-.8px
}
.brand img {
  border-radius:11px;
  object-fit:cover
}
.brand-sub {
  display:block;
  font:9px var(--mono);
  font-weight:500;
  letter-spacing:1.8px;
  color:var(--muted);
  margin-top:2px
}
.nav-caption {
  font:10px var(--mono);
  letter-spacing:1.5px;
  color:#62707a;
  padding:0 12px 12px
}
.navigation {
  display:flex;
  flex-direction:column;
  gap:6px
}
.nav-link {
  display:flex;
  align-items:center;
  gap:12px;
  padding:11px 13px;
  border:1px solid transparent;
  border-radius:8px;
  color:#96a0a9;
  font-size:13px;
  font-weight:550;
  transition:background .15s,color .15s
}
.nav-link svg {
  width:17px;
  height:17px;
  opacity:.8
}
.nav-link:hover {
  color:var(--text);
  background:#171c21
}
.nav-link.active {
  background:#133020;
  color:#57df88;
  border-color:#1d4430
}
.nav-link.active svg {
  opacity:1
}
.nav-dot {
  width:5px;
  height:5px;
  background:var(--green);
  border-radius:50%;
  margin-left:auto
}
.sidebar-bottom {
  margin-top:auto;
  padding-top:45px
}
.network-card {
  border:1px solid var(--line);
  background:linear-gradient(140deg,#171d21,#111519);
  border-radius:10px;
  padding:13px 11px;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px
}
.network-card small {
  display:block;
  color:#69767f;
  font-size:10px;
  margin-top:1px
}
.network-mark {
  margin-left:auto;
  font:8px var(--mono);
  color:#6d7c85;
  border-left:1px solid var(--line);
  padding-left:9px
}
.sidebar-links {
  display:flex;
  justify-content:space-between;
  font-size:10px;
  color:var(--muted);
  margin:19px 3px 0
}
.sidebar-links a:hover {
  color:var(--text)
}
.sidebar-note {
  font-size:10px;
  color:#4f5d67;
  margin:12px 3px 0
}
.app-shell {
  margin-left:220px;
  min-height:100vh
}
.topbar {
  height:70px;
  border-bottom:1px solid var(--line-soft);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 38px;
  background:#0c0f11
}
.breadcrumb {
  display:flex;
  align-items:center;
  gap:13px;
  font-size:12px;
  color:#7d8891
}
.breadcrumb strong {
  font-weight:500;
  color:#c2c9ce
}
.breadcrumb-divider {
  color:#39434b
}
.topbar-right {
  display:flex;
  align-items:center;
  gap:22px
}
.connection-indicator {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:10px;
  color:#95a49d
}
.status-dot {
  width:6px;
  height:6px;
  background:var(--green);
  border-radius:50%;
  display:inline-block;
  flex:none
}
.status-dot.muted {
  background:#77838b
}
.status-dot.error {
  background:var(--red)
}
.status-dot.amber {
  background:var(--gold)
}
main {
  padding:37px 38px 20px;
  max-width:1640px;
  margin:0 auto
}
.page-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  margin-bottom:25px
}
.eyebrow {
  font:9px var(--mono);
  color:#718079;
  letter-spacing:1.9px;
  margin-bottom:10px
}
h1 {
  font-size:29px;
  letter-spacing:-1px;
  line-height:1.2;
  font-weight:590;
  margin:0 0 9px
}
.page-heading p {
  color:var(--muted);
  margin:0;
  font-size:12px
}
.global-controls {
  display:flex;
  gap:9px;
  align-items:center;
  flex:none
}
.segmented {
  display:flex;
  gap:3px;
  background:#101418;
  padding:4px;
  border:1px solid var(--line);
  border-radius:7px
}
.segmented button {
  padding:5px 12px;
  font-size:11px;
  color:var(--muted);
  background:none;
  border:0;
  border-radius:4px
}
.segmented button.selected {
  color:#62df90;
  background:#173825
}
.date-control {
  display:flex;
  align-items:center;
  gap:5px;
  border:1px solid var(--line);
  border-radius:7px;
  padding:8px 10px;
  background:#101418
}
.date-control input {
  background:none;
  border:0;
  max-width:114px;
  font:10px var(--mono);
  color:#c7cdd1
}
.date-control span {
  font:8px var(--mono);
  color:#67767f
}
.icon-button {
  background:#11161a;
  border:1px solid var(--line);
  border-radius:7px;
  padding:9px;
  color:var(--muted);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none
}
.icon-button svg {
  width:14px;
  height:14px
}
.icon-button:hover {
  color:var(--text);
  border-color:#47534c
}
.button {
  border:1px solid transparent;
  border-radius:7px;
  padding:10px 16px;
  font-size:12px;
  font-weight:600;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  background:var(--green);
  color:#07170c
}
.button:hover {
  background:#42da7d
}
.button.secondary {
  background:#151b1f;
  color:#ced6d1;
  border-color:#2a3430
}
.button.secondary:hover {
  background:#202923;
  border-color:#43624c
}
.button.subtle {
  background:transparent;
  color:var(--muted);
  border-color:var(--line)
}
.button.small {
  font-size:10px;
  padding:7px 11px
}
.button.danger {
  background:#2c1718;
  color:#f3a09b;
  border-color:#562b2b
}
.data-caption {
  display:flex;
  align-items:center;
  gap:9px;
  color:#627078;
  font-size:10px;
  margin-bottom:18px
}
.mode-badge {
  font:8px var(--mono);
  letter-spacing:.8px;
  padding:4px 7px;
  border:1px solid #4b3e25;
  background:#211c13;
  border-radius:4px;
  color:var(--gold)
}
.mode-badge.live {
  color:#6fe497;
  border-color:#20462e;
  background:#0f2518
}
.caption-separator {
  color:#303b43
}
.panel {
  border:1px solid var(--line);
  border-radius:12px;
  background:linear-gradient(145deg,#151a1f 0%,#101418 100%);
  min-width:0
}
.panel-head {
  padding:19px 21px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px
}
.panel-head h2 {
  font-size:13px;
  font-weight:560;
  margin:0;
  letter-spacing:-.1px
}
.panel-head p {
  font-size:10px;
  color:var(--muted);
  margin:4px 0 0
}
.panel-label {
  font:9px var(--mono);
  letter-spacing:1.3px;
  color:#89959d;
  text-transform:uppercase
}
.panel-head .text-link {
  font-size:10px;
  color:#64c985
}
.text-link {
  color:#70d796
}
.text-link:hover {
  text-decoration:underline
}
.metric-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:13px;
  margin-bottom:18px
}
.metric {
  padding:19px 21px;
  position:relative;
  overflow:hidden
}
.metric-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:10px;
  color:#9ba5ac
}
.metric-icon {
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border:1px solid #26322c;
  border-radius:7px;
  background:#16211a;
  color:#5bd986
}
.metric-icon svg {
  width:14px;
  height:14px
}
.metric-value {
  font-size:34px;
  font-weight:540;
  letter-spacing:-1.4px;
  margin:8px 0 3px;
  line-height:1.2;
  font-variant-numeric:tabular-nums
}
.metric-foot {
  font-size:10px;
  color:#697781
}
.metric-foot .positive {
  color:#66d08c
}
.overview-layout {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(330px,1fr);
  gap:18px;
  margin-bottom:18px
}
.capacity-body {
  padding:0 22px 20px;
  display:flex;
  align-items:center;
  gap:27px
}
.capacity-ring {
  width:152px;
  height:152px;
  position:relative;
  flex:none
}
.capacity-ring svg {
  width:152px;
  height:152px;
  transform:rotate(-90deg)
}
.capacity-ring .track {
  stroke:#26322d;
  stroke-width:7
}
.capacity-ring .progress {
  stroke:var(--green);
  stroke-width:7;
  transition:stroke-dasharray .4s;
  stroke-linecap:round
}
.capacity-number {
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column
}
.capacity-number strong {
  font-size:34px;
  letter-spacing:-1.6px;
  line-height:1.15;
  font-weight:550
}
.capacity-number small {
  font:9px var(--mono);
  color:#748079;
  margin-top:5px
}
.capacity-details {
  flex:1;
  min-width:0
}
.capacity-details h3 {
  font-size:15px;
  font-weight:550;
  letter-spacing:-.4px;
  margin:0 0 7px
}
.capacity-details p {
  font-size:11px;
  color:#7e8c85;
  line-height:1.7;
  margin:0 0 17px;
  max-width:295px
}
.capacity-key {
  display:flex;
  gap:24px
}
.capacity-key span {
  display:block;
  color:#728079;
  font-size:9px
}
.capacity-key strong {
  display:block;
  font-size:17px;
  font-weight:500;
  margin-top:2px;
  font-variant-numeric:tabular-nums
}
.panel-footer {
  padding:12px 21px;
  border-top:1px solid var(--line-soft);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  color:#6d7b84;
  font-size:9px
}
.panel-footer .small-mono {
  font:8px var(--mono)
}
.tier-list {
  padding:0 21px 19px;
  display:flex;
  flex-direction:column;
  gap:15px
}
.tier-row {
  display:grid;
  grid-template-columns:33px 1fr auto;
  align-items:center;
  gap:11px
}
.tier-emblem {
  width:30px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid;
  border-radius:8px;
  font:12px var(--mono)
}
.tier-emblem.gold {
  color:var(--gold);
  background:#322a1b;
  border-color:#4a3c27
}
.tier-emblem.silver {
  color:var(--silver);
  background:#252d34;
  border-color:#3b4650
}
.tier-emblem.bronze {
  color:var(--bronze);
  background:#2d231e;
  border-color:#49352b
}
.tier-info {
  min-width:0
}
.tier-title {
  font-size:11px;
  font-weight:550;
  display:flex;
  justify-content:space-between;
  margin-bottom:6px
}
.tier-title span {
  color:#7c8992;
  font-weight:400;
  font-size:9px
}
.tier-track {
  background:#252b2f;
  height:4px;
  border-radius:10px;
  overflow:hidden
}
.tier-track span {
  display:block;
  height:100%;
  border-radius:10px;
  width:var(--fill,0%)
}
.tier-track .gold {
  background:var(--gold)
}
.tier-track .silver {
  background:var(--silver)
}
.tier-track .bronze {
  background:var(--bronze)
}
.tier-amount {
  font:18px var(--mono);
  letter-spacing:-.6px;
  text-align:right;
  min-width:30px
}
.tier-amount small {
  display:block;
  font:8px var(--mono);
  color:#627078;
  margin-top:3px
}
.bottom-layout {
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);
  gap:18px
}
.table-wrap {
  overflow-x:auto;
  width:100%
}
table {
  border-collapse:collapse;
  width:100%;
  text-align:left;
  white-space:nowrap
}
thead {
  background:#101418
}
th {
  padding:10px 20px;
  font:8px var(--mono);
  letter-spacing:1px;
  text-transform:uppercase;
  color:#65737e;
  font-weight:500;
  border-block:1px solid var(--line-soft)
}
td {
  padding:13px 20px;
  border-bottom:1px solid var(--line-soft);
  font-size:11px;
  color:#b6c0c7
}
tbody tr:last-child td {
  border-bottom:0
}
tbody tr:hover {
  background:#192026
}
td.number,th.number {
  text-align:right;
  font-variant-numeric:tabular-nums
}
td.number {
  color:#e1e7e4;
  font:12px var(--mono)
}
.rank {
  font:10px var(--mono);
  color:#65747e
}
.rank.top {
  color:var(--gold)
}
.wallet {
  display:flex;
  align-items:center;
  gap:8px;
  color:#c6d0d7;
  font:10px var(--mono)
}
.wallet-orb {
  width:23px;
  height:23px;
  border:1px solid #2f4137;
  border-radius:7px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#7bb98c;
  background:#1a2a20;
  flex:none
}
.wallet-orb svg {
  width:12px;
  height:12px
}
.copy-button {
  background:none;
  border:0;
  color:#56656f;
  padding:2px;
  display:inline-flex;
  border-radius:3px
}
.copy-button svg {
  width:12px;
  height:12px
}
.copy-button:hover {
  color:var(--green)
}
.badge {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:3px 7px;
  border-radius:4px;
  border:1px solid #31383f;
  font-size:9px;
  color:#a3aeb8;
  background:#20262b;
  white-space:nowrap
}
.badge.gold {
  color:var(--gold);
  border-color:#483c29;
  background:#2a2419
}
.badge.silver {
  color:var(--silver);
  border-color:#3a4650;
  background:#242d34
}
.badge.bronze {
  color:var(--bronze);
  border-color:#46342a;
  background:#2a211c
}
.badge.active,.badge.running,.badge.completed {
  color:#6ed594;
  border-color:#244532;
  background:#14281c
}
.badge.waiting,.badge.pausing {
  color:var(--gold);
  border-color:#453c26;
  background:#292314
}
.badge.blocked,.badge.failed {
  color:var(--red);
  border-color:#4b2a2a;
  background:#2c1919
}
.badge.idle,.badge.inactive,.badge.paused,.badge.cancelled {
  color:#8e9ba4
}
.categories {
  padding:0 21px 8px
}
.category-row {
  padding:10px 0;
  display:flex;
  align-items:center;
  gap:10px;
  border-bottom:1px solid var(--line-soft)
}
.category-row:last-child {
  border:0
}
.category-symbol {
  width:27px;
  height:27px;
  border:1px solid #2b3732;
  border-radius:7px;
  color:#8da89a;
  background:#1b2520;
  display:flex;
  align-items:center;
  justify-content:center
}
.category-symbol svg {
  width:13px;
  height:13px
}
.category-name {
  font-size:11px;
  color:#c3ccc7
}
.category-count {
  margin-left:auto;
  font:9px var(--mono);
  color:#71817a
}
.notice {
  border:1px solid #514128;
  color:#d6bd8a;
  background:#211b13;
  border-radius:8px;
  padding:11px 14px;
  font-size:11px;
  margin-bottom:16px;
  line-height:1.7
}
.notice.error {
  border-color:#563333;
  color:#e5a9a4;
  background:#271a1a
}
.notice button {
  color:inherit;
  background:none;
  border:0;
  text-decoration:underline;
  margin-left:8px;
  padding:0
}
.toolbar {
  display:flex;
  align-items:center;
  gap:10px;
  padding:15px 21px;
  border-top:1px solid var(--line-soft);
  flex-wrap:wrap
}
.search-control {
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid #303a42;
  background:#0e1317;
  border-radius:7px;
  padding:8px 10px;
  min-width:205px
}
.search-control svg {
  width:14px;
  height:14px;
  color:#64737e
}
.search-control input {
  border:0;
  outline:none;
  background:transparent;
  font-size:11px;
  width:175px
}
.search-control input::placeholder {
  color:#62717b
}
.select-control {
  border:1px solid #303a42;
  background:#10161a;
  border-radius:7px;
  padding:8px 25px 8px 10px;
  font-size:11px;
  max-width:160px
}
.toolbar-spacer {
  margin-left:auto
}
.table-footer {
  padding:13px 21px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid var(--line-soft);
  font-size:10px;
  color:#74828c
}
.pagination {
  display:flex;
  gap:7px;
  align-items:center
}
.pagination .button {
  font-size:10px;
  padding:6px 10px
}
.empty-state {
  padding:46px 24px;
  text-align:center;
  color:#70808b
}
.empty-icon {
  width:44px;
  height:44px;
  border:1px solid #2c3831;
  border-radius:13px;
  color:#679c79;
  background:#17211b;
  margin:0 auto 15px;
  display:flex;
  align-items:center;
  justify-content:center
}
.empty-state h3 {
  margin:0 0 7px;
  font-size:14px;
  font-weight:550;
  color:#c5d0ca
}
.empty-state p {
  font-size:11px;
  max-width:360px;
  margin:0 auto;
  line-height:1.8
}
.empty-state .button {
  margin-top:15px
}
.skeleton {
  display:inline-block;
  background:linear-gradient(90deg,#21282d,#29322e,#21282d);
  background-size:200%;
  animation:shimmer 2s ease-in-out infinite;
  border-radius:5px;
  color:transparent!important;
  min-width:55px
}
.loading-panel {
  padding:70px;
  text-align:center;
  color:var(--muted);
  font-size:12px
}
.spinner {
  width:21px;
  height:21px;
  border:2px solid #28372e;
  border-top-color:var(--green);
  border-radius:50%;
  animation:spin .8s linear infinite;
  margin:0 auto 15px
}
.page-footer {
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#52616b;
  font-size:9px;
  padding:24px 0 3px
}
.footer-slash {
  margin:0 8px;
  color:#2d3933
}
.page-footer a {
  color:#7f9b88
}
.price-line {
  display:flex;
  align-items:center;
  gap:13px;
  font:9px var(--mono);
  color:#87978d
}
.price-line strong {
  color:#bac7be;
  font-weight:500
}
.price-divider {
  color:#34443a
}
.pair-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(270px,.7fr);
  gap:18px
}
.pair-card {
  padding:34px;
  position:relative;
  overflow:hidden
}
.pair-illustration {
  width:60px;
  height:60px;
  border:1px solid #274232;
  border-radius:17px;
  background:#14291c;
  color:#59dd87;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:23px
}
.pair-illustration svg {
  width:30px;
  height:30px
}
.pair-card h2 {
  font-size:23px;
  letter-spacing:-.8px;
  font-weight:550;
  margin:0 0 10px
}
.pair-card>p {
  max-width:440px;
  color:#83928c;
  font-size:12px;
  line-height:1.8;
  margin-bottom:24px
}
.pair-form {
  display:flex;
  align-items:stretch;
  gap:10px;
  max-width:440px
}
.pair-input {
  font:18px var(--mono);
  letter-spacing:3px;
  background:#0c1310;
  border:1px solid #34483b;
  border-radius:8px;
  padding:13px 16px;
  width:100%;
  min-width:0;
  text-transform:uppercase
}
.pair-input::placeholder {
  color:#4b6052
}
.field-error {
  color:var(--red);
  font-size:11px;
  line-height:1.7;
  margin-top:11px
}
.pair-help {
  font-size:10px;
  color:#5f7066;
  margin-top:14px
}
.steps {
  padding:26px
}
.steps h3 {
  font-size:13px;
  font-weight:550;
  margin:0 0 24px
}
.step {
  display:flex;
  gap:13px;
  margin-bottom:23px
}
.step:last-child {
  margin-bottom:0
}
.step-number {
  width:23px;
  height:23px;
  border:1px solid #314039;
  border-radius:50%;
  font:10px var(--mono);
  color:#89a996;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none
}
.step strong {
  font-size:11px;
  font-weight:550
}
.step p {
  font-size:11px;
  color:#77877f;
  margin:5px 0 0;
  line-height:1.7
}
.privacy-note {
  padding:17px 20px;
  border:1px solid #25332b;
  border-radius:9px;
  color:#7e9687;
  font-size:11px;
  line-height:1.7;
  margin-top:18px;
  display:flex;
  gap:10px
}
.privacy-note svg {
  flex:none;
  margin-top:2px
}
.miner-detail-grid {
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(0,1.4fr);
  gap:18px;
  margin-top:18px
}
.device-card {
  padding:23px
}
.device-heading {
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:23px
}
.device-icon {
  width:45px;
  height:45px;
  border:1px solid #2b4031;
  border-radius:11px;
  background:#16271c;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#63ce87
}
.device-heading h2 {
  font-size:16px;
  font-weight:550;
  margin:0 0 5px
}
.detail-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 14px;
  margin-bottom:20px
}
.detail-item .label {
  font-size:9px;
  color:#647681;
  display:block;
  margin-bottom:5px
}
.detail-item .value {
  font-size:11px;
  color:#becac3
}
.detail-item.full {
  grid-column:1/-1
}
.detail-item .wallet {
  padding:10px;
  background:#0d1410;
  border:1px solid #26392c;
  border-radius:6px;
  justify-content:space-between
}
.control-row {
  display:flex;
  gap:8px;
  padding-top:17px;
  border-top:1px solid var(--line-soft)
}
.control-row .button {
  flex:1
}
.device-status-note {
  font-size:10px;
  color:#82918a;
  line-height:1.7;
  margin-top:15px
}
.activity-list {
  padding:0 21px;
  max-height:500px;
  overflow:auto
}
.activity-entry {
  display:grid;
  grid-template-columns:8px 1fr;
  gap:11px;
  padding:13px 0;
  border-top:1px solid var(--line-soft)
}
.activity-entry .status-dot {
  margin-top:6px;
  width:5px;
  height:5px
}
.activity-entry h3 {
  font-size:11px;
  font-weight:500;
  color:#c5cec9;
  margin:0 0 4px
}
.activity-entry p {
  font-size:10px;
  color:#788982;
  line-height:1.6;
  margin:0;
  overflow-wrap:anywhere
}
.activity-meta {
  display:flex;
  gap:10px;
  margin-top:6px;
  color:#52665a;
  font:8px var(--mono)
}
.section-gap {
  margin-top:18px
}
.inline-note {
  color:#7b8c82;
  font-size:10px;
  line-height:1.7
}
.endpoint-list {
  padding:0 21px 15px
}
.endpoint {
  display:grid;
  grid-template-columns:45px minmax(0,1fr) auto;
  gap:13px;
  align-items:start;
  padding:15px 0;
  border-top:1px solid var(--line-soft)
}
.http-method {
  font:8px var(--mono);
  border:1px solid #285139;
  color:#6ed99a;
  background:#163222;
  border-radius:4px;
  padding:4px 6px;
  text-align:center;
  margin-top:1px
}
.endpoint-path {
  font:11px var(--mono);
  color:#c9d5cd;
  overflow-wrap:anywhere;
  line-height:1.7
}
.endpoint p {
  color:#7c8e82;
  font-size:11px;
  margin:5px 0 0
}
.endpoint .copy-button {
  padding:5px
}
.api-layout {
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(270px,.8fr);
  gap:18px
}
.explanation {
  padding:22px
}
.explanation h3 {
  margin:0 0 9px;
  font-weight:550;
  font-size:12px
}
.explanation p {
  color:#7e9184;
  font-size:11px;
  line-height:1.8;
  margin:0 0 21px
}
.explanation p:last-child {
  margin:0
}
.explanation code {
  font:10px var(--mono);
  background:#1d2d22;
  color:#9dc0a9;
  border-radius:4px;
  padding:2px 4px
}
.health-summary {
  display:flex;
  gap:10px;
  align-items:center;
  border:1px solid #2a4032;
  background:#14231a;
  border-radius:7px;
  padding:12px;
  color:#a6c7b1;
  font-size:11px;
  margin-bottom:20px
}
.toast {
  position:fixed;
  bottom:25px;
  left:calc(50% + 110px);
  transform:translateX(-50%);
  background:#1e3427;
  border:1px solid #3b6449;
  border-radius:8px;
  padding:11px 20px;
  color:#b8e8c8;
  font-size:12px;
  box-shadow:0 8px 35px #0006;
  z-index:100
}
.control-feedback {
  margin-top:12px;
  font-size:10px;
  color:#99b9a4;
  line-height:1.7
}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin:24px 0 12px
}
.section-heading h2 {
  font-size:13px;
  font-weight:550;
  margin:0
}
.section-heading span {
  font-size:10px;
  color:var(--muted)
}
@keyframes spin {
  to {
    transform:rotate(360deg)
  }
}
@keyframes shimmer {
  to {
    background-position:-200% 0
  }
}
@media(min-width:1600px) {
  main {
    padding-top:44px
  }
  .page-heading {
    margin-bottom:31px
  }
  .metric {
    padding:24px
  }
  .metric-value {
    font-size:40px
  }
  .capacity-body {
    gap:37px;
    padding-block:5px 26px
  }
  .capacity-ring,.capacity-ring svg {
    width:170px;
    height:170px
  }
}
@media(max-width:1180px) {
  .sidebar {
    width:190px;
    padding-inline:12px
  }
  .app-shell {
    margin-left:190px
  }
  .topbar {
    padding-inline:25px
  }
  main {
    padding:28px 25px 18px
  }
  .brand {
    padding-inline:8px
  }
  .page-heading {
    align-items:flex-start;
    gap:16px
  }
  .global-controls {
    flex-wrap:wrap;
    justify-content:flex-end;
    max-width:265px
  }
  .metric-grid {
    gap:10px
  }
  .metric {
    padding:16px
  }
  .metric-value {
    font-size:29px
  }
  .capacity-body {
    gap:18px;
    padding-inline:18px
  }
  .capacity-ring,.capacity-ring svg {
    width:128px;
    height:128px
  }
  .capacity-number strong {
    font-size:28px
  }
  .overview-layout {
    grid-template-columns:minmax(0,1.25fr) minmax(280px,1fr)
  }
  .bottom-layout {
    grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr)
  }
  td,th {
    padding-inline:16px
  }
  .toast {
    left:calc(50% + 95px)
  }
}
@media(max-width:1000px) {
  .metric-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:950px) {
  .page-heading {
    display:block
  }
  .global-controls {
    margin-top:20px;
    max-width:none;
    justify-content:flex-start
  }
  .overview-layout,.bottom-layout,.miner-detail-grid,.pair-layout,.api-layout {
    grid-template-columns:1fr
  }
  .capacity-body {
    padding:8px 22px 25px
  }
  .capacity-ring,.capacity-ring svg {
    width:145px;
    height:145px
  }
  .tier-list {
    gap:18px
  }
  .categories {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 18px
  }
  .category-row:nth-last-child(2) {
    border:0
  }
  .metric-top {
    font-size:9px
  }
  .metric-icon {
    width:24px;
    height:24px
  }
  .metric-foot {
    font-size:9px
  }
  .page-footer {
    display:block;
    line-height:2
  }
  .table-footer {
    gap:8px
  }
  .price-line {
    flex-wrap:wrap
  }
}
@media(max-width:650px) {
  .sidebar {
    position:static;
    width:auto;
    height:auto;
    padding:15px 17px 0;
    border-right:0;
    border-bottom:1px solid var(--line-soft)
  }
  .brand {
    padding:0 2px 15px;
    font-size:21px;
    gap:9px
  }
  .brand img {
    width:33px;
    height:33px;
    border-radius:9px
  }
  .brand-sub {
    font-size:8px
  }
  .nav-caption,.sidebar-bottom {
    display:none
  }
  .navigation {
    flex-direction:row;
    gap:0;
    justify-content:space-between;
    overflow-x:auto;
    padding-bottom:10px
  }
  .nav-link {
    padding:9px 8px;
    gap:6px;
    border-radius:6px;
    font-size:10px;
    white-space:nowrap
  }
  .nav-link svg {
    width:14px;
    height:14px
  }
  .nav-dot {
    display:none
  }
  .app-shell {
    margin-left:0
  }
  .topbar {
    height:54px;
    padding:0 19px
  }
  .topbar-right {
    gap:12px
  }
  .breadcrumb {
    font-size:10px
  }
  .connection-indicator {
    font-size:9px
  }
  .topbar .button {
    font-size:9px;
    padding:6px 9px
  }
  main {
    padding:24px 17px 16px
  }
  h1 {
    font-size:27px
  }
  .page-heading p {
    font-size:11px;
    max-width:330px;
    line-height:1.7
  }
  .global-controls {
    margin-top:18px
  }
  .date-control {
    padding:7px 9px
  }
  .data-caption {
    font-size:8px;
    gap:7px;
    flex-wrap:wrap;
    margin-bottom:14px
  }
  .metric-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-bottom:14px
  }
  .metric {
    padding:16px
  }
  .metric-value {
    font-size:32px;
    margin-top:9px
  }
  .metric-top {
    font-size:10px
  }
  .metric-foot {
    font-size:9px
  }
  .overview-layout,.bottom-layout,.miner-detail-grid,.pair-layout,.api-layout {
    gap:14px;
    margin-bottom:14px
  }
  .panel {
    border-radius:10px
  }
  .panel-head {
    padding:17px
  }
  .panel-head h2 {
    font-size:12px
  }
  .panel-head p {
    font-size:9px
  }
  .capacity-body {
    padding:5px 18px 20px;
    gap:18px
  }
  .capacity-ring,.capacity-ring svg {
    width:127px;
    height:127px
  }
  .capacity-number strong {
    font-size:29px
  }
  .capacity-details h3 {
    font-size:13px
  }
  .capacity-details p {
    font-size:10px;
    margin-bottom:12px
  }
  .capacity-key {
    gap:18px
  }
  .capacity-key strong {
    font-size:15px
  }
  .panel-footer {
    padding:11px 17px;
    font-size:8px;
    flex-wrap:wrap
  }
  .price-line {
    font-size:8px;
    gap:8px
  }
  .tier-list {
    padding:0 17px 18px
  }
  .categories {
    padding:0 17px 8px;
    grid-template-columns:1fr
  }
  .category-row:nth-last-child(2) {
    border-bottom:1px solid var(--line-soft)
  }
  .toolbar {
    padding:13px 17px;
    gap:8px
  }
  .search-control {
    min-width:100%;
    padding-block:9px
  }
  .search-control input {
    width:100%
  }
  .select-control {
    font-size:10px
  }
  .toolbar-spacer {
    margin-left:0
  }
  .table-footer {
    padding:12px 17px;
    flex-wrap:wrap;
    font-size:9px
  }
  td,th {
    padding-inline:14px
  }
  td {
    font-size:10px
  }
  .wallet {
    font-size:9px
  }
  .pair-card {
    padding:25px
  }
  .pair-card h2 {
    font-size:21px
  }
  .pair-form {
    flex-direction:column
  }
  .pair-input {
    font-size:20px;
    padding:13px 15px
  }
  .pair-form .button {
    padding-block:12px
  }
  .steps {
    padding:23px
  }
  .privacy-note {
    font-size:10px
  }
  .device-card {
    padding:20px
  }
  .detail-item .value {
    font-size:10px
  }
  .activity-list {
    padding-inline:17px;
    max-height:430px
  }
  .endpoint-list {
    padding-inline:17px
  }
  .endpoint {
    gap:9px;
    grid-template-columns:39px minmax(0,1fr) auto
  }
  .endpoint-path {
    font-size:9px
  }
  .endpoint p {
    font-size:10px
  }
  .explanation {
    padding:20px
  }
  .toast {
    left:50%;
    max-width:90%;
    font-size:11px;
    bottom:17px;
    white-space:nowrap
  }
  .page-footer {
    font-size:8px;
    padding-top:15px
  }
  .loading-panel {
    padding:50px 20px
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important
  }
}
.tier-progress {
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  height:4px;
  border:0;
  border-radius:4px;
  display:block;
  background:#252b2f
}
.tier-progress::-webkit-progress-bar {
  background:#252b2f;
  border-radius:4px
}
.tier-progress::-webkit-progress-value {
  border-radius:4px
}
.tier-progress.gold::-webkit-progress-value {
  background:var(--gold)
}
.tier-progress.silver::-webkit-progress-value {
  background:var(--silver)
}
.tier-progress.bronze::-webkit-progress-value {
  background:var(--bronze)
}
.tier-progress.gold::-moz-progress-bar {
  background:var(--gold)
}
.tier-progress.silver::-moz-progress-bar {
  background:var(--silver)
}
.tier-progress.bronze::-moz-progress-bar {
  background:var(--bronze)
}
.text-button {
  color:#7ec498;
  font-size:10px;
  background:none;
  border:0;
  padding:0;
  cursor:pointer
}
.text-button:hover {
  text-decoration:underline
}
.categories.expanded {
  max-height:300px;
  overflow:auto
}
.device-card>.panel-footer {
  padding-inline:0;
  margin-top:18px;
  padding-bottom:0
}
