:root{color:#19251f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--paper:#f5f5f0;--ink:#19251f;--green:#163c2f;--muted:#667079;--line:#c9ccc7;--radius:10px;--nav:78px;background:#f5f5f0;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.48}a{color:var(--green)}h1,h2{letter-spacing:-.035em;color:#141c17;font-family:Georgia,Times New Roman,serif;line-height:1.12}h1{margin:0 0 14px;font-size:clamp(31px,7.8vw,40px);font-weight:700}h2{margin:0 0 16px;font-size:27px}p{overflow-wrap:anywhere;line-height:1.55}.brand{color:var(--green);align-items:center;gap:14px;display:flex}.brand span{letter-spacing:-.04em;color:#131b16;font:700 25px Georgia,serif}.brand svg{flex:none}.lead{color:#58616c;margin:0 0 30px;font-size:17px;line-height:1.5}label{margin-bottom:24px;font-size:16px;font-weight:500;display:block}label input,label textarea,label select,label .file-button,label .password-input{margin-top:8px}input,textarea,select{border-radius:var(--radius);width:100%;min-height:49px;color:var(--ink);background:#fff;border:1px solid #bfc4c2;outline:none;padding:13px 15px;font-size:16px}input::placeholder,textarea::placeholder{color:#818893}textarea{resize:vertical;min-height:110px;line-height:1.55}select{padding-right:32px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #6c9280}.primary,.secondary,.danger{border-radius:var(--radius);justify-content:center;align-items:center;gap:12px;min-height:52px;padding:14px 18px;font-size:17px;font-weight:600;display:flex}.primary{border:1px solid var(--green);background:var(--green);color:#fff;width:100%}.primary:hover:not(:disabled){background:#214b3c}.secondary{border:1px solid var(--line);color:var(--green);background:0 0}.danger{color:#fff;background:#8b312d;border:1px solid #8b312d}.text-button{min-height:44px;color:var(--green);text-underline-offset:4px;background:0 0;border:0;padding:10px 8px;font-size:15px;font-weight:500;text-decoration:underline}.icon-button{width:46px;height:46px;color:var(--ink);background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:#e7eae4}.help{color:var(--muted);margin:-12px 0 28px;font-size:13px;line-height:1.65}.error{color:#852d28;background:#f5e9e6;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.6}.success{color:var(--green);border-left:3px solid #739381;padding:10px 12px;font-size:14px}.empty{color:var(--muted);padding-top:25px;font-size:16px}.button-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.button-row>*{flex:1}.login-page{max-width:460px;min-height:100dvh;margin:0 auto;padding:44px 24px 50px}.login-page h1{margin-top:52px;margin-bottom:38px;font-size:40px}.login-form label{margin-bottom:27px}.login-form .help{margin-top:-18px;margin-bottom:28px}.login-form .primary{min-height:57px;margin-top:26px}.password-input{position:relative}.password-input input{margin:0;padding-right:55px}.password-input .icon-button{position:absolute;top:3px;right:3px}.app-shell{max-width:1220px;min-height:100dvh;margin:0 auto}.app-header{justify-content:space-between;align-items:center;gap:12px;height:107px;padding:31px 24px;display:flex}.header-actions{align-items:center;gap:0;display:flex}.header-actions .text-button{padding:10px 7px;font-size:14px}.app-content{max-width:620px;padding:22px 24px calc(var(--nav) + env(safe-area-inset-bottom) + 42px);margin:0 auto}.main-nav{z-index:5;height:calc(var(--nav) + env(safe-area-inset-bottom));padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.main-nav button{color:#647079;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:7px;min-height:50px;font-size:13px;font-weight:500;display:flex}.main-nav .active{color:var(--green);font-weight:700}.main-nav .active svg{stroke-width:2.1px}.file-button{border-radius:var(--radius);color:#747d88;text-align:left;background:#fff;border:1px solid #bfc4c2;align-items:center;gap:14px;width:100%;min-height:51px;padding:12px 14px;font-size:16px;display:flex}.file-button span{overflow-wrap:anywhere;flex:1;min-width:0}.file-button svg{flex:none}.document-form{margin-top:31px}.document-form .primary{min-height:56px;margin-top:1px}.alternate-mode{width:100%;margin-top:12px;font-size:13px}.template-list{border-top:1px solid var(--line);margin-top:24px}.template-row{border-bottom:1px solid var(--line);align-items:center;gap:22px;min-height:100px;padding:16px 0 16px 14px;display:flex}.template-row>svg{flex:none;width:29px;height:34px}.template-row>div{flex:1;min-width:0}.template-row strong{overflow-wrap:anywhere;font-size:16px;font-weight:500;display:block}.template-row span{color:var(--muted);margin-top:5px;font-size:14px;display:block}.template-row .icon-button{margin-right:-5px}.add-template{min-height:54px;margin-top:3px}.processing{color:var(--muted);padding:18px 0;font-size:14px;line-height:1.6}.processing .text-button{display:block}.spinner{border:2px solid #cad6cd;border-top-color:var(--green);vertical-align:middle;border-radius:50%;width:16px;height:16px;margin-right:9px;animation:1s linear infinite turn;display:inline-block}@keyframes turn{to{transform:rotate(360deg)}}.document-result{border-top:1px solid var(--line);margin-top:40px;padding-top:28px}.document-result>p{color:var(--muted)}.document-preview{background:#e4e7e0;border-radius:8px;margin:25px 0;padding:10px}.document-preview img{background:#fff;max-width:100%;height:auto;display:block}.document-preview figcaption{text-align:center;color:var(--muted);padding:10px 4px 1px;font-size:13px}details{margin-top:24px;font-size:14px;line-height:1.65}summary{cursor:pointer;min-height:44px;color:var(--green);padding:8px 0}details ul{padding-left:21px}.chat-tools{gap:12px;margin:27px 0;display:flex}.chat-tools select{width:46%}.chat-tools .secondary{flex:1;padding:10px;font-size:14px}.chat-selection label{margin-bottom:8px}.chat-selection .button-row{margin:6px 0 17px}.chat-selection .button-row .text-button{font-size:13px}.messages{min-height:140px;padding:10px 0}.message{border-top:1px solid var(--line);padding:22px 0}.message>span{color:var(--green);font-size:13px;font-weight:700}.message.user>span{color:var(--muted)}.message p{white-space:pre-wrap;margin:8px 0;font-size:16px;line-height:1.65}.message small{color:var(--muted)}.chat-composer{margin-top:25px}.chat-composer label{margin-bottom:8px}.chat-composer textarea{margin-bottom:14px}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}dialog{border:1px solid var(--line);background:var(--paper);width:calc(100% - 32px);max-width:500px;max-height:calc(100dvh - 40px);color:var(--ink);border-radius:16px;padding:24px;overflow:auto}dialog::backdrop{background:#0f1e1761}.dialog-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}.dialog-header h2{margin:0;font-size:26px}.dialog-header .icon-button{margin-right:-8px}.status-sheet p{font-size:16px}.status-label{color:var(--green);padding-top:8px;font-size:20px!important}.status-sheet .primary{margin-top:25px}.status-sheet>.text-button{width:100%;margin-top:10px}@media (width>=768px){.login-page{padding-top:70px}.app-header{height:110px;padding:34px 38px}.app-content{padding-top:33px}.main-nav{border-top:0;flex-direction:column;width:180px;height:auto;padding:12px 18px;display:flex;inset:120px auto auto 0}.main-nav button{border-radius:8px;flex-direction:row;justify-content:flex-start;gap:14px;padding:16px 12px;font-size:16px}.main-nav .active{background:#e3e9e0}.app-content{width:calc(100% - 180px);max-width:760px;margin-left:180px;margin-right:auto;padding-left:36px;padding-right:36px}.app-content h1{font-size:43px}.main-nav{left:max(0px,50vw - 610px)}}@media (width>=1050px){.app-content{width:calc(100% - 260px);max-width:720px;margin-left:215px}.document-form{max-width:600px}.template-list{max-width:650px}}@media (width<=350px){.login-page,.app-content{padding-left:20px;padding-right:20px}.app-header{padding-left:20px;padding-right:14px}.brand{gap:10px}.brand span{font-size:22px}.brand svg{width:24px}.login-page h1{font-size:36px}.app-content h1{font-size:30px}.lead{font-size:15px}.header-actions .text-button{padding:8px;font-size:12px}.template-row{gap:14px;padding-left:2px}.template-row strong{font-size:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation:none!important}}.attachment-help{margin:10px 0 20px}.chat-composer>label{margin-top:18px}.profile-help{margin:22px 0 -16px}.chat-profile{color:var(--green);margin:0 0 16px;font-size:14px}.chat-active{flex-direction:column;max-width:none;height:100dvh;min-height:0;display:flex;overflow:hidden}.chat-active .app-header{border-bottom:1px solid var(--line);flex:none;height:68px;padding:12px 22px}.chat-active .brand span{font-size:23px}.chat-active .brand svg{width:23px;height:28px}.chat-active .app-content{width:100%;max-width:none;min-height:0;padding:0 0 calc(var(--nav) + env(safe-area-inset-bottom));flex:1;margin:0}.chat-panel{height:100%}.chat-panel[hidden]{display:none}.chat-section{height:100%;min-height:0;display:flex}.chat-center{background:var(--paper);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.conversation-header{border-bottom:1px solid #dce0d9;flex:none;align-items:center;gap:10px;min-height:70px;padding:12px 18px;display:flex}.chat-active .conversation-header h1{letter-spacing:0;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-family:inherit;font-size:17px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.conversation-header .chat-profile{color:var(--muted);margin:4px 0 0;font-size:12px}.chat-center .messages{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:18px max(18px,50% - 390px);overflow-y:auto}.chat-center .message{border:0;padding:16px 0 25px}.chat-center .message.user{background:#e8ece5;border-radius:12px;margin:6px 0 20px;padding:16px 18px}.chat-center .message p{margin:7px 0 0}.chat-welcome{text-align:center;color:var(--muted);padding:8vh 0}.chat-welcome>svg{width:36px;height:36px;color:var(--green);margin-bottom:16px}.chat-welcome h2{color:var(--ink);font-size:30px}.composer-area{background:var(--paper);flex:none;max-height:55%;padding:10px max(16px,50% - 400px) 8px;overflow-y:auto}.composer-area .error{max-height:80px;margin:0 0 8px;font-size:13px;overflow:auto}.chat-center .chat-composer{background:#fff;border:1px solid #b9c3ba;border-radius:16px;margin:0;padding:12px 14px;box-shadow:0 3px 16px #19382208}.chat-center .chat-composer:focus-within{border-color:#77917e}.chat-center .chat-composer textarea{resize:none;border:0;border-radius:0;outline:none;min-height:58px;max-height:140px;margin:0;padding:0}.chat-center .chat-composer textarea:focus-visible{outline:none}.composer-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.attach-button{white-space:nowrap;align-items:center;gap:8px;padding:0 4px;font-size:13px;text-decoration:none;display:flex}.chat-center .send-button{border-radius:10px;flex:none;width:44px;height:44px;min-height:44px;padding:10px}.stop-button{min-height:44px;padding:8px 12px;font-size:14px}.composer-help{text-align:center;color:var(--muted);margin:8px 0 0;font-size:11px;line-height:1.4}.chat-composer .attachment-source{color:var(--muted);margin:0 0 10px;font-size:12px}.attachment-source select{min-height:40px;margin-top:4px;padding:8px;font-size:13px}.chat-sidebar{border-right:1px solid var(--line);background:#eef0e9;flex-direction:column;flex:none;width:280px;min-height:0;padding:20px 14px 10px;display:flex}.sidebar-heading{justify-content:space-between;align-items:center;display:flex}.sidebar-heading h2{letter-spacing:0;margin:0 0 6px;font-family:inherit;font-size:19px}.sidebar-heading .icon-button{width:40px;height:44px}.new-chat-profile{color:var(--muted);margin:13px 0 12px;font-size:12px}.new-chat-profile select{background:#f9faf6;min-height:44px;padding:10px;font-size:14px}.new-chat-button{background:#f8f9f5;width:100%;min-height:46px;margin:0 0 16px;padding:10px;font-size:14px}.chat-list{flex:1;min-height:0;padding-bottom:12px;overflow:auto}.chat-folder{border-radius:9px;min-height:50px;padding:4px 0 8px}.chat-folder.drop-target{outline-offset:-2px;background:#dbe7d8;outline:2px dashed #699279}.folder-heading{color:var(--green);align-items:center;gap:8px;padding-left:8px;display:flex}.folder-heading>svg{flex:none;width:18px;height:18px}.folder-heading h3{overflow-wrap:anywhere;flex:1;min-width:0;margin:8px 0;font-size:13px;font-weight:600}.unassigned-heading{color:var(--muted);margin:0;padding:12px 8px 5px;font-size:12px;font-weight:500}.folder-empty{color:var(--muted);margin:8px 8px 14px;font-size:12px}.chat-card{border-radius:8px;align-items:center;gap:2px;min-height:46px;margin:3px 0;display:flex}.chat-card:hover,.chat-card:focus-within{background:#e1e7dc}.chat-card.selected{background:#dce5d7}.chat-card-select{min-width:0;color:var(--ink);text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:9px;min-height:46px;padding:12px 8px;font-size:13px;display:flex}.chat-card-select svg{opacity:.65;flex:none;width:17px;height:17px}.chat-card-select span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.row-actions{opacity:0;width:36px;height:44px;transition:opacity .12s}.row-actions svg{width:19px}.chat-card:hover .row-actions,.chat-card:focus-within .row-actions,.folder-heading:hover .row-actions,.folder-heading:focus-within .row-actions,.row-actions[aria-expanded=true]{opacity:1}.chat-action-menu{z-index:20;border:1px solid var(--line);background:#fff;border-radius:10px;width:216px;padding:6px;position:fixed;box-shadow:0 8px 30px #19382225}.chat-action-menu button{text-align:left;width:100%;min-height:44px;color:var(--ink);background:0 0;border:0;border-radius:6px;padding:10px 12px;font-size:13px;display:block}.chat-action-menu button:hover,.chat-action-menu button:focus-visible{background:#eef1e9}.chat-action-menu .delete-menu-item{color:#8b312d}.chat-drawer{background:#eef0e9;border-top:0;border-bottom:0;border-left:0;border-radius:0;width:min(310px,88vw);height:100dvh;max-height:100dvh;margin:0;padding:14px;display:none;position:fixed;top:0;left:0}.chat-drawer[open]{flex-direction:column;display:flex}.drawer-close{justify-content:flex-end;margin:-5px -2px -8px;display:flex}@media (hover:none){.row-actions{opacity:1}}@media (width>=768px){.chat-active .main-nav{border-right:1px solid var(--line);background:#e8ece3;width:76px;padding:14px 5px;top:68px;bottom:0;left:0}.chat-active .main-nav button{flex-direction:column;flex:none;justify-content:center;gap:6px;min-height:76px;padding:12px 2px;font-size:11px}.chat-active .app-content{width:calc(100% - 76px);margin-left:76px;padding:0}.conversation-header{min-height:74px;padding:15px 24px}.composer-area{padding-bottom:15px}.chat-center .message p{font-size:16px}}@media (width<=767px){.chat-active .main-nav{height:calc(64px + env(safe-area-inset-bottom));padding-top:4px;padding-bottom:calc(4px + env(safe-area-inset-bottom))}.chat-active .app-content{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.chat-active .app-header{height:60px;padding:10px 16px}.chat-active .header-actions .text-button{font-size:13px}.conversation-header{min-height:65px;padding:6px 12px}.chat-center .messages{padding:10px 16px}.chat-center .message p{font-size:15px}.chat-center .message.user{padding:13px}.composer-help{font-size:10px}.chat-center .chat-composer{padding:10px 12px}.row-actions{opacity:1}}.app-shell{max-width:none}.app-header,.chat-active .app-header{border-bottom:1px solid var(--line);z-index:5;background:var(--paper);height:78px;padding:14px 24px;position:relative}.app-header .brand{order:0}.app-header .header-actions{order:2}.main-nav,.chat-active .main-nav{background:0 0;border:0;flex-direction:row;order:1;justify-content:center;align-items:center;gap:8px;width:auto;height:auto;padding:0;display:flex;position:static;inset:auto}.main-nav button,.chat-active .main-nav button{white-space:nowrap;border-radius:8px;flex-direction:row;flex:0 auto;gap:8px;min-height:44px;padding:10px 16px;font-size:14px;display:flex}.main-nav .active,.chat-active .main-nav .active{background:#e3e9e0}.main-nav svg{width:20px;height:20px}.app-content{width:100%;max-width:740px;margin:0 auto;padding:38px 28px 48px}.chat-active .app-content{width:100%;max-width:none;margin:0;padding:0}@media (width<=767px){.app-header,.chat-active .app-header{grid-template-columns:1fr auto;gap:3px 8px;height:110px;padding:8px 16px;display:grid}.app-header .brand{grid-area:1/1}.app-header .header-actions{grid-area:1/2}.main-nav,.chat-active .main-nav{grid-area:2/1/auto/-1;justify-content:space-between;gap:0;display:flex}.main-nav button,.chat-active .main-nav button{gap:6px;min-height:42px;padding:8px 9px;font-size:12px}.main-nav svg{width:18px;height:18px}.app-content{padding:24px 20px 40px}.chat-active .app-content{padding:0}.composer-area{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.chat-drawer{height:100dvh}.app-header .brand span{font-size:23px}.app-header .brand{gap:10px}.header-actions .icon-button{width:40px}.chat-active.keyboard-open .app-header{height:50px;padding:4px 12px;display:block}.chat-active.keyboard-open .app-header>.brand,.chat-active.keyboard-open .header-actions{display:none}.chat-active.keyboard-open .conversation-header{min-height:52px}.chat-active.keyboard-open .composer-help{display:none}.chat-active.keyboard-open .composer-area{max-height:none}}@media (width<=767px) and (height<=600px){.chat-active .app-header{height:50px;padding:4px 12px;display:block}.chat-active .app-header>.brand,.chat-active .header-actions{display:none}.chat-active .conversation-header{min-height:52px}.chat-active .composer-help{display:none}.chat-active .composer-area{max-height:none}}.thinking-toggle{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.thinking-toggle input{width:18px;height:18px;min-height:0;accent-color:var(--green);margin:0;padding:0}.conversation-header .thinking-toggle{flex-shrink:0;margin-left:auto}
