.calc-client-layout--folder{grid-template-columns:minmax(280px,360px) 1fr;align-items:start;gap:20px;display:grid}@media (max-width:991.98px){.calc-client-layout--folder{grid-template-columns:1fr}.fd-preview{order:-1}}.fd-preview{--fd-aspect:340 / 240;--fd-paper:#f4f1ea;--fd-paper-grain:#00000009;--fd-tilt-y:-10deg;--fd-tilt-x:5deg}.fd-preview[data-paper=coated]{--fd-paper:#f8fafc;--fd-paper-grain:#0f172a05}.fd-preview[data-paper=offset]{--fd-paper:#f7f4ef;--fd-paper-grain:#0000000a}.fd-preview[data-paper=design]{--fd-paper:#efe6d8;--fd-paper-grain:#7850280f}.fd-preview-card-wrap{border:1px solid var(--border,#e5e7eb);background:radial-gradient(ellipse 80% 55% at 50% 0%, color-mix(in srgb, var(--surface-elevated,#fff) 90%, transparent), transparent 60%), linear-gradient(165deg, color-mix(in srgb, var(--accent) 8%, var(--surface)) 0%, var(--surface) 45%, color-mix(in srgb, var(--muted) 12%, var(--surface)) 100%);border-radius:16px;padding:14px 14px 16px;box-shadow:0 1px 2px #0f172a0a}.fd-preview-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b7280);margin:0 0 10px;font-size:.8rem;font-weight:600}.fd-preview-stage{perspective:1200px;justify-content:center;align-items:center;min-height:260px;padding:16px 10px 24px;display:flex;position:relative}.fd-preview-stage:after{content:"";filter:blur(2px);pointer-events:none;background:radial-gradient(#0f172a47,#0000 70%);width:62%;height:14px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.fd-preview-folder{width:min(100%,400px);transform:rotateY(var(--fd-tilt-y)) rotateX(var(--fd-tilt-x));transform-style:preserve-3d;filter:drop-shadow(0 16px 24px #0f172a38);outline:none;transition:transform .45s,width .45s;position:relative}.fd-preview[data-foldable="1"][data-view=product][data-has-stamp="1"] .fd-preview-folder{cursor:pointer}.fd-preview[data-foldable="1"][data-view=product][data-has-stamp="1"] .fd-preview-folder:focus-visible{border-radius:14px;box-shadow:0 0 0 3px #635bff59}.fd-preview-flat{z-index:1;transform-origin:50%;transition:opacity .55s,transform .7s cubic-bezier(.4,.05,.2,1),filter .55s;position:relative}.fd-preview-closed{z-index:2;transform-origin:50%;width:min(58%,200px);transform-style:preserve-3d;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .45s,visibility 0s linear .45s,transform .65s cubic-bezier(.4,.05,.2,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.6)}.fd-preview[data-folded="1"] .fd-preview-flat{opacity:0;filter:blur(1px);pointer-events:none;transform:rotateY(-78deg)scale(.78)}.fd-preview[data-folded="1"] .fd-preview-closed{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .45s,visibility linear,transform .65s cubic-bezier(.4,.05,.2,1);transform:translate(-50%,-48%)rotateY(-18deg)rotateX(8deg)scale(1)}.fd-preview[data-folded="1"] .fd-preview-folder{filter:drop-shadow(0 20px 28px #0f172a4d);width:min(100%,260px);transform:none}.fd-closed-book{aspect-ratio:var(--fd-folded-aspect,220 / 305);transform-style:preserve-3d;position:relative}.fd-closed-back{background:linear-gradient(90deg, #0f172a0f, transparent 18%), var(--fd-paper);z-index:0;border:1px solid #64748b59;border-radius:2px 5px 5px 2px;position:absolute;inset:2% -7% 1% 6%;overflow:hidden;box-shadow:2px 3px 8px #0f172a1f}.fd-closed-pocket-inner{background:linear-gradient(180deg, #0f172a0d, #0f172a1f), color-mix(in srgb, var(--fd-paper) 88%, #64748b);clip-path:polygon(0 16%,7% 0,93% 0,100% 16%,100% 100%,0 100%);opacity:.85;height:36%;position:absolute;bottom:0;left:10%;right:4%;box-shadow:inset 0 6px 12px #0f172a1f}.fd-closed-pages{z-index:1;background:repeating-linear-gradient(90deg,#f8fafc 0 1px,#e2e8f0 1px 2px);border-radius:0 2px 2px 0;width:5px;position:absolute;top:3%;bottom:3%;right:-3px;box-shadow:1px 0 2px #0f172a1f}.fd-closed-front{z-index:3;background:var(--fd-paper);border:1px solid #64748b6b;border-radius:2px 4px 4px 2px;position:absolute;inset:0;overflow:hidden;box-shadow:-1px 0 #ffffff59,0 1px 2px #0f172a14}.fd-closed-spine{z-index:4;pointer-events:none;background:linear-gradient(90deg,#0f172a47 0%,#0f172a1a 35%,#ffffff59 55%,#0f172a14 100%);border-radius:2px 0 0 2px;width:8px;position:absolute;top:1%;bottom:1%;left:-3px;box-shadow:inset 1px 0 #ffffff40}.fd-closed-front .fd-preview-print-hero{box-shadow:none;border-radius:0}.fd-closed-front .fd-preview-print-cmyk{bottom:4%}.fd-preview[data-folded="1"] .fd-preview-badge{opacity:0}.fd-preview[data-foldable="0"] .fd-preview-closed,.fd-preview[data-view=stamp] .fd-preview-closed{display:none}.fd-preview-body{aspect-ratio:var(--fd-aspect);box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:12px;position:relative;overflow:hidden}.fd-preview-artwork{z-index:1;pointer-events:none;position:absolute;inset:0}.fd-preview[data-has-mask="1"][data-view=product] .fd-preview-artwork{-webkit-mask-image:var(--fd-cut-mask);-webkit-mask-image:var(--fd-cut-mask);mask-image:var(--fd-cut-mask);-webkit-mask-mode:alpha;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-source-type:alpha;mask-mode:alpha}.fd-preview-paper{z-index:0;background:repeating-linear-gradient(0deg, transparent, transparent 3px, var(--fd-paper-grain) 3px, var(--fd-paper-grain) 4px), var(--fd-paper);position:absolute;inset:0}.fd-preview-print{z-index:1;display:none;position:absolute;inset:0;overflow:hidden}.fd-preview[data-inside="1"] .fd-preview-flat .fd-preview-print{display:block}.fd-preview[data-inside="1"] .fd-preview-flat .fd-preview-blank{display:none}.fd-preview[data-inside="0"] .fd-preview-flat .fd-preview-blank,.fd-preview-flat .fd-preview-blank{display:flex}.fd-preview[data-outside="1"] .fd-closed-front .fd-preview-print{display:block}.fd-preview[data-outside="1"] .fd-closed-front .fd-preview-blank{display:none}.fd-preview[data-outside="0"] .fd-closed-front .fd-preview-blank,.fd-closed-front .fd-preview-blank{display:flex}.fd-preview-flat .fd-preview-lam,.fd-preview-flat .fd-preview-uv,.fd-preview-flat .fd-preview-foil,.fd-preview-flat .fd-preview-emboss{display:none!important}.fd-preview-print-hero{background:radial-gradient(55% 40% at 88% 18%,#ffffff59,#0000 70%),linear-gradient(155deg,#0369a1 0%,#4f46e5 45%,#be185d 100%);border-radius:0;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff26}.fd-preview-print-mark{background:#ffffff38;border-radius:2px;width:42%;height:10%;position:absolute;top:11%;left:10%;box-shadow:inset 0 0 0 1px #ffffff59}.fd-preview-print-panel{background:linear-gradient(145deg,#ffffff47,#ffffff0f),#0f172a2e;border-radius:6px;height:26%;position:absolute;top:32%;left:12%;right:12%;box-shadow:inset 0 1px #fff6,0 4px 14px #0f172a2e}.fd-preview-print-panel:after{content:"";background:#ffffff1f;border-radius:3px;position:absolute;inset:22% 18%}.fd-preview-print-bars{background:repeating-linear-gradient(#ffffff8c 0 22%,#ffffff14 22% 40%);border-radius:3px;width:54%;height:16%;position:absolute;bottom:14%;left:10%;box-shadow:inset 0 0 0 1px #ffffff47}.fd-preview-print-cmyk{z-index:2;gap:4px;margin:0;display:flex;position:absolute;bottom:4%;right:4%}.fd-preview-print-cmyk i{border-radius:50%;width:10px;height:10px;display:block;box-shadow:inset 0 0 0 1px #0000001f,0 0 0 1px #ffffff59}.fd-preview-print-cmyk .c{background:#00a3e0}.fd-preview-print-cmyk .m{background:#ec008c}.fd-preview-print-cmyk .y{background:#ffed00}.fd-preview-print-cmyk .k{background:#231f20}.fd-preview-blank{z-index:1;color:#64748bcc;letter-spacing:.02em;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:.78rem;display:none;position:absolute;inset:0}.fd-preview-blank:before{content:"";background:#94a3b873;border-radius:999px;width:36%;height:2px}.fd-preview-stamp{object-fit:contain;object-position:center;z-index:3;pointer-events:none;opacity:0;mix-blend-mode:normal;background:0 0;width:100%;height:100%;transition:opacity .25s;position:absolute;inset:0}.fd-preview[data-has-stamp="1"][data-view=product] .fd-preview-stamp{opacity:1;filter:drop-shadow(0 0 .6px #0f172a73)}.fd-preview[data-has-stamp="1"][data-view=stamp] .fd-preview-stamp{opacity:1;z-index:5;background:#fff}.fd-preview[data-view=stamp] .fd-preview-artwork,.fd-preview[data-view=stamp] .fd-preview-print,.fd-preview[data-view=stamp] .fd-preview-blank,.fd-preview[data-view=stamp] .fd-preview-paper,.fd-preview[data-view=stamp] .fd-preview-lam,.fd-preview[data-view=stamp] .fd-preview-uv,.fd-preview[data-view=stamp] .fd-preview-foil,.fd-preview[data-view=stamp] .fd-preview-emboss{display:none;opacity:0!important}.fd-preview-placeholder{z-index:4;text-align:center;color:#94a3b8;background:repeating-linear-gradient(-45deg,#0000,#0000 8px,#94a3b814 8px 16px);justify-content:center;align-items:center;padding:16px;font-size:.9rem;display:flex;position:absolute;inset:0}.fd-preview[data-has-stamp="1"] .fd-preview-placeholder{display:none}.fd-preview-badge{z-index:6;letter-spacing:.04em;text-transform:uppercase;color:#f8fafc;opacity:0;background:#0f172ab8;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:700;transition:opacity .2s;position:absolute;top:8px;left:8px}.fd-preview[data-has-stamp="1"][data-view=product] .fd-preview-badge{opacity:1}.fd-preview-lam,.fd-preview-uv,.fd-preview-foil,.fd-preview-emboss{pointer-events:none;opacity:0;transition:opacity .3s;position:absolute}.fd-preview-lam{z-index:4;inset:0}.fd-preview[data-lam=gloss] .fd-preview-lam,.fd-preview[data-lam=matte] .fd-preview-lam,.fd-preview[data-lam=soft_touch] .fd-preview-lam{opacity:1}.fd-preview[data-lam=gloss] .fd-preview-lam{mix-blend-mode:soft-light;background:linear-gradient(118deg,#0000 12%,#ffffff26 28%,#ffffffb8 40%,#0000 55%,#ffffff47 72%,#0000 88%) 0 0/200% 200%;animation:3.6s ease-in-out infinite fd-gloss-sweep}.fd-preview[data-lam=matte] .fd-preview-lam{background:#94a3b829}.fd-preview[data-lam=soft_touch] .fd-preview-lam{-webkit-backdrop-filter:saturate(.85);backdrop-filter:saturate(.85);background:radial-gradient(circle at 30% 20%,#ffffff47,#0000 55%);box-shadow:inset 0 0 30px #0f172a24}@keyframes fd-gloss-sweep{0%,to{background-position:0%}50%{background-position:100%}}.fd-preview-uv{z-index:5;background:0 0;inset:0}.fd-preview-uv:before{content:"";mix-blend-mode:overlay;background:linear-gradient(100deg,#0000 0% 38%,#fffffffa 48%,#b4e6ffb3 52%,#0000 62% 100%) 0 0/240% 100%,repeating-linear-gradient(#ffffffb8 0 18%,#ffffff1f 18% 36%) 0 0/100% 100%,#ffffff38 0 0/100% 100%;border-radius:3px;width:54%;height:16%;animation:2.8s ease-in-out infinite fd-uv-spot-shine;position:absolute;bottom:14%;left:10%;box-shadow:inset 0 0 0 1px #fffc,0 2px 12px #0f172a38}.fd-preview[data-uv="1+0"] .fd-preview-uv,.fd-preview[data-uv="1+1"] .fd-preview-uv,.fd-preview[data-uv="0+1"] .fd-preview-uv{opacity:1}@keyframes fd-uv-spot-shine{0%,to{background-position:-10%,0 0,0 0}50%{background-position:110%,0 0,0 0}}.fd-preview-foil{z-index:7;background:linear-gradient(110deg,#6b4e12 0%,#f8e7a0 18%,#c9a227 40%,#fff8d0 55%,#a67c1a 78%,#6b4e12 100%) 0 0/220% 100%;border-radius:2px;width:42%;height:10%;animation:2.4s linear infinite fd-foil-shine;top:11%;left:10%;box-shadow:0 1px 2px #00000059,inset 0 1px #ffffff73}.fd-preview-foil:after{content:"";background:#0000002e;border-radius:1px;height:22%;position:absolute;top:38%;left:12%;right:12%}.fd-preview[data-foil="1"] .fd-preview-foil,.fd-preview[data-foil=silver] .fd-preview-foil{opacity:1}.fd-preview[data-foil=silver] .fd-preview-foil{background:linear-gradient(110deg,#4b5563 0%,#f3f4f6 20%,#9ca3af 42%,#fff 58%,#6b7280 80%,#4b5563 100%) 0 0/220% 100%}@keyframes fd-foil-shine{0%{background-position:0%}to{background-position:220%}}.fd-preview-emboss{z-index:6;background:linear-gradient(145deg,#ffffff38,#0f172a0f);border-radius:6px;height:26%;top:32%;left:12%;right:12%;transform:translateZ(2px)scale(1);box-shadow:inset 3px 3px 5px #ffffffb3,inset -3px -3px 6px #0f172a59,0 3px 6px #0f172a29}.fd-preview-emboss:before{content:"";border-radius:3px;position:absolute;inset:22% 18%;box-shadow:inset 1px 1px 2px #ffffff80,inset -1px -1px 2px #0f172a40}.fd-preview[data-emboss="1"] .fd-preview-emboss{opacity:1}.fd-preview-view-toggle{gap:6px;margin-top:4px;display:flex}.fd-preview-view-btn{border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);color:var(--foreground,#111827);cursor:pointer;border-radius:10px;flex:1;padding:6px 10px;font-size:.8rem;font-weight:600}.fd-preview-view-btn.is-active{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 12%, var(--surface));color:var(--accent)}.fd-preview-meta{flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-top:10px;font-size:.85rem;display:flex}.fd-preview-size{color:var(--foreground,#111827);font-weight:600}.fd-preview-paper-meta{color:var(--muted,#6b7280);flex:auto}.fd-preview-colors{color:var(--accent,#2563eb);font-weight:700}.fd-preview-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.fd-preview-chip{color:#64748b;background:#94a3b826;border:1px solid #0000;border-radius:999px;padding:3px 8px;font-size:.72rem;font-weight:600}.fd-preview-chip.is-off{opacity:.45}.fd-preview-chip[data-kind=lam]:not(.is-off){color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.fd-preview-chip[data-kind=uv]:not(.is-off){color:#6d28d9;background:#f5f3ff;border-color:#c4b5fd}.fd-preview-chip[data-kind=foil]:not(.is-off){color:#b45309;background:#fef3c7;border-color:#fbbf24}.fd-preview-chip[data-kind=emboss]:not(.is-off){color:#475569;background:#f8fafc;border-color:#cbd5e1}.fd-preview-hint{line-height:1.35}.fd-preview-legend{color:#475569;flex-wrap:wrap;gap:10px 16px;margin-top:8px;font-size:.75rem;font-weight:600;display:flex}.fd-leg{align-items:center;gap:7px;display:inline-flex}.fd-leg i{border-top:2.5px solid #111827;width:28px;height:0;display:block}.fd-leg-crease i{border-top-style:dashed;border-top-color:#c2185b;width:32px}
.calc-stamp-picker{margin-top:.25rem}.calc-stamp-picker__meta{color:var(--muted);justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.5rem;font-size:.75rem;display:flex}.calc-stamp-picker__grid{border:1px solid var(--border);background:var(--surface-elevated);border-radius:.75rem;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:.5rem;max-height:380px;padding:.35rem;display:grid;overflow-y:auto}.calc-stamp-card{background:var(--surface);box-shadow:0 1px 2px color-mix(in srgb, var(--foreground) 6%, transparent);cursor:pointer;text-align:left;border:1.5px solid #0000;border-radius:.625rem;flex-direction:column;align-items:stretch;gap:.35rem;margin:0;padding:.5rem;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.calc-stamp-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 12%, transparent)}.calc-stamp-card:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.calc-stamp-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent);background:var(--accent-muted)}.calc-stamp-card__thumb{aspect-ratio:1;background:repeating-linear-gradient(-45deg, color-mix(in srgb, var(--border) 55%, var(--surface)), color-mix(in srgb, var(--border) 55%, var(--surface)) 6px, color-mix(in srgb, var(--border) 80%, var(--surface)) 6px, color-mix(in srgb, var(--border) 80%, var(--surface)) 12px);border-radius:.5rem;width:100%;position:relative;overflow:hidden}.calc-stamp-card__thumb img{object-fit:contain;object-position:center;background:#fff;width:100%;height:100%;position:absolute;inset:0}.calc-stamp-card__thumb-ph{text-align:center;color:var(--muted);justify-content:center;align-items:center;padding:.35rem;font-size:.68rem;line-height:1.25;display:flex;position:absolute;inset:0}.calc-stamp-card__title{color:var(--foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.calc-stamp-card__sub{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.68rem;line-height:1.2;display:-webkit-box;overflow:hidden}.calc-stamp-picker__empty{text-align:center;color:var(--muted);padding:1rem .75rem;font-size:.85rem}@media (max-width:575.98px){.calc-stamp-picker__grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));max-height:300px}}
