:root{--ink: #171a21;--panel: #1e222c;--panel-2: #242936;--line: #2c3242;--text: #e9e3d5;--muted: #8d94a4;--ember: #f0913f;--ember-deep: #d8622f;--danger: #e06060;--serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--ink);color:var(--text);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:600}.btn{font:inherit;font-size:.9rem;padding:.55rem .9rem;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer}.btn:hover{border-color:var(--muted)}.btn:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--ember);outline-offset:1px}.btn.primary{background:linear-gradient(160deg,var(--ember),var(--ember-deep));border-color:transparent;color:#1c1207;font-weight:600}.btn.ghost{background:transparent}.btn.danger{color:var(--danger);background:transparent}.btn.tiny{font-size:.78rem;padding:.3rem .55rem}.btn.small{font-size:.85rem;padding:.45rem .75rem}.btn.wide{display:block;width:100%;margin-top:.75rem}.btn:disabled{opacity:.45;cursor:default}input[type=text],input[type=password],input[type=number],textarea,select{font:inherit;width:100%;padding:.55rem .65rem;border-radius:8px;border:1px solid var(--line);background:var(--ink);color:var(--text)}textarea{resize:vertical}.field{display:block;margin-bottom:.9rem}.field-label{display:block;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem}.field-hint{display:block;font-size:.78rem;color:var(--muted);margin-top:.35rem}.field-row{display:flex;gap:.75rem}.field-row .field{flex:1}.section-label{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ember);margin:1.2rem 0 .6rem}.home{max-width:640px;margin:0 auto;padding:1rem 1rem 3rem}.home-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0 1.25rem}.brand{display:flex;align-items:center;gap:.6rem}.brand h1{font-family:var(--serif);font-size:1.35rem;letter-spacing:.01em}.brand-mark{width:14px;height:14px;border-radius:3px;background:linear-gradient(160deg,var(--ember),var(--ember-deep));box-shadow:0 0 12px #f0913f8c}.notice{border:1px solid var(--line);border-left:3px solid var(--ember);background:var(--panel);border-radius:8px;padding:.75rem .9rem;font-size:.9rem;margin-bottom:1.25rem;color:var(--muted)}.notice strong{color:var(--text)}.empty{text-align:center;color:var(--muted);padding:3.5rem 1rem}.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.project-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:.35rem .6rem .55rem}.project-open{display:block;width:100%;text-align:left;background:none;border:none;color:inherit;font:inherit;padding:.5rem .25rem .25rem;cursor:pointer}.project-title{display:block;font-family:var(--serif);font-size:1.15rem}.project-meta{display:block;font-size:.8rem;color:var(--muted);margin-top:.15rem}.project-actions{display:flex;gap:.35rem;justify-content:flex-end}.workspace{height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:.4rem;padding:.45rem .6rem;border-bottom:1px solid var(--line);background:var(--panel)}.topbar-title{flex:1;min-width:0;background:none;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:.1rem .3rem}.topbar-project{display:block;font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-chapter{display:block;font-family:var(--serif);font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{display:flex;gap:.2rem}.editor-wrap{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.editor{flex:1;min-height:55dvh;width:100%;border:none;border-radius:0;background:var(--ink);color:var(--text);font-family:var(--serif);font-size:1.06rem;line-height:1.65;padding:1.1rem 1.1rem 2rem}.editor:focus-visible{outline:none}.results{border-top:1px solid var(--line);background:var(--panel);padding:.6rem .8rem .9rem}.results-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.results-title{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.results-actions{display:flex;gap:.35rem}.forging{color:var(--ember);animation:forge-pulse 1.4s ease-in-out infinite}.cards{display:flex;flex-direction:column;gap:.6rem}.card{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:.75rem .85rem}.card.streaming{border-color:var(--ember-deep);box-shadow:0 0 14px #f0913f24 inset,0 0 10px #f0913f1f;animation:forge-pulse 1.4s ease-in-out infinite}@keyframes forge-pulse{0%,to{opacity:1}50%{opacity:.72}}@media (prefers-reduced-motion: reduce){.forging,.card.streaming{animation:none}}.card-label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ember);margin-bottom:.35rem}.card-text{margin:0 0 .6rem;font-family:var(--serif);font-size:.98rem;line-height:1.6;white-space:pre-wrap}.card-error{margin:0;color:var(--danger);font-size:.9rem}.dock{border-top:1px solid var(--line);background:var(--panel);padding:.5rem .6rem calc(.5rem + env(safe-area-inset-bottom))}.dock-row{display:flex;align-items:center;gap:.45rem}.dock-row+.dock-row{margin-top:.45rem}.selection-row{padding-bottom:.45rem;border-bottom:1px dashed var(--line)}.dock-label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:.15rem}.dock-input{flex:1;min-width:0}.write-btn{min-width:5.2rem}.dock-meta{display:flex;align-items:center;justify-content:space-between;gap:.6rem;font-size:.72rem;color:var(--muted);margin-top:.35rem}.model-override{display:flex;align-items:center;gap:.4rem;min-width:0}.model-override-label{letter-spacing:.08em;text-transform:uppercase}.model-override select{width:auto;max-width:58vw;font-size:.78rem;padding:.25rem .4rem;color:var(--text)}.model-override select:has(option[value=""]:checked){color:var(--muted)}.results-model{color:var(--muted);text-transform:none;letter-spacing:normal}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.history-entry{border:1px solid var(--line);border-radius:10px;background:var(--panel-2);padding:.65rem .75rem}.history-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.history-action{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ember)}.history-time{font-size:.75rem;color:var(--muted);white-space:nowrap}.history-meta{font-size:.78rem;color:var(--muted);margin:.15rem 0 .35rem;word-break:break-all}.history-snippet{font-size:.85rem;margin-bottom:.35rem;line-height:1.45}.history-snippet-label{color:var(--muted);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.history-variants{margin:.35rem 0 .5rem}.history-variants summary{cursor:pointer;font-size:.82rem;color:var(--muted)}.history-variants summary:hover{color:var(--text)}.history-variant{border-top:1px dashed var(--line);padding-top:.5rem;margin-top:.5rem}.history-variant .card-text{margin-bottom:.4rem}.history-actions{display:flex;gap:.4rem}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c1199;display:flex;align-items:center;justify-content:center;z-index:40;padding:1rem}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:100%;max-width:480px;max-height:90dvh;display:flex;flex-direction:column}.modal-head,.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--line)}.modal-head h2,.drawer-head h2{font-family:var(--serif);font-size:1.1rem}.modal-body{padding:1rem;overflow-y:auto}.modal-foot{padding:.75rem 1rem 1rem;border-top:1px solid var(--line)}.drawer-overlay{justify-content:flex-end;align-items:stretch;padding:0}.drawer{background:var(--panel);border-left:1px solid var(--line);width:min(92vw,380px);height:100%;display:flex;flex-direction:column;animation:drawer-in .18s ease-out}.drawer.wide{width:min(94vw,460px)}@keyframes drawer-in{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.drawer{animation:none}}.drawer-body{padding:1rem;overflow-y:auto;flex:1;display:flex;flex-direction:column}.drawer-hint{font-size:.85rem;color:var(--muted);margin:0 0 .9rem}.chapter-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.chapter-item{border:1px solid var(--line);border-radius:8px;padding:.3rem .5rem .45rem;background:var(--panel-2)}.chapter-item.active{border-color:var(--ember-deep)}.chapter-open{display:block;width:100%;text-align:left;background:none;border:none;color:inherit;font-family:var(--serif);font-size:1rem;padding:.4rem .2rem;cursor:pointer}.chapter-actions{display:flex;gap:.25rem;justify-content:flex-end}.bible-section{margin-bottom:.5rem}.bible-section-head{display:flex;align-items:center;justify-content:space-between}.bible-section-head .section-label{margin:.6rem 0}.bible-entry{border:1px solid var(--line);border-radius:8px;padding:.6rem;margin-bottom:.6rem;background:var(--panel-2)}.bible-entry-row{display:flex;gap:.4rem;margin-bottom:.45rem}.chat{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.55rem;margin-bottom:.75rem}.chat-msg{padding:.6rem .75rem;border-radius:10px;font-size:.93rem;line-height:1.5;white-space:pre-wrap;max-width:94%}.chat-msg.user{align-self:flex-end;background:var(--panel-2);border:1px solid var(--line)}.chat-msg.assistant{align-self:flex-start;background:var(--ink);border:1px solid var(--line)}.chat-input-row{display:flex;gap:.45rem;align-items:flex-end;margin-bottom:.5rem}.toast{position:fixed;left:50%;bottom:calc(7.5rem + env(safe-area-inset-bottom));transform:translate(-50%);background:var(--panel-2);border:1px solid var(--ember-deep);color:var(--text);border-radius:10px;padding:.6rem .9rem;font-size:.88rem;max-width:90vw;z-index:60}@media (min-width: 900px){.editor{padding:2rem clamp(1.5rem,14vw,12rem) 3rem;font-size:1.12rem}.dock{padding-left:1.25rem;padding-right:1.25rem}.dock-row,.dock-meta{max-width:860px;margin-left:auto;margin-right:auto}.cards{flex-direction:row;align-items:stretch}.cards .card{flex:1;min-width:0}}
