:root{--bg: #1a1614;--surface: #262019;--surface-2: #322a20;--border: #4a3f30;--text: #ece3d4;--muted: #a8997f;--accent: #c0392b;--accent-hover: #a93226;--gold: #d4af37;--good: #4a9e5c;--radius: 8px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,sans-serif;font-size:15px}a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:Georgia,serif;margin:0 0 .5em}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface-2);color:var(--text);padding:.45rem .9rem;border-radius:var(--radius);transition:background .15s}button:hover{background:var(--border)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:var(--accent-hover)}button.ghost{background:transparent}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.4rem .55rem;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold)}label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:.2rem}.container{max-width:1080px;margin:0 auto;padding:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:1rem}.panel h2{color:var(--gold);font-size:1.1rem;border-bottom:1px solid var(--border);padding-bottom:.4rem}.row{display:flex;gap:.75rem;flex-wrap:wrap}.grid{display:grid;gap:.75rem}.muted{color:var(--muted)}.error{color:#e57373;font-size:.85rem}.badge{display:inline-block;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.1rem .6rem;font-size:.8rem}.navbar{display:flex;align-items:center;gap:1rem;padding:.7rem 1.5rem;background:var(--surface);border-bottom:2px solid var(--accent)}.navbar .brand{font-family:Georgia,serif;font-weight:700;color:var(--gold);font-size:1.15rem}.navbar .spacer{flex:1}.navbar a.active{color:var(--text)}.auth-wrap{max-width:380px;margin:8vh auto}.save-indicator{font-size:.8rem;color:var(--muted)}.save-indicator.saved{color:var(--good)}
