/* CloudLens Studio: scoped, dark/light, keyboard and reduced-motion aware. */
.builder-page{--ab-panel:color-mix(in srgb,var(--dv-bg-1,#0e1421) 93%,#738aad 7%);--ab-text:var(--dv-text,#edf3fb);--ab-soft:var(--dv-text-soft,#a9b8ce);--ab-line:var(--dv-border,rgba(160,186,223,.16));--ab-accent:#71dccc;max-width:1640px;margin:auto;padding:36px 28px 90px;color:var(--ab-text);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5}
.builder-page *{box-sizing:border-box}.builder-page button,.builder-page input,.builder-page select{font:inherit}.builder-page button{cursor:pointer}.builder-page button:disabled{cursor:not-allowed;opacity:.5}.builder-page button:focus-visible,.builder-page input:focus-visible,.builder-page select:focus-visible,.builder-page summary:focus-visible{outline:3px solid #53c8bf;outline-offset:4px}.builder-page h1,.builder-page h2,.builder-page h3,.builder-page h4,.builder-page p{margin:0}.builder-page h2{font-size:17px;font-weight:650;letter-spacing:-.025em}.builder-page h3{font-size:15px}.builder-page h4{font-size:13px;margin:16px 0 6px}.builder-page ul{padding-left:20px}.builder-page li{margin-bottom:7px}
.ab-hero{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:12px 0 32px}.ab-eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:var(--ab-soft)}.ab-eyebrow>span{display:inline-block;width:6px;height:6px;background:var(--ab-accent);border-radius:50%;margin-right:6px}.ab-hero h1{font-family:var(--dv-font-display,Inter,sans-serif);font-size:clamp(32px,3.7vw,56px);font-weight:500;letter-spacing:-.055em;line-height:1.2;margin:12px 0}.ab-hero h1 em{font-style:normal;color:var(--ab-accent)}.ab-hero-description{max-width:620px;color:var(--ab-soft);font-size:14px;line-height:1.8}.ab-hero-aside{text-align:right;flex-shrink:0;font-size:12px}.ab-hero-aside p{margin:12px 0 8px}.ab-hero-aside p span{color:var(--ab-soft)}.ab-region{display:inline-block;border:1px solid var(--ab-line);border-radius:100px;padding:7px 13px;font-size:11px;background:var(--ab-panel)}
.ab-patterns{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ab-pattern{display:flex;align-items:center;gap:14px;padding:17px 20px;border:1px solid var(--ab-line);background:var(--ab-panel);border-radius:14px;color:var(--ab-text);text-align:left;transition:transform .22s ease,border-color .22s ease,background .22s ease}.ab-pattern:hover{transform:translateY(-2px);border-color:var(--ab-soft)}.ab-pattern.is-active{border-color:#71dccc;background:linear-gradient(115deg,rgba(69,179,169,.13),var(--ab-panel))}.ab-pattern.is-blueprint{border-color:color-mix(in srgb,var(--ab-accent) 48%,var(--ab-line));background:linear-gradient(130deg,rgba(122,78,255,.12),rgba(58,208,190,.07),var(--ab-panel))}.ab-pattern-glyph{font-size:27px;color:var(--ab-accent);font-family:system-ui}.ab-pattern strong{display:block;font-size:13px;font-weight:600}.ab-pattern small{display:block;font-size:11px;color:var(--ab-soft);margin-top:3px}.ab-pattern-badge{display:inline-flex;margin:0 0 5px;padding:3px 7px;border-radius:999px;background:rgba(122,78,255,.15);color:var(--ab-accent);font-size:9px;font-style:normal;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ab-pattern-mark{margin-left:auto;font-size:17px;color:var(--ab-accent)}
.ab-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 25px;font-size:11px;color:var(--ab-soft)}.ab-toolbar>div{display:flex;align-items:center;gap:15px}.ab-live-dot{height:6px;width:6px;background:var(--ab-accent);border-radius:50%;box-shadow:0 0 10px #71dccc33}.is-evaluating .ab-live-dot{animation:ab-pulse 1s ease-in-out infinite}.ab-link{border:0;background:transparent;color:var(--ab-soft);padding:5px 0;font-size:11px!important;text-decoration:none}.ab-link:hover{color:var(--ab-text)}.ab-notice:empty{display:none}.ab-notice{padding:14px 18px;border:1px solid var(--ab-line);border-radius:10px;margin-bottom:18px!important}.ab-notice.is-error{color:#fda4af;border-color:#fb718544;background:#fb718511}
.ab-workspace{display:grid;grid-template-columns:240px minmax(380px,1fr) 280px;gap:22px;align-items:start}.ab-panel{background:var(--ab-panel);border:1px solid var(--ab-line);border-radius:16px;padding:19px}.ab-brief,.ab-palette{position:sticky;top:96px;max-height:calc(100vh - 115px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#60728a44 transparent}.ab-panel-title{display:flex;align-items:center;gap:10px;margin-bottom:22px}.ab-panel-title p{font-size:10px;color:var(--ab-soft);margin-top:3px}.ab-step{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border-radius:8px;border:1px solid var(--ab-line);font-size:10px;color:var(--ab-accent)}.ab-field{display:block;margin:0 0 16px;font-size:11px;color:var(--ab-soft)}.ab-field>span{display:block;margin-bottom:7px}.ab-field select,.ab-field input{display:block;width:100%;min-width:0;border:1px solid var(--ab-line);border-radius:8px;padding:10px 8px;background:var(--dv-bg-1,#101623);color:var(--ab-text);font-size:11px;line-height:1.4;transition:border-color .2s}.ab-field select:hover,.ab-field input:hover{border-color:var(--ab-soft)}.ab-input-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ab-caption{font-size:11px;line-height:1.7;color:var(--ab-soft);margin:12px 0!important}.ab-details{font-size:12px;color:var(--ab-soft);border-top:1px solid var(--ab-line);margin-top:10px;padding-top:12px}.ab-details summary{cursor:pointer;margin-bottom:12px;color:var(--ab-text);font-size:11px}.ab-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:10px 13px;border:1px solid transparent;font-size:11px!important;font-weight:600;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s}.ab-btn:not(:disabled):hover{transform:translateY(-1px)}.ab-btn-primary{background:#71dccc;color:#102b2b;box-shadow:0 3px 15px #71dccc0e}.ab-btn-primary:not(:disabled):hover{background:#93eadc;box-shadow:0 5px 22px #71dccc22}.ab-btn-soft{border-color:var(--ab-line);background:var(--dv-surface-2,#1e293b);color:var(--ab-text)}.ab-full{width:100%}
.ab-board-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.ab-board-heading>div{display:flex;gap:9px;align-items:center}.ab-status{font-size:10px;border:1px solid var(--ab-line);padding:5px 9px;border-radius:30px;white-space:nowrap;color:var(--ab-soft)}.ab-status.error{border-color:#fb718566;color:#fda4af}.ab-board-help{color:var(--ab-soft);font-size:11px;margin:12px 0 20px!important;line-height:1.8}.ab-board-help strong{font-weight:500;color:var(--ab-text)}.ab-board{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}.ab-tier{position:relative;border:1px solid var(--ab-line);border-radius:14px;padding:17px;background:var(--ab-panel);min-width:0;overflow:hidden;transition:border-color .22s,box-shadow .22s,transform .22s;animation:ab-arrive .28s both;animation-delay:calc(var(--ab-order)*22ms)}.ab-tier:hover{transform:translateY(-2px);border-color:#71dccc77}.ab-tier.is-selected{border-color:#71dccc;box-shadow:0 0 0 1px #71dccc11,0 8px 30px #00000016;background:linear-gradient(155deg,#71dccc0c,var(--ab-panel) 55%)}.ab-tier.is-empty{border-style:dashed}.ab-tier-hit{position:absolute;inset:0;background:transparent;border:0;z-index:2;border-radius:14px;width:100%;height:100%}.ab-tier-hit:focus-visible{outline-offset:-4px!important}.ab-tier-top{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--ab-soft);letter-spacing:.015em}.ab-tier-number{font-variant-numeric:tabular-nums;color:var(--ab-accent)}.ab-dot{margin-left:auto;width:6px;height:6px;border-radius:50%;background:#71dccc}.ab-dot.warning{background:#e4b875}.ab-dot.error{background:#fb7185}.ab-tier-service{display:flex;align-items:center;gap:12px;margin:19px 0 12px}.ab-icon{display:block;flex-shrink:0;width:42px;height:42px;border-radius:9px;object-fit:contain;background:#fff}.ab-icon.small{width:34px;height:34px;border-radius:7px}.ab-empty{display:flex;align-items:center;justify-content:center;font-size:22px;background:var(--dv-surface-2,#152c33);border:1px dashed var(--ab-line);color:var(--ab-soft)}.ab-tier-service h3{font-size:13px;font-weight:600;line-height:1.4}.ab-tier-service p{font-size:10px;color:var(--ab-soft);margin-top:3px}.ab-tier-reason{color:var(--ab-soft);font-size:11px;line-height:1.7;min-height:55px}.ab-tier-bottom{margin-top:18px;padding-top:12px;border-top:1px solid var(--ab-line);display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--ab-soft)}.ab-tier-compare{color:var(--ab-accent);white-space:nowrap}.ab-drop-message{display:none;position:absolute;inset:0;z-index:3;background:color-mix(in srgb,var(--ab-panel) 88%,#71dccc 12%);border:2px dashed #71dccc;border-radius:13px;align-items:center;justify-content:center;color:var(--ab-accent);font-size:13px;pointer-events:none}.ab-tier.drop-ready .ab-drop-message{display:flex}.ab-dependencies{display:flex;gap:12px;margin:16px 0 22px;padding:14px 16px;border:1px dashed var(--ab-line);border-radius:12px;color:var(--ab-soft);font-size:11px}.ab-dependencies strong{font-weight:550;color:var(--ab-text)}.ab-dependencies p{margin-top:4px;line-height:1.7}.ab-dependency-icon{font-size:22px;color:var(--ab-accent)}
.ab-palette-purpose{font-size:11px;color:var(--ab-soft);margin:-9px 0 16px!important}.ab-candidate{border:1px solid var(--ab-line);background:var(--dv-bg-1,#101623);border-radius:12px;padding:14px;margin-bottom:12px;transition:transform .2s,border-color .2s}.ab-candidate[draggable=true]{cursor:grab}.ab-candidate[draggable=true]:hover{border-color:#71dccc77}.ab-candidate[draggable=true]:active{cursor:grabbing}.ab-candidate.is-unavailable{opacity:.65}.ab-candidate-head{display:flex;align-items:center;gap:9px}.ab-candidate-head strong{display:block;font-size:12px;font-weight:600}.ab-grip{margin-left:auto;color:var(--ab-soft);font-size:22px}.ab-candidate>p{font-size:11px;line-height:1.7;color:var(--ab-soft);margin:12px 0}.ab-tag{display:inline-block;font-size:9px;padding:3px 7px;border-radius:5px;border:1px solid var(--ab-line);color:var(--ab-soft);margin-top:5px}.ab-tag.recommended{color:var(--ab-accent);background:#71dccc0d;border-color:#71dccc44}.ab-tag.requires_changes,.ab-tag.partial{color:#e4b875;background:#e4b8750a;border-color:#e4b87533}.ab-tradeoffs{font-size:11px;color:var(--ab-soft);margin:10px 0 14px}.ab-tradeoffs summary{cursor:pointer;color:var(--ab-text);font-size:10px}.ab-tradeoffs p{margin-top:8px;line-height:1.7}.ab-pro{color:var(--ab-accent)}.ab-con{color:#e4b875}
.ab-cost-panel{border:1px solid var(--ab-line);border-radius:14px;padding:20px;background:linear-gradient(110deg,#71dccc09,var(--ab-panel));display:flex;flex-wrap:wrap;justify-content:space-between;align-items:start;gap:14px}.ab-cost-value{display:flex;align-items:baseline;gap:10px;margin:7px 0}.ab-cost-value strong{font:500 34px var(--dv-font-display,Inter,sans-serif);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.ab-cost-value span,.ab-cost-panel p{font-size:10px;color:var(--ab-soft)}.ab-budget-track{width:100%;height:4px;background:var(--ab-line);border-radius:5px;overflow:hidden}.ab-budget-track span{display:block;height:100%;border-radius:5px;background:var(--ab-accent);transition:width .5s cubic-bezier(.2,.8,.2,1)}.ab-budget-track .over-budget{background:#f5b866}.ab-cost-panel>.ab-details{width:100%;margin:0;padding-top:13px}.ab-cost-panel>.ab-details summary{margin-bottom:0}.ab-cost-lines{margin:14px 0}.ab-cost-lines>div{display:flex;justify-content:space-between;gap:20px;padding:7px 0;border-bottom:1px solid var(--ab-line);font-size:11px}.ab-review{margin-top:26px}.ab-review h2,.ab-recipes h2{font-size:14px;margin-bottom:13px}.ab-finding{border-bottom:1px solid var(--ab-line);font-size:11px;color:var(--ab-soft)}.ab-finding summary{display:flex;align-items:center;gap:9px;cursor:pointer;padding:12px 0;list-style:none;color:var(--ab-text)}.ab-finding summary::-webkit-details-marker{display:none}.ab-finding summary>span{color:#e4b875;width:13px;text-align:center}.ab-finding.error summary>span{color:#fb7185}.ab-finding.info summary>span{color:var(--ab-accent)}.ab-finding summary small{margin-left:auto;font-size:9px;text-transform:uppercase;color:var(--ab-soft)}.ab-finding p{line-height:1.8;padding:0 0 12px 22px}.ab-finding .ab-remedy{color:var(--ab-text)}.ab-recipes{margin-top:25px}.ab-optimization{display:flex;align-items:center;width:100%;gap:13px;text-align:left;border:1px solid var(--ab-line);border-radius:12px;background:var(--ab-panel);color:var(--ab-text);padding:15px;margin-bottom:10px;transition:border-color .2s,transform .2s}.ab-optimization:hover{border-color:#71dccc77;transform:translateX(2px)}.ab-optimization>span:first-child{font-size:22px;color:var(--ab-accent)}.ab-optimization>span:last-child{margin-left:auto}.ab-optimization strong{display:block;font-size:12px;font-weight:550}.ab-optimization small{display:block;color:var(--ab-soft);font-size:10px;line-height:1.7;margin-top:3px}.ab-export{border-top:1px solid var(--ab-line);padding-top:22px;margin-top:26px}.ab-export p{font-size:11px;color:var(--ab-soft);margin:7px 0 15px}.ab-export-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ab-preview{border:1px solid var(--ab-line);border-radius:20px;background:var(--dv-bg-1,#101623);color:var(--ab-text);padding:26px;width:min(620px,calc(100vw - 32px));max-height:85vh;box-shadow:0 30px 100px #0008;margin:auto}.ab-preview::backdrop{background:#020613aa;backdrop-filter:blur(7px)}.ab-preview[open]{animation:ab-arrive .22s ease}.ab-preview-header{display:flex;justify-content:space-between;align-items:center}.ab-icon-button{border:0;background:none;color:var(--ab-soft);font-size:27px!important;padding:0 8px}.ab-preview h2{font-size:22px;margin:12px 0 24px;line-height:1.4}.ab-preview h3{margin:18px 0 10px}.ab-preview ul{font-size:12px;color:var(--ab-soft);line-height:1.8}.ab-preview-cost{background:var(--ab-panel);padding:18px;border:1px solid var(--ab-line);border-radius:12px;display:flex;gap:10px;align-items:center;justify-content:space-between}.ab-preview-cost small{display:block;font-size:10px;color:var(--ab-soft);margin-bottom:7px}.ab-preview-cost strong{font-size:23px;font-weight:550}.ab-preview-cost strong span{color:var(--ab-soft);padding:0 5px}.ab-preview-finding{padding:10px 0;font-size:12px;color:var(--ab-soft);line-height:1.7}.ab-preview-finding strong{color:var(--ab-text);font-weight:550}.ab-preview-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid var(--ab-line)}
:root[data-theme=light] .builder-page{--ab-accent:#107c71}:root[data-theme=light] .ab-status.error,:root[data-theme=light] .ab-notice.is-error{color:#b4233b}:root[data-theme=light] .ab-tag.partial,:root[data-theme=light] .ab-tag.requires_changes{color:#855910}
@keyframes ab-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes ab-pulse{50%{opacity:.25}}
@media(min-width:1600px){.ab-workspace{grid-template-columns:270px minmax(420px,1fr) 320px;gap:26px}}
@media(max-width:1250px){.builder-page{padding:24px 18px 60px}.ab-workspace{grid-template-columns:215px minmax(320px,1fr) 250px;gap:14px}.ab-tier{padding:13px}.ab-tier-bottom{flex-direction:column}.ab-hero-aside{display:none}.ab-panel{padding:15px}.ab-board-heading{flex-wrap:wrap}}
@media(max-width:1099px){.ab-workspace{grid-template-columns:230px minmax(0,1fr)}.ab-brief{position:static;max-height:none;grid-column:1;grid-row:1}.ab-design{grid-column:2;grid-row:1 / span 2}.ab-palette{position:static;grid-column:1;max-height:none;grid-row:2}.ab-board{grid-template-columns:1fr}.ab-pattern{padding:14px;gap:9px}.ab-pattern small{font-size:10px}.ab-hero h1{font-size:43px}}
@media(max-width:650px){.builder-page{padding:20px 12px 50px}.ab-hero{padding:8px 4px 24px}.ab-hero h1{font-size:36px}.ab-patterns{grid-template-columns:1fr;gap:8px}.ab-pattern{padding:11px 14px}.ab-pattern-glyph{font-size:22px}.ab-pattern small{display:none}.ab-toolbar{align-items:flex-start;flex-direction:column;margin:15px 0}.ab-toolbar>div{flex-wrap:wrap;gap:13px}.ab-workspace{display:flex;flex-direction:column;gap:18px}.ab-brief,.ab-palette,.ab-design{width:100%;position:static;max-height:none}.ab-brief{order:0}.ab-design{order:1}.ab-palette{order:2;scroll-margin-top:90px}.ab-board{grid-template-columns:1fr}.ab-tier-reason{min-height:0}.ab-tier-bottom{flex-direction:row}.ab-brief .ab-panel-title{margin-bottom:15px}.ab-cost-value strong{font-size:30px}.ab-preview{padding:20px}.ab-preview-cost,.ab-preview-actions{flex-wrap:wrap}.ab-export-actions .ab-btn{flex:1}}
@media(prefers-reduced-motion:reduce){.builder-page *,.builder-page *::before,.builder-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Guided step flow */
.builder-page [hidden]{display:none!important}
.ab-progress{display:flex;align-items:center;gap:8px;padding:10px 0 4px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--ab-line) transparent}
.ab-progress-label{display:none!important;margin:6px 0 3px!important;color:var(--ab-accent);font-size:10px;font-weight:650;letter-spacing:.04em}
.ab-progress>i{display:block;min-width:18px;height:1px;background:var(--ab-line)}
.ab-progress-step{display:flex;align-items:center;gap:9px;flex:0 0 auto;min-width:116px;padding:9px 11px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ab-soft);text-align:left;transition:background .2s,border-color .2s,color .2s,transform .2s}
.ab-progress-step>span:first-child{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--ab-line);border-radius:50%;font-size:9px;font-variant-numeric:tabular-nums}
.ab-progress-step strong,.ab-progress-step small{display:block;white-space:nowrap}.ab-progress-step strong{font-size:10px;font-weight:600}.ab-progress-step small{max-width:105px;overflow:hidden;text-overflow:ellipsis;margin-top:2px;font-size:8px;color:var(--ab-soft)}
.ab-progress-step.is-current{border-color:#71dccc66;background:#71dccc0c;color:var(--ab-text)}.ab-progress-step.is-current>span:first-child{border-color:var(--ab-accent);color:var(--ab-accent);box-shadow:0 0 18px #71dccc20}.ab-progress-step.is-reviewed,.ab-progress-step.is-changed{color:var(--ab-text)}.ab-progress-step.is-reviewed>span:first-child,.ab-progress-step.is-changed>span:first-child{background:var(--ab-accent);border-color:var(--ab-accent);color:#092624}.ab-progress-step.is-needs_review>span:first-child{border-color:#e4b875;color:#e4b875;background:#e4b87512}.ab-progress-step:not(:disabled):hover{transform:translateY(-1px);background:var(--ab-panel)}
.ab-mini-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 22px;border:1px solid var(--ab-line);border-radius:12px;overflow:hidden;background:var(--ab-line)}.ab-mini-summary>span{padding:11px 14px;background:var(--ab-panel)}.ab-mini-summary small,.ab-mini-summary strong{display:block}.ab-mini-summary small{margin-bottom:3px;color:var(--ab-soft);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.ab-mini-summary strong{font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab-mini-summary strong.error{color:#fda4af}
.ab-wizard-shell{max-width:1180px;margin:0 auto}.ab-stage{min-height:520px;border:1px solid var(--ab-line);border-radius:22px;padding:clamp(24px,4vw,54px);background:radial-gradient(circle at 90% 8%,#71dccc0a,transparent 28%),var(--ab-panel);box-shadow:0 24px 70px #02071316;animation:ab-arrive .3s ease}
.ab-stage-heading{max-width:720px;margin-bottom:32px}.ab-stage-heading .ab-kicker,.ab-kicker{margin-bottom:9px!important;color:var(--ab-accent);font-size:9px;font-weight:700;letter-spacing:.16em}.ab-stage-heading h2{font-family:var(--dv-font-display,Inter,sans-serif);font-size:clamp(27px,3.2vw,42px);font-weight:520;letter-spacing:-.045em}.ab-stage-heading>p:last-child,.ab-board-heading .ab-board-help{margin-top:10px!important;color:var(--ab-soft);font-size:13px;line-height:1.8}
.ab-stage-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:35px;padding-top:22px;border-top:1px solid var(--ab-line)}
.ab-stage-actions-right{display:flex;justify-content:flex-end;gap:10px}
.ab-requirements-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);gap:24px;align-items:start}.ab-brief{position:static;max-height:none;overflow:visible}.ab-brief form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.ab-brief .ab-details,.ab-brief .ab-caption,.ab-brief .ab-full{grid-column:1/-1}.ab-guide{border:1px solid #71dccc33;border-radius:16px;padding:25px;background:linear-gradient(145deg,#71dccc0b,transparent);color:var(--ab-soft)}.ab-guide-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#71dccc18;color:var(--ab-accent);font-size:19px}.ab-guide h3{margin:18px 0 9px;font-size:16px}.ab-guide p,.ab-guide li{font-size:11px;line-height:1.75}.ab-guide ul{margin-top:18px}
.ab-tier-stage-head{display:flex;justify-content:space-between;gap:30px;align-items:start}.ab-current-choice{min-width:220px;padding:15px;border:1px dashed var(--ab-line);border-radius:14px;background:var(--dv-bg-1,#101623);transition:border-color .2s,background .2s}.ab-current-choice>span{display:block;color:var(--ab-soft);font-size:9px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:9px}.ab-current-choice>div{display:flex;align-items:center;gap:10px}.ab-current-choice strong{font-size:12px}.ab-current-choice.drop-ready{border-color:var(--ab-accent);background:#71dccc12}
.ab-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:15px}.ab-candidate{display:flex;flex-direction:column;margin:0;min-height:310px;padding:19px;background:color-mix(in srgb,var(--ab-panel) 78%,var(--dv-bg-1,#101623) 22%)}.ab-candidate.is-selected{border-color:var(--ab-accent);box-shadow:0 0 0 1px #71dccc13;background:linear-gradient(145deg,#71dccc0d,var(--ab-panel))}.ab-candidate.is-unavailable{opacity:.56}.ab-candidate>p{min-height:58px}.ab-candidate .ab-btn{margin-top:auto}.ab-choice-check,.ab-choice-lock{display:grid;place-items:center;margin-left:auto;width:24px;height:24px;border-radius:50%;font-size:12px}.ab-choice-check{background:var(--ab-accent);color:#092624}.ab-choice-lock{border:1px solid var(--ab-line);color:var(--ab-soft)}.ab-tradeoff-grid{display:grid;gap:7px;margin:2px 0 17px}.ab-tradeoff-grid p{padding:9px 10px;border-radius:8px;background:#0000000a;color:var(--ab-soft);font-size:10px;line-height:1.55}.ab-tradeoff-grid span{display:block;margin-bottom:3px;font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ab-tier-guidance{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:22px;padding:20px;border:1px solid var(--ab-line);border-radius:14px;color:var(--ab-soft);font-size:11px}.ab-tier-guidance>div span{display:block;margin-bottom:5px;color:var(--ab-accent);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.ab-tier-guidance strong{color:var(--ab-text);font-size:11px;line-height:1.7}.ab-tier-guidance p,.ab-tier-guidance li{line-height:1.7}.ab-tier-guidance li.error{color:#fda4af}.ab-tier-guidance li.warning{color:#e4b875}
.ab-tag.unpriced{margin-left:4px;color:#e4b875;background:#e4b8750d;border-color:#e4b87544}.ab-evidence{display:flex;flex-wrap:wrap;gap:5px;margin:-2px 0 15px}.ab-evidence span{padding:4px 7px;border:1px solid var(--ab-line);border-radius:99px;color:var(--ab-soft);background:#00000009;font-size:8px;line-height:1.35}
.ab-fit-line{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:-4px 0 12px;font-size:8px}.ab-fit-line strong{color:var(--ab-accent);margin-right:3px}.ab-fit-line span{padding:3px 6px;border-radius:5px;background:#0000000b;color:var(--ab-soft)}.ab-change-signals{margin:-7px 0 16px;border-top:1px solid var(--ab-line);padding-top:10px;color:var(--ab-soft);font-size:9px}.ab-change-signals summary{cursor:pointer;color:var(--ab-text);font-weight:600}.ab-change-signals ul{margin:8px 0 0 17px;padding:0}.ab-change-signals li{margin:4px 0;line-height:1.5}.ab-confidence{padding:12px;border-radius:10px;background:#71dccc0a;border:1px solid #71dccc2b}.ab-confidence strong{font-size:11px;color:var(--ab-accent);text-transform:capitalize}.ab-confidence p{margin:5px 0 0!important;line-height:1.6}.ab-fix{margin:0 0 14px 22px;padding:8px 11px!important;font-size:9px!important}
.ab-onboarding{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:-6px 0 22px;padding:16px 18px;border:1px solid #71dccc3b;border-radius:13px;background:linear-gradient(120deg,#71dccc0d,transparent);color:var(--ab-soft)}.ab-onboarding strong{display:block;color:var(--ab-text);font-size:12px}.ab-onboarding p{margin:5px 0 0!important;font-size:10px!important;line-height:1.65}.ab-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.ab-section-heading h2{font-size:15px;margin:3px 0 0}.ab-section-heading>span{font-size:9px;color:var(--ab-accent);border:1px solid #71dccc35;border-radius:99px;padding:5px 8px}.ab-failure-lab,.ab-scenarios{margin-top:26px;padding:20px;border:1px solid var(--ab-line);border-radius:15px;background:var(--ab-panel)}.ab-failure-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.ab-failure-button{display:flex;justify-content:space-between;gap:8px;border:1px solid var(--ab-line);border-radius:9px;background:#0000000b;color:var(--ab-text);padding:11px;text-align:left;font-size:10px}.ab-failure-button:hover{border-color:#71dccc66}.ab-failure-button span{color:var(--ab-accent)}.ab-failure-result,.ab-comparison{font-size:10px;color:var(--ab-soft);line-height:1.6}.ab-impact-summary,.ab-comparison-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border-radius:10px;background:#00000010}.ab-impact-summary small,.ab-comparison-summary small{display:block;color:var(--ab-soft);text-transform:uppercase;font-size:8px}.ab-impact-summary strong,.ab-comparison-summary strong{color:var(--ab-text)}.ab-impact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:12px 0}.ab-impact-grid article{border:1px solid var(--ab-line);border-left:3px solid #e4b875;border-radius:8px;padding:10px}.ab-impact-grid article.unavailable,.ab-impact-grid article.isolated{border-left-color:#fb7185}.ab-impact-grid article.available{border-left-color:var(--ab-accent)}.ab-impact-grid article span{float:right;text-transform:uppercase;font-size:8px}.ab-impact-grid article p{margin:5px 0 0}.ab-impact-finding{margin-top:8px;padding:10px 12px;border-radius:8px;background:#0000000b}.ab-impact-finding strong{color:var(--ab-text)}.ab-impact-finding p{margin:3px 0}.ab-impact-finding small{color:var(--ab-accent)}.ab-scenarios>p{font-size:10px;color:var(--ab-soft)}.ab-scenario-actions{display:flex;gap:8px;margin:13px 0}.ab-comparison-summary{display:grid;grid-template-columns:repeat(3,1fr)}.ab-comparison ul{margin:10px 0;padding-left:17px}.ab-comparison b{text-transform:uppercase;font-size:8px;color:var(--ab-accent)}
.ab-review-tabs{display:flex;gap:6px;margin:20px 0;overflow-x:auto;padding-bottom:3px}.ab-review-tabs button{border:1px solid var(--ab-line);border-radius:999px;background:transparent;color:var(--ab-soft);padding:8px 13px;font-size:10px;white-space:nowrap}.ab-review-tabs button[aria-selected="true"]{border-color:#71dccc88;background:#71dccc14;color:var(--ab-text)}.ab-glossary{margin-top:22px;padding:15px 18px;border:1px solid var(--ab-line);border-radius:12px;color:var(--ab-soft);font-size:10px}.ab-glossary summary{cursor:pointer;color:var(--ab-text);font-weight:600}.ab-glossary dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 14px;margin:14px 0 0}.ab-glossary dt{color:var(--ab-accent);font-weight:600}.ab-glossary dd{margin:0}.ab-cost-lines details{border-bottom:1px solid var(--ab-line);padding:8px 0}.ab-cost-lines details summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;color:var(--ab-text)}.ab-cost-lines details p{margin:7px 0 0;line-height:1.6}
.ab-candidate-compare{margin:12px 0;border-top:1px solid var(--ab-line);padding-top:10px}.ab-candidate-compare summary{cursor:pointer;color:var(--ab-accent);font-size:10px}.ab-candidate-compare table{width:100%;border-collapse:collapse;margin-top:9px;font-size:9px}.ab-candidate-compare th,.ab-candidate-compare td{padding:6px;text-align:left;border-bottom:1px solid var(--ab-line);vertical-align:top}.ab-candidate-compare th{color:var(--ab-soft);font-weight:600}
#ab-review-stage .ab-board{grid-template-columns:repeat(3,minmax(0,1fr))}.ab-tier-alternatives{margin-top:12px;color:var(--ab-soft);font-size:9px;line-height:1.6}.ab-tier .ab-link{position:relative;z-index:3;color:var(--ab-accent)}.ab-status.clear{border-color:#71dccc55;color:var(--ab-accent)}
.ab-export{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:25px;align-items:center;padding:24px;border:1px solid #71dccc33;border-radius:16px;background:linear-gradient(120deg,#71dccc0c,transparent)}.ab-confirm-copy{display:flex;align-items:flex-start;gap:13px}.ab-confirm-mark{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border:1px solid var(--ab-line);border-radius:50%;color:var(--ab-soft);transition:background .2s,color .2s}.ab-confirm-mark.is-confirmed{background:var(--ab-accent);border-color:var(--ab-accent);color:#092624}.ab-export p{margin:5px 0 0}.ab-export-actions{justify-content:flex-end}.ab-export-actions [data-action=terraform]{border-style:dashed}
.ab-export .ab-terraform-readiness{margin-top:9px;padding-left:12px;border-left:2px solid #f5b86666;font-size:10px;line-height:1.55}.ab-export .ab-terraform-readiness.is-ready{border-left-color:var(--ab-accent);color:var(--ab-accent)}
.ab-network-summary{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:8px}.ab-network-summary span{padding:14px;border:1px solid var(--ab-line);border-radius:10px;background:#00000008}.ab-network-summary small,.ab-network-summary strong{display:block}.ab-network-summary small{margin-bottom:5px;color:var(--ab-soft);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.ab-network-summary strong{font-size:11px;text-transform:capitalize}.ab-field :disabled{opacity:.5;cursor:not-allowed}.ab-rule-meta{font-size:8px!important;color:var(--ab-soft)!important;text-transform:uppercase;letter-spacing:.06em}

@media(max-width:900px){.ab-stage{padding:27px;min-height:0}.ab-requirements-layout{grid-template-columns:1fr}.ab-tier-stage-head{display:block}.ab-current-choice{margin:-12px 0 25px;min-width:0}.ab-choice-grid{grid-template-columns:1fr 1fr}.ab-tier-guidance{grid-template-columns:1fr}#ab-review-stage .ab-board{grid-template-columns:1fr 1fr}.ab-export{grid-template-columns:1fr}.ab-export-actions{justify-content:flex-start}.ab-mini-summary{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.ab-progress-label{display:block!important}.ab-progress-step{min-width:auto}.ab-progress-step>span:nth-child(2){display:none}.ab-progress>i{min-width:10px}.ab-stage{padding:21px 16px;border-radius:16px}.ab-choice-grid,#ab-review-stage .ab-board{grid-template-columns:1fr}.ab-requirements-layout{gap:15px}.ab-brief form{display:block}.ab-candidate{min-height:0}.ab-stage-actions,.ab-stage-actions-right{flex-wrap:wrap}.ab-stage-actions .ab-btn{flex:1}.ab-stage-actions-right{width:100%}.ab-tier-stage-head .ab-stage-heading{margin-bottom:20px}.ab-export{padding:17px}.ab-export-actions .ab-btn{flex:1 1 100%}.ab-mini-summary{grid-template-columns:1fr 1fr}.ab-mini-summary>span{padding:9px 10px}}
@media(max-width:650px){.ab-failure-actions{grid-template-columns:1fr 1fr}.ab-comparison-summary{grid-template-columns:1fr}.ab-onboarding,.ab-section-heading{flex-direction:column}.ab-scenario-actions{flex-direction:column}}
