:root {
  --bg: #1d2733;
  --bg-2: #18222d;
  --panel: #243142;
  --panel-soft: #304155;
  --line: rgba(255, 255, 255, 0.1);
  --text: #f4f7fb;
  --muted: #a8b6c8;
  --muted-2: #7d8ca0;
  --blue: #4baeff;
  --green: #59d65c;
  --green-soft: #163728;
  --amber: #ffb336;
  --violet: #a86cff;
  --cyan: #59d8ff;
  --red: #ff5f67;
  --shadow: 0 24px 48px rgba(8, 14, 24, 0.26);
}

.p2psm-body {
  min-height: 100vh;
  margin: 0;
  background: #07111f;
  color: #eef6ff;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2psm-body * {
  box-sizing: border-box;
}

.p2psm-app {
  width: min(100%, 480px);
  min-height: 100vh;
  margin: 0 auto;
  padding: 18px 14px 86px;
  background: #0d1726;
}

.p2psm-head,
.p2psm-section-title,
.p2psm-dispute,
.p2psm-wallet-card,
.p2psm-dialog header,
.p2psm-reply,
.p2psm-bottom {
  display: flex;
  align-items: center;
}

.p2psm-head {
  justify-content: space-between;
  gap: 12px;
  padding: 6px 2px 20px;
}

.p2psm-head span,
.p2psm-section-title span,
.p2psm-dispute span,
.p2psm-wallet-card span,
.p2psm-dialog header span,
.p2psm-chat .msg span {
  color: rgba(238, 246, 255, 0.55);
  font-size: 12px;
  font-weight: 800;
}

.p2psm-head h1,
.p2psm-section-title h2 {
  margin: 0;
  color: #fff;
  letter-spacing: 0;
}

.p2psm-head h1 {
  margin-top: 4px;
  font-size: 25px;
  line-height: 1;
}

.p2psm-head strong {
  max-width: 180px;
  padding: 9px 11px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  overflow: hidden;
  color: #dbeafe;
  background: rgba(255, 255, 255, 0.05);
  font-size: 13px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.p2psm-view {
  display: none;
}

.p2psm-view.is-active {
  display: block;
}

.p2psm-section-title {
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.p2psm-section-title h2 {
  font-size: 20px;
}

.p2psm-dispute,
.p2psm-wallet-card {
  width: 100%;
  min-height: 74px;
  margin: 0 0 10px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 14px;
  justify-content: space-between;
  gap: 12px;
  background: #111e30;
  color: inherit;
  text-align: left;
}

.p2psm-dispute {
  border-left: 4px solid #38bdf8;
}

.p2psm-dispute.danger {
  border-left-color: #fb7185;
}

.p2psm-dispute.warn,
.p2psm-wallet-card.warn {
  border-left-color: #fbbf24;
}

.p2psm-wallet-card.blocked {
  border-left-color: #fb7185;
}

.p2psm-dispute strong,
.p2psm-dispute span,
.p2psm-wallet-card strong,
.p2psm-wallet-card span {
  display: block;
}

.p2psm-dispute strong,
.p2psm-wallet-card strong,
.p2psm-dialog header strong {
  color: #fff;
  font-size: 15px;
  font-weight: 900;
}

.p2psm-dispute span,
.p2psm-wallet-card span {
  margin-top: 5px;
}

.p2psm-dispute-body {
  width: 100%;
  min-width: 0;
}

.p2psm-dispute-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.p2psm-dispute-tools {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.p2psm-dispute-tools button {
  min-width: 48px;
  height: 30px;
  border: 1px solid rgba(56, 189, 248, 0.22);
  border-radius: 10px;
  padding: 0 9px;
  color: #e0f2fe;
  background: rgba(56, 189, 248, 0.12);
  font-size: 12px;
  font-weight: 950;
}

.p2psm-dispute-tools button + button {
  color: #fef3c7;
  border-color: rgba(251, 191, 36, 0.24);
  background: rgba(251, 191, 36, 0.11);
}

.p2psm-dispute-top b {
  flex: 0 0 auto;
  color: #bfdbfe;
  font-size: 13px;
  font-weight: 900;
}

.p2psm-dispute small {
  margin-top: 4px;
  display: block;
  color: rgba(238, 246, 255, 0.56);
  font-size: 12px;
  font-weight: 800;
}

.p2psm-dispute-meta {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.p2psm-dispute-meta em {
  max-width: 100%;
  padding: 4px 7px;
  border-radius: 999px;
  display: inline-flex;
  color: rgba(238, 246, 255, 0.8);
  background: rgba(255, 255, 255, 0.07);
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.p2psm-dispute-meta em.claimant {
  color: #e0f2fe;
  background: rgba(14, 165, 233, 0.2);
}

.p2psm-dispute-meta em.reason {
  color: #fde68a;
  background: rgba(251, 191, 36, 0.13);
}

.p2psm-dispute-meta em.status {
  color: #bbf7d0;
  background: rgba(34, 197, 94, 0.14);
}

.p2psm-dispute b,
.p2psm-wallet-card b {
  flex: 0 0 auto;
  color: #bfdbfe;
  font-size: 13px;
  font-weight: 900;
}

.p2psm-wallet-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.p2psm-wallet-card button,
.p2psm-reply button {
  min-height: 36px;
  border: 0;
  border-radius: 10px;
  color: #06111f;
  background: #38bdf8;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}

.p2psm-wallet-card button {
  padding: 0 12px;
}

.p2psm-wallet-card button:disabled {
  color: rgba(238, 246, 255, 0.46);
  background: rgba(255, 255, 255, 0.08);
  cursor: not-allowed;
}

.p2psm-wallet-rail {
  margin: 0 -14px 12px;
  padding: 0 14px 4px;
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: none;
}

.p2psm-wallet-rail::-webkit-scrollbar {
  display: none;
}

.p2psm-wallet-rail button {
  min-width: 118px;
  min-height: 58px;
  padding: 9px 10px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: 14px;
  flex: 0 0 auto;
  color: #eaf5ff;
  background: #111e30;
  text-align: left;
}

.p2psm-wallet-rail button.warn {
  border-color: rgba(251, 191, 36, 0.38);
  background: rgba(251, 191, 36, 0.1);
}

.p2psm-wallet-rail button.blocked {
  border-color: rgba(251, 113, 133, 0.42);
  background: rgba(251, 113, 133, 0.1);
}

.p2psm-wallet-rail button.active {
  border-color: rgba(56, 189, 248, 0.72);
  box-shadow: inset 0 0 0 1px rgba(56, 189, 248, 0.2);
}

.p2psm-wallet-rail strong,
.p2psm-wallet-rail span {
  display: block;
}

.p2psm-wallet-rail strong {
  color: #fff;
  font-size: 13px;
  font-weight: 950;
}

.p2psm-wallet-rail span {
  margin-top: 4px;
  color: rgba(238, 246, 255, 0.54);
  font-size: 11px;
  font-weight: 850;
}

.p2psm-period-tabs {
  margin: 12px 0;
  padding: 5px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 5px;
  background: rgba(15, 23, 42, 0.52);
}

.p2psm-period-tabs button {
  min-height: 36px;
  border: 0;
  border-radius: 12px;
  color: rgba(238, 246, 255, 0.58);
  background: transparent;
  font-size: 12px;
  font-weight: 950;
}

.p2psm-period-tabs button.active {
  color: #06111f;
  background: #38bdf8;
}

.p2psm-earnings-summary {
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid rgba(56, 189, 248, 0.18);
  border-radius: 16px;
  background: rgba(8, 47, 73, 0.26);
}

.p2psm-earnings-summary strong,
.p2psm-earnings-summary span {
  display: block;
}

.p2psm-earnings-summary strong {
  color: #f8fafc;
  font-size: 14px;
  font-weight: 950;
}

.p2psm-earnings-total {
  display: block;
  margin-top: 6px;
  color: #38bdf8;
  font-size: 20px;
  font-weight: 980;
  letter-spacing: 0;
}

.p2psm-earnings-summary span {
  margin-top: 4px;
  color: rgba(186, 230, 253, 0.7);
  font-size: 11px;
  font-weight: 820;
}

.p2psm-earnings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.p2psm-earning-card {
  min-width: 0;
  min-height: 92px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: 16px;
  display: grid;
  align-content: center;
  background: #111e30;
}

.p2psm-earning-card strong,
.p2psm-earning-card b,
.p2psm-earning-card span {
  display: block;
}

.p2psm-earning-card strong {
  color: rgba(186, 230, 253, 0.84);
  font-size: 12px;
  font-weight: 950;
}

.p2psm-earning-card b {
  margin-top: 6px;
  color: #f8fafc;
  font-size: 16px;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.p2psm-earning-card span {
  margin-top: 5px;
  color: rgba(238, 246, 255, 0.44);
  font-size: 10px;
  font-weight: 850;
}

.p2psm-wallet-group {
  margin: 0 0 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-left: 4px solid #38bdf8;
  border-radius: 15px;
  overflow: hidden;
  background: #111e30;
}

.p2psm-wallet-group.warn {
  border-left-color: #fbbf24;
}

.p2psm-wallet-group.blocked {
  border-left-color: #fb7185;
}

.p2psm-wallet-group-head {
  min-height: 66px;
  padding: 13px 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  background: rgba(255, 255, 255, 0.035);
}

.p2psm-wallet-group-head strong,
.p2psm-wallet-group-head span,
.p2psm-wallet-route strong,
.p2psm-wallet-route span {
  display: block;
}

.p2psm-wallet-group-head strong {
  color: #fff;
  font-size: 15px;
  font-weight: 950;
}

.p2psm-wallet-kind {
  display: inline-block;
  margin-top: 5px;
  color: rgba(125, 211, 252, 0.72);
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.p2psm-wallet-group-head span {
  margin-top: 5px;
  color: rgba(238, 246, 255, 0.56);
  font-size: 12px;
  font-weight: 850;
}

.p2psm-wallet-address-note {
  display: block;
  margin-top: 6px;
  color: rgba(125, 211, 252, 0.72);
  font-size: 10px;
  font-weight: 760;
  line-height: 1.25;
}

.p2psm-wallet-group-head button {
  min-height: 36px;
  padding: 0 12px;
  border: 0;
  border-radius: 10px;
  color: #06111f;
  background: #38bdf8;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}

.p2psm-wallet-group-head button:disabled {
  color: rgba(238, 246, 255, 0.46);
  background: rgba(255, 255, 255, 0.08);
  cursor: not-allowed;
}

.p2psm-gas-panel {
  min-height: 58px;
  padding: 10px 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  background: rgba(34, 197, 94, 0.07);
}

.p2psm-gas-panel.blocked {
  background: rgba(251, 191, 36, 0.1);
}

.p2psm-gas-panel strong,
.p2psm-gas-panel span {
  display: block;
}

.p2psm-gas-panel strong {
  color: #dcfce7;
  font-size: 13px;
  font-weight: 950;
}

.p2psm-gas-panel span {
  margin-top: 4px;
  color: rgba(238, 246, 255, 0.58);
  font-size: 11px;
  font-weight: 850;
}

.p2psm-gas-panel b {
  color: #bbf7d0;
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}

.p2psm-gas-panel.blocked b {
  color: #fde68a;
}

.p2psm-wallet-routes {
  display: grid;
}

.p2psm-wallet-route {
  min-height: 54px;
  padding: 10px 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.p2psm-wallet-route strong {
  color: #edf7ff;
  font-size: 13px;
  font-weight: 920;
}

.p2psm-wallet-route span {
  margin-top: 3px;
  color: rgba(238, 246, 255, 0.48);
  font-size: 11px;
  font-weight: 850;
}

.p2psm-wallet-route b {
  color: #bfdbfe;
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}

.p2psm-route-right {
  display: grid;
  justify-items: end;
  gap: 2px;
}

.p2psm-route-right small {
  color: rgba(238, 246, 255, 0.42);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2psm-wallet-route.blocked b {
  color: #fecdd3;
}

.p2psm-wallet-route.warn b {
  color: #fde68a;
}

.p2psm-wallet-levels {
  padding: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.14);
  display: grid;
  gap: 10px;
  background: rgba(6, 17, 31, 0.38);
}

.p2psm-wallet-levels-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: baseline;
}

.p2psm-wallet-levels-head strong {
  color: #eef6ff;
  font-size: 13px;
  font-weight: 950;
}

.p2psm-wallet-levels-head span {
  color: rgba(238, 246, 255, 0.42);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2psm-fuel-card {
  min-height: 82px;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: 14px;
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  background: rgba(15, 23, 42, 0.62);
}

.p2psm-fuel-gauge {
  position: relative;
  width: 116px;
  height: 72px;
  overflow: hidden;
}

.p2psm-fuel-arc {
  position: absolute;
  left: 12px;
  top: 8px;
  width: 92px;
  height: 92px;
  border: 11px solid rgba(148, 163, 184, 0.26);
  border-bottom-color: transparent;
  border-left-color: #fb7185;
  border-top-color: #fbbf24;
  border-right-color: #22c55e;
  border-radius: 50%;
  transform: rotate(45deg);
}

.p2psm-fuel-arc::before {
  content: "";
  position: absolute;
  inset: 13px;
  border-radius: 50%;
  background: #0f1b2e;
}

.p2psm-fuel-needle {
  position: absolute;
  left: 56px;
  top: 20px;
  width: 4px;
  height: 43px;
  border-radius: 999px 999px 2px 2px;
  background: #f8fafc;
  box-shadow: 0 0 10px rgba(248, 250, 252, 0.28);
  transform-origin: 50% 42px;
  transition: transform 180ms ease;
}

.p2psm-fuel-card.low .p2psm-fuel-needle {
  background: #fb7185;
}

.p2psm-fuel-card.warn .p2psm-fuel-needle,
.p2psm-fuel-card.unknown .p2psm-fuel-needle {
  background: #fbbf24;
}

.p2psm-fuel-card.ok .p2psm-fuel-needle,
.p2psm-fuel-card.over .p2psm-fuel-needle {
  background: #38bdf8;
}

.p2psm-fuel-knob {
  position: absolute;
  left: 48px;
  top: 56px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #f8fafc;
  box-shadow: 0 0 0 5px rgba(15, 23, 42, 0.72);
}

.p2psm-fuel-e,
.p2psm-fuel-f {
  position: absolute;
  top: 56px;
  color: rgba(248, 250, 252, 0.82);
  font-size: 13px;
  font-weight: 950;
}

.p2psm-fuel-e {
  left: 2px;
}

.p2psm-fuel-f {
  right: 2px;
}

.p2psm-fuel-info {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.p2psm-fuel-info-top {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}

.p2psm-fuel-info strong {
  color: #eef6ff;
  font-size: 14px;
  font-weight: 950;
}

.p2psm-fuel-info b {
  color: rgba(238, 246, 255, 0.52);
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}

.p2psm-fuel-info span {
  color: #f8fafc;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.p2psm-fuel-info small {
  color: rgba(238, 246, 255, 0.46);
  font-size: 10px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.p2psm-empty {
  min-height: 72px;
  padding: 18px 14px;
  border: 1px dashed rgba(148, 163, 184, 0.22);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(238, 246, 255, 0.54);
  background: rgba(255, 255, 255, 0.035);
  font-size: 13px;
  font-weight: 850;
}

.p2psm-bottom {
  position: fixed;
  right: max(12px, calc((100vw - 480px) / 2 + 12px));
  bottom: max(10px, env(safe-area-inset-bottom));
  left: max(12px, calc((100vw - 480px) / 2 + 12px));
  z-index: 20;
  width: min(calc(100% - 24px), 456px);
  margin: 0 auto;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 18px;
  gap: 8px;
  background: rgba(10, 19, 32, 0.94);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.36);
  backdrop-filter: blur(14px);
}

.p2psm-bottom button {
  min-height: 48px;
  border: 0;
  border-radius: 13px;
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: rgba(238, 246, 255, 0.56);
  background: transparent;
  font-size: 13px;
  font-weight: 950;
  cursor: pointer;
}

.p2psm-bottom button.active {
  color: #e0f2fe;
  background: rgba(56, 189, 248, 0.16);
}

.p2psm-bottom i {
  width: 21px;
  height: 21px;
  display: inline-block;
  background: currentColor;
  mask: var(--icon-mask) center / contain no-repeat;
  -webkit-mask: var(--icon-mask) center / contain no-repeat;
}

.p2psm-modal {
  position: fixed;
  inset: 0;
  z-index: 30;
  display: none;
  align-items: flex-start;
  justify-content: center;
  padding: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));
  background: rgba(2, 6, 23, 0.72);
}

.p2psm-modal.is-open {
  display: flex;
}

.p2psm-dialog {
  width: min(100%, 480px);
  max-height: calc(100vh - max(24px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)));
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 20px 20px 16px 16px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #0f1b2d;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.52);
}

.p2psm-control-dialog {
  overflow: auto;
}

.p2psm-chat-dialog {
  height: calc(100vh - max(24px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)));
}

.p2psm-dialog header {
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
}

.p2psm-dialog header button {
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 11px;
  color: #e5eefb;
  background: rgba(255, 255, 255, 0.08);
  font-size: 22px;
  cursor: pointer;
}

.p2psm-dispute-context {
  flex: 0 0 auto;
  padding: 10px 12px;
  overflow: visible;
  background: #0d1829;
}

.p2psm-case-panel {
  display: grid;
  gap: 8px;
}

.p2psm-case-head,
.p2psm-case-note {
  padding: 10px;
  border: 1px solid rgba(56, 189, 248, 0.2);
  border-radius: 12px;
  background: rgba(56, 189, 248, 0.09);
}

.p2psm-case-head strong,
.p2psm-case-head span,
.p2psm-case-note span,
.p2psm-case-note b {
  display: block;
}

.p2psm-case-head strong {
  color: #e0f2fe;
  font-size: 13px;
  font-weight: 950;
}

.p2psm-case-head span {
  margin-top: 4px;
  color: rgba(238, 246, 255, 0.72);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.p2psm-case-sides,
.p2psm-case-facts {
  display: grid;
  gap: 6px;
}

.p2psm-case-sides {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.p2psm-case-row {
  min-width: 0;
  padding: 8px 10px;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.045);
}

.p2psm-case-row span,
.p2psm-case-note span {
  color: rgba(238, 246, 255, 0.42);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2psm-case-row b,
.p2psm-case-note b {
  margin-top: 3px;
  color: #eef6ff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}

.p2psm-case-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.p2psm-case-actions button {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 0;
  border-radius: 11px;
  color: #07111f;
  font-size: 13px;
  font-weight: 950;
}

.p2psm-case-actions button.primary {
  background: #38bdf8;
}

.p2psm-case-actions button.danger {
  color: #fff;
  background: #fb7185;
}

.p2psm-case-actions button:disabled {
  opacity: 0.55;
}

.p2psm-chat-shell {
  flex: 0 1 auto;
  min-height: 0;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
  background: #0a1423;
}

.p2psm-chat-shell.is-open {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.p2psm-chat-toggle {
  width: 100%;
  min-height: 52px;
  border: 0;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  text-align: left;
  color: #e5eefb;
  background: #0f1b2d;
  font: inherit;
}

.p2psm-chat-toggle span,
.p2psm-chat-toggle strong,
.p2psm-chat-toggle small {
  display: block;
}

.p2psm-chat-toggle strong {
  font-size: 14px;
  font-weight: 950;
}

.p2psm-chat-toggle small {
  margin-top: 2px;
  color: rgba(238, 246, 255, 0.52);
  font-size: 11px;
  font-weight: 800;
}

.p2psm-chat-toggle b {
  min-width: 34px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: #08111f;
  background: #38bdf8;
  font-size: 13px;
  font-weight: 950;
}

.p2psm-chat-shell:not(.is-open) .p2psm-chat,
.p2psm-chat-shell:not(.is-open) .p2psm-reply {
  display: none;
}

.p2psm-chat {
  flex: 1 1 auto;
  min-height: 0;
  padding: 14px;
  overflow: auto;
  background: #0a1423;
}

.p2psm-chat .msg {
  max-width: 84%;
  margin: 0 0 10px;
  padding: 10px 12px;
  border-radius: 14px;
  background: #162337;
}

.p2psm-chat .msg.seller {
  margin-left: auto;
  background: #1c2b43;
}

.p2psm-chat .msg.system {
  max-width: 100%;
  background: rgba(251, 191, 36, 0.11);
}

.p2psm-chat .msg.admin,
.p2psm-chat .msg.operator {
  margin-left: auto;
  color: #f5f3ff;
  background: #6d28d9;
}

.p2psm-chat .msg.admin span,
.p2psm-chat .msg.operator span {
  color: rgba(255, 255, 255, 0.76);
}

.p2psm-chat .msg p {
  margin: 5px 0 0;
  color: inherit;
  font-size: 14px;
  line-height: 1.45;
}

.p2psm-chat-attachment {
  margin: 8px 0 0;
}

.p2psm-chat-attachment img {
  display: block;
  width: min(100%, 300px);
  max-height: 360px;
  object-fit: contain;
  border-radius: 10px;
  background: rgba(2, 6, 23, 0.35);
}

.p2psm-chat-attachment figcaption {
  margin-top: 6px;
  color: inherit;
  font-size: 12px;
  font-weight: 800;
  opacity: 0.82;
  overflow-wrap: anywhere;
}

.p2psm-reply {
  gap: 8px;
  padding: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.14);
  background: #0f1b2d;
}

.p2psm-reply input {
  width: 100%;
  min-height: 42px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 12px;
  padding: 0 12px;
  outline: none;
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  font: inherit;
}

.p2psm-reply button {
  padding: 0 14px;
}

.p2psm-reply button:disabled {
  opacity: 0.58;
  cursor: wait;
}

@media (min-width: 720px) {
  .p2psm-app {
    margin-top: 18px;
    margin-bottom: 18px;
    min-height: calc(100vh - 36px);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 24px;
  }

  .p2psm-modal {
    align-items: center;
  }
}

.p2pw-body {
  min-height: 100vh;
  margin: 0;
  background: #0e141f;
  color: #eef4fb;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pw-top {
  min-height: 66px;
  padding: 0 16px;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  background: #111a28;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.p2pw-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2pw-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #38bdf8;
  color: #08111c;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-brand strong,
.p2pw-brand small {
  display: block;
}

.p2pw-brand strong {
  color: #fff;
  font-size: 16px;
  line-height: 1.1;
}

.p2pw-brand small {
  margin-top: 3px;
  color: rgba(238, 244, 251, 0.58);
  font-size: 12px;
  font-weight: 800;
}

.p2pw-search {
  min-height: 40px;
  padding: 0 12px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.07);
  color: rgba(238, 244, 251, 0.5);
  font-size: 13px;
  font-weight: 800;
}

.p2pw-operator {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  font-size: 13px;
  font-weight: 850;
}

.p2pw-layout {
  height: calc(100vh - 66px);
  min-height: 680px;
  padding: 12px;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr) 340px;
  gap: 12px;
}

.p2pw-queue,
.p2pw-main,
.p2pw-panel,
.p2pw-chat,
.p2pw-actions {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: #151f2f;
}

.p2pw-queue,
.p2pw-main,
.p2pw-panel,
.p2pw-chat,
.p2pw-actions {
  padding: 14px;
}

.p2pw-section-head,
.p2pw-ticket-line,
.p2pw-case-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.p2pw-section-head h1,
.p2pw-section-head h2,
.p2pw-case-head h2,
.p2pw-panel h2 {
  margin: 0;
  color: #fff;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2pw-section-head h1 {
  font-size: 18px;
}

.p2pw-section-head h2,
.p2pw-panel h2 {
  font-size: 16px;
}

.p2pw-case-head h2 {
  margin-top: 5px;
  font-size: 23px;
}

.p2pw-section-head b {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 244, 251, 0.62);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-tabs {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 5px;
}

.p2pw-tabs button {
  min-height: 32px;
  border: 0;
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.06);
  color: rgba(238, 244, 251, 0.62);
  font: inherit;
  font-size: 12px;
  font-weight: 850;
}

.p2pw-tabs button.active {
  background: #38bdf8;
  color: #08111c;
}

.p2pw-ticket {
  margin-top: 9px;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 4px solid #64748b;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
}

.p2pw-ticket.active {
  border-left-color: #ef4444;
  background: rgba(239, 68, 68, 0.09);
}

.p2pw-ticket strong {
  color: #fff;
  font-size: 14px;
}

.p2pw-ticket-line span {
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 244, 251, 0.68);
  font-size: 11px;
  font-weight: 950;
}

.p2pw-ticket-line span.danger {
  background: rgba(239, 68, 68, 0.18);
  color: #fecaca;
}

.p2pw-ticket-line span.warn {
  background: rgba(245, 158, 11, 0.16);
  color: #fde68a;
}

.p2pw-ticket p {
  margin: 9px 0 0;
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  line-height: 1.42;
}

.p2pw-ticket small {
  display: block;
  margin-top: 8px;
  color: rgba(238, 244, 251, 0.48);
  font-size: 12px;
  font-weight: 800;
}

.p2pw-main {
  min-width: 0;
  overflow: auto;
}

.p2pw-case-head {
  align-items: center;
}

.p2pw-case-head > div > span {
  color: rgba(238, 244, 251, 0.5);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-case-head p {
  margin: 7px 0 0;
  color: rgba(238, 244, 251, 0.68);
  font-size: 14px;
  line-height: 1.45;
}

.p2pw-sla {
  min-width: 92px;
  padding: 10px;
  border-radius: 8px;
  background: rgba(239, 68, 68, 0.12);
  text-align: center;
}

.p2pw-sla small,
.p2pw-sla strong {
  display: block;
}

.p2pw-sla small {
  color: #fecaca;
  font-size: 11px;
  font-weight: 950;
}

.p2pw-sla strong {
  margin-top: 4px;
  color: #fff;
  font-size: 18px;
}

.p2pw-summary {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.p2pw-summary article {
  min-height: 74px;
  padding: 10px;
  border-radius: 8px;
  display: grid;
  align-content: center;
  gap: 4px;
  background: rgba(255, 255, 255, 0.055);
}

.p2pw-summary small,
.p2pw-summary strong {
  display: block;
}

.p2pw-summary small {
  color: rgba(238, 244, 251, 0.5);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-summary strong {
  color: #fff;
  font-size: 14px;
}

.p2pw-chat,
.p2pw-actions {
  margin-top: 12px;
}

.p2pw-message {
  width: min(76%, 580px);
  margin-top: 10px;
  padding: 11px 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.07);
}

.p2pw-message.seller {
  margin-left: auto;
  background: rgba(56, 189, 248, 0.11);
}

.p2pw-message.system {
  margin-left: auto;
  margin-right: auto;
  background: rgba(245, 158, 11, 0.12);
}

.p2pw-message span,
.p2pw-message p {
  display: block;
}

.p2pw-message span {
  color: rgba(238, 244, 251, 0.52);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-message p {
  margin: 5px 0 0;
  color: #eef4fb;
  font-size: 14px;
  line-height: 1.45;
}

.p2pw-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.p2pw-actions .p2pw-section-head {
  grid-column: 1 / -1;
}

.p2pw-actions button {
  min-height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
  color: rgba(238, 244, 251, 0.5);
  font: inherit;
  font-size: 13px;
  font-weight: 850;
}

.p2pw-context {
  min-width: 0;
  display: grid;
  gap: 12px;
  align-content: start;
  overflow: auto;
}

.p2pw-person,
.p2pw-proof,
.p2pw-wallet {
  margin-top: 8px;
  padding: 10px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
}

.p2pw-person small,
.p2pw-person strong,
.p2pw-person span,
.p2pw-wallet span,
.p2pw-wallet strong,
.p2pw-wallet small {
  display: block;
}

.p2pw-person small {
  color: rgba(238, 244, 251, 0.48);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-person strong,
.p2pw-wallet strong {
  margin-top: 4px;
  color: #fff;
  font-size: 14px;
}

.p2pw-person span,
.p2pw-wallet small {
  margin-top: 4px;
  color: rgba(238, 244, 251, 0.58);
  font-size: 12px;
}

.p2pw-proof {
  color: rgba(238, 244, 251, 0.74);
  font-size: 13px;
  font-weight: 850;
}

.p2pw-proof.ok {
  background: rgba(34, 197, 94, 0.12);
}

.p2pw-proof.warn,
.p2pw-wallet.warn {
  background: rgba(245, 158, 11, 0.12);
}

.p2pw-wallet span {
  color: rgba(238, 244, 251, 0.5);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pw-wallet.ok {
  background: rgba(34, 197, 94, 0.12);
}

.p2pw-safe {
  background: #1b2534;
}

.p2pw-safe h2 {
  color: #fff;
}

.p2pw-safe p {
  margin: 9px 0 0;
  color: rgba(238, 244, 251, 0.68);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .p2pw-top,
  .p2pw-layout {
    grid-template-columns: 1fr;
    height: auto;
  }

  .p2pw-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .p2pw-layout {
    padding: 10px;
  }

  .p2pw-case-head,
  .p2pw-actions,
  .p2pw-summary {
    grid-template-columns: 1fr;
  }

  .p2pw-message {
    width: auto;
  }
}

.p2pg-body {
  min-height: 100vh;
  margin: 0;
  background: #dfe7f1;
  color: #172033;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pg-app {
  width: min(100%, 460px);
  min-height: 100vh;
  margin: 0 auto;
  padding: 14px 12px 84px;
  background: #f8fafc;
}

.p2pg-header {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.p2pg-header span {
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pg-header h1 {
  margin: 2px 0 0;
  color: #172033;
  font-size: 27px;
  line-height: 1.1;
  letter-spacing: 0;
}

.p2pg-header a {
  min-height: 36px;
  padding: 0 13px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #229ed9;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}

.p2pg-alert {
  margin-top: 14px;
  padding: 14px;
  border-radius: 14px;
  background: #172033;
  color: #fff;
}

.p2pg-alert small,
.p2pg-alert strong {
  display: block;
}

.p2pg-alert small {
  color: rgba(238, 244, 251, 0.58);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pg-alert strong {
  margin-top: 4px;
  font-size: 19px;
}

.p2pg-alert p {
  margin: 7px 0 0;
  color: rgba(238, 244, 251, 0.76);
  font-size: 13px;
  line-height: 1.45;
}

.p2pg-chips {
  margin-top: 12px;
  display: flex;
  gap: 7px;
  overflow: auto;
  padding-bottom: 2px;
}

.p2pg-chips button {
  min-height: 34px;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  background: #e8eef6;
  color: #526178;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2pg-chips button.active {
  background: #229ed9;
  color: #fff;
}

.p2pg-feed {
  margin-top: 10px;
  display: grid;
  gap: 8px;
}

.p2pg-item {
  min-height: 72px;
  padding: 11px;
  border-radius: 14px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.p2pg-item-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e8eef6;
  color: #526178;
  font-size: 14px;
  font-weight: 950;
}

.p2pg-item.urgent .p2pg-item-icon {
  background: #ffe7e7;
  color: #b42318;
}

.p2pg-item.warn .p2pg-item-icon {
  background: #fff4d8;
  color: #8a5a00;
}

.p2pg-item.info .p2pg-item-icon {
  background: #e8f1ff;
  color: #2563eb;
}

.p2pg-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.p2pg-line strong {
  color: #172033;
  font-size: 14px;
  line-height: 1.25;
}

.p2pg-line span {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.p2pg-item p {
  margin: 4px 0 0;
  color: #617086;
  font-size: 12px;
  line-height: 1.35;
}

.p2pg-sheet {
  margin-top: 14px;
  padding: 8px 12px 12px;
  border-radius: 18px 18px 14px 14px;
  background: #fff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
}

.p2pg-sheet-handle {
  width: 42px;
  height: 4px;
  margin: 0 auto 12px;
  border-radius: 999px;
  background: #dbe4ef;
}

.p2pg-sheet-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.p2pg-sheet-head small {
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pg-sheet-head h2 {
  margin: 3px 0 0;
  color: #172033;
  font-size: 20px;
  line-height: 1.15;
}

.p2pg-sheet-head b {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
}

.p2pg-detail-grid {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.p2pg-detail-grid div {
  min-height: 58px;
  padding: 9px;
  border-radius: 12px;
  background: #f7fafc;
  display: grid;
  align-content: center;
  gap: 4px;
}

.p2pg-detail-grid span,
.p2pg-detail-grid strong {
  display: block;
}

.p2pg-detail-grid span {
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
}

.p2pg-detail-grid strong {
  color: #172033;
  font-size: 13px;
}

.p2pg-checklist {
  margin-top: 10px;
  display: grid;
  gap: 7px;
}

.p2pg-checklist span {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  background: #f7fafc;
  color: #526178;
  font-size: 13px;
  font-weight: 850;
}

.p2pg-bottom {
  position: fixed;
  left: 50%;
  bottom: 0;
  width: min(100%, 460px);
  min-height: 64px;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: rgba(255, 255, 255, 0.94);
  border-top: 1px solid #dbe4ef;
  backdrop-filter: blur(12px);
}

.p2pg-bottom a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
  text-decoration: none;
  font-size: 12px;
  font-weight: 900;
}

.p2pg-bottom a.active {
  color: #229ed9;
}

@media (min-width: 780px) {
  .p2pg-app {
    margin-top: 18px;
    min-height: calc(100vh - 36px);
    border-radius: 24px;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12);
  }

  .p2pg-bottom {
    bottom: 18px;
    border-radius: 0 0 24px 24px;
  }
}

.p2pt-body {
  min-height: 100vh;
  margin: 0;
  background: #101722;
  color: #eef4fb;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pt-shell {
  width: min(100%, 1360px);
  margin: 0 auto;
  padding: 18px;
}

.p2pt-header {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.p2pt-header span {
  color: rgba(238, 244, 251, 0.52);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pt-header h1 {
  margin: 5px 0 0;
  color: #fff;
  font-size: 30px;
  line-height: 1.1;
  letter-spacing: 0;
}

.p2pt-operator {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  font-size: 13px;
  font-weight: 850;
}

.p2pt-operator i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
}

.p2pt-topline {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2pt-topline article,
.p2pt-column,
.p2pt-case,
.p2pt-panel {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: #172033;
}

.p2pt-topline article {
  min-height: 92px;
  padding: 13px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pt-topline article.hot {
  border-color: rgba(239, 68, 68, 0.32);
  background: #241922;
}

.p2pt-topline small {
  color: rgba(238, 244, 251, 0.52);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pt-topline strong {
  color: #fff;
  font-size: 21px;
  line-height: 1.1;
}

.p2pt-topline span {
  color: rgba(238, 244, 251, 0.58);
  font-size: 12px;
}

.p2pt-layout {
  margin-top: 10px;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr) 300px;
  gap: 10px;
  align-items: start;
}

.p2pt-column,
.p2pt-case,
.p2pt-panel {
  padding: 14px;
}

.p2pt-column-head,
.p2pt-case-head,
.p2pt-evidence-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.p2pt-column-head h2,
.p2pt-case h2,
.p2pt-panel h2,
.p2pt-evidence h3,
.p2pt-next h3 {
  margin: 0;
  color: #fff;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2pt-column-head h2,
.p2pt-panel h2 {
  font-size: 16px;
}

.p2pt-case h2 {
  margin-top: 5px;
  font-size: 24px;
}

.p2pt-column-head b,
.p2pt-case-head b,
.p2pt-evidence-head span {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 244, 251, 0.66);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pt-priority {
  margin-top: 9px;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 4px solid #64748b;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
}

.p2pt-priority.active {
  border-left-color: #ef4444;
  background: rgba(239, 68, 68, 0.08);
}

.p2pt-priority.warn {
  border-left-color: #f59e0b;
}

.p2pt-priority div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.p2pt-priority strong,
.p2pt-priority span,
.p2pt-priority small {
  display: block;
}

.p2pt-priority strong {
  color: #fff;
  font-size: 14px;
}

.p2pt-priority span,
.p2pt-priority small {
  color: rgba(238, 244, 251, 0.56);
  font-size: 12px;
  font-weight: 800;
}

.p2pt-priority p {
  margin: 9px 0 0;
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  line-height: 1.42;
}

.p2pt-priority small {
  margin-top: 9px;
}

.p2pt-case-head > div > span {
  color: rgba(238, 244, 251, 0.52);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pt-case-head p {
  margin: 7px 0 0;
  color: rgba(238, 244, 251, 0.64);
  font-size: 14px;
  line-height: 1.45;
}

.p2pt-decision-map {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.p2pt-decision-map article,
.p2pt-next,
.p2pt-party,
.p2pt-check,
.p2pt-evidence-grid article {
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
}

.p2pt-decision-map article {
  min-height: 104px;
  padding: 12px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pt-decision-map small,
.p2pt-decision-map strong,
.p2pt-decision-map span {
  display: block;
}

.p2pt-decision-map small {
  color: rgba(238, 244, 251, 0.5);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pt-decision-map strong {
  color: #fff;
  font-size: 15px;
}

.p2pt-decision-map span {
  color: rgba(238, 244, 251, 0.62);
  font-size: 12px;
  line-height: 1.35;
}

.p2pt-evidence {
  margin-top: 14px;
}

.p2pt-evidence-grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2pt-evidence-grid article {
  min-height: 82px;
  padding: 12px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pt-evidence-grid article.warn {
  background: rgba(245, 158, 11, 0.12);
}

.p2pt-evidence-grid strong,
.p2pt-evidence-grid span {
  display: block;
}

.p2pt-evidence-grid strong {
  color: #fff;
  font-size: 14px;
}

.p2pt-evidence-grid span {
  color: rgba(238, 244, 251, 0.62);
  font-size: 12px;
}

.p2pt-next {
  margin-top: 14px;
  padding: 14px;
  background: rgba(59, 130, 246, 0.12);
}

.p2pt-next p {
  margin: 8px 0 0;
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  line-height: 1.5;
}

.p2pt-side {
  display: grid;
  gap: 10px;
}

.p2pt-party {
  margin-top: 9px;
  padding: 11px;
}

.p2pt-party small,
.p2pt-party strong,
.p2pt-party span {
  display: block;
}

.p2pt-party small {
  color: rgba(238, 244, 251, 0.48);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pt-party strong {
  margin-top: 4px;
  color: #fff;
  font-size: 14px;
}

.p2pt-party span {
  margin-top: 4px;
  color: rgba(238, 244, 251, 0.58);
  font-size: 12px;
}

.p2pt-check {
  min-height: 34px;
  margin-top: 7px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  font-weight: 800;
}

.p2pt-check.ok {
  background: rgba(34, 197, 94, 0.12);
}

.p2pt-check.warn {
  background: rgba(245, 158, 11, 0.12);
}

.p2pt-check.bad {
  background: rgba(239, 68, 68, 0.12);
}

.p2pt-safe {
  background: #1b2534;
}

.p2pt-safe p {
  margin: 9px 0 0;
  color: rgba(238, 244, 251, 0.68);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1120px) {
  .p2pt-layout {
    grid-template-columns: 1fr;
  }

  .p2pt-topline,
  .p2pt-decision-map,
  .p2pt-evidence-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .p2pt-shell {
    padding: 12px;
  }

  .p2pt-header,
  .p2pt-case-head {
    display: grid;
  }

  .p2pt-topline,
  .p2pt-decision-map,
  .p2pt-evidence-grid {
    grid-template-columns: 1fr;
  }
}

.p2ph-body {
  min-height: 100vh;
  margin: 0;
  background: #f8fafc;
  color: #172033;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2ph-shell {
  width: min(100%, 1320px);
  margin: 0 auto;
  padding: 18px;
}

.p2ph-header {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.p2ph-title span {
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2ph-title h1 {
  margin: 4px 0 0;
  color: #172033;
  font-size: 30px;
  line-height: 1.1;
  letter-spacing: 0;
}

.p2ph-operator {
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid #dbe4ef;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: #24324a;
  font-size: 13px;
  font-weight: 850;
}

.p2ph-operator i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
}

.p2ph-tabs {
  margin-top: 14px;
  padding: 5px;
  border: 1px solid #dbe4ef;
  border-radius: 8px;
  display: flex;
  gap: 5px;
  overflow: auto;
  background: #fff;
}

.p2ph-tabs a {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  color: #5f6f84;
  text-decoration: none;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2ph-tabs a.active {
  background: #172033;
  color: #fff;
}

.p2ph-tabs a[aria-disabled="true"] {
  cursor: default;
}

.p2ph-layout {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 12px;
  align-items: start;
}

.p2ph-focus,
.p2ph-list,
.p2ph-card,
.p2ph-quick article {
  border: 1px solid #dbe4ef;
  border-radius: 8px;
  background: #fff;
}

.p2ph-focus {
  min-height: 126px;
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.p2ph-focus small {
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2ph-focus h2 {
  margin: 5px 0 0;
  color: #172033;
  font-size: 26px;
  line-height: 1.15;
  letter-spacing: 0;
}

.p2ph-focus p {
  max-width: 760px;
  margin: 8px 0 0;
  color: #5f6f84;
  font-size: 14px;
  line-height: 1.45;
}

.p2ph-focus > span {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #fff1f1;
  color: #b42318;
  font-size: 13px;
  font-weight: 950;
  white-space: nowrap;
}

.p2ph-quick {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2ph-quick article {
  min-height: 86px;
  padding: 13px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2ph-quick strong {
  color: #172033;
  font-size: 28px;
  line-height: 1;
}

.p2ph-quick span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

.p2ph-list {
  margin-top: 12px;
  padding: 14px;
}

.p2ph-list-head {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.p2ph-list-head h2,
.p2ph-card h2 {
  margin: 0;
  color: #172033;
  font-size: 17px;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2ph-list-head b {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2ph-task {
  margin-top: 9px;
  padding: 13px;
  border: 1px solid #e2e9f2;
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 116px;
  gap: 12px;
  background: #fbfdff;
}

.p2ph-task.urgent {
  border-left-color: #ef4444;
  background: #fff8f8;
}

.p2ph-task.warn {
  border-left-color: #f59e0b;
  background: #fffaf0;
}

.p2ph-task.info {
  border-left-color: #3b82f6;
  background: #f5f9ff;
}

.p2ph-task-main span {
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2ph-task-main h3 {
  margin: 5px 0 0;
  color: #172033;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: 0;
}

.p2ph-task-main p {
  margin: 6px 0 0;
  color: #5f6f84;
  font-size: 13px;
  line-height: 1.4;
}

.p2ph-task-meta {
  display: grid;
  align-content: center;
  justify-items: end;
  gap: 6px;
}

.p2ph-task-meta strong {
  color: #172033;
  font-size: 13px;
}

.p2ph-task-meta small {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #526178;
  font-size: 11px;
  font-weight: 950;
}

.p2ph-context {
  display: grid;
  gap: 12px;
}

.p2ph-card {
  padding: 14px;
}

.p2ph-context-row {
  min-height: 38px;
  margin-top: 8px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #f7fafc;
}

.p2ph-context-row span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

.p2ph-context-row strong {
  color: #172033;
  font-size: 13px;
}

.p2ph-check {
  min-height: 36px;
  margin-top: 8px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: #f7fafc;
  color: #526178;
  font-size: 13px;
  font-weight: 850;
}

.p2ph-check.warn {
  background: #fff4d8;
  color: #8a5a00;
}

.p2ph-safe {
  background: #172033;
}

.p2ph-safe h2 {
  color: #fff;
}

.p2ph-safe p {
  margin: 10px 0 0;
  color: rgba(238, 244, 251, 0.74);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1040px) {
  .p2ph-layout {
    grid-template-columns: 1fr;
  }

  .p2ph-quick {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .p2ph-shell {
    padding: 12px;
  }

  .p2ph-header,
  .p2ph-focus {
    display: grid;
  }

  .p2ph-quick,
  .p2ph-task {
    grid-template-columns: 1fr;
  }

  .p2ph-task-meta {
    justify-items: start;
  }
}

.p2pf-body {
  min-height: 100vh;
  margin: 0;
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  background: #f3f6fb;
  color: #172033;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pf-rail {
  min-height: 100vh;
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  background: #172033;
  color: #eef4fb;
}

.p2pf-brand {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2pf-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #3b82f6;
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pf-brand strong,
.p2pf-brand small {
  display: block;
}

.p2pf-brand strong {
  color: #fff;
  font-size: 16px;
  line-height: 1.1;
}

.p2pf-brand small {
  margin-top: 3px;
  color: rgba(238, 244, 251, 0.58);
  font-size: 12px;
  font-weight: 800;
}

.p2pf-nav {
  display: grid;
  gap: 5px;
}

.p2pf-nav a,
.p2pf-open {
  min-height: 40px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  color: rgba(238, 244, 251, 0.66);
  text-decoration: none;
  font-size: 14px;
  font-weight: 850;
}

.p2pf-nav a.active {
  background: rgba(59, 130, 246, 0.22);
  color: #fff;
}

.p2pf-nav a[aria-disabled="true"] {
  cursor: default;
}

.p2pf-open {
  margin-top: auto;
  justify-content: center;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.p2pf-main {
  min-width: 0;
  padding: 18px;
}

.p2pf-header {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.p2pf-header span {
  color: #6d7d92;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pf-header h1 {
  margin: 4px 0 0;
  color: #172033;
  font-size: 29px;
  line-height: 1.12;
  letter-spacing: 0;
}

.p2pf-operator {
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid #dce5ef;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  background: #fff;
  color: #24324a;
  font-size: 13px;
  font-weight: 850;
}

.p2pf-ledger-strip {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2pf-ledger-strip article,
.p2pf-card {
  border: 1px solid #dce5ef;
  border-radius: 8px;
  background: #fff;
}

.p2pf-ledger-strip article {
  min-height: 96px;
  padding: 13px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pf-ledger-strip small {
  color: #6d7d92;
  font-size: 12px;
  font-weight: 850;
}

.p2pf-ledger-strip strong {
  color: #172033;
  font-size: 21px;
  line-height: 1.1;
}

.p2pf-ledger-strip span {
  color: #7d8ca0;
  font-size: 12px;
}

.p2pf-grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 10px;
  align-items: start;
}

.p2pf-card {
  padding: 14px;
}

.p2pf-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.p2pf-card-head.compact {
  align-items: center;
}

.p2pf-card h2 {
  margin: 0;
  color: #172033;
  font-size: 17px;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2pf-card p {
  margin: 5px 0 0;
  color: #6d7d92;
  font-size: 13px;
  line-height: 1.42;
}

.p2pf-card-head b {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pf-table {
  border: 1px solid #e2e9f2;
  border-radius: 8px;
  overflow: hidden;
}

.p2pf-row {
  min-height: 50px;
  padding: 9px 11px;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 0.8fr 1.1fr;
  gap: 10px;
  align-items: center;
  border-top: 1px solid #e7eef5;
  color: #526178;
  font-size: 13px;
}

.p2pf-row:first-child {
  border-top: 0;
}

.p2pf-row.head {
  min-height: 36px;
  background: #f7fafc;
  color: #7b8aa0;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pf-row.ok {
  background: #f2fbf6;
}

.p2pf-row.warn {
  background: #fff9eb;
}

.p2pf-row.bad {
  background: #fff1f1;
}

.p2pf-alert {
  margin-top: 8px;
  padding: 11px;
  border-radius: 8px;
  background: #f7fafc;
}

.p2pf-alert strong,
.p2pf-alert span {
  display: block;
}

.p2pf-alert strong {
  color: #172033;
  font-size: 13px;
}

.p2pf-alert span {
  margin-top: 4px;
  color: #6d7d92;
  font-size: 12px;
}

.p2pf-alert.ok {
  background: #f2fbf6;
}

.p2pf-alert.warn {
  background: #fff9eb;
}

.p2pf-alert.bad {
  background: #fff1f1;
}

.p2pf-fee-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2pf-fee-grid div {
  min-height: 92px;
  padding: 12px;
  border-radius: 8px;
  background: #f7fafc;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pf-fee-grid small,
.p2pf-fee-grid strong,
.p2pf-fee-grid span {
  display: block;
}

.p2pf-fee-grid small {
  color: #6d7d92;
  font-size: 12px;
  font-weight: 950;
}

.p2pf-fee-grid strong {
  color: #172033;
  font-size: 15px;
}

.p2pf-fee-grid span {
  color: #7d8ca0;
  font-size: 12px;
}

.p2pf-boundary {
  background: #172033;
}

.p2pf-boundary h2 {
  color: #fff;
}

.p2pf-boundary p {
  color: rgba(238, 244, 251, 0.74);
}

.p2pf-boundary div {
  margin-top: 12px;
  display: grid;
  gap: 7px;
}

.p2pf-boundary span {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 244, 251, 0.82);
  font-size: 12px;
  font-weight: 850;
}

@media (max-width: 1180px) {
  .p2pf-body,
  .p2pf-grid {
    grid-template-columns: 1fr;
  }

  .p2pf-rail {
    min-height: auto;
  }

  .p2pf-ledger-strip,
  .p2pf-fee-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .p2pf-main {
    padding: 12px;
  }

  .p2pf-header {
    display: grid;
  }

  .p2pf-ledger-strip,
  .p2pf-fee-grid,
  .p2pf-row,
  .p2pf-row.head {
    grid-template-columns: 1fr;
  }

  .p2pf-row.head {
    display: none;
  }
}

.p2pm-body {
  min-height: 100vh;
  margin: 0;
  background: #f7f3ea;
  color: #1f2933;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pm-header {
  min-height: 66px;
  padding: 0 18px;
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  background: #fffaf0;
  border-bottom: 1px solid #e9dfca;
}

.p2pm-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2pm-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0f766e;
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pm-brand strong,
.p2pm-brand small {
  display: block;
}

.p2pm-brand strong {
  color: #1f2933;
  font-size: 16px;
  line-height: 1.1;
}

.p2pm-brand small {
  margin-top: 3px;
  color: #7b6f5a;
  font-size: 12px;
  font-weight: 800;
}

.p2pm-nav {
  display: flex;
  gap: 5px;
  overflow: auto;
}

.p2pm-nav a {
  min-height: 36px;
  padding: 0 11px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  color: #756a58;
  text-decoration: none;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2pm-nav a.active {
  background: #1f2933;
  color: #fff;
}

.p2pm-nav a[aria-disabled="true"] {
  cursor: default;
}

.p2pm-user {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  background: #f1eadc;
  color: #3a3327;
  font-size: 13px;
  font-weight: 850;
}

.p2pm-main {
  padding: 16px;
}

.p2pm-hero {
  min-height: 120px;
  padding: 18px;
  border: 1px solid #e5d9c4;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: #fffaf0;
}

.p2pm-hero span {
  color: #897a61;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pm-hero h1 {
  margin: 5px 0 0;
  color: #1f2933;
  font-size: 30px;
  line-height: 1.12;
  letter-spacing: 0;
}

.p2pm-hero p {
  max-width: 760px;
  margin: 8px 0 0;
  color: #6f614d;
  font-size: 14px;
  line-height: 1.45;
}

.p2pm-hero a {
  min-height: 40px;
  padding: 0 13px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  background: #0f766e;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.p2pm-board {
  margin-top: 12px;
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr) 300px;
  gap: 12px;
  align-items: start;
}

.p2pm-filters,
.p2pm-market,
.p2pm-card,
.p2pm-lower article {
  border: 1px solid #e5d9c4;
  border-radius: 8px;
  background: #fffaf0;
}

.p2pm-filters,
.p2pm-market,
.p2pm-card,
.p2pm-lower article {
  padding: 14px;
}

.p2pm-filters h2,
.p2pm-market-head h2,
.p2pm-card h2,
.p2pm-lower h2 {
  margin: 0;
  color: #1f2933;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2pm-filters h2 {
  font-size: 17px;
  margin-bottom: 10px;
}

.p2pm-filters button {
  width: 100%;
  min-height: 40px;
  margin-top: 7px;
  padding: 0 10px;
  border: 0;
  border-radius: 8px;
  display: block;
  background: #f1eadc;
  color: #665942;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  text-align: left;
}

.p2pm-filters button.active {
  background: #1f2933;
  color: #fff;
}

.p2pm-market-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.p2pm-market-head h2 {
  font-size: 20px;
}

.p2pm-market-head p {
  margin: 5px 0 0;
  color: #756a58;
  font-size: 13px;
  line-height: 1.4;
}

.p2pm-market-head > span {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #f1eadc;
  color: #756a58;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pm-ad-list {
  margin-top: 13px;
  display: grid;
  gap: 9px;
}

.p2pm-ad {
  min-height: 76px;
  padding: 12px;
  border: 1px solid #eadfcb;
  border-radius: 8px;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) 140px 160px 96px;
  gap: 12px;
  align-items: center;
  background: #fffdf7;
}

.p2pm-ad.featured {
  border-color: rgba(15, 118, 110, 0.32);
  background: #f3fbf8;
}

.p2pm-ad-main strong,
.p2pm-ad-main span,
.p2pm-ad-price small,
.p2pm-ad-price b,
.p2pm-ad-limits small,
.p2pm-ad-limits b {
  display: block;
}

.p2pm-ad-main strong {
  color: #1f2933;
  font-size: 15px;
}

.p2pm-ad-main span {
  margin-top: 5px;
  color: #756a58;
  font-size: 13px;
}

.p2pm-ad-price small,
.p2pm-ad-limits small {
  color: #8a7b62;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pm-ad-price b,
.p2pm-ad-limits b {
  margin-top: 4px;
  color: #1f2933;
  font-size: 13px;
}

.p2pm-ad-status {
  min-height: 30px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #eaf7f1;
  color: #167047;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pm-ad-status.warn {
  background: #fff4d8;
  color: #8a5a00;
}

.p2pm-ad-status.bad {
  background: #ffe7e7;
  color: #b42318;
}

.p2pm-side {
  display: grid;
  gap: 12px;
}

.p2pm-card h2,
.p2pm-lower h2 {
  font-size: 17px;
}

.p2pm-score {
  margin-top: 12px;
  padding: 12px;
  border-radius: 8px;
  background: #f1eadc;
}

.p2pm-score strong,
.p2pm-score span {
  display: block;
}

.p2pm-score strong {
  color: #1f2933;
  font-size: 15px;
}

.p2pm-score span {
  margin-top: 5px;
  color: #756a58;
  font-size: 13px;
}

.p2pm-mini-row,
.p2pm-rail {
  min-height: 38px;
  margin-top: 8px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #fffdf7;
  color: #655844;
  font-size: 13px;
}

.p2pm-mini-row b {
  color: #0f766e;
  font-size: 12px;
}

.p2pm-rail {
  min-height: 48px;
  display: block;
  padding: 9px 10px;
}

.p2pm-rail b,
.p2pm-rail span {
  display: block;
}

.p2pm-rail b {
  color: #1f2933;
  font-size: 13px;
}

.p2pm-rail span {
  margin-top: 4px;
  color: #756a58;
  font-size: 12px;
}

.p2pm-lower {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.6fr);
  gap: 12px;
}

.p2pm-merchant-grid {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.p2pm-merchant-grid div {
  min-height: 78px;
  padding: 12px;
  border-radius: 8px;
  background: #fffdf7;
}

.p2pm-merchant-grid strong,
.p2pm-merchant-grid span,
.p2pm-merchant-grid b {
  display: block;
}

.p2pm-merchant-grid strong {
  color: #1f2933;
  font-size: 14px;
}

.p2pm-merchant-grid span {
  margin-top: 6px;
  color: #756a58;
  font-size: 12px;
}

.p2pm-merchant-grid b {
  margin-top: 8px;
  color: #0f766e;
  font-size: 12px;
}

.p2pm-boundary {
  background: #1f2933 !important;
}

.p2pm-boundary h2 {
  color: #fff;
}

.p2pm-boundary p {
  margin: 12px 0 0;
  color: rgba(255, 250, 240, 0.76);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .p2pm-header,
  .p2pm-board,
  .p2pm-lower {
    grid-template-columns: 1fr;
  }

  .p2pm-merchant-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .p2pm-main {
    padding: 10px;
  }

  .p2pm-hero {
    display: grid;
  }

  .p2pm-ad,
  .p2pm-merchant-grid {
    grid-template-columns: 1fr;
  }
}

.p2pa-body {
  min-height: 100vh;
  margin: 0;
  background: #edf2f7;
  color: #172033;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pa-top {
  min-height: 66px;
  padding: 0 18px;
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  background: #fff;
  border-bottom: 1px solid #dbe4ef;
}

.p2pa-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2pa-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #2563eb;
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pa-brand strong,
.p2pa-brand small {
  display: block;
}

.p2pa-brand strong {
  color: #172033;
  font-size: 16px;
  line-height: 1.1;
}

.p2pa-brand small {
  margin-top: 3px;
  color: #718197;
  font-size: 12px;
  font-weight: 800;
}

.p2pa-tabs {
  display: flex;
  gap: 5px;
  overflow: auto;
}

.p2pa-tabs a {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  color: #617086;
  text-decoration: none;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2pa-tabs a.active {
  background: #172033;
  color: #fff;
}

.p2pa-tabs a[aria-disabled="true"] {
  cursor: default;
}

.p2pa-user {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #f1f5f9;
  color: #24324a;
  font-size: 13px;
  font-weight: 850;
}

.p2pa-user i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #20b26b;
}

.p2pa-shell {
  height: calc(100vh - 66px);
  min-height: 620px;
  padding: 12px;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr) 320px;
  gap: 12px;
}

.p2pa-inbox,
.p2pa-chat,
.p2pa-context {
  min-height: 0;
}

.p2pa-inbox,
.p2pa-chat,
.p2pa-panel {
  border: 1px solid #dce5ef;
  border-radius: 8px;
  background: #fff;
}

.p2pa-inbox {
  padding: 12px;
  overflow: auto;
}

.p2pa-inbox-head,
.p2pa-thread > div,
.p2pa-chat-head,
.p2pa-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.p2pa-inbox-head h1,
.p2pa-chat-head h2,
.p2pa-panel h2 {
  margin: 0;
  color: #172033;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2pa-inbox-head h1 {
  font-size: 18px;
}

.p2pa-chat-head h2 {
  margin-top: 4px;
  font-size: 22px;
}

.p2pa-panel h2 {
  font-size: 16px;
}

.p2pa-inbox-head b,
.p2pa-panel-head span {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pa-search {
  min-height: 38px;
  margin-top: 12px;
  padding: 0 10px;
  border: 1px solid #e1e8f2;
  border-radius: 8px;
  display: flex;
  align-items: center;
  color: #8190a4;
  font-size: 12px;
  font-weight: 800;
}

.p2pa-thread {
  margin-top: 9px;
  padding: 12px;
  border: 1px solid #e2e9f2;
  border-radius: 8px;
  background: #fbfdff;
}

.p2pa-thread.active {
  border-color: #93c5fd;
  background: #f0f7ff;
}

.p2pa-thread strong,
.p2pa-thread span {
  display: block;
}

.p2pa-thread strong {
  color: #172033;
  font-size: 14px;
}

.p2pa-thread span {
  margin-top: 3px;
  color: #6d7d92;
  font-size: 12px;
  font-weight: 800;
}

.p2pa-thread b {
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #e8f1ff;
  color: #2563eb;
  font-size: 11px;
  font-weight: 950;
}

.p2pa-thread b.warn {
  background: #fff4d8;
  color: #8a5a00;
}

.p2pa-thread b.danger {
  background: #ffe7e7;
  color: #b42318;
}

.p2pa-thread b.info {
  background: #e8f1ff;
  color: #2563eb;
}

.p2pa-thread p {
  margin: 10px 0 0;
  color: #5f6f84;
  font-size: 13px;
  line-height: 1.42;
}

.p2pa-thread small {
  display: block;
  margin-top: 9px;
  color: #8492a6;
  font-size: 11px;
  font-weight: 800;
}

.p2pa-chat {
  min-width: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  overflow: hidden;
}

.p2pa-chat-head {
  padding: 14px 16px;
  border-bottom: 1px solid #e5edf5;
  align-items: center;
}

.p2pa-chat-head span {
  color: #718197;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pa-chat-state {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #eaf7f1;
  color: #167047;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.p2pa-chat-state b {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #20b26b;
}

.p2pa-deal-strip {
  padding: 10px 14px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  border-bottom: 1px solid #e5edf5;
  background: #f7fafc;
}

.p2pa-deal-strip article {
  min-height: 58px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #fff;
}

.p2pa-deal-strip small,
.p2pa-deal-strip strong {
  display: block;
}

.p2pa-deal-strip small {
  color: #718197;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pa-deal-strip strong {
  margin-top: 5px;
  color: #172033;
  font-size: 13px;
}

.p2pa-messages {
  padding: 16px;
  overflow: auto;
  background: #f3f7fb;
}

.p2pa-messages section {
  width: min(76%, 560px);
  margin-top: 10px;
  padding: 11px 12px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.p2pa-messages section:first-child {
  margin-top: 0;
}

.p2pa-messages .seller {
  margin-left: auto;
  background: #e8f1ff;
}

.p2pa-messages .system {
  width: min(86%, 640px);
  margin-left: auto;
  margin-right: auto;
  background: #fff8e8;
}

.p2pa-messages span,
.p2pa-messages p {
  display: block;
}

.p2pa-messages span {
  color: #6b7b91;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2pa-messages p {
  margin: 5px 0 0;
  color: #24324a;
  font-size: 14px;
  line-height: 1.45;
}

.p2pa-evidence-bar {
  padding: 10px;
  display: grid;
  grid-template-columns: 1.05fr repeat(3, minmax(0, 1fr));
  gap: 8px;
  border-top: 1px solid #e5edf5;
  background: #fff;
}

.p2pa-evidence-bar div {
  min-height: 52px;
  padding: 8px 10px;
  border: 1px solid #e1e8f2;
  border-radius: 8px;
  background: #fbfdff;
}

.p2pa-evidence-bar .p2pa-evidence-title {
  background: #172033;
}

.p2pa-evidence-bar .p2pa-evidence-title strong {
  color: #fff;
}

.p2pa-evidence-bar .p2pa-evidence-title span {
  color: rgba(238, 244, 251, 0.66);
}

.p2pa-evidence-bar strong,
.p2pa-evidence-bar span {
  display: block;
}

.p2pa-evidence-bar strong {
  color: #172033;
  font-size: 13px;
}

.p2pa-evidence-bar span {
  margin-top: 4px;
  color: #718197;
  font-size: 11px;
  font-weight: 800;
}

.p2pa-context {
  display: grid;
  gap: 12px;
  align-content: start;
  overflow: auto;
}

.p2pa-panel {
  padding: 14px;
}

.p2pa-party {
  margin-top: 10px;
  padding: 11px;
  border-radius: 8px;
  background: #f7fafc;
}

.p2pa-party small,
.p2pa-party strong,
.p2pa-party span {
  display: block;
}

.p2pa-party small {
  color: #718197;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pa-party strong {
  margin-top: 4px;
  color: #172033;
  font-size: 15px;
}

.p2pa-party span {
  margin-top: 4px;
  color: #617086;
  font-size: 12px;
}

.p2pa-risk {
  margin: 12px 0 0;
  padding: 0;
  display: grid;
  gap: 8px;
  list-style: none;
}

.p2pa-risk li {
  min-height: 32px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #526178;
  font-size: 13px;
}

.p2pa-risk i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #94a3b8;
}

.p2pa-risk i.ok {
  background: #20b26b;
}

.p2pa-risk i.warn {
  background: #f59e0b;
}

.p2pa-risk i.bad {
  background: #ef4444;
}

.p2pa-safe {
  background: #172033;
}

.p2pa-safe h2 {
  color: #fff;
}

.p2pa-safe .p2pa-panel-head span {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(238, 244, 251, 0.76);
}

.p2pa-safe p {
  margin: 12px 0 0;
  color: rgba(238, 244, 251, 0.74);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .p2pa-top,
  .p2pa-shell {
    grid-template-columns: 1fr;
  }

  .p2pa-shell {
    height: auto;
  }

  .p2pa-deal-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .p2pa-shell {
    padding: 10px;
  }

  .p2pa-deal-strip,
  .p2pa-evidence-bar {
    grid-template-columns: 1fr;
  }

  .p2pa-messages section {
    width: auto;
  }
}

.p2po-body {
  min-height: 100vh;
  margin: 0;
  background: #f4f6f8;
  color: #182235;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2po-header {
  min-height: 66px;
  padding: 0 18px;
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  background: #fff;
  border-bottom: 1px solid #dde5ef;
}

.p2po-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2po-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #167047;
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2po-brand strong,
.p2po-brand small {
  display: block;
}

.p2po-brand strong {
  color: #182235;
  font-size: 16px;
  line-height: 1.1;
}

.p2po-brand small {
  margin-top: 3px;
  color: #728197;
  font-size: 12px;
  font-weight: 800;
}

.p2po-nav {
  display: flex;
  gap: 4px;
  overflow: auto;
}

.p2po-nav a {
  min-height: 36px;
  padding: 0 11px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  color: #5f6f84;
  text-decoration: none;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2po-nav a.active {
  background: #182235;
  color: #fff;
}

.p2po-nav a[aria-disabled="true"] {
  cursor: default;
}

.p2po-user {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #f1f5f9;
  color: #253348;
  font-size: 13px;
  font-weight: 850;
}

.p2po-user span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #20b26b;
}

.p2po-main {
  padding: 14px;
}

.p2po-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2po-metrics article,
.p2po-sidebar,
.p2po-table-panel,
.p2po-detail,
.p2po-bottom-grid article {
  border: 1px solid #dde5ef;
  border-radius: 8px;
  background: #fff;
}

.p2po-metrics article {
  min-height: 88px;
  padding: 13px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2po-metrics small {
  color: #6f7f94;
  font-size: 12px;
  font-weight: 850;
}

.p2po-metrics strong {
  color: #182235;
  font-size: 21px;
  line-height: 1.1;
}

.p2po-metrics span {
  color: #7f8da1;
  font-size: 12px;
}

.p2po-layout {
  margin-top: 10px;
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr) 330px;
  gap: 10px;
  align-items: start;
}

.p2po-sidebar,
.p2po-table-panel,
.p2po-detail {
  padding: 13px;
}

.p2po-panel-title,
.p2po-detail-head,
.p2po-row,
.p2po-filter,
.p2po-state-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.p2po-panel-title {
  min-height: 38px;
}

.p2po-panel-title h1,
.p2po-bottom-grid h2,
.p2po-detail h2,
.p2po-detail h3 {
  margin: 0;
  color: #182235;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2po-panel-title h1 {
  font-size: 18px;
}

.p2po-panel-title p {
  margin: 4px 0 0;
  color: #6f7f94;
  font-size: 13px;
}

.p2po-panel-title b {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2po-search {
  margin-top: 10px;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid #e1e8f2;
  border-radius: 8px;
  display: flex;
  align-items: center;
  color: #8190a4;
  font-size: 12px;
  font-weight: 800;
}

.p2po-filter {
  min-height: 40px;
  margin-top: 7px;
  padding: 0 9px;
  border-radius: 8px;
  background: #f7fafc;
  color: #536379;
  font-size: 13px;
  font-weight: 850;
}

.p2po-filter.active {
  background: #eaf7f1;
  color: #167047;
}

.p2po-filter span,
.p2po-row i,
.p2po-state-line > span,
.p2po-checklist i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
  background: #64748b;
}

.p2po-filter span.warn,
.p2po-row i.warn,
.p2po-checklist i.warn {
  background: #f59e0b;
}

.p2po-filter span.bad,
.p2po-row i.bad,
.p2po-checklist i.bad {
  background: #ef4444;
}

.p2po-filter span.ok,
.p2po-row i.ok,
.p2po-state-line > span.ok,
.p2po-checklist i.ok {
  background: #20b26b;
}

.p2po-filter span.info,
.p2po-row i.info {
  background: #3b82f6;
}

.p2po-filter b {
  margin-left: auto;
  color: inherit;
  font-size: 12px;
}

.p2po-open-app {
  min-height: 40px;
  margin-top: 14px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #182235;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}

.p2po-table {
  margin-top: 12px;
  border: 1px solid #e1e8f2;
  border-radius: 8px;
  overflow: hidden;
}

.p2po-row {
  min-height: 52px;
  padding: 9px 11px;
  display: grid;
  grid-template-columns: 0.92fr 1.2fr 0.78fr 1fr 1.2fr 0.55fr;
  background: #fff;
  border-top: 1px solid #e8eef5;
  color: #526178;
  font-size: 13px;
}

.p2po-row:first-child {
  border-top: 0;
}

.p2po-row.head {
  min-height: 36px;
  background: #f7fafc;
  color: #7b8aa0;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2po-row.selected {
  background: #f2faf6;
}

.p2po-row strong,
.p2po-row small {
  display: block;
}

.p2po-row strong {
  color: #182235;
}

.p2po-row small {
  margin-top: 3px;
  color: #8b98aa;
  font-size: 11px;
}

.p2po-row i {
  margin-right: 7px;
}

.p2po-bottom-grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.p2po-bottom-grid article {
  padding: 13px;
}

.p2po-bottom-grid h2 {
  font-size: 15px;
  margin-bottom: 9px;
}

.p2po-bottom-grid article div {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid #edf2f7;
  color: #526178;
  font-size: 13px;
}

.p2po-bottom-grid article div:first-of-type {
  border-top: 0;
}

.p2po-bottom-grid b {
  color: #167047;
  font-size: 12px;
}

.p2po-detail-head {
  display: block;
}

.p2po-detail-head small,
.p2po-detail-head span {
  display: block;
  color: #6f7f94;
  font-size: 12px;
  font-weight: 850;
}

.p2po-detail-head h2 {
  margin-top: 5px;
  font-size: 24px;
}

.p2po-detail-head span {
  margin-top: 5px;
}

.p2po-detail-block {
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid #edf2f7;
}

.p2po-detail h3 {
  font-size: 14px;
  margin-bottom: 9px;
}

.p2po-state-line {
  min-height: 42px;
  padding: 0 10px;
  border-radius: 8px;
  justify-content: flex-start;
  background: #f7fafc;
}

.p2po-state-line strong,
.p2po-state-line small {
  display: block;
}

.p2po-state-line strong {
  color: #182235;
  font-size: 13px;
}

.p2po-state-line small {
  margin-left: auto;
  color: #7f8da1;
  font-size: 11px;
}

.p2po-proof {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.p2po-proof span {
  min-height: 36px;
  padding: 0 9px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: #f7fafc;
  color: #526178;
  font-size: 12px;
  font-weight: 850;
}

.p2po-checklist {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  list-style: none;
}

.p2po-checklist li {
  min-height: 30px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #526178;
  font-size: 13px;
}

.p2po-safe {
  padding: 13px;
  border: 0;
  border-radius: 8px;
  background: #182235;
}

.p2po-safe h3 {
  color: #fff;
}

.p2po-safe p {
  margin: 0;
  color: rgba(238, 244, 251, 0.74);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .p2po-header,
  .p2po-layout {
    grid-template-columns: 1fr;
  }

  .p2po-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .p2po-main {
    padding: 10px;
  }

  .p2po-metrics,
  .p2po-bottom-grid,
  .p2po-proof {
    grid-template-columns: 1fr;
  }

  .p2po-row,
  .p2po-row.head {
    grid-template-columns: 1fr;
  }

  .p2po-row.head {
    display: none;
  }
}

.p2ps-body {
  min-height: 100vh;
  margin: 0;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  background: #111827;
  color: #eef4fb;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2ps-left {
  min-height: 100vh;
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  background: #0c121c;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.p2ps-brand {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2ps-brand span {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #22c55e;
  color: #07120c;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.p2ps-brand strong {
  font-size: 16px;
}

.p2ps-nav {
  display: grid;
  gap: 5px;
}

.p2ps-nav a {
  min-height: 40px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  color: rgba(238, 244, 251, 0.6);
  text-decoration: none;
  font-size: 14px;
  font-weight: 850;
}

.p2ps-nav a.active {
  background: rgba(34, 197, 94, 0.14);
  color: #dfffee;
}

.p2ps-nav a[aria-disabled="true"] {
  cursor: default;
}

.p2ps-operator {
  margin-top: auto;
  padding: 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
}

.p2ps-operator small,
.p2ps-operator strong {
  display: block;
}

.p2ps-operator small {
  color: rgba(238, 244, 251, 0.5);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2ps-operator strong {
  margin-top: 4px;
  color: #fff;
  font-size: 13px;
}

.p2ps-main {
  min-width: 0;
  padding: 18px;
}

.p2ps-hero {
  min-height: 96px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: #172033;
}

.p2ps-hero span {
  color: rgba(238, 244, 251, 0.52);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2ps-hero h1 {
  margin: 5px 0 0;
  font-size: 30px;
  line-height: 1.1;
  letter-spacing: 0;
}

.p2ps-hero p {
  max-width: 720px;
  margin: 8px 0 0;
  color: rgba(238, 244, 251, 0.68);
  font-size: 14px;
  line-height: 1.45;
}

.p2ps-hero a {
  min-height: 40px;
  padding: 0 13px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  background: #22c55e;
  color: #07120c;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.p2ps-room {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr) minmax(280px, 0.8fr);
  gap: 12px;
}

.p2ps-trade,
.p2ps-payments,
.p2ps-evidence,
.p2ps-feed,
.p2ps-risk {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: #172033;
  padding: 16px;
}

.p2ps-trade {
  grid-row: span 2;
  min-height: 440px;
}

.p2ps-risk {
  grid-column: span 2;
  background: #202718;
  border-color: rgba(34, 197, 94, 0.18);
}

.p2ps-trade-head,
.p2ps-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.p2ps-trade-head span {
  color: rgba(238, 244, 251, 0.52);
  font-size: 12px;
  font-weight: 900;
}

.p2ps-trade h2,
.p2ps-card-head h2 {
  margin: 0;
  color: #fff;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2ps-trade h2 {
  margin-top: 4px;
  font-size: 28px;
}

.p2ps-card-head h2 {
  font-size: 17px;
}

.p2ps-trade-head b,
.p2ps-card-head span {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 244, 251, 0.68);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2ps-amount {
  margin-top: 22px;
  padding: 18px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
}

.p2ps-amount small,
.p2ps-amount strong,
.p2ps-amount span {
  display: block;
}

.p2ps-amount small {
  color: rgba(238, 244, 251, 0.52);
  font-size: 12px;
  font-weight: 900;
}

.p2ps-amount strong {
  margin-top: 6px;
  color: #fff;
  font-size: 34px;
  line-height: 1.1;
}

.p2ps-amount span {
  margin-top: 8px;
  color: rgba(238, 244, 251, 0.62);
  font-size: 13px;
}

.p2ps-steps {
  margin-top: 20px;
  display: grid;
  gap: 10px;
}

.p2ps-steps div {
  min-height: 38px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  color: rgba(238, 244, 251, 0.68);
  font-size: 13px;
  font-weight: 800;
}

.p2ps-steps i {
  width: 12px;
  height: 12px;
  border: 2px solid #64748b;
  border-radius: 50%;
  display: block;
}

.p2ps-steps .done i {
  border-color: #22c55e;
  background: #22c55e;
}

.p2ps-steps .active i {
  border-color: #f59e0b;
}

.p2ps-parties {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.p2ps-parties div,
.p2ps-field {
  padding: 12px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
}

.p2ps-parties small,
.p2ps-parties strong,
.p2ps-parties span,
.p2ps-field small,
.p2ps-field strong {
  display: block;
}

.p2ps-parties small,
.p2ps-field small {
  color: rgba(238, 244, 251, 0.5);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2ps-parties strong,
.p2ps-field strong {
  margin-top: 5px;
  color: #fff;
  font-size: 14px;
}

.p2ps-parties span {
  margin-top: 4px;
  color: rgba(238, 244, 251, 0.56);
  font-size: 12px;
}

.p2ps-field {
  margin-top: 9px;
}

.p2ps-field.warn {
  background: rgba(245, 158, 11, 0.13);
}

.p2ps-evidence-grid,
.p2ps-locks {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.p2ps-evidence-grid div,
.p2ps-locks span {
  min-height: 42px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.055);
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  font-weight: 850;
}

.p2ps-feed-list {
  margin-top: 12px;
  display: grid;
  gap: 10px;
}

.p2ps-feed-list section {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  gap: 10px;
}

.p2ps-feed-list b {
  width: 9px;
  height: 9px;
  margin-top: 4px;
  border-radius: 50%;
  background: #22c55e;
}

.p2ps-feed-list strong,
.p2ps-feed-list span {
  display: block;
}

.p2ps-feed-list strong {
  color: #fff;
  font-size: 13px;
}

.p2ps-feed-list span {
  margin-top: 3px;
  color: rgba(238, 244, 251, 0.58);
  font-size: 12px;
}

.p2ps-risk p {
  margin: 13px 0 0;
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .p2ps-body,
  .p2ps-room {
    grid-template-columns: 1fr;
  }

  .p2ps-left {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  .p2ps-risk {
    grid-column: auto;
  }
}

@media (max-width: 720px) {
  .p2ps-main {
    padding: 12px;
  }

  .p2ps-hero {
    display: grid;
  }

  .p2ps-parties,
  .p2ps-evidence-grid,
  .p2ps-locks {
    grid-template-columns: 1fr;
  }
}

.p2pc-body {
  min-height: 100vh;
  margin: 0;
  background: #eef2f7;
  color: #172033;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pc-topbar {
  min-height: 68px;
  padding: 0 18px;
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  background: #ffffff;
  border-bottom: 1px solid #dce4ee;
}

.p2pc-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p2pc-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #1f2a44;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pc-brand strong,
.p2pc-brand small {
  display: block;
}

.p2pc-brand strong {
  font-size: 16px;
  line-height: 1.1;
}

.p2pc-brand small {
  margin-top: 3px;
  color: #708097;
  font-size: 12px;
  font-weight: 800;
}

.p2pc-tabs {
  min-width: 0;
  display: flex;
  gap: 5px;
  overflow: auto;
}

.p2pc-tabs a {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  color: #64748b;
  text-decoration: none;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2pc-tabs a.active {
  background: #172033;
  color: #fff;
}

.p2pc-tabs a[aria-disabled="true"] {
  cursor: default;
}

.p2pc-user {
  min-height: 38px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #f4f7fb;
  color: #24324a;
  font-size: 13px;
  font-weight: 850;
}

.p2pc-user span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #20b26b;
}

.p2pc-shell {
  padding: 16px;
}

.p2pc-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p2pc-summary article,
.p2pc-queue,
.p2pc-dossier,
.p2pc-panel {
  border: 1px solid #dde6f0;
  border-radius: 8px;
  background: #ffffff;
}

.p2pc-summary article {
  min-height: 94px;
  padding: 14px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pc-summary small {
  color: #6b7b91;
  font-size: 12px;
  font-weight: 850;
}

.p2pc-summary strong {
  color: #172033;
  font-size: 22px;
  line-height: 1.1;
}

.p2pc-summary span {
  color: #7b8aa0;
  font-size: 12px;
}

.p2pc-workspace {
  margin-top: 10px;
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr) 310px;
  gap: 10px;
  align-items: start;
}

.p2pc-queue,
.p2pc-dossier,
.p2pc-panel {
  padding: 14px;
}

.p2pc-pane-head,
.p2pc-dossier-head,
.p2pc-panel-head,
.p2pc-case-line {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.p2pc-pane-head h1,
.p2pc-dossier-head h2,
.p2pc-panel h2 {
  margin: 0;
  color: #172033;
  line-height: 1.2;
  letter-spacing: 0;
}

.p2pc-pane-head h1 {
  font-size: 20px;
}

.p2pc-dossier-head h2 {
  margin-top: 4px;
  font-size: 22px;
}

.p2pc-panel h2 {
  font-size: 16px;
}

.p2pc-pane-head p,
.p2pc-dossier-head p {
  margin: 5px 0 0;
  color: #6b7b91;
  font-size: 13px;
  line-height: 1.4;
}

.p2pc-pane-head b,
.p2pc-panel-head span {
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #edf2f7;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pc-filterbar {
  margin-top: 12px;
  padding: 4px;
  border-radius: 8px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  background: #f1f5f9;
}

.p2pc-filterbar button {
  min-height: 32px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #64748b;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
}

.p2pc-filterbar button.active {
  background: #fff;
  color: #172033;
}

.p2pc-case {
  margin-top: 9px;
  padding: 12px;
  border: 1px solid #e1e8f2;
  border-radius: 8px;
  background: #fbfdff;
}

.p2pc-case.active {
  border-color: #8ec5ff;
  background: #f3f9ff;
}

.p2pc-case-line strong {
  color: #172033;
  font-size: 14px;
}

.p2pc-badge {
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 900;
}

.p2pc-badge.ok {
  background: #e9f8f0;
  color: #167047;
}

.p2pc-badge.warn {
  background: #fff4d8;
  color: #8a5a00;
}

.p2pc-badge.bad {
  background: #ffe8e8;
  color: #b42318;
}

.p2pc-case p {
  margin: 9px 0 0;
  color: #607086;
  font-size: 13px;
  line-height: 1.45;
}

.p2pc-case-meta {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.p2pc-case-meta span {
  min-height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #eef3f8;
  color: #65758b;
  font-size: 11px;
  font-weight: 850;
}

.p2pc-dossier {
  min-height: 616px;
}

.p2pc-dossier-head {
  align-items: center;
}

.p2pc-dossier-head span {
  color: #6b7b91;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pc-dossier-head a {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  background: #172033;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.p2pc-parties {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.p2pc-parties article {
  min-height: 92px;
  padding: 12px;
  border-radius: 8px;
  background: #f6f9fc;
  display: grid;
  align-content: center;
  gap: 5px;
}

.p2pc-parties small {
  color: #6b7b91;
  font-size: 12px;
  font-weight: 850;
}

.p2pc-parties strong {
  color: #172033;
  font-size: 17px;
}

.p2pc-parties span {
  color: #718197;
  font-size: 12px;
}

.p2pc-timeline {
  margin-top: 18px;
  display: grid;
  gap: 12px;
}

.p2pc-timeline > div {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 10px;
}

.p2pc-timeline b {
  width: 13px;
  height: 13px;
  margin-top: 3px;
  border: 3px solid #cbd5e1;
  border-radius: 50%;
  display: block;
  background: #fff;
}

.p2pc-timeline .done b {
  border-color: #20b26b;
  background: #20b26b;
}

.p2pc-timeline .active b {
  border-color: #f59e0b;
}

.p2pc-timeline section {
  min-height: 64px;
  padding: 12px;
  border-radius: 8px;
  background: #f8fafc;
}

.p2pc-timeline strong,
.p2pc-timeline span {
  display: block;
}

.p2pc-timeline strong {
  color: #172033;
  font-size: 14px;
}

.p2pc-timeline span {
  margin-top: 5px;
  color: #6b7b91;
  font-size: 13px;
}

.p2pc-side {
  display: grid;
  gap: 10px;
}

.p2pc-risk-list {
  margin: 12px 0 0;
  padding: 0;
  display: grid;
  gap: 8px;
  list-style: none;
}

.p2pc-risk-list li {
  min-height: 34px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #526178;
  font-size: 13px;
}

.p2pc-risk-list b {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #94a3b8;
}

.p2pc-risk-list b.ok {
  background: #20b26b;
}

.p2pc-risk-list b.warn {
  background: #f59e0b;
}

.p2pc-risk-list b.bad {
  background: #ef4444;
}

.p2pc-evidence {
  margin-top: 12px;
  display: grid;
  gap: 8px;
}

.p2pc-evidence span {
  min-height: 38px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: #f6f9fc;
  color: #526178;
  font-size: 13px;
  font-weight: 800;
}

.p2pc-boundary {
  background: #172033;
}

.p2pc-boundary h2 {
  color: #fff;
}

.p2pc-boundary .p2pc-panel-head span {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.75);
}

.p2pc-boundary p {
  margin: 12px 0 0;
  color: rgba(238, 244, 251, 0.76);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .p2pc-topbar,
  .p2pc-workspace {
    grid-template-columns: 1fr;
  }

  .p2pc-summary,
  .p2pc-parties {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .p2pc-shell {
    padding: 12px;
  }

  .p2pc-summary,
  .p2pc-parties,
  .p2pc-filterbar {
    grid-template-columns: 1fr;
  }

  .p2pc-dossier {
    min-height: 0;
  }

  .p2pc-dossier-head {
    display: grid;
  }
}

.p2pdesk-body {
  min-height: 100vh;
  margin: 0;
  display: grid;
  grid-template-columns: 252px minmax(0, 1fr);
  background: #f5f7fb;
  color: #162033;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.p2pdesk-sidebar {
  min-height: 100vh;
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 22px;
  background: #ffffff;
  border-right: 1px solid #e5eaf2;
}

.p2pdesk-brand {
  min-height: 50px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 8px;
}

.p2pdesk-brand > span {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #172033;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pdesk-brand strong {
  display: block;
  font-size: 17px;
  line-height: 1.1;
}

.p2pdesk-brand small {
  display: block;
  margin-top: 3px;
  color: #6b778c;
  font-size: 12px;
  font-weight: 800;
}

.p2pdesk-nav {
  display: grid;
  gap: 5px;
}

.p2pdesk-nav a,
.p2pdesk-open-app {
  min-height: 42px;
  border-radius: 8px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #5e6b80;
  text-decoration: none;
  font-size: 14px;
  font-weight: 850;
}

.p2pdesk-nav a.active {
  background: #edf7f1;
  color: #167047;
}

.p2pdesk-nav a[aria-disabled="true"] {
  cursor: default;
  opacity: 0.7;
}

.p2pdesk-nav i {
  width: 18px;
  height: 18px;
  display: inline-block;
  background: currentColor;
  mask: var(--icon-mask) center / contain no-repeat;
  -webkit-mask: var(--icon-mask) center / contain no-repeat;
}

.p2pdesk-open-app {
  margin-top: auto;
  justify-content: center;
  background: #172033;
  color: #fff;
}

.p2pdesk-main {
  min-width: 0;
  padding: 20px;
}

.p2pdesk-header {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.p2pdesk-kicker {
  color: #6b778c;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pdesk-header h1 {
  margin: 4px 0 0;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: 0;
}

.p2pdesk-operator {
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: #24324a;
  font-size: 13px;
  font-weight: 850;
}

.p2pdesk-operator span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #20b26b;
}

.p2pdesk-strip {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.p2pdesk-strip article,
.p2pdesk-column,
.p2pdesk-panel {
  border: 1px solid #e1e8f2;
  border-radius: 8px;
  background: #ffffff;
}

.p2pdesk-strip article {
  min-height: 116px;
  padding: 15px;
  display: grid;
  align-content: center;
  gap: 6px;
}

.p2pdesk-strip small {
  color: #6b778c;
  font-size: 12px;
  font-weight: 850;
}

.p2pdesk-strip strong {
  color: #162033;
  font-size: 21px;
  line-height: 1.1;
}

.p2pdesk-strip span {
  color: #778399;
  font-size: 12px;
}

.p2pdesk-board {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.p2pdesk-column {
  min-height: 456px;
  padding: 12px;
  background: #fdfefe;
}

.p2pdesk-column-head,
.p2pdesk-ticket-top,
.p2pdesk-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.p2pdesk-column-head {
  min-height: 36px;
  padding: 0 2px 9px;
}

.p2pdesk-column-head h2,
.p2pdesk-panel-head h2 {
  margin: 0;
  color: #162033;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: 0;
}

.p2pdesk-column-head b,
.p2pdesk-panel-head span {
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #f0f4f8;
  color: #627087;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.p2pdesk-ticket {
  position: relative;
  margin-top: 9px;
  padding: 13px;
  border: 1px solid #e3eaf4;
  border-left: 4px solid #c8d2df;
  border-radius: 8px;
  background: #ffffff;
}

.p2pdesk-ticket.accent-blue {
  border-left-color: #3b82f6;
}

.p2pdesk-ticket.accent-green {
  border-left-color: #22c55e;
}

.p2pdesk-ticket.accent-red {
  border-left-color: #ef4444;
}

.p2pdesk-ticket.accent-amber {
  border-left-color: #f59e0b;
}

.p2pdesk-ticket-top strong {
  color: #172033;
  font-size: 14px;
}

.p2pdesk-ticket-top span {
  color: #738094;
  font-size: 12px;
  font-weight: 900;
}

.p2pdesk-ticket p {
  margin: 10px 0 0;
  color: #5f6e83;
  font-size: 13px;
  line-height: 1.45;
}

.p2pdesk-tags {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.p2pdesk-tags span {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: #f3f6fa;
  color: #627087;
  font-size: 11px;
  font-weight: 850;
}

.p2pdesk-lower {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
  gap: 12px;
}

.p2pdesk-panel {
  padding: 16px;
}

.p2pdesk-methods {
  margin-top: 12px;
  display: grid;
  gap: 8px;
}

.p2pdesk-methods div {
  min-height: 48px;
  padding: 9px 10px;
  border-radius: 8px;
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 82px;
  gap: 10px;
  align-items: center;
  background: #f6f8fb;
  color: #5f6e83;
  font-size: 13px;
}

.p2pdesk-methods b {
  color: #162033;
}

.p2pdesk-methods strong {
  justify-self: end;
  color: #167047;
  font-size: 12px;
}

.p2pdesk-boundary {
  background: #172033;
  color: #eef4fb;
}

.p2pdesk-boundary .p2pdesk-panel-head h2 {
  color: #fff;
}

.p2pdesk-boundary .p2pdesk-panel-head span {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.72);
}

.p2pdesk-boundary p {
  margin: 14px 0 0;
  color: rgba(238, 244, 251, 0.72);
  font-size: 13px;
  line-height: 1.5;
}

.p2pdesk-checks {
  margin-top: 14px;
  display: grid;
  gap: 7px;
}

.p2pdesk-checks span {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 244, 251, 0.82);
  font-size: 12px;
  font-weight: 800;
}

@media (max-width: 1180px) {
  .p2pdesk-body,
  .p2pdesk-lower {
    grid-template-columns: 1fr;
  }

  .p2pdesk-sidebar {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid #e5eaf2;
  }

  .p2pdesk-nav,
  .p2pdesk-strip,
  .p2pdesk-board {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .p2pdesk-open-app {
    margin-top: 0;
  }
}

@media (max-width: 720px) {
  .p2pdesk-main {
    padding: 14px;
  }

  .p2pdesk-header {
    display: grid;
  }

  .p2pdesk-nav,
  .p2pdesk-strip,
  .p2pdesk-board {
    grid-template-columns: 1fr;
  }

  .p2pdesk-column {
    min-height: 0;
  }

  .p2pdesk-methods div {
    grid-template-columns: 1fr;
  }
}

.desk-body {
  min-height: 100vh;
  margin: 0;
  background: #0d1014;
  color: #edf2f7;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.desk-shell {
  width: min(100%, 1400px);
  margin: 0 auto;
  padding: 14px;
}

.desk-command,
.desk-strip,
.desk-column,
.desk-rail-card,
.desk-ticket {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: #141a21;
}

.desk-command {
  min-height: 58px;
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr) 72px;
  align-items: center;
  gap: 10px;
  padding: 8px;
}

.desk-title {
  display: grid;
  gap: 2px;
  padding: 0 8px;
}

.desk-title span {
  color: rgba(237, 242, 247, 0.55);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.desk-title strong {
  font-size: 16px;
}

.desk-command-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
}

.desk-command-tabs a,
.desk-app-link {
  min-height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(237, 242, 247, 0.66);
  text-decoration: none;
  font-size: 12px;
  font-weight: 850;
}

.desk-command-tabs a.active {
  background: #243042;
  color: #fff;
}

.desk-command-tabs a[aria-disabled="true"] {
  opacity: 0.54;
  cursor: default;
}

.desk-app-link {
  background: #2e7df0;
  color: #fff;
}

.desk-strip {
  margin-top: 10px;
  min-height: 62px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
}

.desk-strip div {
  padding: 12px;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "dot title"
    "dot text";
  column-gap: 9px;
  align-items: center;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.desk-strip div:last-child {
  border-right: 0;
}

.desk-strip strong {
  grid-area: title;
  font-size: 13px;
}

.desk-strip small {
  grid-area: text;
  color: rgba(237, 242, 247, 0.55);
  font-size: 12px;
}

.desk-dot {
  grid-area: dot;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
  background: #6f7781;
}

.desk-dot.ok {
  background: #47d18c;
}

.desk-dot.warn {
  background: #f1c75f;
}

.desk-dot.bad {
  background: #ef6f74;
}

.desk-layout {
  margin-top: 10px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 10px;
}

.desk-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.desk-column {
  min-height: 620px;
  padding: 12px;
  background: #11171e;
}

.desk-column header {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.desk-column-count {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #202b39;
  color: #8cb8ff;
  font-size: 12px;
  font-weight: 900;
}

.desk-column h2,
.desk-rail-card h2 {
  margin: 0;
  font-size: 15px;
  letter-spacing: 0;
}

.desk-ticket {
  padding: 13px;
  margin-bottom: 10px;
  background: #171f28;
  border-left: 3px solid #5f6d7b;
}

.desk-ticket.priority-high {
  border-left-color: #ef6f74;
}

.desk-ticket.priority-mid {
  border-left-color: #f1c75f;
}

.desk-ticket.priority-low {
  border-left-color: #47d18c;
}

.desk-ticket-id {
  color: rgba(237, 242, 247, 0.5);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.desk-ticket strong {
  display: block;
  margin-top: 7px;
  font-size: 15px;
}

.desk-ticket p {
  min-height: 54px;
  margin: 8px 0 12px;
  color: rgba(237, 242, 247, 0.62);
  font-size: 13px;
  line-height: 1.38;
}

.desk-ticket footer {
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  padding-top: 10px;
}

.desk-ticket footer span {
  color: rgba(237, 242, 247, 0.48);
  font-size: 12px;
}

.desk-ticket footer b {
  color: rgba(237, 242, 247, 0.84);
  font-size: 12px;
}

.desk-rail {
  display: grid;
  gap: 10px;
  align-content: start;
}

.desk-rail-card {
  padding: 14px;
}

.desk-list {
  display: grid;
  gap: 8px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}

.desk-list li {
  min-height: 38px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: rgba(255, 255, 255, 0.055);
  font-size: 13px;
}

.desk-list span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(237, 242, 247, 0.7);
}

.desk-list strong {
  font-size: 12px;
}

.desk-meter {
  margin-top: 12px;
  display: grid;
  gap: 8px;
}

.desk-meter span {
  color: rgba(237, 242, 247, 0.68);
  font-size: 13px;
}

.desk-meter b {
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, #47d18c 0%, #47d18c 62%, rgba(255, 255, 255, 0.1) 62%);
}

.desk-meter.muted b {
  background: linear-gradient(90deg, #f1c75f 0%, #f1c75f 34%, rgba(255, 255, 255, 0.1) 34%);
}

.desk-warning {
  border-color: rgba(241, 199, 95, 0.24);
  background: #1a1a17;
}

.desk-warning p {
  margin: 10px 0 0;
  color: rgba(237, 242, 247, 0.63);
  font-size: 13px;
  line-height: 1.42;
}

@media (max-width: 1120px) {
  .desk-command,
  .desk-layout,
  .desk-flow {
    grid-template-columns: 1fr;
  }

  .desk-command-tabs,
  .desk-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .desk-column {
    min-height: auto;
  }
}

@media (max-width: 680px) {
  .desk-shell {
    padding: 10px;
  }

  .desk-command-tabs,
  .desk-strip {
    grid-template-columns: 1fr;
  }

  .desk-strip div {
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  .desk-strip div:last-child {
    border-bottom: 0;
  }
}

.ops-body {
  min-height: 100vh;
  margin: 0;
  background: #101418;
  color: #eef3f7;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.ops-shell {
  width: min(100%, 1360px);
  margin: 0 auto;
  padding: 18px;
}

.ops-header {
  min-height: 64px;
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
}

.ops-brand,
.ops-user,
.ops-tabs,
.ops-statusbar,
.ops-card,
.ops-lanes article {
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: #151b21;
  border-radius: 8px;
}

.ops-brand {
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
}

.ops-brand-mark {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #2d7df0;
  font-size: 13px;
  font-weight: 900;
}

.ops-brand strong,
.ops-brand small {
  display: block;
}

.ops-brand small {
  margin-top: 2px;
  color: rgba(238, 243, 247, 0.54);
  font-size: 12px;
}

.ops-tabs {
  min-height: 56px;
  padding: 6px;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 4px;
}

.ops-tabs a {
  min-height: 42px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(238, 243, 247, 0.68);
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
}

.ops-tabs a.active {
  background: #223044;
  color: #fff;
}

.ops-tabs a[aria-disabled="true"] {
  opacity: 0.58;
  cursor: default;
}

.ops-user {
  min-height: 56px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
}

.ops-user span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #44d07b;
}

.ops-statusbar {
  margin-top: 12px;
  min-height: 68px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
}

.ops-statusbar div {
  padding: 12px 14px;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "led title"
    "led text";
  column-gap: 10px;
  align-items: center;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.ops-statusbar div:last-child {
  border-right: 0;
}

.ops-statusbar strong {
  grid-area: title;
  font-size: 14px;
}

.ops-statusbar small {
  grid-area: text;
  color: rgba(238, 243, 247, 0.56);
  font-size: 12px;
}

.ops-led {
  grid-area: led;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: inline-block;
  background: #6d7781;
}

.ops-led.ok {
  background: #44d07b;
}

.ops-led.warn {
  background: #f0c75e;
}

.ops-led.bad {
  background: #ee6b6e;
}

.ops-board {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 12px;
}

.ops-card {
  padding: 16px;
}

.ops-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
}

.ops-card-head.compact {
  align-items: center;
}

.ops-card h1,
.ops-card h2 {
  margin: 0;
  letter-spacing: 0;
}

.ops-card h1 {
  font-size: 22px;
}

.ops-card h2 {
  font-size: 16px;
}

.ops-card p {
  margin: 6px 0 0;
  color: rgba(238, 243, 247, 0.58);
  font-size: 13px;
  line-height: 1.4;
}

.ops-badge {
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: rgba(68, 208, 123, 0.12);
  color: #77e29e;
  font-size: 12px;
  font-weight: 900;
}

.ops-badge.muted {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(238, 243, 247, 0.64);
}

.ops-filterbar {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
  margin-bottom: 12px;
}

.ops-filterbar button {
  min-height: 36px;
  border: 0;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
  color: rgba(238, 243, 247, 0.72);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
}

.ops-filterbar button.active {
  background: #2d7df0;
  color: #fff;
}

.ops-data-grid {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
}

.ops-data-row {
  min-height: 54px;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 0.55fr 0.85fr 1.1fr 0.8fr 1.5fr;
  align-items: center;
  gap: 12px;
  background: #151b21;
  color: rgba(238, 243, 247, 0.76);
  font-size: 13px;
}

.ops-data-row.head {
  min-height: 38px;
  color: rgba(238, 243, 247, 0.52);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.ops-priority {
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  display: inline-block;
}

.ops-priority.high {
  background: #ee6b6e;
}

.ops-priority.mid {
  background: #f0c75e;
}

.ops-priority.low {
  background: #44d07b;
}

.ops-side {
  display: grid;
  gap: 12px;
  align-content: start;
}

.ops-matrix,
.ops-stack {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ops-matrix li,
.ops-stack div {
  min-height: 42px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: rgba(255, 255, 255, 0.055);
  color: rgba(238, 243, 247, 0.7);
  font-size: 13px;
}

.ops-matrix span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.ops-matrix strong,
.ops-stack strong {
  color: #fff;
  font-size: 13px;
}

.ops-stack span {
  color: rgba(238, 243, 247, 0.58);
}

.ops-safe {
  border-color: rgba(240, 199, 94, 0.25);
  background: #1b1c1a;
}

.ops-lanes {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.ops-lanes article {
  min-height: 120px;
  padding: 14px;
}

.ops-lane-num {
  color: #83aef5;
  font-size: 12px;
  font-weight: 900;
}

.ops-lanes strong {
  display: block;
  margin-top: 8px;
}

.ops-lanes p {
  margin: 8px 0 0;
  color: rgba(238, 243, 247, 0.58);
  font-size: 13px;
  line-height: 1.4;
}

@media (max-width: 1080px) {
  .ops-header,
  .ops-board,
  .ops-lanes {
    grid-template-columns: 1fr;
  }

  .ops-tabs,
  .ops-statusbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .ops-shell {
    padding: 12px;
  }

  .ops-tabs,
  .ops-statusbar,
  .ops-filterbar {
    grid-template-columns: 1fr;
  }

  .ops-data-grid {
    gap: 8px;
    background: transparent;
  }

  .ops-data-row,
  .ops-data-row.head {
    grid-template-columns: 1fr;
    gap: 5px;
    border-radius: 8px;
  }

  .ops-data-row.head {
    display: none;
  }
}

* {
  box-sizing: border-box;
}

html {
  touch-action: manipulation;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

html,
body {
  margin: 0;
  min-height: 100%;
  background:
    radial-gradient(circle at 50% -10%, rgba(126, 173, 239, 0.34), transparent 38%),
    linear-gradient(180deg, #2c3b4b 0%, #212d3c 100%);
  color: var(--text);
  font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
}

body {
  overflow-x: hidden;
  -webkit-tap-highlight-color: transparent;
  overscroll-behavior-x: none;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
  color: inherit;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}

a,
button,
input,
select,
textarea,
[role="button"],
[data-picker-close],
[data-history-card],
[data-wallet-action] {
  touch-action: manipulation;
}

.phone-shell {
  min-height: 100vh;
  background:
    radial-gradient(circle at top center, rgba(134, 178, 241, 0.34), transparent 34%),
    linear-gradient(180deg, #2d3c4c 0%, #223041 100%);
}

.phone-shell-p2p {
  background:
    radial-gradient(circle at top center, rgba(134, 178, 241, 0.32), transparent 34%),
    linear-gradient(180deg, #2b3a49 0%, #213041 100%);
}

.screen {
  width: min(100%, 460px);
  min-height: 100vh;
  margin: 0 auto;
  padding: 24px 18px 120px;
}

.topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.topbar-title {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.topbar-centered .topbar-title {
  margin-left: 18px;
}

.topbar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.icon-btn {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: var(--text);
}

.icon-btn-soft {
  background: rgba(255, 255, 255, 0.1);
}

.icon-btn-dark {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.08);
}

.icon-btn-plain {
  width: 26px;
  height: 26px;
  background: transparent;
  border: 0;
  font-size: 22px;
}

.p2p-picker-shell {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  align-items: end;
}

.p2p-picker-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.66);
}

.p2p-picker-sheet {
  position: relative;
  display: grid;
  gap: 14px;
  padding: 10px 16px 18px;
  border-radius: 24px 24px 0 0;
  background: #2a3646;
  box-shadow: 0 -20px 48px rgba(4, 8, 16, 0.34);
}

.p2p-picker-handle {
  width: 40px;
  height: 4px;
  margin: 0 auto;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
}

.p2p-picker-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.p2p-picker-title {
  font-size: 17px;
  font-weight: 700;
}

.p2p-picker-close {
  color: var(--violet);
  font-size: 14px;
  font-weight: 700;
}

.p2p-picker-list {
  display: grid;
  gap: 10px;
  max-height: min(56vh, 420px);
  overflow-y: auto;
  padding-bottom: 2px;
}

.p2p-picker-option {
  min-height: 52px;
  padding: 0 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.07);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: #f3f3f3;
  font-size: 15px;
  text-align: left;
}

.p2p-picker-option.active {
  box-shadow: inset 0 0 0 1px rgba(141, 66, 255, 0.6);
}

.p2p-picker-option-main {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.p2p-picker-option-leading {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 22px;
}

.p2p-picker-option-leading-img {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: block;
}

.p2p-picker-option-leading-text {
  color: #f5a340;
  font-weight: 700;
}

.p2p-picker-option-check {
  color: var(--violet);
  font-weight: 700;
}

.p2p-picker-amount {
  display: grid;
  gap: 12px;
}

.app-lock-shell {
  position: fixed;
  inset: 0;
  z-index: 1300;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(8, 14, 24, 0.74);
  backdrop-filter: blur(10px);
}

.app-lock-panel {
  width: min(100%, 420px);
  padding: 24px 18px 18px;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at top center, rgba(120, 165, 240, 0.18), transparent 42%),
    linear-gradient(180deg, #2c3b4a 0%, #223041 100%);
  box-shadow: 0 28px 64px rgba(4, 9, 18, 0.38);
  display: grid;
  gap: 14px;
  text-align: center;
}

.app-lock-badge {
  width: 68px;
  height: 68px;
  margin: 0 auto 2px;
  border-radius: 22px;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, #7acfff 0%, #4baeff 100%);
  box-shadow: 0 18px 40px rgba(32, 106, 194, 0.34);
}

.app-lock-badge-icon {
  width: 28px;
  height: 28px;
  background: rgba(255, 255, 255, 0.98);
  mask: url("/static/icons/heroicons/lock-closed.svg") center / contain no-repeat;
  -webkit-mask: url("/static/icons/heroicons/lock-closed.svg") center / contain no-repeat;
}

.app-lock-title {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.app-lock-text {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.45;
}

.app-lock-banner {
  display: block;
  margin: 2px 0;
  padding: 12px 14px;
  border-radius: 16px;
  font-size: 14px;
  line-height: 1.45;
}

.app-lock-banner.is-info {
  background: rgba(122, 207, 255, 0.14);
  color: #dff3ff;
}

.app-lock-banner.is-success {
  background: rgba(83, 204, 139, 0.16);
  color: #dff9e9;
}

.app-lock-banner.is-error {
  background: rgba(255, 104, 104, 0.16);
  color: #ffe2e2;
}

.app-lock-form {
  display: grid;
  gap: 12px;
}

.app-lock-input {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.06);
  color: var(--text);
  font-size: 18px;
  letter-spacing: 0.1em;
}

.app-lock-input::placeholder {
  color: var(--muted-2);
  letter-spacing: normal;
}

.app-lock-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.app-lock-btn {
  min-height: 48px;
  border-radius: 16px;
  font-size: 15px;
  font-weight: 700;
}

.app-lock-btn-secondary {
  background: rgba(255, 255, 255, 0.08);
}

.app-lock-btn-primary {
  background: linear-gradient(90deg, #7c4dff 0%, #d254ff 100%);
}

.app-confirm-shell {
  position: fixed;
  inset: 0;
  z-index: 1280;
  display: grid;
  place-items: end center;
  padding: 18px 14px calc(18px + env(safe-area-inset-bottom));
}

.app-confirm-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(6, 10, 18, 0.66);
  backdrop-filter: blur(10px);
}

.app-confirm-panel {
  position: relative;
  width: min(100%, 420px);
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at 18% 0%, rgba(122, 207, 255, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(38, 52, 68, 0.98) 0%, rgba(30, 42, 56, 0.98) 100%);
  box-shadow: 0 28px 70px rgba(3, 8, 16, 0.45);
  display: grid;
  gap: 12px;
  text-align: left;
}

.app-confirm-mark {
  width: 46px;
  height: 46px;
  border-radius: 17px;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, #7acfff 0%, #4baeff 100%);
  box-shadow: 0 14px 32px rgba(33, 118, 196, 0.28);
}

.app-confirm-mark-icon {
  width: 22px;
  height: 22px;
  background: rgba(255, 255, 255, 0.98);
  mask: url("/static/icons/heroicons/shield-check.svg") center / contain no-repeat;
  -webkit-mask: url("/static/icons/heroicons/shield-check.svg") center / contain no-repeat;
}

.app-confirm-title {
  font-size: 21px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.app-confirm-text {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.app-confirm-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 2px;
}

.app-confirm-btn {
  min-height: 50px;
  border-radius: 17px;
  font-size: 15px;
  font-weight: 800;
}

.app-confirm-btn-secondary {
  background: rgba(255, 255, 255, 0.08);
  color: var(--text);
}

.app-confirm-btn-primary {
  background: linear-gradient(90deg, #7c4dff 0%, #58b7ff 100%);
  color: #fff;
  box-shadow: 0 14px 30px rgba(79, 124, 235, 0.22);
}

.app-toast-shell {
  position: fixed;
  top: 18px;
  left: 16px;
  right: 16px;
  z-index: 1250;
  display: grid;
  justify-items: center;
  pointer-events: none;
}

.app-toast {
  width: min(100%, 420px);
  min-height: 64px;
  padding: 12px 14px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(33, 45, 60, 0.94);
  box-shadow:
    0 22px 48px rgba(6, 12, 22, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  color: var(--text);
  pointer-events: auto;
  text-align: left;
}

.app-toast-mark {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #8b72ff 0%, #6b93ff 100%);
  color: #fff;
  box-shadow: 0 12px 26px rgba(52, 74, 161, 0.24);
}

.app-toast-mark-icon {
  width: 18px;
  height: 18px;
  display: block;
  background: rgba(255, 255, 255, 0.96);
  mask: url("/static/icons/heroicons/chat-bubble-left-right.svg") center / contain no-repeat;
  -webkit-mask: url("/static/icons/heroicons/chat-bubble-left-right.svg") center / contain no-repeat;
}

.app-toast-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.app-toast-title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
}

.app-toast-text {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
}

.app-toast-arrow {
  color: rgba(255, 255, 255, 0.72);
  font-size: 16px;
  visibility: hidden;
}

.app-toast.has-action .app-toast-arrow {
  visibility: visible;
}

.p2p-picker-label {
  color: #adadad;
  font-size: 13px;
}

.p2p-picker-input {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border: 0;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.07);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  color: #f3f3f3;
  font: inherit;
}

.p2p-picker-input::placeholder {
  color: #7d7d7d;
}

.p2p-picker-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.p2p-picker-action {
  min-height: 52px;
  border-radius: 16px;
  font-size: 15px;
  font-weight: 700;
}

.p2p-picker-action-primary {
  background: linear-gradient(90deg, #8d42ff 0%, #b34bff 100%);
  color: #fff;
}

.p2p-picker-action-secondary {
  background: rgba(255, 255, 255, 0.06);
  color: #f3f3f3;
}

.is-hidden {
  display: none !important;
}

.launch-body,
.admin-body {
  min-height: 100vh;
  margin: 0;
  background: #10131a;
  color: #f7f8fb;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.launch-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 50% 12%, rgba(52, 116, 255, 0.24), transparent 36%),
    linear-gradient(180deg, #10131a 0%, #151b25 100%);
}

.launch-panel {
  width: min(100%, 340px);
  display: grid;
  justify-items: center;
  gap: 14px;
  text-align: center;
}

.launch-logo {
  width: 76px;
  height: 76px;
  border-radius: 24px;
  object-fit: cover;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.34);
}

.launch-spinner {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255, 255, 255, 0.18);
  border-top-color: #78a6ff;
  border-radius: 999px;
  animation: launch-spin 0.9s linear infinite;
}

@keyframes launch-spin {
  to {
    transform: rotate(360deg);
  }
}

.launch-title {
  margin: 2px 0 0;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 760;
  letter-spacing: 0;
}

.launch-text {
  margin: 0;
  color: rgba(247, 248, 251, 0.68);
  font-size: 14px;
  line-height: 1.45;
}

.launch-progress {
  width: 92px;
  height: 6px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin-top: 2px;
}

.launch-progress span {
  border-radius: 999px;
  background: rgba(120, 166, 255, 0.28);
  animation: launch-progress-pulse 1s ease-in-out infinite;
}

.launch-progress span:nth-child(2) {
  animation-delay: 0.15s;
}

.launch-progress span:nth-child(3) {
  animation-delay: 0.3s;
}

@keyframes launch-progress-pulse {
  0%,
  100% {
    opacity: 0.35;
    transform: scaleY(0.75);
  }
  50% {
    opacity: 1;
    transform: scaleY(1);
  }
}

.launch-actions {
  width: 100%;
  display: grid;
  gap: 10px;
  margin-top: 8px;
}

.launch-button {
  width: 100%;
  min-height: 48px;
  border: 0;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  color: #f7f8fb;
  font: inherit;
  font-weight: 720;
}

.launch-button-primary {
  background: #2f73ff;
}

.admin-body {
  display: grid;
  grid-template-columns: 248px minmax(0, 1fr);
  background: #0f141b;
}

.admin-sidebar {
  min-height: 100vh;
  padding: 18px 14px;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  background: #111821;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.admin-brand {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 8px;
}

.admin-brand-mark {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #2f73ff;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.admin-brand strong,
.admin-brand small {
  display: block;
}

.admin-brand strong {
  font-size: 15px;
}

.admin-brand small {
  margin-top: 2px;
  color: rgba(247, 248, 251, 0.54);
  font-size: 12px;
}

.admin-nav {
  display: grid;
  gap: 4px;
}

.admin-nav-item,
.admin-sidebar-link {
  min-height: 42px;
  border-radius: 8px;
  padding: 0 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(247, 248, 251, 0.72);
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
}

.admin-nav-item.active {
  background: rgba(47, 115, 255, 0.16);
  color: #fff;
}

.admin-nav-item.disabled {
  opacity: 0.58;
  cursor: default;
}

.admin-nav-item span {
  width: 18px;
  height: 18px;
  display: inline-block;
  background: currentColor;
  mask: var(--icon-mask) center / contain no-repeat;
  -webkit-mask: var(--icon-mask) center / contain no-repeat;
}

.admin-sidebar-link {
  margin-top: auto;
  justify-content: center;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.admin-main {
  min-width: 0;
  padding: 22px;
}

.admin-topbar,
.admin-alert-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.admin-kicker {
  margin: 0 0 6px;
  color: rgba(247, 248, 251, 0.58);
  font-size: 12px;
  text-transform: uppercase;
}

.admin-title {
  margin: 0;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: 0;
}

.admin-operator {
  min-height: 40px;
  padding: 0 12px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 255, 255, 0.08);
  font-size: 13px;
  font-weight: 700;
}

.admin-status-dot,
.admin-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
  background: #39d98a;
}

.admin-alert-strip {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid rgba(120, 166, 255, 0.22);
  border-radius: 8px;
  background: rgba(47, 115, 255, 0.1);
}

.admin-alert-strip div {
  display: grid;
  gap: 4px;
}

.admin-alert-strip strong {
  font-size: 14px;
}

.admin-alert-strip span {
  color: rgba(247, 248, 251, 0.66);
  font-size: 13px;
}

.admin-metrics {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.admin-metric,
.admin-panel {
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: #151d27;
}

.admin-metric {
  min-height: 150px;
  padding: 16px;
  display: grid;
  gap: 8px;
}

.admin-metric-icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #27384e;
  position: relative;
}

.admin-metric-icon::after {
  content: "";
  position: absolute;
  inset: 8px;
  background: #78a6ff;
  mask: var(--icon-mask) center / contain no-repeat;
  -webkit-mask: var(--icon-mask) center / contain no-repeat;
}

.admin-metric-label {
  color: rgba(247, 248, 251, 0.58);
  font-size: 13px;
}

.admin-metric-value {
  font-size: 22px;
  line-height: 1.1;
}

.admin-metric small {
  color: rgba(247, 248, 251, 0.62);
  line-height: 1.35;
}

.admin-workspace {
  margin-top: 16px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 12px;
}

.admin-panel {
  padding: 16px;
}

.admin-panel-wide {
  grid-column: span 1;
}

.admin-panel-head {
  min-height: 42px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.admin-panel-head h2 {
  margin: 0;
  font-size: 17px;
  letter-spacing: 0;
}

.admin-panel-head p {
  margin: 4px 0 0;
  color: rgba(247, 248, 251, 0.58);
  font-size: 13px;
}

.admin-pill {
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(247, 248, 251, 0.68);
  font-size: 12px;
  font-weight: 800;
}

.admin-table {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
}

.admin-table-row {
  min-height: 52px;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 0.8fr 1fr 1.4fr 0.8fr;
  gap: 12px;
  align-items: center;
  background: #151d27;
  color: rgba(247, 248, 251, 0.76);
  font-size: 13px;
}

.admin-table-row.head {
  min-height: 38px;
  color: rgba(247, 248, 251, 0.52);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-dot {
  margin-right: 8px;
  vertical-align: middle;
}

.admin-dot.warn {
  background: #f6c85f;
}

.admin-dot.bad {
  background: #ff6b6b;
}

.admin-dot.ok {
  background: #39d98a;
}

.admin-status-list,
.admin-liquidity {
  display: grid;
  gap: 10px;
}

.admin-status-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.admin-status-list li,
.admin-liquidity div {
  min-height: 42px;
  padding: 0 10px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: rgba(255, 255, 255, 0.055);
  color: rgba(247, 248, 251, 0.72);
  font-size: 13px;
}

.admin-status-list strong,
.admin-liquidity strong {
  color: #fff;
  font-size: 13px;
}

.admin-liquidity span {
  color: rgba(247, 248, 251, 0.58);
}

.admin-roadmap {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.admin-roadmap div {
  min-height: 118px;
  padding: 14px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
}

.admin-roadmap span {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(120, 166, 255, 0.18);
  color: #9fbeff;
  font-weight: 800;
}

.admin-roadmap strong {
  display: block;
  margin-top: 10px;
}

.admin-roadmap p {
  margin: 7px 0 0;
  color: rgba(247, 248, 251, 0.62);
  font-size: 13px;
  line-height: 1.4;
}

@media (max-width: 980px) {
  .admin-body {
    grid-template-columns: 1fr;
  }

  .admin-sidebar {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  .admin-nav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-sidebar-link {
    margin-top: 0;
  }

  .admin-metrics,
  .admin-workspace,
  .admin-roadmap {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .admin-main {
    padding: 16px;
  }

  .admin-topbar,
  .admin-alert-strip {
    display: grid;
  }

  .admin-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-table {
    gap: 8px;
    background: transparent;
  }

  .admin-table-row,
  .admin-table-row.head {
    grid-template-columns: 1fr;
    gap: 5px;
    border-radius: 8px;
  }

  .admin-table-row.head {
    display: none;
  }
}
