:root{color-scheme:light;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#172033;background:#f4f7fb}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}.shell{max-width:1120px;margin:0 auto;padding:48px 20px 64px}.hero{background:linear-gradient(135deg,#102347,#1c4fa3);color:#fff;border-radius:24px;padding:32px;box-shadow:0 24px 60px #10234738}.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#ffffff29;font-size:.8rem;margin-bottom:14px}.hero h1{margin:0 0 12px;font-size:clamp(2rem,4vw,3.5rem)}.hero p{max-width:760px;margin:0;color:#ffffffe6}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:24px}.top-grid{align-items:start}.bottom-grid{grid-template-columns:1.2fr .8fr}.card{background:#fff;border-radius:20px;padding:24px;box-shadow:0 14px 40px #17203314}.card h2{margin-top:0;font-size:1.15rem}.form{display:grid;gap:12px}.form input{width:100%;border:1px solid #d6deef;border-radius:12px;padding:12px 14px;background:#fbfcff}.toggleRow{display:inline-flex;gap:10px;margin-bottom:16px}.toggle,.primary{border:0;border-radius:12px;padding:11px 16px;cursor:pointer}.toggle{background:#e7eefc;color:#1f4591}.toggle.active,.primary{background:#1c4fa3;color:#fff}.primary:disabled{opacity:.7;cursor:progress}.chips,.metrics{display:flex;flex-wrap:wrap;gap:10px}.chip,.metrics span{background:#e7eefc;color:#1f4591;padding:8px 12px;border-radius:999px;font-size:.92rem}.rule{margin-top:18px;font-weight:700;color:#8f1d1d}.error{margin:0;color:#aa2337;font-weight:600}.result p,.result ul,.result ol,.historyItem p,.caseHeader p,.casePanel p{margin:0 0 10px}.muted{color:#6f7c96;font-size:.9rem}.decision{font-weight:700;color:#1c4fa3}.historyList{display:grid;gap:12px}.historyList.stacked{margin-top:14px}.historyItem,.caseHeader{display:flex;justify-content:space-between;gap:16px;align-items:center}.historyItem{border:1px solid #e5ebf7;border-radius:14px;padding:14px}.status{display:inline-flex;align-items:center;border-radius:999px;padding:8px 10px;font-size:.84rem;white-space:nowrap}.status.ok{background:#e5f7ed;color:#1b7a43}.status.blocked{background:#fff0f0;color:#a53a3a}.casesCard{margin-top:24px}.caseGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.casePanel{border:1px solid #e5ebf7;border-radius:16px;padding:18px;background:#fcfdff}@media(max-width:860px){.bottom-grid{grid-template-columns:1fr}}
