/* Zeovoice v198 | shared public H1 gradient and guided workforce Builder.
   This layer is additive, cache-versioned, and isolated from authenticated members. */

/* Apply the homepage gradient only to deliberate H1 blue highlights. */
body:not(.page-login):not(.page-register) main h1 :is(.z46-hero-emphasis,.z198-gradient-word),
body.page-build main .z41-build-copy h1 .z198-gradient-word,
body.page-pilot main .pilot-hero h1 .z198-gradient-word {
  color:#62dcff!important;
  background-image:linear-gradient(96deg,#6defff 0%,#48caff 38%,#4f91ff 78%,#7c72ff 112%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:none!important;filter:none!important;
  opacity:1!important;mix-blend-mode:normal!important;
}
body.page-build .z41-build-copy h1 .z46-underline {
  position:relative!important;display:inline-block!important;
  isolation:isolate!important;padding-bottom:.07em!important;
}
body.page-build .z41-build-copy h1 .z46-underline::after {
  content:""!important;display:block!important;position:absolute!important;
  left:-.015em!important;right:-.03em!important;bottom:-.07em!important;
  width:auto!important;height:.084em!important;min-height:5px!important;
  border-radius:100px!important;background:linear-gradient(90deg,#2fe8ff,#4b8bff,#7b6dff)!important;
  box-shadow:0 4px 17px rgba(43,190,255,.32)!important;z-index:-1!important;
}

/* Preserve desktop hero artwork while giving the conversational surface its own hierarchy. */
body.page-build .z41-builder-card {
  padding:clamp(22px,2.2vw,32px)!important;
  background:linear-gradient(160deg,#fff 0%,#f7fbff 100%)!important;
  border:1px solid rgba(209,231,250,.9)!important;
  box-shadow:0 27px 85px rgba(1,17,46,.23)!important;
  border-radius:28px!important;min-width:0!important;
}
body.page-build .z41-build-layout{align-items:start!important}
body.page-build .z41-build-copy{min-width:0!important}
body.page-build .z41-builder-card :is(button,input,textarea):focus-visible,
body.page-build .z198-test-shell :is(button,input,textarea):focus-visible {
  outline:3px solid #12a6e5!important;outline-offset:3px!important;
}
body.page-build .z41-builder-card .z42-build-step-rail {
  margin-bottom:14px!important;
}
body.page-build .z198-builder-presence {
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:0 0 11px;margin:0 0 12px;border-bottom:1px solid #dbe9f3;
}
body.page-build .z198-builder-presence>span {
  display:inline-flex;align-items:center;gap:8px;
  color:#4c6680;font-size:11.5px;line-height:1.35;font-weight:760;
}
body.page-build .z198-builder-presence>span::before{
  content:"";height:7px;width:7px;flex:0 0 7px;border-radius:50%;
  background:#0cc89c;box-shadow:0 0 0 4px rgba(12,200,156,.13);
}
body.page-build #builder-speak-toggle {
  background:#eff8ff;border:1px solid #cbdff1;border-radius:10px;
  color:#11689f;font-size:11.5px;font-weight:830;padding:9px 11px;
  min-height:35px;cursor:pointer;white-space:nowrap;
}
body.page-build #builder-speak-toggle[aria-pressed=true]{
  color:#fff;background:#085eae;border-color:#085eae;
}
body.page-build .z198-builder-chat {
  height:129px;min-height:86px;overflow-y:auto;overscroll-behavior:contain;
  display:flex;flex-direction:column;gap:9px;padding:11px;
  margin:0 0 12px;border:1px solid #d9e9f5;border-radius:16px;
  background:linear-gradient(160deg,#f0f8ff,#fbfdff);
  scrollbar-width:thin;scrollbar-color:#b2cde2 transparent;
}
body.page-build .z198-chat-message{
  max-width:95%;display:flex;flex-direction:column;gap:3px;align-self:flex-start;
  padding:9px 11px;border-radius:12px 12px 12px 3px;
  border:1px solid #d5e6f3;background:#fff;color:#294861;
  font-size:12px;line-height:1.48;overflow-wrap:anywhere;
}
body.page-build .z198-chat-message b{
  font-size:9px;letter-spacing:.09em;color:#067eaa;text-transform:uppercase;
}
body.page-build .z198-chat-message[data-who=user]{
  background:linear-gradient(135deg,#0b5da9,#1688c4);
  color:#fff;border-color:#147abc;align-self:flex-end;
  border-radius:12px 12px 3px 12px;
}
body.page-build .z198-chat-message[data-who=user] b{color:#b1efff}
body.page-build .z198-builder-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
body.page-build .z198-builder-suggestions button{
  border:1px solid #c8e1f2;background:#f6fbff;color:#166184;
  border-radius:999px;padding:7px 10px;min-height:32px;
  font-size:11px;line-height:1.25;font-weight:750;cursor:pointer;
}
body.page-build .z198-builder-suggestions button:hover{
  background:#e5f7ff;border-color:#84cfe9;
}
body.page-build .z198-conversation-compose label{
  display:block;font-size:11.5px;font-weight:810;color:#274760;margin:0 0 5px;
}
body.page-build .z198-conversation-compose>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px}
body.page-build .z198-conversation-compose input{
  min-width:0;width:100%;box-sizing:border-box;height:42px;
  padding:0 11px;font-size:12.5px;color:#1a3852;background:#fff;
  border:1px solid #caddea;border-radius:10px;
}
body.page-build .z198-conversation-compose button{
  min-height:42px;border-radius:10px;cursor:pointer;
  border:1px solid #cbdfea;background:#ecf7ff;color:#0d5787;
  padding:8px 11px;font-size:12px;font-weight:850;
}
body.page-build #builder-chat-send{
  color:#fff;background:linear-gradient(110deg,#0867be,#009bd1);
  border-color:#087abd;
}
body.page-build #builder-chat-voice[aria-pressed=true]{
  background:#d6f8fa;border-color:#15b6c4;color:#09627b;
}
body.page-build #builder-status {
  min-height:16px;margin:8px 0 0!important;font-size:11.5px!important;
  line-height:1.4!important;color:#3a708c!important;
}
body.page-build .z198-builder-mini-pilot {
  display:inline-flex;align-items:center;gap:4px;margin:11px 0 0;
  font-size:12px;font-weight:820;text-decoration:none;color:#0874b9;
}
body.page-build .z198-builder-mini-pilot:hover{text-decoration:underline}
/* The generated contract becomes a real interactive browser test surface. */
body.page-build .z198-test-shell{
  margin:28px 0 9px;padding:25px;border-radius:22px;
  border:1px solid #d5e6f3;background:linear-gradient(152deg,#f9fdff,#eef7ff);
  box-shadow:inset 0 1px #fff;
}
body.page-build .z198-test-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;
}
body.page-build .z198-test-head>div>span{
  display:block;color:#0182af;font-size:10px;font-weight:930;letter-spacing:.13em;margin-bottom:5px;
}
body.page-build .z198-test-head h3 {
  margin:0 0 7px;color:#0b2949;font-weight:870;
  font-size:clamp(22px,2.2vw,31px);line-height:1.18;letter-spacing:-.034em;
}
body.page-build .z198-test-head p{
  color:#506c86;max-width:610px;font-size:13px;line-height:1.65;margin:0;
}
body.page-build .z198-test-tag {
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  color:#1b6f9c;background:#e5f5fc;border:1px solid #c6e2f2;
  border-radius:99px;font-size:9px;font-weight:850;letter-spacing:.06em;
  padding:8px 12px;
}
body.page-build .z198-test-main{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:15px;align-items:start;
}
body.page-build .z198-test-side {
  background:#fff;border:1px solid #d8e6f1;border-radius:16px;
  padding:19px;min-width:0;
}
body.page-build .z198-test-side>label{
  display:block;font-size:12px;font-weight:840;color:#274763;margin-bottom:9px;
}
body.page-build #builder-test-request {
  display:block;box-sizing:border-box;width:100%;min-height:104px;
  border:1px solid #cddfeb;background:#fbfdff;color:#1c3d59;
  border-radius:12px;resize:vertical;padding:12px;font:500 13px/1.6 inherit;
  font-family:inherit;
}
body.page-build .z198-test-presets{
  display:flex;flex-wrap:wrap;gap:7px;margin:12px 0;
}
body.page-build .z198-test-presets button {
  min-height:33px;padding:8px 11px;border-radius:10px;background:#edf7fc;
  border:1px solid #cfe5f1;color:#14668f;cursor:pointer;font-size:11px;font-weight:760;
}
body.page-build .z198-test-presets button.active{
  color:#fff;background:#116bb2;border-color:#116bb2;
}
body.page-build .z198-test-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body.page-build .z198-test-controls button{
  min-height:43px;padding:10px 13px;font-size:12px;font-weight:830;
  border-radius:11px;border:1px solid #c7dfee;color:#176086;background:#edf8ff;cursor:pointer;
}
body.page-build #builder-test-run{
  color:#fff;border-color:#0879c7;background:linear-gradient(110deg,#1765c9,#149ac6);
  box-shadow:0 9px 18px rgba(23,114,193,.18);
}
body.page-build .z198-test-status{
  display:block;font-size:11px;line-height:1.55;min-height:19px;margin:9px 0 0;
  color:#4e6d88;
}
body.page-build .z198-test-result h4{
  margin:0 0 11px;font-size:16px;letter-spacing:-.02em;color:#183858;
}
body.page-build .z198-decision {
  padding:13px 15px;border:1px solid #d9e7f1;border-radius:12px;
  background:#f5fafd;min-height:110px;
}
body.page-build .z198-decision strong{
  display:block;color:#18547c;font-weight:880;font-size:12px;margin-bottom:5px;
}
body.page-build .z198-decision p{
  margin:0;font-size:12px;line-height:1.6;color:#385973;
}
body.page-build .z198-decision[data-outcome=approve]{
  border-color:#f2d59e;background:#fff8e9;
}
body.page-build .z198-decision[data-outcome=approved]{
  border-color:#b4e7d5;background:#ecfff7;
}
body.page-build .z198-decision[data-outcome=denied]{
  border-color:#e6c1bd;background:#fff4f2;
}
body.page-build #builder-approval[hidden]{display:none!important}
body.page-build #builder-approval{
  margin-top:11px;padding:12px;border-radius:13px;
  background:#fff9ed;border:1px solid #ecd8ad;
}
body.page-build #builder-approval b{
  display:block;color:#86580e;font-size:12px;line-height:1.5;margin:0 0 9px;
}
body.page-build #builder-approval button{
  margin:0 6px 0 0;min-height:36px;border-radius:9px;padding:8px 11px;
  font-size:11px;font-weight:850;cursor:pointer;border:1px solid #c9c2a9;
  background:#fff;color:#705328;
}
body.page-build #builder-approval button[data-builder-decision=approve]{
  border-color:#12a68d;color:#fff;background:#078c78;
}
body.page-build .z198-evidence-heading{
  margin:20px 0 9px;color:#274660;font-size:11px;font-weight:850;letter-spacing:.07em;
}
body.page-build #builder-evidence{
  margin:0;padding:0;list-style:none;display:grid;gap:7px;
}
body.page-build #builder-evidence li{
  display:grid;grid-template-columns:75px minmax(0,1fr);gap:9px;
  color:#43627a;font-size:11px;line-height:1.45;
  padding:8px 10px;border:1px solid #dceaf3;background:#f9fcff;border-radius:8px;
}
body.page-build #builder-evidence li b{color:#116284}
body.page-build .z198-handoff{
  margin-top:22px;padding:20px;border-radius:18px;
  background:linear-gradient(118deg,#051d3d,#0b3868 67%,#0b548c);
  border:1px solid rgba(60,171,238,.2);
  display:flex;align-items:center;justify-content:space-between;gap:19px;color:#fff;
}
body.page-build .z198-handoff b{display:block;font-size:17px;margin-bottom:5px;line-height:1.3}
body.page-build .z198-handoff p{margin:0;color:#d2eafa;font-size:12.5px;line-height:1.6}
body.page-build .z198-handoff a{
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
  white-space:nowrap;border-radius:11px;min-height:45px;padding:11px 17px;
  background:linear-gradient(120deg,#16caf0,#4187f4);color:#fff;font-size:12px;
  font-weight:880;box-shadow:0 9px 25px rgba(3,12,37,.18);
}
body.page-build .z198-build-editor{margin-top:13px}
body.page-build .z198-build-editor summary{
  color:#116d98;font-size:12px;font-weight:830;cursor:pointer;
  margin:5px 0 11px;
}
body.page-build .z198-edit-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
body.page-build .z198-edit-fields label{font-size:11px;color:#345876;font-weight:790;min-width:0}
body.page-build .z198-edit-fields input{
  margin-top:6px;box-sizing:border-box;width:100%;height:40px;
  border:1px solid #cadfec;border-radius:9px;padding:0 9px;
  color:#173d5d;background:#fff;font-size:12px;
}
body.page-build #builder-edit-apply{
  margin-top:12px;min-height:40px;padding:10px 14px;border-radius:10px;
  border:1px solid #086fad;background:#076db3;color:white;font-weight:850;
  font-size:12px;cursor:pointer;
}
@media(max-width:1100px){
  body.page-build .z198-test-main{grid-template-columns:1fr}
  body.page-build .z198-edit-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.page-build .z198-handoff{align-items:flex-start}
}
@media(max-width:760px){
  body:not(.page-login):not(.page-register) main h1 :is(.z46-hero-emphasis,.z198-gradient-word){
    background-image:linear-gradient(96deg,#b0fbff 0%,#73e8ff 38%,#78baff 78%,#b5a7ff 112%)!important;
  }
  body.page-build .z41-builder-card{padding:20px!important;border-radius:21px!important}
  body.page-build .z198-builder-presence{flex-wrap:wrap}
  body.page-build .z198-builder-chat{height:135px}
  body.page-build .z198-conversation-compose>div{grid-template-columns:minmax(0,1fr) auto}
  body.page-build #builder-chat-voice{grid-column:2}
  body.page-build #builder-chat-send{grid-column:2}
  body.page-build .z198-conversation-compose input{grid-column:1;grid-row:1 / span 2;height:90px}
  body.page-build .z198-test-shell{padding:17px;margin:20px 0 8px}
  body.page-build .z198-test-head{flex-direction:column;gap:10px}
  body.page-build .z198-test-side{padding:15px}
  body.page-build .z198-edit-fields{grid-template-columns:1fr}
  body.page-build .z198-handoff{flex-direction:column;align-items:stretch;padding:18px}
  body.page-build .z198-handoff a{width:100%;box-sizing:border-box}
  body.page-build .z198-test-controls button{flex:1 1 auto}
}
@media(max-width:360px){
  body.page-build .z198-chat-message{font-size:11.5px}
  body.page-build .z198-builder-suggestions button{font-size:10px}
  body.page-build .z198-test-shell{padding:14px}
}
@media(prefers-reduced-motion:reduce){
  body.page-build .z41-builder-card *,
  body.page-build .z198-test-shell * {scroll-behavior:auto!important;animation-duration:0s!important}
}
/* Proof Pilot handoff is compact and subordinate to its actual form. */
body.page-pilot .z198-pilot-handoff {
  border:1px solid #cde4f2;border-radius:14px;padding:13px 15px;
  background:linear-gradient(135deg,#f0faff,#f8fcff);
  margin-bottom:16px;color:#29455e;box-shadow:0 8px 21px rgba(0,43,91,.06);
}
body.page-pilot .z198-pilot-handoff>span{
  display:block;font-size:9px;letter-spacing:.12em;font-weight:900;color:#087fa9;margin:0 0 5px;
}
body.page-pilot .z198-pilot-handoff>strong{
  display:block;font-size:14px;font-weight:850;color:#123653;line-height:1.36;
}
body.page-pilot .z198-pilot-handoff>p{
  margin:6px 0 7px!important;color:#4a6780!important;
  font-size:11px!important;line-height:1.5!important;
}
body.page-pilot .z198-pilot-handoff>a{
  color:#087aa8;font-size:11px;font-weight:850;text-decoration:underline;text-underline-offset:3px;
}
/* The form remains readable even when Pilot hero uses saturated blue artwork. */
body.page-pilot main .pilot-hero h1 em.z198-gradient-word{
  text-decoration:none!important;font-style:normal!important;
}
/* Progressive Builder guidance: visible invitation, compact closed state.
   The optional conversation expands inside the hero on demand. */
body.page-build details.z198-builder-conversation {
  display:block!important;border:1px solid #cfe3f1;
  background:linear-gradient(135deg,#eff9ff,#f8fcff);
  border-radius:14px;margin:13px 0 15px;overflow:hidden;
}
body.page-build details.z198-builder-conversation>summary{
  list-style:none;cursor:pointer;position:relative;
  min-height:61px;padding:12px 45px 12px 14px;
  display:flex;flex-direction:column;gap:4px;justify-content:center;
  color:#0b5b85;font-weight:890;font-size:13px;line-height:1.3;
}
body.page-build details.z198-builder-conversation>summary::-webkit-details-marker{display:none}
body.page-build details.z198-builder-conversation>summary::after{
  content:"+";position:absolute;right:14px;top:50%;transform:translateY(-50%);
  display:grid;place-items:center;width:27px;height:27px;
  border:1px solid #c3dfec;background:#fff;color:#0787ae;
  border-radius:9px;font-size:20px;font-weight:500;
}
body.page-build details.z198-builder-conversation[open]>summary::after{content:"−"}
body.page-build details.z198-builder-conversation>summary small{
  color:#587792;font-weight:540;font-size:11px;line-height:1.36;
}
body.page-build .z198-builder-conversation-inner{
  padding:14px;border-top:1px solid #d4e6f3;
  background:linear-gradient(160deg,#fff,#f7fbff);
}
body.page-build.z42-build-page .z41-builder-card #builder-brief{
  display:block!important;height:135px!important;min-height:135px!important;
  max-height:310px!important;resize:vertical!important;
}
body.page-build .z41-builder-card .z41-voice-row {margin:11px 0!important}
body.page-build .z41-builder-card .z41-build-button {margin-top:6px!important}
body.page-build .z41-builder-card .z41-builder-note{margin:9px 0!important;font-size:11px!important}
body.page-build .z198-test-controls .z198-full-demo {
  min-height:43px;display:inline-flex;align-items:center;justify-content:center;
  padding:9px 12px;border-radius:11px;border:1px solid #c9dfea;
  text-decoration:none;color:#096d9e;background:#f1f9fc;
  font-size:12px;font-weight:850;
}
@media(max-width:760px){
  body.page-build details.z198-builder-conversation>summary{min-height:68px}
  body.page-build .z198-builder-conversation-inner{padding:11px}
  body.page-build.z42-build-page .z41-builder-card #builder-brief{
    min-height:123px!important;height:123px!important;
  }
}
/* Integrated, readable Builder → Pilot handoff inside existing form heading. */
body.page-pilot #pilot-form .z198-pilot-handoff{
  margin:8px 0 12px!important;padding:10px 13px!important;
  border-radius:11px!important;display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:5px 10px!important;
  border:1px solid #c5e7f1!important;background:#eefaff!important;
  box-shadow:none!important;
}
body.page-pilot #pilot-form .z198-pilot-handoff>span{
  grid-column:1/-1;color:#0086ae!important;-webkit-text-fill-color:#0086ae!important;
  font-size:9px!important;margin:0!important;
}
body.page-pilot #pilot-form .z198-pilot-handoff>strong{
  grid-column:1;display:block!important;color:#163e5a!important;
  -webkit-text-fill-color:#163e5a!important;font-size:13px!important;
}
body.page-pilot #pilot-form .z198-pilot-handoff>p{
  grid-column:1/-1;grid-row:3;margin:0!important;display:block!important;
  color:#456781!important;-webkit-text-fill-color:#456781!important;
  opacity:1!important;font-size:11px!important;font-weight:510!important;line-height:1.47!important;
}
body.page-pilot #pilot-form .z198-pilot-handoff>a{
  grid-column:2;grid-row:2;font-size:10px!important;
  color:#08769f!important;-webkit-text-fill-color:#08769f!important;
}
body.page-build .z41-build-copy h1 .z46-underline::after{
  z-index:2!important;bottom:-.14em!important;
  min-height:5px!important;height:.073em!important;opacity:1!important;
  pointer-events:none!important;
}
@media(max-width:760px){
 body.page-pilot #pilot-form .z198-pilot-handoff{
   grid-template-columns:1fr!important;gap:5px!important;
 }
 body.page-pilot #pilot-form .z198-pilot-handoff>a{
   grid-column:1!important;grid-row:auto!important;
 }
}
/* Final native underline: ensure the gradient word remains visibly underlined
   even when its ancestor uses background-clip:text. */
body.page-build .z41-build-copy h1 .z46-underline{
  text-decoration-line:underline!important;
  text-decoration-color:#43d8ff!important;
  text-decoration-thickness:.07em!important;
  text-underline-offset:.10em!important;
  text-decoration-skip-ink:none!important;
}
body.page-build .z41-build-copy h1 .z46-underline::after{
  content:none!important;display:none!important;
}
/* A restored Pilot brief should read like a normal application response. */
body.page-pilot #pilot-form #pilot-goal{
  font-weight:510!important;line-height:1.6!important;font-size:13.5px!important;
  color:#294965!important;-webkit-text-fill-color:#294965!important;
}
/* Mobile: favor the darker open-left portion of the approved hero artwork.
   Keep the cyan H1 unfiltered and fully readable above bright city details. */
@media(max-width:760px){
  body.z55-premium.z42-build-page.page-build main>section.z41-build-hero{
    background-position:18% top!important;
  }
}
