:root,:root[data-theme=dark]{--bg-primary: #1a1a2e;--bg-secondary: #16162a;--bg-surface: #222240;--bg-surface-hover: #2a2a4a;--text-primary: #e8e8ec;--text-secondary: #9898a8;--text-tertiary: #68687a;--accent: #e87b35;--accent-hover: #f08c48;--accent-muted: rgba(232, 123, 53, .15);--border: #2e2e48;--border-accent: #e87b35;--success: #4ade80;--success-muted: #3fa862;--warning: #fbbf24;--danger: #f87171;--danger-muted: #c85a5a;--code-bg: #1e1e36}:root[data-theme=light]{--bg-primary: #f8f8fa;--bg-secondary: #ffffff;--bg-surface: #ffffff;--bg-surface-hover: #f0f0f4;--text-primary: #1a1a2e;--text-secondary: #5a5a6e;--text-tertiary: #9898a8;--accent: #d06520;--accent-hover: #e87b35;--accent-muted: rgba(208, 101, 32, .08);--border: #e0e0e8;--border-accent: #d06520;--success: #16a34a;--success-muted: #3fa862;--warning: #ca8a04;--danger: #dc2626;--danger-muted: #b04848;--code-bg: #f0f0f5}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg-primary);color:var(--text-primary)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}button{font-family:inherit;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:background .1s,border-color .1s}button:hover{background:var(--bg-surface-hover);border-color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}input[type=text],input[type=search]{font-family:inherit;font-size:14px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;padding:8px 10px;outline:none;width:100%}input[type=text]:focus,input[type=search]:focus{border-color:var(--border-accent);box-shadow:0 0 0 2px var(--accent-muted)}::selection{background:var(--accent-muted)}.font-bible{font-family:Philosopher,serif}.font-mono{font-family:JetBrains Mono,Fira Mono,monospace}.font-body{font-family:Inter,sans-serif}.text-muted{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.app{display:flex;flex-direction:column;min-height:100vh}.top-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.top-bar .brand{font-family:Philosopher,serif;font-weight:700;font-size:18px;color:var(--accent);letter-spacing:.4px}.top-bar .spacer{flex:1 1 auto}.top-bar button.icon{padding:4px 10px;font-size:13px}.main-frame{display:grid;grid-template-columns:240px 1fr 320px;flex:1 1 auto;min-height:0}.main-frame.no-history{grid-template-columns:0 1fr 320px}.main-frame.no-reason{grid-template-columns:240px 1fr 0}.main-frame.no-history.no-reason{grid-template-columns:0 1fr 0}@media (max-width: 1279px){.main-frame{grid-template-columns:1fr 320px}.main-frame .history-panel{display:none}.main-frame .history-panel.drawer-open{display:block;position:fixed;z-index:30;left:0;top:48px;bottom:0;width:280px;box-shadow:4px 0 12px #00000059}}@media (max-width: 767px){.main-frame{grid-template-columns:1fr}.main-frame .reasoning-panel{display:none}.main-frame .reasoning-panel.drawer-open{display:block;position:fixed;z-index:30;right:0;top:48px;bottom:0;width:92vw;max-width:360px;box-shadow:-4px 0 12px #00000059}.main-frame .history-panel.drawer-open{width:80vw;max-width:300px}}.history-panel,.reasoning-panel{background:var(--bg-secondary);border:1px solid var(--border);border-top:0;border-bottom:0;overflow-y:auto;min-height:0}.history-panel{border-left:0}.reasoning-panel{border-right:0}.content-panel{padding:16px;overflow-y:auto;min-width:0}.footer{display:flex;align-items:center;gap:14px;padding:6px 14px;font-size:12px;color:var(--text-tertiary);background:var(--bg-secondary);border-top:1px solid var(--border);flex-shrink:0}.footer .dot-ok{color:var(--success)}.footer .dot-down{color:var(--danger)}.search-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:12px;display:flex;flex-direction:column;gap:10px}.search-row{display:flex;gap:8px}.search-row input{flex:1 1 auto}.mode-pills,.trans-pills{display:flex;gap:6px;flex-wrap:wrap}.pill{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-weight:500}.pill.active{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.pill-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-right:6px}.passage-tables{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}@media (max-width: 1024px){.passage-tables{grid-template-columns:1fr}}.passage-table{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;overflow:hidden}.passage-table .table-header{padding:8px 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}.passage-table.support .table-header{color:var(--success)}.passage-table.tension .table-header{color:var(--danger)}.passage-table .count{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-tertiary);font-weight:400}.passage-row{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:10px 12px;border-top:1px solid var(--border);animation:fadeIn .15s ease-out}.passage-row:first-child{border-top:0}.passage-row:hover{background:var(--bg-surface-hover)}.passage-row .ref-cell{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;color:var(--text-primary);display:flex;flex-direction:column;gap:3px}.passage-row .ref-cell .trans{font-size:10px;color:var(--text-tertiary);letter-spacing:.3px}.passage-row .ref-cell .directness{font-size:10px;color:var(--text-secondary);display:inline-flex;align-items:center;gap:4px;letter-spacing:.2px}.passage-row.support .dot{color:var(--success)}.passage-row.tension .dot{color:var(--danger)}.passage-row.concept .dot{color:var(--accent)}.passage-row .verse-text{font-family:Philosopher,serif;font-size:15px;line-height:1.6;color:var(--text-primary)}.passage-row .verse-text .highlight{color:var(--accent);font-weight:700}.passage-row .connection{font-size:13px;color:var(--text-secondary);margin-top:6px;line-height:1.5}.passage-row .connection:before{content:"↳ ";color:var(--text-tertiary)}.conclusion{margin-top:14px;background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:14px;animation:fadeIn .2s ease-out}.conclusion h3{margin:0 0 8px;font-size:14px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--text-secondary)}.conclusion .summary{font-size:14px;line-height:1.6;margin-bottom:10px}.conclusion ul.reasons{list-style:none;padding:0;margin:0 0 14px}.conclusion ul.reasons li{padding:3px 0 3px 14px;position:relative;font-size:13px;color:var(--text-primary)}.conclusion ul.reasons li:before{content:"•";position:absolute;left:0;color:var(--accent)}.confidence-box{margin-top:10px;padding:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px}.confidence-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.confidence-label{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary)}.confidence-pct{font-family:JetBrains Mono,monospace;font-size:18px;font-weight:500;line-height:1.2}.confidence-bar{flex:1 1 auto;height:10px;background:var(--bg-surface);border:1px solid var(--border);border-radius:5px;overflow:hidden;position:relative}.confidence-fill{height:100%;transition:width .3s ease-out}.confidence-box ul.reasons{margin-top:4px}.confidence-90{color:var(--success)}.confidence-fill-90{background:var(--success)}.confidence-70{color:var(--success-muted)}.confidence-fill-70{background:var(--success-muted)}.confidence-50{color:var(--warning)}.confidence-fill-50{background:var(--warning)}.confidence-30{color:var(--danger-muted)}.confidence-fill-30{background:var(--danger-muted)}.confidence-0{color:var(--danger)}.confidence-fill-0{background:var(--danger)}.reasoning-panel-inner{padding:14px}.reasoning-panel h3{font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--text-secondary);margin:0 0 10px;border-bottom:1px solid var(--border);padding-bottom:8px}.reasoning-paragraph{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0 0 12px;animation:fadeIn .15s ease-out}.history-panel-inner{padding:12px}.history-panel h3{font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--text-secondary);margin:0 0 10px;border-bottom:1px solid var(--border);padding-bottom:8px}.history-item{padding:8px 10px;margin-bottom:4px;border-radius:4px;cursor:pointer;border:1px solid transparent}.history-item:hover{background:var(--bg-surface-hover);border-color:var(--border)}.history-item .q{font-size:13px;color:var(--text-primary);line-height:1.4;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.history-item .meta{display:flex;gap:8px;align-items:center;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-tertiary)}.history-item .mode-tag{background:var(--bg-surface);padding:1px 5px;border-radius:3px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.word-results{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;margin-top:14px;overflow:hidden}.word-results .header{padding:10px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border);font-size:13px;color:var(--text-secondary);font-family:JetBrains Mono,monospace}.word-result-row{padding:10px 12px;border-top:1px solid var(--border)}.word-result-row:first-of-type{border-top:0}.word-result-row .ref{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;margin-right:8px}.word-result-row .badge{display:inline-block;padding:1px 5px;border-radius:3px;font-family:JetBrains Mono,monospace;font-size:10px;color:var(--accent);background:var(--accent-muted);letter-spacing:.3px}.word-result-row .verse-text{font-family:Philosopher,serif;font-size:15px;line-height:1.6;margin-top:4px}.streaming-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block;animation:pulse 1.2s infinite ease-in-out;vertical-align:middle}@keyframes pulse{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.streaming-line{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px;padding:8px 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.guardrails{max-width:800px;margin:0 auto;padding:20px;line-height:1.6}.guardrails h1{font-family:Philosopher,serif;font-size:28px;font-weight:700;margin:0 0 8px}.guardrails h2{font-family:Philosopher,serif;font-size:20px;margin-top:28px;margin-bottom:6px}.guardrails h3{font-size:14px;font-weight:600;margin-top:16px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary)}.guardrails .lede{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:12px 14px;margin:14px 0 24px}.guardrails table{border-collapse:collapse;width:100%;margin:8px 0;font-size:13px}.guardrails table th,.guardrails table td{border:1px solid var(--border);padding:6px 10px;text-align:left;vertical-align:top}.guardrails table th{background:var(--bg-secondary);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.3px}.guardrails ul{padding-left:22px}.guardrails li{margin-bottom:4px}.guardrails code{background:var(--code-bg);padding:1px 5px;border-radius:3px;font-family:JetBrains Mono,monospace;font-size:12px}.hstack{display:flex;align-items:center;gap:8px}.vstack{display:flex;flex-direction:column;gap:8px}.badge-scope{display:inline-block;font-size:10px;font-family:JetBrains Mono,monospace;padding:2px 6px;background:var(--accent-muted);color:var(--accent);border-radius:3px;letter-spacing:.3px}
