/* Six finite demonstrations: inherit the landing palette and preserve card geometry. */
.suite-demo{min-width:0;isolation:isolate}.suite-demo .card-mock-body{padding:16px;gap:12px;justify-content:flex-start;min-height:0}
.demo-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--paper-muted);line-height:1.5}.demo-topline>span:first-child{font-weight:600;color:var(--paper)}
.demo-chip{display:inline-flex;font-size:9px;line-height:1.5;border:1px solid var(--line-strong);padding:3px 6px;border-radius:4px;color:var(--paper-muted)}
.demo-model-stage{position:relative;background:radial-gradient(ellipse at 50% 60%,#5b8a9a13,transparent 70%);border:1px solid var(--line);border-radius:6px;overflow:hidden}.demo-building{display:block;width:100%;height:210px;overflow:visible}
.demo-ground{fill:#5b8a9a05;stroke:#5b8a9a66;stroke-width:.8;stroke-dasharray:3 5}.demo-structure{fill:#202b2c;stroke:#dc8f34;stroke-width:1.3}.demo-architecture{fill:#5b8a9a44;stroke:#84a4b0;stroke-width:.65}.demo-roof{fill:#394644}.demo-roof-detail{fill:none;stroke:#a9b6b4;stroke-width:1}.demo-services{fill:none;stroke:#72aa94;stroke-width:2.5;opacity:.72}.demo-level-guide{stroke:#6f7065;stroke-width:1;fill:none}.demo-level-label{fill:#a6a394;font:10px var(--font-body)}.demo-element{fill:#dc8f34;stroke:#f4b86c;stroke-width:1;opacity:0}.demo-model-key{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;font-size:8px;padding:0 8px 10px;color:var(--paper-muted)}.demo-model-key span::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:5px;background:#84a4b0}.demo-model-key .demo-key-structure::before{background:#dc8f34}.demo-model-key .demo-key-services::before{background:#72aa94}
[data-suite-demo=prisma][data-demo-frame="1"] .demo-architecture{transform:translate(-30px,-7px)}[data-suite-demo=prisma][data-demo-frame="1"] .demo-services{transform:translate(30px,7px)}[data-suite-demo=prisma][data-demo-frame="2"] .demo-architecture{opacity:.4}[data-suite-demo=prisma][data-demo-frame="2"] .demo-element{opacity:1}
.demo-element-card{padding:10px 11px;border:1px solid var(--line);border-radius:5px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:10px;color:var(--paper-muted)}.demo-element-card b{font-size:10px;color:var(--bronze);font-weight:500}
.demo-steps{display:flex;gap:5px;min-width:0}.demo-steps button{display:flex;flex:1;min-width:0;align-items:center;justify-content:center;gap:5px;padding:7px 5px;min-height:36px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--paper-muted);font:500 9px/1.4 var(--font-body);cursor:pointer;overflow-wrap:anywhere}.demo-steps button[aria-pressed=true]{border-color:var(--bronze);color:var(--paper);background:#dc8f3412}.demo-step-number{font-size:8px;color:var(--bronze);font-variant-numeric:tabular-nums}.demo-caption{min-height:34px;font-size:10px;line-height:1.65;color:var(--paper-muted)}.demo-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.demo-disclosure{font-size:8px;line-height:1.5;color:var(--paper-faint);max-width:25ch}.demo-footer button{font:600 10px/1.3 var(--font-body);padding:8px 10px;min-height:34px;border:1px solid var(--line-strong);color:var(--paper);border-radius:5px;white-space:nowrap;background:#171a16;cursor:pointer}.demo-playing .demo-footer button{border-color:#dc8f3488;color:var(--bronze)}.demo-time{height:2px;background:var(--line);margin-top:0}.demo-time span{display:block;height:100%;width:0;background:var(--bronze)}
.demo-plan-stage{border:1px solid var(--line);border-radius:6px;background:#111713}.demo-plan-stage svg{display:block;width:100%;height:190px}.demo-room-fill{fill:#a9b6a508}.demo-room-line{stroke:#98afa4;stroke-width:2;fill:none;stroke-dasharray:1}.demo-room-door{stroke:#98afa488;stroke-width:1;fill:none}.demo-plan-label{fill:#aaa394;font:9px var(--font-body)}.demo-tile{fill:#5b8a9a22;stroke:#81948b88;stroke-width:.6;opacity:.25}[data-suite-demo=mosaico][data-demo-frame="1"] .demo-tile,[data-suite-demo=mosaico][data-demo-frame="2"] .demo-tile{opacity:1}[data-suite-demo=mosaico][data-demo-frame="2"] .demo-tile-cut{fill:#dc8f3455;stroke:#dc8f34}.demo-quantities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.demo-quantities div{padding:8px;border:1px solid var(--line);border-radius:5px}.demo-quantities span{display:block;font-size:8px;color:var(--paper-muted);line-height:1.5}.demo-quantities b{display:block;font-size:13px;font-weight:600;color:var(--paper);margin-top:4px;font-variant-numeric:tabular-nums}
.demo-ring{width:78px;height:78px;flex:none;overflow:visible}.demo-ring circle{fill:none;stroke-width:5}.demo-ring-track{stroke:#3e4136}.demo-ring-value{stroke:var(--bronze);transform:rotate(-90deg);transform-origin:44px 44px}.demo-ring text{fill:var(--paper);font:600 15px var(--font-body)}.demo-vigia-overview,.demo-umbral-summary{display:flex;align-items:center;gap:15px}.demo-vigia-overview>div,.demo-umbral-summary>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;font-size:10px;color:var(--paper)}.demo-vigia-overview span,.demo-umbral-summary span{font-size:9px;color:var(--paper-muted)}.demo-curve{display:block;height:110px;width:100%;overflow:visible}.demo-chart-grid{stroke:#5b8a9a33;stroke-width:1;fill:none}.demo-curve-plan{stroke:#7c8c87;stroke-width:1.5;stroke-dasharray:4 4;fill:none}.demo-curve-line{stroke:var(--bronze);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;fill:none;stroke-dasharray:1}.demo-curve-end{fill:var(--bronze)}.demo-curve text{font:9px var(--font-body);fill:#9a9187}.demo-curve-key{display:flex;justify-content:flex-end;gap:12px;font-size:8px;color:var(--paper-muted);margin-top:-7px}.demo-curve-key b{font-weight:500;color:var(--bronze)}.demo-bars{display:flex;flex-direction:column;gap:8px}.demo-bars>div{display:grid;grid-template-columns:45px 1fr 30px;align-items:center;gap:8px;font-size:9px;color:var(--paper-muted)}.demo-bars i{display:block;height:5px;width:var(--bar);background:#dc8f34;transform-origin:left;border-radius:3px}.demo-bars b{font-size:9px;font-weight:500;color:var(--paper);text-align:right}
.demo-quality-stage .demo-building{height:190px}.demo-quality-pins .demo-pin-ok{fill:#72aa94;stroke:#a7c5b2;stroke-width:1.5}.demo-quality-pins .demo-pin-open{fill:#dc8f34;stroke:#f7d09d;stroke-width:1.5}.demo-pin-ring{fill:none;stroke:#dc8f34;stroke-width:1;stroke-dasharray:2 3}.demo-quality-record{display:flex;flex-direction:column;gap:6px}.demo-inspection,.demo-ncr{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px;border:1px solid var(--line);border-radius:5px;font-size:10px;color:var(--paper-muted)}[data-suite-demo=cuspide][data-demo-frame="1"] .demo-inspection{background:#72aa9410;border-color:#72aa9477}[data-suite-demo=cuspide][data-demo-frame="2"] .demo-ncr{background:#dc8f3410;border-color:#dc8f3488}.demo-evidence{display:flex;align-items:center;gap:6px;font-size:9px;line-height:1.6;color:var(--paper-muted);padding:2px 8px}.demo-evidence-icon{font-size:16px;color:#98afa4}
.suite-demo .pill{font-size:8px;flex:none}.demo-house-open{aspect-ratio:16/9;border-radius:5px;border:1px solid var(--line);overflow:hidden}.demo-house-open .demo-house{width:100%;height:100%;object-fit:cover}.demo-house-open .capture-enlarge{font-size:8px;padding:5px 7px;right:7px;bottom:7px}.demo-house-steps{gap:5px}.demo-house-steps button{display:flex;flex-direction:column;align-items:stretch;gap:5px;padding:3px 3px 6px;font-size:8px;overflow:hidden}.demo-house-steps img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:2px}.demo-house-steps button span{text-align:center}.demo-delivery{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px;line-height:1.5;color:var(--paper)}
.demo-operations{display:flex;flex-direction:column;gap:7px}.demo-operation{display:flex;align-items:center;gap:9px;padding:10px 8px;border:1px solid var(--line);border-radius:5px;min-width:0}.demo-operation.demo-selected{border-color:#dc8f3488;background:#dc8f340b}.demo-operation-icon{font-size:9px;color:var(--bronze);flex:none;width:19px}.demo-operation>div{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.demo-operation b{font-size:10px;color:var(--paper);font-weight:500;line-height:1.45}.demo-operation span:not(.demo-operation-icon){font-size:8px;line-height:1.5;color:var(--paper-muted)}
@media(max-width:760px){.suite-demo .card-mock-body{padding:12px;gap:10px}.demo-building{height:190px}.demo-model-key{font-size:8px;gap:8px}.demo-step-number{display:none}.demo-steps button{min-height:40px;font-size:9px}.demo-quantities b{font-size:12px}.demo-house-steps button{font-size:7px;min-height:0}.demo-operation{gap:6px;padding:8px 6px}.demo-operation b{font-size:9px}.demo-operation .pill{font-size:7px;padding:3px 4px}.demo-footer button{font-size:9px}.demo-topline{font-size:9px}.demo-chip{font-size:8px}.demo-caption{font-size:10px;min-height:34px}}
@media(prefers-reduced-motion:reduce){.suite-demo *{scroll-behavior:auto!important}}
.demo-plan-stage .demo-detailed-plan{height:230px}.demo-context-floor{fill:#202923;stroke:none}.demo-plan-walls{fill:none;stroke:#b6b6a3;stroke-width:5;stroke-linecap:square;stroke-linejoin:miter}.demo-plan-windows{fill:none;stroke:#9ec4cf;stroke-width:1.3}.demo-plan-doors{fill:none;stroke:#a3b4a5;stroke-width:1}.demo-plan-windows .demo-opening,.demo-plan-doors .demo-opening{stroke:#111713;stroke-width:8}.demo-room-names{fill:#d0d0bc;font:11px var(--font-body);letter-spacing:.15px}.demo-plan-north{fill:none;stroke:#a8b4a5;stroke-width:1}.demo-detailed-plan .demo-room-line{stroke:#dc8f34;stroke-width:1.2}.demo-plan-key{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;font-size:8px;color:var(--paper-muted);padding:0 8px 12px}.demo-plan-key span::before{content:'';display:inline-block;width:10px;height:2px;margin-right:5px;vertical-align:middle;background:#b6b6a3}.demo-ring text,.demo-bars b,.demo-document-count{font-variant-numeric:tabular-nums}.demo-umbral-summary .demo-document-count{color:var(--paper)}.demo-document-count b{font-size:14px;font-weight:600;color:var(--bronze)}.demo-document-count span{font-size:9px}
@media(max-width:760px){.demo-plan-stage .demo-detailed-plan{height:210px}.demo-plan-key{font-size:8px;gap:10px}}
/* Room tones identify the same spaces during outlining, laying and calculation. */
.demo-zone-living{--zone-ink:#d6a35e;--zone-fill:#d6a35e24;--zone-tile:#d6a35e18;--zone-cut:#d6a35e42}
.demo-zone-bedroom{--zone-ink:#89b9ac;--zone-fill:#89b9ac24;--zone-tile:#89b9ac18;--zone-cut:#89b9ac42}
.demo-zone-bath{--zone-ink:#8fb9d1;--zone-fill:#8fb9d124;--zone-tile:#8fb9d118;--zone-cut:#8fb9d142}
.demo-zone-kitchen{--zone-ink:#b4a2cd;--zone-fill:#b4a2cd24;--zone-tile:#b4a2cd18;--zone-cut:#b4a2cd42}
.demo-zone .demo-room-fill{fill:var(--zone-fill)}
.demo-zone .demo-room-line{stroke:var(--zone-ink);stroke-width:1;opacity:.8}
.demo-zone .demo-tile{fill:var(--zone-tile);stroke:var(--zone-ink);stroke-opacity:.6;opacity:0}
[data-suite-demo=mosaico][data-demo-frame="2"] .demo-zone .demo-tile-cut{fill:var(--zone-cut);stroke:var(--zone-ink);stroke-opacity:1}
.demo-plan-key span::before{width:6px;height:6px;border-radius:2px;background:var(--zone-ink)}
.demo-room-names text{fill:#eee9da;paint-order:stroke;stroke:#16201d;stroke-width:4px;stroke-linejoin:round}
.demo-quantity-scope{font-size:9px;color:var(--paper-muted);line-height:1.5;margin-bottom:-6px}
