.dashboard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.dashboard-panel {
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--panel);
}

.dashboard-panel header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px;
  border-bottom: 1px solid var(--line);
}

.dashboard-panel h2 { margin: 0; font-size: 16px; }

.dashboard-panel header span {
  padding: 5px 8px;
  border: 1px solid var(--line);
  color: var(--orange-soft);
  font-size: 11px;
  font-weight: 800;
}

.dashboard-row {
  display: grid;
  grid-template-columns: 42px minmax(115px, .72fr) minmax(170px, 1.25fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 72px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--line);
  color: var(--cream);
  text-decoration: none;
}

.dashboard-row:hover { background: var(--panel-2); }

.row-icon {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border: 1px solid var(--line);
  background: #181410;
  color: var(--orange-soft);
  font-size: 11px;
  font-weight: 900;
}

.dashboard-row b { display: block; color: var(--orange-soft); font-size: 12px; }
.dashboard-row small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; }
.row-detail b { color: var(--cream); }

.row-value {
  justify-self: end;
  padding: 5px 7px;
  border: 1px solid var(--line);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.dashboard-footer {
  display: flex;
  justify-content: center;
  gap: 7px;
  padding: 16px;
  color: var(--orange-soft);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
}

.dashboard-footer:hover { background: var(--panel-2); }
.dashboard-empty { padding: 46px 18px; color: var(--muted); text-align: center; }

.block-head { display: flex; align-items: end; justify-content: space-between; gap: 28px; }
.block-age { margin: 10px 0 0; color: var(--muted); font-size: 13px; }
.block-hash { max-width: min(520px, 48%); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.block-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 24px 0 44px;
  border: 1px solid var(--line);
  background: var(--line);
}

.block-summary > div { min-height: 118px; padding: 20px; background: var(--panel); }
.block-summary span,
.block-summary small { display: block; color: var(--muted); font-size: 11px; font-weight: 750; }
.block-summary strong { display: block; margin: 12px 0 7px; color: var(--cream); font-size: 21px; letter-spacing: 0; }
.block-summary > div:first-child strong { color: var(--orange-soft); }

.block-metadata { margin-top: 0; }
.block-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  border: 1px solid var(--line);
  background: var(--line);
}

.block-facts div { min-height: 86px; padding: 18px; background: var(--panel); }
.block-facts dt { color: var(--muted); font-size: 11px; font-weight: 800; }
.block-facts dd { margin: 10px 0 0; overflow-wrap: anywhere; color: var(--cream); font-weight: 800; }
.block-facts .block-fact-wide { grid-column: span 2; }

.address-page { max-width: 1240px; }
.address-header { padding: 14px 0 30px; border-bottom: 1px solid var(--line); }
.address-title { display: flex; align-items: center; gap: 12px; }
.address-title .eyebrow { margin: 0; }
.address-title h1 { margin: 0; font-size: 28px; }
.address-type { padding: 4px 7px; background: var(--panel-2); color: var(--cream); font-size: 11px; font-weight: 850; }
.address-identity { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.address-mark { display: grid; width: 28px; height: 28px; place-items: center; background: var(--orange); color: #24140a; font: 900 10px ui-monospace, monospace; }
.address-identity code { color: var(--cream); font: 750 15px ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; }
.copy-address { min-height: 32px; padding: 0 10px; border-color: var(--line); background: transparent; color: var(--orange-soft); font-size: 11px; }
.address-stats { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(4, minmax(0, 1fr)); gap: 0; margin: 28px 0 34px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.address-stats > div { min-height: 82px; padding: 16px 18px; border-right: 1px solid var(--line); }
.address-stats > div:last-child { border-right: 0; }
.address-stats span { display: block; color: var(--muted); font-size: 11px; font-weight: 750; }
.address-stats strong { display: block; margin-top: 10px; color: var(--cream); font-size: 15px; overflow-wrap: anywhere; }
.address-tabs { display: flex; gap: 4px; margin-bottom: 24px; border-bottom: 1px solid var(--line); }
.address-tabs button { min-height: 42px; padding: 0 14px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--muted); font-size: 13px; }
.address-tabs button:hover, .address-tabs button.active { border-bottom-color: var(--orange); color: var(--cream); }
.address-tabs b { color: var(--orange-soft); font-size: 11px; }
.address-panel { margin-top: 0; }
.table-age { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; }
.direction { display: inline-block; padding: 4px 7px; font-size: 11px; font-weight: 800; }
.direction.in { background: #233f32; color: #b9eed0; }
.direction.out { background: #4a2c1b; color: #ffcb9c; }
.contract-page { max-width: 1240px; }
.contract-header { padding: 14px 0 30px; border-bottom: 1px solid var(--line); }
.contract-title { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.contract-title .eyebrow { margin: 0; }
.contract-title h1 { margin: 0; font-size: 28px; }
.contract-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 28px 0 18px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.contract-stats > div { min-height: 82px; padding: 16px 18px; border-right: 1px solid var(--line); }
.contract-stats > div:last-child { border-right: 0; }
.contract-stats span, .contract-metadata span { display: block; color: var(--muted); font-size: 11px; font-weight: 750; }
.contract-stats strong, .contract-metadata strong { display: block; margin-top: 10px; color: var(--cream); font-size: 15px; overflow-wrap: anywhere; }
.contract-metadata { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 34px; border: 1px solid var(--line); }
.contract-metadata > div { min-height: 76px; padding: 15px 18px; border-right: 1px solid var(--line); }
.contract-metadata > div:last-child { border-right: 0; }
.contract-panel { margin-top: 0; }
.bytecode-panel { max-height: 520px; overflow: auto; border: 1px solid var(--line); background: #16120f; }
.bytecode-panel code { display: block; padding: 18px; color: var(--orange-soft); font: 12px/1.65 ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; }
.token-page { max-width: 1240px; }
.token-header { padding: 14px 0 30px; border-bottom: 1px solid var(--line); }
.token-title { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.token-title h1 { margin: 0; font-size: 28px; }
.token-mark { display: grid; width: 34px; height: 34px; place-items: center; background: var(--orange); color: #24140a; font: 900 15px ui-monospace, monospace; }
.token-notice { display: flex; gap: 10px; align-items: baseline; margin: 22px 0; padding: 13px 16px; border-left: 3px solid var(--orange); background: #2b2119; color: var(--orange-soft); }
.token-notice strong { color: var(--cream); }
.token-stats { display: grid; grid-template-columns: minmax(0, 1.7fr) repeat(4, minmax(0, 1fr)); margin: 28px 0 18px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.token-stats > div { min-height: 82px; padding: 16px 18px; border-right: 1px solid var(--line); }
.token-stats > div:last-child { border-right: 0; }
.token-stats span, .token-contract-link span { display: block; color: var(--muted); font-size: 11px; font-weight: 750; }
.token-stats strong { display: block; margin-top: 10px; color: var(--cream); font-size: 15px; overflow-wrap: anywhere; }
.token-contract-link { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; margin-bottom: 34px; padding: 14px 16px; border: 1px solid var(--line); background: var(--panel); }
.token-contract-link span { margin-right: 2px; }
.token-contract-link a:last-child { margin-left: auto; font-size: 12px; }
.token-panel { margin-top: 0; }

@media (max-width: 900px) {
  .block-head { display: block; }
  .block-hash { display: block; max-width: 100%; margin-top: 17px; }
  .block-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .block-summary > div { min-height: 108px; }
  .address-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .address-stats > div:nth-child(2n) { border-right: 0; }
  .address-stats > div:nth-child(n+3) { border-top: 1px solid var(--line); }
  .contract-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contract-stats > div:nth-child(2n) { border-right: 0; }
  .contract-stats > div:nth-child(n+3) { border-top: 1px solid var(--line); }
  .contract-metadata { grid-template-columns: 1fr; }
  .contract-metadata > div { border-right: 0; border-top: 1px solid var(--line); }
  .contract-metadata > div:first-child { border-top: 0; }
  .token-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .token-stats > div:nth-child(2n) { border-right: 0; }
  .token-stats > div:nth-child(n+3) { border-top: 1px solid var(--line); }
}

@media (max-width: 580px) {
  .block-summary, .block-facts { grid-template-columns: 1fr; }
  .block-facts .block-fact-wide { grid-column: auto; }
  .address-title h1 { font-size: 24px; }
  .address-identity code { font-size: 12px; }
  .address-stats { grid-template-columns: 1fr; }
  .address-stats > div { border-right: 0; border-top: 1px solid var(--line); }
  .address-stats > div:first-child { border-top: 0; }
  .contract-title h1 { font-size: 24px; }
  .contract-stats { grid-template-columns: 1fr; }
  .contract-stats > div { border-right: 0; border-top: 1px solid var(--line); }
  .contract-stats > div:first-child { border-top: 0; }
  .token-title h1 { font-size: 24px; }
  .token-stats { grid-template-columns: 1fr; }
  .token-stats > div { border-right: 0; border-top: 1px solid var(--line); }
  .token-stats > div:first-child { border-top: 0; }
  .token-notice { display: block; }
  .token-notice span { display: block; margin-top: 4px; }
  .token-contract-link a:last-child { width: 100%; margin-left: 0; }
}

@media (max-width: 900px) {
  .dashboard-grid { grid-template-columns: 1fr; }
  .dashboard-row { grid-template-columns: 42px minmax(0, 1fr) auto; }
  .dashboard-row .row-detail { grid-column: 2 / -1; }
  .row-value { grid-column: 3; }
}
