/* Wire 3 supplies the components and dark theme; these rules compose the app. */
html[data-theme="dark"] {
  --color-page-background: #171717;
  --color-content: #d5d5d5;
  --color-solid: #171717;
}
body { margin: 0; }
.assistant-layout { width: 100%; min-width: 0; }
.assistant-layout .navbar .right-menu { margin-left: auto; }
.assistant-layout > .row { display: block; }
.assistant-layout > .row > .columns { min-width: 0; }
#page-wrapper { max-width: 1200px; margin: 0 auto; padding: 56px 24px 24px; }
#page-wrapper .lgc-container { padding: 0; }
#page-wrapper .row { gap: 28px; }
#page-wrapper .row:last-child .card { margin-bottom: 0; }
#page-wrapper h3 { font-size: clamp(28px, 4vw, 38px); line-height: 1.3; margin: 0 0 32px; }
#page-wrapper h4 { font-size: 20px; margin: 0 0 24px; }
#page-wrapper p { color: #aaa; line-height: 1.8; margin-bottom: 20px; }
#page-wrapper strong { display: block; margin-bottom: 8px; color: #ececec; }
#page-wrapper ul { padding-left: 20px; }
#page-wrapper li { margin: 12px 0; line-height: 1.7; }
.home-launch { min-width: 0; }
.wire-section-title {
  margin: 0 0 10px !important; color: #cfcfcf;
  font-size: 15px !important; font-weight: 400; letter-spacing: 0; text-transform: uppercase;
}
.assistant-intro {
  display: flex; gap: 18px; margin-bottom: 18px;
  border-top: 3px solid #1e9bd7 !important;
}
.assistant-avatar {
  display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px;
  color: #fff; background: #1e9bd7; font-size: 19px;
}
.assistant-greeting { min-width: 0; }
.assistant-greeting h4 { margin: 5px 0 5px !important; font-size: 21px !important; }
#page-wrapper .assistant-greeting p { margin: 0 0 12px; line-height: 1.55; }
.assistant-status {
  color: #8b8b8b; font-size: 11px; font-weight: 700;
  letter-spacing: 1.2px; text-transform: uppercase;
}
.status-dot {
  display: inline-block; width: 7px; height: 7px; margin-right: 7px;
  border-radius: 50%; background: #4caf50; box-shadow: 0 0 8px rgba(76, 175, 80, .8);
}
.capability-label { margin-bottom: 7px; color: #777; font-size: 10px; font-weight: 700; letter-spacing: 1.1px; text-transform: uppercase; }
.capability-chips { display: flex; flex-wrap: wrap; gap: 7px; }
.capability-chips span {
  padding: 5px 9px; border: 0; border-radius: 0;
  color: #ddd; background: #555; font-size: 11px;
}
#chatbot-form-home {
  display: flex; gap: 0; margin-bottom: 26px; padding: 6px;
  background: #242424; border: 1px solid #494949;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .22);
}
#chatbot-form-home:focus-within { border-color: #777; box-shadow: 0 0 0 2px rgba(255, 255, 255, .06); }
#chatbot-form-home input {
  flex: 1; min-width: 0; width: 100%; height: 50px; margin: 0; padding: 0 14px;
  border: 0; border-radius: 0; color: #eee; background: transparent; box-shadow: none;
}
#chatbot-form-home input:focus { border: 0; outline: 0; box-shadow: none; }
#chatbot-form-home button {
  display: inline-flex; align-items: center; gap: 10px;
  margin: 0; height: 50px; padding: 0 22px; border: 1px solid #4caf50;
  border-radius: 0; background: #4caf50; color: #101010;
  font-family: inherit; font-size: 14px; font-weight: 700;
  letter-spacing: 2px; text-transform: uppercase; box-shadow: none;
  cursor: pointer;
}
#chatbot-form-home button:hover { border-color: #66bb6a; background: #66bb6a; color: #101010; }
#chatbot-form-home button:focus-visible { outline: 2px solid #4caf50; outline-offset: 3px; }
.prompt-heading { margin-top: 4px !important; }
.prompt-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
#page-wrapper .prompt-card {
  display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 10px 12px;
  color: #c9c9c9;
  line-height: 1.35; text-decoration: none; transition: border-color .15s, background .15s, transform .15s;
}
#page-wrapper .prompt-card svg { flex: 0 0 15px; color: #d84d3d; }
#page-wrapper .prompt-card:hover {
  border-color: #555; color: #fff; background: #292929; transform: translateY(-1px);
}
.prompt-blue { border-top: 2px solid #1e9bd7 !important; }
.prompt-red { border-top: 2px solid #d84d3d !important; }
.prompt-orange { border-top: 2px solid #f39c12 !important; }
.prompt-purple { border-top: 2px solid #bd18b8 !important; }
/* Let the body's grid-textured background continue through the footer instead of wire-next's flat .bg-solid. */
.assistant-footer, .assistant-footer .bg-solid { background: transparent; }
.assistant-footer > br { display: none; }
.assistant-footer a.text-light { color: #aaa; }
.assistant-footer a.text-light:hover { color: #eee; }
.assistant-footer p { color: #888; }
@media (max-width: 600px) {
  #page-wrapper { padding: 32px 18px; }
  #page-wrapper .card { padding: 20px; }
  .prompt-grid { grid-template-columns: 1fr; }
  #chatbot-form-home button { padding: 0 16px; }
  #chatbot-form-home button span { display: none; }
}

#page-wrapper .home-faq { border-top: 3px solid #d84d3d; }
#page-wrapper .home-faq p:last-child { margin-bottom: 0; }

/* Let the shared footer content blend into the full-width dark background. */
.assistant-footer div {
  background: transparent !important;
  box-shadow: none;
}

/* Custom components need explicit light-theme contrast; Wire handles their base cards/layout. */
html[data-theme="light"] #page-wrapper p { color: #595959; }
html[data-theme="light"] #page-wrapper strong { color: #303030; }
html[data-theme="light"] .wire-section-title { color: #555; }
html[data-theme="light"] .assistant-status,
html[data-theme="light"] .capability-label { color: #666; }
html[data-theme="light"] .capability-chips span {
  color: #333;
  background: #e4e4e4;
  border: 1px solid #ccc;
}
html[data-theme="light"] #chatbot-form-home {
  background: #fff;
  border-color: #aaa;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .1);
}
html[data-theme="light"] #chatbot-form-home:focus-within {
  border-color: #555;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, .08);
}
html[data-theme="light"] #chatbot-form-home input { color: #222; }
html[data-theme="light"] #chatbot-form-home input::placeholder { color: #777; }
html[data-theme="light"] #page-wrapper .prompt-card { color: #444; }
html[data-theme="light"] #page-wrapper .prompt-card:hover {
  color: #111;
  background: #f1f1f1;
  border-color: #999;
}
html[data-theme="light"] .assistant-footer a.text-light { color: #555; }
html[data-theme="light"] .assistant-footer a.text-light:hover { color: #111; }
html[data-theme="light"] .assistant-footer p { color: #666; }
