/* Scan and discovery extend the shared product tokens; scanner behavior is unchanged. */
#hero.hero{padding-block:var(--space-6) var(--space-4);text-align:left}
#hero .hero-top{display:block;max-width:none;margin:0;padding:0;text-align:left}
.forensic-heading{margin-bottom:var(--space-5)}
#hero .forensic-heading h1{font:750 26px/1.25 var(--font-heading);letter-spacing:-.025em;margin:0 0 var(--space-2);color:var(--ink)}
#hero .forensic-heading p{font:400 14px/1.6 var(--font-ui);color:var(--text-secondary);max-width:70ch;margin:0}
.scan-heading,.explorer-heading{display:none}
body[data-view="scan"] .scan-heading,body[data-view="tokens"] .explorer-heading{display:block}
.forensic-input-label{display:block;font:600 12px/1.5 var(--font-ui);color:var(--text-secondary);margin-bottom:var(--space-2)}
#hero .scanbar{max-width:800px;width:100%;margin:0;border-radius:var(--radius-md);box-shadow:none;background:var(--card);border-color:var(--line)}
#hero .scanbar-go{border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-ui)}
#hero .scanbar input{font:400 16px/1.5 var(--font-ui);color:var(--ink)}
#hero .scanbar-go span{display:inline}
#hero .form-foot{max-width:800px;margin:var(--space-2) 0 0;min-height:32px;align-items:center;font:400 12px/1.5 var(--font-ui)}
#hero .trust-bar{display:none}
#hero .hero-example{min-height:32px;font:600 12px/1.5 var(--font-ui);color:var(--ink)}
body[data-view="scan"] #live{display:none!important}
#report.report{padding-top:var(--space-4)}
#report .report-hero{display:block;margin-bottom:var(--space-4)}
#report .report-hero-left{gap:var(--space-5)}
#report .report-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);align-items:start;gap:var(--space-6)}
#report .report-head>div{min-width:0}
#report .report-head h2{font:750 30px/1.3 var(--font-heading);letter-spacing:-.025em;overflow-wrap:anywhere;margin:var(--space-2) 0}
#report .report-head h2 small{font:500 14px/1.5 var(--font-ui);letter-spacing:0}
#report .report-head .eyebrow{font:600 11px/1.5 var(--font-ui);letter-spacing:.08em}
#report #contract-link{font:400 13px/1.5 var(--font-data);display:block;margin-bottom:var(--space-3);overflow-wrap:anywhere}
#report .report-score-col{width:auto;max-width:none;min-width:0}
#report .score-card{width:100%;display:grid;grid-template-columns:108px minmax(0,1fr);gap:var(--space-2) var(--space-4);padding:var(--space-4);margin:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-subtle);box-shadow:none;animation:none;transform:none}
#report .score-card::before{display:none}
#report .score-card>span:first-child{grid-column:1;grid-row:1;font:600 10px/1.5 var(--font-ui);letter-spacing:.04em;color:var(--text-secondary)}
#report .score-card>.score-verdict-label{grid-column:2;grid-row:1;font:600 10px/1.5 var(--font-ui);letter-spacing:.04em;color:var(--text-secondary)}
#report .score-value{grid-column:1;grid-row:2/5;display:flex;align-items:baseline;align-self:center;gap:var(--space-1)}
#report .score-card #score{font:750 38px/1.15 var(--font-heading);text-shadow:none;color:var(--ink)}
#report .score-card .sc-outof{font:500 12px/1.5 var(--font-ui);margin:0;text-decoration:none;color:var(--text-secondary);position:static}
#report .score-card #verdict{grid-column:2;grid-row:2;font:700 13px/1.5 var(--font-ui);letter-spacing:.015em;margin:0;align-self:end}
#report .score-card #coverage{grid-column:2;grid-row:3/5;font:400 12px/1.6 var(--font-ui);margin:0;color:var(--text-secondary)}
#report .score-card .score-principle{grid-column:1/-1;margin:var(--space-2) 0 0;padding-top:var(--space-3);border-top:1px solid var(--line);font:400 12px/1.5 var(--font-ui);color:var(--text-secondary)}
#report .sc-gauge,#report #risk-label{display:none}
#report .share-bar{border:0;background:none;padding:var(--space-2) 0 0;box-shadow:none;margin:0;justify-content:flex-end;flex-direction:row;align-items:center;gap:var(--space-2)}
#report .share-bar-btns{display:flex;gap:var(--space-2)}
#report .share-bar-label{font:500 11px/1.5 var(--font-ui);letter-spacing:0;text-transform:none;color:var(--text-secondary)}
#report .share-btn{height:36px;width:36px;border-color:var(--line);border-radius:var(--radius-sm)}
#report .share-btn.primary-btn{background:var(--surface-subtle);color:var(--ink)}
#report .report-trade,#report .report-track,#report .report-terminal{font:600 12px/1.4 var(--font-ui);min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);box-shadow:none;background:var(--card);color:var(--ink);border:1px solid var(--line)}
#report #chart{scroll-margin-top:84px}
#report .report-terminal{border-color:transparent;color:var(--text-secondary)}
#report .hero-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-block:1px solid var(--line)}
#report .hero-stats .kpi{padding:var(--space-3) var(--space-4);border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;transform:none;animation:none;box-shadow:none}
#report .hero-stats .kpi:last-child{border-right:0}
#report .hero-stats .kpi span{font:500 11px/1.5 var(--font-ui);letter-spacing:0;text-transform:none;color:var(--text-secondary)}
#report .hero-stats .kpi b{font:650 16px/1.5 var(--font-data);margin-top:var(--space-1)}
#report #verdict-note{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);font:400 13px/1.65 var(--font-ui);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-secondary)}
#report #verdict-note b{color:var(--ink)}
#report #verdict-note.high{border-color:color-mix(in srgb,var(--red) 35%,var(--line))}
#report .report-grid{grid-template-columns:minmax(0,1fr) 280px;gap:var(--space-5)}
#report .report-main{min-width:0}
#report .report-main>.panel{margin-top:var(--space-5)}
#report .report-main>.panel:first-child{margin-top:0}
#report .panel{border-radius:var(--radius-md);box-shadow:none;border-color:var(--line);background:var(--card);padding:var(--space-5)}
#report .panel h3{font:700 17px/1.4 var(--font-heading);margin:0 0 var(--space-4)}
#report .panel-title{flex-wrap:wrap;gap:var(--space-2);align-items:baseline}
#report .panel-title span{font:400 12px/1.6 var(--font-ui);color:var(--text-secondary)}
#report .findings{border:0;background:transparent;padding:0}
#report .finding{padding:var(--space-4) 0;border-color:var(--line);animation:none}
#report .finding b{font:650 14px/1.5 var(--font-ui)}
#report .finding p{font:400 13px/1.65 var(--font-ui);color:var(--text-secondary);max-width:72ch}
#report .facts{align-self:start}
#report #chart{padding:0}
#report .method{font:400 12px/1.65 var(--font-ui);color:var(--text-secondary);max-width:90ch;margin:var(--space-5) auto;text-align:left}
#report :is(button,a,[tabindex]):focus-visible,#tokens :is(button,a,summary,[tabindex]):focus-visible,#hero :is(button,a,input):focus-visible{outline:2px solid var(--green-dark);outline-offset:3px}

/* Discovery is one continuous, sortable list; the same rows become mobile cards. */
#tokens{padding-top:var(--space-2)}
#tokens-body{display:flex;flex-direction:column}
#tokens .tk-padrail{order:1;margin:0 0 var(--space-3)}
#tokens .tokens-bar{order:2;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;margin:0 0 var(--space-4);padding:0;gap:var(--space-2);background:transparent;border:0;box-shadow:none;max-width:none}
#tokens #tokens-list{order:3;display:block;max-width:none;width:100%;overflow:visible}
#tokens .tokens-more{order:4;margin:var(--space-4) auto 0;min-height:44px;color:var(--ink);font:600 12px/1.5 var(--font-ui);border-color:var(--line)}
#tokens .tokens-context{order:5;margin-top:var(--space-6);border-top:1px solid var(--line)}
#tokens .tokens-context>summary{font:600 13px/1.5 var(--font-ui);padding:var(--space-4) 0;min-height:48px;cursor:pointer}
#tokens .tokens-context>summary span{margin-left:var(--space-3);color:var(--text-secondary);font-weight:400}
#tokens .tk-dash{margin:0;gap:var(--space-4)}
#tokens .tkd-card{border-radius:var(--radius-md);box-shadow:none;background:var(--card);border-color:var(--line)}
#tokens :is(.tokens-filter,.tokens-sort,.tk-padpill){font-family:var(--font-ui);border-radius:var(--radius-sm);min-height:40px}
#tokens .tokens-filter{padding:var(--space-2) var(--space-3);color:var(--text-secondary)}
#tokens .tokens-filter.active{color:var(--ink)}
#tokens .tokens-sortlabel{font-family:var(--font-ui);color:var(--text-secondary)}
#tokens .tokens-sort{color:var(--ink);background:var(--card);border:1px solid var(--line)}
#tokens .tokens-radar-link{font:500 12px/1.5 var(--font-ui);border-radius:var(--radius-sm);min-height:40px}
#tokens .tokens-status{font:400 12px/1.5 var(--font-ui);min-height:18px;text-align:left;justify-content:flex-start}
#tokens .tokens-refresh{height:44px;width:44px;min-width:44px;margin:0;color:var(--ink);border-color:var(--line)}
#tokens .tk-table{min-width:0;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:none;overflow:visible;background:var(--card)}
#tokens .tk-tr{display:grid;grid-template-columns:28px minmax(156px,1.7fr) minmax(72px,.8fr) minmax(58px,.65fr) minmax(78px,.9fr) minmax(78px,.9fr) minmax(66px,.7fr) minmax(78px,.8fr) 54px 44px;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);min-height:84px;border-bottom:1px solid var(--line);font-family:var(--font-ui);animation:none;opacity:1;cursor:default}
#tokens .tk-tr:last-child{border-bottom:0}
#tokens .tk-tr>.tk-rank,#tokens .tk-tr>.tk-vol,#tokens .tk-tr>.tk-src,#tokens .tk-head>[data-sort="vol"]{display:none}
#tokens .tk-head{min-height:52px;font:500 11px/1.45 var(--font-ui);color:var(--text-secondary);background:var(--surface-subtle);border-radius:var(--radius-md) var(--radius-md) 0 0;text-transform:none;letter-spacing:0}
#tokens .tk-head>span{font:inherit;white-space:normal}
#tokens .tk-head .tk-sortable{cursor:pointer;border-radius:var(--radius-sm);min-height:28px;display:flex;align-items:center;justify-content:flex-end}
#tokens .tk-head>.tk-trust{display:block;text-align:right}
#tokens .tk-table .tk-head>[data-sort="vol"]{display:none}
#tokens .tk-tr>.tk-tok{min-width:0;display:flex;gap:var(--space-3);align-items:center}
#tokens .tk-av{width:32px;height:32px;flex-basis:32px}
#tokens .tk-idcol{min-width:0}
#tokens .tk-sym{font:650 13px/1.5 var(--font-ui);max-width:100%;overflow:hidden;text-overflow:ellipsis}
#tokens .tk-addrrow{gap:var(--space-1);margin-top:var(--space-1)}
#tokens .tk-addr{font:400 11px/1.5 var(--font-data);color:var(--text-secondary)}
#tokens .tk-inline-age{display:none;font:400 10px/1.5 var(--font-ui);color:var(--text-secondary)}
#tokens .tk-copy{width:28px;height:28px;color:var(--text-secondary);padding:var(--space-1);opacity:1}
#tokens .tk-tr>.tk-star{width:28px;height:44px;opacity:1;align-self:center;color:var(--text-secondary);grid-area:auto}
#tokens .tk-tr>.tk-star.on{color:var(--green-dark)}
#tokens .tk-tr>.tk-price,#tokens .tk-tr>.tk-chg,#tokens .tk-tr>.tk-mcap,#tokens .tk-tr>.tk-liq,#tokens .tk-tr>.tk-concentration,#tokens .tk-tr>.tk-age{display:block;grid-area:auto;text-align:right;font:550 12px/1.55 var(--font-data);font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
#tokens .tk-tr>.tk-trust{display:block;text-align:right;font:600 12px/1.5 var(--font-data);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink)}
#tokens .tk-tr>.tk-trust small{font-size:10px;color:var(--text-secondary);font-weight:400}
#tokens .tk-trust .tk-cache-label{display:block;font:400 10px/1.5 var(--font-ui);color:var(--text-secondary);white-space:normal}
#tokens .tk-tr>.tk-concentration.hot{color:var(--ink);font-weight:700}
#tokens .tk-tr>.tk-act{display:flex;grid-area:auto;justify-content:flex-end}
#tokens .tk-buy{display:none}
#tokens .tk-scan{width:44px;height:44px;min-width:44px;border-radius:var(--radius-sm);color:var(--ink);border-color:var(--line);background:transparent}
#tokens .tk-scan span{display:none}
#tokens .tk-scan .ic{width:18px;height:18px}
#tokens .tk-changes:empty{display:none}
#tokens .tk-changes{display:block;margin-top:var(--space-1);text-align:left}
#tokens .tk-changes .token-signal-link{border:0;background:transparent;color:var(--green-dark);font:600 11px/1.5 var(--font-ui);padding:var(--space-1) 0;min-height:28px;cursor:pointer;text-align:left}
#tokens .tokens-empty{min-height:160px;display:grid;place-content:center;text-align:center;font:400 14px/1.7 var(--font-ui);padding:var(--space-6);background:var(--surface-subtle);border-radius:var(--radius-md);color:var(--text-secondary)}
@media(hover:hover) and (pointer:fine){
  #tokens .tk-tr:not(.tk-head):hover{background:var(--surface-subtle)}
  #tokens .tk-scan:hover,#report :is(.report-trade,.report-track,.share-btn):hover{background:var(--surface-subtle);border-color:var(--text-secondary)}
  #tokens .tk-changes .token-signal-link:hover{text-decoration:underline}
}
@media(max-width:1100px){
  #tokens .tk-tr{grid-template-columns:24px minmax(132px,1.4fr) minmax(64px,.8fr) 52px minmax(66px,.85fr) minmax(66px,.85fr) 58px 74px 44px;gap:var(--space-2);padding-inline:var(--space-3)}
  #tokens .tk-tr>.tk-age,#tokens .tk-head>[data-sort="new"]{display:none}
  #tokens .tk-inline-age{display:block}
  #report .report-head{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:var(--space-5)}
  #report .report-grid{grid-template-columns:minmax(0,1fr) 240px}
}
@media(max-width:900px){
  #report .report-head{grid-template-columns:minmax(0,1fr)}
  #report .report-score-col{max-width:520px}
  #report .hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  #report .hero-stats .kpi:nth-child(3){border-right:0}
  #report .hero-stats .kpi:nth-child(-n+3){border-bottom:1px solid var(--line)}
  #report .report-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:767px){
  body[data-view="tokens"] #live{display:none!important}
  #hero.hero{padding-top:var(--space-5)}
  #hero .forensic-heading h1{font-size:23px}
  #hero .forensic-heading p{font-size:13px;line-height:1.65}
  #hero .scanbar{gap:var(--space-2);padding:var(--space-2)}
  #hero .scanbar-ic{display:none}
  #hero .scanbar input{padding-left:var(--space-2)}
  #hero .scanbar-go{padding-inline:var(--space-3)}
  #hero .scanbar-go .ic{display:none}
  #tokens .tk-table{border:0;background:transparent}
  #tokens .tk-head{display:none}
  #tokens .tk-tr{grid-template-columns:repeat(3,minmax(0,1fr)) 44px;gap:var(--space-3) var(--space-2);min-width:0;padding:var(--space-4);margin-bottom:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);grid-template-areas:none}
  #tokens .tk-tr>.tk-tok{grid-column:1/4;grid-row:1;grid-area:auto;grid-column:1/4;grid-row:1}
  #tokens .tk-tr>.tk-star{grid-column:4;grid-row:1;width:44px;height:44px}
  #tokens .tk-tr>.tk-price,#tokens .tk-tr>.tk-chg,#tokens .tk-tr>.tk-liq,#tokens .tk-tr>.tk-mcap,#tokens .tk-tr>.tk-concentration,#tokens .tk-tr>.tk-trust,#tokens .tk-tr>.tk-age{display:block;text-align:left;min-width:0;white-space:normal;font-size:13px}
  #tokens .tk-tr>.tk-price{grid-column:1;grid-row:2}
  #tokens .tk-tr>.tk-chg{grid-column:2;grid-row:2}
  #tokens .tk-tr>.tk-liq{grid-column:3/5;grid-row:2}
  #tokens .tk-tr>.tk-mcap{grid-column:1;grid-row:3}
  #tokens .tk-tr>.tk-concentration{grid-column:2;grid-row:3}
  #tokens .tk-tr>.tk-trust{grid-column:3/5;grid-row:3}
  #tokens .tk-tr>.tk-age{grid-column:1;grid-row:4;font-size:12px;align-self:center}
  #tokens .tk-inline-age{display:none}
  #tokens .tk-tr>[data-label]::before{content:attr(data-label);display:block;font:400 11px/1.5 var(--font-ui);color:var(--text-secondary);margin-bottom:var(--space-1)}
  #tokens .tk-tr>.tk-act{grid-column:2/5;grid-row:4;display:flex;align-self:end}
  #tokens .tk-scan{width:auto;gap:var(--space-2);padding-inline:var(--space-3)}
  #tokens .tk-scan span{display:inline;font:600 12px/1.5 var(--font-ui)}
  #tokens .tk-sym{font-size:14px}
  #tokens .tk-addr{font-size:12px}
  #tokens .tk-copy{width:32px;height:32px}
  #tokens .tk-changes .token-signal-link{font-size:12px;min-height:36px}
  #tokens .tk-trust .tk-cache-label{font-size:11px}
  #tokens .tokens-context>summary span{display:block;margin:var(--space-1) 0 0;font-size:12px}
  #tokens .tokens-filters{flex:1 0 100%;display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0;background:none;border:0}
  #tokens .tokens-filter{min-height:44px}
  #tokens .tokens-sortwrap{flex:1 1 160px;margin:0;justify-content:flex-start}
  #tokens .tokens-sort{min-width:0;width:100%;max-width:180px;font-size:12px}
  #tokens .tokens-radar-link{flex:0 0 auto;margin:0;font-size:11px;padding-inline:var(--space-2)}
  #tokens .tk-padrail{flex-wrap:wrap;overflow:visible}
  #report .report-head h2{font-size:26px}
  #report .panel{padding:var(--space-4)}
  #report .findings{padding:0}
  #report .hero-stats .kpi{padding:var(--space-3)}
  #report .hero-stats .kpi b{font-size:14px}
  #report .share-btn{width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){#hero *,#report *,#tokens *{animation:none!important;transition:none!important}}
