:root{--color-bg: #1a1814;--color-surface: #252119;--color-surface-elevated: #2f2a22;--color-border: #3d362d;--color-text: #e8e4de;--color-text-muted: #9a9389;--color-accent: #c9a227;--color-accent-hover: #ddb83a;--color-error: #c44;--font-serif: "Crimson Pro", Georgia, serif;--font-sans: "Source Sans 3", system-ui, sans-serif;--radius: 6px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-serif);font-weight:600;margin:0 0 .5em}h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.1rem}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover);text-decoration:underline}a.active{color:var(--color-accent);font-weight:500}input,textarea,select,button{font-family:inherit;font-size:1rem}button{cursor:pointer;background:var(--color-accent);color:var(--color-bg);border:none;padding:.5rem 1rem;border-radius:var(--radius);font-weight:500}button:hover{background:var(--color-accent-hover)}button.secondary{background:var(--color-surface-elevated);color:var(--color-text)}button.secondary:hover{background:var(--color-border)}button.danger{background:var(--color-error)}button:disabled{opacity:.6;cursor:not-allowed}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.25rem;color:var(--color-text-muted);font-size:.9rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem}.stoplist-manual+.stoplist-manual{margin-top:1.5rem}.stoplist-manual-header{margin-bottom:.75rem;padding:.45rem .75rem;border-left:3px solid var(--color-accent);background:var(--color-surface-elevated);color:var(--color-text);font-family:var(--font-serif);font-size:1rem;font-weight:600;border-radius:var(--radius)}.stoplist-table{width:max-content;border-collapse:collapse}.stoplist-row td{padding:.4rem .25rem;text-align:left;vertical-align:baseline}.stoplist-row td:first-child{padding-right:.5rem}.stoplist-row td{border-top:1px solid var(--color-border)}.stoplist-name{white-space:nowrap}.stoplist-pitch{color:var(--color-text-muted);text-align:left;white-space:nowrap}.empty-state{text-align:center;padding:2rem;color:var(--color-text-muted)}
