:root{--ink:#232326;--muted:#7c7c80;--gold:#bb902f;--gold-light:#ead5a3;--cream:#f9f8f5;--border:#e9e7e0;--surface:#fff;--frame:#f8f8f5;font-family:Inter,'Segoe UI',system-ui,-apple-system,Arial,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,a{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c79b43;outline-offset:3px}a{text-decoration:none;color:inherit}[hidden]{display:none!important}
.layout{max-width:1410px;margin:0 auto;padding:0 30px 28px}
.site-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:12px 0 10px;border-bottom:1px solid var(--border);background:var(--cream)}
.brand{display:flex;align-items:center;line-height:1}.brand img{display:block;width:264px;height:auto;max-height:93px;object-fit:contain}.header-side{text-align:right;display:grid;gap:5px}.header-note{font-weight:700;font-size:14px}.header-market{font-size:12px;color:#8c8984}.note-dot{display:inline-block;width:7px;height:7px;margin:0 7px 1px 0;border-radius:50%;background:#b79654;box-shadow:0 0 0 4px #f1e8d8}
.hero-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:34px 6px 29px}.eyebrow,.section-kicker{font-size:10px;font-weight:850;letter-spacing:.2em;color:#af862c}.eyebrow span{display:inline-block;background:#bd964c;width:18px;height:1px;vertical-align:middle;margin:0 8px 4px 0}.hero-heading h1{font-size:clamp(28px,3vw,42px);font-weight:740;letter-spacing:-.055em;line-height:1.14;margin:14px 0 10px}.hero-heading h1 em{font-style:normal;color:#a67e2a}.hero-heading p{font-size:14px;color:#76736e;margin:0;line-height:1.6}.hero-tag{border:1px solid #dbcaa5;background:#f8f3e9;color:#a67e2a;border-radius:30px;padding:10px 19px;white-space:nowrap;font-size:12px;font-weight:800}.hero-tag span{margin-right:6px}
.columns{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:start;gap:27px}.visual-panel,.wizard,.summary,.finalBox{background:var(--surface);border:1px solid #e9e6df;box-shadow:0 8px 30px rgba(51,40,20,.035);border-radius:16px}.visual-panel{padding:24px 26px 17px;position:sticky;top:12px}.visual-header,.summary-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.visual-header h2,.summary-heading h2{font-size:20px;letter-spacing:-.035em;margin:8px 0 16px}.preview-pill{border:1px solid #eee9df;color:#938877;font-size:11px;padding:7px 10px;border-radius:20px;white-space:nowrap}
.window-scene{height:470px;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:flex-end;background:radial-gradient(ellipse at 52% 20%,#fff 0%,#f7f5ef 50%,#e9e7e1 100%);border-radius:12px}.scene-light{position:absolute;right:-85px;top:-80px;width:350px;height:420px;transform:rotate(-27deg);background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.88) 50%,transparent);pointer-events:none}.scene-floor{position:absolute;bottom:0;width:100%;height:30px;border-top:2px solid #e9e6df;background:linear-gradient(#eae6e0,#e4dfd6)}
.scene-window{--profile-color:#f8f8f5;height:425px;width:302px;border-radius:6px 6px 2px 2px;position:relative;z-index:2;margin-bottom:28px;border:10px solid #ebe9e4;box-shadow:0 12px 22px rgba(40,37,33,.17),inset 0 0 0 2px #d5d6d2,0 0 0 2px #f5f4f2;background:#f1f2ef}.scene-window:after{position:absolute;content:'';inset:-10px;box-shadow:inset 3px 2px 4px #fff,inset -4px -3px 3px rgba(115,112,108,.11);border-radius:7px;pointer-events:none}.frame-inset{position:absolute;inset:10px;border:10px solid var(--profile-color);box-shadow:inset 3px 5px 6px rgba(30,36,35,.22),0 0 0 1px rgba(30,36,35,.12);background:#d7e0d8}.window-view{position:absolute;inset:0;overflow:hidden;background:linear-gradient(135deg,#d6e4e6 0%,#e6edef 37%,#d6e1d7 80%,#bdc7bb 100%)}.window-view:before{content:'';position:absolute;left:0;top:0;inset:0;background:linear-gradient(107deg,rgba(255,255,255,.55) 0%,transparent 27%,transparent 66%,rgba(255,255,255,.24) 83%);z-index:1}.outside-sun{position:absolute;top:38px;right:32px;width:85px;height:85px;border-radius:50%;filter:blur(25px);background:rgba(255,248,223,.9)}.outside-horizon{position:absolute;bottom:0;width:100%;height:28%;background:linear-gradient(0deg,#a8b7a0,#c3d4c2);filter:blur(5px)}.outside-leaf{position:absolute;background:#879d83;border-radius:50%;filter:blur(18px);opacity:.33}.outside-leaf.l1{width:130px;height:180px;left:-50px;bottom:30px}.outside-leaf.l2{width:80px;height:140px;right:-30px;bottom:85px}.outside-leaf.l3{width:70px;height:90px;right:40px;bottom:15px}
.window-shade{position:absolute;bottom:4px;left:4px;right:4px;height:65%;z-index:3;box-shadow:0 8px 12px rgba(42,38,30,.14);transition:height .22s ease}.pleat-material{position:absolute;inset:0;background-color:#d9c9aa;background-image:repeating-linear-gradient(0deg,rgba(50,39,24,.12) 0px,rgba(255,255,255,.3) 3px,rgba(26,26,26,.14) 9px,rgba(255,255,255,.28) 12px);background-blend-mode:multiply;background-size:cover;background-position:center;border-left:1px solid rgba(0,0,0,.10);border-right:1px solid rgba(0,0,0,.10)}.shade-rail{position:absolute;left:-3px;right:-3px;height:11px;background:linear-gradient(180deg,rgba(255,255,255,.6),var(--profile-color) 40%,rgba(0,0,0,.09));border:1px solid rgba(65,62,58,.13);border-radius:3px;box-shadow:0 2px 3px rgba(40,40,40,.09)}.rail-top{top:-3px}.rail-bottom{bottom:-3px}.shade-handle{position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);width:47px;height:10px;background:var(--profile-color);border:1px solid rgba(40,40,40,.15);border-radius:1px 1px 6px 6px;box-shadow:0 3px 4px #0001}.scene-badge{position:absolute;bottom:15px;right:16px;z-index:3;color:#7e7667;background:#ffffffdf;border:1px solid #eee8de;padding:9px 11px;border-radius:20px;font-size:10px;font-weight:750}.gold-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b99145;margin-right:5px;vertical-align:middle}
.preview-tools{padding:18px 6px 15px;border-bottom:1px solid var(--border)}.preview-tool-top{display:flex;justify-content:space-between;align-items:center}.preview-tool-top strong{font-size:13px}.preview-tool-top small{display:block;color:#96928c;font-size:11px;margin:4px 0 0}.value-label{font-size:12px;color:#a37c2e;font-weight:750}.preview-tools input[type=range]{width:100%;margin:18px 0 4px;height:5px;accent-color:#b88d36;cursor:pointer}.range-scale{display:flex;justify-content:space-between;color:#9b9890;font-size:10px}.selected-preview{display:flex;gap:13px;padding:16px 3px 5px}.picked-fabric,.picked-profile{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.picked-fabric small,.picked-profile small{display:block;color:#918d87;font-size:10px;margin-bottom:4px}.picked-fabric strong,.picked-profile strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:145px}.fabric-thumbnail,.profile-thumbnail{flex-shrink:0;display:block;width:37px;height:37px;border-radius:8px;background:#d9c9aa center/cover;border:1px solid #ddd5c8}.profile-thumbnail{background:#f8f8f5}.visual-disclaimer{padding:6px 3px 0;font-size:10px;line-height:1.45;color:#a2a09a;margin:0}
.right-side{min-width:0;display:grid;gap:17px}.wizard{padding:27px 27px 23px}.wizard-top{display:flex;align-items:center;gap:13px}.step-bubble{display:grid;place-items:center;background:#272727;color:#ead49c;width:41px;height:41px;border-radius:12px;font-size:15px;font-weight:850}.progress-content{display:grid;gap:3px}.progress-content #stepIndicator{font-size:10px;font-weight:850;letter-spacing:.12em;color:#ae8e44;text-transform:uppercase}.progress-content #stepCategory{font-weight:750;font-size:13px}.step-total{font-size:13px;color:#b8b5b0;margin-left:auto}.progressbar{height:4px;border-radius:5px;background:#f0ede7;margin:19px 0 24px;overflow:hidden}.progressbar span{display:block;height:100%;width:14.3%;border-radius:5px;background:linear-gradient(90deg,#ac812a,#e4bf70);transition:width .25s}
.wizard h2{font-size:24px;line-height:1.23;letter-spacing:-.045em;margin:0 0 7px}.intro{color:#8a8882;font-size:12px;line-height:1.6;margin:0 0 19px}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option{background:#fdfdfc;border:1.5px solid #e7e5e0;border-radius:11px;min-height:72px;display:flex;align-items:center;gap:10px;padding:14px 12px;color:#343333;text-align:left;transition:background .15s,border-color .15s,box-shadow .15s;position:relative}.option:hover{border-color:#c4a464;background:#fdfbf7}.option.selected{border-color:#b88c32;background:#fdf8ed;box-shadow:0 0 0 1px rgba(185,143,50,.16)}.option-copy{flex:1;min-width:0}.option strong{font-size:12px;display:block;line-height:1.4;font-weight:750}.option small{display:block;color:#908d87;margin-top:5px;font-size:10px;line-height:1.4}.option .checkmark{visibility:hidden;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;font-size:11px;color:white;background:#b79043;flex-shrink:0}.option.selected .checkmark{visibility:visible}.color-circle{display:block;width:28px;height:28px;border-radius:50%;border:1px solid #deddd8;flex-shrink:0;box-shadow:inset 0 2px 2px #00000010}.choice-symbol{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:9px;background:#f2eee5;color:#ac873d;font-size:20px}.options-track{grid-template-columns:repeat(2,minmax(0,1fr))}.options-group{grid-template-columns:repeat(3,minmax(0,1fr))}.options-group .option{padding:11px 8px;text-align:center;display:grid;justify-items:center;gap:3px}.options-group .option strong{font-size:12px}.options-group .option .checkmark{position:absolute;top:4px;right:5px;width:15px;height:15px;font-size:9px}.options-group .option small{font-size:9px}.options-system{grid-template-columns:1fr}.options-system .option{min-height:98px}.swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:11px;max-height:354px;overflow:auto;padding:3px}.swatch{border:1.5px solid #e7e4dd;border-radius:9px;padding:5px;background:#fff;color:#514e48;font-size:10px;font-weight:700;text-align:center}.swatch img{display:block;width:100%;height:72px;object-fit:cover;border-radius:6px;background:#efebe5}.swatch span{display:block;padding:8px 0 3px;word-break:break-all}.swatch.selected{border-color:#b88c32;box-shadow:0 0 0 1px #b88c32;background:#fff9ec}.swatch:hover{border-color:#b88c32}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields label{font-size:12px;color:#4c4a47;font-weight:760}.fields input{margin-top:8px;display:block;width:100%;border:1px solid #d9d6cf;border-radius:9px;padding:14px 12px;font-size:16px;background:#fcfcfb;color:#262525}.fields input:focus{border-color:#b68d3a;outline:none;box-shadow:0 0 0 3px #e9d8b755}.hint{font-size:11px;line-height:1.65;color:#806a40;background:#f9f6ef;border:1px solid #f1e9d8;border-radius:9px;padding:11px 12px;margin:12px 0 0}.navigation{border-top:1px solid #edeae3;padding-top:20px;display:flex;gap:12px;justify-content:space-between;margin-top:23px}.button{border:0;border-radius:9px;padding:14px 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12px;font-weight:850;text-align:center;text-decoration:none;transition:transform .15s,background .15s;cursor:pointer}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:#272727;color:#f6e2af;min-width:150px}.button.primary:hover{background:#4a3b20}.button.muted{background:#f4f2ee;color:#585752}.button:disabled{opacity:.42;cursor:not-allowed}.error{background:#fff1ef;color:#a04330;border:1px solid #f0c9c1;padding:12px;border-radius:8px;font-size:12px}
.summary{padding:23px 25px 21px}.summary-heading h2{font-size:17px;margin:5px 0 14px}.summary-icon{border:1px solid #ece5d5;width:31px;height:31px;border-radius:8px;display:grid;place-items:center;color:#b08b3f;font-size:18px}.summary dl{margin:0}.summary dl .pair{display:grid;grid-template-columns:44% 56%;gap:4px;border-bottom:1px solid #f2f0eb;padding:8px 0;font-size:11px;line-height:1.4}.summary dt{color:#928e86}.summary dd{font-weight:700;text-align:right;margin:0;color:#393835;overflow-wrap:anywhere}.summaryPrice{display:grid;gap:7px;padding:18px 0 13px}.summaryPrice>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.summaryPrice small{color:#928d83;font-size:11px}.summaryPrice strong{color:#a77d23;font-size:28px;font-weight:850;letter-spacing:-.04em}.summaryPrice #priceHint{font-size:11px}.small-note{font-size:11px;color:#8a8680;line-height:1.6}.summary-information{margin:0;border-top:1px solid #f0ede8;padding-top:12px}.summary-information span{font-size:13px;color:#b18b42;margin-right:4px}
.finalBox{padding:27px 30px;margin-top:24px}.finished-heading{display:flex;align-items:center;gap:17px}.finished-check{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#f9f1df;color:#a17b2d;font-size:24px}.finished-heading h2{font-size:23px;margin:5px 0}.finished-heading p{font-size:12px;color:#88837e;margin:4px 0}.codeRow{margin:24px 0 8px;padding:15px;background:#f9f7f1;border:1px dashed #dbbe7e;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.codeRow strong{font-size:clamp(18px,2.6vw,28px);letter-spacing:.06em;overflow-wrap:anywhere}.numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.numbers>div{background:#faf8f4;border:1px solid #f0ebe0;border-radius:10px;padding:17px}.numbers small{display:block;font-size:11px;color:#888379}.numbers strong{display:block;font-size:25px;color:#a47b25;margin-top:6px}.offer-button{margin-top:10px}footer{text-align:center;color:#9d9991;font-size:10px;padding:24px 0}
/* Shared admin panel styles retained for existing admin.php. */
.admin{max-width:1200px;margin:35px auto;padding:20px}.overflow{overflow:auto;background:white;border-radius:12px}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid #ebe7df;padding:10px;text-align:left;white-space:nowrap;font-size:12px}th{background:#f3efe7}
@media (max-width:1100px){.layout{padding:0 18px 24px}.columns{gap:16px}.visual-panel{padding:19px}.wizard{padding:22px}.window-scene{height:420px}.scene-window{height:380px;width:275px}.swatches{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){.columns{grid-template-columns:1fr}.visual-panel{position:relative;top:auto}.hero-heading{padding:25px 2px}.window-scene{height:400px}.scene-window{height:360px;width:270px}.right-side{grid-template-columns:1fr}.swatches{grid-template-columns:repeat(4,minmax(0,1fr))}.visual-panel{order:0}.right-side{order:1}}
@media (max-width:500px){.layout{padding:0 12px 20px}.brand img{width:193px}.site-header{gap:10px}.header-note{font-size:10px}.header-market{display:none}.hero-heading{padding:19px 4px;display:block}.hero-heading h1{font-size:26px}.hero-heading h1 em{display:block}.hero-heading p{font-size:12px}.hero-tag{display:none}.visual-panel{padding:14px}.visual-header h2{font-size:16px;margin-bottom:13px}.section-kicker{font-size:9px}.preview-pill{font-size:9px}.window-scene{height:290px}.scene-window{height:259px;width:195px;border-width:8px;margin-bottom:17px}.frame-inset{inset:7px;border-width:7px}.scene-badge{bottom:7px;right:7px;font-size:8px;padding:6px 7px}.scene-floor{height:18px}.preview-tools{padding:14px 0 11px}.selected-preview{padding:12px 0 4px}.picked-fabric strong,.picked-profile strong{font-size:11px;max-width:110px}.fabric-thumbnail,.profile-thumbnail{width:31px;height:31px}.visual-disclaimer{font-size:9px}.right-side{gap:12px}.wizard{padding:18px}.wizard h2{font-size:22px}.options{gap:8px}.option{padding:12px 8px;gap:7px;min-height:64px}.option strong{font-size:11px}.option small{font-size:9px}.color-circle{width:23px;height:23px}.checkmark{width:14px!important;height:14px!important;font-size:9px!important}.swatches{grid-template-columns:repeat(3,minmax(0,1fr));max-height:288px}.swatch img{height:68px}.fields{grid-template-columns:1fr}.summary{padding:19px}.navigation{gap:8px}.button{padding:13px 15px}.button.primary{min-width:132px}.finalBox{padding:20px 14px}.numbers{grid-template-columns:1fr}.codeRow{padding:12px}.finished-heading{align-items:flex-start}.finished-heading h2{font-size:19px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* ========== Luxrolety V3: dwa ruchome profile, neutralne okno, prawdziwe fałdy 2D ========== */
/* Rama okna nigdy nie przyjmuje koloru prowadnic. */
.scene-window{--profile-color:#f8f8f5}
.scene-window .frame-inset{border-color:#f6f6f3!important;box-shadow:inset 3px 5px 7px rgba(30,36,35,.13),0 0 0 1px rgba(30,36,35,.11)!important}
.window-view{z-index:0}
/* Dwie cienkie prowadnice osłony, nie rama szyby. */
.shade-guide{position:absolute;top:1px;bottom:1px;width:3px;z-index:2;background:var(--profile-color);box-shadow:0 0 0 1px rgba(35,34,32,.13),inset 1px 0 rgba(255,255,255,.5);pointer-events:none}
.shade-guide-left{left:3px}.shade-guide-right{right:3px}
/* Pas materiału ma dwa niezależne końce: top i bottom wylicza JavaScript. */
.window-shade{top:35%;bottom:auto;height:65%;left:6px;right:6px;min-height:0;overflow:visible;transition:top .10s ease,height .10s ease;box-shadow:none}
.pleat-material{inset:0;overflow:hidden;background:linear-gradient(90deg,#c8c2b6,#e5ddcf 14%,#e4ded4 85%,#bfb6a7);background-image:none!important;background-size:auto!important;border:1px solid rgba(25,25,25,.10);box-shadow:inset 5px 0 9px rgba(0,0,0,.13),inset -5px 0 9px rgba(0,0,0,.12)}
.fabric-pigment{position:absolute;inset:-70px;background-position:center;background-repeat:no-repeat;background-size:cover;opacity:0;filter:blur(37px) saturate(.7);transform:scale(1.28);transition:opacity .2s ease;pointer-events:none}
.pleat-material.fabric-chosen .fabric-pigment{opacity:.93}
.fabric-folds{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.58) 0px,rgba(255,255,255,.31) 2px,rgba(255,255,255,.06) 5px,rgba(37,34,30,.15) 8px,rgba(20,20,20,.24) 11px,rgba(255,255,255,.16) 14px,rgba(255,255,255,.45) 16px);box-shadow:inset 0 6px 7px rgba(0,0,0,.09),inset 0 -6px 7px rgba(0,0,0,.10)}
.shade-rail{height:12px;z-index:4;cursor:ns-resize;touch-action:none;user-select:none;background:linear-gradient(180deg,rgba(255,255,255,.74),var(--profile-color) 35%,var(--profile-color) 66%,rgba(0,0,0,.23));border:1px solid rgba(0,0,0,.24);box-shadow:0 2px 4px rgba(0,0,0,.14)}
.shade-rail.dragging,.shade-rail:hover{box-shadow:0 0 0 3px rgba(187,144,47,.32),0 2px 7px rgba(0,0,0,.19)}
.rail-top{top:-6px}.rail-bottom{bottom:-6px}
.rail-grip{position:absolute;left:50%;top:1px;transform:translateX(-50%);width:40px;height:10px;border:1px solid rgba(30,30,30,.17);border-radius:1px 1px 5px 5px;background:linear-gradient(180deg,rgba(255,255,255,.7),var(--profile-color) 60%,rgba(0,0,0,.13));box-shadow:0 2px 3px #0002}
.rail-bottom .rail-grip{top:0}
.preview-tools .preview-tool-top{gap:10px;align-items:start;margin-bottom:12px}
.preview-tools .preview-tool-top small{max-width:365px;line-height:1.5}
.dual-rail-control{padding:9px 0 11px}
.dual-rail-control+ .dual-rail-control{border-top:1px solid #eeeae2;margin-top:6px}
.dual-rail-control label{display:flex;justify-content:space-between;gap:8px;align-items:baseline;font-size:12px;font-weight:700;color:#44403b}
.dual-rail-control output{font-size:11px;color:#9a752b;font-weight:750}
.dual-rail-control input[type=range]{margin:11px 0 4px;width:100%;height:5px;accent-color:#ae832e;cursor:ew-resize}
.dual-rail-control .range-scale{font-size:10px}
@media(max-width:500px){.preview-tools{padding:14px 0}.preview-tool-top strong{font-size:12px}.dual-rail-control{padding:8px 0 9px}.rail-grip{width:30px}}
@media(prefers-reduced-motion:reduce){.window-shade,.fabric-pigment{transition:none}}
