/* KILLPIPE — Daily Brain Training */

* { margin: 0; padding: 0; box-sizing: border-box; }

:root {
    --bg-primary: #13151A;
    --bg-surface: #1C1E26;
    --bg-elevated: #252830;
    --border-dark: #2E3038;
    --border-medium: #3A3D48;
    --border-light: #4A4D58;
    --text-primary: #FFFFFF;
    --text-secondary: #C8CAD0;
    --text-muted: #7A7D85;
    --accent-green: #22CC77;
    --accent-gold: #FFB830;
    --accent-red: #FF4D4D;
    --accent-blue: #4488FF;
    --accent-purple: #AA44FF;
    --accent-orange: #FF6B35;
    --radius: 12px;
    --radius-sm: 8px;
}

body {
    background: var(--bg-primary);
    color: var(--text-primary);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
}

h1 { font-size: 32px; font-weight: 800; margin-bottom: 8px; }
h2 { font-size: 24px; font-weight: 700; margin-bottom: 12px; }
h3 { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
p { line-height: 1.6; margin-bottom: 8px; }

a { color: var(--accent-blue); text-decoration: none; }
a:hover { opacity: 0.85; }

button {
    padding: 12px 24px;
    background: var(--bg-elevated);
    border: 1px solid var(--border-medium);
    border-radius: var(--radius-sm);
    color: var(--text-primary);
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}
button:hover:not(:disabled) { background: var(--border-dark); transform: translateY(-1px); }
button:active:not(:disabled) { transform: scale(0.97); }
button:disabled { opacity: 0.3; cursor: not-allowed; }

button.primary {
    background: var(--accent-green);
    border: none;
    color: #000;
    font-weight: 700;
}
button.primary:hover:not(:disabled) {
    filter: brightness(1.1);
    box-shadow: 0 4px 16px rgba(34, 204, 119, 0.3);
}

.panel {
    background: var(--bg-surface);
    border: 1px solid var(--border-dark);
    border-radius: var(--radius);
    padding: 20px;
    margin-bottom: 16px;
}

@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
@keyframes pop { 0% { transform: scale(1); } 50% { transform: scale(1.12); } 100% { transform: scale(1); } }
@keyframes shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }

.pulse { animation: pulse 2s infinite; }
.pop { animation: pop 0.2s ease-out; }
.shake { animation: shake 0.3s ease; }

.text-center { text-align: center; }
.text-muted { color: var(--text-muted); }
.text-accent { color: var(--accent-green); }
.text-gold { color: var(--accent-gold); }
.text-error { color: var(--accent-red); }
.mb-1 { margin-bottom: 8px; }
.mb-2 { margin-bottom: 16px; }
.mb-3 { margin-bottom: 24px; }
.mt-1 { margin-top: 8px; }
.mt-2 { margin-top: 16px; }
.mt-3 { margin-top: 24px; }
