:root{color-scheme:light;--ink:#23443d;--green:#254e43;--muted:#777d73;--paper:#faf8f3;--line:#e8e6dc;--sand:#e7d8ba;--sidebar:#f0efe7;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #9baf91;outline-offset:4px}button{color:inherit}a{color:inherit}button,input,textarea{border-radius:0}button{border:0;background:none}button,textarea,input{outline-offset:3px}[hidden]{display:none!important}.app-shell{display:flex;min-height:100dvh}.sidebar{width:252px;flex:none;padding:33px 23px 19px;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:20}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--serif);font-size:45px;letter-spacing:-3px;line-height:1}.brand-dot{color:#a79570}.sidebar-caption{font-size:9px;letter-spacing:1.8px;color:#7a8476;margin:19px 0 32px}.new-chat{border:1px solid #d3d7c8;background:#f9f8f2;border-radius:9px;padding:13px 15px;display:flex;align-items:center;gap:11px;text-align:left;font-size:12px;font-weight:500}.new-chat>span{font-size:20px;line-height:15px}.new-chat:hover{background:#fff}.history-heading{margin-top:35px;font-size:9px;letter-spacing:1.5px;color:#808779}.history{overflow:auto;flex:1;margin-top:16px}.history-empty{font-family:var(--serif);font-style:italic;color:#8d9384;font-size:15px;line-height:1.7;margin:11px 4px}.history-item{display:flex;align-items:center;text-align:left;width:100%;font-size:12px;line-height:1.6;padding:10px;border-radius:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item:hover,.history-item[aria-current=true]{background:#e4e7db}.sidebar-footer{margin-top:25px}.principles{display:flex;gap:15px;text-transform:uppercase;font-size:9px;letter-spacing:1.7px;color:#7c856f}.principles span+span:before{content:'·';margin-right:15px}.sidebar-note{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.6;margin:19px 0 24px;color:#737d69}.account{display:flex;align-items:center;gap:10px;border-top:1px solid #dce0d2;width:100%;padding:17px 0 0;text-align:left;font-size:11px}.account #account-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:29px;height:29px;border:1px solid #ccd3c1;border-radius:50%;display:grid;place-items:center;flex:none}main{margin-left:252px;flex:1;min-width:0;display:flex;flex-direction:column;height:100dvh}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:78px;padding:0 37px;border-bottom:1px solid var(--line);gap:20px;flex:none}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.topbar-name{font-family:var(--serif);font-size:24px}.topbar-description{border-left:1px solid #dcded3;padding-left:18px;font-size:11px;color:var(--muted)}.voice-badge{display:flex;align-items:center;gap:7px;color:#8a8e7e;font-size:10px;white-space:nowrap}.voice-badge>span{color:#a8ad99;font-size:14px}.sign-in-small{border:1px solid #d7dccc;border-radius:7px;padding:9px 13px;font-size:11px;white-space:nowrap}.sign-in-small span{margin-left:9px}.workspace{flex:1;overflow:auto;scroll-behavior:smooth;padding:30px 30px 20px}.welcome{max-width:720px;margin:0 auto;text-align:center;padding-top:1.2vh}.presence-orb{height:74px;width:74px;margin:0 auto 24px;position:relative;display:grid;place-items:center;border:1px solid #e5ddc9;border-radius:50%;background:radial-gradient(circle at 30% 20%,#f5e5bd,#e9debc 35%,#d4d9bd 70%,#b5cbb6);box-shadow:0 0 30px #d5dfc14d}.orb-inner{position:absolute;inset:7px;border:1px solid #ffffff70;border-radius:50%;background:radial-gradient(circle at 40% 40%,#ffffff52,transparent 65%)}.presence-orb>span{font-family:var(--serif);font-size:37px;z-index:1;color:#6e805a;font-weight:400}.eyebrow{font-size:9px;letter-spacing:2.5px;color:#89907c}.welcome h1{font-family:var(--serif);font-size:clamp(38px,4.2vw,57px);font-weight:400;line-height:1.13;letter-spacing:-1.8px;margin:17px 0 16px}.welcome-description{color:#7c8275;font-size:12px;line-height:1.85;margin:0}.pathways{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:30px auto 0;max-width:655px}.pathway{display:flex;gap:13px;text-align:left;border:1px solid #e2e4d8;background:#fdfcf8;min-height:83px;padding:18px 17px;border-radius:10px;align-items:flex-start;transition:background .15s,border-color .15s,transform .15s}.pathway:hover{background:#f0f3e8;border-color:#b3c3a4;transform:translateY(-1px)}.pathway[aria-pressed=true]{background:#edf1e4;border-color:#99af89}.pathway svg{width:20px;height:20px;flex:none;stroke:#7e916e;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}.pathway-title{display:block;font-family:var(--serif);font-size:16px;margin-bottom:6px}.pathway-detail{display:block;color:#858878;font-size:10px;line-height:1.5}.composer-area{width:min(100% - 60px,760px);margin:0 auto;padding:11px 0 15px;flex:none}.guidance-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 1px 12px;color:#888c7c;font-size:10px}.mode-picker{display:flex;gap:3px;padding:3px;border:1px solid #e5e6db;border-radius:25px}.mode-picker button{font-size:10px;padding:5px 12px;border-radius:20px}.mode-picker button[aria-pressed=true]{background:#e9eddf;color:#4c6644}.composer{display:flex;align-items:flex-end;gap:10px;padding:13px 13px 13px 19px;border:1px solid #dcded1;border-radius:14px;background:#fffefb;box-shadow:0 5px 24px #283e2810}.composer:focus-within{border-color:#a5b398;box-shadow:0 5px 24px #283e2815}.composer textarea{border:0;resize:none;outline:none;background:none;flex:1;min-height:26px;max-height:120px;padding:4px 0;color:var(--ink);font-size:13px;line-height:1.6}.composer textarea::placeholder{color:#9b9c8d}.send-button{width:34px;height:34px;display:grid;place-items:center;background:#315547;border-radius:9px;color:#fff;flex:none}.send-button:hover{background:#183d31}.send-button svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.composer-caption{text-align:center;font-size:9px;color:#90947f;letter-spacing:.2px;margin:11px 0 0}.composer-caption span{color:#a2a590;margin-left:9px}.chat{max-width:760px;margin:0 auto;padding-bottom:15px}.chat-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:15px 0 33px;padding-bottom:22px;border-bottom:1px solid var(--line)}.chat-heading h1{font-family:var(--serif);font-size:25px;font-weight:400;margin:9px 0 0}.text-button{color:#7a8471;font-size:11px;text-decoration:underline;text-underline-offset:4px}.messages{display:flex;flex-direction:column;gap:27px}.message{max-width:95%;line-height:1.85;font-size:14px;overflow-wrap:anywhere}.message.user{align-self:flex-end;max-width:85%;background:#edf0e6;padding:12px 18px;border-radius:14px 14px 3px 14px;white-space:pre-wrap}.message.assistant{align-self:flex-start;display:flex;gap:13px}.message.assistant .message-body{min-width:0}.message.assistant .message-body p{margin:0 0 10px;white-space:pre-wrap}.message.assistant .message-body h3{font-family:var(--serif);font-size:20px;font-weight:400;margin:15px 0 6px}.message-body ul{padding-left:21px;margin:8px 0 14px}.message-body a{text-decoration:underline;text-underline-offset:3px}.message-mark{width:25px;height:25px;border-radius:50%;background:#e7ebda;color:#68855d;display:grid;place-items:center;flex:none;margin-top:3px}.message.incomplete{opacity:.7}.response-status{font-size:11px;color:#819072;line-height:1.6;min-height:18px;margin-top:20px}.access-notice{padding:10px 13px;margin-bottom:10px;font-size:11px;line-height:1.6;background:#f1eedf;border-radius:7px;color:#727458}.access-notice a{font-weight:600;margin-left:7px}.icon-button{width:30px;height:30px;display:grid;place-items:center;font-size:20px;color:#7f8876}.menu-toggle{display:none}.mobile-scrim{position:fixed;inset:0;background:#182b2570;z-index:19}dialog{max-width:430px;width:calc(100% - 38px);border:1px solid var(--line);border-radius:18px;padding:35px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #153c3230}dialog::backdrop{background:#172c2470;backdrop-filter:blur(4px)}dialog h2{font-family:var(--serif);font-size:29px;font-weight:400;letter-spacing:-.5px;margin:19px 0 10px}dialog p{font-size:12px;color:#7c8373;line-height:1.8}.dialog-close{position:absolute;right:13px;top:13px;font-size:26px}dialog label{display:block;margin:22px 0 8px;font-size:11px}dialog input{width:100%;border:1px solid #d7ddcd;background:#fffefb;border-radius:8px;padding:12px;color:var(--ink)}.primary-button{background:var(--green);color:white;border-radius:8px;padding:13px 16px;font-size:12px}dialog form .primary-button{width:100%;margin-top:12px}.dialog-note{border-top:1px solid var(--line);padding-top:16px;margin:18px 0 0;font-size:10px}.auth-status{min-height:18px}.dialog-actions{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-top:24px}.toast{position:fixed;bottom:22px;left:calc(50% + 126px);transform:translateX(-50%);z-index:50;max-width:calc(100% - 35px);background:#254b3f;color:#fff;padding:13px 20px;border-radius:10px;box-shadow:0 7px 30px #0002;font-size:12px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{position:fixed;bottom:0;padding:20px;background:var(--paper);width:100%;text-align:center}
@media(min-height:950px){.welcome{padding-top:5vh}.pathways{margin-top:38px;gap:14px}.pathway{min-height:91px}}
@media(max-width:1100px){.sidebar{width:215px;padding:28px 18px 18px}main{margin-left:215px}.topbar{padding:0 25px}.topbar-description{font-size:10px}.voice-badge{display:none}.toast{left:calc(50% + 107px)}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);width:252px;transition:transform .2s}.sidebar.open{transform:translateX(0)}main{margin-left:0}.menu-toggle{display:grid}.topbar{min-height:65px;padding:0 18px}.topbar-left{gap:11px}.topbar-description{font-size:9px;padding-left:11px;max-width:155px;line-height:1.5}.topbar-name{font-size:23px}.topbar-right{gap:5px}.sign-in-small{padding:8px 10px;font-size:10px}.sign-in-small span{display:none}.workspace{padding:25px 19px 15px}.welcome{padding-top:0}.presence-orb{width:61px;height:61px;margin-bottom:20px}.presence-orb>span{font-size:30px}.welcome h1{font-size:43px;margin-top:16px}.eyebrow{font-size:8px;letter-spacing:2px}.pathways{gap:9px;margin-top:26px}.pathway{min-height:99px;padding:14px 12px;gap:9px}.pathway svg{width:17px;height:17px}.pathway-title{font-size:15px;line-height:1.3}.pathway-detail{font-size:9px}.composer-area{width:calc(100% - 32px);padding-bottom:max(14px,env(safe-area-inset-bottom))}.guidance-row{font-size:9px;gap:5px}.mode-picker button{font-size:9px;padding:5px 9px}.composer{padding:11px 10px 11px 14px}.composer-caption{font-size:8px}.composer-caption span{margin-left:4px}.toast{left:50%}.chat-heading{align-items:flex-start;gap:13px}.chat-heading h1{font-size:22px}.chat-heading .text-button{max-width:90px;text-align:right;line-height:1.7}.message{font-size:13px}.message.user{max-width:90%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Comfortable controls, device edges, and the on-screen keyboard. */
html,body{height:100%;overscroll-behavior-y:none}body{overflow:hidden}.app-shell{min-height:0;height:var(--app-height,100dvh);position:relative;top:var(--app-top,0px)}main{height:100%;overflow:hidden}.workspace{min-height:0}.composer textarea{min-width:0}.message-body{min-width:0;overflow-wrap:anywhere}.install-button{width:100%;min-height:44px;text-align:left;font-size:12px;border:1px solid #d3d7c8;border-radius:8px;padding:10px 12px;margin-bottom:20px}.install-button:hover{background:#fff}.icon-button,.sign-in-small,.send-button,.mode-picker button,.history-item,.text-button{min-height:44px}.send-button{min-width:44px}.mode-picker button{padding:7px 12px}.remember-choice{display:flex;align-items:center;gap:10px;min-height:44px;margin:12px 0 0;font-size:12px}.remember-choice input{width:20px;height:20px;flex:none;accent-color:var(--green);margin:0}.remember-note{margin:0 0 4px;font-size:11px}dialog{max-height:calc(100dvh - 32px);overflow-y:auto}dialog input{font-size:16px}.install-steps{padding-left:21px;font-size:13px;line-height:1.8}.install-steps li+li{margin-top:10px}#install-done{width:100%;margin-top:16px}.topbar{padding-top:env(safe-area-inset-top)}.sidebar{padding-top:max(28px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}
@media(max-width:760px){.app-shell{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.topbar{padding-left:12px;padding-right:12px;gap:8px;min-height:calc(64px + env(safe-area-inset-top))}.topbar-left{gap:8px;min-width:0}.topbar-description{max-width:135px}.composer textarea{font-size:16px;line-height:1.5}.composer-area{padding-top:8px}.guidance-row{font-size:11px;align-items:center;flex-wrap:wrap;row-gap:6px;margin-bottom:8px}.mode-picker button{font-size:11px;padding:6px 10px}.composer{padding:8px 9px 8px 13px}.pathway-title{font-size:16px}.pathway-detail{font-size:11px}.pathway{min-height:108px}.sidebar{max-width:calc(100vw - 48px)}.toast{bottom:max(18px,env(safe-area-inset-bottom))}dialog{padding:28px 24px}.chat-heading .text-button{font-size:11px}}
@media(max-width:380px){.topbar-description{display:none}.pathways{grid-template-columns:1fr}.pathway{min-height:78px}.guidance-row{justify-content:center}.welcome h1{font-size:39px}}
@media(max-height:500px) and (max-width:950px){.composer-caption{display:none}.topbar{min-height:48px}.composer-area{padding-top:5px;padding-bottom:5px}.guidance-row{margin-bottom:4px}.sidebar-note,.sidebar-caption{display:none}.sidebar-footer{margin-top:10px}.install-button{margin-bottom:8px}.history-heading{margin-top:16px}}

.signed-in-state{font-size:11px;color:var(--green);white-space:nowrap}.auth-notice{font-size:12px;line-height:1.6;padding:11px 13px;margin-bottom:9px;background:#edf1e4;border:1px solid #d3ddc8;border-radius:9px;overflow-wrap:anywhere}
