@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Instrument+Serif:ital@0;1&display=swap');
:root{--paper:#f8f7f3;--ink:#292b28;--muted:#71736d;--line:#dedfd6;--green:#344b3c;--lavender:#e8e5f2;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px}a{color:inherit;text-decoration:none}button,textarea{font:inherit}button,a,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #8c7cad;outline-offset:4px}.wrap{width:min(1180px,calc(100% - 96px));margin:auto}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:11px;align-items:center;font-size:25px;font-weight:650;letter-spacing:-1.4px}.brand-mark{display:flex;flex-direction:column;gap:3px;transform:rotate(-12deg)}.brand-mark i{width:17px;height:5px;background:var(--green);display:block;border-radius:2px}.brand-mark i:nth-child(2){transform:translateX(3px)}.beta{font-size:9px;font-weight:600;letter-spacing:1px;border:1px solid #d1d4c9;border-radius:4px;padding:4px 5px;margin-left:1px;align-self:center}.nav nav{display:flex;gap:35px;align-items:center;font-size:13px}.nav-try{border:1px solid #cfd2c8;border-radius:6px;padding:11px 17px}.nav-try span{margin-left:15px}.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:65px;padding-top:72px;padding-bottom:76px;align-items:center}.eyebrow,.section-label{font-size:10px;letter-spacing:1.6px;font-weight:650}.eyebrow{display:flex;align-items:center;gap:9px}.little-star{color:#728363;font-size:22px}h1{font-family:var(--serif);font-weight:400;font-size:84px;line-height:.99;letter-spacing:-2px;margin:25px 0}h1 em{font-weight:400;color:var(--green)}.hero-description{color:#696d65;font-size:15px;line-height:1.8;max-width:385px;margin-bottom:27px}.button{display:inline-flex;gap:40px;align-items:center;border-radius:5px;padding:15px 20px;font-size:13px}.primary{background:var(--green);color:white}.primary:hover{background:#203d2a}.hero-note{display:block;font-size:10px;color:var(--muted);margin-top:13px}.concept{position:relative;height:435px;background:#eeede6;border:1px solid #e6e5dc;border-radius:140px 140px 8px 8px;overflow:hidden;background-image:radial-gradient(#d9dacd 1px,transparent 1px);background-size:15px 15px}.concept-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.6px;padding:29px 32px}.concept-orbit{position:absolute;border:1px solid #c8cdbf;border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-28deg)}.orbit-one{width:350px;height:205px}.orbit-two{width:215px;height:340px;transform:translate(-50%,-50%) rotate(33deg)}.concept-center{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:87px;height:87px;background:#d9dfca;border-radius:24px;display:grid;place-items:center;box-shadow:0 0 0 10px #eeede6aa}.concept-center .brand-mark{gap:7px}.concept-center .brand-mark i{width:29px;height:8px}.orbit-label{position:absolute;display:flex;gap:12px;align-items:center;background:#fcfbf7;border:1px solid #dedfd4;border-radius:9px;padding:14px;box-shadow:0 5px 10px #25322406}.orbit-label small{display:block;font-size:7px;letter-spacing:1.5px;color:#77796e;margin-bottom:5px}.orbit-label b{font-size:12px;font-weight:550}.question-label{left:23px;top:105px}.question-label>span:last-child{font-size:16px;margin-left:12px}.step-circle{border:1px solid #c7cec1;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:9px;color:#63705c}.notes-label{right:18px;top:215px;background:#f0edf7}.note-icon{font-size:27px;color:#8b7e9f}.understanding-label{left:35px;bottom:79px;background:#e0e6d3}.understanding-label>span{font-size:28px;color:#687b51}.concept-bottom{position:absolute;bottom:25px;left:32px;font-size:9px;color:#767a6a;display:flex;align-items:center;gap:7px}.dot{height:6px;width:6px;display:inline-block;border-radius:100%;background:#9c9f92;flex-shrink:0}.hand-note{font-family:var(--serif);font-style:italic;position:absolute;right:29px;bottom:33px;font-size:17px;color:#6e775e;transform:rotate(-7deg)}.how{border-top:1px solid var(--line);padding:28px 0 52px}.section-label{color:#727768}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:32px}.how-number{font-size:9px;letter-spacing:1.3px;color:#858b78}h2{font-family:var(--serif);font-weight:400}.how h2{font-size:25px;margin:12px 0 10px}.how p{font-size:12px;line-height:1.8;color:var(--muted);max-width:300px;margin:0}.demo-section{background:#efeee8;border-block:1px solid #e1e1d7;padding:51px 0 30px;scroll-margin-top:0}.demo-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.demo-heading h2{font-size:43px;letter-spacing:-.7px;margin:13px 0 0}.status{font-size:10px;border:1px solid #d5d7ca;padding:8px 11px;border-radius:20px;display:flex;gap:7px;align-items:center;white-space:nowrap}.status.online .dot{background:#578752}.workspace{display:grid;grid-template-columns:270px 1fr;min-height:575px;border:1px solid #d6d8ce;border-radius:9px;overflow:hidden;background:#fbfaf6;box-shadow:0 8px 25px #30382904}.demo-sidebar{background:#e9ecdf;padding:27px 23px;display:flex;flex-direction:column;border-right:1px solid #d8dccd}.course-label,.suggestion-heading{font-size:8px;letter-spacing:1.4px;color:#79816a;font-weight:600}.demo-sidebar h3{font-size:18px;font-weight:550;letter-spacing:-.5px;margin:12px 0 5px}.course-subtitle{color:#818777;font-size:10px;margin:0 0 22px}.source-badge{font-size:10px;display:flex;gap:9px;align-items:center}.source-badge>span:first-child{font-size:19px;color:#7a8769}.sidebar-description{font-size:11px;color:#7a806f;line-height:1.75;margin:10px 0 29px}.suggestion-heading{margin-bottom:10px}.suggestion{border:0;border-top:1px solid #d4dac9;background:none;padding:15px 0;text-align:left;display:flex;justify-content:space-between;gap:15px;font-size:11px;line-height:1.6;color:#4a5741;width:100%}.suggestion:hover{color:#1a3722}.suggestion span{font-size:16px}.sidebar-foot{margin-top:auto;padding-top:24px;font-size:9px;line-height:1.8;color:#8c927f}.chat{display:flex;flex-direction:column;min-width:0}.chat-top{padding:17px 23px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e5dc;font-size:12px}.tiny-mark{font-size:19px;color:#788561;vertical-align:middle;margin-right:7px}.chat-tag{font-size:7px;letter-spacing:1px;color:#8f9287;margin-left:14px}.clear-button{border:0;background:none;color:#8d9085;font-size:10px;min-height:32px}.clear-button:hover{color:var(--ink)}.messages{height:340px;overflow-y:auto;padding:24px;scroll-behavior:smooth}.welcome{text-align:center;padding-top:23px}.welcome-icon{width:49px;height:49px;border:1px solid #e1e3d7;border-radius:15px;background:#f1f2e9;margin:auto;display:grid;place-items:center;font-size:27px;color:#758563}.welcome h3{font-family:var(--serif);font-weight:400;font-size:30px;margin:20px 0 10px;letter-spacing:-.3px}.welcome p{font-size:12px;line-height:1.8;color:#8b8e82}.welcome-topics{display:flex;gap:8px;justify-content:center;margin-top:20px}.welcome-topics span{border:1px solid #e5e5dc;border-radius:20px;padding:5px 11px;font-size:9px;color:#8c907f}.composer-area{margin-top:auto;padding:10px 23px 17px}.composer{border:1px solid #d7dbce;border-radius:8px;padding:12px;background:#fffefb;display:flex;align-items:flex-end;gap:8px}.composer:focus-within{border-color:#8f9b7d;box-shadow:0 0 0 2px #d9e0ce55}textarea{resize:vertical;width:100%;min-height:51px;max-height:150px;border:0;background:none;outline:none!important;color:#454c3f;font-size:12px;line-height:1.6}textarea::placeholder{color:#a2a596}#send{border:0;border-radius:6px;background:#43563b;color:white;width:33px;height:33px;flex-shrink:0;font-size:20px}.composer-meta{display:flex;justify-content:space-between;font-size:8px;color:#9a9e91;margin:8px 2px}.accuracy-note{font-size:8px;line-height:1.6;color:#9b9e92;margin:10px 0 0;text-align:center}.chat-error{font-size:11px;line-height:1.6;padding:11px;border:1px solid #decdb4;border-radius:5px;background:#faf0df;color:#77572c}.message{margin-bottom:20px}.message-label{font-size:8px;letter-spacing:1.3px;font-weight:600;color:#8c927f;margin-bottom:8px}.message p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.85;margin:0}.message.user{background:#f0f0e7;padding:13px 16px;border-radius:8px;margin-left:30px}.message.user .message-label{color:#7f8671}.message.assistant{padding-right:12px}.message details{margin-top:12px;border:1px solid #e0e2d5;border-radius:6px;padding:10px 12px;font-size:11px}.message summary{cursor:pointer;color:#6b7959}.source{padding:10px 0;border-bottom:1px solid #e4e6db}.source:last-child{border:0}.source b{display:block;font-size:10px;margin-bottom:5px}.source p{font-size:11px;color:#777f6c}.loading p{color:#8a927d;font-size:12px}.demo-caption{display:flex;gap:12px;align-items:flex-start;margin:23px 4px 0;max-width:730px}.caption-star{color:#91997d;font-size:19px}.demo-caption p{font-size:10px;line-height:1.8;color:#8b8f80;margin:0}.demo-caption strong{font-weight:550;color:#737c67}.closing{display:flex;align-items:center;justify-content:space-between;padding:55px 0}.closing p{font-family:var(--serif);font-size:39px;line-height:1.15;margin:0}.closing em{color:#6c7b5a}.closing a{font-size:12px;border-bottom:1px solid #9ca78c;padding:9px 0}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:24px 0 30px;font-size:10px;color:#929687}footer .brand{font-size:20px;color:#717c64}footer a:last-child{font-size:9px}.skip,.sr-only{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.skip:focus{clip-path:none;width:auto;height:auto;top:10px;left:10px;padding:15px;background:white;z-index:3}@media(min-width:1500px){.hero{padding-top:95px;padding-bottom:95px}}@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.hero{gap:30px}h1{font-size:70px}.concept{height:410px}.orbit-one{width:280px}.question-label{left:12px}.notes-label{right:10px}.hand-note{right:18px;font-size:14px}.workspace{grid-template-columns:230px 1fr}.demo-sidebar{padding:24px 18px}.chat-tag{display:none}}@media(max-width:720px){.wrap{width:calc(100% - 36px)}.nav{height:78px}.brand{font-size:22px}.nav nav{gap:17px;font-size:11px}.nav-try{padding:9px}.nav-try span{margin-left:4px}.hero{grid-template-columns:1fr;padding:37px 0 36px;gap:32px}.eyebrow{font-size:8px;letter-spacing:1.1px}h1{font-size:76px;margin:20px 0}.hero-description{font-size:14px;max-width:400px}.hero-note{font-size:9px}.concept{height:360px;max-width:460px;width:100%;margin:auto;border-radius:100px 100px 7px 7px}.concept-top{padding:23px 30px}.question-label{top:83px;left:15px}.notes-label{top:180px}.understanding-label{bottom:63px;left:22px}.concept-bottom{bottom:19px;left:23px;font-size:8px}.hand-note{bottom:23px}.orbit-two{height:280px}.how{padding:27px 0 32px}.how-grid{grid-template-columns:1fr;gap:24px;margin-top:25px}.how h2{font-size:25px;margin-top:7px}.how p{max-width:100%;font-size:12px}.demo-section{padding-top:32px}.demo-heading{display:block}.demo-heading h2{font-size:35px}.demo-heading .section-label{font-size:8px}.status{width:fit-content;margin-top:16px;font-size:9px}.workspace{grid-template-columns:1fr}.demo-sidebar{border-right:0;border-bottom:1px solid #d8dccd;padding:20px}.course-label{font-size:8px}.demo-sidebar h3{margin-top:8px}.course-subtitle{margin-bottom:14px}.source-badge{font-size:10px}.sidebar-description{margin-bottom:16px}.suggestion-heading{margin-top:0}.suggestion{font-size:11px;padding:10px 0}.sidebar-foot{display:none}.chat-top{padding:13px 16px}.messages{height:360px;padding:22px 17px}.welcome h3{font-size:27px}.welcome p{font-size:11px}.composer-area{padding:10px 14px 17px}.composer-meta{font-size:7px}.accuracy-note{font-size:8px}.demo-caption{margin-top:18px}.closing{padding:35px 0;align-items:flex-start;gap:25px}.closing p{font-size:29px}.closing a{font-size:10px;max-width:110px;line-height:1.6}footer{flex-wrap:wrap;gap:15px}footer>span{order:3;width:100%;font-size:9px}}@media(prefers-reduced-motion:reduce){html,.messages{scroll-behavior:auto}}
@media(max-width:400px){.beta{display:none}.nav nav{gap:12px;font-size:10px;white-space:nowrap}.nav-try{padding:9px 8px}.brand{font-size:21px;gap:8px}h1{font-size:70px}}@media(max-width:720px){#send{width:40px;height:40px}.clear-button{min-height:44px}}

.course-tabs{display:flex;gap:8px;margin:0 0 16px}.course-tabs button{min-height:56px;flex:1;max-width:310px;border:1px solid #d5d9cb;border-radius:8px;background:#f8f7f1;color:#69745e;padding:12px 16px;text-align:left;font-weight:600;font-size:13px;transition:background .15s}.course-tabs button span{display:block;font-size:10px;font-weight:400;margin-top:4px;line-height:1.5}.course-tabs button[aria-selected="true"]{background:var(--green);border-color:var(--green);color:#fff}.course-tabs button:hover{border-color:var(--green)}@media(max-width:720px){.course-tabs button{padding:11px 12px;max-width:none}.course-tabs button span{font-size:9px}.course-tabs{gap:7px}}

/* Assistant answer typography. Questions and retrieved excerpts stay literal. */
.answer-body{font-size:13px;line-height:1.85;overflow-wrap:anywhere;min-width:0}
.answer-body>:first-child{margin-top:0}
.answer-body>:last-child{margin-bottom:0}
.answer-body p{white-space:normal;margin:0 0 14px;line-height:1.85}
.answer-body h1,.answer-body h2,.answer-body h3,.answer-body h4,.answer-body h5,.answer-body h6{font-family:var(--sans);font-weight:650;line-height:1.4;letter-spacing:0;color:var(--ink);margin:22px 0 10px}
.answer-body h1{font-size:20px}.answer-body h2{font-size:18px}.answer-body h3{font-size:16px}.answer-body h4,.answer-body h5,.answer-body h6{font-size:14px}
.answer-body strong{font-weight:650}.answer-body em{font-style:italic}
.answer-body ul,.answer-body ol{padding-left:24px;margin:10px 0 16px}
.answer-body li{padding-left:3px;margin:5px 0}
.answer-body li>p{margin:5px 0}
.answer-body blockquote{border-left:3px solid #aab79a;padding:2px 0 2px 15px;margin:16px 0;color:#606c56}
.answer-body blockquote p:last-child{margin-bottom:0}
.answer-body a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.answer-body hr{border:0;border-top:1px solid var(--line);margin:20px 0}
.answer-body code{font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;font-size:.92em}
.answer-body :not(pre)>code{padding:2px 5px;background:#edf0e5;border:1px solid #dfe4d5;border-radius:4px;overflow-wrap:anywhere}
.answer-body .code-block{border:1px solid #d9dfcf;border-radius:7px;background:#f0f2e9;margin:15px 0;overflow:hidden;max-width:100%}
.answer-body .code-language{padding:6px 12px;font-size:9px;font-weight:600;letter-spacing:.8px;color:#6b775f;border-bottom:1px solid #d9dfcf;background:#e9eddf}
.answer-body pre{margin:0;padding:13px 14px;overflow-x:auto;white-space:pre;line-height:1.7;tab-size:4}
.answer-body pre code{display:block;font-size:12px;white-space:pre;overflow-wrap:normal;color:#354031}
.answer-body .hljs-keyword,.answer-body .hljs-meta{color:#694b8a;font-weight:600}
.answer-body .hljs-type,.answer-body .hljs-built_in,.answer-body .hljs-title{color:#2d655e}
.answer-body .hljs-string,.answer-body .hljs-char,.answer-body .hljs-regexp{color:#496a34}
.answer-body .hljs-number,.answer-body .hljs-literal{color:#9a5026}
.answer-body .hljs-comment{color:#6f7865;font-style:italic}
.answer-body .answer-table{max-width:100%;overflow-x:auto;margin:15px 0}
.answer-body table{border-collapse:collapse;min-width:100%;font-size:12px;text-align:left}
.answer-body th,.answer-body td{padding:9px 12px;border:1px solid #dce0d3;vertical-align:top}
.answer-body th{background:#edf0e5;font-weight:600}
.answer-body .katex{font-size:1.1em}
.answer-body p>.katex{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle;padding:2px 0}
.answer-body .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:5px 0;margin:16px 0}
.answer-body .katex-error{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:720px){.answer-body{font-size:13px}.answer-body pre{padding:11px 12px}.answer-body pre code{font-size:11px}.answer-body th,.answer-body td{padding:8px 10px}}
