:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#17120c;--panel:#241b12db;--panel-strong:#2a1f15;--line:#ffe7c426;--ink:#f4e7cf;--muted:#c8b89b;--gold:#efc87b;--pine:#7fb49c;--rose:#d18a7f;--shadow:0 20px 60px #00000059;background:radial-gradient(circle at top,#efc87b1f,#0000 35%),linear-gradient(#281c12 0%,#17120c 38%,#120e09 100%);font-family:Charter,Iowan Old Style,Palatino Linotype,serif}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:0 0;margin:0;padding-bottom:5.5rem}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit;border:0}button:disabled{cursor:not-allowed;opacity:.55}input,textarea{border:1px solid var(--line);color:var(--ink);background:#0e0a07b8}.landing-shell{place-items:center;min-height:100vh;padding:2rem 2rem 6.5rem;display:grid}.landing-card,.panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.landing-card{border-radius:32px;width:min(860px,100%);padding:3rem;position:relative;overflow:hidden}.landing-card:after,.panel:after{content:"";pointer-events:none;opacity:.45;background-image:linear-gradient(120deg,#0000 0%,#ffffff0a 48%,#0000 52%);position:absolute;inset:0}.landing-crest{background:linear-gradient(145deg, var(--gold), #8c5f28);color:#1f140b;letter-spacing:.08em;border-radius:50%;place-items:center;width:86px;height:86px;margin-bottom:1.5rem;font-size:1.8rem;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--muted);margin:0 0 .5rem;font-size:.72rem}h1,h2,h3,.hero-value,.book-title,.meta-title{font-family:Baskerville,Times New Roman,serif}h1{margin:0;font-size:clamp(3rem,7vw,5.8rem);line-height:.95}.lead{max-width:54rem;color:var(--muted);margin-bottom:2rem;font-size:1.2rem;line-height:1.7}.name-form{gap:.9rem;display:grid}.name-form label{color:var(--muted)}.name-row{grid-template-columns:1fr auto;gap:.8rem;display:grid}.name-row input,.composer textarea{border-radius:18px;padding:1rem 1.1rem}.name-row button,.composer-actions button,.approval-actions button,.suggestion-chip,.ghost,.name-row button{border-radius:999px;padding:.85rem 1.2rem}.name-row button,.composer-actions button:last-child,.approval-actions button:first-child{background:linear-gradient(135deg, var(--gold), #b47d39);color:#22170f;font-weight:700}.ghost,.suggestion-chip,.approval-actions .ghost,.composer-actions .ghost{border:1px solid var(--line);background:#ffffff0a}.promise-list{color:var(--muted);gap:.7rem;padding-left:1.2rem;display:grid}.app-shell{gap:1rem;padding:1.4rem 1.4rem 6.5rem;display:grid}.site-footer{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:center;background:#16100be0;border:1px solid #ffffff17;border-radius:18px;width:min(32rem,100vw - 1.5rem);padding:.7rem 1rem;position:fixed;bottom:.9rem;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #00000052}.site-footer p{color:var(--muted);margin:0;line-height:1.35}.site-footer p+p{margin-top:.2rem}.site-footer a{color:var(--ink);text-decoration:none}.site-footer a:hover{color:var(--gold);text-decoration:underline}.topbar,.hero-band,.layout-grid{width:min(1400px,100%);margin:0 auto}.topbar{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.topbar h1,.panel h2{margin:0;font-size:clamp(1.8rem,4vw,2.8rem)}.topbar-actions,.chat-actions,.composer-actions,.approval-actions{align-items:center;gap:.65rem;display:flex}.connection-pill{border:1px solid var(--line);text-transform:capitalize;border-radius:999px;padding:.55rem .85rem}.connection-pill.connected{color:var(--pine)}.connection-pill.connecting{color:var(--gold)}.connection-pill.disconnected{color:var(--rose)}.hero-band{background:linear-gradient(135deg,#efc87b2e,#7fb49c1f);border:1px solid #ffffff14;border-radius:28px;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem 1.25rem;display:grid}.hero-label{color:var(--muted);text-transform:uppercase;letter-spacing:.18em;margin:0;font-size:.72rem}.hero-value{margin:.25rem 0 0;font-size:clamp(1.5rem,4vw,2.5rem)}.layout-grid{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.sidebar,.chat-panel{gap:1rem;display:grid}.panel{border-radius:28px;padding:1.15rem;position:relative;overflow:hidden}.panel-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.panel-caption{color:var(--muted);margin:.35rem 0 0;line-height:1.45}.shelf-grid{gap:.9rem;display:grid}.shelf-column{border:1px solid var(--line);border-radius:22px;gap:.8rem;padding:1rem;display:grid}.shelf-gold{background:#efc87b17}.shelf-pine{background:#7fb49c1a}.shelf-ink{background:#475c8224}.shelf-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.shelf-header h3,.book-title,.meta-title{margin:0}.book-stack,.meta-list{gap:.75rem;display:grid}.message-list{flex-direction:column;align-content:flex-start;align-items:stretch;gap:.75rem;padding-bottom:4.5rem;scroll-padding-bottom:4.5rem;display:flex}.book-card,.meta-card,.tool-result,.approval-card{background:#0c080661;border:1px solid #ffffff0f;border-radius:18px;padding:.9rem}.book-card-layout{grid-template-columns:62px minmax(0,1fr);align-items:start;gap:.85rem;display:grid}.book-copy{min-width:0}.book-cover{aspect-ratio:2/3;object-fit:cover;background:#ffffff0d;border:1px solid #ffffff17;border-radius:12px;width:62px}.book-cover-placeholder{color:var(--gold);place-items:center;font-size:1.25rem;font-weight:700;display:grid}.book-link{color:var(--ink);text-decoration:none;display:inline-flex}.book-link:hover{color:var(--gold);text-decoration:underline}.book-author,.book-review,.book-rating,.meta-card p,.empty-note,.empty-chat span{color:var(--muted);margin:.35rem 0 0}.book-review{overflow-wrap:anywhere;line-height:1.5}.book-rating{color:var(--gold)}.extension-card{gap:.85rem;display:grid}.extension-card-header{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.extension-name{overflow-wrap:anywhere;font-family:SFMono-Regular,Consolas,monospace;font-size:1rem}.extension-version,.extension-badge,.extension-tool-pill{background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px}.extension-version{color:var(--gold);white-space:nowrap;padding:.25rem .55rem;font-size:.82rem}.extension-description{color:var(--ink);margin:0;line-height:1.5}.extension-badges,.extension-tools{flex-wrap:wrap;gap:.45rem;display:flex}.extension-badge{color:var(--muted);padding:.28rem .55rem;font-size:.8rem}.extension-tool-pill{color:var(--ink);overflow-wrap:anywhere;padding:.28rem .6rem;font-size:.82rem}.chat-panel{min-height:70vh}.suggestion-row{flex-wrap:wrap;gap:.65rem;margin-bottom:1rem;display:flex}.suggestion-chip{color:var(--muted)}.message-list{flex:1;min-height:28rem;max-height:62vh;padding-right:.25rem;overflow:auto}.message-row{align-self:flex-start;display:flex}.message-row.user{justify-content:flex-end;align-self:stretch}.message-row.assistant{justify-content:flex-start}.message-bubble{border:1px solid var(--line);background:#110c08cc;border-radius:24px;max-width:min(720px,92%);padding:1rem 1.1rem}.message-row.user .message-bubble{background:linear-gradient(135deg,#efc87b33,#ffffff08)}.message-text{margin:0;line-height:1.7}.message-text+.message-text{margin-top:.9rem}.message-text>:first-child{margin-top:0}.message-text>:last-child{margin-bottom:0}.message-text p,.message-text ul,.message-text ol,.message-text blockquote,.message-text pre,.message-text table,.message-text h1,.message-text h2,.message-text h3,.message-text h4{margin:.7rem 0}.message-text ul,.message-text ol{padding-left:1.25rem}.message-text li+li{margin-top:.3rem}.message-text a{color:var(--gold)}.message-text code{background:#ffffff0f;border-radius:8px;padding:.1rem .35rem;font-family:SFMono-Regular,Consolas,monospace;font-size:.92em}.message-text pre code{background:0 0;padding:0}.message-text blockquote{color:var(--muted);border-left:2px solid #efc87b59;margin-left:0;padding-left:.9rem}.message-text table{border-collapse:collapse;width:100%}.message-text th,.message-text td{text-align:left;border:1px solid #ffffff14;padding:.45rem .55rem}.cursor{margin-left:.3rem;animation:1s step-end infinite blink}.tool-chip{background:#ffffff0d;border-radius:14px;margin-top:.8rem;padding:.7rem .85rem}.tool-chip.denied{color:var(--rose)}.tool-disclosure{margin-top:.8rem}.tool-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.8rem;list-style:none;display:flex}.tool-summary::-webkit-details-marker{display:none}.tool-summary-hint{color:var(--muted);font-size:.78rem}.tool-disclosure[open] .tool-summary{margin-bottom:.75rem}.tool-label{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:.72rem}pre{white-space:pre-wrap;word-break:break-word;color:#f7eedb;margin:0;font-family:SFMono-Regular,Consolas,monospace;font-size:.8rem}.composer{gap:.8rem;margin-top:1rem;display:grid}.composer textarea{resize:vertical;min-height:7rem}.empty-chat{border:1px dashed var(--line);color:var(--muted);border-radius:22px;padding:1rem}.empty-chat p{color:var(--ink);margin:0;font-size:1.1rem}.error-banner{color:#ffd4cc;background:#d18a7f14;border:1px solid #d18a7f47;border-radius:16px;margin-top:1rem;padding:.8rem 1rem}@keyframes blink{0%,50%{opacity:1}50.01%,to{opacity:0}}@media (width<=1080px){.layout-grid{grid-template-columns:1fr}}@media (width<=720px){.landing-card,.panel{border-radius:24px}.landing-card{padding:1.5rem}.name-row,.hero-band{grid-template-columns:1fr}.topbar,.panel-heading,.composer-actions,.topbar-actions,.chat-actions{flex-direction:column;align-items:stretch}.app-shell{padding:.9rem}.site-footer{width:calc(100vw - 1rem);bottom:.6rem}.extension-card-header{flex-direction:column;align-items:flex-start}.message-bubble{max-width:100%}}
