/* M0 noir base. The full pixel-noir design system (tokens, 9-slice panels, fonts, FX) is ported from prototype/css in M2. */ :root { --ink-0: #080b10; --ink-2: #11202a; --ink-3: #1b2d38; --slate-3: #5d8a8a; --amber-2: #e0a44c; --bone-2: #e0d9c4; --bone-3: #f5f1e6; --ox-3: #c23b3b; } * { box-sizing: border-box; } html, body, #app { height: 100%; margin: 0; } body { background: radial-gradient(120% 100% at 50% 0%, var(--ink-2) 0%, var(--ink-0) 70%); color: var(--bone-2); font-family: ui-monospace, 'Cascadia Mono', Menlo, Consolas, monospace; -webkit-font-smoothing: none; image-rendering: pixelated; } .cz-splash { min-height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; text-align: center; padding: 2rem; } .cz-wordmark { margin: 0; font-size: clamp(2.5rem, 8vw, 5rem); letter-spacing: 0.15em; color: var(--bone-3); text-shadow: 4px 4px 0 #000; } .cz-tag { margin: 0 0 1rem; opacity: 0.8; } .cz-btn { background: var(--ink-3); color: var(--amber-2); border: 2px solid var(--amber-2); padding: 0.7rem 1.2rem; letter-spacing: 0.1em; cursor: pointer; } .cz-btn:hover:not(:disabled) { background: var(--amber-2); color: var(--ink-0); } .cz-btn:disabled { opacity: 0.6; cursor: default; } .cz-err { color: var(--ox-3); } .cz-card { border: 2px solid var(--ink-3); background: rgba(13, 17, 23, 0.8); padding: 1rem 1.25rem; min-width: 280px; } .cz-caseid { color: var(--amber-2); letter-spacing: 0.2em; } .cz-title { margin: 0.3rem 0; font-size: 1.4rem; color: var(--bone-3); } .cz-victim { opacity: 0.85; } .cz-note { margin-top: 0.6rem; font-size: 0.8rem; color: var(--slate-3); }