
:root{
  --pv-bg:#0b0d11;
  --pv-bg-2:#0f1218;
  --pv-panel:rgba(20,23,30,.88);
  --pv-panel-2:rgba(255,255,255,.04);
  --pv-panel-3:rgba(255,255,255,.025);
  --pv-text:rgba(255,255,255,.96);
  --pv-muted:rgba(255,255,255,.68);
  --pv-muted-2:rgba(255,255,255,.52);
  --pv-line:rgba(255,255,255,.10);
  --pv-line-2:rgba(255,255,255,.08);
  --pv-accent:#ff8a00;
  --pv-accent-2:#ffb454;
  --pv-shadow:0 20px 60px rgba(0,0,0,.35);
  --pv-radius-xl:24px;
  --pv-radius-lg:18px;
  --pv-radius-md:14px;
  --pv-radius-sm:12px;
  --pv-content:1200px;
  --pv-content-narrow:960px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  min-width:168px;
  padding:0 18px;
  border-radius:14px;
  border:1px solid transparent;
  text-decoration:none;
  font-weight:800;
  letter-spacing:-0.01em;
  transition:transform .12s ease, background .18s ease, border-color .18s ease, opacity .18s ease;
}

.btn:active{
  transform:translateY(1px);
}

.btn:disabled,
.btn[aria-disabled="true"]{
  opacity:.55;
  cursor:not-allowed;
}

.btn-primary{
  background:linear-gradient(180deg, var(--pv-accent-2), var(--pv-accent));
  color:#16120d;
  box-shadow:0 10px 26px rgba(255,138,0,.22);
}

.btn-ghost{
  border-color:var(--pv-line);
  background:rgba(255,255,255,.03);
  color:var(--pv-text);
}

.btn-ghost:hover{
  border-color:rgba(255,138,0,.35);
}

.btn-sm{
  min-height:40px;
  min-width:unset;
  padding-inline:14px;
  border-radius:12px;
  font-size:14px;
}

.btn-lg{
  min-height:54px;
  min-width:190px;
}

.card{
  border:1px solid var(--pv-line);
  border-radius:20px;
  background:rgba(255,255,255,.03);
  box-shadow:var(--pv-shadow);
}

.card__body{
  padding:20px;
}

.panel{
  border:1px solid var(--pv-line);
  border-radius:24px;
  background:rgba(255,255,255,.03);
  box-shadow:var(--pv-shadow);
  overflow:hidden;
}

.panel__topline{
  height:2px;
  background:linear-gradient(90deg, var(--pv-accent), var(--pv-accent-2));
}

.panel__inner{
  padding:24px;
}

.chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding-inline:12px;
  border-radius:999px;
  border:1px solid var(--pv-line);
  background:rgba(255,255,255,.03);
  color:var(--pv-muted);
  font-size:13px;
  line-height:1;
}

.badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding-inline:10px;
  border-radius:999px;
  background:rgba(255,138,0,.16);
  color:var(--pv-accent-2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.callout{
  padding:20px;
  border:1px solid var(--pv-line);
  border-radius:18px;
  background:rgba(255,255,255,.03);
}

.callout__title{
  margin:0 0 10px;
  font-size:18px;
  letter-spacing:-0.02em;
}

.callout__text{
  color:var(--pv-muted);
  line-height:1.7;
}

.tableCard{
  border:1px solid var(--pv-line);
  border-radius:20px;
  overflow:hidden;
  background:rgba(255,255,255,.03);
}

.tableCard__row{
  display:grid;
  grid-template-columns:minmax(120px, 220px) minmax(0,1fr);
  gap:20px;
  padding:16px 18px;
  border-top:1px solid var(--pv-line-2);
}

.tableCard__row:first-child{
  border-top:0;
}

.tableCard__k{
  color:var(--pv-text);
  font-weight:700;
}

.tableCard__v{
  color:var(--pv-muted);
}

.kicker{
  margin:0 0 10px;
  font-size:12px;
  line-height:1;
  letter-spacing:.16em;
  color:var(--pv-accent-2);
  font-weight:700;
  text-transform:uppercase;
}

.copyBox{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:48px;
  padding:10px 12px 10px 14px;
  border:1px solid var(--pv-line);
  border-radius:14px;
  background:rgba(255,255,255,.03);
}

.copyBox__value{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--pv-text);
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:13px;
}

.dragScroll{
  display:flex;
  gap:16px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  padding-bottom:6px;
}

.dragScroll::-webkit-scrollbar{
  display:none;
}

.dragScroll > *{
  flex:0 0 auto;
  scroll-snap-align:start;
}

[data-reveal]{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .45s ease, transform .45s ease;
}

[data-reveal].is-revealed{
  opacity:1;
  transform:translateY(0);
}