:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background: #0c111b; color: #e8edf6; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 10% 0%, #1b3151, #0c111b 45%); }
.site-header { height: 68px; padding: 0 7vw; display: flex; gap: 1rem; align-items: center; border-bottom: 1px solid #26344d; }
.brand { color: #f5f8ff; text-decoration: none; font-weight: 750; letter-spacing: .02em; }
.tagline, .quiet { color: #9dacbf; font-size: .9rem; }
.container { width: min(1080px, 92vw); margin: 3.5rem auto; }
.card { background: #121c2d; border: 1px solid #263b5d; border-radius: 14px; padding: 1.35rem; box-shadow: 0 12px 30px #0004; margin-block: 1.25rem; }
.auth-card { max-width: 440px; margin-inline: auto; }
.eyebrow { color: #78b7ff; letter-spacing: .08em; text-transform: uppercase; font-size: .76rem; font-weight: 700; }
h1, h2 { margin-top: .2rem; }
h2 { font-size: 1.1rem; }
label { display: grid; gap: .4rem; margin-block: .85rem; color: #ced9eb; font-size: .9rem; }
input, textarea, select { background: #09111e; color: #f1f5fc; border: 1px solid #3a5278; border-radius: 7px; min-height: 2.6rem; padding: .65rem; font: inherit; }
textarea { min-height: 5.5rem; resize: vertical; }
fieldset { border: 1px solid #334d73; border-radius: 8px; margin: 1rem 0; padding: .35rem .85rem .7rem; }
legend { color: #9dacbf; padding-inline: .35rem; font-size: .85rem; }
button { cursor: pointer; border: 0; border-radius: 7px; background: #2775c9; color: white; min-height: 2.55rem; padding: .55rem .9rem; font: inherit; font-weight: 650; }
button:hover { background: #358be8; }
button.secondary { background: #263b5c; }
button.secondary:hover { background: #344d75; }
.separator { display: flex; align-items: center; gap: .75rem; margin: 1rem 0; color: #9dacbf; }
.separator::before, .separator::after { content: ""; height: 1px; background: #33445e; flex: 1; }
.language-switch { display: flex; gap: .4rem; position: absolute; margin-left: 310px; margin-top: -3.3rem; }
.language-switch button { min-height: 1.8rem; padding: .2rem .45rem; background: #263b5c; font-size: .75rem; }
.page-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.grid.two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.report-list { display: grid; gap: .75rem; }
.report { border: 1px solid #2d4264; background: #0d1726; border-radius: 9px; padding: 1rem; }
.report-head { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; }
.severity { font-size: .78rem; font-weight: 750; letter-spacing: .05em; text-transform: uppercase; }
.severity-critical, .severity-high { color: #ff8e8e; }.severity-medium { color: #ffcb70; }.severity-low { color: #81d8ff; }.severity-info { color: #a6b4c8; }
.actions { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .8rem; }
dialog { background: #121c2d; color: #f1f5fc; border: 1px solid #4b6694; border-radius: 12px; width: min(600px, 92vw); }
dialog::backdrop { background: #000a; }
menu { padding: 0; display: flex; justify-content: flex-end; gap: .5rem; }
@media (max-width: 680px) { .grid.two { grid-template-columns: 1fr; } .site-header { padding: 0 4vw; } .language-switch { position: static; margin: .5rem 0; } }
