:root { color-scheme: dark; font-family: Inter, system-ui, sans-serif; }
body { margin: 0; background: #090b10; color: #e8eefc; }
.shell { max-width: 1160px; margin: 0 auto; padding: 32px 18px 60px; }
.hero { border: 1px solid #2c3448; border-radius: 22px; padding: 28px; background: radial-gradient(circle at top left, #1f355a, #111722 45%, #0c0f16); box-shadow: 0 20px 60px rgba(0,0,0,.35); }
.eyebrow { color: #8fd3ff; text-transform: uppercase; letter-spacing: .13em; font-size: 12px; }
h1 { margin: 0 0 10px; font-size: clamp(28px, 4vw, 48px); }
.lock { font-size: 18px; color: #d7e4ff; }
.boundary { margin-top: 18px; padding: 12px; background: #121a27; border: 1px solid #334563; border-radius: 12px; color: #a9bedf; }
.panel { margin-top: 18px; padding: 20px; border: 1px solid #273246; border-radius: 18px; background: #101722; }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
button, select { background: #172338; color: #e8eefc; border: 1px solid #3a4d6d; border-radius: 12px; padding: 10px 12px; margin: 6px 8px 0 0; }
button:hover { border-color: #80bfff; cursor: pointer; }
pre { white-space: pre-wrap; overflow-wrap: anywhere; background: #070a0f; padding: 14px; border-radius: 12px; border: 1px solid #1f2a3a; }
.decision { padding: 16px; border-radius: 14px; background: #08111e; border: 1px solid #27405e; }
.decision.blocked { border-color: #ff817a; }
.decision.allowed { border-color: #72e69b; }
.decision.hold { border-color: #ffd166; }
.nonclaims li { margin: 6px 0; }
@media (max-width: 760px) { .grid { grid-template-columns: 1fr; } }
