:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f2ea;--ink:#26241f;--ink-soft:#5c574c;--gold:#a4762f;--card:#fdfbf6;--line:#e2dbcc;--msg-user-bg:#ece5d6;--error:#8c3a2b;--shadow:#26241f1f;--shadow-strong:#26241f40;--overlay:#26241f59;--appbar-h:5rem}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#211e18;--ink:#e7dfcf;--ink-soft:#a69c86;--gold:#c79c55;--card:#2a2620;--line:#3c362b;--msg-user-bg:#383226;--error:#d98a72;--shadow:#00000059;--shadow-strong:#0000008c;--overlay:#0a09078c}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.6}.page{flex-direction:column;min-height:100vh;display:flex}.appbar{z-index:30;height:var(--appbar-h);background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:.9rem;padding:0 1.5rem;display:flex;position:sticky;top:0}.appbar-title h1{letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:1.25rem;font-weight:400}.tagline{color:var(--ink-soft);margin:.1rem 0 0;font-size:.8rem;font-style:italic}.appbar-menu{display:flex;position:relative}.hamburger{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;justify-content:center;gap:5px;width:2.4rem;height:2.4rem;padding:0 .45rem;display:flex}.hamburger:hover{border-color:var(--line);background:var(--card)}.hamburger span{background:var(--ink);border-radius:1px;height:2px;display:block}.menu{z-index:20;background:var(--card);border:1px solid var(--line);min-width:11rem;box-shadow:0 6px 18px var(--shadow);border-radius:8px;flex-direction:column;padding:.4rem;display:flex;position:absolute;top:calc(100% + .4rem);left:0}.menu-item{text-align:left;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:.45rem .7rem;font-size:.95rem}.menu-item:hover{background:var(--bg)}.menu-active{color:var(--gold)}.menu-sep{background:var(--line);height:1px;margin:.35rem .3rem}.menu-user{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;padding:.35rem .7rem .1rem;font-size:.8rem;font-style:italic;overflow:hidden}.chat{flex:1;width:100%;max-width:800px;margin:0 auto;padding:1.5rem 1.5rem 2rem}.view{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:1.5rem 1.5rem 2.5rem}.chat-empty{flex-direction:column;justify-content:center;display:flex}.daily{background:var(--card);border:1px solid var(--line);border-radius:6px;margin:0 0 2rem;padding:1.5rem 1.75rem}.daily blockquote{margin:0;font-size:1.05rem;font-style:italic}.daily-caption{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.6rem;font-size:.72rem}.daily-links{text-align:right;margin-top:.7rem;font-size:.82rem}.chat-start{padding-top:2rem}.passage-actions{flex-wrap:wrap;gap:1.2rem;margin-top:.9rem;font-size:.85rem;display:flex}.daily-breakdown{border-left:3px solid var(--gold);margin:0 0 1.6rem;padding-left:1rem}.daily-breakdown p{margin:.6rem 0}.passage-breakdown{flex-basis:100%;margin:.3rem 0 .4rem;font-size:.95rem}.entry-thread,.entry-thread-start{border-top:1px solid var(--line);margin-top:.7rem;padding-top:.6rem;font-size:.95rem}.entry-thread-start .auth-link,.entry-thread-toggle{font-size:.85rem}.entry-thread .msg{margin:.9rem 0}.thread-composer{background:var(--bg);border:1px solid var(--line);border-radius:8px;gap:.6rem;margin-top:.8rem;padding:.45rem;display:flex}.thread-composer textarea{resize:none;font:inherit;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:.95rem}.thread-composer button{background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border:none;border-radius:6px;align-self:flex-end;padding:.35rem 1rem;font-size:.85rem}.thread-composer button:disabled{opacity:.4;cursor:default}.daily figcaption{text-align:right;color:var(--gold);margin-top:.75rem;font-size:.9rem}.intro{color:var(--ink-soft);text-align:center;max-width:34rem;margin:0 auto}.msg{margin:1.25rem 0}.msg-user{background:var(--msg-user-bg);white-space:pre-wrap;border-radius:12px 12px 2px;margin-left:20%;padding:.7rem 1rem}.msg-assistant .msg-body>:first-child{margin-top:.5rem}.msg-assistant .msg-body p{margin:.6rem 0}.msg-error{color:var(--error);border-left:3px solid var(--error);margin-top:.5rem;padding-left:.75rem;font-size:.9rem}.thinking{color:var(--ink-soft);font-style:italic;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.sources{margin-bottom:.25rem;font-size:.88rem}.sources summary{color:var(--gold);cursor:pointer;letter-spacing:.04em}.source-card{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:4px;margin:.6rem 0;padding:.6rem .9rem}.source-card p{color:var(--ink-soft);margin:.3rem 0 0}.source-ref{color:var(--gold)}.source-trans{color:var(--ink-soft);font-style:italic}.composer-wrap{background:linear-gradient(transparent, var(--bg) 30%);width:100%;max-width:800px;margin:0 auto;padding:1rem 1.5rem .75rem;position:sticky;bottom:0}.composer{background:var(--card);border:1px solid var(--line);border-radius:10px;gap:.6rem;padding:.6rem;display:flex}.composer textarea{resize:none;font:inherit;color:var(--ink);background:0 0;border:none;outline:none;flex:1}.composer button{background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border:none;border-radius:7px;align-self:flex-end;padding:.45rem 1.2rem;font-size:.95rem}.composer button:disabled{opacity:.4;cursor:default}.disclaimer{text-align:center;color:var(--ink-soft);margin:.6rem 0 0;font-size:.78rem}.auth-overlay{z-index:40;background:var(--overlay);justify-content:center;align-items:flex-start;padding:11vh 1.25rem 2rem;display:flex;position:fixed;inset:0}.auth-modal{background:var(--card);border:1px solid var(--line);width:min(24rem,100%);box-shadow:0 12px 40px var(--shadow-strong);border-radius:10px;padding:1.7rem 1.75rem 1.4rem;position:relative}.auth-modal h2{letter-spacing:.03em;text-align:center;margin:0;font-size:1.3rem;font-weight:400}.auth-sub{color:var(--ink-soft);text-align:center;margin:.4rem 0 1.2rem;font-size:.88rem;font-style:italic}.auth-close{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.4rem;line-height:1;position:absolute;top:.4rem;right:.7rem}.auth-close:hover{color:var(--ink)}.auth-link{font:inherit;color:var(--gold);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;text-decoration:underline}.auth-hint{margin:0;font-size:.78rem;font-style:italic}.auth-fields{flex-direction:column;gap:.8rem;display:flex}.auth-fields label{color:var(--ink-soft);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.auth-fields input{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:7px;outline:none;width:100%;padding:.4rem .7rem}.auth-fields input:focus{border-color:var(--gold)}.auth-passrow{align-items:center;gap:.6rem;display:flex}.auth-passrow input{flex:1}.auth-passrow .auth-link{font-size:.8rem}.auth-note{color:var(--ink-soft);margin-top:-.5rem;font-size:.78rem;font-style:italic}.auth-primary{border:1px solid var(--ink);background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border-radius:7px;margin-top:.3rem;padding:.5rem 1rem;font-size:.95rem}.auth-primary:disabled{opacity:.4;cursor:default}.auth-switch{text-align:center;color:var(--ink-soft);margin:1.1rem 0 0;font-size:.85rem}.auth-error{text-align:center;color:var(--error);margin:0;font-size:.85rem}.intro-hint{text-align:center;margin-top:1rem}.stoa-intro h2,.view-title{text-align:center;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 .6rem;font-size:1rem;font-weight:400}.work-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem;margin-top:1.4rem;display:grid}.reading-pane{max-width:780px;margin:0 auto}.work-card{text-align:left;background:var(--card);border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;border-radius:6px;flex-direction:column;gap:.15rem;padding:1rem 1.25rem;display:flex}.work-card:hover{border-color:var(--gold)}.work-title{font-size:1.05rem}.work-author{color:var(--ink-soft);font-size:.92rem;font-style:italic}.work-meta{color:var(--ink-soft);font-size:.82rem}.reading-header{flex-direction:column;align-items:flex-start;gap:.3rem;margin-bottom:1rem;font-size:.9rem;display:flex}.reading-work .work-meta{font-style:italic}.passage-card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:1.5rem 1.75rem}.passage-text{white-space:pre-wrap;margin:.6rem 0 0;font-size:1.05rem}.pager{justify-content:space-between;align-items:center;margin-top:1.1rem;display:flex}.pager button{border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;cursor:pointer;border-radius:7px;padding:.35rem .9rem;font-size:.9rem}.pager button:hover:not(:disabled){border-color:var(--gold)}.pager button:disabled{opacity:.35;cursor:default}.pager-pos{color:var(--ink-soft);font-size:.85rem}.pager-hint{text-align:center;color:var(--ink-soft);margin-top:.6rem;font-size:.78rem;font-style:italic}.passage-notes{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:.8rem}.note-hint{border-top:1px solid var(--line);color:var(--ink-soft);margin:1.1rem 0 0;padding-top:.8rem;font-size:.85rem;font-style:italic}.margin-note{border-left:3px solid var(--gold);margin:.6rem 0;padding:.15rem 0 .15rem .85rem;font-size:.92rem}.margin-note p{white-space:pre-wrap;margin:0}.note-add{font-size:.85rem}.note-compose{flex-direction:column;gap:.5rem;margin-top:.4rem;display:flex}.note-compose textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);resize:vertical;border-radius:7px;outline:none;padding:.5rem .7rem;font-size:.95rem}.note-compose textarea:focus{border-color:var(--gold)}.note-compose-actions{align-items:center;gap:.9rem;display:flex}.note-compose-actions button:not(.auth-link){border:1px solid var(--ink);background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border-radius:7px;padding:.3rem .9rem;font-size:.85rem}.note-compose-actions button:disabled{opacity:.4;cursor:default}.journal-compose{background:var(--card);border:1px solid var(--line);border-radius:6px;margin-bottom:1.6rem;padding:.9rem 1.1rem}.journal-compose textarea{background:var(--card);border:none;border-radius:0;padding:0}.journal-entry{background:var(--card);border:1px solid var(--line);border-radius:6px;margin:.9rem 0;padding:1rem 1.25rem}.journal-entry-head{justify-content:space-between;align-items:baseline;gap:.8rem;font-size:.82rem;display:flex}.journal-date{color:var(--ink-soft);letter-spacing:.04em}.journal-passage-link{font-style:italic}.journal-content{white-space:pre-wrap;margin:.5rem 0 .4rem}.journal-entry-actions{gap:1rem;font-size:.8rem;display:flex}.journal-entry-actions .auth-link{font-size:.8rem}.view-wide{max-width:1440px}.journal-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.8rem;display:grid}.journal-pane{height:calc(100vh - var(--appbar-h) - 7.5rem);padding-right:.35rem;overflow-y:auto}.entry-pane{flex-direction:column;display:flex}.entry-pane .journal-compose{flex-direction:column;flex:1;margin-bottom:0;display:flex}.entry-pane .journal-compose textarea{resize:none;flex:1;min-height:8rem}.entry-pane-bar{margin-bottom:.6rem;font-size:.85rem}.pane-caption{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.6rem;font-size:.72rem}.stoa-thread{margin-top:1.4rem}.stoa-thread .entry-thread,.stoa-thread .entry-thread-start{border-top:none;margin-top:0;padding-top:0}.practice-streak{text-align:center;color:var(--ink-soft);margin:0 0 .4rem;font-size:.88rem;font-style:italic}.practice-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.8rem;margin-top:1rem;display:grid}.plan-card{background:var(--card);border:1px solid var(--line);border-radius:6px;margin-bottom:1.4rem;padding:1rem 1.25rem}.plan-head{justify-content:space-between;align-items:baseline;gap:.8rem;display:flex}.plan-head strong{font-size:1.02rem;font-weight:400}.plan-tagline{color:var(--ink-soft);margin:.25rem 0 .6rem;font-size:.85rem;font-style:italic}.chip-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.chip{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:.25rem .85rem;font-size:.82rem}.chip:hover{border-color:var(--gold)}.chip-selected{background:var(--ink);border-color:var(--ink);color:var(--bg)}.plan-time{font:inherit;color:var(--ink-soft);background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:.18rem .6rem;font-size:.82rem}.plan-actions{align-items:center;gap:1rem;margin-top:.6rem;font-size:.85rem;display:flex}.plan-commit{border:1px solid var(--ink);background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border-radius:7px;padding:.3rem 1rem;font-size:.85rem}.plan-commit:disabled{opacity:.4;cursor:default}.plan-remove{color:var(--error)}.plan-strip{gap:.3rem;margin:.7rem 0 .4rem;display:flex}.strip-dot{border:1px solid var(--line);border-radius:4px;width:.85rem;height:.85rem}.strip-filled{background:var(--gold);border-color:var(--gold)}.plan-meta{color:var(--ink-soft);margin:0;font-size:.82rem}.cal-nav{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.cal-nav button{border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;cursor:pointer;border-radius:7px;padding:.25rem .75rem;font-size:1rem;line-height:1}.cal-nav button:hover{border-color:var(--gold)}.cal-title{letter-spacing:.05em;font-size:.95rem}.cal-week,.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-weekday{text-align:center;color:var(--ink-soft);padding:.25rem 0;font-size:.72rem}.cal-cell{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;align-items:center;gap:2px;padding:.4rem 0 .35rem;font-size:.88rem;display:flex}.cal-cell:hover{background:var(--card)}.cal-today{border-color:var(--ink-soft)}.cal-selected{background:var(--card);border-color:var(--gold)}.cal-dots{gap:3px;height:5px;display:flex}.cal-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.dot-wrote{background:var(--gold)}.dot-read{background:var(--ink-soft)}.cal-legend{color:var(--ink-soft);justify-content:center;align-items:center;gap:.45rem;margin-top:.6rem;font-size:.78rem;display:flex}.cal-legend .cal-dot+*{margin-right:.5rem}.day-title{letter-spacing:.03em;margin:0 0 .8rem;font-size:1.05rem;font-weight:400}.day-card{background:var(--card);border:1px solid var(--line);border-radius:6px;margin-bottom:.9rem;padding:.9rem 1.1rem}.day-card .pane-caption{margin-bottom:.4rem}.day-passage-text{margin:0;font-style:italic}.day-passage-cite{text-align:right;color:var(--gold);margin-top:.5rem;font-size:.88rem}.day-passage-cite .auth-link{margin-left:.6rem;font-size:.82rem}.day-list{flex-direction:column;gap:.3rem;margin:0;padding:0;font-size:.95rem;list-style:none;display:flex}.day-note{font-size:.95rem}.day-note+.day-note{border-top:1px solid var(--line);margin-top:.7rem;padding-top:.7rem}.day-note-ref{color:var(--ink-soft);font-size:.82rem;font-style:italic}.day-note-text{white-space:pre-wrap;margin:.2rem 0 .3rem}.day-note .auth-link{font-size:.82rem}.day-empty{color:var(--ink-soft);font-style:italic}.layout{flex:1;align-items:stretch;display:flex}.main-col{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{border-right:1px solid var(--line);width:270px;top:var(--appbar-h);max-height:calc(100vh - var(--appbar-h));flex-shrink:0;align-self:flex-start;transition:width .18s;position:sticky;overflow:hidden auto}.sidebar-collapsed{width:3rem}.sidebar-rail{justify-content:center;padding-top:.55rem;display:flex}.sidebar-inner{width:270px;padding:.55rem .8rem 1.5rem}.side-toggle{width:2.2rem;height:2.2rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.side-toggle:hover{border-color:var(--line);background:var(--card);color:var(--ink)}.side-head{justify-content:space-between;align-items:center;gap:.5rem;margin:0 0 .45rem .35rem;display:flex}.side-head-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.side-plus{padding:.14rem .5rem .24rem;font-size:1.05rem;line-height:1}.side-title{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.8rem;font-weight:400;overflow:hidden}.side-action{border:1px solid var(--line);font:inherit;color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:.15rem .5rem;font-size:.75rem}.side-action:hover{border-color:var(--gold);color:var(--gold)}.side-hint{color:var(--ink-soft);margin:.3rem .35rem;font-size:.82rem;font-style:italic}.side-item{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.35rem .55rem;font-size:.88rem;display:flex}.side-item:hover{background:var(--card)}.side-active{background:var(--card);color:var(--gold)}.side-item-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.side-item-meta{color:var(--ink-soft);flex-shrink:0;font-size:.72rem}.side-group-label{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;margin:.8rem .55rem .25rem;font-size:.72rem}.journal-entry{scroll-margin-top:calc(var(--appbar-h) + .8rem)}@media (width<=900px){.sidebar{display:none}.journal-split,.practice-split{grid-template-columns:1fr}.journal-pane{height:auto;padding-right:0;overflow:visible}.entry-pane .journal-compose textarea{min-height:6rem}}@media (width<=640px){html,body{font-size:16px}:root{--appbar-h:3.4rem}.appbar{padding:0 .9rem}.tagline{display:none}.chat,.view{padding:1rem .9rem 1.5rem}.composer-wrap{padding:.8rem .9rem .6rem}.msg-user{margin-left:10%}.passage-card{padding:1.1rem 1.15rem}.pager-hint{display:none}}.play-btn{text-decoration:none}.play-btn:disabled{color:var(--ink-soft);cursor:default}.daily-links .play-btn{margin-right:1.1rem}button.mic-btn,.note-compose-actions button.mic-btn,.thread-composer button.mic-btn{border:1px solid var(--line);width:2.1rem;height:2.1rem;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;padding:0;display:inline-flex}button.mic-btn:hover,.note-compose-actions button.mic-btn:hover,.thread-composer button.mic-btn:hover{color:var(--gold);border-color:var(--gold)}button.mic-btn.mic-live,.note-compose-actions button.mic-btn.mic-live,.thread-composer button.mic-btn.mic-live{color:var(--gold);border-color:var(--gold);animation:1.8s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--gold) 40%, transparent)}50%{box-shadow:0 0 0 7px #0000}}.dictation-interim{color:var(--ink-soft);margin:.3rem 0 0;font-size:.88rem;font-style:italic}
