/* Smart Showroom™ Visualizer Free v0.2 — scoped styling, no global WP overrides. */
.tss-vfree{--vf-ink:#1c2734;--vf-gold:#b99c57;--vf-emerald:#1f7a6d;max-width:1260px;margin:56px auto;padding:32px;background:linear-gradient(140deg,#f6f8f7,#fff);border:1px solid #e5eae7;border-radius:24px;color:var(--vf-ink);box-sizing:border-box;box-shadow:0 18px 56px rgba(15,40,35,.07);font-family:Inter,system-ui,sans-serif}
.tss-vfree *{box-sizing:border-box}.tss-vfree-heading{margin-bottom:26px}.tss-vfree-eyebrow{font-size:11px;font-weight:800;color:var(--vf-emerald);letter-spacing:.17em}.tss-vfree h2{margin:9px 0;font-size:clamp(24px,3vw,36px);line-height:1.2;color:var(--vf-ink)}.tss-vfree-heading p{margin:0;color:#66757b;font-size:14px}
.tss-vfree-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(255px,.8fr);gap:25px;align-items:start}.tss-vfree-scene-wrap{min-width:0}.tss-vfree-scene{position:relative;aspect-ratio:1100/622;overflow:hidden;background:#ddd6cb;border-radius:15px;border:1px solid #dde1dd;isolation:isolate}.tss-vfree-room,.tss-vfree-furniture,.tss-vfree-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.tss-vfree-room{z-index:0}.tss-vfree-canvas{z-index:1}.tss-vfree-furniture{z-index:2;pointer-events:none}.tss-vfree-loading{position:absolute;z-index:5;inset:auto 0 0;padding:10px;display:grid;place-items:center;color:#fff;background:rgba(13,38,36,.74);font-size:12px}.tss-vfree-loading[hidden],.tss-vfree img[hidden]{display:none!important}.tss-vfree-scene-caption{position:absolute;left:13px;top:13px;z-index:4;background:rgba(22,40,33,.75);color:white;font-size:10px;font-weight:800;letter-spacing:.08em;padding:9px 12px;border-radius:99px;pointer-events:none;max-width:90%}.tss-vfree-scene-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:11px 2px;font-size:11px}.tss-vfree-status{font-weight:750;color:var(--vf-emerald)}.tss-vfree-disclaimer{color:#738083}
.tss-vfree-controls{padding:20px;background:#fff;border:1px solid #e6eae7;border-radius:17px;display:flex;flex-direction:column;gap:8px;box-shadow:0 8px 22px rgba(20,45,38,.04)}.tss-vfree-controls label{font-size:12px;font-weight:800;margin-top:9px}.tss-vfree-controls select{appearance:auto;display:block;width:100%;min-height:43px;padding:8px 10px;border:1px solid #cedbd6;border-radius:9px;background:white;color:#172e2a;font:inherit;font-size:13px}.tss-vfree-controls select:focus,.tss-vfree-compare:focus{outline:3px solid #cce6df;outline-offset:2px}.tss-vfree-controls select:disabled{color:#8a9591;background:#f7f8f7}.tss-vfree-thumb-row{display:flex;gap:12px;align-items:center;padding:10px;border-radius:12px;background:#f5f9f6;min-height:77px}.tss-vfree-thumb-row img{width:55px;height:55px;border-radius:8px;object-fit:cover}.tss-vfree-thumb-placeholder{display:inline-flex;align-items:center;justify-content:center;width:55px;height:55px;background:#e3e8e5;border-radius:8px;color:#456057;font-size:26px}.tss-vfree-thumb-row strong{display:block;font-size:13px;line-height:1.3}.tss-vfree-thumb-row small{font-size:11px;color:#64726c}.tss-vfree-joints{display:flex;align-items:center;gap:8px}.tss-vfree-joints select{flex:1}.tss-vfree-joint-preview{flex:0 0 24px;width:24px;height:24px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #d6ded9}.tss-vfree-preview-actions{margin-top:4px}.tss-vfree-compare{display:block;width:100%;padding:10px 12px;min-height:40px;background:#eef6f3;color:#19685a;border:1px solid #cde3db;border-radius:9px;cursor:pointer;font-size:12px;font-weight:750}.tss-vfree-compare:hover:not(:disabled){background:#e0f0ea}.tss-vfree-compare:disabled{opacity:.4;cursor:not-allowed}.tss-vfree-note{font-size:11px;line-height:1.5;color:#64736e;margin:9px 0}.tss-vfree-cta{min-height:44px;display:flex;justify-content:center;align-items:center;gap:7px;padding:11px 12px;border-radius:10px;background:var(--vf-emerald);color:white!important;text-decoration:none!important;text-align:center;font-size:12px;font-weight:750}.tss-vfree-cta:hover{background:#15594f}.tss-vfree-empty{padding:12px 18px;color:#64736e}
@media(max-width:800px){.tss-vfree{padding:18px;margin:26px 10px;border-radius:17px}.tss-vfree-layout{grid-template-columns:1fr;gap:12px}.tss-vfree-controls{padding:14px}.tss-vfree-heading{margin-bottom:15px}}
@media(prefers-reduced-motion:reduce){.tss-vfree *{scroll-behavior:auto!important}}
