/* GHOST terminal refinement layer: loaded last. Calmer type, flatter surfaces,
   consistent radii. Layout, hit targets and graph coordinates are unchanged. */
:root{
 --sans:"Inter","Geist",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
 --mono:ui-monospace,"SF Mono","JetBrains Mono","Cascadia Mono",Menlo,Consolas,monospace;
 --display:var(--sans);
 --bg:#0a0a0a;--line:#222;--muted:#9a9a9a;--text:#ededed;
 --r-sm:6px;--r:8px;--r-lg:10px;
}
body{background:#0a0a0a;color:#ededed;font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.app-shell{background:#0a0a0a}

/* Identity: plain wordmark, no taglines */
.brand,.mobile-brand{font:600 15px/1 var(--sans)!important;letter-spacing:.14em!important}
.brand-caption,.mobile-brand small{display:none!important}
.sidebar{background:#0a0a0a;border-color:#1c1c1c}

/* Small labels: sentence-weight, readable, no wide tracking */
.nav-label,.eyebrow,.report-eyebrow,.system-status,.experimental,.brand-caption,
.network-workspace .eyebrow,.inspector-heading span,.inspector-heading>div>span,
.inspector-section-title h3,.inspector-transaction dt,.mobile-case-heading>span,
.replay-heading small,.watch-heading small,.token-field,.terminal-title,
.terminal-workspace .search-bar .sr-only,.transactions td:nth-child(2)::before,.transactions td:nth-child(3)::before{
 font-family:var(--sans)!important;font-size:11px!important;font-weight:500!important;letter-spacing:.02em!important;color:#8a8a8a!important;text-transform:none
}
.sidebar .nav-name{font:500 10px var(--sans);letter-spacing:0}
.terminal-dock .module-tab{font:500 12px var(--sans);letter-spacing:0}
.nav-name{letter-spacing:0}

/* Top bar */
.topbar{border-bottom:1px solid #1c1c1c}
.breadcrumb{border-left-color:#262626;letter-spacing:0}
.breadcrumb span{color:#7a7a7a;font:13px var(--sans);letter-spacing:0}
.breadcrumb strong{color:#ededed;font:500 13px var(--sans);letter-spacing:0}
.command-toggle{border-radius:var(--r);background:#141414;border-color:#2a2a2a;font:500 13px var(--sans)}
.command-toggle:hover{background:#1a1a1a;border-color:#363636}
.topbar .icon-button,.case-actions .icon-button{border-radius:var(--r);border-color:#262626}
.watch-launch,.mobile-tools{border-radius:var(--r)!important;font:500 13px var(--sans)!important;letter-spacing:0!important}

/* Case bar */
.case-title h2{font:600 20px var(--sans);letter-spacing:-.02em}
.case-title .tag{border-radius:var(--r-sm);font:500 10.5px var(--sans);letter-spacing:.02em;color:#a3a3a3;border-color:#2c2c2c}
.case-actions select,#direction-filter,#date-filter{border-radius:var(--r);border-color:#262626;background-color:#111;font:13px var(--sans)}
#sample-label,.case-actions #sample-label{font:12px var(--sans);color:#8a8a8a;letter-spacing:0}

/* Inputs & buttons */
.terminal-workspace .search-bar,.command-terminal{border-radius:var(--r-lg);border-color:#1f1f1f;background:#0e0e0e;box-shadow:none}
.terminal-workspace .search-bar input,#command-input{font-family:var(--mono);font-size:13px}
.chain-picker{border-radius:var(--r);border-color:#2a2a2a;background-color:#111;font:500 12.5px var(--sans)}
.button,.button.primary{border-radius:var(--r);font:500 13px var(--sans);letter-spacing:0}
.button.primary{background:#ededed;color:#0a0a0a;border-color:#ededed}
.button.primary:hover{background:#fff}
.text-button{font-family:var(--sans);letter-spacing:0}
.command-presets button{border-radius:var(--r);border-color:#1f1f1f}
.command-presets .preset-number{font:500 11px var(--mono);color:#6e6e6e;letter-spacing:0}
.command-presets strong{font:500 13px var(--sans);letter-spacing:0}
.command-presets small{font:12px var(--sans);color:#8a8a8a;letter-spacing:0}

/* Panels: flat, hairline */
.panel,.network-workspace,.wallet-inspector,.transactions{border-color:#1f1f1f;border-radius:var(--r-lg)}
.network-workspace .panel-heading{background:transparent!important;border-bottom:1px solid #1a1a1a}
.network-workspace h2{font:600 17px var(--sans)!important;letter-spacing:-.01em!important}
.wallet-inspector,.command-terminal{box-shadow:none}
.panel-heading h3{font:600 15px var(--sans);letter-spacing:-.01em}

/* Graph canvas & nodes: matches the landing preview */
.terminal-workspace .network-stage{background-image:radial-gradient(#ffffff12 .7px,transparent .7px);background-size:22px 22px}
.network-stage .graph-node>.node-depth{display:none}
.network-stage .graph-node>.node-body{fill:#151515;stroke:#3a3a3a;stroke-width:1}
.network-stage .graph-node:hover>.node-body,.network-stage .selected-node>.node-body{stroke:#ededed;stroke-width:1.5}
.network-stage .subject-node>.node-body,.network-stage .subject-node:hover>.node-body{fill:#ededed;stroke:#ededed}
.network-stage .subject-node>.node-glyph{stroke:#0a0a0a}
@media(min-width:701px){.network-workspace .graph-reticle{opacity:.15}.network-workspace .subject-node .node-hit{stroke:none}}

/* Dock */
.terminal-dock{border-top-color:#1c1c1c}
.terminal-dock .module-tab{border-radius:var(--r)}
.terminal-dock .module-tab.active{box-shadow:none!important}
.dock-caption b{font:500 12px var(--sans);letter-spacing:0}
.dock-caption span{font:12px var(--sans);letter-spacing:0;color:#7a7a7a}

/* Overlays */
.lookup-status{border-color:#2a2a2a;border-radius:var(--r);background:#141414;font:13px var(--sans);box-shadow:0 12px 32px #000a}
.error-banner{border-radius:var(--r)}

/* Tables */
.transactions th{font:500 11px var(--sans);letter-spacing:.02em;color:#7a7a7a;text-transform:none}
.transactions td{font-size:13px}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
.sidebar .sidebar-mark{display:grid;place-items:center;width:40px;height:40px;overflow:visible}
.sidebar .sidebar-mark svg{width:24px;height:24px;fill:none!important;stroke:#ededed;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.sidebar .nav-item{border-radius:var(--r)}
.sidebar .nav-item.active{background:#ededed;color:#0a0a0a}

/* Drawer, stats and module content */
.drawer-heading strong{font:600 14px var(--sans);letter-spacing:-.01em;text-transform:none;color:#ededed}
.stats{gap:1px}
.stat-label,.stat-label .stat-index{font:500 11.5px var(--sans)!important;text-transform:none!important;letter-spacing:0!important;color:#8a8a8a}
.stat-label .stat-index{color:#5e5e5e}
.stat-value{font-family:var(--sans);font-weight:600;letter-spacing:-.03em}
.stat-value small{font:500 12px var(--sans);color:#8a8a8a}
.stat-foot{font:12px/1.5 var(--sans)!important;color:#7a7a7a}
.report h2{font:600 clamp(26px,3vw,34px)/1.15 var(--sans)!important;text-transform:none!important;letter-spacing:-.03em!important}
.report h4{font:600 14px var(--sans)!important;text-transform:none!important;letter-spacing:-.005em!important;color:#ededed}
.report p,.report li{font-size:14px;line-height:1.65;color:#bdbdbd}
#module-content h3,.pattern-card h3,.transactions h3{font-family:var(--sans)!important;text-transform:none!important;letter-spacing:-.01em!important}
.pattern-card h3{font-size:18px!important;font-weight:600!important}
#module-content h3+p,#module-content p{font-size:12.5px}
.insight-title h3{font:600 14px var(--sans)!important;text-transform:none!important;letter-spacing:0!important}
.insight-kicker,.pattern-card .tag,.insight-title .tag{font:500 11px var(--sans)!important;letter-spacing:.02em!important;text-transform:none}
.insight-card .text-button,.insights .text-button,.case-actions .text-button{font:500 12.5px var(--sans)}
.timeline-event small,.tx-date,.table-footer span,.evidence-list button,.evidence-list .muted{font-size:11.5px!important}
.tx-status{font:500 11px var(--sans)!important;text-transform:capitalize!important;letter-spacing:0!important}
.transactions h3 .muted{font:500 13px var(--sans);text-transform:none}
.desktop-graph-hint,.graph-legend span,.graph-controls span{font-size:11.5px}
.sidebar .nav-name{font-size:11px}
footer span{letter-spacing:0!important;font-size:11px!important}

/* Watchlist dialog & replay */
.watch-dialog{border-color:#262626!important;border-radius:12px!important;background:#0f0f0f!important;box-shadow:0 24px 64px #000c!important;font-family:var(--sans)}
.watch-dialog::backdrop{background:#000a;backdrop-filter:blur(2px)}
.watch-dialog button,.time-machine button{border-radius:var(--r)!important;font:500 13px var(--sans)!important;letter-spacing:0!important}
.watch-dialog input,.watch-dialog select,.time-machine input,.time-machine select{border-radius:var(--r)!important;font-size:13px!important}
.watch-dialog label,.time-machine label{font:500 12px var(--sans)!important;letter-spacing:0!important;color:#9a9a9a}
.watch-dialog summary,.replay-config summary{font:500 13px var(--sans)!important}
.watch-heading h2,.replay-heading h2{font:600 20px var(--sans)!important;letter-spacing:-.02em!important;text-transform:none!important}
.watch-empty{border-radius:var(--r)}
.watch-empty h3{font:600 15px var(--sans)!important;text-transform:none!important;letter-spacing:-.01em!important}
.watch-empty p,.watch-alert p,.watch-delivery p,.replay-options-body>p,.replay-speed-note,.replay-coverage,.replay-stage-caption{font:13px/1.6 var(--sans)!important;color:#9a9a9a}
.watch-dialog>p,.watch-dialog form+p,.watch-dialog p{font-size:12.5px!important;line-height:1.6!important}
.watch-alert small{font:12px/1.5 var(--sans)!important}
.watch-alert strong,.watch-delivery h3{font:600 14px var(--sans)!important;letter-spacing:0!important;text-transform:none!important}
.replay-current strong{font-family:var(--sans);letter-spacing:-.01em}
.time-machine{font-family:var(--sans)}

/* ---------- One scroll area: analysis views replace the graph instead of floating over it ---------- */
@media(min-width:701px){
 body.mobile-detail-open .investigation-split{display:none!important}
 body.mobile-detail-open .terminal-workspace{flex:0 0 auto}
 body.mobile-detail-open .evidence-drawer:not([hidden]){
  position:relative;inset:auto;order:1;flex:1 1 auto;min-height:0;height:auto;max-height:none;width:auto;
  margin:0 0 10px;padding:0 24px 32px;border:1px solid #1f1f1f;border-radius:var(--r-lg);background:#0d0d0d;box-shadow:none;overflow:auto;scrollbar-gutter:stable
 }
 .terminal-dock{order:2}
 /* Each view shows only its own content */
 .evidence-drawer:not(.transfers-only) .transactions,.evidence-drawer:not(.transfers-only) .coverage-note{display:none}
 .evidence-drawer.transfers-only #module-content{display:none}
 /* The table grows with the page instead of scrolling inside it */
 .evidence-drawer .table-scroll{max-height:none;overflow:visible}
 .evidence-drawer .transactions thead th{position:sticky;top:64px;z-index:1;background:#0d0d0d}
}
@media(min-width:1001px){
 body.mobile-detail-open .terminal-workspace{grid-template-rows:42px 76px}
}
.drawer-heading{gap:16px;background:#0d0d0d!important;border-bottom:1px solid #1c1c1c!important;margin:0 -24px 20px;padding:12px 24px!important;min-height:64px}
.drawer-heading #drawer-title{flex:0 0 auto}
.drawer-tabs{display:flex;gap:2px;margin-right:auto;padding:3px;border:1px solid #1f1f1f;border-radius:9px;background:#0a0a0a}
.drawer-tabs button{height:30px;padding:0 14px;border:0;border-radius:6px;background:transparent;color:#8a8a8a;font:500 13px var(--sans);cursor:pointer;transition:background-color .15s,color .15s}
.drawer-tabs button:hover{color:#ededed}
.drawer-tabs button[aria-pressed=true]{background:#ededed;color:#0a0a0a}
#close-drawer{border:1px solid #262626;border-radius:var(--r);padding:0 12px;height:32px;font:500 13px var(--sans);color:#ededed}
#close-drawer:hover{background:#151515}
@media(max-width:700px){.drawer-tabs{display:none}.drawer-heading{margin:0 0 12px;padding:8px 0!important}}

/* Insights card: dark like everything else */
.insights{background:#111!important;color:#ededed!important;border-color:#1f1f1f!important}
.insights:after{display:none!important}
.insights>.text-button{background:#ededed!important;color:#0a0a0a!important;border-radius:var(--r);font:500 13px var(--sans)!important;letter-spacing:0!important}
.insights>.text-button:hover{background:#fff!important}
.insights .insight-card p,.insights p{color:#a3a3a3}
.insights .insight-card strong,.insights h4{color:#ededed}

/* Smooth view changes */
@keyframes view-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.evidence-drawer:not([hidden])>*:not(.drawer-heading){animation:view-in .35s cubic-bezier(.2,.7,.2,1) both}
.evidence-drawer .timeline{max-height:none!important;overflow:visible!important}
@media(min-width:701px){.drawer-heading #drawer-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}

/* ---------- Visual upgrade: Geist type, lit graph, softer canvas ---------- */
:root{--sans:"Geist","Inter",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--mono:"Geist Mono",ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace}
body,.app-shell{background:#070707}
.sidebar{background:#070707}
/* Graph canvas: no dot grid, a soft pool of light around the subject */
.terminal-workspace .network-stage{background:radial-gradient(ellipse 60% 55% at 50% 50%,rgba(255,255,255,.045),transparent 70%),#0a0a0a!important;background-size:auto!important}
.network-workspace{background:#0a0a0a;box-shadow:inset 0 1px 0 #ffffff0a}
.network-stage .graph-node>.node-body{fill:url(#wallet-metal);stroke:#3a3a3a}
.network-stage .graph-node:hover>.node-body{stroke:#9a9a9a}
.network-stage .selected-node>.node-body{stroke:#ededed;stroke-width:1.5;filter:drop-shadow(0 0 10px rgba(255,255,255,.28))}
.network-stage .subject-node>.node-body,.network-stage .subject-node:hover>.node-body{fill:url(#subject-metal);stroke:#fff;filter:drop-shadow(0 0 18px rgba(255,255,255,.25))}
.network-stage .graph-edge{stroke:#5a5a5a;opacity:.85;stroke-width:1.1}
.network-stage .graph-edge.incoming{stroke:#9a9a9a;stroke-dasharray:4 5}
.network-stage .has-selection .selected-edge{stroke:#f5f5f5;stroke-width:1.7;filter:drop-shadow(0 0 4px rgba(255,255,255,.45))}
.network-stage .graph-node .node-label{font:500 12.5px var(--sans)!important;fill:#e8e8e8;stroke:#0a0a0a;stroke-width:5px}
.network-stage .graph-node .node-secondary{font:10.5px var(--mono)!important;fill:#7a7a7a;stroke:#0a0a0a}
/* Panels & chrome */
.panel,.network-workspace,.wallet-inspector,.transactions,.terminal-workspace .search-bar,.command-terminal,body.mobile-detail-open .evidence-drawer:not([hidden]){background:#0b0b0b;border-color:#1c1c1c}
.wallet-inspector,.command-terminal,.terminal-workspace .search-bar{box-shadow:inset 0 1px 0 #ffffff08}
.topbar{background:rgba(7,7,7,.8);backdrop-filter:blur(12px)}
.case-title h2{font:600 21px var(--sans);letter-spacing:-.03em}
.stat-value{font-weight:600;letter-spacing:-.04em}
.stats .stat{transition:background-color .2s}
.stats .stat:hover{background:#101010}
.drawer-heading{background:#0b0b0b!important}
.drawer-tabs{background:#070707}
.button.primary,.drawer-tabs button[aria-pressed=true],.sidebar .nav-item.active{box-shadow:0 0 0 1px #fff3 inset,0 6px 20px -8px #fff4}
.sidebar .nav-item{transition:background-color .15s,color .15s}
.sidebar .nav-item:not(.active):hover{background:#141414}
::-webkit-scrollbar-thumb{background:#2e2e2e}
@media(min-width:701px){.network-stage .graph-hint{top:auto!important;bottom:12px;left:0!important;right:0!important;text-align:center;color:#555!important;font:12px var(--sans)!important;pointer-events:none}}

/* ---------- Phone polish ---------- */
@media(max-width:700px){
 .inspector-actions{grid-template-columns:1fr 1fr!important}
 .inspector-actions>.button.primary:last-child:nth-child(odd){grid-column:1/-1}
 .inspector-address{word-break:break-all;overflow-wrap:anywhere;white-space:normal;font-size:11.5px}
 .command-toggle,.mobile-tools,.watch-launch{height:38px!important;min-height:38px!important;padding:0 12px!important;border:1px solid #262626!important;border-radius:var(--r)!important;background:#111!important;font:500 13px var(--sans)!important;letter-spacing:0!important}
 .wallet-search-toggle{height:36px;padding:0 12px;border:1px solid #262626;border-radius:var(--r);background:#111;font:500 13px var(--sans)}
 .terminal-dock{gap:2px;padding-inline:6px}
 .terminal-dock .module-tabs{flex:1 1 auto;min-width:0}
 .terminal-dock .module-tab{flex:1 1 0;min-width:0;padding-inline:2px!important;font:500 12px var(--sans)!important;letter-spacing:0!important;white-space:nowrap}
 .terminal-dock .evidence-toggle{flex:0 0 auto;padding-inline:8px!important;font:500 12px var(--sans)!important;letter-spacing:0!important;white-space:nowrap}
 .terminal-dock .module-tab.active,.terminal-dock .evidence-toggle[aria-expanded=true]{background:#ededed;color:#0a0a0a}
}
@media(max-width:360px){.terminal-dock .module-tab,.terminal-dock .evidence-toggle{font-size:11px!important}}
@media(max-width:400px){.network-workspace h2{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:16px!important;line-height:1.2!important}}

@media(max-width:700px){.network-workspace .panel-heading button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}}
@media(max-width:360px){.network-workspace .panel-heading .wallet-search-toggle,.network-workspace .panel-heading .filter-toggle{display:inline-grid!important;place-items:center;font-size:0!important;width:40px;padding:0!important}.network-workspace .panel-heading .wallet-search-toggle svg,.network-workspace .panel-heading .filter-toggle svg{display:block!important}}
