.demo-shell{--demo-accent: #087f76;min-height:100vh;background:#f8f7f3;color:#292b28;font-family:Figtree,system-ui,sans-serif}.demo-header{max-width:1440px;margin:auto;padding:24px 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dedfd6;gap:20px}.demo-wordmark{font-size:23px;font-weight:600;letter-spacing:-1px;text-decoration:none;color:inherit}.demo-wordmark span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:2px;font-weight:400;margin-top:2px}.demo-back{font-size:12px;color:#61675e;text-decoration:underline;text-underline-offset:4px}.demo-main{max-width:1440px;margin:auto;padding:48px 36px 32px}.demo-intro{margin-bottom:32px}.demo-eyebrow{text-transform:uppercase;letter-spacing:1.7px;font-size:10px;font-weight:600;color:var(--demo-accent);margin:0 0 12px}.demo-intro h1{font-family:Georgia,serif;font-size:clamp(32px,4vw,52px);line-height:1.12;font-weight:400;letter-spacing:-1.6px;margin:0 0 14px}.demo-intro>p:last-child{color:#687063;font-size:14px}.demo-config{display:flex;flex-wrap:wrap;gap:20px;padding:20px 0;border-top:1px solid #dedfd6;border-bottom:1px solid #dedfd6;margin-bottom:28px;align-items:end}.demo-config label{display:grid;gap:8px;min-width:210px;font-size:11px;font-weight:600}.demo-config select{padding:11px 36px 11px 12px;border:1px solid #ced0c7;border-radius:4px;color:#292b28;background:#fff;font:inherit;min-height:44px}.demo-shop-label{display:flex;align-items:center;gap:7px;padding-bottom:15px;color:#697060;font-size:11px}.demo-shop-label span{width:7px;height:7px;border-radius:100%}.demo-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:36px;align-items:start}.demo-layout>*{min-width:0}.viewer-stage{height:580px;position:relative;border:1px solid #dfe1d7;border-radius:8px;overflow:hidden;background:#fcfbfa}.viewer-canvas{width:100%;height:100%;touch-action:none;cursor:grab}.viewer-canvas canvas{display:block}.viewer-badge{position:absolute;top:16px;left:16px;padding:7px 11px;background:#fffffff0;border:1px solid #e1e3d9;border-radius:20px;font-size:11px;pointer-events:none}.viewer-fallback,.viewer-loading{display:flex;align-items:center;justify-content:center;padding:32px;text-align:center;background:#f0f0e9;min-height:400px}.viewer-fallback{position:absolute;top:0;right:0;bottom:0;left:0}.viewer-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.viewer-tools button,.demo-choices button{border:1px solid #d0d4c8;border-radius:4px;background:#fff;padding:10px 12px;min-height:44px;font-size:12px;cursor:pointer;transition:background .15s}.viewer-tools button:hover,.demo-choices button:hover{background:#ecefe6}.viewer-tools button:disabled{opacity:.5;cursor:default}.viewer-hint{font-size:11px;color:#737b6b;margin-top:12px}.demo-disclaimer{font-size:11px;color:#737b6b;line-height:1.7;max-width:520px;margin-top:20px}.demo-options{background:#fff;border:1px solid #dfe1d7;border-radius:8px;padding:26px}.demo-options h2{font-family:Georgia,serif;font-size:27px;letter-spacing:-.5px;font-weight:400;margin:0 0 12px}.demo-description{font-size:12px;color:#6b7265;line-height:1.7;margin-bottom:24px}.demo-options fieldset{margin:0 0 22px;padding:0;border:0}.demo-options legend{font-size:11px;font-weight:600;margin-bottom:10px}.demo-choices{display:flex;flex-wrap:wrap;gap:6px}.demo-choices button[aria-pressed=true]{background:var(--demo-accent);color:#fff;border-color:var(--demo-accent)}.demo-preview-note{padding-top:18px;border-top:1px solid #e5e7df;margin-top:24px;font-size:11px;color:#737b6b;line-height:1.6}.demo-footer{max-width:1368px;margin:24px auto 0;padding:24px 0;border-top:1px solid #dedfd6;font-size:11px;color:#737b6b}.demo-shell :focus-visible{outline:2px solid var(--demo-accent);outline-offset:3px}@media(max-width:900px){.demo-layout{grid-template-columns:minmax(0,1fr)}.viewer-stage{height:460px}}@media(max-width:480px){.demo-header{padding:20px 16px}.demo-back{max-width:110px;text-align:right}.demo-main{padding:32px 16px 20px}.demo-config{gap:14px}.demo-config label{width:100%;min-width:0}.demo-config select{max-width:100%}.demo-shop-label{padding-bottom:0}.viewer-stage{height:400px}.demo-options{padding:20px 16px}.demo-footer{margin:12px 16px 0}}.viewer-tools .viewer-ar,.room-launch{background:var(--demo-accent);color:#fff;border-color:var(--demo-accent)}.viewer-tools .viewer-ar:hover{filter:brightness(.92);background:var(--demo-accent)}.room-dialog{max-width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);border:1px solid #dfe1d7;border-radius:10px;padding:0;background:#fff;color:#292b28}.room-dialog::backdrop{background:#111a17aa}.room-content{padding:28px;position:relative}.room-content h2{font:400 29px Georgia,serif;margin:10px 0}.room-content p{font-size:12px;line-height:1.7;margin:12px 0}.room-content .demo-eyebrow{margin-right:24px;font-size:10px}.room-content button{min-height:44px;padding:10px 14px;border:1px solid #ced0c7;border-radius:4px;cursor:pointer;font-size:12px}.room-content .room-close{position:absolute;right:8px;top:8px;border:0;font-size:24px;background:transparent}.room-content .room-launch{display:block;width:100%}.room-launch:disabled{opacity:.6;cursor:default}.room-qr{display:block;width:220px;height:220px;margin:20px auto}.room-notice{padding:12px;border:1px solid #dedfd6;background:#f8f7f3;border-radius:4px}.room-link{display:grid;gap:6px;font-size:11px;margin:16px 0 10px}.room-link input{width:100%;min-width:0;font-size:11px;padding:10px;border:1px solid #ced0c7;border-radius:4px}.room-content .room-footnote{color:#737b6b;font-size:11px;margin-bottom:0}@media(max-width:480px){.room-content{padding:22px 18px}.demo-wordmark{font-size:20px}.demo-wordmark span{font-size:8px;letter-spacing:1px}}.studio-storefront{padding:20px;min-height:0}.studio-storefront>h2{font:400 28px Georgia,serif;margin:0 0 24px}.studio-purchase{display:grid;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #dedfd6}.studio-purchase input,.studio-purchase button{min-height:44px;padding:10px;border:1px solid #ced0c7;border-radius:4px}.studio-purchase input{display:block;max-width:100px;margin-top:8px}.studio-purchase button{background:var(--demo-accent);color:#fff;cursor:pointer}.studio-purchase button:disabled{opacity:.5;cursor:default}.studio-purchase a{text-decoration:underline;font-size:12px}
