:root{--ink:#223139;--muted:#73818a;--paper:#faf8f2;--white:#fffefa;--line:#e5e7e2;--teal:#225c61;--teal-dark:#17464b;--gold:#d3ab69;--side:#17262d;--side-2:#20333a;--side-text:#d6e1e0;--shadow:0 12px 35px #23353c12}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--side);color:var(--side-text);padding:28px 18px 18px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;gap:12px;align-items:center;padding:0 12px 36px}.brand-mark{font-size:28px;color:var(--gold)}.brand strong{font-family:'Libre Baskerville',serif;display:block;font-size:18px;color:#fff}.brand small{display:block;color:#91aaa9;margin-top:5px;font-size:11px;letter-spacing:.06em}.side-heading{display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.15em;font-size:11px;color:#94aaa9;font-weight:700;padding:0 10px;margin-bottom:12px}.icon-button{border:0;background:transparent;color:inherit;font-size:22px;line-height:1;padding:2px 6px;border-radius:5px}.icon-button:hover{background:#ffffff18}#book-select{width:100%;background:var(--side-2);color:#fff;border:1px solid #355059;border-radius:8px;padding:12px;outline:0}.side-action{width:100%;text-align:left;color:#b9cdcb;background:transparent;border:0;padding:12px 10px;font-size:12px}.side-action:hover{color:#fff}.chapters-heading{margin-top:30px}.chapter-list{overflow:auto;flex:1}.chapter-item{width:100%;text-align:left;display:flex;gap:11px;align-items:flex-start;border:1px solid transparent;background:transparent;color:#c6d5d4;border-radius:8px;padding:11px 10px;margin-bottom:3px}.chapter-item:hover{background:#ffffff0b}.chapter-item.active{background:#2e4850;border-color:#42616a;color:#fff}.chapter-number{font-family:'Libre Baskerville',serif;color:#d6aa66;font-size:12px;min-width:22px;padding-top:2px}.chapter-name{font-size:12px;line-height:1.45}.sidebar-footer{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #355059;padding:17px 8px 0;color:#8ba4a3;font-size:11px}.main-area{min-width:0}.topbar{padding:30px clamp(24px,4vw,65px) 18px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:#a77c42}.book-heading h1{font-family:'Libre Baskerville',serif;font-size:clamp(23px,2.5vw,34px);font-weight:400;margin:8px 0}.book-heading p{font-size:13px;color:var(--muted);margin:0}.top-actions{display:flex;gap:8px;flex-wrap:wrap}.quiet-button,.primary-button,.danger-button{border-radius:7px;padding:10px 13px;font-size:12px;font-weight:700}.quiet-button{color:var(--teal);border:1px solid #cadad6;background:#fff}.quiet-button:hover{background:#eef6f2}.primary-button{background:var(--teal);color:#fff;border:1px solid var(--teal)}.primary-button:hover{background:var(--teal-dark)}.danger-button{border:0;background:#fbe9e7;color:#a43d36}.tabs{display:flex;gap:27px;border-bottom:1px solid var(--line);padding:0 clamp(24px,4vw,65px);overflow:auto}.tabs button{white-space:nowrap;border:0;background:transparent;padding:17px 0 15px;color:#7a8a90;font-size:13px;font-weight:700;border-bottom:2px solid transparent}.tabs button.active{color:var(--teal);border-color:var(--teal)}.workspace{padding:28px clamp(24px,4vw,65px) 50px}.empty{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:45px;text-align:center;box-shadow:var(--shadow);max-width:680px;margin:35px auto}.empty h2{font-family:'Libre Baskerville',serif;font-weight:400}.empty p{color:var(--muted);line-height:1.6}.write-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;align-items:start}.editor-card,.support-card,.record-card{background:var(--white);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow)}.editor-card{overflow:hidden}.editor-head{padding:22px 28px 18px;border-bottom:1px solid var(--line)}.editor-head-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.editor-head h2{font-family:'Libre Baskerville',serif;font-weight:400;margin:8px 0 0;font-size:21px}.scene-pills{display:flex;gap:7px;flex-wrap:wrap;padding-top:16px}.scene-pill{border:1px solid #dbe3e0;background:#f7f9f6;color:#5b7374;border-radius:20px;padding:6px 10px;font-size:11px}.scene-pill.active{background:var(--teal);color:white;border-color:var(--teal)}.scene-pill.add{border-style:dashed}.meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:18px 28px 0}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:11px;font-weight:700;color:#64767a;text-transform:uppercase;letter-spacing:.08em}.field input,.field select,.field textarea{border:1px solid #dbe2df;border-radius:7px;background:#fff;padding:10px;color:var(--ink);outline:0;width:100%}.field input:focus,.field select:focus,.field textarea:focus,#prose:focus{border-color:#6a9a94;box-shadow:0 0 0 3px #6a9a9420}.summary-field{padding:0 28px}.summary-field textarea{min-height:60px;resize:vertical}#prose{display:block;width:100%;min-height:480px;resize:vertical;border:0;border-top:1px solid var(--line);outline:0;background:#fffefa;padding:30px clamp(25px,4vw,65px);font-family:'Libre Baskerville',Georgia,serif;font-size:15px;line-height:1.95;color:#27363b}.editor-footer{padding:13px 25px;color:var(--muted);font-size:11px;display:flex;justify-content:space-between;border-top:1px solid var(--line)}.support-stack{display:grid;gap:16px}.support-card{padding:22px}.support-card h3{font-family:'Libre Baskerville',serif;font-weight:400;margin:0 0 8px;font-size:17px}.support-card p{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 15px}.support-card .field textarea{min-height:88px;resize:vertical}.support-card .field input{font-size:12px}.support-card .primary-button,.support-card .quiet-button{width:100%}.ai-result{white-space:pre-wrap;background:#f6f5ee;border:1px solid #e4e2d4;border-radius:7px;padding:13px;margin-top:14px;font-size:12px;line-height:1.6;max-height:450px;overflow:auto}.version-list{display:grid;gap:8px;margin-top:14px}.version-row{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:11px;color:#687c7b;border-bottom:1px solid var(--line);padding-bottom:7px}.version-row button{border:0;background:transparent;color:var(--teal);font-size:11px;font-weight:700}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:19px}.section-head h2{font-family:'Libre Baskerville',serif;font-size:22px;font-weight:400;margin:0}.section-head p{font-size:12px;color:var(--muted);margin:7px 0 0}.record-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.record-card{text-align:left;padding:21px;min-height:168px;display:flex;flex-direction:column;color:inherit}.record-card:hover{border-color:#aac7c2;transform:translateY(-1px)}.record-card .tag{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#a47b47}.record-card h3{font-family:'Libre Baskerville',serif;font-size:16px;font-weight:400;margin:12px 0}.record-card p{font-size:12px;color:#718186;line-height:1.55;margin:0;white-space:pre-wrap}.record-card small{margin-top:auto;padding-top:14px;color:#849197;font-size:11px}.record-empty{border:1px dashed #cddbd4;border-radius:10px;padding:30px;color:#7a8b89;font-size:13px}dialog{border:1px solid var(--line);border-radius:13px;padding:0;width:min(560px,calc(100vw - 28px));box-shadow:0 20px 70px #15272955;color:var(--ink)}dialog::backdrop{background:#13252bb0}#record-form{padding:25px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.dialog-head h2{font-family:'Libre Baskerville',serif;font-weight:400;margin:8px 0 0}.dialog-head .icon-button{color:#627579}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.dialog-actions .danger-button{margin-right:auto}.dialog-actions button[hidden]{display:none}.toast{position:fixed;bottom:20px;right:20px;background:#213b3e;color:#fff;padding:11px 16px;border-radius:7px;box-shadow:var(--shadow);font-size:12px;opacity:0;transform:translateY(8px);transition:.2s;pointer-events:none}.toast.visible{opacity:1;transform:translateY(0)}@media(max-width:1000px){.write-grid{grid-template-columns:1fr}.support-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.shell{grid-template-columns:1fr}.sidebar{min-height:auto;padding:15px}.brand{padding:0 8px 15px}.chapters-heading{margin-top:16px}.chapter-list{display:flex;overflow:auto;gap:5px}.chapter-item{min-width:165px}.sidebar-footer{display:none}.topbar{align-items:flex-start;flex-direction:column;padding-top:22px}.tabs{gap:19px}.workspace{padding-top:20px}.meta-grid{grid-template-columns:1fr}.support-stack{grid-template-columns:1fr}#prose{min-height:400px;padding:22px}.editor-head,.meta-grid,.summary-field{padding-left:19px;padding-right:19px}}
.character-facts-section { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #dce1de; }
.character-facts-section #character-facts > p { color: #667b80; font-size: .9rem; }
.character-fact-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: .75rem; }
.character-fact-card { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; background: #fffdfa; border: 1px solid #dce1de; border-radius: .6rem; padding: 1rem; margin: 0 0 .75rem; max-width: 42rem; }
.character-fact-card small { color: #667b80; }
.character-fact-card blockquote { margin: .25rem 0; padding: .5rem .75rem; border-left: 3px solid #b9cbc9; color: #34494d; }
.character-fact-actions { display: flex; gap: .5rem; flex-wrap: wrap; }
.character-fact-card .continuity-warning { margin: .1rem 0; }
