.token-validation{grid-column:1/-1;display:grid;gap:14px;padding-top:20px;border-top:1px solid var(--line)}
.token-validation[hidden]{display:none}
.token-validation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.token-validation-heading>div{max-width:760px}
.token-validation-heading span{display:block;color:var(--success);font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.token-validation-heading strong{display:block;margin-top:5px;font-size:1rem;line-height:1.25}
.token-validation-heading p{margin:6px 0 0;color:var(--muted);font-size:.74rem;line-height:1.5}
.token-validation-heading>b{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:#e8f3eb;color:#23643a;font-size:.66rem}
.token-validation[data-state="needs-review"] .token-validation-heading>b{background:#fef0ed;color:#9b2c23}
.token-role-section{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.7)}
.token-role-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.token-role-heading strong{font-size:.78rem}
.token-role-heading span{color:var(--muted);font-size:.66rem}
.token-role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.token-role-card{display:grid;gap:8px;min-width:0;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff}
.token-role-card[data-confidence="high"]{border-color:#cfe1d4;background:#fbfefc}
.token-role-card[data-confidence="low"]{border-color:#ead4b8;background:#fffdf8}
.token-role-top{display:flex;align-items:center;gap:9px;min-width:0}
.token-role-top>i{flex:0 0 auto;width:32px;height:32px;border:1px solid rgba(17,24,39,.14);border-radius:9px}
.token-role-top>div{display:grid;gap:2px;min-width:0}
.token-role-top strong{font-size:.7rem}
.token-role-top code{overflow:hidden;color:var(--muted);font:700 .62rem "Space Mono",monospace;text-overflow:ellipsis}
.token-role-card>b{justify-self:start;padding:4px 7px;border-radius:999px;background:#eef2f5;color:var(--muted);font-size:.58rem;text-transform:capitalize}
.token-role-card[data-confidence="high"]>b{background:#e8f3eb;color:#23643a}
.token-role-card[data-confidence="low"]>b{background:#fff0d7;color:#8a5413}
.token-role-card ul{margin:0;padding-left:16px;color:var(--muted);font-size:.61rem;line-height:1.45}
.token-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.token-check{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}
.token-check[data-state="pass"]{border-color:#cfe1d4;background:#fbfefc}
.token-check[data-state="fail"]{border-color:#f3c7c1;background:#fffafa}
.token-check-swatches{display:flex;align-items:center}
.token-check-swatches i{display:block;width:30px;height:30px;border:1px solid rgba(17,24,39,.14);border-radius:8px}
.token-check-swatches i+ i{margin-left:-9px}
.token-check-copy{display:grid;align-content:start;gap:2px;min-width:0}
.token-check-copy strong{font-size:.73rem;line-height:1.2}
.token-check-copy span{overflow:hidden;color:var(--muted);font:700 .62rem "Space Mono",monospace;text-overflow:ellipsis;white-space:nowrap}
.token-check-result{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}
.token-check-result b{font:850 .88rem "Space Mono",monospace}
.token-check-result span{padding:4px 7px;border-radius:999px;background:#eef2f5;color:var(--muted);font-size:.6rem;font-weight:850}
.token-check[data-state="pass"] .token-check-result span{background:#e8f3eb;color:#23643a}
.token-check[data-state="fail"] .token-check-result span{background:#fef0ed;color:#9b2c23}
.token-check a{grid-column:1/-1;color:var(--ink);font-size:.65rem;font-weight:850;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.token-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.token-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.token-validation-heading,.token-role-heading{flex-direction:column}.token-check-grid,.token-role-grid{grid-template-columns:1fr}.token-validation-heading>b{align-self:flex-start}}