:root{--palette-0:#e8e9e5;--palette-1:#141715;--palette-2:#101310;--palette-3:#2a3029;--palette-4:#d4edb0;--palette-5:#eee;--palette-6:#414b3b;--palette-7:#adc297;--palette-8:#222a20;--palette-9:#ddebcd;--palette-10:#3b4933;--palette-11:#7c8977;--palette-12:#a7afa2;--palette-13:#252c22;--palette-14:#e2edda;--palette-15:#b5c2ac;--palette-16:#293026;--palette-17:#72806b;--palette-18:#bfdd9a;--palette-19:#282e25;--palette-20:#85907e;--palette-21:#d3dacd;--palette-22:#46513f;--palette-23:#939f8b;--palette-24:#c9e6aa;--palette-25:#9aa98e;--palette-26:#98a18f;--palette-27:#374031;--palette-28:#1a2018;--palette-29:#bdc9b3;--palette-30:#9eaf90;--palette-31:#414e37;--palette-32:#1d241a;--palette-34:#f0f2eb;--palette-35:#87937c;--palette-36:#24331a;--palette-37:#606b57;--palette-38:#dbe6d1;--palette-39:#64715c;--palette-40:#bddc9d;--palette-41:#222a1e;--palette-42:#323d2a;--palette-43:#8e9e80;--palette-44:#435039;--palette-45:#192016;--palette-46:#e1ebd8;--palette-48:#99a98c;--palette-49:#47573b;--palette-50:#11170f;--palette-51:#d2edb5;--palette-53:#c9dfb7;}

:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:var(--palette-0);background:var(--palette-1);color-scheme:dark;font-synthesis:none}*{box-sizing:border-box}body{margin:0;display:flex;height:100dvh}button,input,textarea{font:inherit}button{cursor:pointer}aside{width:260px;flex-shrink:0;background:var(--palette-2);border-right:1px solid var(--palette-3);padding:30px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;color:var(--palette-4);font-size:35px;text-decoration:none}.brand>span{font-size:25px;font-weight:600;color:var(--palette-5);letter-spacing:-1px}.tag{font-size:9px;letter-spacing:1px;border:1px solid var(--palette-6);border-radius:4px;padding:3px 5px;margin-left:10px;color:var(--palette-7);vertical-align:middle}.new{background:var(--palette-8);color:var(--palette-9);border:1px solid var(--palette-10);border-radius:8px;padding:12px;margin:35px 0}.label{font-size:10px;letter-spacing:1.4px;color:var(--palette-11);margin-bottom:18px}nav{overflow:auto;flex:1}nav button{display:block;text-align:left;border:0;background:transparent;color:var(--palette-12);width:100%;padding:12px 9px;border-radius:6px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:13px}nav button.selected,nav button:hover{background:var(--palette-13);color:var(--palette-14)}.workspace{font-size:12px;color:var(--palette-15);border-top:1px solid var(--palette-16);padding-top:20px}.workspace small{display:block;color:var(--palette-17);margin:8px 0 0 13px;font-size:10px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--palette-18);margin-right:7px}main{min-width:0;flex:1;display:flex;flex-direction:column}header{height:78px;flex-shrink:0;border-bottom:1px solid var(--palette-19);padding:0 38px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--palette-20)}header strong{color:var(--palette-21);font-weight:400}.slash{margin:0 14px;color:var(--palette-22)}header button{border:0;background:none;color:var(--palette-23);font-size:12px}#messages{overflow:auto;flex:1;padding:32px max(30px,calc((100% - 780px)/2));scroll-behavior:smooth}.welcome{padding-top:clamp(10px,6vh,65px)}.mark{color:var(--palette-24);font-size:55px;line-height:1.2}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--palette-25);margin-top:26px}h1{font-size:clamp(38px,5vw,60px);line-height:1.08;font-weight:450;letter-spacing:-2.5px;margin:18px 0 23px}.welcome>p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--palette-26)}.suggestions{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.suggestions button{border:1px solid var(--palette-27);background:var(--palette-28);border-radius:8px;color:var(--palette-29);padding:12px;font-size:11px}.bottom{width:min(840px,100%);margin:auto;padding:16px 30px 20px}#status{font-size:11px;color:var(--palette-30);min-height:24px;white-space:pre-wrap}#composer{border:1px solid var(--palette-31);background:var(--palette-32);border-radius:14px;padding:16px;box-shadow:0 8px 28px #0002}textarea{resize:none;width:100%;max-height:180px;border:0;background:none;outline:0;color:var(--palette-34);font-size:14px;line-height:1.6}textarea::placeholder{color:var(--palette-35)}.toolbar{display:flex;align-items:center;gap:12px;margin-top:12px}.toolbar span{font-size:10px;color:var(--palette-25);flex:1}#send{background:var(--palette-24);border:0;border-radius:8px;color:var(--palette-36);font-size:24px;width:35px;height:35px}#send:disabled{opacity:.4}#stop{border:1px solid var(--palette-37);background:none;color:var(--palette-38);border-radius:6px;padding:7px}.hint{text-align:center;color:var(--palette-39);font-size:10px;margin:12px 0 0}.message{margin-bottom:30px;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.message .role{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--palette-40);display:block;margin-bottom:9px}.message.user{background:var(--palette-41);border:1px solid var(--palette-42);border-radius:12px;padding:17px 20px}.message.user .role{color:var(--palette-43)}dialog{border:1px solid var(--palette-44);border-radius:18px;background:var(--palette-45);color:var(--palette-46);padding:35px;max-width:calc(100% - 30px)}dialog::backdrop{background:#070b08eF}dialog p{color:var(--palette-48);font-size:13px;line-height:1.8}dialog input{width:100%;padding:12px;border:1px solid var(--palette-49);border-radius:7px;background:var(--palette-50);margin:10px 0}dialog button{width:100%;background:var(--palette-24);color:var(--palette-36);padding:12px;border:0;border-radius:7px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--palette-51);outline-offset:4px}[hidden]{display:none!important}@media(max-width:700px){aside{width:165px;padding:22px 12px}.brand>span{font-size:21px}.tag{display:none}header{padding:0 18px}header>span{max-width:75%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#messages{padding:25px 20px}.bottom{padding:10px 15px 16px}.suggestions{flex-direction:column}.workspace small{font-size:8px}}@media(max-width:450px){aside{width:65px;padding:20px 7px}.brand{justify-content:center}.brand>span,.label,nav,.workspace{display:none}.new{font-size:0;padding:12px 0}.new:before{content:'＋';font-size:22px}header{font-size:10px}.welcome{padding-top:10px}}
.google-login{display:block;width:100%;background:var(--palette-24);color:var(--palette-36);padding:12px;border-radius:7px;text-align:center;text-decoration:none;font-size:14px}.google-login[aria-disabled=true]{opacity:.5;cursor:default}

#historyToggle{display:none}
@media(max-width:450px){
  #historyToggle{display:block;flex-shrink:0;padding:10px 0;color:var(--palette-4)}
  header{gap:12px;padding:0 12px}
  header>span{min-width:0;flex:1}
  body.history-open aside{width:min(260px,70vw);position:fixed;inset:78px 0 0;z-index:2;box-shadow:12px 0 30px #0008}
  body.history-open aside .brand>span,body.history-open aside .label,body.history-open aside nav,body.history-open aside .workspace{display:block}
  body.history-open aside .brand{justify-content:flex-start}
  body.history-open aside .new{font-size:13px;padding:12px}
  body.history-open aside .new:before{content:none}
  body.history-open aside .workspace small{font-size:10px}
}

#upload{border:1px solid var(--palette-49);border-radius:7px;background:transparent;color:var(--palette-53);padding:8px;white-space:nowrap;font-size:12px}#upload:disabled{opacity:.4}#attachments{display:flex;gap:10px;flex-wrap:wrap}#attachments:not(:empty){margin:0 0 12px}.attachment{position:relative}.attachment img{display:block;width:72px;height:72px;object-fit:cover;border-radius:8px}.attachment button{position:absolute;top:-6px;right:-6px;border:1px solid var(--palette-39);background:var(--palette-41);color:white;border-radius:50%;width:24px;height:24px}.chat-image{display:block;max-width:100%;max-height:360px;border-radius:10px;margin-top:12px}

:root[data-theme="light"]{color-scheme:light;--palette-0:#263d1d;--palette-1:#f7f8f5;--palette-2:#f7f8f5;--palette-3:#edf0e9;--palette-4:#263d1d;--palette-5:#263d1d;--palette-6:#d2d9cc;--palette-7:#52634a;--palette-8:#edf0e9;--palette-9:#263d1d;--palette-10:#d2d9cc;--palette-11:#52634a;--palette-12:#52634a;--palette-13:#edf0e9;--palette-14:#263d1d;--palette-15:#263d1d;--palette-16:#edf0e9;--palette-17:#52634a;--palette-18:#263d1d;--palette-19:#edf0e9;--palette-20:#52634a;--palette-21:#263d1d;--palette-22:#d2d9cc;--palette-23:#52634a;--palette-24:#263d1d;--palette-25:#52634a;--palette-26:#52634a;--palette-27:#d2d9cc;--palette-28:#f7f8f5;--palette-29:#263d1d;--palette-30:#52634a;--palette-31:#d2d9cc;--palette-32:#edf0e9;--palette-34:#263d1d;--palette-35:#52634a;--palette-36:#edf0e9;--palette-37:#52634a;--palette-38:#263d1d;--palette-39:#52634a;--palette-40:#263d1d;--palette-41:#edf0e9;--palette-42:#d2d9cc;--palette-43:#52634a;--palette-44:#d2d9cc;--palette-45:#f7f8f5;--palette-46:#263d1d;--palette-48:#52634a;--palette-49:#d2d9cc;--palette-50:#f7f8f5;--palette-51:#263d1d;--palette-53:#263d1d;}
:root[data-theme="dark"]{color-scheme:dark;--palette-0:#e1e7f2;--palette-1:#111318;--palette-2:#111318;--palette-3:#1d2028;--palette-4:#e1e7f2;--palette-5:#e1e7f2;--palette-6:#3b414e;--palette-7:#a4adbd;--palette-8:#1d2028;--palette-9:#e1e7f2;--palette-10:#3b414e;--palette-11:#a4adbd;--palette-12:#a4adbd;--palette-13:#1d2028;--palette-14:#e1e7f2;--palette-15:#e1e7f2;--palette-16:#1d2028;--palette-17:#a4adbd;--palette-18:#e1e7f2;--palette-19:#1d2028;--palette-20:#a4adbd;--palette-21:#e1e7f2;--palette-22:#3b414e;--palette-23:#a4adbd;--palette-24:#e1e7f2;--palette-25:#a4adbd;--palette-26:#a4adbd;--palette-27:#3b414e;--palette-28:#111318;--palette-29:#e1e7f2;--palette-30:#a4adbd;--palette-31:#3b414e;--palette-32:#1d2028;--palette-34:#e1e7f2;--palette-35:#a4adbd;--palette-36:#1d2028;--palette-37:#a4adbd;--palette-38:#e1e7f2;--palette-39:#a4adbd;--palette-40:#e1e7f2;--palette-41:#1d2028;--palette-42:#3b414e;--palette-43:#a4adbd;--palette-44:#3b414e;--palette-45:#111318;--palette-46:#e1e7f2;--palette-48:#a4adbd;--palette-49:#3b414e;--palette-50:#111318;--palette-51:#e1e7f2;--palette-53:#e1e7f2;}

:root[data-theme="light"] #send,:root[data-theme="light"] .google-login,:root[data-theme="light"] dialog button{background:#365b29;color:#fff}
:root[data-theme="dark"] #send,:root[data-theme="dark"] .google-login,:root[data-theme="dark"] dialog button{background:#c5d7fa;color:#172238}
.theme-control{display:flex;flex-direction:column;gap:7px;color:var(--palette-20,#9aa98e);font-size:11px;margin:16px 0}
.theme-control select{font:inherit;width:100%;padding:8px 4px;border:1px solid var(--palette-3);border-radius:7px;background:var(--palette-2);color:inherit}
.history-empty{font-size:11px;opacity:.65;padding:8px}.theme-control select:focus-visible{outline:2px solid currentColor;outline-offset:2px}
aside{min-height:0}#history{min-height:0}
@media(max-width:450px){
 aside{width:104px;padding:18px 8px}
 #history{display:block}
 #history button{font-size:11px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:10px 5px;line-height:1.4;max-height:51px;margin-bottom:6px}
 #history button.selected{border-left:2px solid currentColor}
 .new{margin:24px 0 18px}
 .theme-control{font-size:10px;margin:12px 0 0}
 .theme-control select{font-size:11px}
 body.history-open aside #history button{display:block;max-height:none}
 header>span{display:none}
 #messages{padding:20px 14px}
 .bottom{padding:10px 10px 14px}
 #composer{padding:12px}
 .toolbar{gap:8px;flex-wrap:wrap}
 .toolbar>span{min-width:60px}
 #send{flex-shrink:0;margin-left:auto}
}

#workStatus{font-size:11px;color:var(--palette-20);margin:0 0 12px;line-height:1.5}#workStatus.is-working{color:var(--palette-4)}.working-badge{display:block;color:var(--palette-4);font-size:10px;line-height:1.5;margin-top:4px}#history button:has(.working-badge){max-height:none;-webkit-line-clamp:unset}@media(max-width:450px){#workStatus{font-size:10px}.working-badge{font-size:9px}}

.chat-row{display:flex;align-items:center;gap:2px}.chat-row>button:first-child{flex:1;min-width:0}#history .delete-chat{flex:0 0 28px;width:28px;height:36px;display:block;padding:0;text-align:center;font-size:20px;line-height:36px;margin:0;color:var(--palette-20)}#history .delete-chat:hover{color:var(--palette-0);background:var(--palette-8)}#history .delete-chat:disabled{opacity:.3;cursor:default}@media(max-width:450px){.chat-row{gap:0}#history .delete-chat{flex-basis:22px;width:22px}}
