@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_eb41fe{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_eb41fe{--font-display-loaded:"Fraunces","Fraunces Fallback"}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/88da59c891d37117-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/1e377d93cbdd6b44-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/36d711d427a06e51-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/f1f7cdf240180e28-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/55fbdf033607a0e1-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/b6a6f0b43d027304-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/9cf9c6e84ed13b5e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Source Sans\ 3 Fallback;src:local("Arial");ascent-override:109.21%;descent-override:42.66%;line-gap-override:0.00%;size-adjust:93.76%}.__className_1fdbab{font-family:Source Sans\ 3,Source Sans\ 3 Fallback;font-style:normal}.__variable_1fdbab{--font-body-loaded:"Source Sans 3","Source Sans 3 Fallback"}:root{--paper:#eef0ec;--paper-deep:#e4e7e1;--ink:#1c1f1c;--ink-soft:#4a4f4a;--muted:#7a8078;--line:#c5cac0;--line-soft:#d8ddd4;--accent:#2c4a3e;--accent-soft:#3d5f50;--surface:#f7f8f5;--surface-raised:#fcfcfa;--danger:#7a3e35;--radius:2px;--font-display:"Fraunces","Iowan Old Style","Palatino Linotype",Palatino,serif;--font-body:"Source Sans 3","Source Sans Pro","Segoe UI",sans-serif;--font-bookmark:"Cormorant Garamond","Iowan Old Style","Palatino Linotype",Palatino,serif;--ease:cubic-bezier(0.22,1,0.36,1)}@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-SemiBold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/CormorantGaramond-Italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Libre Baskerville;src:url(/fonts/LibreBaskerville-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Libre Baskerville;src:url(/fonts/LibreBaskerville-Bold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Libre Baskerville;src:url(/fonts/LibreBaskerville-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Lora;src:url(/fonts/Lora-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Lora;src:url(/fonts/Lora-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Lora;src:url(/fonts/Lora-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/PlayfairDisplay-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/PlayfairDisplay-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/fonts/PlayfairDisplay-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Fraunces Bookmark;src:url(/fonts/Fraunces-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Fraunces Bookmark;src:url(/fonts/Fraunces-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Fraunces Bookmark;src:url(/fonts/Fraunces-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}.font-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(4.8rem,1fr));grid-gap:.45rem;gap:.45rem;margin-bottom:.65rem}.font-card{display:grid;grid-gap:.15rem;gap:.15rem;padding:.55rem .35rem;border:1px solid var(--line);background:var(--surface);text-align:center;transition:border-color .16s var(--ease),background .16s var(--ease)}.font-card-sample{font-size:1.35rem;line-height:1.1;font-weight:600;color:var(--ink)}.font-card-name{font-size:.68rem;color:var(--muted);font-family:var(--font-body)}.font-card:hover,.font-card[data-active=true]{border-color:var(--accent);background:var(--surface-raised)}.size-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}.size-chip{padding:.35rem .7rem;border:1px solid var(--line);background:var(--surface);font-size:.8rem;color:var(--ink-soft);border-radius:var(--radius);transition:border-color .16s var(--ease),background .16s var(--ease),color .16s var(--ease)}.size-chip:hover,.size-chip[data-active=true]{border-color:var(--accent);color:var(--ink);background:var(--surface-raised)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{font-family:var(--font-body);color:var(--ink);background-color:var(--paper);background-image:radial-gradient(ellipse 120% 80% at 10% -20%,rgba(44,74,62,.06),transparent 55%),radial-gradient(ellipse 90% 60% at 100% 0,rgba(61,95,80,.04),transparent 50%);background-attachment:fixed;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}img,svg{display:block;max-width:100%}::selection{background:rgba(44,74,62,.18)}.shell{width:min(1040px,calc(100% - 2.5rem));margin:0 auto}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0;border-bottom:1px solid var(--line-soft)}.brand{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;color:inherit}.brand:hover .brand-mark{color:var(--accent)}.brand-logo{width:2.15rem;height:2.15rem;flex-shrink:0;border:1px solid var(--line-soft);border-radius:8px}.brand-text{display:inline-flex;align-items:baseline;gap:.55rem;min-width:0}.brand-mark{font-family:var(--font-display);font-size:1.55rem;font-weight:560;letter-spacing:-.02em;line-height:1;transition:color .16s var(--ease)}.brand-tag{font-size:.78rem;color:var(--muted);letter-spacing:.02em}.site-footer{border-top:1px solid var(--line-soft);padding:1.5rem 0 2.5rem;display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.85rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.75rem;padding:.7rem 1.2rem;border-radius:var(--radius);border:1px solid transparent;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease),transform .16s var(--ease)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#f4f6f3}.btn-primary:hover{background:var(--accent-soft)}.btn-secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn-secondary:hover{border-color:var(--ink-soft);background:rgba(255,255,255,.35)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.maker{padding:1.75rem 0 3.5rem}.maker-top{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line-soft)}.maker-title{margin:0;font-family:var(--font-display);font-size:clamp(1.9rem,3vw,2.5rem);font-weight:520;letter-spacing:-.02em}.maker-lead{margin:.45rem 0 0;color:var(--ink-soft);max-width:34rem;overflow-wrap:anywhere}.maker-cta-row{display:flex;flex-wrap:wrap;gap:.6rem;flex-shrink:0}.maker-top>div:first-child{min-width:0}.maker-layout{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);grid-gap:1.75rem;gap:1.75rem;align-items:start}.panel{min-width:0;border:1px solid var(--line);background:rgba(252,252,250,.8);padding:1.5rem}.panel-kicker{margin:0 0 .75rem;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-family:var(--font-body);font-weight:600}.shape-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:.65rem;gap:.65rem}.shape-card{text-align:left;padding:.9rem;border:1px solid var(--line);background:var(--surface);transition:border-color .16s var(--ease),background .16s var(--ease)}.shape-card strong{display:block;font-family:var(--font-display);font-size:1.05rem;font-weight:560;margin-bottom:.3rem}.shape-card span{display:block;color:var(--muted);font-size:.82rem;line-height:1.35}.shape-card:hover,.shape-card[data-active=true]{border-color:var(--accent);background:var(--surface-raised)}.field{display:grid;grid-gap:.35rem;gap:.35rem;margin-bottom:1rem}.field label{font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.field input,.field select{width:100%;min-height:2.6rem;padding:.55rem .7rem;border:1px solid var(--line);background:var(--surface-raised);border-radius:var(--radius)}.field input:focus,.field select:focus{outline:2px solid rgba(44,74,62,.25);outline-offset:1px;border-color:var(--accent)}.swatches{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.swatch{width:2rem;height:2rem;border:1px solid var(--line);border-radius:var(--radius);padding:0;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;position:relative;flex-shrink:0}.swatch span{display:block;width:100%;height:100%}.swatch[data-active=true]{outline:2px solid var(--accent);outline-offset:2px}.phrase-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem}.phrase-chip{padding:.35rem .65rem;border:1px solid var(--line);background:var(--surface);font-size:.8rem;color:var(--ink-soft);border-radius:var(--radius);transition:border-color .16s var(--ease),background .16s var(--ease),color .16s var(--ease)}.phrase-chip:hover,.phrase-chip[data-active=true]{border-color:var(--accent);color:var(--ink);background:var(--surface-raised)}.surface-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:.4rem;gap:.4rem;margin-bottom:.75rem}.surface-tabs button{min-height:2.4rem;border:1px solid var(--line);background:var(--surface);font-size:.85rem;color:var(--ink-soft);transition:border-color .16s var(--ease),background .16s var(--ease),color .16s var(--ease)}.surface-tabs button:hover,.surface-tabs button[data-active=true]{border-color:var(--accent);color:var(--ink);background:var(--surface-raised)}.upload-block{margin-bottom:1.25rem}.upload-preview{border:1px solid var(--line);background:var(--surface);overflow:hidden;aspect-ratio:3/4;max-height:160px}.upload-preview img{width:100%;height:100%;object-fit:cover}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.pattern-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));grid-gap:.5rem;gap:.5rem;margin-bottom:1.25rem}.pattern-card{display:grid;grid-gap:.35rem;gap:.35rem;padding:.4rem;border:1px solid var(--line);background:var(--surface);transition:border-color .16s var(--ease),background .16s var(--ease)}.pattern-card span{font-size:.72rem;color:var(--muted);text-align:center}.pattern-swatch-svg{width:100%;height:auto;border:1px solid var(--line-soft)}.pattern-card:hover,.pattern-card[data-active=true]{border-color:var(--accent);background:var(--surface-raised)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 0;border-top:1px solid var(--line-soft);font-size:.92rem}.toggle{width:2.6rem;height:1.45rem;border-radius:999px;background:var(--line);position:relative;transition:background .16s var(--ease)}.toggle[data-on=true]{background:var(--accent)}.toggle i{position:absolute;top:.18rem;left:.18rem;width:1.05rem;height:1.05rem;border-radius:50%;background:white;transition:transform .16s var(--ease)}.toggle[data-on=true] i{transform:translateX(1.15rem)}.hint{margin:.75rem 0 0;font-size:.85rem;color:var(--muted)}.preview-pane{position:-webkit-sticky;position:sticky;top:1rem;min-width:0;display:grid;grid-gap:.4rem;gap:.4rem}.preview-card{border:1px solid var(--line);background:linear-gradient(#dfe3db 1px,transparent 0) 0 0 /16px 16px,linear-gradient(90deg,#dfe3db 1px,transparent 0) 0 0 /16px 16px,#e8ebe4;min-height:340px;display:grid;place-items:center;padding:1.5rem}.preview-card .unit-svg{filter:drop-shadow(0 10px 24px rgba(28,31,28,.12))}.preview-card[data-shape=accordion] .unit-svg{width:min(100%,210px)}.preview-card[data-shape=corner] .unit-svg{width:min(100%,260px)}.sheet-card{border:1px solid var(--line);background:var(--surface);padding:1.25rem;margin-top:1.25rem;display:grid;place-items:center}.sheet-svg{width:min(100%,260px);box-shadow:0 8px 22px rgba(28,31,28,.1)}@media (max-width:900px){.maker-layout{grid-template-columns:minmax(0,1fr)}.maker-top{align-items:stretch;flex-direction:column}.preview-pane{position:static}.shape-row{grid-template-columns:minmax(0,1fr)}.brand-tag{display:none}}.skeleton-stack{display:grid;grid-gap:.55rem;gap:.55rem}.skeleton-block{border-radius:var(--radius);background:linear-gradient(105deg,var(--paper-deep) 0,var(--surface) 42%,var(--paper-deep) 78%);background-size:220% 100%;animation:skeleton-shimmer 1.35s var(--ease) infinite}.skeleton-title{height:2.35rem;width:min(100%,16rem)}.skeleton-lead{height:.95rem;width:100%}.skeleton-lead-short{width:72%}.skeleton-btn{width:7.5rem;height:2.75rem}.skeleton-panel{display:grid;grid-gap:.75rem;gap:.75rem}.skeleton-kicker{height:.7rem;width:4.5rem}.skeleton-shape-row{display:grid;grid-gap:.65rem;gap:.65rem}.skeleton-shape{height:4.25rem}.skeleton-chip-row{display:flex;flex-wrap:wrap;gap:.45rem}.skeleton-chip{height:2rem;width:5.5rem}.skeleton-field{height:2.75rem}.skeleton-swatch-row{display:flex;flex-wrap:wrap;gap:.5rem}.skeleton-swatch{width:2.4rem;height:2.4rem;border-radius:50%}.skeleton-pattern-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.55rem;gap:.55rem}.skeleton-pattern{height:4.5rem}.skeleton-preview{min-height:340px}.skeleton-bookmark{width:min(42%,7.5rem);height:min(70%,14rem);border-radius:2px 2px 10px 10px;opacity:.9}.skeleton-hint{height:.8rem;width:min(100%,16rem);margin:.55rem auto 0}.skeleton-sheet{min-height:10rem}.skeleton-sheet-inner{width:min(100%,11rem);height:8.5rem}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.brand-mark,.btn,.shape-card{transition:none}.skeleton-block{animation:none;background:var(--paper-deep)}}