:root {
    /* Color Palette */
    --bg-color: #0D1117;
    /* Deep background */
    --box-bg: #0D1117;
    /* Deep dark grid grey with noise texture planned */
    --accent-green: #32CD32;
    /* Terminal green */
    --accent-green-glow: rgba(50, 205, 50, 0.4);
    --accent-amber: #FFB000;
    /* Classic Amber */
    --text-main: #f5f5f5;
    /* Off-white */
    --text-muted: #8c97a7;

    /* Typography */
    --font-heading: 'Space Mono', monospace;
    --font-body: 'Inter', sans-serif;

    /* Terminal sharp borders and solid shadows */
    --border-resting: 1px solid rgba(255, 255, 255, 0.15);
    --border-active: 1px solid var(--accent-green);
    --shadow-inset: none;
    --shadow-drop: 4px 4px 0px rgba(0, 0, 0, 0.8);

    /* Textures */
    --noise-texture: url('data:image/svg+xml;utf8,%3CSVG xmlns="http://www.w3.org/2000/svg" width="100" height="100"%3E%3Cfilter id="noise"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="0.65" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100" height="100" filter="url(%23noise)" opacity="0.04"/%3E%3C/SVG%3E');
}

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

html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

body {
    background-color: var(--bg-color);
    color: var(--text-main);
    font-family: var(--font-body);
    line-height: 1.6;
    padding: 3rem 1.5rem;
    min-height: 100vh;
    background-image: radial-gradient(circle at 50% 0%, rgba(50, 205, 50, 0.05) 0%, transparent 50%);
}

h1,
h2,
h3,
.logo-text,
.tab,
.btn-terminal,
.spec-label,
.classified-text,
.terminal-prompt,
.metric-value,
.metric-label,
.status-badge,
.phil-num,
.dispatch-header h2,
.form-group label,
.retro-input,
.retro-textarea,
.retro-select,
.btn-execute,
.dispatch-footer,
.terminal-header,
.terminal-body {
    font-family: var(--font-heading);
}

.accent-green {
    color: var(--accent-green);
}

.accent-amber {
    color: var(--accent-amber);
}

.align-amber {
    border-bottom: 1px dashed rgba(255, 176, 0, 0.2);
}