.ai-demo{border-top:1px solid #66583a;padding-top:50px}.demo-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:end}.demo-heading .mono{font-size:9px;color:var(--accent)}.demo-heading h2{font:600 clamp(42px,5vw,70px)/.95 var(--condensed);margin-top:16px}.demo-heading p{font-size:13px;line-height:1.9;color:#bcb4a4}.demo-scenarios{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 18px}.demo-scenarios button{padding:14px 18px;border:1px solid #66583f;min-height:44px;font:10px var(--mono)}.demo-scenarios button[aria-pressed=true]{background:var(--accent);color:#111}.demo-console{display:grid;grid-template-columns:1fr 1.3fr;border:1px solid #65583f;min-height:420px;background:#151410}.demo-input{padding:30px;border-right:1px solid #65583f}.demo-input>.mono{font-size:8px;color:#bdac88}.demo-input blockquote{font-size:17px;line-height:1.65;margin:24px 0 30px;color:#ece4d2}.demo-buttons{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.demo-buttons .action{font-size:9px;margin:0}.demo-buttons button:disabled{opacity:.5;cursor:wait}#demo-reset{font:8px var(--mono);color:#b2a48b}.demo-note{font-size:10px;line-height:1.7;color:#9f9582;margin-top:24px}.demo-output{padding:26px 30px;min-width:0}.demo-progress-head{display:flex;justify-content:space-between;gap:10px;font-size:8px;color:var(--accent);padding-bottom:22px;border-bottom:1px solid #4c4536}.demo-nodes{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:25px 0 22px;gap:8px}.demo-nodes li{display:flex;flex-direction:column;gap:10px;text-align:center;position:relative}.demo-nodes li:not(:last-child):after{content:'';position:absolute;top:17px;left:70%;width:70%;height:1px;background:#534a38}.demo-nodes button{font:11px var(--mono);padding:10px;margin:auto;min-width:36px;background:#252117;border:1px solid #5f5239}.demo-nodes span{font:8px var(--mono);color:#a89d88}.demo-nodes .is-current button,.demo-nodes .is-done button{background:var(--accent);color:#111;border-color:var(--accent)}.demo-nodes .is-current span{color:var(--accent)}.demo-result{border-top:1px solid #4c4536;padding-top:24px}.demo-result .mono{font-size:8px;color:#a99b80}.demo-result h4{font:500 36px/1.02 var(--condensed);margin:15px 0}.demo-result p{font-size:13px;line-height:1.8;color:#d0c4ad}.capacity{margin-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #65583f;padding-top:35px}.capacity .mono{font-size:8px;color:#aa9b7f}.capacity h4{font:600 50px/.96 var(--condensed);margin:14px 0}.capacity p{font-size:13px;line-height:1.8;color:#bcb19b}.capacity-controls{margin-top:24px;display:grid;gap:12px}.capacity-controls label{display:flex;justify-content:space-between;font-size:12px;gap:14px}.capacity-controls output{color:var(--accent);white-space:nowrap}.capacity-controls input{width:100%;accent-color:var(--accent);min-height:30px;margin-bottom:8px}.capacity-result{padding:28px 32px;background:#1a1711;align-self:center;border-left:2px solid var(--accent)}.capacity-result>strong{display:block;font:600 86px/1 var(--condensed);color:var(--accent);margin:20px 0 5px}.capacity-extra{display:flex;align-items:center;gap:20px;margin:24px 0;padding-top:20px;border-top:1px solid #584b34}.capacity-extra b{font:500 48px var(--condensed);color:#eee4cf}.capacity-extra span{font-size:12px;line-height:1.7;color:#bcb19b}.capacity-result .capacity-note{font-size:10px;line-height:1.8}.capacity-result>a{display:block;font:9px/1.8 var(--mono);color:var(--accent);margin-top:24px}#demo-result{min-height:230px}@media(max-width:750px){.demo-heading,.demo-console,.capacity{grid-template-columns:1fr}.demo-heading{gap:20px}.demo-input{border-right:0;border-bottom:1px solid #65583f;padding:23px 20px}.demo-input blockquote{font-size:16px}.demo-output{padding:23px 20px}.demo-result h4{font-size:33px}.demo-scenarios{gap:7px}.demo-scenarios button{font-size:9px;padding:12px}.demo-nodes{gap:5px}.demo-nodes span{font-size:7px}.demo-progress-head{font-size:7px}.capacity{gap:30px}.capacity-result{padding:25px}.capacity-result>strong{font-size:75px}.capacity-controls label{font-size:11px}}

.demo-nodes button{cursor:pointer;min-height:38px}.demo-nodes button:focus-visible{outline:2px solid #ffb400;outline-offset:4px}
