*{box-sizing:border-box}body{margin:0;background:#f5f6f3;color:#213a36;font-family:Arial,Helvetica,sans-serif;display:flex;height:100dvh}button,textarea{font:inherit}button,a,label.attach{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible,label:focus-within{outline:3px solid #368d74;outline-offset:3px}.sidebar{width:268px;flex-shrink:0;padding:36px 24px;background:#132e2c;color:#dce9e1;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:14px;font-size:42px;color:#b9decb;text-decoration:none}.brand span{font-size:23px;color:white}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:5px}.workspace{margin:62px 0 30px}.eyebrow{display:block;letter-spacing:2px;font-size:9px;color:#699f8b;margin-bottom:17px}.workspace strong{display:block;font-size:18px;font-weight:400}.workspace small{display:block;font-size:12px;color:#a3bbb2;margin-top:12px}.sidebar button{border:0;background:transparent;color:inherit;text-align:left;font-size:12px;padding:15px 12px;border-radius:9px}.sidebar button.active{background:#ffffff10;color:#d5eddf}.sidebar-bottom{margin-top:auto;font-size:12px;color:#a3bbb2}.sidebar-bottom p{font-size:11px;margin:10px 0}.sidebar-bottom button{padding-left:0;text-decoration:underline;font-size:10px}main{flex:1;min-width:0;display:flex;flex-direction:column}header{display:flex;align-items:center;gap:14px;padding:25px 36px;border-bottom:1px solid #dde4de;background:#fcfcfa}.avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:#d8e8dc;color:#2e6955;font-size:30px}h1{font-size:18px;margin:0;font-weight:500}header p{font-size:11px;color:#75847b;margin:6px 0 0}.demo-pill{margin-left:auto;font-size:8px;letter-spacing:1.5px;padding:9px 12px;border:1px solid #d9e4da;border-radius:20px;color:#64796a}#install{margin-left:auto;padding:9px;border:1px solid #b9cebf;border-radius:7px;background:white;font-size:11px}.notice{text-align:center;background:#edf1e9;padding:12px 20px;font-size:11px;color:#66765e}#messages{flex:1;overflow:auto;padding:35px max(28px,calc((100% - 760px)/2));scroll-behavior:smooth}.welcome{padding:35px 0 25px}.welcome .eyebrow{margin-bottom:14px}.welcome h2{font-size:35px;line-height:1.2;letter-spacing:-1.2px;font-weight:400;margin:0 0 16px}.welcome p{font-size:13px;line-height:1.7;color:#748278}.suggestions{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.suggestions button{padding:12px 15px;border:1px solid #d7e0d6;border-radius:8px;background:#fcfcfa;font-size:11px;color:#4f6959}.bubble{font-size:13px;line-height:1.7;padding:15px 18px;border:1px solid #dce3da;background:#fff;border-radius:14px 14px 14px 3px;max-width:88%;margin:14px 0;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.user{background:#214e43;color:#f2f7f1;border-color:#214e43;margin-left:auto;border-radius:14px 14px 3px 14px}.bubble small{display:block;font-size:9px;letter-spacing:1px;opacity:.7;margin-bottom:6px}.file-link{display:block;color:inherit;margin-top:8px}.approval{max-width:90%;padding:20px;border:1px solid #c8d9c8;background:#fafff7;border-radius:12px;margin:14px 0}.approval h3{font-size:14px;margin:0 0 10px}.approval p{font-size:12px;line-height:1.7;color:#66765e}.approval button{padding:10px 16px;border:1px solid #bacdb8;border-radius:7px;margin-right:9px;background:white;font-size:12px;color:#264f3b}.approval button:first-of-type{background:#214e43;color:white}.approval button:disabled{cursor:default;opacity:.65}.compose-area{padding:18px max(28px,calc((100% - 760px)/2)) 24px;background:#f5f6f3}#composer{display:flex;align-items:flex-end;background:white;padding:12px;border:1px solid #d6dfd4;border-radius:15px;gap:12px;box-shadow:0 4px 20px #183e2d05}textarea{flex:1;min-width:0;resize:none;max-height:160px;padding:12px 0;border:0;outline:none;font-size:13px;background:transparent;color:#213a36;line-height:1.5}.attach{width:40px;height:44px;display:grid;place-items:center;font-size:25px;cursor:pointer;color:#6f8677}.attach input{position:absolute;width:1px;height:1px;opacity:0}.send{width:42px;height:42px;border:0;border-radius:10px;background:#214e43;color:white;font-size:23px;flex-shrink:0}.hint{font-size:9px;color:#7c887d;text-align:center;margin:12px 0 0}.hint button{border:0;background:transparent;color:#52755d;text-decoration:underline;font-size:inherit}.chip{display:inline-flex;gap:10px;background:#e3ebe0;padding:8px 12px;border-radius:6px;font-size:11px;margin:0 6px 9px 0}.chip button{border:0;background:none;color:#365c42}dialog{border:1px solid #d7e3d5;border-radius:23px;padding:40px;width:min(460px,calc(100% - 32px));color:#213a36;background:#fcfcf8;box-shadow:0 30px 100px #0003}dialog::backdrop{background:#112f2caa;backdrop-filter:blur(7px)}.pair-brand{font-size:32px;border:1px solid #b9cbb9;width:55px;height:55px;border-radius:50%;display:grid;place-items:center;margin-bottom:30px}dialog h2{font-size:39px;letter-spacing:-1.5px;line-height:1.15;margin:0 0 20px;font-weight:400}dialog p{font-size:14px;line-height:1.7;color:#70806f}.demo-note{background:#edf1e7;border-radius:9px;padding:14px;font-size:11px;line-height:1.6;margin:24px 0}.primary{width:100%;padding:16px;border:0;background:#214e43;color:white;border-radius:9px;font-size:13px}dialog small{display:block;text-align:center;margin-top:16px;font-size:10px;color:#7d8878}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:700px){.sidebar{display:none}header{padding:18px 20px}.notice{font-size:10px}#messages{padding:20px}.compose-area{padding:12px 15px 20px}.welcome{padding:22px 0}.welcome h2{font-size:30px}.demo-pill{font-size:7px;padding:8px}.bubble{max-width:95%}}@media(prefers-reduced-motion:reduce){#messages{scroll-behavior:auto}}

main{height:100dvh;min-height:0}header,.notice,.compose-area{flex-shrink:0}#messages{min-height:0}
[hidden]{display:none!important}

.microphone{width:42px;height:42px;border:1px solid #d6dfd4;border-radius:10px;background:#f5f8f3;color:#315e4d;display:grid;place-items:center;flex-shrink:0}.microphone.listening{background:#a33131;color:white;border-color:#a33131}.microphone:disabled,.send:disabled{opacity:.5;cursor:default}.voice-status{font-size:12px;line-height:1.5;color:#526c5b;margin:8px 4px}.voice-status:empty{display:none}
/* Tomorrow's way: restrained light, inset edges, and dimensional surfaces. */
:root{--edge-glow:#78d8c3;--soft-glow:#9ee7d533}
body{background:#f4f7f4}
.sidebar{background:radial-gradient(ellipse at 0 0,#23564b66,transparent 65%),linear-gradient(150deg,#173c36,#102b29);border-right:1px solid #87dcc64d;box-shadow:5px 0 28px #174f3f12;position:relative}
.brand{ text-shadow:0 0 24px #9be4c329}
.sidebar button.active{background:linear-gradient(130deg,#a7ebd51c,#8de1ce09);border:1px solid #96dfc32b;box-shadow:inset 0 1px 0 #d3fff21a,0 4px 14px #061f2720}
header{background:linear-gradient(135deg,#ffffff,#f5faf7);box-shadow:0 3px 18px #193f3210;position:relative}
header::after{content:'';position:absolute;bottom:-1px;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,#80cdb3a6,transparent);pointer-events:none}
.avatar{background:linear-gradient(140deg,#e3f5e9,#bbd8cb);border:1px solid #fff;box-shadow:inset 0 1px 2px #ffffffdd,0 4px 12px #275c3d15,0 0 18px #8fe2bf24}
.demo-pill{background:linear-gradient(145deg,#ffffff,#edf8f2);box-shadow:inset 0 1px 0 white,0 2px 7px #19563d0a}
#messages{background:radial-gradient(ellipse at 80% 0,#cbebde23,transparent 55%)}
.bubble{background:linear-gradient(145deg,#fff,#f8fbf8);border-color:#d3e3d8;box-shadow:inset 0 1px 0 #fff,0 5px 14px #183e2d09,0 1px 2px #183e2d0a}
.bubble.user{background:linear-gradient(145deg,#2a6052,#1b443d);border-color:#427a68;box-shadow:inset 0 1px 0 #b4edcf2e,0 5px 18px #123d2918,0 0 12px #83dbc00a}
#composer{background:linear-gradient(145deg,#fff,#f9fcfa);border-color:#bcd7c9;box-shadow:inset 0 1px 0 white,0 6px 22px #174f3510,0 0 0 1px #c1e9d51a;transition:border-color .18s,box-shadow .18s}
#composer:focus-within{border-color:#80bca7;box-shadow:inset 0 1px 0 white,0 6px 22px #174f3510,0 0 0 2px #90d4b91c,0 0 20px #90d4b923}
.send{background:linear-gradient(145deg,#326b58,#19463d);border:1px solid #417c66;box-shadow:inset 0 1px 0 #b9f7d32e,0 3px 8px #19463120}
.microphone{background:linear-gradient(145deg,#fff,#eaf3ec);box-shadow:inset 0 1px 0 white,0 2px 5px #1c4a3210}
.microphone.listening{background:linear-gradient(145deg,#b14c4c,#8d3030);box-shadow:0 0 12px #b14c4c30}
@media(prefers-reduced-motion:reduce){#composer{transition:none}}

.connections-dialog h2{font-size:28px;letter-spacing:-.6px}.connection-row{padding:15px 0;border-bottom:1px solid #dce7de}.connection-row strong{font-size:13px;font-weight:600}.connection-row p{font-size:12px;margin:6px 0 0}.mobile-connections{display:none}#connections{margin-top:auto;margin-bottom:18px;border:1px solid #a8e0c52e;background:#a8e0c50a}.sidebar-bottom{margin-top:0}@media(max-width:700px){.mobile-connections{display:block;border:1px solid #d1e1d5;border-radius:8px;background:#f4f9f5;color:#426554;padding:7px;font-size:10px}.demo-pill{display:none}header{gap:10px}.mobile-connections{margin-left:auto}#install{margin-left:0}}
/* A distinct review surface keeps proposed Google changes readable in the chat. */
.action-card{margin-top:16px;padding:18px;border:1px solid #8db8a5;border-radius:16px;background:linear-gradient(135deg,#f5fcf8,#e9f4ed);box-shadow:inset 0 1px 1px #fff,0 5px 16px #174d3210;color:#163d2c;max-width:100%;overflow-wrap:anywhere}
.action-card h3{font-size:16px;margin:0 0 8px}.action-status{font-weight:650;font-size:13px}.action-card dl{margin:14px 0}.action-card dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-top:10px;color:#526d61}.action-card dd{margin:4px 0 0;white-space:pre-wrap;font-size:14px;max-height:250px;overflow:auto;padding:8px;background:#ffffffb0;border-radius:7px}.action-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.action-controls button{padding:10px 13px;border-radius:10px;border:1px solid #8db8a5;cursor:pointer}.action-controls button:disabled{opacity:.6;cursor:wait}.action-card a{display:inline-block;margin-top:12px;color:#145f3e}
.dictation-retry{margin:2px 0 8px;border:1px solid #8db8a5;border-radius:8px;background:#f5fcf8;color:#163d2c;padding:7px 12px;cursor:pointer}.voice-status{white-space:pre-wrap}
/* Floating surfaces: a lit underside, a visible lower edge, and crisp readable faces. */
:root{--lift-light:#5cebc2;--lift-cool:#62dcd9}
main{background:radial-gradient(ellipse at 90% 15%,#d5f5ed66,transparent 55%),#f2f6f3}
header{background:linear-gradient(120deg,#fcfffd,#eff9f5);box-shadow:inset 0 1px 0 #fff,0 4px 0 #d4e4db66,0 10px 28px #21534412;z-index:2}
header h1{font-weight:600;letter-spacing:.3px;color:#174e40;text-shadow:0 1px 0 #fff,0 0 8px #56d8b960,0 0 22px #54d5bd3c}
header p{color:#446c60;text-shadow:0 0 9px #74e8cb60,0 0 20px #8ee6d440;line-height:1.4}
.avatar{box-shadow:inset 0 2px 2px #fff,0 3px 0 #a5c8b8,0 9px 14px #174d3226,0 10px 22px #65e1b645}
#messages{background:radial-gradient(ellipse at 75% 5%,#a5e7d41c,transparent 60%);padding-top:30px;padding-bottom:35px}
.bubble{position:relative;isolation:isolate;margin-top:23px;margin-bottom:28px;border:1px solid #c4ddcf;border-top-color:#fff;background:linear-gradient(155deg,#fff 5%,#fbfefc 55%,#edf7f1);box-shadow:inset 0 2px 0 #fff,inset 0 -1px 0 #cee2d6,0 4px 0 #bdd4c8,0 11px 17px -7px #214e4347,0 17px 26px -13px #45cea07a;transition:transform .18s ease,box-shadow .18s ease}
.bubble::after{content:'';position:absolute;pointer-events:none;z-index:-1;left:12%;right:12%;bottom:-12px;height:15px;border-radius:50%;background:linear-gradient(90deg,#5de1b600,#5de1b6bd 30%,#66dcdacc 65%,#66dcda00);filter:blur(9px);opacity:.54}
.bubble.user{background:linear-gradient(145deg,#316e5d,#215447 62%,#183f38);border-color:#548d78;border-top-color:#85b8a2;box-shadow:inset 0 2px 0 #c7ffe32b,inset 0 -1px 0 #0a302c88,0 4px 0 #123b32,0 11px 18px -6px #173e3a5c,0 18px 25px -13px #38cda87e}
.bubble.user::after{opacity:.6375}
.compose-area{position:relative;background:linear-gradient(180deg,#f2f6f300,#f2f6f3 25%);padding-top:23px}
#composer{position:relative;isolation:isolate;border:1px solid #b2d4c2;border-top-color:#fff;background:linear-gradient(155deg,#fff,#f4fcf7);box-shadow:inset 0 2px 0 #fff,inset 0 -1px 0 #d4e8da,0 4px 0 #b7d1c2,0 12px 21px -8px #1c594244,0 17px 27px -12px #47d5aa7c}
#composer::after{content:'';position:absolute;z-index:-1;pointer-events:none;left:8%;right:8%;bottom:-13px;height:16px;border-radius:50%;background:linear-gradient(90deg,transparent,#61e2bcb3,#63ded3bf,transparent);filter:blur(10px);opacity:.75}
#composer:focus-within{border-color:#72bda1;box-shadow:inset 0 2px 0 #fff,inset 0 -1px 0 #d4e8da,0 4px 0 #a5cdb8,0 12px 21px -8px #1c594244,0 18px 29px -11px #3fdbaf8e,0 0 0 2px #86e5c52e}
.microphone,.send{transition:transform .12s ease,box-shadow .12s ease;background:linear-gradient(145deg,#fff,#e0f1e6);border:1px solid #aacbbb;box-shadow:inset 0 1px 1px #fff,0 3px 0 #a6c5b3,0 7px 11px -4px #28594340}
.send{background:linear-gradient(145deg,#397c66,#205143);border-color:#4e8b72;box-shadow:inset 0 1px 0 #c9ffe34a,0 3px 0 #113b2c,0 7px 12px -3px #255b4247}
.microphone:active:not(:disabled),.send:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 2px 5px #1a4c382b,0 1px 0 #9bbbaa}
.microphone.listening{background:linear-gradient(145deg,#c86767,#973e43);border-color:#db9593;box-shadow:inset 0 1px 0 #ffd7d159,0 3px 0 #763438,0 0 0 3px #e7aaa22b,0 6px 18px #c954544d}
.action-card{box-shadow:inset 0 2px 0 #fff,0 3px 0 #b6d7c3,0 9px 18px -8px #2b8a6248}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.bubble:hover{transform:translateY(-2px)}.microphone:hover:not(:disabled),.send:hover:not(:disabled){filter:brightness(1.04)}}
@media(max-width:700px){header p{font-size:10px;max-width:175px}.bubble{margin-top:19px;margin-bottom:25px}.bubble::after{left:15%;right:15%;opacity:.45}#composer{gap:9px}.compose-area{padding-top:19px}}
@media(prefers-reduced-motion:reduce){.bubble,.microphone,.send{transition:none}.bubble:hover,.microphone:active:not(:disabled),.send:active:not(:disabled){transform:none}}
/* The illuminated composer frame supplies the keyboard-focus boundary. */
#message:focus-visible{outline:none}

/* Brand divider and private attachment previews. */
.brand{padding-bottom:24px;border-bottom:1px solid #ffffffb3}.workspace{margin-top:36px}
.attach{flex-shrink:0;border:1px solid #c9ded2;border-radius:10px;background:linear-gradient(145deg,#fff,#e9f4ed);box-shadow:inset 0 1px 0 white,0 2px 0 #bbd2c2}
.attach[aria-disabled="true"]{opacity:.45;cursor:default}
#file-previews{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;max-height:160px;overflow:auto}#file-previews:empty{display:none}
.attachment-preview{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#eef6ef;border:1px solid #c1d9ca;border-radius:10px;max-width:100%;font-size:11px;box-shadow:0 3px 9px #1e553110}
.attachment-preview img{width:42px;height:42px;object-fit:cover;border-radius:6px}.attachment-preview span{min-width:0;overflow-wrap:anywhere}.attachment-preview small{display:block;margin-top:4px;color:#627d6b;font-size:10px}.attachment-preview button{border:0;background:transparent;color:#365c42;font-size:20px;padding:6px}
.upload-status{font-size:11px;color:#52755d;padding:8px}.message-files{display:flex;flex-direction:column;gap:8px}.message-files a{white-space:normal}.message-files img{display:block;max-width:100%;width:220px;max-height:240px;object-fit:contain;border-radius:8px;margin-bottom:5px}
#attachments{font-size:12px;overflow-wrap:anywhere;margin-bottom:8px}#attachments:empty{margin:0}
@media(max-width:420px){#composer{gap:6px;padding:9px}.attach{width:32px}.send{width:36px}.dictate{flex-shrink:0}}
