:root{
  --viz-green:#004e29;
  --viz-green-2:#08683a;
  --viz-deep:#064f2c;
  --viz-gold:#c59e41;
  --viz-gold-soft:#e8bd54;
  --viz-surface:#fbf9f8;
  --viz-ivory:#faf9f6;
  --viz-sand:#f2ebe1;
  --viz-line:#d9e5dd;
  --viz-text:#1b1c1c;
  --viz-muted:#526058;
  --viz-danger:#b42318;
  --viz-shadow:0 18px 52px rgba(29,52,39,.12);
}
body.page-template-flooring-visualizer{background:var(--viz-surface)}
body.als-viz-app-active .als-v16-utility,body.als-viz-app-active .als-v16-header,body.als-viz-app-active .als-v16-bottom-nav,body.als-viz-app-active .als-v16-footer{display:none!important}
body.als-viz-app-active{background:#f8f6f3}
.als-viz{font-family:"IBM Plex Sans Arabic",Inter,sans-serif;color:var(--viz-text);background:var(--viz-surface);overflow:hidden}
.als-viz button,.als-viz input,.als-viz select{font:inherit}
.als-viz [hidden]{display:none!important}
.als-viz-eyebrow,.als-viz-panel__head>span,.als-viz-intent header>span,.als-viz-trust header>span,.als-viz-faq header>span{display:inline-flex;color:var(--viz-gold);font-weight:700;font-size:.83rem;letter-spacing:.03em}
.als-viz-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);align-items:center;gap:72px;min-height:690px;padding-block:72px 92px}
.als-viz-hero__content h1{font-size:clamp(2.5rem,4.4vw,4.65rem);line-height:1.08;color:var(--viz-deep);max-width:740px;margin:18px 0 24px;font-weight:700;letter-spacing:-.035em}
.als-viz-hero__content>p{font-size:1.16rem;line-height:1.9;color:var(--viz-muted);max-width:700px}
.als-viz-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.als-viz-btn,.als-viz-final button{border:1px solid var(--viz-green);min-height:54px;border-radius:12px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;cursor:pointer;transition:.25s ease}
.als-viz-btn.is-primary,.als-viz-final button{background:var(--viz-green);color:#fff;box-shadow:0 12px 24px rgba(0,78,41,.18)}
.als-viz-btn.is-outline{background:#fff;color:var(--viz-green)}
.als-viz-btn:hover,.als-viz-final button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(0,78,41,.18)}
.als-viz-privacy{display:flex;align-items:center;gap:8px!important;font-size:.9rem!important;color:#667169!important;margin-top:18px}
.als-viz-privacy .material-symbols-outlined{font-size:18px}
.als-viz-hero__demo{position:relative;aspect-ratio:4/3;border-radius:22px;overflow:hidden;box-shadow:var(--viz-shadow);background:#e5e0d9;isolation:isolate}
.als-viz-hero__demo>img{width:100%;height:100%;object-fit:cover}
.als-viz-hero__sample{position:absolute;inset:0 0 0 50%;background-image:var(--sample-texture);background-size:150px;mix-blend-mode:multiply;opacity:.82;clip-path:polygon(0 63%,100% 62%,100% 100%,0 100%)}
.als-viz-hero__demo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.14));pointer-events:none}
.als-viz-hero__divider{position:absolute;z-index:3;top:0;bottom:0;left:50%;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.als-viz-hero__divider:before{content:"";position:absolute;top:50%;left:50%;width:46px;height:46px;border-radius:50%;background:var(--viz-gold);transform:translate(-50%,-50%);box-shadow:0 6px 18px rgba(0,0,0,.2)}
.als-viz-hero__divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.7rem;font-weight:700;color:#222;z-index:2}
.als-viz-hero__demo>small{position:absolute;z-index:4;bottom:18px;right:18px;background:rgba(250,249,246,.9);backdrop-filter:blur(12px);padding:10px 14px;border-radius:10px;color:var(--viz-deep);font-weight:600}
.als-viz-intent{padding-block:70px 90px}
.als-viz-intent header,.als-viz-trust header,.als-viz-faq header{text-align:center;max-width:720px;margin:0 auto 38px}
.als-viz-intent h2,.als-viz-trust h2,.als-viz-faq h2{font-size:clamp(1.85rem,3vw,2.7rem);color:var(--viz-deep);margin:10px 0 0}
.als-viz-intent>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:1000px;margin:auto}
.als-viz-intent>div>button{border:1px solid #d7e3da;background:#fff;border-radius:20px;padding:36px;text-align:start;cursor:pointer;transition:.28s ease;box-shadow:0 12px 34px rgba(24,51,36,.05)}
.als-viz-intent>div>button:hover{border-color:var(--viz-green-2);transform:translateY(-5px);box-shadow:var(--viz-shadow)}
.als-viz-intent .material-symbols-outlined{width:56px;height:56px;display:grid;place-items:center;border-radius:15px;background:var(--viz-green);color:#fff;margin-bottom:18px}
.als-viz-intent strong{display:block;color:var(--viz-deep);font-size:1.35rem;margin-bottom:8px}
.als-viz-intent p{color:var(--viz-muted);line-height:1.75;min-height:56px;margin:0 0 18px}
.als-viz-intent b{color:var(--viz-green)}
.als-viz-trust{background:#f7f4ef;padding:88px 0}
.als-viz-trust ol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1080px;margin:auto;list-style:none;padding:0}
.als-viz-trust li{background:#fff;border:1px solid #ebe5dc;border-radius:18px;padding:28px;display:flex;gap:18px;align-items:flex-start}
.als-viz-trust li>span{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--viz-green);color:#fff;font-weight:700;flex:0 0 auto}
.als-viz-trust strong{display:block;font-size:1.08rem;color:var(--viz-deep);margin-bottom:5px}
.als-viz-trust p{margin:0;color:var(--viz-muted);line-height:1.65}
.als-viz-faq{padding-block:96px}
.als-viz-faq>div{max-width:920px;margin:auto;display:grid;gap:12px}
.als-viz-faq details{background:#fff;border:1px solid #e4e7e4;border-radius:14px;overflow:hidden}
.als-viz-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:20px 22px;font-weight:700;cursor:pointer;color:var(--viz-deep)}
.als-viz-faq summary::-webkit-details-marker{display:none}
.als-viz-faq details[open] summary .material-symbols-outlined{transform:rotate(180deg)}
.als-viz-faq p{padding:0 22px 22px;margin:0;color:var(--viz-muted);line-height:1.8}
.als-viz-final{padding-bottom:96px}
.als-viz-final>div{background:linear-gradient(135deg,var(--viz-green),#0c7342);color:#fff;border-radius:24px;padding:52px;text-align:center;box-shadow:0 22px 44px rgba(0,78,41,.2)}
.als-viz-final .material-symbols-outlined{font-size:46px;color:var(--viz-gold-soft)}
.als-viz-final h2{font-size:2.15rem;margin:12px 0}
.als-viz-final p{opacity:.84;margin:0 auto 25px;max-width:720px}
.als-viz-final button{background:var(--viz-gold-soft);color:#1b1c1c;border-color:var(--viz-gold-soft)}

/* App shell */
.als-viz-app{min-height:100vh;background:#f8f6f3}
.als-viz-appbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.95);backdrop-filter:blur(18px);border-bottom:1px solid #e5e7e5}
.admin-bar .als-viz-appbar{top:32px}
.als-viz-appbar>.als-v16-shell{min-height:82px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:28px}
.als-viz-appbar__brand img{width:150px;max-height:54px;object-fit:contain}
.als-viz-steps{list-style:none;padding:0;margin:0;display:flex;justify-content:center;align-items:center;gap:14px}
.als-viz-steps li{display:flex;align-items:center;gap:8px;color:#7a847e;font-size:.87rem;white-space:nowrap;position:relative;padding:27px 10px 24px}
.als-viz-steps li:not(:last-child):after{content:"";width:38px;height:1px;background:#cfd6d1;margin-inline-start:14px}
.als-viz-steps span{width:26px;height:26px;border-radius:50%;border:1px solid #aeb9b1;display:grid;place-items:center;font-weight:700}
.als-viz-steps li.is-active{color:var(--viz-deep);font-weight:700;border-bottom:2px solid var(--viz-green)}
.als-viz-steps li.is-active span,.als-viz-steps li.is-done span{background:var(--viz-green);color:#fff;border-color:var(--viz-green)}
.als-viz-steps li.is-done{color:var(--viz-green)}
.als-viz-appbar__actions{display:flex;align-items:center;gap:10px}
.als-viz-appbar__actions button{border:1px solid #d1d8d3;background:#fff;color:var(--viz-deep);border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:600}
.als-viz-workspace{padding-block:52px 100px;min-height:760px}
.als-viz-panel{animation:vizFade .28s ease}
@keyframes vizFade{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
.als-viz-panel__head{max-width:850px;margin:0 auto 34px;text-align:center}
.als-viz-panel__head h1{font-size:clamp(2rem,3.6vw,3.35rem);line-height:1.15;color:var(--viz-deep);margin:10px 0 14px}
.als-viz-panel__head p{color:var(--viz-muted);font-size:1.06rem;line-height:1.75;margin:0}
.als-viz-panel__head p .material-symbols-outlined{font-size:17px;vertical-align:middle;margin-inline-end:6px}
.als-viz-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:880px;margin:0 auto 28px}
.als-viz-mode-switch button{display:flex;align-items:center;gap:14px;border:1px solid #d6dfd9;border-radius:16px;background:#fff;padding:22px;cursor:pointer;color:var(--viz-deep);text-align:start}
.als-viz-mode-switch button.is-active{border:2px solid var(--viz-green);box-shadow:0 0 0 4px rgba(0,78,41,.06)}
.als-viz-mode-switch .material-symbols-outlined{width:48px;height:48px;border-radius:13px;background:#eef5f0;display:grid;place-items:center;color:var(--viz-green)}
.als-viz-product-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 auto 22px;max-width:1180px}
.als-viz-product-tools>label{position:relative;display:flex;align-items:center;min-width:330px;background:#fff;border:1px solid #d9e0db;border-radius:12px}
.als-viz-product-tools input{width:100%;border:0;background:transparent;padding:14px 45px 14px 14px;outline:0}
.als-viz-product-tools label .material-symbols-outlined{position:absolute;inset-inline-start:14px;color:#6e7972}
.als-viz-product-tools>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.als-viz-product-tools>div button{border:1px solid #d5ddd7;background:#fff;color:var(--viz-deep);border-radius:999px;padding:9px 14px;cursor:pointer}
.als-viz-product-tools>div button.is-active{background:var(--viz-green);color:#fff;border-color:var(--viz-green)}
.als-viz-products{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.als-viz-product{background:#fff;border:1px solid #e0e6e2;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:.22s ease;position:relative}
.als-viz-product:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(22,47,33,.09)}
.als-viz-product.is-selected{border:2px solid var(--viz-green);box-shadow:0 0 0 4px rgba(0,78,41,.07)}
.als-viz-product__image{aspect-ratio:1.22;overflow:hidden;background:#ede9e3}
.als-viz-product__image img{width:100%;height:100%;object-fit:cover;transition:.4s ease}
.als-viz-product:hover img{transform:scale(1.04)}
.als-viz-product__body{padding:15px;display:flex;flex-direction:column;gap:6px;flex:1}
.als-viz-product__body small{color:var(--viz-gold);font-weight:700}
.als-viz-product__body h3{font-size:1rem;margin:0;color:var(--viz-deep)}
.als-viz-product__body p{font-size:.82rem;color:#68736c;margin:0}
.als-viz-product__body button{margin-top:auto;border:1px solid var(--viz-green);background:#fff;color:var(--viz-green);border-radius:9px;padding:10px;cursor:pointer;font-weight:700}
.als-viz-product.is-selected .als-viz-product__body button{background:var(--viz-green);color:#fff}
.als-viz-selection-bar{position:sticky;bottom:16px;z-index:20;max-width:1180px;margin:26px auto 0;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border:1px solid #d9e2dc;border-radius:16px;padding:14px 16px;box-shadow:0 16px 38px rgba(26,52,38,.14);display:flex;align-items:center;justify-content:space-between;gap:20px}
.als-viz-selection-bar small{display:block;color:#77827b;font-size:.75rem}
.als-viz-selection-bar strong{color:var(--viz-deep)}
.als-viz-selection-bar button,.als-viz-panel-nav button,.als-viz-panel-nav a,.als-viz-submit{border:1px solid #cfd9d2;background:#fff;color:var(--viz-green);border-radius:10px;min-height:48px;padding:0 20px;display:inline-flex;align-items:center;gap:8px;justify-content:center;cursor:pointer;font-weight:700}
.als-viz-selection-bar button,.als-viz-panel-nav button.is-primary,.als-viz-panel-nav a.is-primary,.als-viz-submit{background:var(--viz-green);color:#fff;border-color:var(--viz-green)}
.als-viz-selection-bar button:disabled,.als-viz-panel-nav button:disabled{opacity:.45;cursor:not-allowed}
.als-viz-room-methods{display:flex;justify-content:center;gap:12px;margin-bottom:24px}
.als-viz-room-methods button{border:1px solid #d3ddd6;background:#fff;color:var(--viz-green);border-radius:10px;padding:12px 18px;display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}
.als-viz-room-methods button.is-active{background:var(--viz-green);color:#fff}
.als-viz-upload-area,.als-viz-room-presets,.als-viz-photo-editor{max-width:1180px;margin:auto}
.als-viz-dropzone{width:100%;min-height:360px;border:2px dashed #b9c9be;border-radius:20px;background:linear-gradient(180deg,#fff,#faf8f4);display:grid;place-content:center;text-align:center;gap:8px;cursor:pointer;color:var(--viz-deep)}
.als-viz-dropzone:hover,.als-viz-dropzone.is-dragover{border-color:var(--viz-green);background:#f2f8f4}
.als-viz-dropzone .material-symbols-outlined{font-size:56px;color:var(--viz-green);margin:auto}
.als-viz-dropzone strong{font-size:1.2rem}
.als-viz-dropzone small{color:#6e7972}
.als-viz-room-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.als-viz-room-presets button{padding:0;border:2px solid transparent;background:#fff;border-radius:16px;overflow:hidden;cursor:pointer;text-align:start}
.als-viz-room-presets button.is-selected{border-color:var(--viz-green)}
.als-viz-room-presets img{width:100%;aspect-ratio:16/10;object-fit:cover}
.als-viz-room-presets strong{display:block;padding:14px;color:var(--viz-deep)}
.als-viz-photo-editor{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.als-viz-photo-stage{position:relative;background:#e9e6e0;border-radius:18px;overflow:hidden;box-shadow:0 12px 32px rgba(22,44,32,.1);min-height:460px}
.als-viz-photo-stage canvas{width:100%;height:auto;display:block;touch-action:none;cursor:crosshair}
.als-viz-calibration-help{position:absolute;inset:auto 16px 16px 16px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:8px;color:var(--viz-deep);font-size:.85rem;pointer-events:none}
.als-viz-photo-editor aside{background:#fff;border:1px solid #e0e5e1;border-radius:16px;padding:22px;box-shadow:0 12px 30px rgba(25,52,37,.06)}
.als-viz-photo-editor aside h3{color:var(--viz-deep);font-size:1.15rem;margin:20px 0 12px}
.als-viz-photo-editor aside ul{margin:0;padding-inline-start:20px;color:var(--viz-muted);display:grid;gap:10px;line-height:1.6}
.als-viz-quality{border:1px solid #c9dfcf;background:#f2faf4;color:#16753c;border-radius:11px;padding:13px;line-height:1.6}
.als-viz-quality.is-warning{border-color:#efd69a;background:#fff9e9;color:#7a5b00}
.als-viz-quality.is-error{border-color:#f0b7b2;background:#fff1f0;color:var(--viz-danger)}
.als-viz-photo-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:18px}
.als-viz-photo-actions button{border:1px solid #d6ddd8;background:#fff;border-radius:9px;padding:9px 5px;color:var(--viz-deep);cursor:pointer;font-size:.78rem}
.als-viz-photo-actions .material-symbols-outlined{font-size:18px;display:block;margin:auto}
.als-viz-panel-nav{max-width:1180px;margin:30px auto 0;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.als-viz-panel-nav button:first-child{margin-inline-end:auto}.als-viz-panel-nav a{text-decoration:none}
.als-viz-result-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:24px;max-width:1220px;margin:auto;align-items:start}
.als-viz-result-card,.als-viz-tuning,.als-viz-save-preview,.als-viz-request-box{background:#fff;border:1px solid #e1e6e2;border-radius:18px;box-shadow:0 12px 34px rgba(22,47,33,.07)}
.als-viz-result-card{padding:16px}
.als-viz-compare{position:relative;overflow:hidden;border-radius:13px;background:#ddd;min-height:450px;isolation:isolate}
.als-viz-compare>img,.als-viz-compare>canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#ddd}
.als-viz-compare>canvas{clip-path:inset(0 0 0 50%)}
[dir="ltr"] .als-viz-compare>canvas{clip-path:inset(0 50% 0 0)}
.als-viz-compare-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;z-index:4;pointer-events:none;box-shadow:0 0 0 1px rgba(0,0,0,.18)}
.als-viz-compare-line button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border:0;border-radius:50%;background:var(--viz-gold-soft);display:grid;place-items:center;box-shadow:0 7px 18px rgba(0,0,0,.2)}
.als-viz-compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:5}
.als-viz-result-card>p{display:flex;align-items:center;justify-content:center;gap:8px;color:#68736c;font-size:.82rem;margin:12px 0}
.als-viz-result-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.als-viz-result-actions button,.als-viz-save-actions button{border:1px solid #d4dcd6;background:#fff;color:var(--viz-deep);border-radius:9px;padding:9px 12px;display:flex;align-items:center;gap:6px;cursor:pointer}
.als-viz-result-actions .material-symbols-outlined,.als-viz-save-actions .material-symbols-outlined{font-size:18px}
.als-viz-tuning{padding:22px;position:sticky;top:110px}
.als-viz-result-summary{display:flex;gap:12px;align-items:center;border-bottom:1px solid #edf0ee;padding-bottom:16px;margin-bottom:18px}
.als-viz-result-summary img{width:72px;height:72px;border-radius:12px;object-fit:cover}
.als-viz-result-summary small,.als-viz-result-summary span{display:block;color:#748078;font-size:.75rem}
.als-viz-result-summary strong{display:block;color:var(--viz-deep);margin:3px 0}
.als-viz-tuning h2{display:flex;gap:7px;align-items:center;color:var(--viz-deep);font-size:1.3rem;margin:0 0 18px}
.als-viz-tuning>label{display:block;color:var(--viz-deep);font-weight:700;margin:18px 0 8px}
.als-viz-directions,.als-viz-tones{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.als-viz-directions button,.als-viz-tones button{border:1px solid #d4ddd6;background:#fff;color:var(--viz-deep);border-radius:8px;padding:9px;cursor:pointer;font-size:.82rem}
.als-viz-directions button.is-active,.als-viz-tones button.is-active{background:var(--viz-green);color:#fff;border-color:var(--viz-green)}
.als-viz-tuning input[type="range"]{width:100%;accent-color:var(--viz-green)}
.als-viz-reset{border:1px solid #d4ddd6;background:#fff;color:var(--viz-green);border-radius:9px;padding:9px 14px;margin-top:16px;cursor:pointer}
.als-viz-approx{display:flex;align-items:flex-start;gap:7px;background:#faf7ef;border-inline-start:3px solid var(--viz-gold);padding:12px;border-radius:7px;color:#67726b;line-height:1.55;font-size:.78rem}
.als-viz-save-layout{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:24px;max-width:1160px;margin:auto;align-items:start}
.als-viz-save-preview{padding:18px;position:sticky;top:110px}
.als-viz-save-preview h2,.als-viz-request-box h2{color:var(--viz-deep);margin:0 0 15px;font-size:1.4rem}
.als-viz-save-preview canvas{width:100%;height:auto;border-radius:12px;background:#ddd}
.als-viz-save-preview>div:nth-of-type(1){display:flex;justify-content:space-between;gap:15px;margin:13px 0}
.als-viz-save-preview>div:nth-of-type(1) span{color:#77817b;font-size:.8rem}
.als-viz-save-actions{display:grid;gap:8px}
.als-viz-save-actions button{justify-content:center}
.als-viz-request-box{padding:24px}
.als-viz-request-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
.als-viz-request-choice label{border:1px solid #d7dfd9;border-radius:13px;padding:16px;cursor:pointer;position:relative;display:grid;gap:5px}
.als-viz-request-choice label.is-selected{border:2px solid var(--viz-green);background:#f6fbf8}
.als-viz-request-choice input{position:absolute;opacity:0}
.als-viz-request-choice .material-symbols-outlined{color:var(--viz-green)}
.als-viz-request-choice strong{color:var(--viz-deep)}
.als-viz-request-choice small{color:#68736c;line-height:1.55}
.als-viz-request-box form h3{color:var(--viz-deep);border-bottom:1px solid #edf0ee;padding-bottom:12px}
.als-viz-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.als-viz-form-grid label>span{display:block;font-weight:700;color:var(--viz-deep);font-size:.83rem;margin-bottom:6px}
.als-viz-form-grid input,.als-viz-form-grid select{width:100%;border:1px solid #cfd8d2;background:#fff;border-radius:8px;padding:12px;min-height:46px;outline:0}
.als-viz-form-grid input:focus,.als-viz-form-grid select:focus{border-color:var(--viz-green);box-shadow:0 0 0 3px rgba(0,78,41,.08)}
.als-viz-form-grid small,.als-viz-request-box>[data-viz-error]{display:block;color:var(--viz-danger);min-height:16px;font-size:.73rem;margin-top:3px}
.als-viz-request-box fieldset{border:0;padding:14px 0;margin:5px 0;display:flex;gap:18px;align-items:center}
.als-viz-request-box legend{font-weight:700;color:var(--viz-deep);margin-bottom:9px}
.als-viz-request-box fieldset label,.als-viz-consent{display:flex;align-items:center;gap:7px;color:#55615a}
.als-viz-consent{margin:12px 0;align-items:flex-start}
.als-viz-submit{width:100%;font-size:1rem}
.als-viz-form-status{text-align:center;color:var(--viz-green);font-weight:700;min-height:25px}
.als-viz-form-status.is-error{color:var(--viz-danger)}
.als-viz-hp{position:absolute!important;left:-9999px!important}
.als-viz-success{text-align:center;max-width:800px;margin:auto;background:#fff;border:1px solid #dce5df;border-radius:22px;padding:65px 40px;box-shadow:var(--viz-shadow)}
.als-viz-success>span{font-size:74px;color:var(--viz-green)}
.als-viz-success h1{font-size:2.5rem;color:var(--viz-deep);margin:14px 0}
.als-viz-success>p{color:var(--viz-muted);font-size:1.08rem}
.als-viz-reference{display:inline-flex;align-items:center;gap:13px;background:#f5f8f6;border:1px solid #d8e2db;border-radius:13px;padding:14px 18px;margin:22px 0}
.als-viz-reference small{color:#718078}.als-viz-reference strong{font-size:1.3rem;color:var(--viz-deep)}
.als-viz-reference button{border:0;background:transparent;color:var(--viz-green);cursor:pointer}
.als-viz-success-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.als-viz-success-actions>*{border:1px solid var(--viz-green);background:#fff;color:var(--viz-green);border-radius:10px;padding:12px 18px;text-decoration:none;cursor:pointer;font-weight:700}
.als-viz-success-actions>*:first-child{background:var(--viz-green);color:#fff}

/* Home and product integration */
.als-viz-home-card{margin-block:64px;background:linear-gradient(135deg,#f7f3ea,#fff);border:1px solid #e4ded2;border-radius:24px;padding:38px;display:grid;grid-template-columns:1fr 390px;gap:36px;align-items:center;overflow:hidden}
.als-viz-home-card__content span{color:var(--viz-gold);font-weight:700}.als-viz-home-card h2{font-size:2rem;color:var(--viz-deep);margin:9px 0}.als-viz-home-card p{color:var(--viz-muted);line-height:1.8}.als-viz-home-card a{display:inline-flex;background:var(--viz-green);color:#fff;text-decoration:none;border-radius:10px;padding:13px 19px;font-weight:700}.als-viz-home-card__preview{aspect-ratio:4/3;border-radius:18px;overflow:hidden;position:relative}.als-viz-home-card__preview img{width:100%;height:100%;object-fit:cover}.als-viz-home-card__preview:after{content:"";position:absolute;inset:55% 0 0;background:url('../images/visualizer/textures/oak-light.jpg') center/150px;mix-blend-mode:multiply;opacity:.78;clip-path:polygon(0 18%,100% 0,100% 100%,0 100%)}
.als-v168-visualizer-link{display:flex!important;align-items:center;justify-content:center;gap:7px;background:var(--viz-gold-soft)!important;color:#1b1c1c!important;border-color:var(--viz-gold-soft)!important;font-weight:700}
.als-v16-utility__links .als-viz-utility-link{color:#fff;font-weight:700}

@media(max-width:1180px){
  .als-viz-appbar>.als-v16-shell{grid-template-columns:140px 1fr}.als-viz-appbar__actions{grid-column:1/-1;justify-content:flex-end;padding-bottom:10px}.als-viz-steps li{padding-block:20px}.als-viz-products{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1024px){
  .als-viz-hero{grid-template-columns:1fr;gap:38px;min-height:auto}.als-viz-hero__demo{max-width:720px;width:100%;margin:auto}.als-viz-trust ol{grid-template-columns:1fr}.als-viz-appbar__brand{display:none}.als-viz-appbar>.als-v16-shell{grid-template-columns:1fr}.als-viz-steps{overflow:auto;justify-content:flex-start}.als-viz-steps li:not(:last-child):after{width:22px}.als-viz-result-layout,.als-viz-save-layout{grid-template-columns:1fr}.als-viz-tuning,.als-viz-save-preview{position:static}.als-viz-photo-editor{grid-template-columns:1fr}.als-viz-photo-editor aside{order:-1}.als-viz-home-card{grid-template-columns:1fr 320px}
}
@media(max-width:780px){
  .als-viz-hero{padding-block:45px 60px}.als-viz-hero__content h1{font-size:2.35rem}.als-viz-hero__content>p{font-size:1rem}.als-viz-hero__actions{display:grid}.als-viz-btn{width:100%}.als-viz-intent{padding-block:50px}.als-viz-intent>div{grid-template-columns:1fr}.als-viz-trust{padding:60px 0}.als-viz-faq{padding-block:65px}.als-viz-final>div{padding:38px 22px}.als-viz-final h2{font-size:1.7rem}.als-viz-appbar{top:0}.admin-bar .als-viz-appbar{top:46px}.als-viz-appbar>.als-v16-shell{display:block;padding-block:8px}.als-viz-appbar__actions{display:none}.als-viz-steps{gap:0}.als-viz-steps li{font-size:0;padding:10px 6px}.als-viz-steps li span{font-size:.78rem}.als-viz-steps li:not(:last-child):after{width:42px;margin-inline:8px}.als-viz-workspace{padding-block:28px 110px}.als-viz-panel__head{text-align:start}.als-viz-panel__head h1{font-size:2rem}.als-viz-mode-switch{grid-template-columns:1fr}.als-viz-product-tools{display:grid}.als-viz-product-tools>label{min-width:0}.als-viz-product-tools>div{justify-content:flex-start;overflow:auto;flex-wrap:nowrap;padding-bottom:3px}.als-viz-products{grid-template-columns:repeat(2,1fr);gap:12px}.als-viz-selection-bar{bottom:72px;border-radius:13px;display:grid}.als-viz-selection-bar button{width:100%}.als-viz-room-presets{grid-template-columns:1fr}.als-viz-photo-stage{min-height:300px}.als-viz-panel-nav{position:fixed;bottom:0;left:0;right:0;z-index:75;background:#fff;border-top:1px solid #dfe5e1;margin:0;padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom));box-shadow:0 -8px 20px rgba(20,40,30,.08)}.als-viz-panel-nav button,.als-viz-panel-nav a{flex:1;padding-inline:8px}.als-viz-panel-nav button:first-child{margin:0;flex:.65}.als-viz-result-layout{gap:14px}.als-viz-compare{min-height:360px}.als-viz-tuning{padding:16px}.als-viz-form-grid{grid-template-columns:1fr}.als-viz-request-choice{grid-template-columns:1fr}.als-viz-save-preview,.als-viz-request-box{padding:16px}.als-viz-success{padding:40px 18px}.als-viz-success h1{font-size:1.9rem}.als-viz-home-card{grid-template-columns:1fr;padding:24px}.als-viz-home-card__preview{order:-1}.als-v16-utility__links .als-viz-utility-link{display:none}
}
@media(max-width:520px){
  .als-viz-products{grid-template-columns:1fr 1fr}.als-viz-product__body{padding:11px}.als-viz-product__body h3{font-size:.9rem}.als-viz-product__body p{font-size:.72rem}.als-viz-product__body button{font-size:.76rem}.als-viz-compare{min-height:275px}.als-viz-result-actions button{font-size:0}.als-viz-result-actions .material-symbols-outlined{font-size:21px}.als-viz-directions,.als-viz-tones{grid-template-columns:1fr 1fr}.als-viz-photo-actions{grid-template-columns:1fr}.als-viz-hero__demo>small{font-size:.68rem;right:8px;bottom:8px}.als-viz-intent>div>button{padding:24px}
}


/* V16.15 recovery overrides: never allow stale reveal or hidden-control rules to blank the tool. */
.als-viz{display:block!important;min-height:70vh;visibility:visible!important;opacity:1!important}
.als-viz [hidden]{display:none!important}
.als-viz-landing:not([hidden]),.als-viz-app:not([hidden]){display:block!important;visibility:visible!important;opacity:1!important}
.als-viz-panel:not([hidden]){display:block!important;visibility:visible!important;opacity:1!important;transform:none!important}
.als-viz .is-v1613-reveal,.als-viz .is-v1613-reveal.is-v1613-visible{opacity:1!important;transform:none!important}
.als-viz input[type="file"][hidden]{display:none!important}
.als-viz-emergency{max-width:900px;margin:24px auto;padding:16px 18px;border:1px solid #f0bf6b;background:#fff8e7;color:#5f4100;border-radius:10px;font-weight:600}

/* V16.16 — clearer full-result preview and product-request handoff */
.als-viz-compare canvas[data-viz-result-canvas] {
  opacity: 1;
  filter: saturate(1.04) contrast(1.03);
}
.als-viz-compare input[type="range"] { cursor: ew-resize; }
.als-viz-panel [data-viz-handoff] {
  min-width: min(100%, 290px);
  box-shadow: 0 10px 30px rgba(0,50,28,.16);
}
.als-v1616-visualizer-handoff {
  display: grid;
  grid-template-columns: minmax(180px, 320px) 1fr;
  gap: 24px;
  align-items: stretch;
  margin: 0 0 28px;
  padding: 18px;
  border: 1px solid #bfc9c0;
  border-inline-start: 5px solid #00321c;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(0,50,28,.07);
}
.als-v1616-visualizer-handoff[hidden] { display: none !important; }
.als-v1616-visualizer-handoff__preview {
  min-height: 180px;
  border-radius: 10px;
  overflow: hidden;
  background: #eeeeec;
  display: grid;
  place-items: center;
}
.als-v1616-visualizer-handoff__preview img {
  width: 100%;
  height: 100%;
  min-height: 180px;
  object-fit: cover;
}
.als-v1616-visualizer-handoff__content {
  align-self: center;
  display: grid;
  gap: 9px;
}
.als-v1616-visualizer-handoff__content > span {
  color: #7d580a;
  font-weight: 700;
  font-size: 13px;
}
.als-v1616-visualizer-handoff__content h2 {
  margin: 0;
  color: #00321c;
  font-size: clamp(22px, 2.2vw, 32px);
  line-height: 1.3;
}
.als-v1616-visualizer-handoff__content p {
  margin: 0;
  color: #404942;
  line-height: 1.8;
}
.als-v1616-visualizer-handoff__content > div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  align-items: center;
}
.als-v1616-visualizer-handoff__content b {
  direction: ltr;
  color: #404942;
}
.als-v1616-visualizer-handoff__content a {
  color: #00321c;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}
@media (max-width: 720px) {
  .als-v1616-visualizer-handoff { grid-template-columns: 1fr; padding: 14px; gap: 14px; }
  .als-v1616-visualizer-handoff__preview,
  .als-v1616-visualizer-handoff__preview img { min-height: 150px; max-height: 230px; }
}
