/* Token Pulse / discovery workspace -------------------------------------- */
.tokens-page { padding: clamp(2.25rem, 5vw, 4.5rem) 0 4.5rem; }
.token-pulse-head { margin-bottom: 1.5rem; }.tokens-eyebrow { margin-bottom:.8rem; }.tokens-page h1 { font-size:clamp(2.55rem,5vw,4.8rem); line-height:.98; letter-spacing:-.03em; }.tokens-lede { max-width:36rem; margin:1rem 0 0; color:var(--soft); font-size:1.02rem; line-height:1.6; }.tokens-freshness { display:flex; align-items:center; gap:.55rem; margin:1rem 0 0; color:var(--muted); font:700 .68rem/1 var(--mono); letter-spacing:.08em; text-transform:uppercase; }.tokens-fresh-dot { width:.4rem; height:.4rem; box-shadow:0 0 0 .2rem var(--y-dim); }
.tokens-page h1.token-section-label { display:flex; align-items:center; justify-content:flex-start; gap:.55rem; margin:0 0 .85rem; padding:0; border:0; color:var(--hero); font:700 2.5rem/1 var(--font-display); letter-spacing:0; text-transform:none; line-height:1; }.token-section-label svg { width:1.35rem; height:1.35rem; color:var(--y); flex:none; }
.tokens-page .token-chips { margin-top:1rem; }.tokens-page .token-grid { margin-top:2rem; }.tokens-page .token-panel { box-shadow:0 .9rem 2.5rem rgba(0,0,0,.12); }.tokens-page .token-panel-h { flex-wrap:wrap; align-items:flex-start; padding:1.1rem 1.1rem .6rem; }.tokens-page .token-panel-h h2 { font-size:1.2rem; }.tokens-page .token-tools { flex-wrap:wrap; }.tokens-page .token-empty { min-height:7rem; display:grid; place-items:center; text-align:center; }
.tokens-page .token-panel tbody tr { transition:background-color .18s ease; }.tokens-page .token-panel tbody tr:hover { background:var(--y-dim); }.tokens-page .token-panel td { vertical-align:middle; }
.tokens-page .token-panel tbody tr[tabindex] { cursor:pointer; }
.tokens-page .token-panel tbody tr[tabindex]:focus-visible { position:relative; z-index:1; outline:2px solid var(--y); outline-offset:-2px; }
.tokens-page .token-data-state { min-height:7rem; display:grid; place-items:center; gap:.65rem; padding:1.25rem; color:var(--muted); text-align:center; }
.tokens-page .token-data-state button { min-height:44px; padding:0 1rem; border:1px solid var(--y-line); border-radius:999px; background:var(--y-dim); color:var(--text); font-weight:750; cursor:pointer; }
.tokens-freshness.is-error .tokens-fresh-dot { background:var(--high); box-shadow:0 0 0 .2rem color-mix(in srgb,var(--high) 18%,transparent); }
.tokens-freshness.is-loading .tokens-fresh-dot { animation:token-state-pulse 1.4s ease-in-out infinite; }
@keyframes token-state-pulse { 50% { opacity:.35; } }
@media (max-width: 640px) {
  .tokens-page { padding-top:2rem; }.tokens-page h1 { font-size:clamp(2.45rem, 13vw, 3.6rem); }.tokens-page h1.token-section-label { font-size:1.85rem; }.tokens-page .token-chips { overflow-x:auto; mask-image:none; scroll-snap-type:x proximity; scrollbar-width:none; }.tokens-page .token-chips::-webkit-scrollbar { display:none; }.tokens-page .token-chips .tick-run { animation:none!important; }.tokens-page .token-chips .tick { scroll-snap-align:start; }.tokens-page .token-panel-h { gap:.7rem; }.tokens-page .token-panel-h h2 { width:100%; }.tokens-page .token-tools { width:100%; justify-content:space-between; gap:.5rem; }.tokens-page .ranges { min-width:0; overflow-x:auto; scrollbar-width:none; }.tokens-page .ranges::-webkit-scrollbar { display:none; }.tokens-page .token-refresh { flex:none; }
  .tokens-page .token-panel table,.tokens-page .token-panel tbody,.tokens-page .token-panel tr,.tokens-page .token-panel td { display:block; width:100%; }.tokens-page .token-panel thead { display:none; }.tokens-page .token-panel tbody tr { padding:.65rem .75rem; border-top:1px solid var(--line); }.tokens-page .token-panel td { width:100%!important; padding:.25rem 0; text-align:left!important; }.tokens-page .token-panel td::before { display:inline-block; min-width:5.2rem; margin-right:.4rem; color:var(--faint); font:700 .6rem/1 var(--mono); letter-spacing:.08em; text-transform:uppercase; }.tokens-page .token-panel td:first-child::before { content:"Token"; }.tokens-page .token-panel td:nth-child(2)::before { content:"Name"; }.tokens-page .token-panel td:nth-child(3)::before { content:"Checks"; }.tokens-page .token-panel td:nth-child(4)::before { content:"Risk"; }.tokens-page .token-panel[aria-labelledby="new-tokens"] td:nth-child(2)::before { content:"Created"; }.tokens-page .token-panel td:first-child .tok { display:inline-flex; width:calc(100% - 5.7rem); vertical-align:middle; }.tokens-page .token-panel td:first-child .tok-copy { display:inline-grid; width:44px; height:44px; flex:0 0 44px; place-items:center; }.tokens-page .tok-copy svg { width:16px; height:16px; }.tokens-page .token-panel td[colspan] { min-height:7rem; display:grid; place-items:center; }.tokens-page .token-panel td[colspan]::before { display:none!important; }
}
@media (max-width: 640px) { .tokens-page .ranges button { min-width:44px; min-height:44px; }.tokens-page .token-refresh { width:44px; height:44px; } }
@media (prefers-reduced-motion: reduce) { .tokens-page * { animation:none!important; transition-duration:.01ms!important; } }
