@import url('/tokens.css');
.inventory-note {
  color: #9c9b9a;
  font-size: 10px;
  line-height: 1.8;
  margin: 13px 0;
}
.sweep-panel {
  padding:22px;
  margin-top:20px
}
.sweep-panel h3 {
  margin-bottom:12px
}
.sweep-panel>p {
  font-size:11px;
  color:#999897;
  line-height:1.8;
  margin-bottom:12px
}
.sweep-panel .control-help {
  font-size:9px
}
.sweep-panel>.button {
  margin-top:6px
}
.sweep-summary {
  font-size:11px;
  color:#c0bfbe;
  cursor:pointer;
  margin:17px 0
}
.sweep-panel .policy-table {
  min-width:560px
}
* {
  box-sizing:border-box
}
html {
  color-scheme:dark;
  scroll-behavior:smooth
}
body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  font:14px/1.55 'Segoe UI',Inter,Arial,sans-serif;
  -webkit-font-smoothing:antialiased
}
button,input,select,textarea {
  font:inherit
}
button,a,input,select,textarea {
  -webkit-tap-highlight-color:transparent
}
button,a {
  touch-action:manipulation
}
button {
  cursor:pointer
}
a {
  color:inherit;
  text-decoration:none
}
button:disabled {
  cursor:wait;
  opacity:.55
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {
  outline:2px solid var(--lime);
  outline-offset:4px
}
h1,h2,h3,p {
  margin:0
}
h1,h2,h3 {
  font-weight:500;
  letter-spacing:-.045em
}
h1 {
  font-size:clamp(36px,3.7vw,56px);
  line-height:1.12
}
h2 {
  font-size:25px;
  line-height:1.25
}
h3 {
  font-size:17px;
  letter-spacing:-.02em
}
small {
  font-size:11px
}
svg {
  display:block
}
.shell {
  display:flex;
  min-height:100vh
}
.sidebar {
  position:fixed;
  inset:0 auto 0 0;
  width:224px;
  background:#131613;
  border-right:1px solid var(--line);
  display:flex;
  flex-direction:column;
  padding:30px 20px 20px;
  z-index:20
}
.brand {
  display:flex;
  align-items:center;
  gap:11px;
  font-size:30px;
  letter-spacing:-1.5px;
  font-weight:650;
  padding:0 8px
}
.brand-dot {
  font-size:10px;
  font-weight:400;
  align-self:flex-start;
  padding-top:9px;
  margin-left:-6px;
  letter-spacing:0;
  color:var(--muted)
}
.network {
  font-size:11px;
  color:#aeadac;
  display:flex;
  align-items:center;
  gap:9px;
  margin:27px 8px 35px
}
.solana-mark {
  font-size:22px;
  color:var(--lime);
  line-height:1;
  transform:rotate(-20deg)
}
.network-dot {
  height:5px;
  width:5px;
  border-radius:100%;
  background:var(--lime);
  margin-left:auto
}
.nav-label {
  font-size:9px;
  letter-spacing:.16em;
  color:#6f6e6d;
  padding-left:12px;
  margin-bottom:13px
}
.sidebar nav {
  display:grid;
  gap:6px
}
.sidebar nav a {
  display:flex;
  align-items:center;
  gap:13px;
  color:#9d9c9b;
  border:1px solid transparent;
  border-radius:8px;
  padding:11px 12px;
  font-size:12px
}
.sidebar nav a:hover {
  color:var(--text);
  background:#201f1e
}
.sidebar nav a.active {
  background:#2a2928;
  border-color:#3d3c3b;
  color:var(--lime)
}
.nav-icon {
  font-size:20px;
  line-height:1;
  width:20px;
  text-align:center;
  font-family:Arial,sans-serif
}
.nav-arrow {
  margin-left:auto
}
.sidebar-note {
  margin-top:auto;
  padding:54px 12px 24px
}
.mini-mark {
  width:33px;
  height:33px;
  display:grid;
  place-items:center;
  border:1px solid #3e3d3c;
  border-radius:50%;
  color:var(--lime);
  font-size:20px;
  margin-bottom:15px
}
.sidebar-note h3 {
  font-size:13px;
  color:#cccbca;
  letter-spacing:0
}
.sidebar-note p {
  font-size:11px;
  color:var(--muted);
  line-height:1.9;
  margin:10px 0 19px
}
.sidebar-note a {
  font-size:10px;
  color:#c0bfbe;
  display:flex;
  justify-content:space-between
}
.sidebar-bottom {
  border-top:1px solid var(--line);
  padding-top:19px;
  display:flex;
  gap:8px;
  align-items:center;
  font-size:10px;
  color:#b6b5b4
}
.sidebar-bottom small {
  display:block;
  font-size:8px;
  color:#797877;
  margin-top:3px
}
.status-dot {
  height:5px;
  width:5px;
  flex-shrink:0;
  border-radius:50%;
  background:var(--lime);
  box-shadow:0 0 0 3px #d2d1d00c
}
.version {
  margin-left:auto;
  color:#6a6968;
  font-size:9px
}
.workspace {
  margin-left:224px;
  width:calc(100% - 224px);
  min-width:0
}
.topbar {
  height:82px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 40px;
  border-bottom:1px solid var(--line)
}
.breadcrumb {
  display:flex;
  gap:16px;
  align-items:center;
  font-size:11px;
  color:#6a6968
}
.breadcrumb strong {
  color:#cbcac9;
  font-weight:400
}
.top-actions {
  display:flex;
  gap:21px;
  align-items:center
}
.prototype-tag {
  font-size:8px;
  letter-spacing:.15em;
  color:#a09f9e;
  border:1px solid #3b3a39;
  padding:5px 8px;
  border-radius:4px
}
.button {
  border:1px solid #474645;
  background:#272625;
  color:#dfdedd;
  border-radius:6px;
  padding:10px 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  font-weight:500;
  font-size:12px;
  transition:background .15s,transform .15s;
  min-height:40px
}
.button:hover {
  background:#373635;
  transform:translateY(-1px)
}
.button-small {
  padding:8px 14px;
  min-height:34px;
  font-size:11px
}
.button-primary {
  background:var(--lime);
  color:#1d1c1b;
  border-color:var(--lime)
}
.button-primary:hover {
  background:#e0dfde
}
.button-ghost {
  background:transparent;
  border-color:#383736;
  color:#c0bfbe
}
.button-ghost:hover {
  background:#242322
}
.icon-button {
  height:32px;
  width:32px;
  border:1px solid var(--line);
  color:#a1a09f;
  background:transparent;
  border-radius:6px;
  font-size:23px;
  line-height:1
}
.full-width {
  width:100%
}
main {
  max-width:1550px;
  margin:0 auto;
  padding:42px 40px 44px;
  min-height:calc(100vh - 137px);
  outline:none
}
.eyebrow {
  display:block;
  color:#9a9998;
  font-size:9px;
  letter-spacing:.17em;
  font-weight:600
}
.page-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:30px
}
.page-heading .eyebrow {
  margin-bottom:13px
}
.page-heading p {
  color:#929190;
  font-size:12px;
  max-width:510px;
  line-height:1.8;
  margin-top:14px
}
.heading-meta {
  font-size:10px;
  color:#8b8a89;
  text-align:right;
  white-space:nowrap;
  padding-bottom:5px
}
.heading-meta span {
  display:block;
  margin-top:6px;
  font-size:8px;
  letter-spacing:.15em;
  color:#656463
}
.metric-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin:30px 0;
  padding:20px 0
}
.metric {
  padding-left:26px;
  border-left:1px solid var(--line)
}
.metric:first-child {
  padding-left:0;
  border:0
}
.metric-label {
  font-size:10px;
  color:#8e8d8c
}
.metric-value {
  font-size:25px;
  letter-spacing:-.055em;
  font-weight:450;
  color:#dfdedd;
  margin-top:5px;
  font-variant-numeric:tabular-nums
}
.metric-sub {
  font-size:9px;
  color:#7b7a79;
  margin-top:3px
}
.metric-sub.positive {
  color:#b5b4b3
}
.hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);
  gap:18px;
  margin-bottom:34px
}
.panel {
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px;
  overflow:hidden
}
.panel-padding {
  padding:23px
}
.panel-header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  padding:23px 24px 15px;
  gap:15px
}
.panel-kicker {
  color:#807f7e;
  font-size:8px;
  letter-spacing:.13em;
  text-transform:uppercase;
  margin-bottom:10px
}
.asset-title {
  display:flex;
  gap:10px;
  align-items:center
}
.coin-icon {
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#333231;
  color:var(--lime);
  font-size:17px;
  font-weight:500;
  flex-shrink:0;
  border:1px solid #d2d1d022
}
.coin-icon.large {
  width:42px;
  height:42px;
  font-size:23px
}
.asset-title h3 {
  font-size:14px;
  letter-spacing:0
}
.asset-title small {
  font-size:10px;
  color:#848382
}
.asset-symbol {
  color:#747372;
  font-size:10px;
  margin-left:8px;
  letter-spacing:.025em
}
.tag {
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:8px;
  letter-spacing:.04em;
  border-radius:4px;
  white-space:nowrap;
  padding:4px 6px;
  color:#a9a8a7;
  background:#282726;
  border:1px solid #373635;
  line-height:1.2
}
.tag-green {
  color:#c2c1c0;
  background:#2d2c2b;
  border-color:#434241
}
.tag-purple {
  color:#b6b8e1;
  background:#272837;
  border-color:#3c3d50
}
.tag-amber {
  color:#b1b0af;
  background:#2c2b2a;
  border-color:#3c3b3a
}
.price-line {
  display:flex;
  align-items:baseline;
  gap:12px;
  padding:0 24px
}
.price-main {
  font-size:26px;
  letter-spacing:-.05em;
  font-variant-numeric:tabular-nums
}
.price-unit {
  font-size:10px;
  color:#81807f;
  margin-left:4px;
  letter-spacing:0
}
.positive {
  color:#c3c2c1
}
.negative {
  color:#a5a4a3
}
.change {
  font-size:10px
}
.market-chart {
  margin:9px 6px 0 11px
}
.main-chart {
  width:100%;
  height:auto;
  overflow:visible;
  min-height:110px
}
.chart-foot {
  display:flex;
  justify-content:space-between;
  padding:0 23px 17px;
  color:#6c6b6a;
  font-size:8px;
  letter-spacing:.03em
}
.chart-caption {
  border-top:1px solid var(--line);
  padding:11px 22px;
  font-size:9px;
  color:#8b8a89;
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:space-between
}
.chart-caption button {
  font-size:10px;
  color:#bab9b8;
  border:0;
  background:none
}
.vault-panel {
  padding:23px;
  display:flex;
  flex-direction:column
}
.vault-panel .panel-kicker {
  margin-bottom:9px
}
.vault-header {
  display:flex;
  justify-content:space-between;
  align-items:center
}
.vault-header h3 {
  font-size:17px
}
.vault-graphic {
  display:flex;
  align-items:center;
  gap:25px;
  padding:21px 0 20px
}
.ring {
  width:110px;
  height:110px;
  flex-shrink:0
}
.ring-number {
  font-size:20px;
  fill:#dedddc;
  letter-spacing:-1px
}
.ring-label {
  font-size:7px;
  fill:#898887;
  text-transform:uppercase;
  letter-spacing:1px
}
.legend {
  display:grid;
  gap:10px;
  width:100%
}
.legend-item {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:9px;
  color:#8e8d8c
}
.legend-dot {
  width:6px;
  height:6px;
  border-radius:1px;
  display:inline-block;
  flex-shrink:0
}
.legend-item strong {
  margin-left:auto;
  font-size:10px;
  color:#cecdcc;
  font-weight:500
}
.vault-note {
  font-size:10px;
  color:#888786;
  line-height:1.8;
  padding-top:16px;
  margin-top:auto;
  border-top:1px solid var(--line)
}
.section-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  margin-bottom:18px
}
.section-title {
  display:flex;
  gap:12px;
  align-items:center
}
.section-title h2 {
  font-size:20px
}
.count-tag {
  font-size:9px;
  color:#9c9b9a;
  border:1px solid #3b3a39;
  border-radius:4px;
  padding:2px 6px
}
.filter-group {
  display:flex;
  gap:4px;
  flex-wrap:wrap
}
.filter-button {
  background:transparent;
  border:1px solid transparent;
  border-radius:5px;
  color:#858483;
  padding:6px 10px;
  font-size:10px
}
.filter-button.active {
  background:#2a2928;
  color:#cdcccb;
  border-color:#3e3d3c
}
.filter-button:hover {
  color:#e2e1e0
}
.table-tools {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  border-bottom:1px solid var(--line);
  padding:12px 15px
}
.search-box {
  display:flex;
  gap:9px;
  align-items:center;
  color:#6f6e6d;
  width:250px;
  font-size:17px
}
.search-box input {
  background:transparent;
  border:0;
  border-radius:0;
  padding:3px;
  font-size:10px;
  color:#b9b8b7;
  width:100%;
  outline-offset:2px;
  min-height:26px
}
.table-note {
  font-size:9px;
  color:#81807f
}
.table-scroll {
  overflow-x:auto
}
.market-table {
  border-collapse:collapse;
  width:100%;
  text-align:left;
  white-space:nowrap
}
.market-table th {
  padding:11px 17px;
  color:#6c6b6a;
  font-size:8px;
  font-weight:500;
  letter-spacing:.04em;
  border-bottom:1px solid var(--line)
}
.market-table td {
  padding:16px 17px;
  border-bottom:1px solid #292827;
  font-size:11px;
  color:#c7c6c5;
  font-variant-numeric:tabular-nums
}
.market-table tr:last-child td {
  border:0
}
.market-table tbody tr:hover {
  background:#242322
}
.market-table .asset-title {
  min-width:125px
}
.market-table .asset-title h3 {
  font-size:11px
}
.market-table .asset-title small {
  font-size:9px
}
.market-table button {
  background:transparent;
  border:0;
  padding:0;
  color:inherit;
  text-align:left;
  font:inherit
}
.market-table td.change {
  font-size:10px
}
.market-table .positive {
  color:#c3c2c1
}
.market-table .negative {
  color:#a5a4a3
}
.market-table .num,.market-table th.num {
  text-align:right
}
.sparkline {
  width:94px;
  height:29px
}
.cell-link {
  font-size:17px!important;
  color:#747372!important;
  min-width:22px;
  min-height:30px
}
.table-bottom {
  padding:11px 17px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  color:#6a6968;
  font-size:8px
}
.lab-layout {
  display:grid;
  grid-template-columns:270px minmax(0,1fr);
  gap:20px;
  align-items:start
}
.lab-controls {
  padding:22px
}
.lab-controls h3 {
  margin-bottom:21px
}
.lab-controls label {
  font-size:10px;
  margin-top:18px
}
.lab-controls input,.lab-controls select {
  font-size:12px
}
.lab-controls .button {
  margin-top:24px
}
.lab-controls .control-help {
  font-size:9px;
  color:#81807f;
  margin-top:7px;
  line-height:1.7
}
.control-value {
  float:right;
  color:#cccbca
}
.range-control {
  accent-color:var(--lime);
  padding:0;
  margin-top:12px;
  min-height:20px
}
.scenario-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
  margin:10px 0
}
.scenario-button {
  background:#191817;
  border:1px solid #333231;
  border-radius:5px;
  padding:9px 6px;
  font-size:10px;
  color:#969594
}
.scenario-button.active {
  background:#333231;
  color:var(--lime);
  border-color:#585756
}
.scenario-button:last-child {
  grid-column:span 2
}
.lab-main {
  min-width:0
}
.lab-chart-header {
  padding:22px 23px 0;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center
}
.lab-chart-header h3 {
  font-size:15px
}
.segmented {
  display:flex;
  background:#181716;
  padding:3px;
  border:1px solid #363534;
  border-radius:6px
}
.segmented button {
  font-size:9px;
  background:transparent;
  border:0;
  color:#888786;
  padding:5px 8px;
  border-radius:3px
}
.segmented button.active {
  background:#31302f;
  color:#d8d7d6
}
.lab-chart-wrap {
  padding:20px 13px 0
}
.chart-legend {
  display:flex;
  flex-wrap:wrap;
  gap:9px 15px;
  padding:12px 22px 21px;
  font-size:9px;
  color:#a2a1a0
}
.chart-legend span {
  display:flex;
  align-items:center;
  gap:6px
}
.callout {
  border-left:2px solid #959493;
  background:#232221;
  padding:16px 18px;
  border-radius:0 5px 5px 0;
  color:#b1b0af;
  font-size:11px;
  line-height:1.8;
  margin:18px 0
}
.callout strong {
  color:#d8d7d6;
  font-weight:500
}
.callout-warning {
  border-color:#959493;
  background:#232221;
  color:#a5a4a3
}
.policy-table th,.policy-table td {
  padding:12px 13px
}
.policy-table td:first-child {
  font-size:10px
}
.policy-name {
  display:flex;
  gap:7px;
  align-items:center
}
.baseline-label {
  display:block;
  font-size:8px;
  color:#7c7b7a;
  margin-left:13px;
  margin-top:3px
}
.lab-assumptions {
  padding:18px 22px;
  font-size:10px;
  color:#949392;
  margin-top:18px
}
.lab-assumptions summary {
  cursor:pointer;
  color:#c1c0bf;
  font-size:11px
}
.lab-assumptions ul {
  padding-left:17px;
  margin:12px 0 0;
  line-height:1.8
}
.empty-state {
  text-align:center;
  padding:70px 30px;
  color:#999897
}
.empty-state .empty-icon {
  font-size:36px;
  color:#d2d1d0;
  margin-bottom:15px
}
.empty-state h2 {
  font-size:24px;
  color:#dcdbda
}
.empty-state p {
  font-size:12px;
  max-width:430px;
  margin:12px auto 25px;
  line-height:1.8
}
.empty-chart {
  padding:80px 20px;
  text-align:center;
  color:#898887;
  font-size:12px
}
.loading-state {
  padding:100px 20px;
  text-align:center;
  color:#8f8e8d;
  font-size:12px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px
}
.loader {
  display:inline-block;
  width:14px;
  height:14px;
  border:1.5px solid #3d3c3b;
  border-top-color:var(--lime);
  border-radius:50%;
  animation:spin .75s linear infinite
}
@keyframes spin {
  to {
    transform:rotate(360deg)
  }
}
.draft-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.draft-card {
  padding:23px
}
.draft-card .asset-title {
  margin-bottom:18px
}
.draft-card p {
  font-size:11px;
  color:#979695;
  min-height:50px;
  margin:15px 0
}
.draft-card .draft-meta {
  display:flex;
  justify-content:space-between;
  font-size:9px;
  color:#7a7978;
  margin-top:22px;
  padding-top:14px;
  border-top:1px solid var(--line)
}
.activity-list {
  padding:0 22px
}
.activity-item {
  display:grid;
  grid-template-columns:32px 1fr auto;
  gap:12px;
  padding:21px 0;
  border-bottom:1px solid var(--line);
  align-items:start
}
.activity-item:last-child {
  border:0
}
.activity-icon {
  height:29px;
  width:29px;
  display:grid;
  place-items:center;
  border:1px solid #4a4948;
  background:#2d2c2b;
  border-radius:50%;
  color:#bcbbba;
  font-size:12px
}
.activity-item h3 {
  font-size:12px;
  letter-spacing:0
}
.activity-item p {
  font-size:10px;
  color:#888786;
  margin-top:5px;
  overflow-wrap:anywhere
}
.activity-time {
  font-size:9px;
  color:#71706f
}
.system-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px
}
.system-grid .panel {
  padding:24px
}
.system-grid h3 {
  margin-bottom:14px
}
.system-grid p {
  font-size:11px;
  line-height:1.9;
  color:#999897
}
.system-grid ul {
  font-size:11px;
  line-height:1.9;
  color:#afaead;
  padding-left:18px
}
.architecture-flow {
  display:flex;
  align-items:center;
  gap:12px;
  padding:25px 0;
  flex-wrap:wrap
}
.flow-node {
  padding:15px 20px;
  background:#262524;
  border:1px solid #4a4948;
  border-radius:7px;
  flex:1;
  min-width:140px;
  font-size:12px;
  color:#d8d7d6
}
.flow-node small {
  display:block;
  color:#939291;
  margin-top:5px;
  font-size:10px
}
.flow-arrow {
  color:#7a7978
}
.code-block {
  max-height:350px;
  overflow:auto;
  padding:18px;
  background:#141312;
  border:1px solid #323130;
  border-radius:6px;
  font:10px/1.8 ui-monospace,Consolas,monospace;
  color:#acabaa;
  white-space:pre-wrap;
  overflow-wrap:anywhere
}
.system-wide {
  grid-column:1/-1
}
.system-links {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px
}
.muted {
  color:var(--muted)
}
footer {
  padding:18px 40px;
  border-top:1px solid var(--line);
  font-size:8px;
  color:#6a6968;
  display:flex;
  justify-content:space-between;
  gap:15px
}
dialog {
  border:1px solid #4d4c4b;
  background:#1d1c1b;
  color:var(--text);
  border-radius:14px;
  padding:29px;
  max-width:550px;
  width:calc(100% - 32px);
  max-height:90vh;
  box-shadow:0 30px 100px #0008;
  overflow:auto
}
dialog::backdrop {
  background:#0a0908c9;
  backdrop-filter:blur(5px)
}
.dialog-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:22px
}
dialog h2 {
  font-size:27px;
  margin-bottom:10px
}
dialog p.muted {
  font-size:11px;
  line-height:1.8;
  margin-bottom:23px
}
label {
  display:block;
  font-size:11px;
  color:#b0afae;
  margin-top:15px
}
input,select,textarea {
  width:100%;
  display:block;
  margin-top:7px;
  background:#171615;
  border:1px solid #3d3c3b;
  color:#dddcdb;
  border-radius:5px;
  padding:10px 12px;
  font-size:12px;
  min-height:40px
}
textarea {
  resize:vertical
}
input::placeholder,textarea::placeholder {
  color:#696867
}
input[type=radio] {
  width:14px;
  height:14px;
  min-height:0;
  accent-color:var(--lime);
  margin:0;
  flex-shrink:0
}
fieldset {
  border:0;
  padding:0;
  margin:23px 0 0
}
legend {
  font-size:11px;
  color:#b0afae;
  margin-bottom:5px
}
.form-row {
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:14px
}
.radio-card {
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px;
  border:1px solid #403f3e;
  border-radius:7px;
  margin-top:8px;
  cursor:pointer
}
.radio-card:has(input:checked) {
  border-color:#767574;
  background:#2d2c2b
}
.radio-card strong {
  font-size:11px;
  font-weight:500;
  color:#d8d7d6
}
.radio-card small {
  display:block;
  font-size:9px;
  color:#8f8e8d;
  margin-top:4px
}
.radio-card .tag {
  margin-left:auto;
  font-size:7px
}
.form-note {
  font-size:9px;
  line-height:1.8;
  color:#858483;
  margin:20px 0 15px
}
.form-error {
  font-size:11px;
  color:#b9b8b7;
  min-height:1em;
  margin-bottom:10px
}
#market-dialog {
  max-width:780px
}
.detail-metrics {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px;
  margin:25px 0
}
.detail-metrics .metric {
  padding-left:15px
}
.detail-metrics .metric:first-child {
  padding-left:0
}
.detail-metrics .metric-value {
  font-size:22px
}
.detail-section {
  margin-top:25px;
  padding-top:20px;
  border-top:1px solid var(--line)
}
.detail-section h3 {
  margin-bottom:15px
}
.proposal-controls {
  display:flex;
  gap:10px;
  align-items:end
}
.proposal-controls label {
  flex:1
}
.proposal-controls .button {
  margin-bottom:0;
  white-space:nowrap
}
.proposal-result {
  font-size:11px;
  line-height:1.8;
  margin-top:16px;
  white-space:pre-line
}
.depth-bars {
  display:grid;
  gap:7px
}
.depth-row {
  display:grid;
  grid-template-columns:80px 1fr 60px;
  align-items:center;
  gap:12px;
  font-size:9px;
  color:#9c9b9a
}
.bar-track {
  height:7px;
  border-radius:2px;
  background:#302f2e;
  overflow:hidden
}
.bar-fill {
  height:100%;
  background:#a5a4a3;
  border-radius:2px
}
.skip {
  position:fixed;
  left:20px;
  top:-100px;
  background:var(--lime);
  color:#1c1b1a;
  padding:12px;
  z-index:100
}
.skip:focus {
  top:10px
}
#toast {
  position:fixed;
  bottom:25px;
  left:50%;
  transform:translate(-50%,20px);
  background:#dbdad9;
  color:#201f1e;
  border:1px solid #e8e7e6;
  border-radius:7px;
  padding:12px 22px;
  font-size:12px;
  z-index:80;
  opacity:0;
  pointer-events:none;
  transition:.2s;
  max-width:90vw;
  box-shadow:0 8px 50px #0008
}
#toast.visible {
  opacity:1;
  transform:translate(-50%,0)
}
.error-panel {
  padding:30px;
  border:1px solid #484746;
  border-radius:8px;
  color:#b6b5b4;
  background:#1f1e1d;
  font-size:12px;
  line-height:1.8
}
.error-panel strong {
  display:block;
  margin-bottom:8px
}
.visually-hidden {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
@media(min-width:1600px) {
  main {
    padding-top:52px
  }
  .hero-grid {
    grid-template-columns:1.85fr 1fr
  }
  .market-chart {
    margin-top:17px
  }
  .vault-graphic {
    padding:30px 0
  }
  .ring {
    width:130px;
    height:130px
  }
  .panel-header {
    padding-top:27px
  }
  .vault-panel {
    padding:27px
  }
}
@media(max-width:1200px) {
  .sidebar {
    width:190px;
    padding-left:13px;
    padding-right:13px
  }
  .workspace {
    margin-left:190px;
    width:calc(100% - 190px)
  }
  .topbar {
    padding:0 26px
  }
  main {
    padding:32px 26px
  }
  .hero-grid {
    grid-template-columns:1.35fr 1fr
  }
  .vault-graphic {
    gap:13px
  }
  .ring {
    width:88px;
    height:88px
  }
  .legend-item {
    font-size:8px
  }
  .lab-layout {
    grid-template-columns:235px minmax(0,1fr)
  }
  .draft-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .market-table td,.market-table th {
    padding-left:12px;
    padding-right:12px
  }
  .price-main {
    font-size:23px
  }
  footer {
    padding-left:26px;
    padding-right:26px
  }
}
@media(max-width:950px) {
  .sidebar {
    width:76px;
    padding:25px 10px 15px
  }
  .brand {
    font-size:0;
    gap:0;
    justify-content:center;
    padding:0
  }
  .brand-dot,.network,.nav-label,.sidebar-note,.sidebar-bottom {
    display:none
  }
  .sidebar nav {
    margin-top:36px;
    gap:10px
  }
  .sidebar nav a {
    font-size:0;
    padding:13px;
    justify-content:center;
    gap:0
  }
  .nav-icon {
    font-size:22px
  }
  .nav-arrow {
    display:none
  }
  .workspace {
    margin-left:76px;
    width:calc(100% - 76px)
  }
  .hero-grid {
    grid-template-columns:1.3fr 1fr
  }
  .vault-panel {
    padding:20px
  }
  .vault-graphic {
    flex-direction:column;
    gap:17px;
    align-items:stretch;
    padding:15px 0
  }
  .ring {
    width:90px;
    height:90px;
    align-self:center
  }
  .legend {
    gap:6px
  }
  .legend-item {
    font-size:9px
  }
  .heading-meta {
    display:none
  }
  .page-heading p {
    max-width:100%
  }
  .lab-layout {
    grid-template-columns:210px minmax(0,1fr)
  }
  .lab-controls {
    padding:17px
  }
  .lab-chart-header {
    padding:18px 16px 0
  }
  .policy-table {
    min-width:620px
  }
  .lab-chart-header h3 {
    font-size:12px
  }
}
@media(max-width:720px) {
  .topbar {
    height:68px;
    padding:0 20px
  }
  .prototype-tag {
    display:none
  }
  main {
    padding:28px 20px
  }
  .hero-grid {
    grid-template-columns:1fr
  }
  .vault-graphic {
    flex-direction:row;
    align-items:center;
    gap:28px
  }
  .ring {
    width:112px;
    height:112px
  }
  .vault-panel {
    padding:22px
  }
  .vault-note {
    padding-top:12px
  }
  .metric-strip {
    grid-template-columns:repeat(2,1fr);
    gap:18px 0
  }
  .metric:nth-child(3) {
    border:0;
    padding-left:0
  }
  .metric-value {
    font-size:23px
  }
  .lab-layout {
    grid-template-columns:1fr
  }
  .lab-controls {
    padding:20px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 20px
  }
  .lab-controls h3,.lab-controls .scenario-section,.lab-controls .control-help,.lab-controls .button {
    grid-column:1/-1
  }
  .scenario-grid {
    grid-template-columns:repeat(5,1fr)
  }
  .scenario-button:last-child {
    grid-column:auto
  }
  .lab-controls label {
    margin-top:15px
  }
  .section-row {
    align-items:flex-start;
    flex-direction:column
  }
  .table-tools {
    flex-wrap:wrap
  }
  .table-note {
    display:none
  }
  .search-box {
    width:100%
  }
  .draft-grid,.system-grid {
    grid-template-columns:1fr
  }
  .page-heading h1 {
    font-size:36px
  }
  .top-actions {
    gap:10px
  }
  .breadcrumb {
    gap:9px;
    font-size:10px
  }
  .panel-header {
    padding:20px 20px 15px
  }
  .price-line {
    padding:0 20px
  }
  .table-bottom span:last-child {
    display:none
  }
  footer {
    padding:16px 20px;
    flex-direction:column;
    gap:5px
  }
  .system-wide {
    grid-column:auto
  }
  .activity-time {
    font-size:8px
  }
  .detail-metrics {
    grid-template-columns:1fr 1fr
  }
  .detail-metrics .metric {
    border:0;
    padding:0
  }
  .proposal-controls {
    flex-wrap:wrap
  }
  .proposal-controls .button {
    width:100%
  }
}
@media(max-width:450px) {
  .sidebar {
    width:57px;
    padding:24px 5px
  }
  .sidebar nav a {
    padding:12px 8px
  }
  .brand img {
    width:29px;
    height:29px
  }
  .workspace {
    margin-left:57px;
    width:calc(100% - 57px)
  }
  .topbar {
    padding:0 14px
  }
  .topbar .button {
    font-size:9px;
    padding:8px 10px;
    gap:10px
  }
  .breadcrumb>span {
    display:none
  }
  main {
    padding:24px 14px
  }
  .page-heading h1 {
    font-size:33px
  }
  .page-heading p {
    font-size:11px
  }
  .metric-label {
    font-size:9px
  }
  .metric {
    padding-left:16px
  }
  .scenario-button {
    font-size:9px
  }
  .lab-controls {
    padding:17px;
    gap:0 12px
  }
  .segmented button {
    font-size:8px;
    padding:5px 7px
  }
  .lab-chart-header {
    padding:17px 13px 0
  }
  .form-row {
    grid-template-columns:1fr
  }
  .radio-card .tag {
    display:none
  }
  .dialog-top {
    gap:15px
  }
  .vault-graphic {
    gap:18px
  }
  .ring {
    width:98px;
    height:98px
  }
  .filter-button {
    padding:6px 8px
  }
  .activity-list {
    padding:0 16px
  }
  .activity-item {
    grid-template-columns:26px 1fr
  }
  .activity-time {
    grid-column:2
  }
  .chart-foot {
    font-size:7px
  }
  dialog {
    padding:22px
  }
}
@media(prefers-reduced-motion:reduce) {
  * {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important
  }
}
