:root{font:16px/1.55 system-ui,sans-serif;color:#20362e;background:#f7f8f4;--green:#24664b;--line:#dbe3da}*{box-sizing:border-box}body{margin:0}.top{padding:18px max(20px,calc((100vw - 1120px)/2));display:flex;align-items:center;gap:20px;background:white;border-bottom:1px solid var(--line);flex-wrap:wrap}.top a{font-weight:750;color:#20362e;text-decoration:none}.top span{font-size:13px;color:#62766b;margin-left:auto}main{max-width:1120px;margin:auto;padding:28px 20px}.intro{max-width:740px;margin:12px 0 30px}.eyebrow{text-transform:uppercase;font-size:12px;font-weight:750;letter-spacing:.12em;color:var(--green)}h1{font-size:clamp(30px,5vw,48px);line-height:1.15;margin:12px 0 20px;letter-spacing:-.035em}h2{font-size:21px;line-height:1.3}h3{font-size:17px}p{margin:10px 0}.intro p:not(.eyebrow){color:#52675b}.small{font-size:13px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.conversation,aside,#plan,#change,#ready,details{background:white;border:1px solid var(--line);border-radius:16px;padding:24px}.conversation{display:flex;flex-direction:column;min-height:360px}#messages{max-height:470px;overflow:auto;margin-bottom:24px}.bubble{padding:14px 18px;border-radius:12px;margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere}.user{background:#e8f1e9;margin-left:24px}.assistant{background:#f3f5f1;margin-right:24px}.welcome{color:#6b7d72}label{display:block;font-weight:600;font-size:14px}textarea,input{display:block;width:100%;font:inherit;padding:12px;border:1px solid #afbeb1;border-radius:8px;margin:8px 0 12px;resize:vertical}button,.button{font:inherit;border:0;background:var(--green);color:white;padding:11px 17px;border-radius:8px;cursor:pointer;text-decoration:none;display:inline-block}.quiet{background:#edf2ec;color:#244b34}button:disabled{opacity:.5;cursor:wait}.send{display:flex;align-items:center;gap:12px;justify-content:space-between}.send span{font-size:12px;color:#61756a}#error{color:#9b342d}aside ol{padding-left:22px}aside li{padding:7px;color:#52675b}#stage{font-weight:650;margin:14px 0}#actions button{display:block;margin:10px 0;width:100%}#events{font-size:13px;color:#627568}#events p{border-top:1px solid var(--line);padding-top:10px}#plan,#change,#ready,details{margin-top:24px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 28px}.price{font-size:28px;font-weight:750;color:var(--green)}ul{padding-left:22px}li{overflow-wrap:anywhere}.section-head{margin:30px 0 12px}.section-head p{color:#627568}iframe{width:100%;height:700px;border:1px solid var(--line);border-radius:14px;background:#f4f7fa}.access{overflow-wrap:anywhere;padding:14px;background:#f1f5ee;border-radius:10px}.history{margin-top:30px}#history button{margin:4px}footer{font-size:13px;color:#627568;margin:28px 0}summary{cursor:pointer;font-weight:650}#feedback{max-width:440px}input:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #8ebba0;outline-offset:3px}[hidden]{display:none!important}@media(max-width:760px){.layout{grid-template-columns:1fr}.top{gap:10px;padding:14px}.top span{margin-left:0}main{padding:20px 14px}.conversation,aside,#plan,#change,#ready,details{padding:18px}.plan-grid{grid-template-columns:1fr}.send{align-items:flex-end}.send span{max-width:150px}iframe{height:740px}.intro{margin-top:0}}
.feature-picklist{margin-top:14px;display:grid;gap:8px}.feature-picklist label{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer}.feature-picklist input[type=checkbox]{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto}.feature-picklist button{margin-top:8px;justify-self:start}
.discovery-steps{list-style:none;padding:0;margin:14px 0 20px}.discovery-steps li{display:flex;align-items:center;gap:10px;padding:9px 6px;border-bottom:1px solid #edf1ec;color:#708078}.discovery-steps li.current{font-weight:750;color:#20362e;background:#f2f7f2;border-radius:8px}.discovery-steps li.complete{color:#355f49}.step-number,.step-check{display:inline-grid;place-items:center;width:24px;height:24px;min-width:24px;border-radius:50%;font-size:12px;font-weight:750;background:#edf1ec}.step-check{background:#e1f3e7;color:#16803b;font-size:17px}.discovery-steps .current .step-number{background:#24664b;color:white}@media(min-width:761px){#progress{position:sticky;top:18px;align-self:start;max-height:calc(100vh - 36px);overflow:auto}.conversation{min-height:560px}#messages{max-height:none;overflow:visible}}
.feature-info{margin-left:auto;padding:2px 7px;min-width:30px;border:0;border-radius:999px;background:transparent;color:#24664b;font-size:17px;line-height:1.2;cursor:pointer}.feature-info:hover,.feature-info:focus{background:#e6f1ea}.feature-picklist label{display:flex;align-items:center;gap:8px}
/* Picklist controls must never inherit the full-width text-input rule. */
.feature-picklist input[type="checkbox"],.feature-picklist input[type="radio"]{display:inline-block;width:18px!important;height:18px!important;min-width:18px;flex:0 0 18px;margin:0!important;padding:0!important;resize:none}
.feature-picklist label>span{min-width:0;flex:1;overflow-wrap:anywhere}
.feature-picklist label{min-width:0}
.working-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:rgba(20,35,28,.28);backdrop-filter:blur(2px)}.working-card{min-width:180px;padding:24px 28px;border-radius:16px;background:#fff;box-shadow:0 16px 50px rgba(0,0,0,.22);display:flex;flex-direction:column;align-items:center;gap:9px}.working-card strong{font-size:20px}.working-card>span:last-child{font-size:13px;color:#627568}.spinner{width:42px;height:42px;border:5px solid #dbe3da;border-top-color:var(--green);border-radius:50%;animation:working-spin .8s linear infinite}@keyframes working-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:1.8s}}
.feature-picklist .picklist-heading{font-weight:750;margin:14px 2px 2px;white-space:normal}.feature-picklist .picklist-intro{margin:2px 2px 8px;white-space:normal}.feature-picklist .picklist-heading:first-child{margin-top:0}
.account-panel{max-width:1120px;margin:0 auto;padding:20px;background:#fff;border-bottom:1px solid var(--line)}.account-panel h2{margin-top:0}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.account-grid form{padding:18px;border:1px solid var(--line);border-radius:12px;background:#f8faf7}.account-grid h3{margin-top:0}.trial-banner{margin:18px 0 0;padding:12px 14px;border-radius:10px;background:#eef4ec;border:1px solid #c9d8ca;font-weight:650}.trial-banner.expired{background:#fff1ef;border-color:#e4b8b2;color:#8d3029}.trial-banner.paid{background:#eef6ff;border-color:#bfd4eb;color:#224f78}#accountMessage{font-size:14px;color:#355f49}.purchase-card{margin-top:24px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:16px}.purchase-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}.purchase-row:first-of-type{border-top:0}.purchase-row h3,.purchase-row p{margin:3px 0}.purchase-owned{padding:10px 12px;background:#eef6ff;border-radius:8px;color:#224f78}@media(max-width:760px){.account-grid{grid-template-columns:1fr}.account-panel{padding:16px 14px}.purchase-row{grid-template-columns:1fr}.purchase-row button{width:100%}}

/* FixIt: compact checklist/review layout and a stable Other row. */
.feature-picklist label{padding:7px 10px;min-height:38px}
.feature-picklist .other-choice{flex-wrap:wrap}
.feature-picklist .other-choice>span{flex:0 0 auto;white-space:nowrap;overflow-wrap:normal}
.feature-picklist .other-choice .feature-info{margin-left:4px}
.feature-picklist .other-input{flex:1 1 260px;min-width:220px;width:auto;margin:4px 0 4px 28px;padding:9px 10px}
.review-editor fieldset{margin:12px 0;padding:10px 16px 12px}
.review-editor fieldset label{display:flex;align-items:center;gap:10px;padding:5px 2px;min-height:34px}
.review-editor fieldset input[type="checkbox"]{display:inline-block;width:18px!important;height:18px!important;min-width:18px;margin:0!important;padding:0!important;flex:0 0 18px}
.review-editor fieldset label>span{line-height:1.3}
.review-editor>label{margin-top:10px}
.review-saved{margin:18px 0;padding:14px 16px;border:1px solid #b9d6c2;border-radius:10px;background:#f0f8f2}
.review-saved p{margin:5px 0 10px}
.hosting-name{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8faf7}
.hosting-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hosting-name-row input{width:min(260px,100%);margin:6px 0}
.hosting-suffix{font-weight:650;color:#52675b}
@media(max-width:760px){
  .feature-picklist label{min-height:44px;padding:9px 10px}
  .feature-picklist .other-input{flex-basis:100%;min-width:0;margin-left:28px}
  .review-editor fieldset label{min-height:44px;padding:8px 2px}
}

/* Plan state: the build plan occupies the main column after discovery. */
.layout>#plan{margin-top:0}
#connectionStatus{padding:10px 12px;border:1px solid #e6c681;border-radius:8px;background:#fff8e7;color:#775315;font-weight:650}

/* Template chooser grid and cards */
.template-chooser {
  margin-top: 20px;
}
.template-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
@media (max-width: 600px) {
  .template-grid {
    grid-template-columns: 1fr;
  }
}
.template-card {
  cursor: pointer;
  border-radius: 12px;
  padding: 16px;
  background: white;
  box-shadow: 0 2px 6px rgb(0 0 0 / 0.12);
  display: flex;
  flex-direction: column;
  gap: 10px;
  outline-offset: 4px;
}
.template-card:focus {
  outline: 3px solid var(--green);
}
.template-label {
  font-weight: 600;
  font-size: 1.1rem;
  color: var(--green);
  text-align: center;
}
.template-preview {
  height: 150px;
  background: #f4f6f3;
  border-radius: 10px;
  padding: 10px;
  font-style: italic;
  font-size: 0.9rem;
  color: #445544;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}


.preview-review-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin:14px 0}
.preview-review-card{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}
.preview-review-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}
.preview-review-status{font-size:12px;text-transform:capitalize;color:#627568}
.preview-review-card input{margin:9px 0}
.preview-review-actions{display:flex;gap:8px;flex-wrap:wrap}
.preview-review-actions button{margin:0}
#previewReview>.button{margin:0 0 10px}
.review-change-notice,.preview-route-status{padding:10px 12px;border-radius:8px;background:#eef4ec}

/* Real miniature template previews. */
.template-card.selected{border:3px solid var(--green)!important;box-shadow:0 0 0 2px rgba(36,102,75,.08)}
.template-preview{height:190px!important;display:block!important;text-align:left!important;font-style:normal!important;padding:0!important;overflow:hidden;border:1px solid #d9e0d9;background:#fff!important;color:#263c32!important}
.mini-top{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#f0f4ef;border-bottom:1px solid #dde5dc;font-size:10px}.mini-top strong{font-size:12px}.mini-top span{color:#627568}
.mini-nav{display:flex;gap:3px;padding:6px 7px;border-bottom:1px solid #edf1ec;white-space:nowrap;overflow:hidden}.mini-nav span{font-size:8px;padding:3px 5px;border-radius:4px;background:#f5f7f4}.mini-nav span.active{background:#dfece3;color:#1f5a40;font-weight:700}
.mini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:7px}.mini-kpi{border:1px solid #e3e8e2;border-radius:6px;padding:6px;background:#fafbf9}.mini-kpi strong,.mini-kpi span{display:block}.mini-kpi strong{font-size:14px}.mini-kpi span{font-size:7px;color:#6b7d72;margin-top:1px}
.mini-table{margin:0 7px 7px;border:1px solid #e2e8e1;border-radius:5px;overflow:hidden}.mini-row{display:grid;grid-template-columns:1.4fr 1fr .8fr;border-top:1px solid #edf1ec}.mini-row:first-child{border-top:0}.mini-row span{font-size:7px;padding:4px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.show-app-button{display:block!important;text-align:center;font-weight:750;font-size:18px;margin:10px 0 14px}

/* Template experiment flow: full-screen preview plus six-scheme sidebar. */
.template-full-shell{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:18px;min-height:620px}.template-full-main{min-width:0}.template-preview-large{min-height:580px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white;color:var(--preview-ink)}.template-preview,.template-preview-large{--preview-accent:#24664b;--preview-soft:#eef6ef;--preview-ink:#20362e}.template-preview .mini-top,.template-preview-large .mini-top{background:var(--preview-soft);color:var(--preview-ink)}.template-preview .mini-nav .active,.template-preview-large .mini-nav .active{background:var(--preview-accent)!important;color:white}.template-preview-large .mini-top{padding:18px 22px;font-size:14px}.template-preview-large .mini-top strong{font-size:24px}.template-preview-large .mini-nav{padding:12px 18px;gap:8px}.template-preview-large .mini-nav span{font-size:13px;padding:8px 11px}.template-preview-large .mini-kpis{padding:20px;gap:14px}.template-preview-large .mini-kpi{padding:18px}.template-preview-large .mini-kpi strong{font-size:30px}.template-preview-large .mini-kpi span{font-size:13px}.template-preview-large .mini-table{margin:0 20px 20px}.template-preview-large .mini-row span{font-size:13px;padding:13px}.template-theme-sidebar{background:#f7f9f6;border:1px solid var(--line);border-radius:14px;padding:16px;margin:0}.template-theme-sidebar h3{margin-top:0}.theme-choice{width:100%;display:flex;align-items:center;gap:10px;background:white!important;color:#20362e!important;border:1px solid var(--line);margin:5px 0;padding:9px}.theme-choice.selected{outline:3px solid var(--green);outline-offset:1px}.theme-swatch{display:flex;gap:2px}.theme-swatch i{display:block;width:15px;height:15px;border-radius:50%}.feature-review-form{max-width:760px}.feature-review-list{display:grid;gap:8px}.feature-review-item{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:8px 10px}.feature-review-item input[type=checkbox]{width:18px!important;height:18px!important;margin:0!important}.feature-review-item input[type=text]{margin:0}.email-verify-card{border:1px solid #bfd4c5;background:#f1f8f3;border-radius:12px;padding:16px;margin-top:12px}.email-verify-card input{margin:10px 0}.email-verify-card button{width:100%}@media(max-width:800px){.template-full-shell{grid-template-columns:1fr}.template-theme-sidebar{order:-1}.template-preview-large{min-height:440px}}

/* Ready-to-build sales presentation */
.ready-visual{margin:18px 0 22px}.sales-copy{max-width:920px;margin:18px 0 22px;padding:18px 20px;border-left:4px solid var(--green);background:#f7faf7;border-radius:0 12px 12px 0}.sales-copy p{font-size:17px;line-height:1.65;margin:0 0 14px}.sales-copy p:last-child{margin-bottom:0}.approved-feature-list{columns:2;column-gap:34px}.approved-feature-list li{break-inside:avoid;margin-bottom:6px}.build-primary{font-size:20px;font-weight:800;padding:14px 24px;margin-top:10px}

/* Live build control room — dramatic, but driven only by real backend events. */
.build-control-room{background:radial-gradient(circle at 20% 0,#123b31 0,#081914 42%,#04100d 100%);color:#dff8ec;border:1px solid #2a7b61;border-radius:18px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.18);min-height:520px}
.build-console-head{display:flex;align-items:flex-start;gap:15px;border-bottom:1px solid rgba(125,235,190,.2);padding-bottom:18px}.build-console-head h2{font-size:30px;margin:3px 0 6px;color:#f2fff8}.build-kicker,.build-label{font-size:11px;letter-spacing:.16em;font-weight:850;color:#72ddb2}.build-subtitle{color:#a8cdbd;margin:0}.build-pulse{width:16px;height:16px;border-radius:50%;background:#52e3a1;box-shadow:0 0 0 0 rgba(82,227,161,.6);animation:grid55-pulse 1.8s infinite;margin-top:6px;flex:0 0 auto}@keyframes grid55-pulse{0%{box-shadow:0 0 0 0 rgba(82,227,161,.55)}70%{box-shadow:0 0 0 12px rgba(82,227,161,0)}100%{box-shadow:0 0 0 0 rgba(82,227,161,0)}}.build-console-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin:18px 0}.build-current,.build-tech{background:rgba(255,255,255,.045);border:1px solid rgba(132,222,185,.18);border-radius:12px;padding:16px}.build-current strong{display:block;font-size:18px;line-height:1.45;margin-top:6px}.build-current p{color:#acd0c0}.build-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.build-chip{font-size:12px;padding:6px 9px;border-radius:999px;background:rgba(81,210,157,.11);border:1px solid rgba(81,210,157,.28);color:#c9f2df}.build-feed{margin-top:16px}.build-feed-row{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:11px 0;border-bottom:1px solid rgba(132,222,185,.12)}.build-feed-dot{width:8px;height:8px;border-radius:50%;background:#58e0a4;box-shadow:0 0 10px rgba(88,224,164,.7);margin-top:6px}.build-feed-body strong,.build-feed-body span{display:block}.build-feed-body strong{font-size:14px;font-weight:650;color:#e5faef}.build-feed-body span{font-size:11px;color:#7fafa0;margin-top:2px}.build-empty{color:#9ec7b7}.build-control-room+.plan-next-step{display:none}
@media(max-width:760px){.approved-feature-list{columns:1}.build-console-grid{grid-template-columns:1fr}.build-control-room{padding:16px}.build-console-head h2{font-size:25px}}

/* Accessible business review and real-runtime design samples. */
body[data-stage="preview"] .layout{grid-template-columns:1fr!important}body[data-stage="preview"] .conversation,body[data-stage="preview"] .intro,body[data-stage="preview"] #plan,body[data-stage="preview"] #discovery-steps,body[data-stage="preview"] #progress>h2{display:none}body[data-stage="preview"] #progress{width:100%;max-height:none;position:static}
:root{--line:#6c7d71}input,textarea,select{border-color:#687a70;color:#20362e;background:#fff}input::placeholder,textarea::placeholder{color:#526357;opacity:1}button:disabled{opacity:1;background:#e1e8e2;color:#47564c;border:1px solid #687a70;cursor:not-allowed}.welcome,.top span,.small,.send span,.discovery-steps li,.working-card>span:last-child{color:#4a5d50}.step-check{color:#1c6039}.runtime-preview iframe{width:100%;height:650px;border:0;display:block}.runtime-mini{position:relative;pointer-events:none;height:240px!important}.runtime-mini iframe{width:1100px;height:1000px;border:0;transform:scale(.38);transform-origin:top left;display:block}.template-card{overflow:hidden}.template-theme-sidebar{color:#20362e}.wording-fields{display:grid;gap:12px}.wording-field{padding:12px;border:1px solid var(--line);border-radius:8px;background:#f6f8f4}.wording-field small{display:block;color:#415448}.wording-controls{display:flex;gap:8px;margin-top:8px}.rebuild-consent{display:flex;align-items:center;gap:10px;margin:14px 0}.rebuild-consent input{width:20px;height:20px;margin:0}.email-verify-card{width:100%;max-width:760px}.template-card:focus-visible,button:focus-visible{outline:3px solid #20362e;outline-offset:3px}@media(max-width:600px){.runtime-mini iframe{transform:scale(.28)}.runtime-preview iframe{height:680px}.wording-controls{flex-wrap:wrap}}

/* Keep responsive sample iframes fitted to their crop so records stay visible. */
.runtime-mini{--mini-scale:.38}
.runtime-mini iframe{width:calc(100% / var(--mini-scale));height:calc(100% / var(--mini-scale));transform:scale(var(--mini-scale))}
@media(max-width:600px){.runtime-mini{--mini-scale:.28}}

/* Compact, readable feature approval controls with touch-sized targets. */
.feature-select-all{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px;font-weight:700;cursor:pointer}
.feature-select-all input,.feature-review-item input[type=checkbox]{width:20px!important;height:20px!important;min-width:20px;margin:0!important}
.feature-review-list{display:grid;gap:1px}
.feature-review-item{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;min-height:44px;margin:0;padding:4px 10px;border:0;border-radius:0;cursor:pointer}
.feature-review-item input[type=text]{min-width:0;margin:0}
.feature-review-form>input[type=text]{margin:8px 0}
.feature-review-feedback{min-height:1.5em;margin:5px 0;color:#8d3029}
.feature-review-feedback:empty{min-height:0;margin:0}
.feature-review-feedback[data-state=working]{color:#355f49}
@media(max-width:800px){.feature-review-item{min-height:48px;padding:5px 8px}.feature-select-all{min-height:48px}}
