@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700;900&display=swap");
:root{--bg:#fff;--panel:#f7f7f5;--text:#242724;--muted:#747871;--border:#e5e7e2;--accent:#bd5826;--accent-soft:#fcf1e9;--danger:#b53c32;--shadow:0 12px 40px #1e281b12;--radius:14px;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color-scheme:light}
:root[data-theme=dark]{--bg:#191c19;--panel:#232723;--text:#e8ece5;--muted:#a0aa9d;--border:#363e35;--accent:#e89a6c;--accent-soft:#38291e;--danger:#f1958b;--shadow:0 12px 40px #0003;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:18px;line-height:1.75}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button,a,input,textarea,select{touch-action:manipulation}button{background:none;border:none}a{color:var(--accent)}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:16px;padding:8px;background:var(--bg);z-index:20}.skip-link:focus{top:10px}
.header{position:sticky;top:0;z-index:10;background:var(--bg);height:88px;border-bottom:1px solid var(--border);padding:0 max(28px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:10px;text-align:left;padding:0;font-size:23px;letter-spacing:-.6px;line-height:1.3}.brand strong{color:var(--accent);font-weight:500}.brand small{display:block;font-size:12px;letter-spacing:.12em;color:var(--muted);margin-top:3px}.header nav{display:flex;gap:24px;margin-left:auto;height:100%;align-items:center}.nav-button{height:100%;position:relative;font-size:16px;color:var(--muted);padding:0 2px}.nav-button.active{color:var(--text);font-weight:600}.nav-button.active:after{position:absolute;content:"";bottom:0;left:0;right:0;height:2px;background:var(--accent)}.header-actions{display:flex;gap:10px;align-items:center}.quiet-button{font-size:15px;padding:6px 9px;border-radius:7px;color:var(--muted)}.quiet-button:hover{background:var(--panel);color:var(--text)}#themeButton{font-size:22px;padding:3px 8px}main{max-width:920px;min-height:calc(100dvh - 154px);margin:0 auto;padding:26px 30px 24px}.chat-topline{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--muted)}.model-label{letter-spacing:.03em}.welcome{text-align:center;padding:70px 0 34px}.welcome-icon{font-size:42px;color:var(--accent);display:block;line-height:1;margin-bottom:24px}.eyebrow{font-size:14px;letter-spacing:.14em;color:var(--muted);margin:0 0 12px}.welcome h1{font-size:clamp(25px,3vw,35px);font-weight:500;letter-spacing:.01em;margin:0 0 18px;line-height:1.65}.welcome>p:last-child{font-size:16px;color:var(--muted);line-height:2}.notice{margin:20px 0 0;border:1px solid var(--border);padding:11px 16px;border-radius:10px;font-size:15px;color:var(--muted);display:flex;justify-content:space-between;gap:16px;align-items:center}.notice.error{color:var(--danger);border-color:var(--danger)}.notice button{color:var(--accent);font-size:15px;white-space:nowrap}.composer-wrap{padding:10px 0 0}.composer{border:1px solid var(--border);border-radius:var(--radius);padding:16px 16px 10px;box-shadow:0 3px 12px #00000003;background:var(--bg)}.composer:focus-within{border-color:var(--muted)}textarea{display:block;width:100%;background:transparent;border:none;resize:none;outline:none;line-height:1.9;min-height:62px;max-height:220px;font-size:17px}textarea::placeholder{color:var(--muted)}.composer-bottom{display:flex;gap:10px;justify-content:space-between;align-items:center}#filterButton{padding-left:0;text-align:left;max-width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.send-button{display:grid;place-items:center;border-radius:50%;width:33px;height:33px;background:var(--accent);color:var(--bg);font-size:24px;line-height:1;margin-left:auto}.stop-button{background:var(--text);color:var(--bg);border-radius:18px;font-size:15px;padding:6px 12px;white-space:nowrap}.input-meta{display:flex;justify-content:space-between;gap:10px;margin:9px 2px;font-size:12px;color:var(--muted)}.suggestions{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:18px}.suggestions button{border:1px solid var(--border);border-radius:10px;padding:12px;text-align:left;font-size:14px;display:flex;justify-content:space-between;gap:10px}.suggestions button:hover{background:var(--panel)}.suggestions span{color:var(--accent)}footer{max-width:1240px;padding:20px 28px;margin:auto;display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}
.messages{padding:20px 0 5px}.messages:empty{display:none}.message{margin:20px 0 30px}.message-header{font-size:14px;font-weight:600;display:flex;align-items:center;gap:9px;margin-bottom:10px;color:var(--muted)}.avatar{width:23px;height:23px;border-radius:8px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:17px}.message.user{margin-left:auto;max-width:90%;background:var(--panel);border-radius:12px;padding:14px 18px}.message.user .message-header{margin-bottom:5px}.message.user .message-text{white-space:pre-wrap;font-size:17px}.message.assistant .message-text{font-size:17px;line-height:1.95;overflow-wrap:anywhere}.message-text p{margin:0 0 15px}.message-text h1,.message-text h2,.message-text h3{font-size:20px;line-height:1.6;margin:24px 0 12px}.message-text h3{font-size:18px}.message-text li{margin:5px 0}.message-text ul,.message-text ol{padding-left:1.7em}.message-text pre{overflow-x:auto;background:var(--panel);border:1px solid var(--border);border-radius:9px;padding:16px;font-size:15px;line-height:1.8}.message-text :not(pre)>code{background:var(--panel);padding:2px 5px;border-radius:4px;font-size:15px}.message-text blockquote{border-left:3px solid var(--border);color:var(--muted);margin-left:0;padding-left:16px}.table-wrap{overflow:auto}.message-text table{border-collapse:collapse;min-width:300px;width:100%;font-size:15px}.message-text th,.message-text td{border:1px solid var(--border);padding:8px 12px;text-align:left}.message-text th{background:var(--panel)}.message-text hr{border:0;border-top:1px solid var(--border);margin:24px 0}.message-actions{display:flex;gap:3px;align-items:center;margin-top:10px;flex-wrap:wrap}.message-status{font-size:12px;color:var(--muted);margin-left:6px}.message-status.error{color:var(--danger)}.citation{color:var(--accent);font-size:14px;vertical-align:super;background:var(--accent-soft);padding:1px 5px;border-radius:4px;margin:0 2px}.source-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.source-chip{border:1px solid var(--border);font-size:12px;padding:5px 9px;border-radius:7px;color:var(--muted);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.source-chip:hover{color:var(--accent);border-color:var(--accent)}.conversation-mode .composer-wrap{position:sticky;bottom:0;background:var(--bg);padding-top:15px;padding-bottom:4px}.conversation-mode .welcome,.conversation-mode .suggestions{display:none}.generating .message.assistant:last-child .avatar{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{50%{opacity:.4}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
.history-view{padding-top:45px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.section-heading h1{font-size:30px;font-weight:500;margin:0}.section-heading .eyebrow{margin-bottom:7px}.search-input{width:100%;border:1px solid var(--border);background:var(--bg);padding:12px 14px;border-radius:9px;font-size:16px;margin-bottom:20px}.history-item{display:flex;gap:12px;padding:18px 0;border-bottom:1px solid var(--border);align-items:center}.history-open{flex:1;min-width:0;text-align:left;display:flex;flex-direction:column;gap:4px}.history-open strong{font-size:17px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.history-open span{font-size:14px;color:var(--muted)}.empty-state{text-align:center;color:var(--muted);font-size:16px;padding:65px 0}.primary-button,.secondary-button,.danger-button{padding:9px 14px;border-radius:8px;font-size:15px;border:1px solid var(--border);white-space:nowrap}.primary-button{background:var(--accent);color:var(--bg);border-color:var(--accent)}.secondary-button{background:var(--bg)}.danger-button{background:var(--danger);color:var(--bg);border-color:var(--danger)}
dialog{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:16px;padding:25px;box-shadow:var(--shadow);max-height:85dvh;overflow-y:auto}dialog::backdrop{background:#1116}.settings-dialog{width:min(540px,calc(100% - 30px))}.source-dialog{width:min(760px,calc(100% - 30px))}.edit-dialog{width:min(580px,calc(100% - 30px))}.confirm-dialog{width:min(400px,calc(100% - 30px))}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}dialog h2{font-size:20px;font-weight:500;margin:0}.connection-status{font-size:16px;border-radius:9px;padding:12px;background:var(--panel);margin-bottom:12px;white-space:pre-line}.setting-actions{display:flex;gap:10px;flex-wrap:wrap}.muted{color:var(--muted)}.small{font-size:14px;line-height:1.9}.settings-info{font-size:15px;display:grid;grid-template-columns:95px 1fr;gap:10px;padding:15px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:20px 0}.settings-info dt{color:var(--muted)}.settings-info dd{margin:0;overflow-wrap:anywhere}.shard-list{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.shard{font-size:12px;background:var(--panel);border-radius:6px;padding:6px 9px}.setting-field{display:flex;flex-direction:column;gap:6px;margin:14px 0;font-size:15px}.setting-field select,.setting-field input{border:1px solid var(--border);border-radius:7px;background:var(--bg);padding:8px;min-width:0;width:100%}.setting-field.inline{flex-direction:row;justify-content:space-between;align-items:center}.setting-field.inline input{width:85px}#sourceContent h3{font-size:16.0px;font-weight:600;overflow-wrap:anywhere}#sourceContent pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:16px;line-height:1.9;padding:18px;background:var(--panel);border-radius:9px}#sourceContent .source-match{font-size:15px;border-left:2px solid var(--accent);padding-left:15px;white-space:pre-wrap;margin-bottom:20px}#sourceContent dl{font-size:14px;display:grid;grid-template-columns:100px 1fr;gap:10px}#sourceContent dd{margin:0;overflow-wrap:anywhere}#editInput{border:1px solid var(--border);border-radius:9px;padding:12px;min-height:150px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:11px 18px;background:var(--text);color:var(--bg);font-size:15px;border-radius:10px;z-index:30;box-shadow:var(--shadow);max-width:90%;width:max-content}
@media(min-width:1400px){.welcome{padding-top:100px}}@media(max-width:640px){.header{height:73px;padding:0 18px;gap:16px;flex-wrap:wrap}.brand{font-size:19px;gap:8px}.brand small{font-size:10px}.header nav{gap:12px}.nav-button{font-size:14px}.header-actions{gap:0}.header-actions .quiet-button{padding:4px;font-size:14px}#themeButton{font-size:19px}main{padding:17px 18px;min-height:calc(100dvh - 140px)}.welcome{padding:55px 0 28px}.welcome h1{font-size:30px}.welcome>p:last-child{font-size:15px}.suggestions{grid-template-columns:repeat(2,1fr);margin-top:14px}.suggestions button{padding:11px}.notice{align-items:flex-start;font-size:14px;padding:10px 12px;gap:10px}.notice button{font-size:12px}.message.user{max-width:95%;padding:12px 14px}.message.assistant .message-text{font-size:16px}.source-chip{max-width:190px}.section-heading{gap:8px}.section-heading h1{font-size:26px}.section-heading .primary-button{font-size:12px;padding:8px}.history-view{padding-top:30px}footer{padding:16px 18px;font-size:11px;flex-direction:column;gap:3px}dialog{padding:20px}.input-meta{font-size:11px}.composer{padding:13px 13px 9px}.chat-topline{font-size:12px}.quiet-button{font-size:14px}.history-item{gap:5px}.history-item>.quiet-button{font-size:12px;padding:5px}.settings-info{grid-template-columns:75px 1fr}}@media(max-width:375px){.header{padding:0 12px;gap:9px}.header nav{gap:8px}.brand small{display:none}}
.brand{white-space:nowrap}.chat-topline{justify-content:flex-end}.welcome{padding:95px 0 35px}.welcome h1{margin:0;font-size:clamp(23px,3vw,33px)}footer{justify-content:center}footer a{color:var(--muted);text-decoration:none;font-size:14px}footer a:hover{color:var(--accent)}.account-name{font-size:14px;color:var(--muted);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-dialog{width:min(430px,calc(100% - 30px))}.auth-dialog input{font-size:16.0px}.auth-dialog .primary-button{width:100%;margin-top:10px}.auth-error{font-size:15px;color:var(--danger)}.auth-switch{display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--muted);gap:8px;margin:22px 0 0}.auth-switch button{color:var(--accent)}.product-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.product-card{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:12px;padding:14px;text-decoration:none;color:var(--text);min-width:0;background:var(--bg)}.product-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}.product-card img{width:100px;height:100px;object-fit:contain;flex-shrink:0;background:#fff;border-radius:8px}.product-card-body{display:flex;flex-direction:column;min-width:0;gap:6px}.product-card strong{font-size:16px}.product-link{font-size:14px;color:var(--accent)}.product-url{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:640px){.header{height:auto;min-height:84px;padding:12px 16px;gap:8px;display:grid;grid-template-columns:1fr auto}.header nav{grid-row:2;grid-column:1 / -1;margin:0;justify-content:center;height:31px;gap:28px}.header-actions{justify-content:flex-end}.brand{font-size:21px}.account-name{max-width:65px}.welcome{padding:65px 0 35px}.welcome h1{font-size:28px}.product-cards{grid-template-columns:1fr}.product-card img{width:88px;height:88px}main{min-height:calc(100dvh - 145px)}footer{align-items:center}.auth-switch{gap:3px}}
.welcome h1 span{display:inline-block}

.guest-notice{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px;font-size:14px;color:var(--muted);margin:12px 0 0}.guest-notice .quiet-button{color:var(--accent)}.auth-dialog select{width:100%;font:inherit;font-size:16.0px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);padding:10px}

.answer-notice{margin:9px 2px 0;text-align:center;font-size:12px;color:var(--muted);line-height:1.7}.forgot-link{text-align:center;margin:16px 0 0}.forgot-link button{color:var(--accent)}.standalone-main{max-width:720px;padding-top:60px}.standalone-brand{justify-content:center}.reset-card{max-width:430px;margin:35px auto;padding:26px;border:1px solid var(--border);border-radius:16px}.reset-card h1{font-size:24px;font-weight:500;line-height:1.5;margin:0 0 20px}.reset-card .primary-button{width:100%;margin-top:10px}.reset-card input{font-size:16.0px}.reset-card>a{display:block;text-align:center;font-size:16px;margin-top:24px}.disclaimer-content{margin-top:32px;font-size:17px}.disclaimer-content h1{font-size:29px;font-weight:500}.disclaimer-content h2{font-size:19px;margin-top:26px}.standalone-header{padding-top:25px}@media(max-width:640px){.standalone-main{padding-top:25px}.reset-card{margin-top:25px;padding:22px}.answer-notice{font-size:11px}}

.standalone-brand{text-decoration:none}
.generation-status{font-size:15px;color:var(--muted);margin:0 0 15px}
.clarification-card{margin:14px 0;border:1px solid var(--border);border-radius:var(--radius);padding:18px;background:var(--panel)}.clarification-help{color:var(--muted);font-size:15px;margin:0 0 16px}.clarification-question{border:0;padding:0;margin:0 0 20px;min-width:0}.clarification-question legend{font-size:17px;font-weight:600;padding:0;margin-bottom:10px}.clarification-options{display:flex;flex-wrap:wrap;gap:8px}.clarification-option{border:1px solid var(--border);border-radius:18px;padding:7px 13px;background:var(--bg);font-size:16px;text-align:left;overflow-wrap:anywhere;max-width:100%}.clarification-option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.clarification-free-label{display:flex;flex-direction:column;gap:5px;margin-top:10px;font-size:14px;color:var(--muted)}.clarification-free{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);padding:9px 11px;font-size:16.0px}.clarification-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.clarification-question:disabled{opacity:.7}@media(max-width:600px){.clarification-card{padding:14px}.clarification-option{padding:9px 12px}}
/* Let the whole confirmation card remain reachable above the normal composer. */
.clarification-mode .composer-wrap{position:static}

.feedback-form { margin-top: 16px; padding-top: 12px; border-top: 1px solid #ddd; }
.feedback-choices { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.feedback-choices [aria-pressed="true"] { background: #e8f3e5; border-color: #477340; color: #23471e; }
.feedback-comment { display: block; width: 100%; box-sizing: border-box; margin: 8px 0; padding: 10px; font: inherit; border: 1px solid #bbb; border-radius: 8px; resize: vertical; }
.feedback-status { display: block; margin-top: 6px; font-size: 1rem; }

.consultation-policy{margin:0 0 12px;font-size:15px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.consultation-policy a{color:inherit;text-underline-offset:3px}.consultation-policy a:hover{color:var(--accent)}.consultation-policy strong{font-weight:500;color:var(--text)}
.marketing-consent{margin-top:18px}#marketingDialog .terms-consent input{width:18px;height:18px}#marketingButton{font-size:14px}

.disclaimer-link{margin:3px 2px 0;text-align:center;font-size:14px}.disclaimer-link a{color:var(--muted);text-underline-offset:3px}.terms-field{margin:18px 0}.terms-consent{display:flex;align-items:flex-start;gap:10px;font-size:16px;cursor:pointer}.terms-consent input{width:18px;height:18px;margin:3px 0 0;flex-shrink:0;accent-color:var(--accent)}.terms-field p{margin:8px 0 0}.disclaimer-content li{margin:8px 0}.disclaimer-content ul{padding-left:1.5em}footer{flex-wrap:wrap}
.pesticide-card{margin:14px 0 4px;padding:14px 16px;border:1px solid var(--accent);border-left-width:4px;border-radius:10px;background:var(--accent-soft);font-size:16px;line-height:1.7}.pesticide-card strong{display:block;font-size:17px;margin-bottom:4px}.pesticide-card p{margin:0 0 6px}.pesticide-card a{font-weight:600}.handoff-button{color:var(--accent)}#handoffDialog textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--bg)}

/* pesticide notice: calm panel, icon badge, link as button */
.pesticide-card{position:relative;margin:18px 0 6px;padding:18px 20px 18px 64px;border:1px solid var(--border);border-left-width:1px;border-radius:14px;background:var(--panel);box-shadow:0 1px 2px #0000000a}
.pesticide-card:before{content:"!";position:absolute;left:18px;top:18px;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);border:1.5px solid var(--accent);display:grid;place-items:center;font-weight:700;font-size:18px;line-height:1}
.pesticide-card strong{font-size:17px;font-weight:600;margin-bottom:6px;color:var(--text)}
.pesticide-card p{margin:0 0 14px;color:var(--muted);line-height:1.85}
.pesticide-card a{display:inline-flex;align-items:center;gap:4px;padding:8px 16px;border-radius:999px;background:var(--accent);color:var(--bg);font-weight:600;font-size:15px;text-decoration:none}
.pesticide-card a:hover{opacity:.88}
@media(max-width:640px){.pesticide-card{padding:16px 16px 16px 16px}.pesticide-card:before{position:static;margin-bottom:10px}}
@media(max-width:640px){.conversation-mode .composer-wrap{display:contents}.conversation-mode .consultation-policy{margin:8px 0 12px;padding-top:14px;border-top:1px solid var(--border);font-size:13px;line-height:1.7}.conversation-mode .composer{position:sticky;bottom:10px;z-index:5;box-shadow:0 0 0 10px var(--bg),0 4px 16px #00000014}.conversation-mode textarea{min-height:44px;max-height:30dvh}.clarification-mode .composer{position:static}.conversation-mode .messages{padding-bottom:10px}}
@media(hover:none){.input-meta{display:none}}
.message-header img.avatar{background:none;border-radius:0;object-fit:contain}
.brand-logo{width:34px;height:34px;flex:none;padding:3px;background:#fff;border-radius:9px;box-sizing:border-box;object-fit:contain}@media(max-width:640px){.brand-logo{width:30px;height:30px;border-radius:8px}}

/* Home redesign: warm cream, rounded type */
:root{--bg:#fffcf7;--panel:#f8f3ec;--text:#2b2420;--muted:#7a6f66;--border:#efe4d8;--accent:#c85a12;--accent-soft:#fdeee2;--card:#fff;--ink:#2b2420;font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif}
:root[data-theme=dark]{--bg:#1d1916;--panel:#28221e;--text:#f1e9e1;--muted:#b3a69a;--border:#3b332c;--accent:#ef8a45;--accent-soft:#3a2a1e;--card:#241f1b;--ink:#f1e9e1}
body{font-weight:500}
.header{border-bottom:0;height:88px;padding:0 max(40px,calc((100vw - 1360px)/2));background:var(--bg)}
.brand{font-size:24px;font-weight:600;letter-spacing:0;gap:8px}.brand strong{font-weight:600}
.brand-logo{background:none;padding:0;width:32px;height:32px}
.header nav{gap:14px;height:auto}
.nav-button{display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 14px;border-radius:999px;font-size:15px;font-weight:700;color:var(--text)}
.nav-button:hover{background:var(--panel)}.nav-button.active{font-weight:700}.nav-button.active:after{display:none}
.nav-button svg,.new-chat-button svg,.season-badge svg,.send-button svg,.suggestions i svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.new-chat-button{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 22px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:15px;font-weight:700}
.new-chat-button:hover{opacity:.88}
.header-actions{gap:8px}
.account-pill{display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 16px 0 6px;border:1px solid var(--border);border-radius:999px;background:var(--card);font-size:14px;font-weight:700;color:var(--text);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-pill:before{content:attr(data-initial);flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#2f7a4e;color:#fff;font-size:14px}
.login-pill{padding:0 18px}.login-pill:before{display:none}.login-pill:hover{border-color:var(--accent);color:var(--accent)}
.theme-button{font-size:18px}
main{max-width:900px;padding:22px 30px 24px}
.welcome{padding:34px 0 30px}
.season-badge{display:inline-flex;align-items:center;gap:8px;margin:0 0 30px;padding:7px 18px;border:1px solid var(--border);border-radius:999px;background:var(--card);font-size:13px;color:var(--text)}
.season-badge svg{color:var(--accent);width:16px;height:16px}
.welcome h1{font-size:clamp(30px,4.2vw,46px);font-weight:700;line-height:1.45;letter-spacing:.06em;margin:0 0 26px}
.welcome h1 em{font-style:normal;color:var(--accent)}
.welcome .welcome-lead{margin:0;font-size:15px;line-height:2;color:var(--text)}.welcome-lead span{display:block}
.composer-wrap{padding:6px 0 0}
.composer{border:1px solid var(--border);border-radius:22px;padding:22px 20px 16px 26px;background:var(--card);box-shadow:0 10px 30px #8a5a2a12}
.composer:focus-within{border-color:#e7c9ad}
.composer textarea{font-size:16px;min-height:66px}
.composer-bottom{gap:10px}
.input-help{font-size:12px;color:var(--muted)}
.send-button{width:52px;height:52px;background:var(--accent);color:#fff}.send-button svg{width:22px;height:22px;stroke-width:2.2}
.send-button:disabled{opacity:1;background:#e2a77e}
:root[data-theme=dark] .send-button:disabled{background:#6b4a33;color:#d9c3b0}
.input-meta{display:none}
.suggestions{grid-template-columns:repeat(3,1fr);gap:14px;margin:30px -36px 0}
.suggestions button{display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:16px;border-radius:16px;background:var(--card);border:1px solid var(--border);text-align:left}
.suggestions button:hover{background:var(--card);border-color:#e7c9ad;box-shadow:0 6px 18px #8a5a2a10}
.suggestions i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;flex:none}
.suggestions i svg{width:20px;height:20px}
.suggestions button>span{display:flex;flex-direction:column;gap:2px;min-width:0;color:var(--text)}
.suggestions strong{font-size:15px;font-weight:700;line-height:1.5}
.suggestions small{font-size:12.5px;color:var(--muted);line-height:1.5}
.tone-orange{background:#fde7d6;color:#c85a12}.tone-yellow{background:#fdf3c9;color:#a07a0a}.tone-green{background:#e2f1e6;color:#2f7a4e}.tone-brown{background:#efe5dc;color:#6b4a33}.tone-red{background:#fde3e1;color:#c0392b}.tone-blue{background:#e1ecf8;color:#2c5f9e}
:root[data-theme=dark] .suggestions i{filter:saturate(.8) brightness(.85)}
.home-notes{text-align:center;margin:36px 0 0}
.home-notes .consultation-policy{margin:0;font-size:12.5px;line-height:1.9;color:var(--text)}
.home-notes .consultation-policy a{color:var(--accent);text-decoration:underline}
.home-notes .answer-notice{margin:2px 0 0;font-size:12.5px;color:var(--text)}
.home-notes .disclaimer-link{display:flex;justify-content:center;gap:14px;margin:12px 0 0;font-size:12.5px;color:var(--muted)}
.home-notes .disclaimer-link a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
footer{border-top:0}
.conversation-mode .home-notes{margin-top:18px}
.conversation-mode .composer{padding:14px 14px 12px 20px}.conversation-mode .composer textarea{min-height:44px}
.history-view .primary-button,.message .primary-button{border-radius:999px}
@media(max-width:1000px){.suggestions{margin-left:0;margin-right:0}}
@media(max-width:760px){.suggestions{grid-template-columns:repeat(2,1fr)}.new-chat-button span{display:none}.new-chat-button{padding:0 14px}}
@media(max-width:640px){
.header{display:flex;flex-wrap:nowrap;height:68px;min-height:0;padding:0 16px;gap:8px}
.header nav{grid-row:auto;margin-left:auto;height:auto;gap:4px;justify-content:flex-end}
.nav-button{padding:0 8px;font-size:13px;height:40px}.nav-button svg{display:none}
.new-chat-button{height:40px;width:40px;padding:0;justify-content:center}
.account-pill{height:40px;padding:0 4px;border:0;background:none;font-size:0;gap:0}.account-pill:before{font-size:14px}
.login-pill{border:1px solid var(--border);font-size:13px;padding:0 12px}
.theme-button{display:none}.brand{font-size:21px}
main{padding:12px 16px 20px}
.welcome{padding:20px 0 22px}.season-badge{margin-bottom:22px;font-size:12px}
.welcome h1{font-size:25px;letter-spacing:.02em;margin-bottom:18px}.welcome .welcome-lead{font-size:13px;letter-spacing:-.01em}
.composer{padding:16px 14px 12px 18px;border-radius:18px}
.input-help{display:none}
.suggestions{grid-template-columns:1fr;gap:10px;margin-top:22px}.suggestions button{padding:12px 14px}
.conversation-mode .composer-wrap{display:block}
}
.nav-button,.new-chat-button{white-space:nowrap;flex:none}
@media(max-width:640px){#chatTab:not([hidden])+#historyTab{display:none}}
/* Phone chat: one-line composer so the conversation gets the screen */
@media(max-width:640px){
.conversation-mode .composer-wrap{padding:8px 0 6px}
.conversation-mode .composer{display:flex;align-items:flex-end;gap:8px;padding:6px 6px 6px 16px;border-radius:24px;bottom:8px;box-shadow:0 0 0 8px var(--bg),0 4px 14px #00000012}
.conversation-mode .composer textarea{flex:1;min-width:0;min-height:40px;max-height:25dvh;padding:7px 0;line-height:1.6;font-size:16px}
.conversation-mode .composer-bottom{flex:none}
.conversation-mode .send-button{width:40px;height:40px}.conversation-mode .send-button svg{width:19px;height:19px}
.conversation-mode .stop-button{font-size:13px;padding:8px 12px}
.conversation-mode .guest-notice{font-size:12px;margin-top:6px}
}
