:root{--accent:#d3542f;--accent-dark:#9d3719;--bg:#fff;--bg-strong:#ece8df;--card:#fff;--ink:#1f211d;--muted:#686a61;--border:#ded8ca;--teal:#1d6f78;--yellow:#f2c14e}html,body{max-width:100vw;min-height:100%;overflow-x:hidden}body{color:var(--ink);background:var(--bg);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.configurator-shell{grid-template-columns:minmax(0,1.35fr) minmax(400px,.65fr);min-height:100vh;display:grid}.preview-panel{flex-direction:column;justify-content:center;gap:14px;padding:34px;display:flex}.preview-stage{place-items:center;min-height:460px;display:grid;position:relative;overflow:hidden}.mockup-frame{max-width:100%;height:min(82vh,720px);position:relative}.product-mockup{object-fit:contain;width:100%;height:100%}.print-zone{pointer-events:none;border:1px dashed #1d6f788c;border-radius:0;width:min(38vw,280px);height:min(52vh,360px);position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)}.design-text{text-align:center;text-wrap:balance;overflow-wrap:anywhere;font-weight:800;line-height:1.05;position:absolute;left:50%;transform:translate(-50%,-50%)}.design-illustration{object-fit:contain;opacity:.9;max-width:100%;max-height:100%;position:absolute;left:50%;transform:translate(-50%,-50%)}.preview-meta{width:100%;max-width:720px;color:var(--muted);justify-content:space-between;align-items:center;gap:18px;margin:0 auto;display:flex}.preview-meta div:first-child{flex-direction:column;gap:4px;display:flex}.preview-meta strong{color:var(--ink)}.counter{border:1px solid var(--border);text-align:center;background:#ffffffbf;border-radius:999px;min-width:74px;padding:7px 12px;font-weight:700}.controls-panel{flex-direction:column;gap:18px;padding:34px;display:flex}.control-group{flex-direction:column;gap:8px;display:flex}.control-group label,.control-label{color:var(--muted);font-size:13px;font-weight:700}.product-tabs{flex-wrap:wrap;gap:8px;display:flex}.product-tabs button.product-tab{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:999px;padding:10px 18px}.product-tabs button.product-tab:hover:not(:disabled){background:#f2efe8}.product-tabs button.product-tab.selected{background:var(--ink);border-color:var(--ink);color:#fff}.refine-row{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.refine-field{color:var(--muted);flex-direction:column;flex:150px;gap:6px;font-size:13px;font-weight:700;display:flex}.color-dot{border-radius:999px;width:14px;height:14px;box-shadow:inset 0 0 0 1px #1f211d40}.select-with-dot{display:block;position:relative}.select-with-dot .color-dot{pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.select-with-dot select{padding-left:34px}.refine-static{color:var(--ink);align-items:center;gap:8px;padding:11px 0;font-weight:600;display:flex}select,input[type=text]{border:1px solid var(--border);width:100%;color:var(--ink);background:#fff;border-radius:7px;padding:11px 12px}input[type=range]{width:100%;accent-color:var(--teal)}.text-entry{grid-template-columns:1fr auto;gap:8px;display:grid}button[type=button],button[type=submit],.suggestions button{background:var(--accent);color:#fff;border:0;border-radius:7px;padding:10px 14px;font-weight:700}button:hover:not(:disabled){background:var(--accent-dark)}.suggestions{flex-wrap:wrap;gap:8px;display:flex}.suggestions button,button.secondary{border:1px solid var(--border);background:var(--bg);color:var(--ink)}.suggestions button:hover,button.secondary:hover{background:var(--bg-strong)}.control-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.swatches{gap:9px;display:flex}.swatch{width:34px;height:34px;box-shadow:0 0 0 1px var(--border);border:2px solid #fff;border-radius:999px}.swatch.selected{box-shadow:0 0 0 3px var(--teal)}.segmented{border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.segmented button{color:var(--ink);background:#fff;border-radius:0}.segmented button.selected{background:var(--teal);color:#fff}.layers{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:14px;display:flex}.layer-row{color:var(--muted);grid-template-columns:1fr auto;align-items:center;gap:10px;font-size:14px;display:grid}.layer-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-row button{color:var(--accent-dark);background:0 0;padding:5px 0}.shopify-form{display:flex}.shopify-form button{width:100%;min-height:44px}.secondary-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.status-line{min-height:22px;color:var(--muted);font-size:13px}.status-line.error{color:var(--accent-dark);font-weight:700}@media (max-width:920px){.configurator-shell{grid-template-columns:1fr}.preview-panel,.controls-panel{padding:22px}.preview-stage{min-height:470px}.print-zone{width:min(58vw,260px);height:min(42vh,300px)}}@media (max-width:560px){.control-row,.text-entry,.secondary-actions{grid-template-columns:1fr}}button.picker-trigger{border:1px solid var(--border);width:100%;color:var(--ink);text-align:left;background:#fff;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;font-weight:600;display:flex}button.picker-trigger:hover:not(:disabled){background:#f7f5ef}.picker-trigger-hint{color:var(--teal);font-size:13px;font-weight:700}.picker-overlay{z-index:50;background:#1f211d73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.picker-dialog{background:#fff;border-radius:12px;width:100%;max-width:720px;max-height:80vh;padding:20px;overflow:auto}.picker-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}button.picker-close{color:var(--muted);background:0 0;padding:4px 10px;font-size:20px;line-height:1}button.picker-close:hover:not(:disabled){color:var(--ink);background:#f2efe8}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.picker-suggested{border:1px solid var(--border);background:#f7f5ef;border-radius:10px;margin-bottom:12px;padding:10px 12px 12px}.picker-suggested-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:700}.picker-tile-credit{color:var(--muted);font-size:11.5px;font-weight:500}button.picker-tile{border:1px solid var(--border);color:var(--ink);text-align:center;background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:12px;font-size:13px;font-weight:600;display:flex}button.picker-tile:hover:not(:disabled){background:#f7f5ef}button.picker-tile.selected{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal)}button.picker-tile img,.picker-tile-empty{object-fit:contain;width:84px;height:84px}.picker-tile-empty{border:1px dashed var(--border);color:var(--muted);border-radius:8px;place-items:center;font-size:22px;display:grid}.picker-texts{flex-wrap:wrap;gap:8px;display:flex}.picker-texts button{border:1px solid var(--border);color:var(--ink);background:#fff}.picker-texts button:hover:not(:disabled){background:#f2efe8}button.add-elements{border:1px dashed var(--teal);width:100%;color:var(--teal);background:#eef5f5;border-radius:8px;padding:13px 14px;font-weight:700}button.add-elements:hover:not(:disabled){background:#e2eeed}.element-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.element-row{border:1px solid var(--border);border-radius:9px;overflow:hidden}.element-row.open{border-color:var(--teal)}.element-head{align-items:stretch;display:flex}button.element-toggle{min-width:0;color:var(--ink);text-align:left;background:#fff;border:0;border-radius:0;flex:auto;align-items:center;gap:10px;padding:11px 12px;font-weight:600;display:flex}button.element-toggle:hover:not(:disabled){background:#f7f5ef}.element-dot{border-radius:999px;flex:none;width:16px;height:16px;box-shadow:inset 0 0 0 1px #1f211d40}.element-thumb{object-fit:contain;flex:none;width:28px;height:28px}.element-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:600;overflow:hidden}.element-chevron{color:var(--muted);flex:none}button.element-remove{border:0;border-left:1px solid var(--border);color:var(--accent-dark);background:#fff;border-radius:0;flex:none;padding:0 14px;font-size:13px;font-weight:700}button.element-remove:hover:not(:disabled){background:#f7efe9}.element-body{border-top:1px solid var(--border);background:#fbfaf7;flex-direction:column;gap:14px;padding:14px 12px;display:flex}.element-field{color:var(--muted);border:0;flex-direction:column;gap:8px;margin:0;padding:0;font-size:13px;font-weight:700;display:flex}.element-field legend{padding:0}.picker-section{margin-bottom:18px}.picker-section:last-child{margin-bottom:0}.picker-section-title{color:var(--muted);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.picker-note{color:var(--accent-dark);margin:6px 0 0;font-size:13px;font-weight:700}.blueprint{flex-direction:column;align-items:center;gap:16px;padding:34px 0 0 44px;display:flex}.blueprint-frame{border:1.5px solid var(--teal);background:#fff;max-width:100%;height:min(56vh,420px);position:relative}.design-area{position:absolute;inset:0}.dim-line{color:var(--muted);position:absolute}.dim-x{border-top:1px solid;top:-30px;left:0;right:0}.dim-x:before,.dim-x:after{content:"";border-left:1px solid;height:11px;position:absolute;top:-5px}.dim-x:before{left:0}.dim-x:after{right:0}.dim-y{border-left:1px solid;top:0;bottom:0;left:-30px}.dim-y:before,.dim-y:after{content:"";border-top:1px solid;width:11px;position:absolute;left:-5px}.dim-y:before{top:0}.dim-y:after{bottom:0}.dim-label{white-space:nowrap;background:#fff;padding:0 6px;font-size:12px;font-weight:700;position:absolute}.dim-x .dim-label{top:-9px;left:50%;transform:translate(-50%)}.dim-y .dim-label{top:50%;left:0;transform:translate(-50%,-50%)rotate(-90deg)}.blueprint-note{max-width:340px;color:var(--muted);text-align:center;margin:0;font-size:12px}.sticker-cut{filter:drop-shadow(2px 0 #fff)drop-shadow(-2px 0 #fff)drop-shadow(0 2px #fff)drop-shadow(0 -2px #fff)drop-shadow(2px 2px #fff)drop-shadow(-2px -2px #fff)drop-shadow(2px -2px #fff)drop-shadow(-2px 2px #fff)drop-shadow(0 0 .6px #1f211d8c)}.tpl-authoring{max-width:1080px;margin:0 auto;padding:32px 24px 80px}.tpl-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.tpl-eyebrow{color:#c94d26;letter-spacing:.09em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}.tpl-head h1{margin:0;font-size:26px}.tpl-desc{color:#6f6f67;max-width:60ch;margin:6px 0 0}.tpl-status{border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700}.tpl-status-published{color:#26723b;background:#ddf0e3}.tpl-status-draft{color:#6f6f67;background:#ebe7da}.tpl-status-archived{color:#a5281f;background:#f3ded9}.tpl-tabs{border-bottom:1px solid #dedbd2;flex-wrap:wrap;gap:4px;margin-bottom:20px;display:flex}.tpl-tab{color:#6f6f67;cursor:pointer;font:inherit;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 12px;font-weight:700}.tpl-tab-on{color:#c94d26;border-bottom-color:#c94d26}.tpl-cols{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;display:grid}.tpl-stage-frame{background:#f4f2ec;border:1px solid #dedbd2;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;min-height:320px;padding:20px;display:flex}.tpl-stage-illu{max-width:45%;max-height:150px}.tpl-stage-hint,.tpl-hint,.tpl-muted{color:#6f6f67;font-size:13px}.tpl-hint{margin-top:10px}.tpl-panel h2{margin:18px 0 8px;font-size:14px}.tpl-panel h2:first-child{margin-top:0}.tpl-chips{flex-wrap:wrap;gap:6px;display:flex}.tpl-chip{background:#efede5;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}.tpl-color{background:#fff;border:1px solid #dedbd2;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 6px;font-size:13px;display:inline-flex}.tpl-swatch{border:1px solid #dedbd2;border-radius:50%;width:14px;height:14px}.tpl-list{margin:0;padding-left:18px;font-size:13px}.tpl-empty{color:#6f6f67;text-align:center;padding:40px 0}@media (max-width:720px){.tpl-cols{grid-template-columns:1fr}}.mug3d{cursor:grab;touch-action:none;width:100%;height:min(72vh,520px)}.mug3d canvas{width:100%;height:100%;display:block}.tpl-head-side{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.tpl-signout{color:#6f6f67;cursor:pointer;background:0 0;border:1px solid #dedbd2;border-radius:999px;padding:4px 12px;font-size:12px}.tpl-signin{background:#fff;border:1px solid #dedbd2;border-radius:10px;gap:12px;max-width:420px;margin:24px auto;padding:24px;display:grid}.tpl-signin h2{margin:0;font-size:18px}.tpl-signin label{color:#6f6f67;gap:6px;font-size:13px;font-weight:700;display:grid}.tpl-signin input{font:inherit;border:1px solid #dedbd2;border-radius:6px;padding:9px 10px}.tpl-signin button{color:#fff;cursor:pointer;font:inherit;background:#c94d26;border:0;border-radius:6px;min-height:40px;font-weight:700}.tpl-signin button:hover{background:#a53c1a}.tpl-signin-error{color:#a5281f;background:#f8d7da;border-radius:6px;margin:8px 0;padding:9px 12px;font-size:13px}.tpl-save-ok{color:#26723b;margin:8px 0 0;font-size:13px}.tpl-stage-zone{touch-action:none;background:#f4f2ec;border:2px dashed #c9c4b4;border-radius:8px;width:100%;max-width:520px;position:relative;overflow:hidden}.tpl-zone-item{cursor:grab;-webkit-user-select:none;user-select:none;position:absolute;transform:translate(-50%,-50%)}.tpl-zone-item:active{cursor:grabbing}.tpl-zone-item-selected{outline-offset:2px;outline:2px solid #c94d26}.tpl-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.tpl-fields label{color:#6f6f67;gap:4px;font-size:12px;font-weight:700;display:grid}.tpl-fields input{font:inherit;border:1px solid #dedbd2;border-radius:6px;width:100%;padding:6px 8px}.tpl-variant{border:1px solid #dedbd2;border-radius:8px;margin-bottom:10px;padding:10px 12px}.tpl-variant-name{align-items:center;gap:6px;margin-bottom:8px;font-size:13px;font-weight:700;display:inline-flex}.tpl-variant-rows{gap:6px;display:grid}.tpl-variant-row{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.tpl-variant-row input[type=color]{cursor:pointer;border:1px solid #dedbd2;border-radius:6px;block-size:28px;inline-size:44px;padding:2px}.tpl-save{border-top:1px solid #dedbd2;margin:16px 0;padding-top:14px}.tpl-save button{color:#fff;cursor:pointer;font:inherit;background:#c94d26;border:0;border-radius:6px;min-height:40px;padding:0 18px;font-weight:700}.tpl-save button:hover{background:#a53c1a}.tpl-save button:disabled{cursor:not-allowed;opacity:.5}.cmp-toprow{flex-wrap:wrap;gap:16px;margin-bottom:18px;display:flex}.cmp-field{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.cmp-field-grow{flex:260px}.cmp-field select,.cmp-field input{font:inherit;border:1px solid #dedbd2;border-radius:6px;min-height:38px;padding:0 10px}.cmp-label{color:#6f6f67;margin:18px 0 8px;font-size:13px;font-weight:600}.cmp-illu-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px;display:grid}.cmp-illu{cursor:pointer;font:inherit;text-align:center;background:#fff;border:1px solid #dedbd2;border-radius:8px;flex-direction:column;gap:6px;padding:8px;font-size:12px;display:flex}.cmp-illu-on{border-color:#c94d26;box-shadow:inset 0 0 0 1px #c94d26}.cmp-illu-thumb{aspect-ratio:1;background:#f6f5f1;border-radius:6px;justify-content:center;align-items:center;display:flex;overflow:hidden}.cmp-illu-thumb img{object-fit:contain;max-width:100%;max-height:100%}.cmp-illu-name{word-break:break-word;line-height:1.2}.cmp-text-list{flex-direction:column;gap:6px;max-height:220px;margin-bottom:8px;display:flex;overflow-y:auto}.cmp-text-row{align-items:flex-start;gap:8px;font-size:13px;display:flex}.cmp-colors{flex-direction:column;gap:6px;display:flex}.cmp-color{align-items:center;gap:8px;font-size:13px;display:flex}.print-zone,.blueprint .design-area{pointer-events:auto;touch-action:none;container-type:size}.print-zone [data-element-id],.design-area [data-element-id]{cursor:grab}.free-position-row,.free-position-hint{color:#6b7280;align-items:center;gap:8px;margin:6px 0 0;font-size:.78rem;display:flex}.element-body button.free-position-reset{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:2px 10px;font-size:.74rem}.element-body button.free-position-reset:hover{border-color:#9ca3af}.wrap-editor{width:100%;max-width:none;margin:8px auto 0}.wrap-hint{text-align:center;color:#6b7280;margin:0 0 50px;font-size:.82rem}.wrap-box{touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px dashed #c2c7cd;width:100%;position:relative;container-type:size}.wrap-guide{pointer-events:none;border-left:1px dashed #d3d8de;width:0;position:absolute;top:0;bottom:0}.wrap-guide.horizontal{border-top:1px dashed #d3d8de;border-left:0;width:auto;height:0;inset:50% 0 auto}.wrap-guide.active{border-color:#2563ebbf}.wrap-item{cursor:grab;place-items:center;display:grid;position:absolute}.wrap-item .wrap-text{text-align:center;white-space:pre-wrap;font-weight:800;line-height:1.05;display:block}.wrap-item .wrap-illustration{pointer-events:none;width:100%;height:auto;display:block}.wrap-frame{pointer-events:none;border:1px dashed #2563ebd1;position:absolute;inset:-6px}.wrap-handle{background:#22d3ee;border:1px solid #fff;border-radius:999px;width:11px;height:11px;position:absolute;box-shadow:0 1px 3px #0f172a4d}.wrap-handle.corner.top{top:-12px}.wrap-handle.corner.bottom{bottom:-12px}.wrap-handle.corner.left{left:-12px}.wrap-handle.corner.right{right:-12px}.wrap-handle.corner.top.left,.wrap-handle.corner.bottom.right{cursor:nwse-resize}.wrap-handle.corner.top.right,.wrap-handle.corner.bottom.left{cursor:nesw-resize}.wrap-handle.rotate{cursor:grab;top:-34px;left:50%;transform:translate(-50%)}.wrap-handle.rotate:before{content:"";background:#2563eb99;width:1px;height:16px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.wrap-editor button.wrap-delete{color:#fff;cursor:pointer;background:#ef4444;border:2px solid #fff;border-radius:999px;place-items:center;width:22px;height:22px;padding:0;font-size:15px;font-weight:700;line-height:1;display:grid;position:absolute;top:-16px;right:-16px;box-shadow:0 1px 4px #0f172a59}.wrap-editor button.wrap-delete:hover{background:#dc2626}.wrap-legend{pointer-events:none;margin-top:2px;padding-left:44px}.wrap-legend-track{height:62px;position:relative}.wrap-face{flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;top:0;transform:translate(-50%)}.wrap-face em{color:#8b9299;white-space:nowrap;font-size:.72rem;font-style:normal}.wrap-face.wrap-back{top:8px}.wrap-face.wrap-back em{color:#a7adb3}.wrap-mug-icon{color:#9aa0a7;width:52px}@media (max-width:720px){.wrap-mug-icon{width:36px}.wrap-legend-track{height:50px}.wrap-face em{font-size:.66rem}.wrap-legend{padding-left:34px}.wrap-editor{padding-left:0}}.history-bar{align-items:center;gap:8px;display:flex}.controls-panel button.icon-action,.top-controls button.icon-action{border:1px solid var(--border);color:var(--ink);background:#fff;padding:7px 12px;font-size:.82rem;font-weight:700}.controls-panel button.icon-action:hover:not(:disabled),.top-controls button.icon-action:hover:not(:disabled){background:var(--bg-strong)}.element-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;display:flex}.wrap-text-edit{outline-offset:3px;cursor:text;background:#ffffffb3;outline:2px solid #2563ebb3}.wrap-item.out-of-bounds .wrap-frame{border-color:#ef4444}.wrap-item.out-of-bounds:after{content:"";pointer-events:none;border:1px dashed #ef4444b3;position:absolute;inset:-6px}.wrap-warning{text-align:center;color:#b91c1c;margin:10px 0 0;font-size:.8rem}.layers .layer-row{grid-template-columns:minmax(0,1fr) auto;padding:4px 0}.layers .layer-row.selected{color:var(--ink);font-weight:700}.controls-panel .layers button.layer-name{color:inherit;font-weight:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:4px 0;overflow:hidden}.controls-panel .layers button.layer-name:hover{background:0 0;text-decoration:underline}.layer-tools{gap:4px;display:flex}.controls-panel .layer-tools button.icon-action{min-width:30px;padding:4px 8px;font-size:.8rem}.top-controls{flex-direction:column;gap:14px;padding:34px 34px 0;display:flex}.top-controls .history-bar{justify-content:flex-start}.wrap-panel{padding:0 34px 34px}@media (min-width:1000px){.configurator-shell{grid-template:"head head""preview controls""wrap wrap"/minmax(0,1.35fr) minmax(360px,.65fr)}.top-controls{grid-area:head}.preview-panel{grid-area:preview}.controls-panel{grid-area:controls;padding-top:18px}.wrap-panel{grid-area:wrap}}@media (max-width:999px){.configurator-shell{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""preview""wrap""controls"}.top-controls{grid-area:head;padding:24px 24px 0}.preview-panel{grid-area:preview;padding:18px 24px}.wrap-panel{grid-area:wrap;padding:0 24px 24px}.controls-panel{grid-area:controls;padding:8px 24px 34px}.preview-stage{min-height:0}.mockup-frame{height:min(66vh,580px)}}@media (min-width:900px){.preview-panel{justify-content:flex-start;align-self:start;position:sticky;top:0}}.picker-nav{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-bottom:14px;padding-bottom:12px;display:flex}.picker-dialog .picker-nav button{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:999px;padding:8px 16px;font-weight:700}.picker-dialog .picker-nav button:hover:not(.selected){background:#f2efe8}.picker-dialog .picker-nav button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.picker-chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.element-form{flex-direction:column;min-height:0;display:flex}.ef-head{z-index:2;border-bottom:1px solid var(--border);background:var(--bg-strong);align-items:center;gap:8px;padding:12px 14px;display:flex;position:sticky;top:0}.ef-head-thumb{border:1px solid var(--border);background:#fff;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.ef-head-thumb img{object-fit:contain;width:20px;height:20px}.ef-head-title{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:14px;font-weight:700;overflow:hidden}.element-form button.ef-close{color:var(--muted);background:0 0;border:0;flex:none;padding:4px 8px;font-size:16px;line-height:1}.element-form button.ef-close:hover:not(:disabled){color:var(--ink);background:#fff}.ef-body{gap:16px;padding:14px;display:grid;overflow-y:auto}.ef-field{gap:8px;min-width:0;display:grid}.ef-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11.5px;font-weight:700}.ef-grid2{grid-template-columns:1fr;gap:12px;display:grid}.element-form input[type=text]{border-radius:8px;font-size:14px}.element-form :focus-visible,.element-drawer :focus-visible,.element-sheet :focus-visible,.garment-swatches :focus-visible,.wrap-ctxbar :focus-visible{outline:2px solid var(--teal);outline-offset:2px}.ef-swatches{flex-wrap:wrap;gap:12px;display:flex}.element-form button.ef-swatch,.element-sheet button.ef-swatch{border:0;border-radius:999px;width:34px;height:34px;padding:0;position:relative;box-shadow:inset 0 0 0 1px #1f211d38}.element-form button.ef-swatch:hover:not(:disabled),.element-sheet button.ef-swatch:hover:not(:disabled){background-color:inherit}.ef-swatch.sel:after{content:"";border:2px solid var(--teal);border-radius:999px;position:absolute;inset:-5px}.ef-swatch.sel:before{content:"✓";color:#fff;text-shadow:0 1px 2px #00000073;place-items:center;font-size:14px;font-weight:700;display:grid;position:absolute;inset:0}.ef-swatch.off{opacity:.35;cursor:not-allowed}.ef-swatch.off:after{content:"";background:var(--muted);width:2px;position:absolute;top:-4px;bottom:-4px;left:50%;transform:rotate(45deg)}.ef-swatches.compact button.ef-swatch{width:28px;height:28px}.ef-slider{align-items:center;height:34px;padding-top:14px;display:grid;position:relative}.ef-slider input[type=range]{width:100%;height:22px;accent-color:var(--teal);margin:0}.ef-bubble{top:0;left:calc(11px + (100% - 22px) * var(--p) / 100);background:var(--ink);color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:8px;padding:2px 8px;font-size:11.5px;font-weight:700;position:absolute;transform:translate(-50%)}.ef-bubble:after{content:"";border:4px solid #0000;border-top-color:var(--ink);position:absolute;top:100%;left:50%;transform:translate(-50%)}.ef-fonts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.element-form button.ef-font-tile,.element-sheet button.ef-font-tile{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:8px;place-items:center;gap:2px;padding:8px 6px 6px;display:grid}.element-form button.ef-font-tile:hover:not(:disabled),.element-sheet button.ef-font-tile:hover:not(:disabled){border-color:var(--teal);background:#fff}.ef-font-tile.sel{border:2px solid var(--teal);padding:7px 5px 5px}.ef-font-tile b{font-size:19px;line-height:1}.ef-font-tile span{color:var(--muted);font-size:10.5px;font-weight:600}.ef-stepper{border:1px solid var(--border);border-radius:999px;justify-self:start;align-items:center;display:inline-flex;overflow:hidden}.element-form .ef-stepper button,.element-sheet .ef-stepper button{width:34px;height:32px;color:var(--ink);background:#fff;border:0;border-radius:0;padding:0;font-size:16px;font-weight:700}.element-form .ef-stepper button:hover:not(:disabled),.element-sheet .ef-stepper button:hover:not(:disabled){background:var(--bg-strong)}.ef-stepper output{border-inline:1px solid var(--border);font-variant-numeric:tabular-nums;text-align:center;min-width:74px;padding:0 8px;font-size:13px;font-weight:700;line-height:32px}.ef-stepper-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ef-witness{font-size:15px;font-weight:800}.ef-freepos{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.element-form button.ef-freepos-reset{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:999px;padding:3px 12px;font-size:12px;font-weight:700}.element-form button.ef-freepos-reset:hover:not(:disabled){border-color:var(--teal);color:var(--teal);background:#fff}.ef-iconbar{flex-wrap:wrap;gap:6px;display:flex}.element-form .ef-iconbar button,.element-sheet .ef-iconbar button{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:8px;align-items:center;gap:7px;padding:8px 11px;font-size:12.5px;font-weight:700;display:inline-flex}.element-form .ef-iconbar button:hover:not(:disabled),.element-sheet .ef-iconbar button:hover:not(:disabled){border-color:var(--teal);color:var(--teal);background:#fff}.element-form .ef-iconbar button.danger:hover:not(:disabled),.element-sheet .ef-iconbar button.danger:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ef-iconbar svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.ef-layer{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px;display:grid}.ef-layer.sel{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.ef-layer-thumb{background:var(--bg-strong);border-radius:8px;place-items:center;width:30px;height:30px;font-size:13px;font-weight:800;display:grid}.ef-layer-thumb img{object-fit:contain;width:22px;height:22px}.controls-panel .layers button.ef-layer-name{color:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:4px 0;font-size:13.5px;font-weight:600;overflow:hidden}.controls-panel .layers button.ef-layer-name:hover{background:0 0;text-decoration:underline}.ef-layer-tools{align-items:center;gap:3px;display:flex}.controls-panel .layers .ef-layer-tools button{width:26px;height:26px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;font-size:13px;display:grid}.controls-panel .layers .ef-layer-tools button:hover:not(:disabled){background:var(--bg-strong);color:var(--ink)}.ef-layer-grip{color:var(--border);cursor:grab;letter-spacing:-1px;padding-left:2px;font-size:14px}.garment-swatches{flex-wrap:wrap;gap:10px;padding:2px 0;display:flex}.garment-color-name{color:var(--ink);text-transform:capitalize;font-weight:700}.top-controls button.garment-swatch{border:0;border-radius:999px;width:30px;height:30px;padding:0;position:relative;box-shadow:inset 0 0 0 1px #1f211d40}.top-controls button.garment-swatch:hover:not(:disabled){background-color:inherit}.top-controls button.garment-swatch.sel:after{content:"";border:2px solid var(--teal);border-radius:999px;position:absolute;inset:-4px}.top-controls button.garment-swatch:before{content:attr(data-color-name);z-index:5;color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#1f211d;border-radius:6px;padding:4px 9px;font-size:.75rem;font-weight:600;line-height:1.3;transition:opacity .12s;position:absolute;top:calc(100% + 9px);left:50%;transform:translate(-50%)}.top-controls button.garment-swatch:hover:before,.top-controls button.garment-swatch:focus-visible:before{opacity:1}@media (prefers-reduced-motion:reduce){.top-controls button.garment-swatch:before{transition:none}}@media (min-width:1500px){.ef-panel .ef-grid2{grid-template-columns:1fr 1fr}.element-row.open:has(.ef-panel){border-color:var(--teal)}.ef-panel .ef-head{top:0}}.element-drawer{z-index:40;border-left:1px solid var(--border);background:#fff;flex-direction:column;width:min(380px,92vw);animation:.18s ease-out ef-slide-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-10px 0 26px #1f211d24}@keyframes ef-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.element-drawer .element-form{flex:auto;min-height:0}.element-drawer .ef-body{flex:auto}.element-sheet{z-index:40;border:1.5px solid var(--ink);background:#fff;border-bottom:0;border-radius:16px 16px 0 0;flex-direction:column;max-height:66vh;animation:.18s ease-out ef-rise;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #1f211d29}@keyframes ef-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-handle{background:var(--border);border-radius:999px;flex:none;width:34px;height:4px;margin:8px auto 2px}.sheet-quickbar{justify-content:center;align-items:center;gap:8px;padding:8px 14px 12px;display:flex}.sheet-quickbar .divider{background:var(--border);width:1px;height:26px}.sheet-quickbar .mini-size{flex:auto;max-width:160px}.element-sheet button.sheet-more{color:var(--teal);background:0 0;border:0;padding:8px 10px;font-size:12.5px;font-weight:700}.element-sheet button.sheet-more:hover:not(:disabled){background:var(--bg-strong)}.element-sheet .element-form{border-top:1px solid var(--border);min-height:0}.element-sheet .ef-body{padding-bottom:max(14px, env(safe-area-inset-bottom))}.configurator-shell.sheet-open .controls-panel{padding-bottom:120px}.configurator-shell.sheet-expanded .controls-panel{padding-bottom:60vh}@media (max-width:899px){.element-sheet button.ef-swatch,.element-sheet .ef-font-tile,.element-sheet .ef-stepper button,.element-sheet .ef-iconbar button{min-height:44px}.element-sheet button.ef-swatch{width:44px;height:44px}.element-sheet .ef-stepper button{width:44px}.element-sheet .ef-stepper output{line-height:44px}.element-sheet button.sheet-more,.sheet-quickbar button.ef-swatch{min-height:44px}.sheet-quickbar button.ef-swatch{width:34px}.top-controls button.garment-swatch{width:40px;height:40px}}.wrap-ctxbar{z-index:6;background:var(--ink);border-radius:8px;align-items:center;gap:2px;padding:4px;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 26px));box-shadow:0 6px 18px #1f211d4d}.wrap-ctxbar.below{transform:translate(-50%,26px)}.wrap-editor .wrap-ctxbar button{color:#fff;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:28px;padding:0;font-size:13px;font-weight:700;display:grid}.wrap-editor .wrap-ctxbar button:hover:not(:disabled){background:#ffffff29}.wrap-ctxbar .ctx-sep{background:#ffffff3d;width:1px;height:18px;margin:0 2px}.wrap-ctxbar .ctx-dot{border-radius:999px;width:13px;height:13px;box-shadow:0 0 0 1.5px #fff}.wrap-ctxbar .ctx-colors{position:relative}.wrap-ctxbar .ctx-palette{background:var(--ink);border-radius:8px;gap:6px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 18px #1f211d4d}.wrap-ctxbar.below .ctx-palette{top:calc(100% + 8px);bottom:auto}.wrap-editor .wrap-ctxbar .ctx-palette button{border-radius:999px;width:22px;height:22px;box-shadow:inset 0 0 0 1px #ffffff59}.wrap-editor .wrap-ctxbar .ctx-palette button:hover:not(:disabled){background-color:inherit}.wrap-editor .wrap-ctxbar .ctx-palette button.sel{box-shadow:0 0 0 2px #fff}@media (prefers-reduced-motion:reduce){.element-drawer,.element-sheet{animation:none}}.picker-dialog .picker-chips button{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:700}.picker-dialog .picker-chips button:hover:not(.selected){background:#f2efe8}.picker-dialog .picker-chips button.selected{background:var(--teal);border-color:var(--teal);color:#fff}.mockup-request{flex-wrap:wrap;align-self:center;align-items:center;gap:10px;display:flex}.mockup-note{color:var(--muted);max-width:46ch;font-size:.8rem}.mockup-note.error{color:#b91c1c}.mockup-results{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;width:100%;display:grid}.mockup-results img{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;height:auto}@media (min-width:900px){.top-controls{flex-flow:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px}.top-controls .control-group{flex-flow:wrap;align-items:flex-end;gap:10px 20px}.top-controls .control-group>.control-label{padding-bottom:11px}.top-controls .refine-row{margin-top:0}.top-controls .history-bar{margin-left:auto}}.top-controls .refine-field{flex:none}.top-controls .refine-field select{width:auto;min-width:88px;max-width:160px}.top-controls .refine-static{padding:8px 0}.history-bar{gap:8px}.top-controls button.history-action{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:700;display:inline-flex}.top-controls button.history-action:hover:not(:disabled){border-color:var(--teal);color:var(--teal);background:#fff}.top-controls button.history-action:disabled{opacity:1;border-color:var(--border);color:#b4b1a6}.history-action svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.perso-actions{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.perso-actions button.add-elements{flex:200px;width:auto}.controls-panel button.layer-toggle{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:8px;flex:none;align-items:center;gap:7px;padding:13px 16px;font-size:12.5px;font-weight:700;display:inline-flex}.controls-panel button.layer-toggle:hover:not(:disabled){border-color:var(--teal);color:var(--teal);background:#fff}.controls-panel button.layer-toggle.on{border-color:var(--teal);background:var(--teal);color:#fff}.layer-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.element-thumb-slot{background:var(--bg-strong);border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.element-thumb-slot .element-thumb{width:22px;height:22px}.element-tools{align-items:center;gap:2px;padding-right:6px;display:flex}.controls-panel .element-tools button{width:28px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;font-size:13px;font-weight:700;display:grid}.controls-panel .element-tools button:hover:not(:disabled){background:var(--bg-strong);color:var(--ink)}.controls-panel .element-tools button.element-remove:hover:not(:disabled){color:var(--accent);background:#f7efe9}.controls-panel button.element-remove{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0}.element-list.layer-mode .element-row{cursor:grab}.element-list.layer-mode .element-row:active{cursor:grabbing}.element-row.as-layer.open{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.element-row.hidden-element .element-label,.element-row.hidden-element .element-thumb-slot{opacity:.45}.picker-dialog .draft-input{border:1px solid var(--border);border-radius:8px;width:100%;padding:12px 14px;font-size:15px}.draft-styler{border-top:1px solid var(--border);gap:14px;margin-top:14px;padding-top:14px;display:grid}.draft-preview{aspect-ratio:2.57;border:1px dashed var(--border);border-radius:8px;place-items:center;max-height:128px;display:grid;overflow:hidden;container-type:size}.draft-preview span{text-align:center;font-weight:800;line-height:1.05}.draft-hint{color:var(--muted);margin:-6px 0 0;font-size:.78rem}.draft-field{gap:7px;display:grid}.draft-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11.5px;font-weight:700}.draft-fonts{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px;display:grid}.picker-dialog .draft-fonts button{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:8px;place-items:center;gap:2px;padding:8px 6px;font-size:18px;font-weight:800;display:grid}.picker-dialog .draft-fonts button small{color:var(--muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:10px;font-weight:600}.picker-dialog .draft-fonts button:hover:not(.selected){background:#f2efe8}.picker-dialog .draft-fonts button.selected{border:2px solid var(--teal)}.picker-dialog .draft-add{justify-self:start;padding:11px 20px}.picker-dialog .picker-texts button.selected{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.zone-prompt{text-align:center;text-wrap:balance;letter-spacing:.01em;color:#98a0a8;pointer-events:none;-webkit-user-select:none;user-select:none;place-items:center;margin:0;padding:0 8%;font-size:.85rem;font-weight:600;display:grid;position:absolute;inset:0}.preview-stage>.mockup-frame,.preview-stage>.blueprint{transform:translate(var(--view-pan-x,0), var(--view-pan-y,0)) scale(var(--view-zoom,1));transform-origin:50%}.preview-stage.pan-mode{cursor:grab}.preview-stage.pan-mode:active{cursor:grabbing}.preview-stage.pan-mode .print-zone,.preview-stage.pan-mode .design-area,.preview-stage.pan-mode [data-element-id]{pointer-events:none}.viewport-controls{justify-content:center;align-items:center;gap:12px;padding:6px 0 0;display:flex}.viewport-zoom{flex:auto;max-width:320px;display:block}.viewport-zoom input[type=range]{width:100%;accent-color:var(--teal)}.viewport-value{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-size:.85rem;display:inline-flex}.viewport-value input[type=number]{width:46px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:0;font-size:.85rem}.viewport-value input[type=number]:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:4px}button.viewport-hand{border:1px solid var(--border);background:var(--card);width:34px;height:34px;color:var(--muted);border-radius:8px;place-items:center;display:inline-grid}button.viewport-hand:hover:not(:disabled){color:var(--ink);border-color:#c3bdac}button.viewport-hand.active{background:var(--teal);border-color:var(--teal);color:#fff}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap-viewport{padding:34px 0 8px 44px;overflow:hidden}.wrap-viewport>.wrap-box{transform:translate(var(--wrap-pan-x,0), var(--wrap-pan-y,0)) scale(var(--wrap-zoom,1));transform-origin:50%}.wrap-item.wrap-twin{opacity:.42;pointer-events:none}.both-sides{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:8px 12px 0;display:flex}.both-sides label{cursor:pointer;align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.both-sides input[type=checkbox]{accent-color:var(--teal);width:16px;height:16px}.both-sides-note{max-width:46ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:.78rem;line-height:1.35}button.picker-back{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:8px;align-self:flex-start;padding:6px 10px;font-size:.82rem;font-weight:600}button.picker-back:hover:not(:disabled){background:var(--bg-strong);color:var(--ink)}.color-choice{flex-direction:column;gap:6px;display:flex}.color-choice-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:700}.color-swatches{flex-wrap:wrap;gap:7px;display:flex}button.color-swatches .swatch,.color-swatches button.swatch{width:26px;height:26px;box-shadow:none;border:1px solid #1f211d2e;border-radius:7px;padding:0}.color-swatches button.swatch.selected{outline:2px solid var(--teal);outline-offset:2px}.color-swatches .swatch-custom{width:26px;height:26px;color:var(--muted);cursor:pointer;background:conic-gradient(#d9532f,#f2c14e,#2f5d3a,#1d6f78,#2b4a8b,#7b3f6d,#d9532f);border:1px dashed #b7bcc2;border-radius:7px;place-items:center;display:inline-grid;position:relative}.color-swatches .swatch-custom svg{color:#fff;filter:drop-shadow(0 0 1.5px #0000008c)}.color-swatches .swatch-custom:hover{border-color:var(--teal)}.color-swatches .swatch-custom input[type=color]{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.color-warning{color:#9d3719;text-wrap:pretty;margin:0;font-size:.75rem;line-height:1.35}.wrap-viewport{position:relative}.wrap-limit{z-index:3;pointer-events:none;border-color:var(--teal);position:absolute}.wrap-limit.left,.wrap-limit.right{border-left:2px dashed var(--teal);width:0;top:34px;bottom:8px}.wrap-limit.left{left:44px}.wrap-limit.right{right:0}.wrap-limit.top,.wrap-limit.bottom{border-top:2px dashed var(--teal);height:0;left:44px;right:0}.wrap-limit.top{top:34px}.wrap-limit.bottom{bottom:8px}.wrap-continues{z-index:2;pointer-events:none;position:absolute}.wrap-continues.left,.wrap-continues.right{width:34px;top:34px;bottom:8px}.wrap-continues.left{background:linear-gradient(90deg,#1f211d12,#1f211d00);left:44px}.wrap-continues.right{background:linear-gradient(270deg,#1f211d12,#1f211d00);right:0}.wrap-continues.top,.wrap-continues.bottom{height:26px;left:44px;right:0}.wrap-continues.top{background:linear-gradient(#1f211d12,#1f211d00);top:34px}.wrap-continues.bottom{background:linear-gradient(#1f211d00,#1f211d12);bottom:8px}.color-panel{border:1px solid var(--border);background:var(--bg-strong);border-radius:10px;flex-direction:column;gap:8px;margin-top:2px;padding:10px;display:flex}.color-panel-title{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:700}.color-swatches.wide{gap:6px}button.swatch-custom{color:#fff;background:conic-gradient(#d9532f,#f2c14e,#2f5d3a,#1d6f78,#2b4a8b,#7b3f6d,#d9532f);border:1px dashed #b7bcc2;border-radius:7px;place-items:center;width:26px;height:26px;padding:0;display:inline-grid}button.swatch-custom svg{filter:drop-shadow(0 0 1.5px #0000008c)}button.swatch-custom.open{outline:2px solid var(--teal);outline-offset:2px}.color-free{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:.8rem;display:inline-flex}.color-free input[type=color]{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;width:30px;height:26px;padding:0}.recap{z-index:60;background:#1f211d8c;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.recap-sheet{background:var(--card);border-radius:16px;width:min(980px,100%);max-height:92vh;overflow:auto;box-shadow:0 24px 60px #14161a47}.recap-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.recap-head h2{margin:0;font-size:1.05rem}button.recap-close{width:34px;height:34px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0;font-size:1rem}button.recap-close:hover:not(:disabled){background:var(--bg-strong);color:var(--ink)}.recap-body{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:24px;padding:22px;display:grid}@media (max-width:780px){.recap-body{grid-template-columns:minmax(0,1fr)}}.recap-shots{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.recap-shots img{border:1px solid var(--border);background:#fff;border-radius:10px;width:100%;animation:.5s recap-reveal}@keyframes recap-reveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.recap-shots img{animation:none}.recap-develop-art{transition:none}}.recap-loading,.recap-fallback{border:1px dashed var(--border);text-align:center;color:var(--muted);text-wrap:pretty;border-radius:10px;margin:0;padding:28px 16px;font-size:.85rem}.recap-rendering{border:1px solid var(--border);background:#f5f5f4;border-radius:10px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.recap-rendering-base{object-fit:contain;opacity:.32;width:100%;height:100%;position:absolute;inset:0}.recap-develop-base{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.recap-develop-art{object-fit:contain;transition:filter .9s linear;position:absolute}.recap-rendering-sweep{background:linear-gradient(100deg,#0000 30%,#ffffffb8 50%,#0000 70%);animation:1.5s ease-in-out infinite recap-sweep;position:absolute;inset:0;transform:translate(-100%)}@keyframes recap-sweep{to{transform:translate(100%)}}.recap-rendering-note{text-align:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffdb;border-radius:12px;flex-direction:column;align-items:center;gap:8px;max-width:32ch;margin:16px;padding:18px 20px;display:flex;position:relative}.recap-rendering-note strong{font-size:.92rem}.recap-rendering-note span{color:var(--muted);text-wrap:pretty;font-size:.8rem;line-height:1.45}.recap-rendering-spin{border:2.5px solid #0000001f;border-top-color:#181816;border-radius:50%;width:26px;height:26px;animation:.8s linear infinite recap-spin}@keyframes recap-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.recap-rendering-sweep{display:none}.recap-rendering-spin{animation:none}}.transfer-notice{border:1px solid var(--border);color:var(--muted);background:#f7f7f5;border-radius:8px;align-items:center;gap:10px;margin-top:10px;padding:8px 12px;font-size:.82rem;display:flex}.transfer-notice span{flex:1;min-width:0}.transfer-notice button{font:inherit;color:#181816;cursor:pointer;background:0 0;border:none;padding:2px 4px;font-weight:600}.transfer-notice button:hover{text-decoration:underline}.transfer-notice-close{font-size:1.1rem;line-height:1;color:var(--muted)!important}.quality-live{border:1px solid var(--border);border-radius:8px;margin-top:10px;padding:9px 12px;font-size:.82rem}.quality-live.has-error{background:#fdf3f1;border-color:#e4b7b1}.quality-live.has-warning{background:#fbf7ec;border-color:#e6d8b0}.quality-live strong{margin-bottom:4px;font-size:.85rem;display:block}.quality-live ul{flex-direction:column;gap:2px;margin:0;padding-left:16px;display:flex}.quality-live .q-error{color:#a3372c}.quality-live .q-warn{color:#8a6d1f}.recap-lifestyle{margin-top:12px}.recap-lifestyle-cta{border:1px solid var(--border);width:100%;color:inherit;font:inherit;cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:12px 16px;font-weight:600;transition:border-color .15s,transform .15s;display:flex}.recap-lifestyle-cta:hover{border-color:#181816;transform:translateY(-1px)}.recap-lifestyle-cta small{color:var(--muted);font-size:.75rem;font-weight:400}.recap-lifestyle-shot{border:1px solid var(--border);background:#fff;border-radius:10px;width:100%}@media (prefers-reduced-motion:reduce){.recap-lifestyle-cta:hover{transform:none}}.recap-details h3{margin:0 0 6px;font-size:1rem}.recap-description{color:var(--muted);text-wrap:pretty;margin:0 0 14px;font-size:.86rem;line-height:1.45}.recap-specs{grid-template-columns:auto 1fr;gap:4px 14px;margin:0 0 16px;font-size:.85rem;display:grid}.recap-specs dt{color:var(--muted)}.recap-specs dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.recap-quantity{justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:.9rem;font-weight:600;display:flex}.recap-stepper{border:1px solid var(--border);border-radius:9px;align-items:center;display:inline-flex;overflow:hidden}.recap-stepper button{background:var(--card);width:38px;height:38px;color:var(--ink);border:0;border-radius:0;padding:0;font-size:1.05rem}.recap-stepper button:hover:not(:disabled){background:var(--bg-strong)}.recap-stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:46px;font-weight:700}.recap-price{color:var(--muted);margin:4px 0 14px;font-size:.86rem}.recap-notice{border-left:3px solid var(--accent);color:#7c3a1d;text-wrap:pretty;background:#fdf3ef;border-radius:0 8px 8px 0;margin:0 0 16px;padding:11px 13px;font-size:.83rem;line-height:1.45}.recap-error{color:#9d3719;margin:0 0 12px;font-size:.83rem}button.recap-add{width:100%;padding:13px 16px;font-size:.95rem}button.recap-back{border:1px solid var(--border);background:var(--card);width:100%;color:var(--muted);margin-top:8px;padding:10px 16px;font-weight:600}button.recap-back:hover:not(:disabled){background:var(--bg-strong);color:var(--ink)}.recap-config{color:var(--muted);text-wrap:pretty;margin:10px 0 0;font-size:.78rem;line-height:1.4}.confirm{z-index:70;background:#1f211d80;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-sheet{background:var(--card);border-radius:14px;width:min(400px,100%);padding:20px 22px;box-shadow:0 20px 50px #14161a42}.confirm-sheet h2{text-wrap:balance;margin:0 0 6px;font-size:1rem}.confirm-sheet p{color:var(--muted);margin:0 0 16px;font-size:.85rem}.confirm-actions{gap:10px;display:flex}.confirm-actions button{flex:1 1 0;padding:11px 14px}button.confirm-cancel{border:1px solid var(--border);background:var(--card);color:var(--ink)}button.confirm-cancel:hover:not(:disabled){background:var(--bg-strong)}button.confirm-remove{background:#9d3719}button.confirm-remove:hover:not(:disabled){background:#7c2c14}.vitrine{background:#fff;max-width:1060px;margin:0 auto;padding:26px 24px 96px}.accueil{padding-bottom:110px}body:has(.accueil-peps){background:#faf7f0}.vitrine.accueil-peps{--peps-creme:#faf7f0;--peps-ink:#13251f;--peps-body:#4e625c;--peps-muted:#5f716b;--peps-soleil:#ffb527;--peps-soleil-hover:#f2a416;--peps-soleil-ink:#3a2405;--peps-corail:#ff5a36;--peps-corail-text:#a03415;--peps-menthe:#58dcb2;--peps-menthe-meta:#0e6e52;--peps-mint:#e6faf3;--peps-sun:#fff3d6;--peps-coral:#ffe9e2;background:var(--peps-creme);max-width:1120px;color:var(--peps-ink)}.peps-marker{white-space:nowrap;isolation:isolate;padding:0 6px;display:inline-block;position:relative}.peps-marker:before{content:"";z-index:-1;background:#ffb52780;border-radius:4px;position:absolute;inset:.42em 0 .06em;transform:rotate(-1.2deg)}.peps-souligne{display:inline-block;position:relative}.peps-souligne svg{width:100%;height:.5em;color:var(--peps-corail);position:absolute;bottom:-.28em;left:0;overflow:visible}.peps-souligne path{fill:none;stroke:currentColor;stroke-width:5px;stroke-linecap:round;stroke-dashoffset:0}.peps-sparkle{pointer-events:none;position:absolute}.peps-sparkle-1{width:22px;height:22px;color:var(--peps-soleil);top:6%;left:6%}.peps-sparkle-2{color:#4faacd;width:16px;height:16px;top:0;right:10%}.peps-sparkle-3{width:13px;height:13px;color:var(--peps-corail);bottom:2%;left:17%}@media (prefers-reduced-motion:no-preference){.peps-souligne path{stroke-dasharray:330;animation:1.1s ease-out .5s both peps-tracer}.peps-sparkle{animation:2.6s ease-in-out infinite peps-scintille}.peps-sparkle-2{animation-delay:.9s}.peps-sparkle-3{animation-delay:1.6s}}@keyframes peps-tracer{0%{stroke-dashoffset:330px}to{stroke-dashoffset:0}}@keyframes peps-scintille{0%,to{opacity:.5;transform:scale(.75)}50%{opacity:1;transform:scale(1.1)}}.peps-hero{text-align:center;margin:40px 0 30px;padding:0 8px;position:relative}.peps-titre{letter-spacing:-.025em;text-wrap:balance;max-width:20ch;margin:0 auto 14px;font-size:clamp(2.1rem,6vw,3.4rem);font-weight:800;line-height:1.08}.peps-vous{letter-spacing:.02em;color:var(--peps-muted);opacity:.45;vertical-align:.85em;margin:0 -3px;font-size:.28em;font-weight:500}.peps-sous{color:var(--peps-body);margin:0 auto;font-size:clamp(1.05rem,2.4vw,1.25rem);font-weight:600}.peps-baseline{color:var(--peps-corail-text);letter-spacing:.06em;text-transform:uppercase;margin:10px auto 0;font-size:clamp(.95rem,2vw,1.05rem);font-weight:800}.simulateur-cta-porte{display:inline-block;position:relative}.peps-griffon{width:64px;color:var(--peps-corail,#ff5a36);pointer-events:none;position:absolute;top:-26px;left:calc(100% + 8px);transform:scaleX(-1)rotate(14deg)}.peps-griffon-mot{color:var(--peps-corail-text,#a03415);pointer-events:none;white-space:nowrap;font-size:15px;font-weight:700;position:absolute;top:-46px;left:calc(100% + 44px);transform:rotate(-6deg)}@media (max-width:640px){.peps-griffon,.peps-griffon-mot{display:none}}.peps-scene{margin:6px 0 38px}.accueil-peps .simulateur-cta.btn-primary{background:var(--peps-soleil);color:var(--peps-soleil-ink)}.accueil-peps .simulateur-cta.btn-primary:hover{background:var(--peps-soleil-hover)}.peps-section-titre{letter-spacing:-.02em;text-align:center;text-wrap:balance;margin:0 0 8px;font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800}.peps-section-sous{text-align:center;max-width:52ch;color:var(--peps-body);margin:0 auto 24px}.peps-bloc-soleil{background:var(--peps-sun);border-radius:22px;margin:0 0 26px;padding:32px 24px 30px}.peps-pilules{flex-wrap:wrap;justify-content:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.peps-pilule{border:2px solid var(--peps-ink);color:var(--peps-ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-size:14.5px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex}.peps-pilule:hover{transform:translateY(-3px)rotate(-1deg);box-shadow:4px 5px #13251f29}.peps-pilule-compte{background:var(--peps-ink);color:var(--peps-creme);border-radius:999px;padding:1px 8px;font-size:11.5px}.peps-pas-section{margin:46px 0 30px}.peps-pas-grille{grid-template-columns:repeat(3,1fr);gap:26px;margin:30px 0 0;padding:0;list-style:none;display:grid}.peps-pas{text-align:center;padding:0 8px}.peps-pas-rond{border:2.5px solid var(--peps-ink);background:#fff;border-radius:50%;place-items:center;width:54px;height:54px;margin:0 auto 12px;font-size:21px;font-weight:800;display:grid;transform:rotate(-3deg)}.peps-pas:nth-child(2) .peps-pas-rond{background:var(--peps-mint);transform:rotate(2deg)}.peps-pas:nth-child(3) .peps-pas-rond{background:var(--peps-coral);transform:rotate(-2deg)}.peps-pas b{margin-bottom:4px;font-size:16.5px;display:block}.peps-pas span{color:var(--peps-body);font-size:14.5px}@media (max-width:700px){.peps-pas-grille{grid-template-columns:1fr;gap:20px}}.peps-passerelle{background:var(--peps-mint);border-radius:22px;flex-wrap:wrap;align-items:center;gap:20px;margin:30px 0 26px;padding:24px 26px;display:flex}.peps-passerelle>div{flex:320px}.peps-passerelle b{font-size:17px}.peps-passerelle p{color:var(--peps-body);margin:4px 0 0;font-size:14.5px}.peps-passerelle p a{color:var(--peps-menthe-meta);font-weight:700}.peps-pilule-lien{background:#fff}.peps-final{text-align:center;background:var(--peps-ink);color:var(--peps-creme);border-radius:0;width:100vw;margin:30px 0 0 calc(50% - 50vw);padding:48px max(24px,50vw - 536px) 52px}.peps-final-logo{width:150px;height:auto;margin:0 auto 18px;display:block}.peps-final h2{letter-spacing:-.02em;text-wrap:balance;margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.3rem);font-weight:800}.peps-final .peps-marker:before{background:#ff5a368c}.peps-final p{color:#a8bcb4;margin:0 0 24px}.peps-btn-soleil{background:var(--peps-soleil);color:var(--peps-soleil-ink);border-radius:12px;align-items:center;gap:10px;padding:15px 30px;font-size:17px;font-weight:800;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex;box-shadow:0 10px 22px #f2a41547}.peps-btn-soleil:hover{background:var(--peps-soleil-hover);transform:translateY(-2px)}.peps-btn-soleil span{transition:transform .2s}.peps-btn-soleil:hover span{transform:translate(4px)}.accueil-peps .shop-nav{background:#faf7f0f0;border-bottom-color:#efe8d8}.accueil-peps .simulateur-mockup{background:0 0}.accueil-peps .simulateur-mot-juste{width:100vw;margin-top:20px;margin-left:calc(50% - 50vw)}.accueil-peps .simulateur-vague{width:100%;height:56px;margin:0 0 -1px;display:block}.accueil-peps .simulateur-themes{background:var(--peps-sun);border-radius:0;padding:26px max(24px,50vw - 536px) 34px}.accueil-peps .simulateur-themes-tete{margin-bottom:18px}.simulateur-mot-juste{display:none}.accueil-peps .simulateur-mot-juste{display:block}.accueil-peps .simulateur-theme{border-bottom-color:#13251f1f}.accueil-peps .simulateur-theme:last-child{border-bottom:0}.btn{letter-spacing:-.01em;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:12px 22px;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .12s,background .14s,border-color .14s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark)}.btn-ghost{color:var(--ink);background:#fff;border-color:#e0dcd2}.btn-ghost:hover{border-color:var(--ink)}.hero{margin:52px 0 44px}.hero-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 14px;font-size:.72rem;font-weight:700}.hero h1{letter-spacing:-.03em;text-wrap:balance;margin:0 0 16px;font-size:clamp(2.2rem,6vw,3.4rem);line-height:1.05}.hero-sub{color:#55585c;text-wrap:pretty;max-width:54ch;margin:0 0 26px;font-size:1.02rem;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.piliers{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.pilier{background:var(--bg-strong);border-radius:12px;flex-direction:column;gap:5px;padding:20px;display:flex}.pilier-marque{color:var(--accent);margin-bottom:4px;font-size:1.2rem;line-height:1}.pilier:nth-child(2) .pilier-marque{color:var(--teal)}.pilier:nth-child(3) .pilier-marque{color:#c0901a}.pilier b{letter-spacing:-.01em;font-size:.98rem}.pilier span{color:#55585c;font-size:.86rem;line-height:1.45}.bloc{margin:54px 0 0}.bloc-tete{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:20px;display:flex}.section-titre{letter-spacing:-.02em;text-wrap:balance;margin:0 0 20px;font-size:clamp(1.3rem,3vw,1.7rem)}.bloc-tete .section-titre{margin-bottom:0}.lien-plus{color:var(--accent);white-space:nowrap;font-size:.85rem;font-weight:600;text-decoration:none}.lien-plus:hover{color:var(--accent-dark)}.bloc-tete-detail{color:var(--muted);white-space:nowrap;font-size:.85rem}.etapes{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.etape{background:#fff;border:1px solid #ede9e1;border-radius:12px;flex-direction:column;gap:6px;padding:22px 20px;display:flex}.etape-num{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;margin-bottom:6px;font-size:.95rem;font-weight:800;display:inline-flex}.etape b{letter-spacing:-.01em;font-size:.98rem}.etape span{color:#55585c;font-size:.88rem;line-height:1.5}.supports-liste{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 18px;padding:0;list-style:none;display:grid}.supports-liste li{background:#faf9f7;border-radius:10px;flex-direction:column;gap:3px;padding:16px;display:flex}.supports-liste b{font-size:.92rem}.supports-liste span{color:#85888d;font-size:.82rem}.fabrication-note{color:#55585c;max-width:62ch;margin:0;font-size:.9rem;line-height:1.55}.bandeau-cta{background:var(--ink);color:#fff;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:64px 0 0;padding:30px 32px;display:flex}.bandeau-cta b{letter-spacing:-.02em;font-size:1.15rem;display:block}.bandeau-cta span{color:#c7c8c2;font-size:.9rem}.bandeau-cta .btn-primary{background:var(--accent)}.bandeau-cta .btn-primary:hover{background:var(--accent-dark)}.site-footer{border-top:1px solid #ede9e1;margin-top:72px;padding-top:28px}.site-footer-haut{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px 24px;display:flex}.site-footer-marque{flex-direction:column;gap:2px;display:flex}.site-footer-marque b{letter-spacing:-.02em;font-size:.95rem;font-weight:800}.site-footer-marque span{color:#85888d;font-size:.82rem}.site-footer-liens{flex-wrap:wrap;gap:16px;font-size:.82rem;display:flex}.site-footer-liens a{color:#85888d;text-decoration:none}.site-footer-liens a:hover{color:var(--ink)}.site-footer-legal{color:#a2a49d;margin:22px 0 0;font-size:.74rem}.page-contenu{max-width:68ch;margin:30px 0 0}.page-contenu h1{letter-spacing:-.025em;text-wrap:balance;margin:0 0 22px;font-size:clamp(1.6rem,4vw,2.2rem)}.page-contenu p{color:#3a3d38;margin:0 0 16px;font-size:.96rem;line-height:1.65}.simulateur{flex-direction:column;gap:18px;display:flex}.simulateur-trio{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:18px;display:flex}.simulateur-objet-cadre{cursor:pointer;flex:220px;min-width:200px;max-width:320px;position:relative}.simulateur-objet-cadre.actif{cursor:default}.simulateur-objet{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.simulateur .simulateur-nav{border:1px solid var(--border);width:34px;height:34px;color:var(--ink);z-index:2;background:#ffffffeb;border-radius:50%;place-items:center;padding:0 0 2px;font-size:20px;line-height:1;display:grid;position:absolute;top:42%;transform:translateY(-50%);box-shadow:0 2px 8px #1f211d1f}.simulateur .simulateur-nav.prev{left:-6px}.simulateur .simulateur-nav.next{right:-6px}.simulateur .simulateur-nav:hover:not(:disabled){border-color:var(--ink);background:#fff}.simulateur .simulateur-nav:disabled{opacity:.35;cursor:default}.simulateur-objet .simulateur-mockup{height:min(40vh,300px)}.simulateur-objet-nom{color:var(--muted);font-size:13px;font-weight:600}.simulateur-plan-vide{aspect-ratio:1;place-items:center;width:100%;display:grid}.simulateur-actions{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}@media (max-width:640px){.simulateur-objet-cadre{flex-basis:100%;max-width:360px}.simulateur-objet .simulateur-mockup{height:min(46vh,340px)}}.simulateur-supports{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.simulateur-supports>button{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:99px;padding:8px 18px;font-size:14px;font-weight:600}.simulateur-supports>button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.simulateur-couleurs-support{border-left:1px solid var(--border);gap:6px;margin-left:6px;padding-left:12px;display:flex}.simulateur .pastille{border:1px solid #0000002e;border-radius:50%;width:26px;height:26px;padding:0}.simulateur .pastille.selected{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--ink)}.simulateur-scene{flex-direction:column;align-items:center;gap:14px;display:flex}.simulateur-mockup{background:#fff;justify-content:center;align-items:center;width:100%;height:min(58vh,440px);display:flex;position:relative}.simulateur-plan{height:100%;position:relative}.simulateur-silhouette,.simulateur-silhouette svg,.simulateur-photo{object-fit:contain;width:auto;max-width:100%;height:100%;display:block}.simulateur-mockup-3d>*{width:100%;height:100%}.simulateur-cadre{aspect-ratio:297/420;border:1.5px solid var(--teal,#1d6f78);background:#fff;border-radius:2px;height:100%;position:relative}.simulateur-cadre .simulateur-zone{width:auto;height:auto;inset:8%;transform:none}.simulateur-zone{place-items:center;width:46%;height:34%;padding:4px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-52%)}.simulateur-fondu{opacity:1;place-items:center;width:100%;height:100%;transition:opacity .32s,transform .32s;display:grid;transform:translateY(0)}.simulateur-fondu.masque{opacity:0;transform:translateY(6px)}@media (prefers-reduced-motion:reduce){.simulateur-fondu{transition:none}}.simulateur-lettrage{width:100%;height:100%;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.simulateur-texte{text-align:center;text-wrap:balance;font-size:clamp(.95rem,2.4vw,1.4rem);font-weight:800;line-height:1.1;transition:color .4s}.simulateur-vide{color:var(--muted);font-size:.85rem}.simulateur-couleurs{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.simulateur-couleurs-titre{color:var(--muted);font-size:12.5px}.simulateur-historique{align-items:center;gap:6px;display:flex}.simulateur .simulateur-reprendre{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:99px;padding:4px 12px;font-size:12.5px;font-weight:600}.simulateur .simulateur-reprendre:hover:not(:disabled){border-color:var(--ink);background:#fff}.simulateur-cta{align-self:center}.simulateur-pilules{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.simulateur .simulateur-pilule{border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-size:14.5px;font-weight:700;transition:transform .18s,box-shadow .18s;display:inline-flex}.simulateur .simulateur-pilule:hover:not(:disabled){color:var(--ink);border-color:var(--ink);background:#fff;transform:translateY(-3px)rotate(-1deg);box-shadow:4px 5px #13251f29}.simulateur .simulateur-pilule.ouverte,.simulateur .simulateur-pilule.ouverte:hover:not(:disabled){color:var(--ink);background:#58dcb2}.simulateur-pilule-compte{background:var(--ink);color:#faf7f0;border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:700}.simulateur-phrases{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.simulateur .simulateur-phrases>button{text-align:left;background:#fff;border:0;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-size:14.5px;font-weight:700;transition:transform .18s;display:inline-flex;box-shadow:0 4px 14px #13251f14}.simulateur .simulateur-phrases>button:hover:not(:disabled){background:#fff;transform:rotate(1deg)scale(1.03)}.simulateur .simulateur-phrases>button.teinte-0{color:#a03415}.simulateur .simulateur-phrases>button.teinte-1{color:#0e6e52}.simulateur .simulateur-phrases>button.teinte-2{color:#8a5b00}.simulateur .simulateur-phrases>button.selected,.simulateur .simulateur-phrases>button.selected:hover:not(:disabled){background:var(--ink);color:#fff}.simulateur .simulateur-supports>button:hover:not(:disabled){border-color:var(--ink);color:var(--ink);background:#fff}.simulateur .simulateur-supports>button.selected:hover:not(:disabled){background:var(--ink);color:#fff}.simulateur-puce{background:var(--accent);border-radius:50%;width:6px;height:6px}.simulateur-phrases>button.selected .simulateur-puce{background:#fff}@media (prefers-reduced-motion:reduce){.simulateur-lettrage,.simulateur-texte{transition:none}}.createur-entete{align-items:center;gap:16px;margin-bottom:18px;display:flex}.createur-entete h1{margin:0}.createur-avatar{object-fit:cover;border:1px solid #ede9e1;border-radius:50%;width:72px;height:72px}.createur-role{color:#6f7269;margin:4px 0 0;font-size:.9rem}.createur-oeuvres-titre{letter-spacing:-.01em;margin:26px 0 14px;font-size:1.15rem}.createur-oeuvres{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:20px;display:grid}.createur-oeuvre{text-align:center;background:#fff;border:1px solid #ede9e1;border-radius:10px;margin:0;padding:12px}.createur-oeuvre img{object-fit:contain;width:100%;height:110px}.createur-oeuvre figcaption{color:#3a3d38;margin-top:8px;font-size:12.5px;font-weight:600}.faq-liste{border-top:1px solid #ede9e1;margin:6px 0 0}.faq-item{border-bottom:1px solid #ede9e1}.faq-item summary{letter-spacing:-.01em;cursor:pointer;justify-content:space-between;gap:16px;padding:18px 4px;font-size:.98rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--accent);font-weight:700;transition:transform .15s}.faq-item[open] summary:after{content:"−"}.faq-reponse{max-width:66ch;padding:0 4px 18px}.faq-reponse p{color:#55585c;margin:0 0 12px;font-size:.92rem;line-height:1.6}.faq-vide{color:#85888d;margin:20px 0 0}.erreur-404{text-align:center;margin:80px 0}.erreur-404 h1{letter-spacing:-.025em;margin:0 0 10px;font-size:clamp(1.6rem,4vw,2.2rem)}.erreur-404 p{color:#85888d;margin:0 0 26px}.shop-nav{z-index:30;-webkit-backdrop-filter:saturate(160%)blur(6px);backdrop-filter:saturate(160%)blur(6px);border-bottom:1px solid var(--trait-clair,#f1efeb);background:#fffffff0;justify-content:space-between;align-items:center;gap:16px;padding:6px 0 14px;display:flex;position:sticky;top:0}.shop-logo{align-items:center;text-decoration:none;display:inline-flex}.logo-cycle{width:70px;height:48px;transition:background-color .6s;display:block;-webkit-mask-image:url(/logo/logo-d1714dff.svg);mask-image:url(/logo/logo-d1714dff.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.shop-liens{gap:18px;font-size:.8rem;display:flex}.shop-liens a{color:#85888d;text-decoration:none}.shop-liens a:hover{color:var(--ink)}.fil{color:#85888d;margin:16px 0 0;font-size:.76rem}.fil a{color:#85888d;text-decoration:none}.fil a:hover{color:var(--ink)}.fil b{color:#55585c;font-weight:600}.vitrine-head{margin:30px 0 26px}.vitrine-head h1{letter-spacing:-.025em;text-wrap:balance;margin:0 0 6px;font-size:clamp(1.5rem,4vw,2.1rem)}.vitrine-head p{color:#85888d;text-wrap:pretty;max-width:58ch;margin:0;font-size:.9rem}.theme-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;display:flex}.theme-style{color:#85888d;align-items:center;gap:9px;font-size:.78rem;display:flex}.theme-style select{color:var(--ink);background:#fff;border:1px solid #e6e3dd;border-radius:8px;padding:7px 12px;font-size:.82rem;font-weight:600}.cartes{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.carte{color:var(--ink);background:#faf9f7;border:1px solid #0000;border-radius:10px;flex-direction:column;gap:2px;padding:15px 16px;text-decoration:none;transition:border-color .14s,background .14s;display:flex}.carte:hover,.carte:focus-visible{background:#fff;border-color:#e6e3dd}.carte b{text-wrap:balance;font-size:.92rem;font-weight:700}.carte span{color:#85888d;font-variant-numeric:tabular-nums;font-size:.76rem}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.theme-tile{aspect-ratio:4/3;text-align:center;border:1px solid #0000;border-radius:11px;place-items:center;padding:20px 16px 32px;text-decoration:none;transition:border-color .16s,transform .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden;container-type:inline-size}.theme-tile:hover,.theme-tile:focus-visible{border-color:#17181a29;transform:translateY(-2px);box-shadow:0 8px 22px #14161a1a}.theme-tile-text{text-wrap:balance;-webkit-hyphens:auto;hyphens:auto;font-weight:700;line-height:1.16}.theme-tile-cta{color:currentColor;letter-spacing:.09em;text-transform:uppercase;opacity:.4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.66rem;font-weight:700;position:absolute;bottom:11px;left:0;right:0}.apercu-message{text-align:center;border:1px solid #e6e3dd;border-radius:13px;place-items:center;min-height:190px;margin-top:22px;padding:34px 26px;display:grid;container-type:inline-size}.apercu-message span{text-wrap:balance;font-size:clamp(1.4rem,6cqw,2.5rem);font-weight:700;line-height:1.14}.cartes.supports{grid-template-columns:repeat(auto-fit,minmax(158px,1fr))}.carte.support{text-align:center;align-items:center;gap:6px;padding:14px}.carte.support.conseille{border-color:var(--accent);background:#fff}.support-vue{color:#85888d;letter-spacing:.09em;text-transform:uppercase;background:#faf9f7;border-radius:8px;place-items:center;width:100%;height:74px;margin-bottom:6px;font-size:.66rem;display:grid}.carte.support .badge{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);background:#fcf0ec;border-radius:20px;padding:2px 8px;font-size:.62rem;font-weight:700}.explication{border-top:1px solid #f1efeb;max-width:66ch;margin:52px 0 0;padding-top:26px}.explication h2{letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin:26px 0 5px;font-size:.7rem;font-weight:700}.explication section:first-child h2{margin-top:0}.explication p{color:#55585c;text-wrap:pretty;margin:0;font-size:.98rem;line-height:1.62}@media (prefers-reduced-motion:reduce){.carte,.theme-tile{transition:none}.theme-tile:hover{transform:none}}.recap-qualite{flex-direction:column;gap:7px;margin:0 0 14px;padding:0;list-style:none;display:flex}.recap-qualite li{border-left:3px solid var(--yellow);color:#7a5a12;text-wrap:pretty;background:#fdf8ec;border-radius:0 7px 7px 0;padding:9px 12px;font-size:.8rem;line-height:1.4}.recap-qualite li.grave{color:#8a2f16;background:#fdefea;border-left-color:#9d3719;font-weight:600}
