@layer base{:root{--background:#2b1164;--foreground:#ffffff;--card-bg:#3f1c91;--accent:#6cff85;--accent-2:#ffd84d;--danger:#ff5d7d}@media (prefers-color-scheme:dark){:root{--background:#2b1164;--foreground:#ffffff}}body,html{max-width:100vw;overflow-x:hidden}body{color:var(--foreground);background:radial-gradient(circle at top,#4d23ad 0,var(--background) 45%,#1d0b42 100%);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}code{background-color:rgba(0,0,0,.05);border-radius:6px;border:1px solid rgba(0,0,0,.1);font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875rem;padding:.25rem .5rem calc(.25rem + 2px)}@media (prefers-color-scheme:dark){code{background-color:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}@media (prefers-color-scheme:dark){html{color-scheme:dark}}}.screen{min-height:100vh;justify-content:center;align-items:flex-start;padding:18px 12px 32px}.card,.screen{width:100%;display:flex}.card{max-width:420px;background:var(--card-bg);border:2px solid rgba(255,255,255,.15);border-radius:22px;padding:18px;box-shadow:0 12px 30px rgba(5,4,18,.45);flex-direction:column;gap:14px}.eyebrow{color:var(--accent-2);font-size:.88rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.title{font-size:1.65rem;line-height:1.2;font-weight:900}.subtitle{color:rgba(255,255,255,.92);line-height:1.5}.badgeRow{display:flex;gap:8px;flex-wrap:wrap}.badge{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700}.rulesList{background:rgba(255,255,255,.08);border-radius:14px;padding:12px;font-size:.92rem}.rulesList ul{margin-top:6px;margin-left:16px;display:flex;flex-direction:column;gap:4px}.primaryButton,.secondaryButton{border:none;border-radius:14px;padding:14px;font-size:1rem;font-weight:900;cursor:pointer}.primaryButton{color:#1a1232;background:linear-gradient(180deg,#8cff7c,#6ae15b)}.secondaryButton{color:white;background:rgba(255,255,255,.14)}.topBar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.metaLabel{font-size:.78rem;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.05em}.ruleText{margin-top:4px;font-size:1.02rem;font-weight:800}.stats{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-weight:800;font-size:.95rem}.cardsGrid{margin-top:4px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.signalCard{border:none;border-radius:14px;min-height:124px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#120a2a;font-weight:900;cursor:pointer}.signalCard.red{background:#ff8198}.signalCard.blue{background:#7bc8ff}.signalCard.yellow{background:#ffe277}.signalIcon{font-size:1.35rem}.signalLabel{font-size:.9rem}.signalValue{font-size:1rem}.scoreLine,.tapHint{text-align:center;font-weight:700}.scoreLine{font-size:1.15rem;color:var(--accent)}.centerBlock{align-items:center;padding:16px 6px}.centerBlock,.gateState{display:flex;flex-direction:column;gap:10px;text-align:center}.gateState{padding:8px 2px}.resultCard{border-radius:16px;padding:12px;background:rgba(255,255,255,.09);display:flex;flex-direction:column;gap:7px;font-weight:700}.buttonRow{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.mono{font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem}.errorText{color:var(--danger);font-weight:800}.receiptCard{border-radius:18px;padding:14px;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.24);display:flex;flex-direction:column;gap:8px;text-align:center}.receiptLabel{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.82)}.receiptScore{font-size:2.35rem;line-height:1;font-weight:900;color:var(--accent)}.receiptMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;font-size:.8rem;font-weight:800}.chainOk{color:#9cff9c;font-weight:900}.chainError{color:#ffb5c4;font-weight:900}.tinyActions{display:flex;justify-content:center;gap:10px}.textButton{border:none;background:transparent;color:rgba(255,255,255,.9);font-weight:700;cursor:pointer;font-size:.86rem}