.ai-page{--ai-line:#c0d1c321;--ai-muted:#a9beb9;--ai-teal:#8bc7be;max-width:1320px;margin:0 auto;padding:64px 5% 40px;color:#eff2e9;animation:reveal .4s both}.ai-page button,.ai-page input,.ai-page textarea,.ai-page select{font-family:var(--font,'DM Sans',sans-serif)}.ai-page .button{border-radius:6px}.ai-kicker{display:block;color:var(--gold,#e9c391);font-size:10px;font-weight:650;letter-spacing:2.4px;line-height:1.7}.ai-hero{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-bottom:34px}.ai-hero>div:first-child{max-width:740px}.ai-hero h1{font-size:clamp(36px,4.1vw,58px);font-weight:450;letter-spacing:-2.2px;line-height:1.11;margin:15px 0 19px}.ai-hero h1 em{font-family:Georgia,serif;color:var(--gold,#e9c391);font-weight:400}.ai-hero p{max-width:625px;font-size:16px;color:var(--ai-muted);line-height:1.75}.ai-hero-index{display:flex;gap:18px;align-items:center;flex-shrink:0}.ai-hero-index>span{font:400 75px/1 Georgia,serif;letter-spacing:-5px;color:#e9c39156}.ai-hero-index small{font-size:9px;line-height:1.9;letter-spacing:2px;color:#a9beb9}.ai-connection{display:flex;align-items:center;gap:14px;padding:17px 20px;border:1px solid #e9c39135;background:#e9c39108;border-radius:8px;margin-bottom:30px}.ai-connection>div{flex:1}.ai-connection strong{font-size:13px;font-weight:550;color:#e9c391}.ai-connection p{font-size:12px;line-height:1.65;color:var(--ai-muted);margin:3px 0 0;max-width:800px}.ai-status-dot{width:7px;height:7px;border-radius:50%;background:#b19a76;flex-shrink:0;box-shadow:0 0 0 4px #b19a7610}.ai-connection.is-ready{border-color:#8bc7be38;background:#8bc7be07}.ai-connection.is-ready strong{color:var(--ai-teal)}.ai-connection.is-ready .ai-status-dot{background:var(--ai-teal);box-shadow:0 0 0 4px #8bc7be12}.ai-text-button{color:var(--gold,#e9c391);font-size:12px;padding:5px 0;text-align:left;line-height:1.5;white-space:nowrap}.ai-text-button:hover{text-decoration:underline;text-underline-offset:4px}.ai-text-button:disabled{opacity:.5}.ai-workspace{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:38px;align-items:start}.ai-form-shell{border:1px solid var(--ai-line);border-radius:10px;background:linear-gradient(135deg,#152b2bb3,#0b1b20bd);overflow:hidden;min-width:0}.ai-steps{display:flex;gap:0;list-style:none;padding:22px 25px;margin:0;border-bottom:1px solid var(--ai-line);background:#ffffff02}.ai-steps li{flex:1;display:flex;flex-direction:column;gap:9px;position:relative;color:#728b86;font-size:10px;line-height:1.4;padding-right:10px}.ai-steps li:before{content:'';position:absolute;height:1px;top:13px;left:29px;right:7px;background:#d1e2d514}.ai-steps li:last-child{padding-right:0}.ai-steps li:last-child:before{display:none}.ai-step-number{display:grid;place-items:center;width:27px;height:27px;border:1px solid #a1bab726;border-radius:50%;font-size:10px;line-height:1;flex-shrink:0;background:#102225}.ai-steps li.is-current{color:#e9c391}.ai-steps li.is-current .ai-step-number{border-color:#e9c39199;color:#102225;background:#e9c391}.ai-steps li.is-past{color:#a7c3b7}.ai-steps li.is-past .ai-step-number{color:#a7c3b7;border-color:#a7c3b753}.ai-form-panel{padding:32px}.ai-section-heading{margin-bottom:25px}.ai-section-heading h2,.ai-request-panel h2{font-size:clamp(24px,2.7vw,33px);font-weight:450;letter-spacing:-.8px;line-height:1.25;margin:10px 0 12px}.ai-section-heading h2:focus,.ai-request-panel h2:focus{outline:none}.ai-section-heading p,.ai-request-panel>p{color:var(--ai-muted);font-size:14px;line-height:1.8;max-width:610px}.ai-required-note{color:#8fa9a1;font-size:10px;margin:-5px 0 22px}.ai-required-note>span{color:#e9c391;margin-right:3px}.ai-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 20px}.ai-field{min-width:0}.ai-field-wide{grid-column:1/-1}.ai-field label{display:block;font-size:13px;line-height:1.65;color:#dce6da;margin-bottom:8px}.ai-required{margin-left:4px;color:#d9bc8d;font-size:12px}.ai-optional{font-size:10px;color:#8ba9a0;letter-spacing:.1px;font-weight:400;display:inline-block;margin-left:7px}.ai-field textarea,.ai-field select,.ai-chat-form textarea{width:100%;min-height:55px;border:1px solid #c0d1c329;border-radius:5px;background:#08191d9e;color:#f0f3ed;font-size:14px;line-height:1.6;padding:12px 14px;resize:vertical;transition:border-color .2s,box-shadow .2s;box-shadow:inset 0 2px 6px #00000010}.ai-field select{min-height:64px;appearance:auto}.ai-field select option{background:#11282b;color:#f0f3ed}.ai-field textarea:hover,.ai-field select:hover,.ai-chat-form textarea:hover{border-color:#c0d1c34f}.ai-field textarea:focus,.ai-field select:focus,.ai-chat-form textarea:focus{outline:0;border-color:#d9bc8d9e;box-shadow:0 0 0 3px #d9bc8d0c}.ai-form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:31px;padding-top:24px;border-top:1px solid var(--ai-line)}.ai-form-actions .button{font-size:13px;min-height:44px}.ai-page [data-ai-live-submit]:disabled{opacity:.42;cursor:not-allowed;transform:none}.ai-aside{padding:20px 0;position:sticky;top:25px}.ai-aside h2{font-size:25px;font-weight:450;letter-spacing:-.7px;line-height:1.3;margin:15px 0 18px;max-width:250px}.ai-aside p{font-size:13px;line-height:1.85;color:var(--ai-muted)}.ai-aside-rule{height:1px;background:linear-gradient(90deg,#e9c39140,transparent);margin:25px 0}.ai-aside dl{margin:0}.ai-aside dl>div{margin:0 0 22px}.ai-aside dt{font-size:12px;font-weight:550;color:#d8e4d8;margin-bottom:6px}.ai-aside dd{font-size:12px;line-height:1.8;color:#8da59f;margin:0}.ai-aside p.ai-memory-note{font-size:11px;color:#718e87;border-top:1px solid var(--ai-line);padding-top:18px;margin-top:26px;line-height:1.8}.ai-aside-link{display:inline-flex;gap:12px;color:#e9c391;font-size:12px;margin-top:20px}.ai-disclosure{display:flex;gap:12px;align-items:flex-start;margin-top:25px;padding:17px 18px;border:1px solid #abcab514;border-radius:6px;background:#ffffff02}.ai-disclosure-mark{display:grid;place-items:center;width:17px;height:17px;border:1px solid #aac0b751;border-radius:50%;font:italic 11px/1 Georgia,serif;color:#aac0b7;flex-shrink:0;margin-top:2px}.ai-disclosure p{font-size:11px;color:#94aba2;line-height:1.85}.ai-disclosure strong{font-weight:550;color:#bacdc1}.ai-page-links{display:flex;justify-content:space-between;gap:15px;padding-top:30px;margin-top:15px}.ai-page-links a{font-size:12px;color:#91a9a1}.ai-page-links a:hover{color:#e9c391}.ai-upload-unavailable{display:flex;align-items:center;gap:15px;padding:20px;margin-top:25px;border:1px dashed #b7cdb02d;border-radius:6px;background:#ffffff02}.ai-upload-icon{font-size:25px;color:#8aa69b;line-height:1}.ai-upload-unavailable strong{font-size:12px;font-weight:500;color:#c0d3c6}.ai-upload-unavailable p,.ai-file-note{font-size:11px;line-height:1.7;color:#8fa79c;margin-top:5px}.ai-review-group{padding:23px 0;border-top:1px solid var(--ai-line)}.ai-review-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:19px}.ai-review-title h3{font-size:15px;color:#d8dfcf;font-weight:500}.ai-review-group dl{margin:0;display:grid;gap:18px}.ai-review-group dl>div{display:grid;grid-template-columns:1fr 1.05fr;gap:20px}.ai-review-group dt{font-size:12px;color:#8fa69b;line-height:1.7}.ai-review-group dd{font-size:13px;color:#e2e9df;line-height:1.7;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.ai-file-note{margin:0 0 15px}.ai-request-panel{padding:35px;border:1px solid var(--ai-line);border-radius:10px;background:linear-gradient(125deg,#173331a1,#0e20238f)}.ai-request-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.ai-request-panel .ai-request-id{margin-top:23px;font-size:10px;color:#789b8c;line-height:1.8}.ai-request-id code{font-size:10px;overflow-wrap:anywhere;margin-left:7px}.ai-results{display:grid;gap:19px;margin-top:25px}.ai-output-section{padding:30px 34px;border:1px solid var(--ai-line);border-radius:9px;background:#1127287a}.ai-output-section h3{font-size:25px;letter-spacing:-.7px;line-height:1.3;margin:10px 0 23px;font-weight:450}.ai-response-text{font-size:14px;line-height:1.9;color:#cbd9ce;white-space:pre-wrap;overflow-wrap:anywhere}.ai-system-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--ai-line);padding-top:20px;margin-top:26px}.ai-system-actions>p{flex-basis:100%;font-size:12px;line-height:1.8;color:#91aa9c;margin-bottom:6px}.ai-system-actions .button{font-size:11px;min-height:38px}.ai-ai-badge{border:1px solid #e9c39120;border-radius:50%;width:192px;height:192px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;flex-shrink:0;background:radial-gradient(circle,#b9a26f0c,transparent 70%);box-shadow:0 0 0 12px #e9c39103,0 0 0 13px #e9c39108}.ai-ai-badge>span{font-size:28px;color:#e9c391;line-height:1.1;margin-bottom:14px}.ai-ai-badge strong{font-size:11px;font-weight:500;color:#d6d6bc}.ai-ai-badge small{font-size:9px;line-height:1.7;color:#91aa9c;margin-top:8px}.ai-chat-workspace{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:38px;align-items:start}.ai-conversation{border:1px solid var(--ai-line);border-radius:10px;background:linear-gradient(130deg,#18312d96,#0b1d229e);overflow:hidden;min-width:0}.ai-messages{padding:28px;min-height:285px;max-height:700px;overflow:auto;scrollbar-width:thin;scrollbar-color:#315149 transparent}.ai-chat-empty{padding:33px 10px 40px;text-align:center;max-width:510px;margin:auto}.ai-chat-empty>span{display:inline-block;font-size:30px;color:#e9c3919e;margin-bottom:22px}.ai-chat-empty h2{font-size:27px;line-height:1.35;letter-spacing:-.7px;font-weight:450;color:#cfddcb;margin:0 0 17px}.ai-chat-empty p{font-size:12px;line-height:1.8;color:#8ba99b;max-width:370px;margin:auto}.ai-message{padding:20px 22px;border:1px solid #c0d1c319;border-radius:8px;background:#081d216b;margin:0 0 17px}.ai-message-user{margin-left:38px;background:#dbbf8210;border-color:#e9c39125}.ai-message-assistant{margin-right:22px}.ai-message-label{display:block;color:#ccb891;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:9px}.ai-message-assistant .ai-message-label{color:#9ac8b5}.ai-message .ai-response-text{font-size:13px;line-height:1.85}.ai-chat-request{padding:10px 5px 15px;color:#a1b7a7;font-size:12px;line-height:1.8}.ai-chat-request .ai-text-button{margin-top:6px}.ai-chat-form{border-top:1px solid var(--ai-line);padding:24px;background:#07171b45}.ai-chat-form>label{display:block;font-size:12px;line-height:1.7;color:#c5d6c6;margin-bottom:10px}.ai-chat-form textarea{resize:vertical;min-height:95px;font-size:13px}.ai-chat-form textarea::placeholder{color:#719187;opacity:1}.ai-chat-compose-footer{display:flex;justify-content:space-between;align-items:center;gap:17px;margin-top:14px}.ai-chat-compose-footer>span{font-size:10px;line-height:1.7;color:#79988b;max-width:230px}.ai-chat-compose-footer .button{white-space:nowrap;font-size:12px}.ai-chat-aside h2{font-size:24px}.ai-chat-aside>p{font-size:12px}
@media(min-width:1600px){.ai-page{padding-top:78px}.ai-hero{margin-bottom:42px}.ai-form-panel{padding:38px}}
@media(max-width:1100px){.ai-workspace,.ai-chat-workspace{grid-template-columns:minmax(0,1fr) 220px;gap:26px}.ai-form-panel{padding:25px}.ai-hero-index{display:none}.ai-aside h2{font-size:23px}.ai-ai-badge{width:165px;height:165px}.ai-steps{padding:20px}.ai-steps li{font-size:9px}.ai-field-grid{gap:22px 16px}}
@media(max-width:850px){.ai-page{padding:43px 5% 32px}.ai-workspace,.ai-chat-workspace{grid-template-columns:1fr;gap:25px}.ai-aside{position:static;display:none}.ai-hero{gap:30px}.ai-hero h1{font-size:42px}.ai-ai-badge{width:140px;height:140px;box-shadow:none}.ai-ai-badge strong{font-size:10px}.ai-ai-badge small{font-size:8px}.ai-ai-badge>span{font-size:23px;margin-bottom:10px}.ai-hero p{font-size:14px}.ai-form-panel{padding:30px}.ai-connection{padding:16px}.ai-connection .ai-text-button{font-size:10px}.ai-steps li{font-size:10px}.ai-request-panel{padding:28px}.ai-output-section{padding:27px}}
@media(max-width:560px){.ai-page{padding:32px 5% 25px}.ai-hero{margin-bottom:27px;gap:15px}.ai-hero h1{font-size:35px;letter-spacing:-1.5px;margin:12px 0 15px}.ai-hero p{font-size:13px;line-height:1.8}.ai-kicker{font-size:9px;letter-spacing:1.8px}.ai-ai-badge{display:none}.ai-connection{gap:10px;flex-wrap:wrap;padding:14px;margin-bottom:22px}.ai-connection>div{flex-basis:80%}.ai-connection .ai-text-button{margin-left:17px}.ai-connection strong{font-size:12px}.ai-connection p{font-size:11px}.ai-steps{padding:18px 15px;gap:3px}.ai-steps li{font-size:8px;gap:7px;padding-right:4px;line-height:1.5}.ai-steps li:before{left:26px;right:3px;top:11px}.ai-step-number{width:23px;height:23px;font-size:9px}.ai-form-panel{padding:23px 19px}.ai-section-heading h2,.ai-request-panel h2{font-size:26px;line-height:1.3}.ai-section-heading p{font-size:12px}.ai-field-grid{grid-template-columns:1fr;gap:22px}.ai-field label{font-size:12px}.ai-field textarea,.ai-field select{font-size:16px;min-height:60px}.ai-field-wide{grid-column:auto}.ai-form-actions{margin-top:25px;padding-top:22px;gap:10px}.ai-form-actions .button{font-size:12px;padding:11px 14px}.ai-form-actions>.ai-text-button{font-size:11px}.ai-disclosure{gap:9px;padding:14px 12px;margin-top:20px}.ai-disclosure p{font-size:10px}.ai-page-links{flex-direction:column;gap:18px;padding-top:22px}.ai-page-links a{font-size:11px}.ai-review-group dl>div{grid-template-columns:1fr;gap:5px}.ai-review-group dt{font-size:11px}.ai-review-group dd{font-size:13px}.ai-review-group{padding:20px 0}.ai-review-title h3{font-size:14px}.ai-request-panel{padding:25px 20px}.ai-request-panel>p{font-size:12px}.ai-request-actions{gap:9px}.ai-request-actions .button{font-size:11px;padding:10px 13px}.ai-request-panel .ai-request-id{font-size:9px}.ai-request-id code{display:block;margin:5px 0 0}.ai-output-section{padding:25px 20px}.ai-output-section h3{font-size:22px}.ai-response-text{font-size:13px;line-height:1.9}.ai-upload-unavailable{padding:15px;gap:12px}.ai-messages{padding:18px 15px;min-height:275px;max-height:570px}.ai-chat-empty{padding:25px 0 35px}.ai-chat-empty h2{font-size:23px}.ai-chat-empty p{font-size:11px}.ai-chat-form{padding:20px 15px}.ai-chat-form textarea{font-size:16px;min-height:115px}.ai-chat-compose-footer{align-items:flex-end;gap:12px}.ai-chat-compose-footer>span{font-size:9px}.ai-chat-compose-footer .button{padding:11px 14px;font-size:11px}.ai-message{padding:17px}.ai-message-user{margin-left:13px}.ai-message-assistant{margin-right:8px}.ai-message .ai-response-text{font-size:12px}.ai-chat-page .ai-hero h1{font-size:36px}}
.ai-feedback{padding:15px 18px;margin:-10px 0 24px;border:1px solid #dca07d55;border-radius:6px;background:#dca07d0a;color:#ebc9ab;font-size:12px;line-height:1.8}.ai-feedback[hidden]{display:none}.ai-chat-receipt{font-size:10px;color:#789b8c;padding:10px 5px;line-height:1.8}.ai-chat-receipt .ai-file-note{font-size:10px}.ai-message-notice{background:#e9c39108;border-color:#e9c39122}
@media(prefers-reduced-motion:reduce){.ai-page{animation:none}.ai-page *{transition:none!important}}


/* AI response readability, active-work feedback, dictation, and image attachments */
.ai-response-text{
  font-size:16px;
  line-height:1.78;
  white-space:normal;
  overflow-wrap:anywhere
}
.ai-message .ai-response-text{font-size:15px;line-height:1.75}
.ai-response-text p{margin:0 0 .9em}
.ai-response-text p:last-child{margin-bottom:0}
.ai-response-text h3,.ai-response-text h4,.ai-response-text h5,.ai-response-text h6{
  margin:1.25em 0 .55em;
  color:#edf3ea;
  font-weight:560;
  letter-spacing:-.2px;
  line-height:1.35
}
.ai-response-text h3{font-size:1.2em}
.ai-response-text h4{font-size:1.08em}
.ai-response-text ul,.ai-response-text ol{margin:.65em 0 1em;padding-left:1.45em}
.ai-response-text li{margin:.36em 0;padding-left:.15em}
.ai-response-text strong{color:#eff4ec;font-weight:650}
.ai-response-text em{color:#dbe7de}
.ai-response-text code{
  font:500 .88em/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  background:#ffffff08;
  border:1px solid #ffffff0c;
  border-radius:4px;
  padding:.08em .35em;
  color:#e7d1aa
}
.ai-response-text pre{
  margin:1em 0;
  padding:14px 16px;
  overflow:auto;
  border:1px solid #ffffff12;
  border-radius:7px;
  background:#06171b;
  white-space:pre
}
.ai-response-text pre code{padding:0;border:0;background:none;color:#d7e3dc}
.ai-response-text blockquote{
  margin:1em 0;
  padding:.25em 0 .25em 1em;
  border-left:2px solid #e9c3917a;
  color:#aac0b7
}
.ai-request-id{margin-top:18px!important}
.ai-request-id summary{
  width:max-content;
  cursor:pointer;
  color:#708d83;
  font-size:10px;
  letter-spacing:.3px
}
.ai-request-id code{display:block;margin:8px 0 0!important;color:#77968b}

.ai-connection.is-working{
  border-color:#e9c3914d;
  background:linear-gradient(90deg,#e9c3910c,#8bc7be08,#e9c3910c);
  background-size:220% 100%;
  animation:aiConnectionSweep 3.4s ease-in-out infinite
}
.ai-connection.is-working strong{color:#e9c391}
.ai-connection.is-working .ai-status-dot{
  background:#e9c391;
  box-shadow:0 0 0 4px #e9c39116,0 0 18px #e9c39155;
  animation:aiPulse 1.25s ease-in-out infinite
}

.ai-chat-input-wrap{position:relative}
.ai-chat-input-wrap textarea{padding-right:92px}
.ai-chat-tools{
  position:absolute;
  right:10px;
  bottom:10px;
  display:flex;
  gap:6px;
  align-items:center
}
.ai-compose-tool{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid #b7cbbd28;
  border-radius:50%;
  background:#102428e8;
  color:#9db5aa;
  transition:transform .18s,border-color .18s,color .18s,background .18s,box-shadow .18s
}
.ai-compose-tool:hover{color:#e9c391;border-color:#e9c39155;transform:translateY(-1px)}
.ai-compose-tool:disabled{opacity:.35;cursor:not-allowed;transform:none}
.ai-compose-tool svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round
}
.ai-compose-tool.is-listening{
  color:#f1d39d;
  border-color:#e9c391a8;
  background:#e9c39117;
  box-shadow:0 0 0 5px #e9c3910b,0 0 22px #e9c3912d;
  animation:aiMicPulse 1.2s ease-in-out infinite
}
.ai-chat-compose-footer>span{max-width:390px}
.ai-chat-working{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin:4px 0 15px;
  padding:17px 18px;
  border:1px solid #8bc7be2c;
  border-radius:9px;
  background:linear-gradient(105deg,#8bc7be08,#e9c39106,#8bc7be08);
  background-size:220% 100%;
  animation:aiConnectionSweep 3.8s ease-in-out infinite
}
.ai-thinking-orb{
  position:relative;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#d5eee0 0 5%,#8bc7be55 22%,#173b3b 58%,#0a1c20 72%);
  box-shadow:inset 0 0 12px #d2efe244,0 0 22px #8bc7be18;
  animation:aiOrbBreathe 2s ease-in-out infinite
}
.ai-thinking-orb span,.ai-working-orb span{
  position:absolute;
  inset:50%;
  width:3px;
  height:3px;
  margin:-1.5px;
  border-radius:50%;
  background:#e9c391;
  transform-origin:0 0;
  animation:aiOrbit 2.3s linear infinite
}
.ai-thinking-orb span:nth-child(2),.ai-working-orb span:nth-child(2){animation-delay:-.8s}
.ai-thinking-orb span:nth-child(3),.ai-working-orb span:nth-child(3){animation-delay:-1.55s}
.ai-thinking-copy{min-width:0}
.ai-thinking-copy strong{
  display:block;
  font-size:14px;
  line-height:1.45;
  color:#dce8df;
  font-weight:570
}
.ai-thinking-copy p{margin:5px 0 7px;color:#93aea1;font-size:12px;line-height:1.65}
.ai-thinking-copy small{
  display:flex;
  align-items:center;
  gap:7px;
  color:#75968a;
  font-size:9px;
  letter-spacing:.3px;
  text-transform:uppercase
}
.ai-thinking-dots{display:inline-flex;gap:3px;margin-left:5px;vertical-align:middle}
.ai-thinking-dots i{
  width:3px;height:3px;border-radius:50%;background:#e9c391;
  animation:aiDot 1.1s ease-in-out infinite
}
.ai-thinking-dots i:nth-child(2){animation-delay:.15s}
.ai-thinking-dots i:nth-child(3){animation-delay:.3s}
.ai-live-pulse{
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#8bc7be;
  box-shadow:0 0 0 4px #8bc7be13;
  animation:aiPulse 1.35s ease-in-out infinite
}
.ai-chat-error,.ai-chat-uncertain{
  border:1px solid #d5a47a2b;
  border-radius:8px;
  padding:14px 16px;
  margin-bottom:14px;
  background:#d5a47a08
}

.ai-request-working{
  overflow:hidden;
  position:relative;
  border-color:#8bc7be32;
  background:
    radial-gradient(circle at 9% 12%,#8bc7be0d,transparent 28%),
    linear-gradient(128deg,#173331b0,#0b1e2298)
}
.ai-request-working:after{
  content:'';
  position:absolute;
  inset:-50% -20%;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 43%,#ffffff0350 50%,transparent 57%);
  transform:translateX(-55%);
  animation:aiPanelShine 4.8s ease-in-out infinite
}
.ai-working-head{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:22px;
  margin-bottom:30px
}
.ai-working-orb{
  position:relative;
  width:74px;
  height:74px;
  flex:0 0 74px;
  border-radius:50%;
  background:
    radial-gradient(circle at 34% 29%,#f0d8a9 0 4%,#8bc7be63 18%,#1c4442 45%,#0a1b20 72%);
  border:1px solid #8bc7be3d;
  box-shadow:inset 0 0 24px #e9c39120,0 0 0 8px #8bc7be06,0 0 34px #8bc7be16;
  animation:aiOrbBreathe 2.2s ease-in-out infinite
}
.ai-working-copy{font-size:14px!important;max-width:720px!important}
.ai-live-stages{
  position:relative;
  z-index:1;
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px
}
.ai-live-stages li{
  min-width:0;
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:11px 10px;
  border:1px solid #a7c4b713;
  border-radius:7px;
  background:#071a1d55;
  opacity:.46;
  transition:opacity .25s,border-color .25s,background .25s,transform .25s
}
.ai-live-stages li.is-done{opacity:.72;border-color:#8bc7be22}
.ai-live-stages li.is-active{
  opacity:1;
  border-color:#e9c39145;
  background:#e9c39108;
  transform:translateY(-2px);
  box-shadow:0 7px 24px #00000016
}
.ai-live-stage-mark{
  width:9px;
  height:9px;
  margin-top:3px;
  flex:0 0 9px;
  border:1px solid #8da79d69;
  border-radius:50%
}
.ai-live-stages li.is-done .ai-live-stage-mark{border-color:#8bc7be;background:#8bc7be}
.ai-live-stages li.is-active .ai-live-stage-mark{
  border-color:#e9c391;
  background:#e9c391;
  box-shadow:0 0 0 4px #e9c39111;
  animation:aiPulse 1.25s ease-in-out infinite
}
.ai-live-stages strong{
  display:block;
  font-size:10px;
  line-height:1.45;
  color:#bdcec2;
  font-weight:530
}
.ai-live-stages small{
  display:block;
  margin-top:3px;
  font-size:8px;
  line-height:1.4;
  color:#718e84;
  text-transform:uppercase;
  letter-spacing:.45px
}
.ai-working-track{
  position:relative;
  z-index:1;
  height:3px;
  margin:25px 0 18px;
  overflow:hidden;
  border-radius:99px;
  background:#8bc7be12
}
.ai-working-track span{
  position:absolute;
  top:0;bottom:0;
  width:34%;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,#8bc7be,#e9c391,#8bc7be,transparent);
  animation:aiTrack 2.6s ease-in-out infinite
}
.ai-working-live{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:9px;
  color:#809e93;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.45px
}
.ai-working-live strong{color:#9bb8ac;font-weight:580}
.ai-working-live>span:last-child{margin-left:auto}
.ai-request-working .ai-request-actions,.ai-request-working .ai-request-id{position:relative;z-index:1}

@keyframes aiPulse{0%,100%{transform:scale(.85);opacity:.7}50%{transform:scale(1.12);opacity:1}}
@keyframes aiSpin{to{transform:rotate(360deg)}}
@keyframes aiConnectionSweep{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes aiMicPulse{0%,100%{box-shadow:0 0 0 4px #e9c39109,0 0 15px #e9c3911c}50%{box-shadow:0 0 0 7px #e9c39110,0 0 24px #e9c3913d}}
@keyframes aiOrbBreathe{0%,100%{transform:scale(.96);filter:saturate(.9)}50%{transform:scale(1.04);filter:saturate(1.15)}}
@keyframes aiOrbit{from{transform:rotate(0deg) translateX(14px) rotate(0deg)}to{transform:rotate(360deg) translateX(14px) rotate(-360deg)}}
@keyframes aiDot{0%,100%{opacity:.28;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}
@keyframes aiPanelShine{0%,28%{transform:translateX(-55%)}72%,100%{transform:translateX(55%)}}
@keyframes aiTrack{0%{left:-34%}50%{left:45%}100%{left:100%}}

@media(max-width:850px){
  .ai-live-stages{grid-template-columns:1fr 1fr}
  .ai-live-stages li:last-child{grid-column:1/-1}
  .ai-working-head{align-items:flex-start}
  .ai-working-orb{width:58px;height:58px;flex-basis:58px}
}
@media(max-width:560px){
  .ai-response-text{font-size:14.5px;line-height:1.75}
  .ai-message .ai-response-text{font-size:14px}
  .ai-chat-input-wrap textarea{padding-right:84px}
  .ai-compose-tool{width:32px;height:32px}
  .ai-chat-compose-footer{flex-wrap:wrap}
  .ai-chat-compose-footer>span{max-width:none;flex:1 1 100%}
  .ai-chat-working{padding:14px;gap:11px}
  .ai-thinking-orb{width:32px;height:32px;flex-basis:32px}
  .ai-thinking-copy strong{font-size:13px}
  .ai-live-stages{grid-template-columns:1fr}
  .ai-live-stages li:last-child{grid-column:auto}
  .ai-working-head{gap:14px}
  .ai-working-orb{width:48px;height:48px;flex-basis:48px}
  .ai-working-live{flex-wrap:wrap}
  .ai-working-live>span:last-child{margin-left:0;flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){
  .ai-connection.is-working,.ai-status-dot,.ai-compose-tool.is-listening,
  .ai-chat-working,.ai-thinking-orb,.ai-thinking-orb span,.ai-working-orb,.ai-working-orb span,
  .ai-thinking-dots i,.ai-live-pulse,.ai-request-working:after,.ai-live-stages li.is-active .ai-live-stage-mark,
  .ai-working-track span{animation:none!important}
}

.ai-chat-page .ai-hero{padding-bottom:28px}.ai-chat-page .ai-hero h1{font-size:clamp(32px,4vw,54px)}.ai-chat-page .ai-chat-workspace{grid-template-columns:minmax(0,1fr) 250px;gap:32px}.ai-chat-page .ai-conversation{border-radius:24px;overflow:hidden}.ai-chat-form{padding:24px}.ai-chat-form label{display:block;margin-bottom:14px}.ai-attachments{display:grid;gap:12px;margin-top:16px}.ai-attachment{border:1px solid rgba(126,194,184,.25);padding:16px;border-radius:12px;background:rgba(126,194,184,.05)}.ai-attachment summary{cursor:pointer;overflow-wrap:anywhere}.ai-attachment summary span{font-size:12px;opacity:.65;margin-left:12px}.ai-attachment label{margin-top:16px}.ai-attachment textarea{width:100%;padding:14px;background:#0b1a1e;color:#eee;border:1px solid #365054;border-radius:10px;resize:vertical;font:inherit}.ai-attachment button{margin-top:12px}.ai-chat-form .ai-file-note{font-size:12px;line-height:1.7;margin:14px 0 20px;color:#9db1ae}
@media(max-width:800px){.ai-chat-page .ai-chat-workspace{grid-template-columns:1fr}.ai-chat-form{padding:20px}}

/* Conversation and prescription reading surfaces. */
.ai-reading-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:20px;padding:16px 24px;border-bottom:1px solid #ffffff12;flex-wrap:wrap}
.ai-reading-toolbar>span{margin-right:auto;font-size:12px;color:#a8bdb6}
.ai-chat-page .ai-gary-heading{display:flex;align-items:center;justify-content:flex-start;gap:24px;padding-bottom:24px}
.ai-chat-page .ai-gary-heading h1{font-size:36px;margin:0 0 8px}
.ai-chat-page .ai-gary-heading p{margin:0;font-size:15px}
.ai-gary-orb{flex:0 0 84px;height:84px;padding:5px;border-radius:50%;background:linear-gradient(135deg,#b4ddc5,#c99a61,#406e63);box-shadow:0 0 30px #83c5aa22}
.ai-gary-orb img{width:100%;height:100%;object-fit:cover;object-position:center 25%;border-radius:50%}
.ai-chat-page .ai-chat-compose-footer{justify-content:flex-end;margin:14px 0 0}
.ai-privacy-note{font-size:12px;color:#9db1ae;line-height:1.6;margin:8px 0 0}
.ai-chat-page .ai-file-note{margin:16px 0 0}
.ai-response-text{overflow-wrap:anywhere}
.ai-response-text p{margin:0 0 1.15em}
.ai-response-text h3,.ai-response-text h4{font-size:clamp(21px,2vw,27px);line-height:1.4;margin:1.6em 0 .7em}
.ai-response-text h3:first-child,.ai-response-text h4:first-child{margin-top:0}
.ai-response-text li{margin:0 0 .65em}
.ai-sources{margin-top:28px;font-size:13px;line-height:1.7;opacity:.85}
.ai-sources summary{cursor:pointer;padding:12px 0}
[data-reading-theme="light"] .ai-messages,[data-reading-theme="light"] .ai-output-section{background:#f4f2ea;color:#293d36}
[data-reading-theme="light"] .ai-message{background:transparent;border-color:#29473d22;color:#293d36}
[data-reading-theme="light"] .ai-message-user{background:#e5eae1}
[data-reading-theme="light"] .ai-response-text,[data-reading-theme="light"] .ai-response-text :is(h3,h4,strong,em,li,p),[data-reading-theme="light"] .ai-output-section>h3,[data-reading-theme="light"] .ai-chat-empty h2{color:#293d36}
[data-reading-theme="light"] :is(.ai-message-label,.ai-output-section>.ai-kicker,.ai-chat-empty p){color:#516b60}
[data-reading-theme="light"] .ai-response-text code{background:#dfe5da;color:#344e40}
.ai-chat-page .ai-message .ai-response-text{font-size:17px;line-height:1.85;max-width:74ch}
.ai-output-section{padding:clamp(24px,4vw,48px);border-radius:20px}
.ai-output-section .ai-response-text{font-size:17px;line-height:1.85;max-width:78ch}
.ai-conversation.is-expanded{display:flex;flex-direction:column;width:100%;height:100dvh;background:#102422;border-radius:0;overflow:auto}
.ai-conversation.is-expanded .ai-messages{flex:1;min-height:100px;max-height:none;overflow:auto}
.ai-conversation.is-expanded .ai-chat-form{flex:none}
.ai-conversation.is-expanded .ai-reading-toolbar{flex:none}
@media(max-width:800px){
 .ai-chat-page{padding:16px 14px 24px}
 .ai-chat-page .ai-gary-heading{gap:14px;padding-bottom:12px}
 .ai-chat-page .ai-gary-heading h1{font-size:25px;margin:0}
 .ai-chat-page .ai-gary-heading p,.ai-chat-page .ai-chat-aside{display:none}
 .ai-gary-orb{flex-basis:46px;height:46px;padding:3px}
 .ai-chat-page .ai-connection{padding:10px 14px;margin-bottom:12px;font-size:12px}
 .ai-chat-page .ai-connection.is-ready p{display:none}
 .ai-chat-page .ai-messages{min-height:100px;max-height:42dvh;padding:18px}
 .ai-chat-page .ai-chat-empty{padding:12px}
 .ai-chat-page .ai-chat-empty>span,.ai-chat-page .ai-chat-empty p{display:none}
 .ai-chat-page .ai-chat-empty h2{font-size:18px;margin:0}
 .ai-chat-page .ai-chat-form{padding:16px}
 .ai-chat-page .ai-chat-form label{margin-bottom:10px}
 .ai-chat-page .ai-message{padding:18px;margin-bottom:18px}
 .ai-reading-toolbar{padding:12px 16px;gap:14px}
 .ai-reading-toolbar>span{display:none}
 .ai-chat-page .ai-message .ai-response-text,.ai-output-section .ai-response-text{font-size:16px;line-height:1.75}
 .ai-conversation.is-expanded .ai-messages{max-height:none}
}
.ai-table-scroll{overflow-x:auto;margin:24px 0;border:1px solid #889e8d55;border-radius:10px}
.ai-table-scroll table{width:100%;border-collapse:collapse;text-align:left;font-size:15px;line-height:1.6}
.ai-table-scroll th,.ai-table-scroll td{padding:14px 18px;border-bottom:1px solid #889e8d33;min-width:140px}
.ai-table-scroll th{background:#819a861a;font-weight:700}
.ai-output-accordion{padding:0;overflow:hidden}
.ai-output-accordion>summary{padding:24px 28px;cursor:pointer;list-style:none;position:relative;padding-right:60px}
.ai-output-accordion>summary::-webkit-details-marker{display:none}
.ai-output-accordion>summary::after{content:'+';position:absolute;right:28px;top:32px;font-size:24px}
.ai-output-accordion[open]>summary::after{content:'−'}
.ai-output-accordion>summary h3{margin:8px 0 0;font-size:22px;line-height:1.4;color:inherit}
.ai-output-accordion>.ai-response-text,.ai-output-accordion>.ai-system-actions{padding:0 28px 28px;max-width:none}
.ai-subsection{border-top:1px solid #889e8d33;padding:0 0 12px}
.ai-subsection>summary{cursor:pointer;font-weight:650;font-size:20px;line-height:1.5;padding:20px 0}
.ai-subsection>p,.ai-subsection>ul,.ai-subsection>ol{margin-bottom:20px}
@media(max-width:600px){.ai-output-accordion>summary{padding:20px 48px 20px 20px}.ai-output-accordion>summary h3{font-size:19px}.ai-output-accordion>.ai-response-text{padding:0 20px 20px}.ai-subsection>summary{font-size:18px}}

.ai-conversation.is-expanded{position:fixed;inset:0;z-index:1000;border-radius:0!important}

[data-reading-theme="light"] .ai-response-text a{color:#215b49;text-decoration:underline;text-underline-offset:.18em}
[data-reading-theme="light"] .ai-response-text a:visited{color:#584666}

.ai-companion-link{display:inline-block;margin-top:14px;color:#e9c391;font-size:14px;text-decoration:underline;text-underline-offset:4px}

/* Expanded chat stays above page transforms with a persistent exit toolbar. */
.ai-conversation.is-expanded{box-sizing:border-box;inset:16px;margin:0;width:calc(100vw - 32px);height:calc(100dvh - 32px);max-width:none;max-height:none;overflow:hidden;border-radius:18px!important;padding:0;color:#eff3eb}
.ai-conversation.is-expanded::backdrop{background:#061312d9}
.ai-conversation.is-expanded .ai-reading-toolbar{position:sticky;top:0;z-index:2;background:#102422;padding:16px;flex-wrap:wrap}
.ai-conversation.is-expanded .ai-chat-form{max-height:42dvh;overflow:auto}
@media(max-width:600px){.ai-conversation.is-expanded{inset:8px;width:calc(100vw - 16px);height:calc(100dvh - 16px)}.ai-conversation.is-expanded .ai-reading-toolbar{padding:10px}}

.ai-companion-link{padding:12px 18px;border:1px solid #b6a37577;border-radius:999px;text-decoration:none;background:#173e36;font-weight:650}
