:root{--text-base:1rem;--text-xs:.625rem;--text-sm:.75rem;--text-md:.875rem;--text-body:1rem;--text-lg:1.0625rem;--text-xl:1.125rem;--text-2xl:1.1875rem;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-16:4rem;--bg:#d9d0c0;--surface:#e6ddd0;--surface-input:#ede6da;--surface-btn:#cdc4b2;--surface-btn-hover:#c0b6a2;--surface-btn-active:#b8ae9a;--surface-btn-primary:#8b6f4e;--surface-btn-primary-hover:#7a5f40;--border:#c4ad8a;--border-subtle:#d6c4a6;--border-hover:#9a7e58;--text:#3a2a1a;--text-dim:#7a6550;--text-bright:#1e1008;--text-primary-btn:#f5edd8;--accent-gold:#7a5a15;--accent-silver:#6b7c6b;--accent-crimson:#8b2e2e;--accent-blue:#3d6b5e;--accent-purple:#6e4a6e;--accent-green:#4a7a3a;--accent-red-dim:#7a4040;--font-prose:"Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-ui:"Courier New", Courier, monospace;--max-width:740px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--text-base)}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-ui);line-height:1.5}.badge{font-family:var(--font-ui);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;padding:var(--sp-1) var(--sp-2);background:var(--text-dim);color:var(--bg);border:none;border-radius:2px;font-weight:700;display:inline-block}.badge--god{background:var(--accent-gold);color:var(--bg)}.badge--demi-god{background:var(--accent-silver);color:var(--bg)}.badge--spirit{background:var(--accent-blue);color:var(--bg)}.badge--demon{background:var(--accent-crimson);color:var(--bg)}.badge--ancestor{background:var(--accent-purple);color:var(--bg)}.badge--herald{background:var(--accent-green);color:var(--bg)}.badge--war{background:var(--accent-crimson);color:var(--bg)}.badge--hubris{background:var(--accent-gold);color:var(--bg)}.badge--exodus{background:var(--accent-blue);color:var(--bg)}.badge--discovery{background:var(--accent-silver);color:var(--bg)}.badge--sacrifice{background:var(--accent-gold);color:var(--bg)}.badge--corruption{background:var(--accent-crimson);color:var(--bg)}.badge--sundering{background:var(--accent-blue);color:var(--bg)}.badge--return{background:var(--accent-silver);color:var(--bg)}.badge--recipe{background:var(--accent-blue);color:var(--bg);align-self:flex-start}.badge--seed{font-size:var(--text-md);letter-spacing:.05em;background:var(--surface-input);color:var(--text-dim);border:1px solid var(--border);margin-bottom:var(--sp-3);font-weight:400}.section-heading{font-family:var(--font-ui);font-size:var(--text-md);text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-bottom:var(--sp-3)}.divider-section{margin-top:var(--sp-5);border-top:1px solid var(--border);padding-top:var(--sp-5)}.proper-noun{color:var(--accent-gold);font-style:italic}#app{flex-direction:column;align-items:center;min-height:100vh;display:flex}#controls{width:100%;max-width:var(--max-width);padding:var(--sp-5) var(--sp-6) var(--sp-4);border-bottom:1px solid var(--border);align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.controls-title{font-size:var(--text-2xl);color:var(--text-bright);letter-spacing:.05em;margin-right:auto;font-weight:700}.control-group{align-items:center;gap:var(--sp-2);display:flex}.control-group label{color:var(--text-dim);font-size:var(--text-md);white-space:nowrap}input[type=text]{background:var(--surface-input);border:1px solid var(--border);color:var(--text);font-family:var(--font-ui);font-size:var(--text-body);padding:var(--sp-1) var(--sp-3);border-radius:3px;outline:none;width:160px}input[type=text]:focus{border-color:var(--accent-blue)}button{background:var(--surface-btn);border:1px solid var(--border);color:var(--text);font-family:var(--font-ui);font-size:var(--text-md);padding:var(--sp-2) var(--sp-3);cursor:pointer;border-radius:3px;transition:background .1s,border-color .1s}button:hover{background:var(--surface-btn-hover);border-color:var(--border-hover)}button:active{background:var(--surface-btn-active)}button.primary{background:var(--surface-btn-primary);border-color:var(--accent-gold);color:var(--text-primary-btn)}button.primary:hover{background:var(--surface-btn-primary-hover)}button.small{padding:var(--sp-1) var(--sp-2);font-size:var(--text-md)}#tabs{width:100%;max-width:var(--max-width);padding:var(--sp-3) var(--sp-6) 0;border-bottom:1px solid var(--border);gap:2px;display:flex}.tab-btn{color:var(--text-dim);font-family:var(--font-ui);font-size:var(--text-md);letter-spacing:.1em;text-transform:uppercase;padding:var(--sp-2) var(--sp-3) var(--sp-3);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;transition:color .1s,border-color .1s}.tab-btn:hover{border-color:var(--border);color:var(--text);background:0 0}.tab-btn.active{color:var(--text-bright);border-bottom-color:var(--accent-gold)}#output{width:100%;max-width:var(--max-width);padding:var(--sp-8) var(--sp-6) var(--sp-16);gap:var(--sp-10);flex-direction:column;display:flex}[hidden]{display:none!important}.empty-state{color:var(--text-dim);font-size:var(--text-body);text-align:center;margin-top:var(--sp-16);line-height:2}.myth-section{gap:var(--sp-3);flex-direction:column;display:flex}.myth-text{font-family:var(--font-prose);font-size:var(--text-xl);color:var(--text);line-height:1.7}.myth-card{border:1px solid var(--border);padding:var(--sp-5) var(--sp-6);border-radius:4px}.structure-section{border-top:1px solid var(--border);padding-top:var(--sp-4)}.structure-toggle{color:var(--text-dim);font-family:var(--font-ui);font-size:var(--text-md);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:0}.structure-toggle:hover{color:var(--text);background:0 0;border:none}.structure-body{margin-top:var(--sp-3);font-size:var(--text-md);color:var(--text-dim);white-space:pre-wrap;line-height:1.6;display:none}.structure-body.open{display:block}.batch-toolbar{gap:var(--sp-2);margin-bottom:var(--sp-2);display:flex}.agent-card{padding:var(--sp-2) 0;border-bottom:1px solid var(--border-subtle)}.agent-card:last-of-type{border-bottom:none}.agent-name-line{align-items:baseline;gap:var(--sp-2);flex-wrap:wrap;display:flex}.agent-name{font-family:var(--font-prose);font-size:var(--text-2xl);color:var(--text-bright);font-weight:700}.agent-title{font-family:var(--font-prose);font-size:var(--text-xl);color:var(--accent-gold);font-style:italic}.agent-details{font-family:var(--font-ui);font-size:var(--text-md);color:var(--text-dim);margin-top:var(--sp-1);line-height:1.5}.pantheon-tensions{font-family:var(--font-ui);font-size:var(--text-md);color:var(--accent-crimson);margin-top:var(--sp-3)}.event-card{padding:var(--sp-3) 0;border-bottom:1px solid var(--border-subtle)}.event-header{margin-bottom:var(--sp-2)}.event-prose{font-family:var(--font-prose);font-size:var(--text-xl);color:var(--text);margin-bottom:var(--sp-2);line-height:1.7}.event-changes{font-family:var(--font-ui);font-size:var(--text-md);color:var(--accent-crimson);margin-top:var(--sp-1)}.event-regions{font-family:var(--font-ui);font-size:var(--text-md);color:var(--accent-blue);margin-top:var(--sp-1)}.region-card{gap:var(--sp-2);padding:var(--sp-2) 0;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:baseline;display:flex}.region-name{font-family:var(--font-prose);font-size:var(--text-xl);color:var(--text-bright);font-weight:700}.region-concepts{font-family:var(--font-ui);font-size:var(--text-md);color:var(--text-dim)}.region-tagged-by{font-family:var(--font-ui);font-size:var(--text-md);color:var(--accent-silver)}#explorer{width:100%;max-width:var(--max-width);padding:var(--sp-6) var(--sp-6) var(--sp-16)}.explorer-search-row{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.explorer-search{flex:1;width:auto}.explorer-count{color:var(--text-dim);font-size:var(--text-md);white-space:nowrap}.explorer-table{border-collapse:collapse;width:100%;font-size:var(--text-body)}.explorer-th{text-align:left;color:var(--text-dim);font-size:var(--text-md);letter-spacing:.1em;text-transform:uppercase;padding:var(--sp-2) var(--sp-3) var(--sp-2) 0;border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.explorer-th:hover{color:var(--text)}.explorer-th.sort-active{color:var(--text-bright)}.explorer-th.sort-asc:after{content:" ↑";color:var(--accent-blue)}.explorer-th.sort-desc:after{content:" ↓";color:var(--accent-blue)}.explorer-row:hover td{background:#c8b89880}.explorer-td{padding:var(--sp-1) var(--sp-3) var(--sp-1) 0;border-bottom:1px solid var(--border-subtle);vertical-align:top;line-height:1.4}.explorer-td.concept{color:var(--text-bright)}.explorer-td.clickable{cursor:pointer}.explorer-td.clickable:hover{color:var(--accent-blue);text-decoration:underline}.explorer-td.rel-collides{color:var(--accent-crimson)}.explorer-td.rel-transforms{color:var(--accent-gold)}.explorer-td.rel-consumes{color:var(--accent-red-dim)}.explorer-td.rel-produces{color:var(--accent-green)}.explorer-td.rel-evokes{color:var(--accent-silver)}.explorer-td.rel-rhymes{color:var(--accent-purple)}.explorer-td.rel-is,.explorer-td.rel-color,.explorer-td.rel-sound,.explorer-td.rel-texture,.explorer-td.rel-shape{color:var(--text-dim)}
