:root{--paper:#f4f1e9;--card:#fffefb;--ink:#272e2b;--muted:#626b63;--line:#d9ddd2;--green:#314b3f;--light:#e9eee3;--accent:#986338;--red:#904438;font-size:18px;color-scheme:light}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.65}body.large{font-size:22px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{min-height:48px;min-width:48px;border:1px solid var(--line);border-radius:12px;padding:10px 18px;background:var(--card);color:var(--ink);cursor:pointer;line-height:1.5}button:hover{border-color:var(--green);background:#edf1e8}button:disabled{opacity:.55;cursor:wait}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.ghost{background:transparent;border-color:transparent}button.danger{color:var(--red)}a{color:var(--green);text-underline-offset:4px}a.linkbutton{display:inline-flex;align-items:center;min-height:48px;padding:8px 4px}input,textarea,select{width:100%;padding:12px 14px;background:var(--card);color:var(--ink);border:1px solid #aab5a9;border-radius:10px;min-height:48px}textarea{resize:vertical;min-height:104px}label{display:block;margin:14px 0 5px}h1,h2,h3,p{margin:0}h1{font-family:"Songti SC","STSong",serif;font-size:2.45rem;font-weight:500;line-height:1.3;letter-spacing:.015em}h2{font-size:1.3em;font-weight:600;line-height:1.4}h3{font-size:1.15em;line-height:1.5;font-weight:600}p+p{margin-top:12px}small,.meta{font-size:.88em;color:var(--muted)}.eyebrow{font-size:13px;letter-spacing:.17em;color:var(--accent);text-transform:uppercase}.muted{color:var(--muted)}.row{display:flex;align-items:center;gap:12px}.spread{justify-content:space-between}.wrap{flex-wrap:wrap}.stack>*+*{margin-top:18px}.shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:40px 24px;display:flex;flex-direction:column;background:#eeeede}.brand{display:flex;gap:13px;align-items:center;font-size:18px;font-weight:600;line-height:1.5}.mark{background:var(--green);color:#f6f1dc;border-radius:17px 17px 4px 17px;width:48px;height:48px;display:grid;place-items:center;font-family:serif;font-size:29px;flex-shrink:0}.sidebar nav{display:grid;gap:10px;margin-top:60px}.navbutton{border:0;background:transparent;text-align:left;display:flex;gap:18px;align-items:center;padding:15px 18px;font-size:19px}.navbutton.active{background:var(--green);color:#fff}.icon{width:23px;height:23px;display:inline-block;flex-shrink:0}.sidefoot{margin-top:auto}.sidefoot p{font-size:14px;margin-bottom:16px}.sidefoot button{font-size:16px;width:100%;text-align:left}.workspace{padding:32px clamp(24px,4vw,64px) 56px;max-width:1600px;width:100%;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;padding-bottom:32px;font-size:15px;color:var(--muted)}.topbar .brand{display:none}.avatar{height:38px;width:38px;border:1px solid #bec9b9;border-radius:50%;display:grid;place-items:center;background:var(--light);color:var(--green);font-size:16px}.greeting{margin:16px 0 34px}.greeting p{margin-top:15px}.maincols{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:28px;align-items:start}.sectiontitle{margin-bottom:20px}.sectiontitle h2{font-size:1.1em}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 5px 20px #2a342405;margin-bottom:18px;overflow-wrap:anywhere}.article .number{font-family:Georgia,serif;font-size:23px;color:var(--accent)}.article .kicker{display:flex;align-items:center;gap:12px;margin-bottom:18px;font-size:14px}.pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:6px;background:var(--light);color:var(--green);font-size:14px;line-height:1.6}.article h3{font-family:Georgia,"Songti SC",serif;font-size:1.3em;margin-bottom:16px}.article .summary{font-size:1em;line-height:1.8;margin-bottom:18px}.reason{padding:14px 16px;background:#f2f5ed;border-radius:12px;color:var(--green);font-size:.94em;margin:18px 0}.actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.feedback{border-top:1px solid var(--line);margin-top:20px;padding-top:16px;display:flex;flex-wrap:wrap;gap:8px}.feedback button{font-size:.88em;padding:8px 12px}.asidecard{background:#e7ebdf;border:1px solid #d6dece;border-radius:18px;padding:23px;margin-bottom:20px}.asidecard .topline{display:flex;gap:10px;align-items:center;margin-bottom:20px}.asidecard h3{font-size:1em}.asidecard p{font-size:.94em}.asidecard .line{border-top:1px solid #cbd3c4;margin:20px 0}.empty{padding:34px 28px}.empty .sprout{font-family:Georgia,serif;font-size:48px;color:var(--accent);margin-bottom:16px}.composer{background:var(--card);border:1px solid #bec8b8;border-radius:18px;padding:18px;margin:25px 0}.composer textarea{border:0;padding:0;background:transparent;min-height:65px;outline-offset:5px}.composer button{border-radius:10px}.note{padding:14px 18px;border:1px solid #d9c9a7;border-radius:12px;background:#fcf7e9;color:#735221;font-size:.91em;margin:16px 0}.bottomnav{display:none}.login{max-width:490px;margin:10vh auto;padding:30px}.login .brand{margin-bottom:45px}.login h1{font-size:2rem}.login form{margin-top:30px}.login form button{width:100%;margin:24px 0}.login .meta{margin-top:26px}.modalback{position:fixed;z-index:20;inset:0;background:#1c281b77;display:flex;justify-content:center;align-items:center;padding:22px}.modal{background:var(--paper);border-radius:22px;padding:28px;max-width:800px;max-height:90dvh;overflow:auto;width:100%;box-shadow:0 22px 70px #0003}.modal .close{position:sticky;top:0;float:right;margin:-5px -5px 10px 12px;background:var(--paper);z-index:1}.modal h2{margin:8px 0 20px}.modal .abstract{white-space:pre-wrap;font-size:1em;line-height:1.9}.modal .actions{position:sticky;bottom:-28px;background:var(--paper);padding:14px 0;margin-bottom:-12px}.error{color:var(--red);font-weight:500}.success{color:var(--green)}#toast{display:none;position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--green);color:white;border-radius:12px;max-width:90vw;width:max-content;padding:14px 22px;z-index:40;box-shadow:0 5px 20px #0002}#toast.show{display:block}.chat{padding:20px 24px;background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:18px;white-space:pre-wrap;overflow-wrap:anywhere}.chat.user{background:var(--light);margin-left:35px}.chat small{display:block;margin-bottom:8px}.chat blockquote{margin:14px 0;padding:10px 18px;border-left:3px solid var(--accent);background:#f5f1e8;white-space:normal}.tasktitle{margin:12px 0}.taskgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.taskgrid>div{min-width:0}.notice{border-left:4px solid var(--accent)}.prefevent{border-top:1px solid var(--line);padding:16px 0}.loading{padding:25vh 20px;text-align:center}.divider{border:0;border-top:1px solid var(--line);margin:25px 0}.footer{margin-top:32px;font-size:13px;color:var(--muted)}:focus-visible{outline:3px solid #b27b37;outline-offset:4px}.hidden{display:none!important}.detailhead{margin-bottom:20px}.badgecount{font-size:13px;border-radius:20px;background:#d6ac70;color:#272e2b;padding:2px 8px}.busy{cursor:progress}.checkrow{display:flex;gap:12px;align-items:center}.checkrow input{width:24px;height:24px;min-height:24px}.settingsline{margin:20px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere}body.large .maincols{grid-template-columns:minmax(0,1fr)}body.large .maincols>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:1150px){.maincols{grid-template-columns:minmax(0,1fr)}.maincols>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:30px 16px}.workspace{padding:25px 30px}.greeting{margin-top:5px}}
@media(max-width:700px){.shell{display:block}.sidebar{display:none}.workspace{padding:20px 18px 110px}.topbar{padding-bottom:25px}.topbar .brand{display:flex;font-size:16px;gap:9px}.topbar .brand .mark{width:36px;height:36px;border-radius:12px 12px 3px 12px;font-size:23px}.topbar>.meta{display:none}.topbar .desktop-only{display:none}h1{font-size:1.95rem}.greeting{margin:6px 0 27px}.greeting p{font-size:1em;margin-top:12px}.maincols{display:block}.card{padding:22px 19px;border-radius:17px}.article h3{font-size:1.19em}.article .kicker{font-size:13px;gap:8px}.article .number{font-size:20px}.article .summary{line-height:1.75}.sectiontitle{align-items:start}.sectiontitle button{padding:8px 12px;font-size:16px}.sectiontitle h2{font-size:1.12em}.reason{padding:12px;font-size:.94em}.actions{gap:8px}.actions button{padding:10px 12px}.feedback button{font-size:16px}.bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffefbf7;border-top:1px solid var(--line);padding:8px 10px calc(8px + env(safe-area-inset-bottom));z-index:10;justify-content:space-around;backdrop-filter:blur(12px)}.bottomnav button{border:0;border-radius:10px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 16px;font-size:15px;background:transparent;min-width:65px}.bottomnav button.active{background:var(--light);color:var(--green)}.bottomnav .icon{width:21px;height:21px} .maincols>aside,body.large .maincols>aside{display:block}.asidecard{padding:22px}.composer{padding:16px;margin-top:22px}.composer .meta{font-size:14px}.modalback{padding:8px;align-items:flex-end}.modal{max-height:94dvh;border-radius:20px 20px 10px 10px;padding:22px 18px}.modal .actions{bottom:-22px}.taskgrid{grid-template-columns:1fr}.login{margin:5vh auto;padding:26px}.login .brand{margin-bottom:36px}.chat{padding:18px}.chat.user{margin-left:18px}#toast{bottom:100px}.footer{font-size:13px}.pill{font-size:13px}body.large .article h3{font-size:1.1em}body.large .actions button{flex:1 1 45%}.topbar .row{gap:4px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}}
.mode-switch{display:flex;gap:8px;margin-bottom:10px}.mode-switch button{flex:1;min-height:48px}.mode-switch button[aria-pressed="true"]{background:var(--green);color:#fff;border-color:var(--green)}.composer>.meta{margin-bottom:14px}

summary{min-height:48px;min-width:48px;padding:12px 0;cursor:pointer;color:var(--green)}details>p{white-space:pre-wrap}

/* Usability upgrade: existing components, calm navy and warm white. */
:root{--paper:#f7f5f0;--card:#fffefa;--ink:#25354b;--muted:#5e6a79;--line:#dbe0e7;--green:#243f64;--light:#eaf0f6;--accent:#947952}
.sidebar{background:#efefed}.asidecard,.reason{background:#eef2f6;border-color:#dbe0e7}.navbutton:hover,button:hover{background:#e6edf5}.navbutton.active,.primary:hover{background:#243f64}.mark{color:#fff9ec}.avatar{width:48px;height:48px;min-width:48px}.greeting{margin:4px 0 22px}.greeting h1{font-size:1.85em}.topbar{padding-bottom:18px}.home-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}.home-actions button{flex:1}.home-next{padding:20px 0;margin-bottom:24px;border-bottom:1px solid var(--line)}.compact-work{padding:14px 0}.onboard-banner{background:#eaf0f6;border:1px solid #d5deea;border-radius:16px;padding:20px;margin-bottom:20px}.onboard-banner button{margin:10px 8px 0 0}.menu-grid,.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-grid button{text-align:left;min-height:64px}.steps{display:flex;gap:8px;margin:20px 0}.steps button{flex:1;padding:10px 4px}.steps [aria-current=step]{background:var(--green);color:white}.checkrow{min-height:48px;cursor:pointer;margin:8px 0;padding:8px;border:1px solid var(--line);border-radius:10px}.checkrow input{flex-shrink:0}fieldset{border:0;padding:0;margin:22px 0}legend{font-weight:600}form>button{margin-top:18px}.calendar{margin:24px 0}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:18px 0}.week-grid>div{min-width:0;background:var(--light);border-radius:10px;padding:4px}.week-grid button{width:100%;padding:8px 2px;overflow-wrap:anywhere;font-size:16px}.prep{border-top:3px solid #59779b;margin-top:18px}.prep button{white-space:normal;overflow-wrap:anywhere;max-width:100%;text-align:left}.prep h4{margin:18px 0 6px}.prep ul{padding-left:1.2em}.modal{scroll-padding:70px 0 100px}.modal form .actions{z-index:2}.modal input,.modal select{min-width:0;max-width:100%}.modal form .actions button{flex:1}body{overflow-wrap:anywhere}#quiet-form{margin:30px 0}button[aria-pressed=true]{border-color:var(--green);background:var(--light)}.note{font-size:1em}.workspace>main>.note:first-child{font-size:.85em;padding:8px 12px}.brand{max-width:85%}body.keyboard-open .bottomnav{display:none}body.keyboard-open .workspace{padding-bottom:30px}body.keyboard-open .modalback{align-items:flex-start}body.keyboard-open .modal{max-height:calc(100dvh - 16px)}
@media(max-width:700px){.workspace{padding:16px 16px calc(108px + env(safe-area-inset-bottom))}.greeting h1{font-size:1.65em}.greeting .eyebrow{font-size:13px}.home-actions button{font-size:18px;padding:10px 8px}.card{padding:20px 17px}.choice-grid{grid-template-columns:1fr}.menu-grid{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-grid button{font-size:18px}.topbar .brand{font-size:16px}.modal .actions{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.article h3{font-size:1.12em}.feedback button{font-size:18px}.bottomnav button{font-size:16px;padding:6px 10px}.modal{max-height:calc(100dvh - 16px)}.taskgrid{grid-template-columns:minmax(0,1fr)}.row.spread.wrap{align-items:flex-start}.sectiontitle{gap:10px}}
.modal .close{position:static}

/* Read the substance first; titles and original text remain one tap away. */
.brief-card .brief-label{font-family:inherit;font-size:1.12em;margin-bottom:12px}.brief-card .summary{font-size:1.05em;color:var(--ink);line-height:1.8}.brief-finding,.brief-limit{margin:14px 0;padding:14px 16px;border-radius:12px;background:#edf2f7}.brief-limit{background:#f5f1e8}.brief-finding p,.brief-limit p{margin-top:6px}.brief-card details h4{font-size:1em;line-height:1.65;margin:10px 0;font-weight:500}.brief-card blockquote{margin:12px 0;padding-left:14px;border-left:3px solid var(--line);font-size:.94em}.arrangement-tabs{display:flex;gap:10px;margin:22px 0}.arrangement-tabs button{flex:1}.arrangement-tabs [aria-pressed=true]{background:var(--green);color:white}.week-controls{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.day-group{margin:24px 0}.day-group>.row{padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:14px}.day-group h3 small{display:block;font-weight:400}.empty-day{padding:20px 14px;border:1px dashed #bdc9d7;border-radius:12px;color:var(--muted)}.schedule-card{display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px}.schedule-time{border-right:2px solid #b7c8dc;padding-right:12px;color:var(--green);display:flex;flex-direction:column;font-variant-numeric:tabular-nums}.schedule-time strong{font-size:1.16em}.schedule-time span{font-size:.9em;color:var(--muted)}.schedule-content{min-width:0}.schedule-content h3{margin:8px 0}.work-group{margin-top:28px}.work-group>h3{padding:10px 0;color:var(--green)}.work-card h3{margin:10px 0}.work-card>p{margin:14px 0}#guide-instructions{min-height:150px}
@media(max-width:700px){.schedule-card{grid-template-columns:80px minmax(0,1fr);gap:12px;padding:18px 14px}.schedule-card .actions{margin-left:-92px;padding-top:12px}.schedule-card .actions button{flex:1 1 42%;padding:10px 8px}.schedule-time strong{font-size:1em}.arrangement-tabs button{padding:12px 6px}.brief-card .summary{font-size:1em}.brief-finding,.brief-limit{padding:12px}.day-group .row button{font-size:18px}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.schedule-time strong,.schedule-time span{white-space:nowrap;overflow-wrap:normal}.schedule-time small{font-size:14px}
.decision-card h3{margin:12px 0}.decision-card>p{margin:12px 0}.decision-card details p{white-space:pre-wrap}.decision-card blockquote{margin:12px 0;padding-left:12px;border-left:3px solid var(--line)}

.schedule-time{align-self:start;padding-bottom:22px}

/* Keep the source identity visible alongside the content summary. */
.brief-card .brief-title{font-family:inherit;font-size:1em;line-height:1.55;margin:16px 0 12px;overflow-wrap:anywhere}.brief-card .brief-label{font-size:1em;margin:12px 0 8px}
.life-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 24px}.life-shortcuts button{background:#edf1f5;color:var(--ink);min-height:52px}.continue-card h2{font-size:1.12em;overflow-wrap:anywhere}.topic-row{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:12px 0}.topic-row>button:first-child{flex:1;min-width:0;text-align:left}.topic-row span{display:block;font-size:.85em;color:var(--muted);margin-top:6px}.topic-row strong,.topic-caption{overflow-wrap:anywhere}.academic-section>p{color:var(--muted)}.academic-section details>summary{min-height:48px;padding:12px 0}.companion-greeting{margin-bottom:20px}.followups{margin:20px 0}
.legacy-topic{display:block;width:100%;text-align:left;margin:10px 0;overflow-wrap:anywhere}

#request-status:not([hidden]){position:fixed;left:1rem;right:1rem;bottom:5.5rem;max-width:42rem;margin:auto;padding:.8rem 1rem;border:2px solid #426f55;border-radius:12px;background:#f1f6ed;color:#173c29;z-index:1000;box-shadow:0 2px 12px #0002;font-size:1rem;pointer-events:none}

/* Focus on the conversation; keep secondary controls within reach. */
.workspace>main{max-width:1040px;margin-inline:auto}
.composer{border-color:#b9c6d5;box-shadow:0 4px 18px #25354b06;padding:20px}
.composer textarea{min-height:108px;padding:4px 2px;line-height:1.7}
.composer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px}
.composer-toolbar .mode-switch{margin:0;gap:4px;flex-wrap:wrap}
.composer-toolbar .mode-switch button{flex:initial;border-color:transparent;background:transparent;padding:8px 12px}
.composer-toolbar .mode-switch button[aria-pressed=true]{background:var(--light);color:var(--green);border-color:#c1cede}
.composer-toolbar>button{flex-shrink:0}
.composer>.meta{margin:10px 0 0}.composer .error:empty{display:none}
.chat-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.chat-heading .actions{margin-top:0}.topic-caption{border-bottom:1px solid var(--line);padding:0 0 20px;margin-bottom:24px}
.topic-caption p{margin-top:4px;font-weight:600}.chat{white-space:normal}.chat.user,.answer-text{white-space:pre-wrap}
.answer-sources{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}
.answer-sources a{font-size:.88em;display:inline-flex;align-items:center;min-height:48px;max-width:100%;overflow-wrap:anywhere}
.answer-note{margin-top:10px}.answer-note summary{font-size:.88em}
.continue-card{border-left:3px solid #91a8c2}.continue-card h2{margin:8px 0 16px}
.continue-card button{margin:0 8px 8px 0}.home-next h2{font-size:1.15em}
.academic-section>h2{font-size:1.15em}.academic-section>p{margin-top:8px}
.draft-followup{padding:16px;border:1px solid #bccbdc;border-radius:12px;margin:-6px 0 24px;background:var(--light)}
.draft-followup button{margin:0 0 8px 12px}.draft-followup .meta{margin:4px 0 0}
@media(max-width:700px){.composer{padding:14px}.composer-toolbar{gap:6px;flex-wrap:wrap}.composer-toolbar .mode-switch{gap:2px}.composer-toolbar .mode-switch button{padding:8px;font-size:.88em}.composer-toolbar>button{padding:8px 12px;margin-left:auto}.chat-heading .actions{width:100%;gap:6px}.chat-heading .actions button{padding:8px 10px}.topic-caption{padding-bottom:16px}.life-shortcuts{gap:8px}.life-shortcuts button{padding:10px 8px}.draft-followup button{display:block;margin:12px 0 8px}}

.feedback-more{flex:1 1 100%}.feedback-more .actions{position:static;margin:8px 0;padding:0;background:transparent}

@media(max-width:360px){.greeting h1{font-size:1.35em}}

.article-evidence{margin-top:16px}.article-evidence blockquote{margin:14px 0;padding:12px 16px;border-left:3px solid var(--line);background:var(--paper);border-radius:8px;overflow-wrap:anywhere}.article-evidence blockquote p{white-space:pre-wrap}

/* Tool follow-ups remain text-labelled and reachable at large font sizes. */
.quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin-block:16px}.quick-actions button{min-height:48px;min-width:48px;white-space:normal;overflow-wrap:anywhere}
.site-registration{text-align:center;padding:16px 12px calc(100px + env(safe-area-inset-bottom));color:var(--muted);font-size:18px}
.site-registration a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;overflow-wrap:anywhere;color:inherit}
