/* Before It Rugs: the Explore board (/explore/) and token pages (/token/<address>/). Only new classes; reuses site.css tokens. */
.xboard{margin-top:16px;overflow:hidden}
.xbar{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:10px;border-bottom:1px solid var(--line);background:var(--panel)}
.xpresets{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);padding-right:24px}
.xpresets::-webkit-scrollbar{display:none}
.xpresets button{flex:none;min-height:40px;padding:0 13px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:var(--muted);font:600 var(--fs-sm) var(--sans);cursor:pointer;white-space:nowrap}
.xpresets button:hover{color:var(--text);background:var(--panel2)}
.xpresets button[aria-pressed="true"]{color:var(--accent);background:rgba(245,165,36,.12);border-color:rgba(245,165,36,.45)}
.xtools{display:flex;gap:8px;align-items:center}
.xtools input{flex:1;min-width:0;min-height:44px;background:var(--bg);border:1px solid var(--line2);border-radius:10px;padding:0 12px;color:var(--text);font:500 16px var(--sans)}
.xtools input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(245,165,36,.15)}
.xtools select{appearance:none;min-height:44px;max-width:46%;background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238E959E' stroke-width='1.5'/%3E%3C/svg%3E") right 11px center no-repeat;border:1px solid var(--line2);border-radius:10px;color:var(--text);font:600 var(--fs-sm) var(--sans);padding:0 30px 0 12px;cursor:pointer;text-overflow:ellipsis}
.xtools select option{background:var(--panel);color:var(--text)}
.xvnote{margin:0;padding:10px 14px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);color:var(--muted);text-wrap:pretty}
.xempty{padding:28px 16px;text-align:center}
.up{color:var(--accent)}.down{color:var(--down)}

/* table from 760px */
.xwrap{overflow-x:auto}
.xtbl{width:100%;border-collapse:collapse}
.xtbl th{background:var(--panel);text-align:left;font:600 var(--fs-xs)/1.25 var(--sans);color:var(--faint);padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:bottom}
.xtbl td{height:58px;padding:6px 10px;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;font:500 var(--fs-sm) var(--mono)}
.xtbl .r{text-align:right}
.xtbl tbody tr:hover td{background:var(--hover)}
.xtbl .c-g{width:52px}
.xtok{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:var(--text)}
.xtok img,.xtok .ph{width:30px;height:30px;border-radius:50%;flex:none;background:var(--panel2);object-fit:cover}
.xt{display:flex;flex-direction:column;min-width:0}
.xt b{font:700 var(--fs-md)/1.2 var(--sans);overflow:hidden;text-overflow:ellipsis;max-width:180px}
.xn{font:500 var(--fs-xs)/1.3 var(--sans);color:var(--muted);overflow:hidden;text-overflow:ellipsis;max-width:180px}
.xtok:hover b{color:var(--accent)}
.xtbl td.c-tok{display:table-cell}
.c-tok .xage{font:600 var(--fs-xs)/1 var(--mono);color:var(--muted);border:1px solid var(--line2);border-radius:999px;padding:3px 7px;margin-left:8px;vertical-align:middle}
.xtbl td.c-tok > *{vertical-align:middle;display:inline-flex}
.xfl{font:600 var(--fs-xs) var(--sans)}
.xfl.none{color:var(--muted)}.xfl.wait{color:var(--faint)}
.xfl.n{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:7px;background:rgba(248,81,73,.14);color:#F5BAB6;font:700 var(--fs-xs) var(--mono)}
.c-act{text-align:right}
.c-act a{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;margin-left:6px;border:1px solid var(--line2);border-radius:8px;background:var(--panel2);color:var(--text);font:600 var(--fs-xs) var(--sans);text-decoration:none;white-space:nowrap}
.c-act a:last-child{border-color:rgba(245,165,36,.45);color:var(--accent)}
.c-act a:hover{border-color:var(--muted)}
.xnone td{height:auto;padding:28px 16px;text-align:center;white-space:normal;font:500 var(--fs-md) var(--sans);color:var(--muted)}
.xnone a{color:var(--accent)}
.xfoot{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;padding:12px 14px;font-size:var(--fs-sm);color:var(--muted)}
.xfoot .btn{order:3;width:100%}
.xfoot .btn[hidden]{display:none}
@media (min-width:760px){.xfoot .btn{order:0;width:auto;margin:0 auto}}
@media (min-width:760px) and (max-width:1099px){.xtbl .c-liq,.xtbl .c-d7{display:none}}
@media (min-width:760px){.xpresets{flex-wrap:wrap;-webkit-mask-image:none;mask-image:none;padding-right:0}.xtools{max-width:560px}}
@media (min-width:1100px){.xbar{grid-template-columns:minmax(0,1fr) 400px;align-items:start}.xtools{max-width:none}}

/* cards under 760px: one card per row, the stats in three columns */
@media (max-width:759px){
  .xtbl thead{display:none}
  .xtbl,.xtbl tbody{display:block}
  .xtbl tr{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:8px;row-gap:6px;padding:12px 14px;border-bottom:1px solid var(--line)}
  .xtbl tbody tr:hover td{background:transparent}
  .xtbl td{display:block;height:auto;padding:0;border:0;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .xtbl .c-g{grid-column:1;grid-row:1 / span 2;align-self:center;width:auto}
  .xtbl .c-g .g{width:42px;height:42px;font-size:var(--fs-xl);border-radius:11px}
  .xtbl td.c-tok{grid-column:2 / span 3;grid-row:1 / span 2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px}
  .xtbl td.c-tok > *{display:flex}
  .c-tok .xage{margin-left:40px}
  .xtok img,.xtok .ph{width:30px;height:30px}
  .xt b,.xn{max-width:100%}
  .xtbl .c-mcap{grid-column:5 / span 2;grid-row:1;font:600 var(--fs-md) var(--mono);align-self:end}
  .xtbl .c-h24{grid-column:5 / span 2;grid-row:2;align-self:start}
  .xtbl .c-liq,.xtbl .c-d7{display:none}
  .xtbl .c-vr,.xtbl .c-soc,.xtbl .c-fl{grid-row:3;text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:6px 8px;margin-top:4px}
  .xtbl .c-vr{grid-column:1 / span 2}.xtbl .c-soc{grid-column:3 / span 2}.xtbl .c-fl{grid-column:5 / span 2}
  .xtbl .c-vr::before,.xtbl .c-soc::before,.xtbl .c-fl::before{content:attr(data-s);display:block;font:600 11px/1.25 var(--sans);color:var(--faint);white-space:nowrap;margin-bottom:2px}
  .xtbl .c-act{grid-column:1 / -1;grid-row:4;display:flex;gap:8px;text-align:left}
  .c-act a{flex:1;justify-content:center;min-height:40px;margin:0}
  .xnone{display:block!important}
  .xnone td{display:block}
}
@media (pointer:coarse){.xpresets button{min-height:44px}.c-act a{min-height:44px}}

/* how to read the board */
.xmethod{margin-top:32px}
.xmgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:14px}
@media (min-width:760px){.xmgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.xmgrid > div{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.xmgrid h3{margin:0 0 6px;font-size:var(--fs-lg)}
.xmgrid p{margin:0;color:var(--soft);font-size:var(--fs-md);text-wrap:pretty}
.xmgrid a{color:var(--accent)}

/* token pages */
.kvs b.up{color:var(--accent)}.kvs b.down{color:var(--down)}
.xfacts p{margin:0 0 10px;color:var(--soft);font-size:var(--fs-md);text-wrap:pretty}
.xsoc{display:flex;gap:14px;align-items:center;margin-bottom:10px}
.xsoc p{margin:0;color:var(--soft);font-size:var(--fs-sm);text-wrap:pretty}
.xscore{flex:none;display:grid;place-items:center;width:72px;height:72px;border-radius:16px;border:1px solid rgba(245,165,36,.4);background:rgba(245,165,36,.08)}
.xscore b{font:700 var(--fs-xl)/1 var(--mono);color:var(--accent)}
.xscore span{font-size:var(--fs-xs);color:var(--muted)}
.xstbl{width:100%;border-collapse:collapse;margin:6px 0 10px}
.xstbl td{padding:9px 4px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);vertical-align:top}
.xstbl td.r{text-align:right;white-space:nowrap;padding-left:10px}
.xstbl td.sub{font-size:var(--fs-xs)}
@media (max-width:480px){.xstbl td.sub{display:none}}
