:root{color-scheme:light;--paper:#f7f6f1;--sidebar:#eeede6;--white:#fffefa;--ink:#242d2b;--muted:#6c736d;--line:#dddfd5;--sage:#405f50;--sage-soft:#e2e9df;--danger:#964b3e;--serif:Georgia,'Times New Roman',serif;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.55;color:var(--ink);background:var(--paper);font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button{border:0;background:none}button:disabled{cursor:wait;opacity:.55}button,a,summary{touch-action:manipulation}a{color:var(--sage);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--sage);outline-offset:4px}button,a,summary{transition:background .18s,color .18s,box-shadow .18s}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}svg{flex-shrink:0}.icon{display:inline-block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.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}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:600;color:var(--muted)}.wordmark{font-family:var(--serif);font-size:39px;line-height:1;letter-spacing:-2px;font-weight:normal;color:var(--ink)}.wordmark>span{color:var(--sage)}.private-label{font-size:11px;color:var(--muted);letter-spacing:.01em}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:44px;padding:11px 20px;border-radius:9px;background:var(--sage);color:#fff;font-size:13px;font-weight:500}.primary-button:hover{background:#304d3f}.field-hint{color:var(--muted);font-size:11px;line-height:1.6}.field-hint .icon{width:13px;height:13px;margin-right:5px}input:not([type=checkbox]),textarea{display:block;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:12px 14px;font-size:14px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#81877f}label{display:block;font-size:12px;font-weight:500;margin-bottom:7px}
/* The entrance has the same quiet materials as the working space. */
.access-screen{min-height:100dvh;display:flex;flex-direction:column;padding:34px clamp(24px,6vw,88px);background:radial-gradient(ellipse at 88% 25%,#e7eadf75,transparent 48%),var(--paper)}.access-brand{display:flex;align-items:center;gap:21px}.access-brand .private-label{border-left:1px solid #cbd0c5;padding-left:21px}.access-content{max-width:510px;margin:auto 0;padding:66px 0 75px}.access-symbol{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #c9d3c5;border-radius:50%;color:var(--sage);margin-bottom:30px}.access-symbol .icon{width:25px;height:25px}.access-content h1{font-family:var(--serif);font-size:clamp(37px,5.7vw,59px);letter-spacing:-1.9px;line-height:1.12;margin:19px 0 23px}.access-intro{max-width:390px;color:var(--muted);font-size:14px;line-height:1.8}.access-form{max-width:420px;margin-top:39px}.access-form>label{font-size:12px;margin-bottom:10px}.access-field{display:flex;gap:8px}.access-field input{min-width:0}.access-field .primary-button{flex-shrink:0}.access-form .field-hint{margin-top:11px;max-width:340px}.access-footer{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
/* One compact sidebar; one primary conversation surface. */
.app-shell{display:grid;grid-template-columns:224px minmax(0,1fr);height:100dvh;overflow:hidden}.sidebar{display:flex;flex-direction:column;padding:34px 18px 20px;background:var(--sidebar);border-right:1px solid var(--line)}.brand{display:flex;flex-direction:column;gap:12px;padding:0 14px 38px}.brand .wordmark{font-size:38px}.main-nav{display:flex;flex-direction:column;gap:7px}.nav-item{display:flex;align-items:center;gap:12px;min-height:44px;width:100%;text-align:left;padding:10px 13px;border-radius:8px;color:#606b63;font-size:12px}.nav-item .icon{width:18px;height:18px;stroke-width:1.6}.nav-item:hover{background:#e5e6dc}.nav-item.active{background:#dfe5da;color:#2f4c3e;font-weight:600}.nav-count{margin-left:auto;font-size:10px;background:#edf0e7;min-width:19px;text-align:center;border-radius:5px}.sidebar-bottom{margin-top:auto}.sidebar-bottom>.nav-item{margin-bottom:21px}.owner{display:flex;align-items:center;gap:10px;padding:20px 11px 0;border-top:1px solid #d8dcd0}.avatar{display:flex;align-items:center;justify-content:center;width:31px;height:31px;background:#dbe0d3;border:1px solid #c9d2c0;border-radius:50%;font-size:10px;letter-spacing:.03em}.owner strong,.owner small{display:block}.owner strong{font-size:11px;font-weight:500}.owner small{font-size:10px;color:var(--muted);margin-top:1px}.main-area{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{height:82px;min-height:82px;padding:0 clamp(25px,4vw,60px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e6dd}.topbar h1{font-size:13px;font-weight:500;letter-spacing:.01em}.topbar-actions{display:flex;gap:20px;align-items:center}.privacy-caption{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}.privacy-caption .icon{width:12px;height:12px}.icon-button{position:relative;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;color:#5b685f}.icon-button:hover{background:#e7eade}.notification-dot{position:absolute;right:10px;top:10px;width:6px;height:6px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 2px var(--paper)}.mobile-brand{display:none}
.conversation-view{display:flex;flex:1;flex-direction:column;min-height:0}.conversation-scroll{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding:34px clamp(25px,4vw,60px) 26px;scrollbar-width:thin;scrollbar-color:#cdd2c6 transparent}.welcome{width:100%;max-width:650px;margin:auto;padding:20px 0 48px}.welcome-symbol{display:flex;align-items:center;justify-content:center;width:42px;height:42px;color:var(--sage);margin-bottom:24px;border:1px solid #c7d1c1;border-radius:50%}.welcome-symbol .icon{width:24px;height:24px}.welcome h2{font-family:var(--serif);font-size:clamp(37px,4vw,54px);line-height:1.13;letter-spacing:-1.45px;margin:15px 0 20px}.welcome h2 em{font-weight:400;color:var(--sage)}.welcome>p:not(.eyebrow){max-width:395px;font-size:13px;line-height:1.85;color:var(--muted)}.suggestions{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}.suggestions button{display:flex;align-items:center;gap:17px;min-height:44px;border:1px solid #d4d9cb;border-radius:8px;padding:9px 13px;font-size:11px;color:#4e5d52;background:#f8f8f3}.suggestions button:hover{background:#e8eddf;border-color:#bac8b3}.suggestions button>span{font-size:15px;color:#778771}.conversation{width:100%;max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:32px}.exchange{display:flex;flex-direction:column;gap:22px}.message-row{display:flex;gap:12px;min-width:0}.message-owner{align-self:flex-end;display:flex;flex-direction:column;align-items:flex-end;max-width:90%}.message-owner .message-content{background:#e8ece2;padding:13px 17px;border-radius:14px 14px 3px 14px;font-size:13px;line-height:1.75}.message-meta{color:var(--muted);font-size:10px;line-height:1.5;margin-top:7px;display:flex;gap:10px;align-items:center}.assistant-mark{display:flex;align-items:center;justify-content:center;border:1px solid #c6d1c0;background:#eff2e8;border-radius:50%;width:27px;height:27px;flex-shrink:0;margin-top:1px}.assistant-mark .icon{width:15px;height:15px;color:var(--sage)}.assistant-message{min-width:0;flex:1;padding-top:2px}.assistant-name{font-size:11px;font-weight:600;margin-bottom:8px}.message-content{white-space:pre-wrap;overflow-wrap:anywhere}.assistant-message>.message-content{font-size:13px;line-height:1.9;color:#36423a}.status-text{font-size:11px;color:var(--muted);display:flex;gap:7px;align-items:center}.status-text:before{content:'';width:5px;height:5px;border-radius:50%;background:#6d8271}.status-text.failure{color:var(--danger)}.status-text.failure:before{background:var(--danger)}.composer-area{padding:12px clamp(25px,4vw,60px) 19px}.composer{max-width:700px;margin:0 auto;background:var(--white);border:1px solid #ccd3c4;border-radius:14px;padding:14px 15px 11px;box-shadow:0 3px 18px #35472e06}.composer:focus-within{border-color:#8fa184;box-shadow:0 0 0 3px #405f5007}.composer textarea{resize:none;min-height:51px;max-height:180px;overflow-y:auto;border:0;background:none;padding:0 1px;color:var(--ink);font-size:13px;line-height:1.8}.composer textarea:focus-visible{outline:0}.composer-toolbar{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.analysis-toggle{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:400;color:#6b776c;margin:0;cursor:pointer;position:relative;min-height:35px;padding:6px 8px;border:1px solid transparent;border-radius:7px}.analysis-toggle input{width:12px;height:12px;margin:0;accent-color:var(--sage)}.analysis-toggle .icon{width:13px;height:13px}.analysis-toggle:has(input:checked){background:#edf1e6;border-color:#d2ddc9;color:#3d5b45}.send-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--sage);color:white}.send-button:hover{background:#2f4c3d}.send-button .icon{width:19px;height:19px;stroke-width:1.8}.composer-hint{max-width:700px;margin:10px auto 0;color:#747b70;font-size:9px;text-align:center;line-height:1.6}.inline-button{display:inline;padding:0;color:#4b6851;text-decoration:underline;text-underline-offset:2px;font-size:inherit}
/* Secondary views are lists, with forms revealed only when needed. */
.content-view{flex:1;overflow-y:auto;padding:40px clamp(25px,4vw,60px) 50px;scrollbar-width:thin}.view-intro{max-width:620px;margin:0 auto 33px}.view-intro h2{font-family:var(--serif);font-size:38px;line-height:1.18;letter-spacing:-1px;margin:13px 0 15px}.view-intro>p:not(.eyebrow){font-size:12px;line-height:1.85;max-width:425px;color:var(--muted)}.memory-add{max-width:620px;margin:0 auto 27px;border:1px solid #cbd5c4;border-radius:10px;background:#f0f3e9;overflow:hidden}.memory-add>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:48px;padding:12px 16px;font-size:12px;color:var(--sage)}.memory-add>summary::-webkit-details-marker{display:none}.memory-add>summary>span:last-child{font-size:21px;font-weight:300}.memory-add[open]>summary{border-bottom:1px solid var(--line)}.memory-add[open]>summary>span:last-child{transform:rotate(45deg)}.memory-add form{padding:18px;background:var(--white)}.memory-add label:not(:first-child){margin-top:16px}.memory-add .primary-button{margin-top:17px}.memory-list,.connection-list,.google-onboarding,.section-heading,.connection-footnote{max-width:620px;margin-left:auto;margin-right:auto}.memory-entry{padding:22px 0;border-bottom:1px solid var(--line)}.entry-heading{display:flex;align-items:start;justify-content:space-between;gap:15px}.memory-entry h3{font-family:var(--serif);font-size:21px;line-height:1.3;overflow-wrap:anywhere}.memory-entry p{font-size:12px;line-height:1.8;white-space:pre-wrap;margin-top:10px;overflow-wrap:anywhere;color:#535e54}.memory-entry .message-meta{margin-top:14px}.text-button{font-size:11px;text-decoration:underline;text-underline-offset:3px;min-height:35px;padding:4px 0;color:var(--sage)}.danger{color:var(--danger)}.entry-heading .text-button{min-height:28px;font-size:10px;flex-shrink:0}.empty-state{padding:35px 0;color:var(--muted);font-size:12px;line-height:1.8}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}.section-heading h3{font-size:12px;font-weight:600}.subtle-label{font-size:9px;color:var(--muted)}.google-account{padding:17px 0;border-bottom:1px solid var(--line)}.google-account h4{font-weight:500;font-size:12px;margin:0 0 5px;overflow-wrap:anywhere}.google-account p{font-size:11px;color:var(--muted);line-height:1.7}.google-account .secondary-button{margin-top:11px}.google-account a{display:block;font-size:11px;text-decoration:underline;text-underline-offset:3px;margin:11px 0 0;line-height:1.7}.google-account .account-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.connection-section{margin-top:35px;margin-bottom:7px}.connection-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-bottom:1px solid var(--line)}.connection-row h4{font-weight:500;font-size:12px;margin:0 0 4px}.connection-row p{color:var(--muted);font-size:10px;line-height:1.7;overflow-wrap:anywhere}.connection-state{font-size:9px;color:#697366;border:1px solid #d7dccf;border-radius:5px;padding:3px 7px;white-space:nowrap;background:#f1f3e9}.connection-state.configured{color:#49644b;background:#e7ecdf;border-color:#ced9c5}.connection-footnote{color:var(--muted);font-size:10px;line-height:1.8;margin-top:23px}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 13px;border:1px solid #cbd4c4;border-radius:7px;background:#f7f8f1;color:var(--sage);font-size:11px}.secondary-button:hover{background:#e7eddf}.secondary-button .icon{width:14px;height:14px}
/* Quiet, on-demand controls. */
.panel-dialog{width:calc(100% - 36px);max-width:430px;border:1px solid #d3d9cd;border-radius:17px;background:var(--paper);color:var(--ink);padding:22px 25px 27px;box-shadow:0 25px 90px #26302124;max-height:85dvh;overflow-y:auto}.panel-dialog::backdrop{background:#27312538;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-left:0}.dialog-heading h2{font-family:var(--serif);font-size:28px;letter-spacing:-.6px}.dialog-heading .icon-button{margin-right:-10px}.dialog-description{font-size:12px;color:var(--muted);line-height:1.8;margin-top:5px}.setting-block{border-top:1px solid var(--line);padding-top:20px;margin-top:23px}.setting-block h3{font-size:12px;font-weight:600;margin-bottom:8px}.setting-block>p:not(.field-hint){font-size:12px}.setting-block .field-hint{margin-top:8px}.setting-block>.secondary-button{margin-top:14px;margin-right:15px}.setting-block>.text-button{margin-top:9px}.panel-dialog>#last-updated{margin-top:22px}.notification-entry{padding:20px 0;border-bottom:1px solid var(--line)}.notification-entry p{font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.notification-entry .text-button{margin-top:8px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:min(470px,calc(100% - 32px));width:max-content;z-index:20;padding:12px 18px;border:1px solid #c7d2bd;border-radius:10px;background:#eef3e7;color:#35523c;font-size:12px;box-shadow:0 5px 25px #31402814}.toast.error{background:#fbf1eb;color:#894b3e;border-color:#e4c8bc}
@media(min-width:1200px){.welcome{padding-bottom:70px}.welcome h2{font-size:58px}.conversation-scroll{padding-top:45px}.composer-area{padding-bottom:23px}}
@media(max-width:900px){.app-shell{grid-template-columns:174px minmax(0,1fr)}.sidebar{padding:28px 11px 18px}.brand{padding:0 11px 34px}.brand .private-label{font-size:9px}.nav-item{gap:9px;padding:10px 10px;font-size:11px}.nav-item .icon{width:16px;height:16px}.owner{padding:18px 7px 0;gap:8px}.owner strong{font-size:10px}.owner small{font-size:9px}.owner .avatar{width:28px;height:28px;font-size:9px}.topbar{min-height:70px;height:70px;padding:0 25px}.topbar-actions{gap:9px}.conversation-scroll{padding:27px 26px 22px}.composer-area{padding:11px 24px 15px}.welcome{padding-bottom:28px}.welcome h2{font-size:43px}.welcome>p:not(.eyebrow){font-size:12px}.suggestions{gap:8px}.suggestions button{font-size:10px;gap:12px;padding:8px 11px}.privacy-caption{font-size:9px}.conversation{gap:25px}.content-view{padding:30px 26px 45px}.view-intro h2{font-size:34px}.message-owner .message-content,.assistant-message>.message-content{font-size:12px}.message-row{gap:9px}.composer-hint{font-size:9px}.connection-row{gap:9px}}
@media(max-width:600px){.app-shell{display:flex;flex-direction:column}.sidebar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0 11px;border-right:0;border-bottom:1px solid var(--line);min-height:59px;order:0}.brand{display:none}.main-nav{display:flex;flex-direction:row;gap:2px;flex:1}.nav-item{width:auto;min-height:42px;padding:9px 10px;gap:6px;font-size:10px;border-radius:7px}.nav-item .icon{width:15px;height:15px}.nav-count{font-size:9px;min-width:16px}.sidebar-bottom{margin:0 0 0 4px}.sidebar-bottom>.nav-item{margin:0;padding:10px}.sidebar-bottom>.nav-item>span{display:none}.sidebar-bottom>.nav-item .icon{width:18px;height:18px}.owner{display:none}.main-area{flex:1}.topbar{min-height:62px;height:62px;padding:0 22px}.topbar h1{font-size:11px}.mobile-brand{display:none}.topbar-actions{gap:5px}.conversation-scroll{padding:24px 22px 20px}.welcome{padding:18px 0 26px}.welcome-symbol{margin-bottom:23px}.welcome h2{font-size:43px}.welcome .eyebrow{font-size:9px}.welcome>p:not(.eyebrow){max-width:310px}.suggestions{margin-top:23px}.composer-area{padding:8px 16px max(13px,env(safe-area-inset-bottom))}.composer{padding:12px 13px 9px;border-radius:12px}.composer textarea{font-size:14px;min-height:48px}.composer-hint{font-size:9px;margin-top:8px;padding:0 5px}.content-view{padding:29px 22px 40px}.view-intro h2{font-size:35px}.message-owner{max-width:94%}.message-owner .message-content{font-size:13px;padding:11px 14px}.assistant-message>.message-content{font-size:13px}.privacy-caption{font-size:9px}.access-screen{padding:27px 25px 22px}.access-brand .wordmark{font-size:36px}.access-content{padding:57px 0 65px}.access-content h1{font-size:42px}.access-intro{font-size:13px}.access-form{margin-top:32px}.access-field{gap:7px}.access-field input{font-size:13px;padding:12px}.access-field .primary-button{padding:10px 16px;gap:15px}.access-footer{font-size:9px}.connection-state{font-size:8px}.subtle-label{font-size:9px}.toast{bottom:20px}.panel-dialog{padding:18px 21px 24px}}
@media(max-width:380px){.nav-item{font-size:9px;padding:9px 7px;gap:5px}.sidebar{padding:0 7px}.nav-count{display:none}.welcome h2{font-size:37px}.topbar{padding:0 19px}.conversation-scroll{padding-left:19px;padding-right:19px}.access-content h1{font-size:36px}.access-footer>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* Comfortable reading and touch targets, including the narrow side pane. */
.private-label,.brand .private-label,.owner small,.privacy-caption,.composer-hint,.subtle-label,.connection-state,.connection-row p,.field-hint,.message-meta,.eyebrow,.access-footer{font-size:11px}.suggestions button,.analysis-toggle,.google-account p,.connection-footnote{font-size:12px}.message-owner .message-content,.assistant-message>.message-content,.composer textarea{font-size:14px}.send-button{width:44px;height:44px}.secondary-button,.text-button,.entry-heading .text-button,.analysis-toggle{min-height:44px}.nav-item{min-height:44px}.composer-hint{font-size:10px}.brand .private-label{font-size:10px}.welcome>p:not(.eyebrow){font-size:13px}.nav-item{font-size:12px}@media(max-width:600px){.nav-item{font-size:11px}.connection-state{font-size:10px}.privacy-caption{display:none}.access-footer{font-size:10px}.access-content h1{letter-spacing:-1.5px}}
