:root{color-scheme:dark;--bg:#07172b;--panel:#0c2038;--text:#f1f5fa;--muted:#9fb0c4;--teal:#61e4d5;--line:#233a51;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#08234f 0,#08234f 125px,transparent 330px),radial-gradient(ellipse at 50% 16%,#12354b66,transparent 52%),var(--bg);color:var(--text);min-height:100vh}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--teal);outline-offset:4px}button{color:inherit}.topbar{max-width:1350px;padding:24px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block}.brand img{width:240px;height:auto;display:block;mix-blend-mode:lighten}.topbar nav{display:flex;align-items:center;gap:25px}.topbar nav button,footer button{border:0;background:none;color:#b8c7d8;font-size:13px;padding:10px 0}.topbar nav button:hover,footer button:hover{color:var(--teal)}.pilot{font-size:9px;letter-spacing:1.5px;border:1px solid #3b615f;color:var(--teal);padding:9px 12px;border-radius:20px;white-space:nowrap}main{max-width:940px;margin:0 auto;padding:24px 28px 0}.welcome{text-align:center;margin:14px 0 35px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.2px;color:#9cc8cb}.spark{color:var(--teal);font-size:17px;margin-right:8px}h1{font-size:clamp(34px,4.6vw,57px);line-height:1.12;font-weight:500;letter-spacing:-2px;margin:22px 0 19px}h1 em{font-family:Georgia,serif;color:var(--teal);font-weight:400}p{line-height:1.65}.welcome p{font-size:15px;color:var(--muted);margin:0}.chat-shell{border:1px solid #2a435a;border-radius:19px;background:linear-gradient(140deg,#10273e,#0b1e34 60%);box-shadow:0 24px 90px #0003;overflow:hidden}.chat-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:17px 24px;gap:12px}.identity{display:flex;align-items:center;gap:11px}.identity strong{font-size:14px;font-weight:600;display:block}.subtitle{display:block;color:var(--muted);font-size:11px;margin-top:4px}.avatar{background:#163e46;border:1px solid #397a78;color:var(--teal);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:21px}.new-chat{background:transparent;color:#afbdce;border:1px solid #30465c;border-radius:7px;padding:9px 12px;font-size:11px}.new-chat:hover{border-color:var(--teal);color:var(--teal)}.conversation{padding:24px;max-height:430px;overflow:auto;scroll-behavior:smooth;min-height:155px}.empty-state{text-align:center;color:var(--muted);padding:0 0 10px}.empty-spark{font-size:27px;color:var(--teal)}.empty-state p{font-size:14px;line-height:1.7;margin:10px 0 0}.empty-state strong{color:#d5e2ee;font-weight:400}.starters{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 24px 21px}.starters button{font-size:11px;background:#ffffff03;border:1px solid #30445b;border-radius:8px;padding:13px 6px;color:#c5d3e0;white-space:nowrap}.starters button span{color:var(--teal);margin-right:5px;font-size:15px}.starters button:hover{background:#193b48;border-color:#4e8c8b}.composer{margin:0 20px;display:flex;align-items:flex-end;border:1px solid #40556a;border-radius:12px;padding:11px 11px 11px 16px;background:#07182a;gap:12px}.composer:focus-within{border-color:var(--teal)}textarea{resize:none;background:transparent;border:0;outline:none!important;width:100%;max-height:150px;color:var(--text);line-height:1.5;padding:6px 0;font-size:14px}textarea::placeholder{color:#7f93aa}.send{background:var(--teal);border:0;color:#062d32;border-radius:9px;width:36px;height:36px;flex-shrink:0;font-size:24px}.send:hover{background:#a4f6ea}.composer-meta{display:flex;justify-content:space-between;margin:10px 24px 18px;color:#70879e;font-size:10px;gap:10px}.disclosure{text-align:center;color:#7f94aa;font-size:10px;line-height:1.8;margin:20px 0 0}footer{max-width:1270px;margin:40px auto 0;border-top:1px solid #20364b;padding:20px 0;display:flex;justify-content:space-between;color:#71879c;font-size:11px;align-items:center}footer button{font-size:11px;padding:0}.message{margin:0 0 23px;overflow-wrap:anywhere}.message:last-child{margin-bottom:4px}.message-label{font-size:10px;color:var(--teal);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px}.message.user .message-label{color:#a4b8d0}.message-body{font-size:14px;line-height:1.7;color:#dbe6f2}.message.user .message-body{background:#1a354c;border-radius:10px;padding:13px 16px}.message-body p{margin:0 0 12px}.message-body p:last-child{margin:0}.message-body h3{font-size:15px;margin:15px 0 8px;color:#f4fbff}.message-body ul{padding-left:22px;margin:8px 0 13px}.message-body pre{padding:15px;background:#051320;border:1px solid var(--line);border-radius:8px;white-space:pre-wrap;font-size:12px;overflow:auto}.message-body code{font-family:monospace;background:#051320;padding:2px 4px;border-radius:3px}.message-body pre code{padding:0}.copy{display:block;margin-top:10px;border:0;background:none;color:#819ab1;font-size:10px;padding:2px}.thinking{color:#a1c6ca;font-size:13px;padding:8px 0}.notice{margin:0 24px 14px;padding:12px;border-radius:8px;background:#614d282b;border:1px solid #8d73434d;color:#e4d5b8;font-size:12px;line-height:1.6}dialog{background:#10253b;color:var(--text);border:1px solid #3a586a;border-radius:18px;padding:34px;max-width:460px;width:calc(100% - 36px);box-shadow:0 30px 150px #0008}dialog::backdrop{background:#03101dc9;backdrop-filter:blur(6px)}dialog h2{font-size:30px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin:20px 0 14px}dialog p,dialog li{font-size:14px;color:#b1c3d4;line-height:1.7}dialog label{font-size:12px;display:block;margin:24px 0 9px}dialog input{width:100%;padding:13px;background:#07182b;border:1px solid #466174;border-radius:8px;color:white}.primary{display:flex;justify-content:space-between;width:100%;background:var(--teal);color:#082d35;border:0;border-radius:8px;padding:14px 16px;font-weight:600}.fineprint{font-size:11px!important;color:#8ca4ba!important;margin-bottom:0}.error{color:#f2b5a7!important;font-size:12px!important;min-height:10px}.close{float:right;border:0;background:none;font-size:25px;color:#a4bace}.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}body.chatting .welcome{margin:0 0 24px}body.chatting .welcome h1{font-size:30px;margin:12px 0}body.chatting .welcome p{display:none}body.chatting .welcome .eyebrow{display:none}body.chatting .conversation{min-height:220px;max-height:54vh}
@media(min-width:1500px){main{padding-top:50px}.welcome{margin-bottom:45px}.conversation{min-height:190px}}@media(max-width:700px){.topbar{padding:18px 20px;align-items:center}.brand img{width:170px}.topbar nav{gap:14px}.topbar nav button{font-size:11px}.pilot{display:none}main{padding:18px 14px 0}.welcome{margin:15px 0 27px}h1{letter-spacing:-1.4px}.eyebrow{font-size:8px;letter-spacing:1.5px}.welcome p{font-size:13px}.desktop{display:none}.chat-heading{padding:15px}.new-chat{font-size:10px;padding:8px}.conversation{padding:19px;min-height:150px}.starters{grid-template-columns:1fr 1fr;margin:0 15px 17px;gap:8px}.starters button{padding:11px 7px;font-size:11px}.composer{margin:0 12px;padding-left:12px}.composer-meta{margin:9px 15px 16px;font-size:9px}.disclosure{font-size:9px;padding:0 10px}footer{margin:27px 20px 0;padding:18px 0;font-size:9px}footer button{font-size:9px}.message-body{font-size:14px}dialog{padding:26px}.topbar nav{gap:12px}body.chatting .welcome h1{font-size:24px}body.chatting .conversation{max-height:48vh}}@media(prefers-reduced-motion:reduce){.conversation{scroll-behavior:auto}}

.avatar.portrait{display:block;object-fit:cover;width:44px;height:44px;border:1px solid #4d9f9a;flex-shrink:0;background:#0c2038}
.pilot-guide{max-width:760px;margin:26px auto 0;padding:22px;text-align:center;border-top:1px solid var(--line)}.pilot-guide-label{font-size:9px;letter-spacing:1.8px;color:var(--teal)}.pilot-guide p{font-size:12px;color:var(--muted);max-width:520px;margin:12px auto}.feedback-button{background:#163740;border:1px solid #407574;border-radius:8px;padding:11px 19px;font-size:12px;color:#b9f3ec}.feedback-button:hover{background:#22525b}.pilot-limit{display:block;font-size:9px;color:#7893aa;margin-top:15px;line-height:1.7}#feedback-dialog{max-width:500px;max-height:90dvh;overflow:auto}#feedback-dialog h2{margin-top:16px}#feedback-dialog label{margin:17px 0 8px}#feedback-dialog select,#feedback-comment{width:100%;border:1px solid #466174;border-radius:8px;padding:11px;background:#07182b;color:var(--text);font-size:13px}#feedback-comment{resize:vertical;min-height:100px;max-height:220px}#feedback-dialog .check-label{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6}#include-exchange{width:17px;height:17px;flex-shrink:0;margin:1px 0 0;accent-color:var(--teal)}#exchange-details{font-size:11px;color:var(--muted)}#exchange-preview{white-space:pre-wrap;max-height:180px;overflow:auto;font-family:inherit;line-height:1.6;background:#07182b;padding:12px;border-radius:8px}#feedback-dialog .fineprint{font-size:10px!important}#feedback-status.success{color:var(--teal)!important}

/* Keep navigation and feedback visible; scroll answers inside the chat. */
.topbar{position:sticky;top:0;z-index:5;background:#08234ff2;width:100%}
.topbar nav .feedback-button{padding:11px 17px;border:1px solid #a9f5e6;border-radius:9px;color:#043537;font-weight:700;background:linear-gradient(135deg,#b7fff1 0%,#66d8cd 23%,#2ba59f 48%,#8ce8d9 72%,#3ab7ae 100%);box-shadow:inset 0 1px 0 #e2fff7aa,0 3px 16px #32d9c32e;white-space:nowrap}
.topbar nav .feedback-button:hover{color:#032829;filter:brightness(1.12)}
#close-feedback{position:sticky;top:0;z-index:2;background:#10253b;border:1px solid #466174;border-radius:50%;width:36px;height:36px;line-height:30px}
.feedback-thanks{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;width:max-content;max-width:calc(100% - 32px);padding:16px 22px;border:1px solid #8ce8d9;border-radius:12px;background:#123f42;color:#dcfff6;box-shadow:0 8px 40px #0007;font-size:14px;text-align:center}
@media(min-width:701px) and (min-height:600px){
body{height:100dvh;min-height:600px;display:flex;flex-direction:column}
.topbar{padding:14px 32px;flex-shrink:0}.brand img{width:200px}
main{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;padding:8px 28px 0}
.welcome,body.chatting .welcome{flex-shrink:0;margin:0 0 16px}.welcome h1{font-size:clamp(30px,4vh,48px);margin:10px 0}.welcome p{font-size:13px;line-height:1.5}
.chat-shell{flex:1;min-height:0;display:flex;flex-direction:column}.chat-heading{padding:12px 20px;flex-shrink:0}
.conversation,body.chatting .conversation{flex:1;min-height:0;max-height:none;padding:18px 24px}.starters{flex-shrink:0;margin-bottom:12px}.starters button{padding:10px 6px}
.composer,.composer-meta{flex-shrink:0}.composer-meta{margin-bottom:12px}.disclosure{flex-shrink:0;margin:10px 0 0;font-size:9px;line-height:1.5}
footer{flex-shrink:0;width:calc(100% - 64px);margin:10px auto 0;padding:10px 0}
}
@media(max-width:700px){.topbar{flex-wrap:wrap;gap:10px;padding:12px 16px}.brand img{width:150px}.topbar nav{flex:1;justify-content:flex-end;gap:12px;flex-wrap:wrap}.topbar nav .feedback-button{font-size:11px;padding:9px 11px}.topbar nav button{font-size:10px}}
