:root { --bg-base: #0e0d0b; --bg-panel: #161410; --bg-elevated: #1e1b16; --bg-hover: #272318; --border: #3a3020; --border-accent: #6b5a2e; --text-primary: #d4c49a; --text-secondary: #8a7a5a; --text-muted: #4a4030; --accent-gold: #c8a84b; --accent-gold-bright: #e8c86b; --accent-red: #8b3a3a; --accent-green: #3a6b3a; --scrollbar-thumb: #3a3020; --font-family-body: 'EB Garamond', Georgia, serif; --font-size-base: 16px; font-family: var(--font-family-body); font-size: var(--font-size-base); color: var(--text-primary); background-color: var(--bg-base); } * { box-sizing: border-box; margin: 0; padding: 0; } body { min-height: 100vh; background-color: var(--bg-base); color: var(--text-primary); overflow: hidden; } #root { height: 100vh; display: flex; flex-direction: column; } /* Scrollbars */ ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: var(--bg-panel); } ::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb); border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: var(--border-accent); } /* Typography helpers */ .font-cinzel { font-family: 'Cinzel', serif; } .font-mono { font-family: 'JetBrains Mono', 'Fira Code', monospace; } /* Buttons */ button { cursor: pointer; font-family: inherit; font-size: inherit; } /* Input */ input, textarea, select { font-family: inherit; font-size: inherit; background: var(--bg-elevated); color: var(--text-primary); border: 1px solid var(--border); border-radius: 3px; padding: 6px 10px; outline: none; } input:focus, textarea:focus, select:focus { border-color: var(--border-accent); }