:root {
  --deo-ink: #171717;
  --deo-muted: #5b6268;
  --deo-paper: #fbfaf7;
  --deo-panel: #ffffff;
  --deo-line: #d9ddd8;
  --deo-field: #f3f6f4;
  --deo-charcoal: #101513;
  --deo-green: #1f7a4d;
  --deo-green-soft: #dff2e8;
  --deo-cyan: #0d6f7c;
  --deo-cyan-soft: #d9f2f4;
  --deo-amber: #a76516;
  --deo-amber-soft: #fff0d8;
  --deo-red: #9c2f2f;
  --deo-red-soft: #f8e4e4;
  --deo-shadow: 0 18px 48px rgba(20, 28, 24, 0.12);
}

:root {
  --bg: var(--deo-paper);
  --bg-primary: var(--deo-paper);
  --bg-secondary: var(--deo-panel);
  --bg-tertiary: var(--deo-field);
  --bg-1: var(--deo-panel);
  --bg-2: var(--deo-field);
  --bg-3: #e8eeee;
  --line: var(--deo-line);
  --line-2: #c7d1cc;
  --fg: var(--deo-ink);
  --fg-dim: var(--deo-muted);
  --fg-mute: #7a827d;
  --cyan: var(--deo-cyan);
  --cyan-bright: #0f8494;
  --cyan-alt: #0b6571;
  --green: var(--deo-green);
  --green-alt: #356f52;
  --yellow: var(--deo-amber);
  --amber: var(--deo-amber);
  --orange: var(--deo-amber);
  --red: var(--deo-red);
  --rust: #b94c35;
  --crimson: var(--deo-red);
  --azure: var(--deo-cyan);
  --violet: #6f5b9a;
  --pink: #a33b75;
  --phos: var(--deo-green);
  --phos-dim: #2d8c5d;
  --phos-glow: rgba(31, 122, 77, 0.14);
  --selection: var(--deo-green-soft);
  --border: rgba(20, 28, 24, 0.12);
  --border-strong: rgba(31, 122, 77, 0.34);
  --shadow: var(--deo-shadow);
  --shadow-glow: var(--deo-shadow);
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0 !important;
  background: var(--deo-paper) !important;
  color: var(--deo-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: 0 !important;
}

.deo-toolbar {
  position: sticky;
  top: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 72px;
  padding: 12px clamp(18px, 4vw, 56px);
  border-bottom: 1px solid var(--deo-line);
  background: rgba(251, 250, 247, 0.96);
  color: var(--deo-ink);
  box-shadow: 0 1px 0 rgba(20, 28, 24, 0.04);
  backdrop-filter: blur(14px);
}

.deo-toolbar,
.deo-toolbar * {
  box-sizing: border-box;
}

.deo-toolbar a {
  color: inherit;
}

.deo-toolbar-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--deo-ink);
  font-weight: 760;
  text-decoration: none;
}

.deo-toolbar-brand img {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(16, 21, 19, 0.15);
  display: none !important;
}

.deo-toolbar-nav {
  display: flex;
  align-items: center;
  gap: clamp(12px, 2vw, 24px);
  color: var(--deo-muted);
  font-weight: 700;
}

.deo-toolbar-nav a {
  text-decoration: none;
}

.deo-toolbar-nav a:hover,
.deo-toolbar-nav a[aria-current="page"] {
  color: var(--deo-green);
}

.deo-tool-intro {
  position: relative;
  overflow: hidden;
  padding: clamp(36px, 6vw, 72px) clamp(18px, 4vw, 56px);
  background:
    linear-gradient(90deg, rgba(251, 250, 247, 0.97), rgba(238, 242, 239, 0.91)),
    url("/assets/brand/deo-background.svg") center / cover no-repeat,
    var(--deo-paper);
  color: var(--deo-ink);
}

.deo-tool-intro::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: var(--deo-line);
}

.deo-tool-intro-inner {
  position: relative;
  z-index: 1;
  max-width: 980px;
}

.deo-tool-kicker {
  margin: 0 0 12px;
  color: var(--deo-green);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.deo-tool-intro h1 {
  margin: 0;
  max-width: 980px;
  color: var(--deo-ink);
  font-size: clamp(2.4rem, 7vw, 5.6rem);
  line-height: 0.95;
  letter-spacing: 0;
  text-shadow: none;
}

.deo-tool-intro p {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--deo-muted);
  font-size: clamp(1rem, 1.7vw, 1.22rem);
  line-height: 1.55;
}

.deo-object-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}

.deo-object-row span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid #b8dcc9;
  border-radius: 999px;
  background: var(--deo-green-soft);
  color: var(--deo-green);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.76rem;
  font-weight: 820;
}

.deo-tool-note {
  padding: 14px clamp(18px, 4vw, 56px);
  border-bottom: 1px solid var(--deo-line);
  background: #eef2ef;
  color: var(--deo-muted);
  font-size: 0.94rem;
  font-weight: 650;
}

.deo-tool-note strong {
  color: var(--deo-ink);
}

.deo-tool-note a {
  color: var(--deo-green);
  font-weight: 780;
  text-underline-offset: 3px;
}

.deo-tool-runner {
  padding: clamp(18px, 4vw, 40px);
  background: var(--deo-paper);
  color: var(--deo-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.deo-tool-runner,
.deo-tool-runner *:not(code):not(pre):not(kbd):not(samp) {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.deo-tool-runner > .container:first-child,
.deo-tool-runner > .app:first-child,
.deo-tool-runner > .wrap:first-child,
.deo-tool-runner > .page:first-child,
.deo-tool-runner > .main:first-child {
  margin-top: 0;
}

body::before,
body::after {
  display: none !important;
}

.deo-tool-runner ::selection {
  background: var(--deo-green-soft);
  color: var(--deo-ink);
}

.deo-tool-runner a {
  color: var(--deo-green);
  text-underline-offset: 3px;
}

.deo-tool-runner button,
.deo-tool-runner input,
.deo-tool-runner select,
.deo-tool-runner textarea {
  font: inherit;
}

.deo-tool-runner .container,
.deo-tool-runner .app,
.deo-tool-runner .wrap,
.deo-tool-runner .page,
.deo-tool-runner .main {
  color: var(--deo-ink);
}

.deo-tool-runner .header,
.deo-tool-runner .topbar {
  overflow: hidden;
  border: 1px solid var(--deo-line) !important;
  border-radius: 8px;
  background: var(--deo-panel) !important;
  color: var(--deo-ink) !important;
  box-shadow: var(--deo-shadow);
}

.deo-tool-runner .header::after {
  background: linear-gradient(90deg, transparent, var(--deo-green), transparent) !important;
}

.deo-tool-runner .header h1,
.deo-tool-runner .brand-name,
.deo-tool-runner .gauge-value,
.deo-tool-runner .score-display {
  color: var(--deo-green) !important;
  text-shadow: none !important;
}

.deo-tool-runner .header p,
.deo-tool-runner .header .subtitle,
.deo-tool-runner .header .meta-info,
.deo-tool-runner .brand-tag,
.deo-tool-runner .statusbar,
.deo-tool-runner .sub-desc,
.deo-tool-runner .help,
.deo-tool-runner .no-data,
.deo-tool-runner .loading,
.deo-tool-runner .progress-text {
  color: var(--deo-muted) !important;
}

.deo-tool-runner .header .eu-stars,
.deo-tool-runner .header .difficulty,
.deo-tool-runner .header .reg-badge,
.deo-tool-runner .brand-mark,
.deo-tool-runner .brand-version,
.deo-tool-runner .crumb,
.deo-tool-runner .cat-toggle {
  color: var(--deo-green) !important;
  border-color: var(--deo-green) !important;
  text-shadow: none !important;
}

.deo-tool-runner .status-dot {
  background: var(--deo-green) !important;
  box-shadow: none !important;
}

.deo-tool-runner button > svg,
.deo-tool-runner .btn > svg,
.deo-tool-runner .button > svg,
.deo-tool-runner .brand-mark,
.deo-tool-runner .status-dot,
.deo-tool-runner .eu-stars {
  display: none !important;
}

.deo-tool-runner .card,
.deo-tool-runner .input-section,
.deo-tool-runner .wallet-info,
.deo-tool-runner .tree-column,
.deo-tool-runner .tx-node,
.deo-tool-runner .cat,
.deo-tool-runner .override-card,
.deo-tool-runner .rule,
.deo-tool-runner .crypto-result,
.deo-tool-runner .bulk-results,
.deo-tool-runner .audit-entry,
.deo-tool-runner .notes-section,
.deo-tool-runner .field,
.deo-tool-runner .form-section,
.deo-tool-runner .term-box,
.deo-tool-runner .msg,
.deo-tool-runner .toast {
  border-color: var(--deo-line) !important;
  background: var(--deo-panel) !important;
  color: var(--deo-ink) !important;
  box-shadow: var(--deo-shadow);
}

.deo-tool-runner .card:hover,
.deo-tool-runner .input-section:hover,
.deo-tool-runner .wallet-info:hover,
.deo-tool-runner .tree-column:hover,
.deo-tool-runner .cat:hover,
.deo-tool-runner .override-card:hover {
  border-color: rgba(31, 122, 77, 0.34) !important;
}

.deo-tool-runner .card-head,
.deo-tool-runner .cat-head,
.deo-tool-runner .cat-body,
.deo-tool-runner .indicator,
.deo-tool-runner .task-row,
.deo-tool-runner .answer-row,
.deo-tool-runner .collapsible-header,
.deo-tool-runner .collapsible-body,
.deo-tool-runner .evidence-block,
.deo-tool-runner .info-card,
.deo-tool-runner .wallet-address-display,
.deo-tool-runner .tx-hash,
.deo-tool-runner .address-item,
.deo-tool-runner .address-chip,
.deo-tool-runner .chip-removable,
.deo-tool-runner .channel-btn,
.deo-tool-runner .status-pill,
.deo-tool-runner .verdict-narrative,
.deo-tool-runner .bar-track,
.deo-tool-runner .field-input,
.deo-tool-runner .field-select,
.deo-tool-runner .field-area,
.deo-tool-runner .check-item,
.deo-tool-runner .check-with-input,
.deo-tool-runner .tl-node,
.deo-tool-runner .tl-addr,
.deo-tool-runner .tl-delta span,
.deo-tool-runner pre,
.deo-tool-runner code,
.deo-tool-runner table,
.deo-tool-runner th,
.deo-tool-runner td {
  border-color: var(--deo-line) !important;
  background: var(--deo-field) !important;
  color: var(--deo-ink) !important;
  box-shadow: none !important;
}

.deo-tool-runner .card-head,
.deo-tool-runner th {
  color: var(--deo-muted) !important;
}

.deo-tool-runner .card-bracket::before,
.deo-tool-runner .card-bracket::after {
  border-color: var(--deo-green) !important;
  content: "" !important;
  display: none !important;
}

.deo-tool-runner .tab.active::after,
.deo-tool-runner .sub-label-minor::before,
.deo-tool-runner .check-item input[type="checkbox"]:checked::after,
.deo-tool-runner .check-with-input input[type="checkbox"]:checked::after {
  content: "" !important;
  display: none !important;
}

.deo-tool-runner h1,
.deo-tool-runner h2,
.deo-tool-runner h3,
.deo-tool-runner h4,
.deo-tool-runner .section-title,
.deo-tool-runner .card h2,
.deo-tool-runner .card h3,
.deo-tool-runner .wallet-info h3,
.deo-tool-runner .tree-column h3,
.deo-tool-runner .cat-name,
.deo-tool-runner .cat-stats b,
.deo-tool-runner .field-label,
.deo-tool-runner .field-group label,
.deo-tool-runner label,
.deo-tool-runner .answer-label,
.deo-tool-runner .tx-amount,
.deo-tool-runner .value,
.deo-tool-runner .kv .v {
  color: var(--deo-ink) !important;
  text-shadow: none !important;
}

.deo-tool-runner .section-title,
.deo-tool-runner .card h2,
.deo-tool-runner .tree-column h3 {
  border-bottom-color: var(--deo-line) !important;
}

.deo-tool-runner .section-letter,
.deo-tool-runner .task-num {
  background: var(--deo-green-soft) !important;
  color: var(--deo-green) !important;
}

.deo-tool-runner p,
.deo-tool-runner li,
.deo-tool-runner .check-label,
.deo-tool-runner .check-item .check-label,
.deo-tool-runner .kita-wrap span,
.deo-tool-runner .ind-text,
.deo-tool-runner .cat-weight,
.deo-tool-runner .ind-weight,
.deo-tool-runner .rule-conditions,
.deo-tool-runner .audit-details,
.deo-tool-runner .tx-time,
.deo-tool-runner .tx-hash,
.deo-tool-runner .address-item,
.deo-tool-runner .bar-row-label,
.deo-tool-runner .bar-row-val,
.deo-tool-runner .tl-time,
.deo-tool-runner .footnotes {
  color: var(--deo-muted) !important;
}

.deo-tool-runner input,
.deo-tool-runner select,
.deo-tool-runner textarea,
.deo-tool-runner .field-input,
.deo-tool-runner .field-select,
.deo-tool-runner .field-area {
  border: 1px solid var(--deo-line) !important;
  border-radius: 6px !important;
  background: var(--deo-field) !important;
  color: var(--deo-ink) !important;
}

.deo-tool-runner select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: none !important;
}

.deo-tool-runner input[type="date"]::-webkit-calendar-picker-indicator,
.deo-tool-runner input[type="time"]::-webkit-calendar-picker-indicator {
  display: none !important;
  opacity: 0 !important;
  -webkit-appearance: none !important;
}

.deo-tool-runner input:focus,
.deo-tool-runner select:focus,
.deo-tool-runner textarea:focus,
.deo-tool-runner .field-input:focus,
.deo-tool-runner .field-select:focus,
.deo-tool-runner .field-area:focus {
  border-color: var(--deo-green) !important;
  box-shadow: 0 0 0 3px rgba(31, 122, 77, 0.16) !important;
}

.deo-tool-runner input::placeholder,
.deo-tool-runner textarea::placeholder {
  color: #8b938e !important;
}

.deo-tool-runner button,
.deo-tool-runner .btn,
.deo-tool-runner .analyze-btn,
.deo-tool-runner .tab,
.deo-tool-runner .tab-btn,
.deo-tool-runner .dl-link {
  border: 1px solid var(--deo-line) !important;
  border-radius: 6px !important;
  background: var(--deo-panel) !important;
  color: var(--deo-ink) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

.deo-tool-runner button:hover,
.deo-tool-runner .btn:hover,
.deo-tool-runner .analyze-btn:hover,
.deo-tool-runner .tab:hover,
.deo-tool-runner .tab-btn:hover,
.deo-tool-runner .dl-link:hover {
  border-color: var(--deo-green) !important;
  background: var(--deo-green-soft) !important;
  color: var(--deo-green) !important;
  transform: translateY(-1px);
}

.deo-tool-runner .btn-primary,
.deo-tool-runner .btn-fill-cyan,
.deo-tool-runner .btn-fill-orange,
.deo-tool-runner .analyze-btn,
.deo-tool-runner .tab.active,
.deo-tool-runner .tab-btn.active,
.deo-tool-runner .channel-btn.active {
  border-color: var(--deo-green) !important;
  background: var(--deo-green) !important;
  color: #ffffff !important;
}

.deo-tool-runner .btn-primary:hover,
.deo-tool-runner .btn-fill-cyan:hover,
.deo-tool-runner .btn-fill-orange:hover,
.deo-tool-runner .analyze-btn:hover,
.deo-tool-runner .tab.active:hover,
.deo-tool-runner .tab-btn.active:hover,
.deo-tool-runner .channel-btn.active:hover {
  background: #17613c !important;
  color: #ffffff !important;
}

.deo-tool-runner .btn-cyan,
.deo-tool-runner .pill,
.deo-tool-runner .dl-link,
.deo-tool-runner .tl-link a,
.deo-tool-runner .address-label {
  color: var(--deo-cyan) !important;
  border-color: rgba(13, 111, 124, 0.34) !important;
}

.deo-tool-runner .btn-green,
.deo-tool-runner .verdict-tag.low,
.deo-tool-runner .risk-low,
.deo-tool-runner .bulk-row-low,
.deo-tool-runner .kv .v.ok,
.deo-tool-runner .crypto-result .value {
  color: var(--deo-green) !important;
  border-color: rgba(31, 122, 77, 0.34) !important;
}

.deo-tool-runner .btn-yellow,
.deo-tool-runner .verdict-tag.medium,
.deo-tool-runner .bulk-row-medium,
.deo-tool-runner .rule-condition.unknown,
.deo-tool-runner .risk-medium {
  color: var(--deo-amber) !important;
  border-color: rgba(167, 101, 22, 0.34) !important;
}

.deo-tool-runner .btn-red,
.deo-tool-runner .verdict-tag.elevated,
.deo-tool-runner .verdict-tag.high,
.deo-tool-runner .bulk-row-elevated,
.deo-tool-runner .bulk-row-high,
.deo-tool-runner .kv .v.hi,
.deo-tool-runner .crypto-result .alert,
.deo-tool-runner .risk-high {
  color: var(--deo-red) !important;
  border-color: rgba(156, 47, 47, 0.34) !important;
}

.deo-tool-runner .risk-badge,
.deo-tool-runner .verdict-tag,
.deo-tool-runner .tl-tag,
.deo-tool-runner .badge,
.deo-tool-runner .pill {
  background: var(--deo-field) !important;
  border-radius: 999px !important;
}

.deo-tool-runner .ethics-box,
.deo-tool-runner .info-box,
.deo-tool-runner .msg.ok,
.deo-tool-runner .answer-row.correct,
.deo-tool-runner .check-item.checked-active {
  border-color: rgba(31, 122, 77, 0.34) !important;
  background: var(--deo-green-soft) !important;
  color: var(--deo-ink) !important;
}

.deo-tool-runner .warning-box,
.deo-tool-runner .msg.warn,
.deo-tool-runner .term-box {
  border-color: rgba(167, 101, 22, 0.34) !important;
  background: var(--deo-amber-soft) !important;
  color: var(--deo-ink) !important;
}

.deo-tool-runner .danger-box,
.deo-tool-runner .msg.bad,
.deo-tool-runner .error,
.deo-tool-runner .answer-row.wrong,
.deo-tool-runner .override-card.tripped,
.deo-tool-runner .indicator.checked {
  border-color: rgba(156, 47, 47, 0.34) !important;
  background: var(--deo-red-soft) !important;
  color: var(--deo-ink) !important;
}

.deo-tool-runner .hint-box,
.deo-tool-runner .tx-node.received {
  border-color: rgba(13, 111, 124, 0.28) !important;
  background: var(--deo-cyan-soft) !important;
}

.deo-tool-runner .tx-node.sent {
  border-color: rgba(167, 101, 22, 0.28) !important;
  background: var(--deo-amber-soft) !important;
}

.deo-tool-runner .progress-bar,
.deo-tool-runner .bulk-progress {
  background: var(--deo-field) !important;
}

.deo-tool-runner .progress-fill,
.deo-tool-runner .bulk-progress-fill,
.deo-tool-runner .bar-fill {
  background: linear-gradient(90deg, var(--deo-green), var(--deo-cyan)) !important;
}

.deo-tool-runner .spinner {
  border-color: rgba(31, 122, 77, 0.16) !important;
  border-top-color: var(--deo-green) !important;
}

@media (max-width: 720px) {
  .deo-toolbar {
    position: static;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .deo-toolbar-nav {
    width: 100%;
    justify-content: space-between;
  }

  .deo-tool-intro {
    padding-top: 34px;
  }

  .deo-tool-runner {
    padding: 18px !important;
    overflow-x: hidden;
  }

  .deo-tool-runner,
  .deo-tool-runner * {
    box-sizing: border-box;
  }

  .deo-tool-runner .app,
  .deo-tool-runner .container,
  .deo-tool-runner .wrap,
  .deo-tool-runner .page,
  .deo-tool-runner .main {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .deo-tool-runner aside,
  .deo-tool-runner section,
  .deo-tool-runner .card,
  .deo-tool-runner .panel,
  .deo-tool-runner .field,
  .deo-tool-runner .form-section,
  .deo-tool-runner .field-group {
    max-width: 100% !important;
  }

  .deo-tool-runner .indent-1 {
    margin-left: 0 !important;
  }

  .deo-tool-runner .check-with-input,
  .deo-tool-runner .kita-wrap {
    min-width: 0 !important;
    max-width: 100% !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
  }

  .deo-tool-runner .check-with-input .kita-wrap {
    flex: 1 1 220px !important;
  }

  .deo-tool-runner .check-with-input .kita-wrap span {
    flex: 1 1 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  .deo-tool-runner .check-with-input .kita-wrap input[type="text"] {
    flex: 1 1 100% !important;
  }

  .deo-tool-runner input,
  .deo-tool-runner select,
  .deo-tool-runner textarea {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .deo-tool-runner table {
    max-width: 100%;
  }

  .deo-tool-runner .table-wrap,
  .deo-tool-runner .tab-bar {
    max-width: 100%;
    overflow-x: auto;
  }
}
