:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background: #09071a; color: #f7f5ff; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 15% 0%, #292062 0, transparent 32%), #09071a; }
.hero { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 46px max(6vw, 28px) 24px; }
.hero h1 { margin: 6px 0; font-size: clamp(42px, 7vw, 80px); letter-spacing: -0.04em; }
.hero p { color: #bbb4d5; max-width: 720px; font-size: 18px; }
.eyebrow { color: #77e7ff; font-weight: 800; letter-spacing: .16em; font-size: 12px; }
.badge { border: 1px solid #645c8d; color: #c9c2ea; padding: 10px 14px; border-radius: 999px; white-space: nowrap; }
.layout { padding: 20px max(6vw, 28px) 50px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.panel { background: rgba(24, 19, 54, .92); border: 1px solid #39315d; border-radius: 22px; padding: 24px; box-shadow: 0 24px 60px rgba(0,0,0,.28); }
h2 { margin-top: 0; }
.muted { color: #aaa3c4; line-height: 1.55; }
textarea, input { width: 100%; background: #0e0b24; color: #f8f7ff; border: 1px solid #4a416d; border-radius: 12px; padding: 14px; }
textarea { min-height: 325px; resize: vertical; font: 14px/1.5 ui-monospace, monospace; }
button { border: 0; border-radius: 11px; padding: 12px 16px; font-weight: 800; cursor: pointer; }
.primary { width: 100%; margin-top: 12px; color: #07111b; background: linear-gradient(135deg, #61e6ff, #9effb6); }
.secondary { color: #eeeaff; background: #342b62; }
.actions, .question-row { display: flex; gap: 10px; margin: 14px 0; }
.summary { border-radius: 14px; padding: 16px; margin-bottom: 14px; font-weight: 800; }
.summary.neutral { background: #2b2740; }
.summary.ready { background: #153e34; color: #a8ffd8; }
.summary.needs_review { background: #4a251f; color: #ffd0c4; }
.findings { display: grid; gap: 10px; }
.finding { border-left: 4px solid #ffb27b; background: #120f2a; border-radius: 10px; padding: 13px 15px; }
.finding.error { border-color: #ff6f73; }
.finding.warning { border-color: #ffd066; }
.finding.success { border-color: #6df0ad; }
.finding p { margin: 6px 0; color: #d2cce8; }
.finding code { color: #83eaff; }
details { margin: 16px 0 22px; }
pre { white-space: pre-wrap; color: #bcecff; }
footer { padding: 0 max(6vw, 28px) 32px; color: #746c96; }
@media (max-width: 850px) { .layout { grid-template-columns: 1fr; } .hero { align-items: flex-start; flex-direction: column; } }

