.configurator-page{padding:55px var(--gutter) 50px}.configurator-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:25px}.configurator-heading h1,.configurator-heading h2{font-size:var(--h2-size);line-height:1.15;letter-spacing:-1.15px;font-weight:500}.configurator-heading p{font-size:13px;line-height:1.65;max-width:315px;color:#686c61}.configurator-modes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.configurator-modes button{min-height:44px;padding:10px 16px;border:1px solid var(--border);border-radius:3px;background:transparent;color:var(--text);font:inherit;font-size:13px;cursor:pointer}.configurator-modes button[aria-pressed=true]{background:#e5e7df;border-color:var(--border-strong);box-shadow:inset 0 -2px #30362a}.configurator-modes button:disabled{cursor:wait}.configurator-layout{display:grid;grid-template-columns:var(--config-columns);gap:var(--config-gap);align-items:start}.configuration-preview{background:color-mix(in srgb,var(--surface) 75%,color-mix(in srgb,var(--product-color) 4%,transparent));border-block:1px solid var(--border);padding:20px 26px 24px}.configuration-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#676b60}.configuration-canvas{height:465px;display:flex;align-items:center;justify-content:center;margin:8px 0 6px}.configured-product{width:100%;height:100%;overflow:visible;filter:drop-shadow(2px 8px 5px #1718150c)}.configuration-dimension{display:flex;align-items:center;justify-content:center;gap:12px;color:#656b5c;font-size:11px;margin-top:8px}.configuration-dimension span{height:1px;background:#b9bfaf;flex:1 1;max-width:40%}.configuration-dimension b{font-weight:400}.configuration-material,.configuration-parts,.configuration-slots{font-size:11px;color:var(--text-secondary);text-align:center;margin-top:10px}.configuration-slots{color:var(--text)}.configuration-fit-note{margin-block:0 16px}.configuration-parts{margin-top:4px;min-height:17px}.configuration-controls .visual-choice--shape svg{width:26px;height:26px;color:#4d5445}.configuration-controls .visual-choice--pattern svg,.empty-pattern{display:block;width:29px;height:22px;color:#626b56;overflow:hidden}.empty-pattern{background:#cdd2c5}.configuration-controls .choice-group:last-of-type{border-bottom:0;margin-bottom:0}.configuration-purchase{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;border-top:1px solid var(--border);padding-top:17px;align-items:center}.configuration-price>span{display:block;font-size:11px;color:var(--text-secondary)}.configuration-price strong{display:block;font-size:27px;font-weight:500;line-height:1.5;letter-spacing:-1px;min-height:41px;white-space:nowrap}.configuration-unavailable{padding-inline:18px;gap:0;background:var(--surface);color:#585c53;cursor:not-allowed;font-size:12px}.configuration-unavailable:hover{background:var(--surface)}.configuration-unavailable:active{transform:none}.configuration-price-note,.configuration-status{grid-column:1/-1;font-size:11px;line-height:1.5;color:var(--text-secondary)}.configuration-status{min-height:17px}.configuration-price-note{margin-top:-4px}.configuration-retry{grid-column:1/-1;justify-self:start;border:0;border-bottom:1px solid var(--border-strong);background:transparent;padding:4px 0;font-size:12px}@media (max-width:1000px) and (min-width:601px){.configuration-canvas{height:355px}.configuration-purchase{gap:10px}.configuration-unavailable{padding:12px 10px;max-width:145px}.configuration-preview{padding-inline:20px}.configurator-heading p{max-width:270px}}@media (max-width:600px){.configurator-page{padding-block:35px}.configurator-heading{display:block;margin-bottom:22px}.configurator-heading h1,.configurator-heading h2{letter-spacing:-.9px}.configurator-heading p{font-size:12px;margin-top:12px;color:var(--text-secondary)}.configurator-layout{grid-template-columns:1fr;gap:24px}.configuration-preview{padding:15px 13px 19px}.configuration-meta{font-size:11px;color:var(--text-secondary)}.configuration-canvas{height:250px;margin-block:6px}.configuration-dimension{color:var(--text-secondary)}.configuration-purchase{gap:10px}.configuration-unavailable{font-size:11px;padding-inline:13px;min-height:48px}.configuration-controls .visual-choice--pattern svg,.empty-pattern{width:22px;height:19px;flex-shrink:0}}.configuration-controls .color-swatch input,.configuration-controls .visual-choice input{inset:0;width:100%;height:100%;cursor:pointer}.shape-name-short{display:none}@media (min-width:601px) and (max-width:1000px){.shape-name-full{display:none}.shape-name-short{display:inline}}.configuration-controls .shape-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}@media (min-width:601px) and (max-width:1000px){.configuration-controls .shape-options{grid-template-columns:repeat(3,minmax(0,1fr))}}.configuration-controls .pattern-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.configuration-controls .swatch-options{flex-wrap:wrap;row-gap:12px}.custom-dimensions{display:flex;gap:12px;margin-top:12px}.custom-dimensions label,.photo-target{display:grid;gap:6px;font-size:12px;flex:1 1;min-width:0}.custom-dimensions input,.photo-target select{width:100%;padding:8px 10px;border:1px solid var(--border-strong);border-radius:3px}.contour-reroll,.custom-dimensions input,.photo-target select{min-height:40px;background:transparent;color:var(--text);font:inherit}.contour-reroll{display:block;margin-top:8px;padding:9px 0;border:0;border-bottom:1px solid var(--border-strong);font-size:12px;cursor:pointer}.configuration-controls .ink-color-choice{margin-top:22px;margin-bottom:0;padding-top:16px;border-top:1px solid var(--border);border-bottom:0}.configuration-help{font-size:12px;line-height:1.55;color:var(--text-secondary);margin-top:9px}.photo-mode{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0;font-size:13px}.photo-mode label{display:flex;gap:6px;align-items:center}.photo-mode input{accent-color:#363935}.photo-assembly{display:block;width:100%;height:150px;margin:10px 0}.photo-target{grid-template-columns:1fr 2fr;align-items:center;margin-block:10px}.photo-upload{display:block;position:relative;padding:12px;border:1px solid var(--border-strong);border-radius:3px;text-align:center;font-size:13px;margin-top:12px;cursor:pointer}.photo-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.photo-upload:focus-within{outline:2px solid var(--text);outline-offset:3px}.photo-list{padding:0;margin-top:12px;list-style:none}.photo-list li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:8px 0;border-top:1px solid var(--border);font-size:12px}.photo-list span{overflow-wrap:anywhere}.photo-list button{background:none;border:0;text-decoration:underline;font:inherit;cursor:pointer;min-height:32px}.photo-guide-link,.photo-unavailable a{display:inline-block;padding-block:6px;color:var(--text);font-size:12px;line-height:1.55;text-underline-offset:3px}.photo-unavailable{margin-block:14px}.photo-unavailable p{margin-top:3px}.photo-preparation{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.photo-report-title{font-size:13px;line-height:1.5;font-weight:550}.photo-palette,.photo-resolution{display:grid;gap:8px;padding:0;margin-top:12px;list-style:none;font-size:12px;line-height:1.55}.photo-palette li{display:flex;align-items:center;gap:8px}.photo-palette-swatch{width:18px;height:18px;flex:0 0 18px;border:1px solid var(--border);border-radius:50%}.photo-color-code{color:var(--text-secondary)}.photo-resolution li{display:grid;gap:3px;overflow-wrap:anywhere}.photo-resolution strong{font-weight:550}.photo-resolution li>span:last-child{color:var(--text-secondary)}.photo-editor{min-width:0}.photo-editor .photo-step{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.photo-editor .photo-step-heading{display:flex;gap:8px;align-items:baseline;font-size:13px;font-weight:550;line-height:1.55}.photo-editor .photo-step-heading>span{color:var(--text-secondary);font-weight:400}.photo-editor .photo-originals{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;list-style:none;padding:0;margin:14px 0 0}.photo-editor .photo-originals li{min-width:0}.photo-editor .photo-originals img{display:block;width:100%;height:170px;object-fit:contain;background:var(--surface)}.photo-editor .photo-original-caption{display:flex;justify-content:space-between;gap:8px;align-items:baseline;font-size:11px;line-height:1.55}.photo-editor .photo-discard,.photo-editor .photo-original-caption button{min-height:36px;padding:6px 0;border:0;background:transparent;color:var(--text);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.photo-editor .photo-setting{margin-top:14px}.photo-editor .photo-setting-label{display:block;margin-bottom:6px;font-size:12px;line-height:1.55}.photo-editor .photo-setting-options{display:flex;gap:6px}.photo-editor .photo-setting-options button{flex:1 1;min-width:0;min-height:44px;padding:8px 6px;border:1px solid var(--border);border-radius:3px;background:transparent;color:var(--text);font:inherit;font-size:12px;line-height:1.45;cursor:pointer}.photo-editor .photo-setting-options button[aria-pressed=true]{background:#e5e7df;border-color:var(--border-strong);box-shadow:inset 0 -2px #30362a}.photo-editor .photo-ink-option small,.photo-editor .photo-setting-options small{display:block;color:var(--text-secondary);font-size:11px;font-weight:400}.photo-editor .photo-ink-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin-top:10px}.photo-editor .photo-ink-option{display:flex;gap:6px;align-items:center;min-height:44px;font-size:11px;line-height:1.4;cursor:pointer}.photo-editor .photo-ink-option input{flex:0 0 14px;width:14px;height:14px;accent-color:var(--action)}.photo-editor .photo-ink-option .photo-palette-swatch{width:16px;height:16px;flex-basis:16px}.photo-editor .photo-pending{color:var(--text)}.photo-editor .photo-apply-actions{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:12px}.photo-editor .photo-apply,.photo-model-preview .photo-model-controls button,.photo-model-preview>button{min-height:44px;padding:10px 14px;border:1px solid var(--border-strong);border-radius:3px;background:transparent;color:var(--text);font:inherit;font-size:12px;line-height:1.55;cursor:pointer}.photo-editor .photo-apply{background:var(--action);color:var(--action-text)}.photo-editor button:disabled,.photo-editor input:disabled{cursor:not-allowed}.photo-editor .photo-apply:disabled{background:var(--surface);border-color:var(--border);color:var(--text-secondary)}.photo-editor .photo-resolution-details{margin-top:12px;font-size:12px;line-height:1.55}.photo-editor .photo-resolution-details summary{padding-block:6px;cursor:pointer}.photo-editor .photo-model-lock{min-width:0;margin:12px 0 0;padding:0;border:0}.photo-model-preview{min-width:0;font-size:12px;line-height:1.55}.photo-model-preview canvas{display:block;width:100%;max-width:100%;height:300px;background:var(--surface);touch-action:none}.photo-model-preview .photo-model-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-block:10px}.photo-model-dialog{width:min(calc(100% - 32px),1000px);max-width:calc(100% - 32px);max-height:90vh;margin:auto;padding:20px;overflow:auto;border:1px solid var(--border);border-radius:4px;background:var(--background);color:var(--text)}.photo-model-dialog::backdrop{background:rgb(23 24 21/36%)}.photo-model-dialog .photo-model-canvas{width:100%;height:min(65vh,650px)}.photo-model-dialog .photo-model-close{display:block;min-height:44px;margin-left:auto;margin-bottom:12px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:3px;background:transparent;color:var(--text);font:inherit;font-size:12px;cursor:pointer}.photo-model-dialog button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}@media (max-width:600px){.photo-model-dialog{padding:14px}}@media (min-width:1001px){.configuration-preview{position:sticky;top:24px}}@media (max-width:600px){.configuration-controls .shape-options{grid-template-columns:repeat(3,minmax(0,1fr))}.configuration-controls .choice-content{font-size:11px}}