:root {
  color-scheme: dark;
  --dpw-bg: #101016;
  --dpw-surface: #1A1824;
  --dpw-raised: #242032;
  --dpw-border: #514963;
  --dpw-control-border: #8B809C;
  --dpw-text: #F6F2E9;
  --dpw-muted: #BEB7CC;
  --dpw-lime: #C7FF67;
  --dpw-violet: #A78BFA;
  --dpw-cyan: #55DFF2;
  --dpw-ink: #101016;
  --dpw-success: #8EE6AE;
  --dpw-warning: #FFD279;
  --dpw-danger: #FF8F9C;
  --dpw-accent-text: var(--dpw-lime);
  --dpw-secondary-text: var(--dpw-violet);
  --dpw-link: var(--dpw-cyan);
  --dpw-notice-bg: #2D202B;
  --dpw-button-shadow: #08080D;
  --dpw-disabled-bg: #393343;
  --dpw-disabled-text: #BEB7CC;
  --dpw-space-1: 4px;
  --dpw-space-2: 8px;
  --dpw-space-3: 12px;
  --dpw-space-4: 16px;
  --dpw-space-6: 24px;
  --dpw-space-8: 32px;
  --dpw-space-12: 48px;
  --dpw-space-16: 64px;
  --dpw-space-24: 96px;
  --dpw-radius-control: 12px;
  --dpw-radius-card: 20px;
  --dpw-radius-panel: 24px;
  --dpw-container: 1280px;
  --dpw-reading-width: 720px;
  --dpw-body-size: 16px;
  --dpw-body-height: 25px;
  --dpw-caption-size: 13px;
  --dpw-caption-height: 19px;
  --dpw-hit: 44px;
  --dpw-button-height: 48px;
  --dpw-input-height: 52px;
  --dpw-icon-size: 24px;
  --dpw-mascot-size: 96px;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "Noto Sans", sans-serif;
  font-size: var(--dpw-body-size);
  font-synthesis: none;
}

html[data-theme="light"] {
  color-scheme: light;
  --dpw-bg: #F6F2E9;
  --dpw-surface: #FFFFFF;
  --dpw-raised: #EDE7F5;
  --dpw-border: #B8AEC8;
  --dpw-control-border: #756A86;
  --dpw-text: #1A1824;
  --dpw-muted: #5D566B;
  --dpw-accent-text: #425D11;
  --dpw-secondary-text: #6240AA;
  --dpw-link: #006B7D;
  --dpw-success: #216B3C;
  --dpw-warning: #805200;
  --dpw-danger: #AD263B;
  --dpw-notice-bg: #FFF0F1;
  --dpw-button-shadow: #766D82;
  --dpw-disabled-bg: #E5DFEC;
  --dpw-disabled-text: #665C73;
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--dpw-bg); color: var(--dpw-text); line-height: var(--dpw-body-height); }
a { color: var(--dpw-link); text-underline-offset: 4px; text-decoration-thickness: 1px; }
button, input, textarea, select { font: inherit; }
button, a, summary, select { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; }
[hidden] { display: none !important; }
:focus-visible { outline: 2px solid var(--dpw-cyan); outline-offset: 3px; }
html[data-theme="light"] :focus-visible { box-shadow: 0 0 0 5px var(--dpw-link); }
img, svg { max-width: 100%; }
img { display: block; height: auto; }
svg { flex-shrink: 0; }
picture { display: block; }
picture[data-brand-slot]:not(:has(img[src])), .brand-mark-slot:not(:has(img[src])), .hero-art:not(:has(img[src])) { display: none; }
h1, h2, h3, h4, p { margin: 0; }
h1, h2, h3, h4 { text-wrap: pretty; overflow-wrap: anywhere; }
h1 { font-size: 36px; line-height: 40px; font-weight: 800; letter-spacing: -.04em; }
h2 { font-size: 28px; line-height: 34px; font-weight: 800; letter-spacing: -.025em; }
h3 { font-size: 22px; line-height: 28px; font-weight: 700; letter-spacing: -.015em; }
h4 { font-size: 18px; line-height: 25px; }
p, li, dd, dt { overflow-wrap: anywhere; }
ul, ol { padding-inline-start: var(--dpw-space-6); }
button, a, input, select, textarea, summary { touch-action: manipulation; }
.shell { width: min(var(--dpw-container), calc(100% - var(--dpw-space-8))); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; inset-block-start: var(--dpw-space-2); inset-inline-start: var(--dpw-space-4); transform: translateY(-200%); z-index: 100; min-height: var(--dpw-hit); padding: var(--dpw-space-3) var(--dpw-space-4); border-radius: var(--dpw-radius-control); background: var(--dpw-lime); color: var(--dpw-ink); }
.skip-link:focus { transform: translateY(0); }
.eyebrow { font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); font-weight: 700; letter-spacing: .06em; color: var(--dpw-muted); overflow-wrap: anywhere; }
.quiet, small { font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); color: var(--dpw-muted); }

/* Header and navigation. Mobile navigation stays in the document flow. */
.site-header { position: relative; z-index: 20; min-height: 64px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--dpw-space-2) var(--dpw-space-4); padding-block: var(--dpw-space-2); border-bottom: 1px solid var(--dpw-border); }
.brand { display: inline-flex; min-height: var(--dpw-hit); min-width: 0; align-items: center; gap: var(--dpw-space-3); color: var(--dpw-text); text-decoration: none; font-weight: 800; line-height: 1.1; letter-spacing: -.03em; }
.brand-name { display: none; }
.brand-compact { font-size: 24px; }
.brand-name strong { color: var(--dpw-accent-text); }
.brand small { display: block; margin-block-start: var(--dpw-space-1); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); font-weight: 600; letter-spacing: .08em; }
.brand-mark-slot { flex: 0 0 var(--dpw-hit); width: var(--dpw-hit); }
.brand-mark-slot img { width: var(--dpw-hit); height: var(--dpw-hit); object-fit: contain; }
#menu-toggle { margin-inline-start: auto; }
#menu-toggle[aria-expanded="false"] ~ #header-menu { display: none; }
#header-menu { flex: 1 0 100%; min-width: 0; display: grid; gap: var(--dpw-space-4); padding-block: var(--dpw-space-3) var(--dpw-space-4); }
.header-nav { display: flex; flex-wrap: wrap; align-items: center; gap: var(--dpw-space-2) var(--dpw-space-6); }
.header-nav a { display: inline-flex; min-height: var(--dpw-hit); min-width: var(--dpw-hit); align-items: center; color: var(--dpw-muted); text-decoration: none; font-weight: 600; }
.header-nav a:hover, .header-nav a[aria-current] { color: var(--dpw-text); text-decoration: underline; text-decoration-color: var(--dpw-accent-text); text-decoration-thickness: 2px; text-underline-offset: 8px; }
.header-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--dpw-space-2); min-width: 0; }
.header-actions .language-select { flex: 1 1 140px; width: auto; max-width: 220px; min-width: 0; padding-inline: var(--dpw-space-3); }
.header-actions .button-wallet { flex: 1 1 100%; }

/* Shared controls. Bright fills retain dark text in either theme. */
.button { display: inline-flex; min-height: var(--dpw-button-height); min-width: var(--dpw-hit); max-width: 100%; align-items: center; justify-content: center; gap: var(--dpw-space-2); border: 1px solid transparent; border-radius: var(--dpw-radius-control); padding: var(--dpw-space-3) var(--dpw-space-6); font-size: 16px; line-height: 22px; font-weight: 600; text-align: center; text-decoration: none; overflow-wrap: anywhere; transition: background-color 140ms, border-color 140ms, transform 140ms; }
.button-primary, .button-wallet { background: var(--dpw-lime); color: var(--dpw-ink); box-shadow: 0 4px 0 var(--dpw-button-shadow); }
.button-secondary { background: var(--dpw-violet); color: var(--dpw-ink); box-shadow: 0 4px 0 var(--dpw-button-shadow); }
.button-outline, .button-ghost { border-color: var(--dpw-control-border); background: var(--dpw-surface); color: var(--dpw-text); }
.button-small { padding-inline: var(--dpw-space-4); }
.button:hover:not(:disabled) { transform: translateY(-1px); }
.button-primary:hover:not(:disabled), .button-wallet:hover:not(:disabled) { background: color-mix(in srgb, var(--dpw-lime) 86%, white); }
.button-secondary:hover:not(:disabled) { background: color-mix(in srgb, var(--dpw-violet) 86%, white); }
.button-outline:hover:not(:disabled), .button-ghost:hover:not(:disabled) { background: var(--dpw-raised); }
.button:active:not(:disabled) { transform: translateY(2px); }
.button:disabled { background: var(--dpw-disabled-bg); border-color: var(--dpw-border); color: var(--dpw-disabled-text); box-shadow: none; }
.button[aria-busy="true"] { cursor: progress; }
.text-button, .icon-button { display: inline-flex; min-height: var(--dpw-hit); min-width: var(--dpw-hit); max-width: 100%; align-items: center; justify-content: center; gap: var(--dpw-space-2); border: 0; border-radius: var(--dpw-radius-control); background: transparent; color: var(--dpw-link); padding: var(--dpw-space-2); font-size: 16px; line-height: 22px; font-weight: 600; text-align: start; overflow-wrap: anywhere; }
.text-button { text-decoration: underline; text-underline-offset: 4px; }
.text-button:hover, .icon-button:hover { background: var(--dpw-raised); }
.icon-button { flex-shrink: 0; color: var(--dpw-text); font-size: 24px; }
.icon-button svg, .mode-icon svg { width: 24px; height: 24px; }
.ui-icon { display: inline-block; width: var(--dpw-icon-size); height: var(--dpw-icon-size); flex: 0 0 var(--dpw-icon-size); background: currentColor; mask: var(--dpw-icon) center / contain no-repeat; }
.icon-menu { --dpw-icon: url('/brand/icons/menu.svg'); }
.icon-lens { --dpw-icon: url('/brand/icons/lens.svg'); }
.icon-radar { --dpw-icon: url('/brand/icons/radar.svg'); }
.icon-external { --dpw-icon: url('/brand/icons/external.svg'); }
.text-button:disabled, .icon-button:disabled { color: var(--dpw-disabled-text); }
label { display: block; margin-block-end: var(--dpw-space-2); font-size: 16px; line-height: 22px; font-weight: 600; }
input, textarea, select { display: block; width: 100%; min-width: 0; min-height: var(--dpw-input-height); border: 1px solid var(--dpw-control-border); border-radius: var(--dpw-radius-control); background: var(--dpw-bg); color: var(--dpw-text); padding: var(--dpw-space-3) var(--dpw-space-4); font-size: 16px; line-height: 25px; }
input::placeholder, textarea::placeholder { color: var(--dpw-muted); opacity: 1; }
input:hover:not(:disabled), textarea:hover:not(:disabled), select:hover:not(:disabled) { border-color: var(--dpw-secondary-text); }
input:focus, textarea:focus, select:focus { border-color: var(--dpw-link); }
input[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: var(--dpw-danger); }
input:disabled, textarea:disabled, select:disabled { background: var(--dpw-disabled-bg); color: var(--dpw-disabled-text); cursor: not-allowed; }
textarea { min-height: 144px; resize: vertical; }
.pill { display: inline-flex; min-height: 24px; max-width: 100%; align-items: center; gap: var(--dpw-space-1); padding: 2px var(--dpw-space-2); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-control); background: var(--dpw-raised); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); font-weight: 600; overflow-wrap: anywhere; }
.status-dot { display: inline-block; width: var(--dpw-space-2); height: var(--dpw-space-2); border-radius: 50%; background: var(--dpw-muted); flex-shrink: 0; }
.status-dot.available { background: var(--dpw-success); }

/* The research form and hero share the first desktop screen. */
.research-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-6); align-items: start; padding-block: var(--dpw-space-8); }
.research-layout > *, .hero-copy, .workspace-main, .sidebar > * { min-width: 0; }
.hero { display: grid; gap: var(--dpw-space-6); align-content: start; }
.hero .eyebrow { color: var(--dpw-secondary-text); margin-block-end: var(--dpw-space-4); }
.hero h1 { max-width: 12ch; margin-block-end: var(--dpw-space-4); }
.hero-line { display: block; }
.hero-line + .hero-line { color: var(--dpw-accent-text); }
.hero-check { display: block; font-size: 24px; line-height: 30px; font-weight: 800; letter-spacing: -.025em; margin-block-end: var(--dpw-space-4); }
.hero-description { max-width: 48ch; color: var(--dpw-muted); }
.hero-aside { color: var(--dpw-secondary-text); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.hero-art { position: relative; width: min(220px, 100%); margin-inline: auto; pointer-events: none; }
.hero-art picture, .hero-art img { width: 100%; }
.hero-art img { object-fit: contain; }
.art-caption { display: block; text-align: center; margin-block-start: var(--dpw-space-2); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); color: var(--dpw-muted); }
.brand-sticker, .workspace-peek { pointer-events: none; }
.brand-sticker { max-width: var(--dpw-space-24); }
.workspace-peek { width: 128px; margin-inline-start: var(--dpw-space-6); }
.state-art { width: var(--dpw-mascot-size); height: var(--dpw-mascot-size); margin-block: var(--dpw-space-2); pointer-events: none; }
.state-art img { width: 100%; height: 100%; object-fit: contain; }
#order-art { margin-block: 0 var(--dpw-space-3); }
body[data-view="report"] #account-art { display: none; }
.workspace { min-width: 0; background: var(--dpw-surface); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-panel); scroll-margin-top: var(--dpw-space-6); }
.market-tabs { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-2); padding: var(--dpw-space-4); border-bottom: 1px solid var(--dpw-border); }
.market-tabs a { position: relative; display: flex; min-width: 0; min-height: var(--dpw-button-height); align-items: center; gap: var(--dpw-space-3); padding: var(--dpw-space-3); border: 1px solid transparent; border-radius: var(--dpw-radius-control); color: var(--dpw-muted); text-decoration: none; }
.market-tabs a:hover { background: var(--dpw-raised); }
.market-tabs a[aria-current="page"] { background: var(--dpw-raised); color: var(--dpw-text); border-color: var(--dpw-control-border); }
.market-tabs a[aria-current="page"]::after { content: ""; position: absolute; inset-inline: var(--dpw-space-3); inset-block-end: 0; height: 3px; border-radius: 3px; background: var(--dpw-accent-text); }
.market-tabs a > span { min-width: 0; }
.market-tabs strong { display: block; font-size: 16px; line-height: 22px; font-weight: 700; overflow-wrap: anywhere; }
.market-tabs strong b { display: inline-block; color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); font-weight: 600; }
.market-tabs small { display: block; margin-block-start: var(--dpw-space-1); }
.mode-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 24px; width: 24px; height: 24px; color: var(--dpw-secondary-text); font-size: 24px; }
.market-tabs [aria-current="page"] .mode-icon { color: var(--dpw-accent-text); }
.mode-arrow { margin-inline-start: auto; color: var(--dpw-accent-text); }
.workspace-main { padding: var(--dpw-space-4); }
.workspace-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--dpw-space-2) var(--dpw-space-4); margin-block-end: var(--dpw-space-6); }
.workspace-top .eyebrow { color: var(--dpw-secondary-text); }
.form-intro h2 { margin-block-end: var(--dpw-space-2); }
.form-intro p { color: var(--dpw-muted); margin-block-end: var(--dpw-space-6); }
.asset-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-4); }
.asset-field { position: relative; min-width: 0; }
.chain-field { min-width: 0; }
#research-form > label { margin-block-start: var(--dpw-space-6); }
.question-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--dpw-space-2) var(--dpw-space-4); margin-block-start: var(--dpw-space-2); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
#question-count { margin-inline-start: auto; white-space: nowrap; font-variant-numeric: tabular-nums; }
.scope-preview { display: flex; align-items: start; gap: var(--dpw-space-2); margin-block-start: var(--dpw-space-6); padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-control); background: var(--dpw-raised); }
.scope-preview p { color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.scope-dot { width: var(--dpw-space-2); height: var(--dpw-space-2); flex-shrink: 0; margin-block-start: 5px; border-radius: 50%; background: var(--dpw-secondary-text); }
.form-actions { display: flex; flex-wrap: wrap; gap: var(--dpw-space-3); margin-block-start: var(--dpw-space-6); }
.form-actions .button { flex: 1 1 100%; }
#paid-status { margin-block-start: var(--dpw-space-4); }
.inline-notice { padding: var(--dpw-space-4); border: 1px solid var(--dpw-danger); border-radius: var(--dpw-radius-control); background: var(--dpw-notice-bg); color: var(--dpw-danger); margin-block-start: var(--dpw-space-4); overflow-wrap: anywhere; }
.inline-notice[role="status"] { background: var(--dpw-raised); border-color: var(--dpw-warning); color: var(--dpw-warning); }
#connection-error { margin-block-end: var(--dpw-space-6); }
.asset-suggestions { position: absolute; z-index: 30; inset-inline: 0; inset-block-start: 100%; max-height: 300px; overflow-y: auto; overscroll-behavior: contain; margin: var(--dpw-space-1) 0 0; padding: var(--dpw-space-1); list-style: none; border: 1px solid var(--dpw-control-border); border-radius: var(--dpw-radius-control); background: var(--dpw-raised); box-shadow: 0 8px 24px #08080D40; }
.asset-suggestions li { display: flex; flex-wrap: wrap; min-height: var(--dpw-hit); align-items: center; justify-content: space-between; gap: var(--dpw-space-2) var(--dpw-space-3); padding: var(--dpw-space-3); border: 1px solid transparent; border-radius: var(--dpw-space-2); cursor: pointer; }
.asset-suggestions li > div { min-width: 0; }
.asset-suggestions li:hover, .asset-suggestions li[aria-selected="true"] { border-color: var(--dpw-link); background: var(--dpw-surface); }
.asset-suggestions li strong { display: block; color: var(--dpw-accent-text); font-size: 16px; line-height: 22px; }
.asset-suggestions li span { display: block; color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); overflow-wrap: anywhere; }
.asset-suggestions li small { color: var(--dpw-secondary-text); }
.asset-suggestions .asset-address { display: block; margin-block-start: var(--dpw-space-1); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); overflow-wrap: anywhere; }
.selected-asset { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--dpw-space-2); padding-block-start: var(--dpw-space-2); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.selected-asset strong { color: var(--dpw-muted); overflow-wrap: anywhere; }
.selected-asset span { color: var(--dpw-secondary-text); overflow-wrap: anywhere; }
.selected-asset-address { flex-basis: 100%; overflow-wrap: anywhere; font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); color: var(--dpw-muted); }
.asset-search-status { margin-block-start: var(--dpw-space-2); }

/* Account and history follow the form on every viewport. */
.sidebar { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-4); }
.account-card, .recent-orders, .archive-note { margin: 0; padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-surface); }
.account-title { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--dpw-space-2); }
.account-title h2 { font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); letter-spacing: .06em; }
.wallet-address { margin-block: var(--dpw-space-4) var(--dpw-space-2); overflow-wrap: anywhere; }
.account-card .text-button { margin-block-start: var(--dpw-space-2); justify-content: flex-start; padding-inline: 0; }
.account-card .quiet + .quiet { margin-block-start: var(--dpw-space-2); }
.network-badge { display: flex; align-items: center; gap: var(--dpw-space-3); margin-block: var(--dpw-space-3); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.network-badge img { flex: 0 0 var(--dpw-icon-size); width: var(--dpw-icon-size); object-fit: contain; }
.network-badge span { min-width: 0; overflow-wrap: anywhere; }
.allowances { display: flex; flex-wrap: wrap; gap: var(--dpw-space-2); margin-block: var(--dpw-space-3); }
.allowance-chip { display: inline-flex; align-items: center; gap: var(--dpw-space-2); max-width: 100%; padding: var(--dpw-space-1) var(--dpw-space-2); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-control); background: var(--dpw-raised); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.allowance-chip b { color: var(--dpw-text); }
.allowance-state { overflow-wrap: anywhere; color: var(--dpw-muted); }
.allowance-chip[data-status="available"] .allowance-state { color: var(--dpw-success); }
.allowance-chip[data-status="reserved"] .allowance-state { color: var(--dpw-warning); }
#privacy-details summary { display: flex; min-height: var(--dpw-hit); align-items: center; color: var(--dpw-link); cursor: pointer; font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
#privacy-details[open] summary { margin-block-end: var(--dpw-space-2); }
.source-weighing { margin-block-end: var(--dpw-space-4); }
.token-strip .solana-home { margin-block: 0 var(--dpw-space-2); color: var(--dpw-secondary-text); font-weight: 600; }
#wallet-details { margin-block-end: var(--dpw-space-3); }
#wallet-details summary { display: flex; min-height: var(--dpw-hit); align-items: center; color: var(--dpw-link); cursor: pointer; }
#wallet-full-address { display: block; padding-block: var(--dpw-space-2); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); overflow-wrap: anywhere; }
.recent-orders > summary, .recent-heading { display: flex; min-height: var(--dpw-hit); align-items: center; justify-content: space-between; gap: var(--dpw-space-3); font-size: 16px; line-height: 22px; font-weight: 700; }
.recent-orders > summary { cursor: pointer; list-style: none; }
.recent-orders > summary::-webkit-details-marker { display: none; }
.recent-orders > summary > span[aria-hidden] { color: var(--dpw-secondary-text); }
.recent-orders[open] > summary > span[aria-hidden] { transform: rotate(45deg); }
.recent-orders > .text-button { margin-block: var(--dpw-space-2); }
#recent-order-list { max-height: 360px; overflow-y: auto; overscroll-behavior: contain; padding: var(--dpw-space-2); margin: calc(-1 * var(--dpw-space-2)); }
.recent-orders[open] #recent-order-list { margin-block-start: var(--dpw-space-2); }
.recent-order { display: flex; width: 100%; min-width: 0; min-height: var(--dpw-hit); align-items: center; justify-content: space-between; gap: var(--dpw-space-3); padding: var(--dpw-space-3) 0; border: 0; border-bottom: 1px solid var(--dpw-border); background: transparent; color: var(--dpw-text); text-align: start; }
.recent-order > span { min-width: 0; }
.recent-order strong { display: block; font-size: 16px; line-height: 22px; font-weight: 600; overflow-wrap: anywhere; }
.recent-order small { display: block; margin-block-start: var(--dpw-space-1); }
.recent-order > span:last-child { flex: 0 0 34%; color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); text-align: end; overflow-wrap: anywhere; }
.recent-order:hover { background: var(--dpw-raised); }
.recent-order:hover strong { color: var(--dpw-link); }
.archive-note > a { display: inline-flex; min-height: var(--dpw-hit); align-items: center; color: var(--dpw-secondary-text); font-weight: 600; }
.archive-note p { margin-block-start: var(--dpw-space-2); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }

/* Results have a calm reading column; detailed tables scroll locally. */
body[data-view="report"] .research-layout { grid-template-columns: minmax(0, 1fr); }
body[data-view="report"] .hero { display: none; }
body[data-view="report"] .workspace-main { width: min(100%, calc(var(--dpw-reading-width) + var(--dpw-space-8))); margin-inline: auto; }
#order-panel { scroll-margin-top: var(--dpw-space-6); }
.order-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: start; gap: var(--dpw-space-4); }
.order-heading > div { min-width: 0; }
.order-heading h2 { margin-block-start: var(--dpw-space-2); overflow-wrap: anywhere; }
.scope-question { margin-block-start: var(--dpw-space-4); white-space: pre-wrap; overflow-wrap: anywhere; }
.order-progress { margin-block-start: var(--dpw-space-6); padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-bg); }
.progress-caption { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--dpw-space-2); }
.stage-track { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--dpw-space-4); margin-block: var(--dpw-space-4); }
.stage-track span { min-width: 0; padding-block-start: var(--dpw-space-2); border-top: 3px solid var(--dpw-border); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); overflow-wrap: anywhere; }
.stage-track span.is-reached { border-color: var(--dpw-secondary-text); color: var(--dpw-secondary-text); }
#retry-order { margin-block-start: var(--dpw-space-4); }
.research-report { margin-block-start: var(--dpw-space-8); }
.report-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--dpw-space-3); margin-block-end: var(--dpw-space-4); }
.report-toolbar .quiet { min-width: 0; flex: 1 1 220px; }
.report-toolbar .text-button { flex: 0 1 auto; padding-inline: 0; }
.report-ready { color: var(--dpw-muted); margin-block-end: var(--dpw-space-4); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.report-summary { padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-inline-start: 3px solid var(--dpw-secondary-text); border-radius: var(--dpw-radius-card); background: var(--dpw-bg); }
.report-summary .eyebrow { color: var(--dpw-secondary-text); }
.report-summary h2 { margin-block: var(--dpw-space-3) var(--dpw-space-4); }
.report-summary p { overflow-wrap: anywhere; }
.metric-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-3); margin-block-start: var(--dpw-space-6); }
.metric-card { min-width: 0; padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-bg); }
.metric-card h3 { color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); font-weight: 600; letter-spacing: 0; }
.metric-value { margin-block-start: var(--dpw-space-2); font-size: var(--dpw-body-size); line-height: var(--dpw-body-height); font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.metric-card p { color: var(--dpw-muted); margin-block-start: var(--dpw-space-2); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.metric-card .pill { margin-block-start: var(--dpw-space-3); }
.report-card-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-4); margin-block-start: var(--dpw-space-6); }
.research-card { min-width: 0; padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-bg); }
.research-card .eyebrow { color: var(--dpw-secondary-text); margin-block-end: var(--dpw-space-2); }
.research-card h3 { margin-block-end: var(--dpw-space-3); }
.research-card p + p { margin-block-start: var(--dpw-space-3); }
.research-card ul { margin-block-end: 0; }
.research-card li + li { margin-block-start: var(--dpw-space-2); }
.research-card .pill { margin-block-end: var(--dpw-space-3); }
.research-card details { margin-block-start: var(--dpw-space-4); }
.research-card summary { display: flex; min-height: var(--dpw-hit); align-items: center; cursor: pointer; color: var(--dpw-link); text-decoration: underline; text-underline-offset: 4px; }
.research-card.risk-card { border-inline-start: 3px solid var(--dpw-warning); }
.risk-card .eyebrow { color: var(--dpw-warning); }
.research-card.scenario-card { border-inline-start: 3px solid var(--dpw-secondary-text); }
.report-details { min-width: 0; margin-block-start: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-bg); }
.report-details > summary { display: flex; min-height: var(--dpw-button-height); align-items: center; justify-content: space-between; gap: var(--dpw-space-3); padding: var(--dpw-space-4); cursor: pointer; font-weight: 600; list-style: none; border-radius: inherit; }
.report-details > summary::-webkit-details-marker { display: none; }
.report-details > summary > span { min-width: 0; overflow-wrap: anywhere; }
.report-details > summary > span:last-child { flex-shrink: 0; }
.report-details > summary:hover { background: var(--dpw-raised); }
.report-details[open] > summary { border-bottom: 1px solid var(--dpw-border); border-end-start-radius: 0; border-end-end-radius: 0; }
.report-details > div { min-width: 0; padding: var(--dpw-space-4); }
.markdown { font-size: 16px; line-height: 25px; overflow-wrap: anywhere; }
.markdown h2, .markdown h3, .markdown h4 { margin-block: var(--dpw-space-8) var(--dpw-space-4); }
.markdown h2 { font-size: 28px; line-height: 34px; }
.markdown h3 { font-size: 22px; line-height: 28px; }
.markdown h2:first-child, .markdown h3:first-child, .markdown h4:first-child { margin-block-start: 0; }
.markdown p { margin-block: var(--dpw-space-4); }
.markdown > :first-child { margin-block-start: 0; }
.markdown > :last-child { margin-block-end: 0; }
.markdown li + li { margin-block-start: var(--dpw-space-2); }
.markdown pre { max-width: 100%; overflow: auto; overscroll-behavior: contain; padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-control); background: var(--dpw-surface); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.markdown code { font-size: 14px; direction: ltr; unicode-bidi: isolate; overflow-wrap: anywhere; }
.markdown pre code { overflow-wrap: normal; }
.report-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; margin-block: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-control); }
.report-table { width: 100%; min-width: 480px; border-collapse: collapse; font-size: 14px; line-height: 22px; font-variant-numeric: tabular-nums; }
.report-table th, .report-table td { padding: var(--dpw-space-3); border-bottom: 1px solid var(--dpw-border); text-align: start; vertical-align: top; overflow-wrap: anywhere; }
.report-table th, .report-table tr:first-child { font-weight: 700; background: var(--dpw-raised); }
.report-table tr:last-child td { border-bottom: 0; }
#report-sources ol, #report-limitations ul { margin: 0; }
#report-sources li + li, #report-limitations li + li { margin-block-start: var(--dpw-space-4); }
#report-sources a { display: inline-block; min-height: var(--dpw-hit); min-width: var(--dpw-hit); padding-block: var(--dpw-space-2); overflow-wrap: anywhere; }
#report-sources small { display: block; }
.activity-details { margin-block-start: var(--dpw-space-6); color: var(--dpw-muted); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.activity-details summary { display: flex; min-height: var(--dpw-hit); align-items: center; cursor: pointer; color: var(--dpw-link); }
.activity-details li { margin-block: var(--dpw-space-3); }
.activity-details time { display: block; margin-block-start: var(--dpw-space-1); }
.invoice-panel { margin-block-start: var(--dpw-space-6); padding: var(--dpw-space-4); border: 1px solid var(--dpw-warning); border-radius: var(--dpw-radius-card); background: var(--dpw-bg); }
.invoice-panel h3 { font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.invoice-panel p { margin-block: var(--dpw-space-4); color: var(--dpw-muted); }
.invoice-panel dt { margin-block-start: var(--dpw-space-4); color: var(--dpw-muted); }
.invoice-panel dd { margin: var(--dpw-space-1) 0 0; overflow-wrap: anywhere; }
.invoice-panel input, .invoice-panel button, .invoice-panel .button { margin-block-start: var(--dpw-space-4); }

/* Supporting content uses the same cards and typography as research. */
.methodology { padding-block: var(--dpw-space-8); }
.method-heading { display: grid; gap: var(--dpw-space-3); margin-block-end: var(--dpw-space-6); }
.method-heading .eyebrow { color: var(--dpw-secondary-text); }
.method-heading h2 { max-width: var(--dpw-reading-width); }
.method-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-4); }
.method-grid article { min-width: 0; padding: var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-surface); }
.method-grid article > span { font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); color: var(--dpw-accent-text); font-variant-numeric: tabular-nums; }
.method-grid h3 { margin-block: var(--dpw-space-4) var(--dpw-space-2); }
.method-grid p { color: var(--dpw-muted); }
.token-strip { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-4); align-items: center; padding: var(--dpw-space-6) var(--dpw-space-4); border: 1px solid var(--dpw-border); border-radius: var(--dpw-radius-card); background: var(--dpw-surface); }
.token-strip > * { min-width: 0; }
.token-word { color: var(--dpw-secondary-text); font-size: 36px; line-height: 40px; font-weight: 800; letter-spacing: -.04em; }
.token-word span { display: block; font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); font-weight: 600; letter-spacing: .08em; }
.token-strip p { margin-block-start: var(--dpw-space-2); color: var(--dpw-muted); }
.token-links { display: flex; flex-wrap: wrap; gap: var(--dpw-space-2) var(--dpw-space-6); }
.token-links a { display: flex; min-height: var(--dpw-hit); min-width: var(--dpw-hit); align-items: center; }
.site-footer { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-6); padding-block: var(--dpw-space-8); }
.site-footer strong { font-size: 16px; line-height: 22px; }
.site-footer p { margin-block-start: var(--dpw-space-2); font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); color: var(--dpw-muted); }
.footer-links { display: flex; flex-wrap: wrap; align-items: center; gap: var(--dpw-space-2) var(--dpw-space-6); }
.footer-links a { display: flex; min-height: var(--dpw-hit); min-width: var(--dpw-hit); align-items: center; font-size: var(--dpw-caption-size); line-height: var(--dpw-caption-height); }
.site-footer .footer-note { border-top: 1px solid var(--dpw-border); padding-block-start: var(--dpw-space-6); margin: 0; }
.toast { position: fixed; z-index: 60; inset-block-end: var(--dpw-space-4); inset-inline: var(--dpw-space-4); width: min(400px, calc(100% - var(--dpw-space-8))); margin-inline: auto; padding: var(--dpw-space-4); border: 1px solid var(--dpw-control-border); border-radius: var(--dpw-radius-card); background: var(--dpw-raised); color: var(--dpw-text); box-shadow: 0 8px 24px #08080D40; overflow-wrap: anywhere; }
.toast[role="alert"] { border-color: var(--dpw-danger); }
.noscript-message { padding: var(--dpw-space-6); text-align: center; }
dialog { width: min(480px, calc(100% - var(--dpw-space-8))); max-height: calc(100dvh - var(--dpw-space-8)); overflow: auto; padding: var(--dpw-space-6); border: 1px solid var(--dpw-control-border); border-radius: var(--dpw-radius-panel); background: var(--dpw-raised); color: var(--dpw-text); }
dialog::backdrop { background: #08080DB3; }

@media (min-width: 390px) {
  .market-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .market-tabs a { gap: var(--dpw-space-2); }
  .market-tabs .mode-arrow { display: none; }
}

@media (min-width: 600px) {
  .brand-name { display: block; font-size: 20px; max-width: 220px; }
  .brand-compact { display: none; }
  .header-actions .button-wallet { flex: 0 1 auto; }
  .workspace-main { padding: var(--dpw-space-6); }
  .market-tabs { padding: var(--dpw-space-4) var(--dpw-space-6); }
  .market-tabs a { padding: var(--dpw-space-4); gap: var(--dpw-space-3); }
  .form-actions .button { flex: 1 1 220px; }
  .question-meta > span:first-child { flex: 1 1 220px; }
  .stage-track { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .account-card, .recent-orders, .archive-note, .report-summary, .research-card, .invoice-panel, .method-grid article { padding: var(--dpw-space-6); }
  .report-details > summary, .report-details > div { padding: var(--dpw-space-6); }
  body[data-view="report"] .workspace-main { width: min(100%, calc(var(--dpw-reading-width) + var(--dpw-space-12))); }
  .token-strip { grid-template-columns: auto minmax(0, 1fr); padding: var(--dpw-space-6); gap: var(--dpw-space-6); }
  .token-links { grid-column: 2; }
}

@media (min-width: 768px) {
  .shell { width: min(var(--dpw-container), calc(100% - var(--dpw-space-16))); }
  .hero { grid-template-columns: minmax(0, 1fr) minmax(0, .65fr); align-items: center; }
  .hero:not(:has(.hero-art img[src])) { grid-template-columns: minmax(0, 1fr); }
  .hero h1 { max-width: 16ch; }
  .hero-art { width: 100%; max-width: 320px; }
  .hero-aside { grid-column: 1 / -1; }
  .asset-row { grid-template-columns: minmax(0, 1fr) auto; }
  .chain-field { width: 144px; }
  .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .archive-note { grid-column: 1 / -1; }
  .method-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .method-grid h3 { font-size: 22px; line-height: 28px; }
  .site-footer { grid-template-columns: minmax(0, 1fr) auto; }
  .site-footer .footer-note { grid-column: 1 / -1; }
}

@media (min-width: 1100px) {
  h2 { font-size: 36px; line-height: 42px; }
  h3 { font-size: 24px; line-height: 30px; }
  .site-header { min-height: 80px; flex-wrap: nowrap; gap: var(--dpw-space-6); }
  .brand { flex: 0 0 auto; }
  .brand-name { max-width: 200px; font-size: 22px; }
  #menu-toggle { display: none; }
  #header-menu, #menu-toggle[aria-expanded="false"] ~ #header-menu { display: flex; flex: 1 1 auto; justify-content: flex-end; align-items: center; gap: var(--dpw-space-6); padding: 0; }
  .header-nav { gap: var(--dpw-space-4); }
  .header-actions { flex-wrap: nowrap; }
  .header-actions .language-select { flex: 0 1 150px; max-width: 150px; }
  .header-actions .button { padding-inline: var(--dpw-space-4); }
  .header-actions .button-wallet { flex-shrink: 0; max-width: 200px; }
  .research-layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: var(--dpw-space-8); padding-block: var(--dpw-space-12) var(--dpw-space-8); }
  .hero { grid-template-columns: minmax(0, 1fr); gap: var(--dpw-space-6); }
  .hero h1 { max-width: 13ch; font-size: 64px; line-height: 68px; }
  .hero-check { font-size: 32px; line-height: 40px; }
  .hero-art { max-width: 360px; margin-inline: 0 auto; }
  .workspace-main { padding: var(--dpw-space-8); }
  .form-intro h2 { font-size: 28px; line-height: 34px; }
  .sidebar { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--dpw-space-6); }
  .archive-note { grid-column: auto; }
  body[data-view="report"] .workspace-main { width: min(100%, calc(var(--dpw-reading-width) + var(--dpw-space-16))); }
  body[data-view="report"] .market-tabs { width: min(100%, calc(var(--dpw-reading-width) + var(--dpw-space-16))); margin-inline: auto; }
  .methodology { padding-block: var(--dpw-space-12); }
  .token-strip { grid-template-columns: auto minmax(0, 1fr) auto; }
  .token-links { grid-column: auto; flex-direction: column; gap: var(--dpw-space-1); }
}

[dir="rtl"] .language-select { direction: ltr; }
html[lang="ar"] :is(h1, h2, h3, .eyebrow, .hero-check), html[lang="hi"] :is(h1, h2, h3, .eyebrow, .hero-check) { letter-spacing: 0; }
[dir="rtl"] .markdown, [dir="rtl"] .report-summary, [dir="rtl"] .research-card { text-align: start; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  .button:hover:not(:disabled), .button:active:not(:disabled) { transform: none; }
}

@media (forced-colors: active) {
  .button, .pill, .market-tabs a[aria-current="page"], input, textarea, select { border: 1px solid ButtonText; }
  :focus-visible { outline-color: Highlight; }
  .market-tabs a[aria-current="page"]::after { background: Highlight; }
}
