@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-cyrillic-ext-wght-normal.1zrieox9119mb.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-cyrillic-wght-normal.2whpih27xg_2r.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-greek-ext-wght-normal.1xlj4-0oa5zql.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-greek-wght-normal.1fxkn-ggzj93z.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-vietnamese-wght-normal.1ahvy37o8m5gt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-latin-ext-wght-normal.2ktx6yqc-sbf1.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-latin-wght-normal.0rpdhg_4ubdtf.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#fff;--ink:#090909;--muted:#646464;--line:#e6e6e6;--accent:#090909;--action:#1d202e;--surface:#f7f7f7}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter Variable,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:5px}.external-arrow{vertical-align:-2px;flex-shrink:0;width:14px;height:14px;margin-left:3px;display:inline-block}.masthead{justify-content:space-between;align-items:center;gap:24px;width:90%;max-width:1440px;min-height:84px;margin:auto;display:flex}.brand{align-items:center;max-width:195px;min-height:44px;display:inline-flex}.brand img{width:195px;max-width:100%;height:auto;display:block}.shop-link{white-space:nowrap;align-items:center;min-height:44px;font-size:14px;display:inline-flex}.shop-link:hover,footer a:hover{text-underline-offset:4px;text-decoration:underline}.hero,.steps,.studio,.setup-banner{width:90%;max-width:1440px;margin-left:auto;margin-right:auto}.hero{grid-template-columns:42% 58%;align-items:start;padding:4px 0 8px;display:grid}.hero-copy{z-index:1;padding-top:clamp(24px,5svh,44px);position:relative}.hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(52px,5.5vw,84px);font-weight:600;line-height:.95}.hero-slogan{letter-spacing:-.045em;color:var(--ink);margin:18px 0 0;font-size:clamp(25px,2.65vw,40px);font-weight:400;line-height:1.15}.hero-description{letter-spacing:-.02em;white-space:pre-line;color:var(--ink);max-width:490px;margin:28px 0 0;font-size:clamp(15px,1.4vw,21px);font-weight:400;line-height:1.35}.hero-art{justify-self:start;width:min(100%,640px,max(300px,124svh - 347.2px))}.hero-art img{width:100%;height:auto;display:block}.steps{justify-content:space-between;align-items:start;gap:24px;padding:14px 0 0;display:flex}.steps button{color:var(--ink);white-space:nowrap;background:0 0;border:0;align-items:center;gap:20px;min-height:48px;padding:10px 0 14px;font-size:16px;font-weight:400;line-height:1.3;display:inline-flex;position:relative}.steps button span{font-weight:400}.steps button:after{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform .18s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.steps button.current:after,.steps button:hover:not(:disabled):after{transform:scaleX(1)}.steps button:disabled{color:var(--ink)}.setup-banner{color:var(--muted);margin-top:20px;font-size:11px;line-height:1.6}.studio{padding:30px 0 48px}.collection-title{letter-spacing:2px;margin:0 0 14px;font-size:11px;font-weight:400;line-height:1.5}.stage-title{letter-spacing:-1px;margin:0 0 32px;font-size:28px;font-weight:700;line-height:1.2}.collection-title:focus,.stage-title:focus{outline:none}.collection-title:focus-visible,.stage-title:focus-visible{outline:1px solid var(--ink);outline-offset:8px}.design-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:20px;display:grid}.design{min-width:0;color:inherit;text-align:left;background:0 0;border:0;padding:0}.design-art{aspect-ratio:36/25;outline-offset:4px;outline:1px solid #0000;transition:transform .2s,outline-color .2s;position:relative;overflow:hidden}.design-art img{object-fit:cover;width:100%;height:100%;display:block;box-shadow:0 5px 12px #0000000d}.design:hover .design-art{transform:translateY(-3px)}.design.selected .design-art{outline-color:#444}.selection{color:#fff;background:#111;border-radius:50%;place-items:center;width:23px;height:23px;font-size:11px;font-weight:400;display:grid;position:absolute;bottom:10px;right:10px}.action-bar{justify-content:flex-end;padding-top:28px;display:flex}.primary{background:var(--action);color:#fff;border:1px solid var(--action);justify-content:space-between;align-items:center;gap:26px;min-width:220px;min-height:48px;padding:16px 22px;font-size:13px;font-weight:400;transition:background .2s;display:inline-flex}.primary:hover:not(:disabled){background:#2c3043}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:24px 5%;font-size:10px;font-weight:400;display:flex}footer>span:first-child{color:var(--ink);letter-spacing:.5px;font-size:9px}.editor{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:70px;max-width:1140px;margin:0 auto;display:grid}.form-side{min-width:0}.form-side p{line-height:1.65}.form-side h3{letter-spacing:-.7px;font-size:26px;font-weight:400;line-height:1.2}.privacy-note{color:var(--muted);font-size:12px}label{margin-bottom:22px;font-size:12px;font-weight:400;display:block}input,textarea,select{background:var(--paper);width:100%;color:var(--ink);border:1px solid #d4d4d4;border-radius:0;margin-top:9px;padding:13px;display:block}input::placeholder,textarea::placeholder{color:#737373}textarea{resize:vertical;line-height:1.6}label small{text-align:right;color:var(--muted);margin-top:7px;font-size:10px;display:block}.text-button{text-align:left;background:0 0;border:0;min-height:44px;padding:16px 0;font-size:12px;display:block}.message-ideas{margin:-6px 0 24px}.message-ideas p{margin:0 0 9px;font-size:12px}.suggestion-options{flex-wrap:wrap;gap:8px;display:flex}.suggestion-options button{border:1px solid var(--line);background:#fff;min-height:36px;padding:8px 11px;font-size:11px;font-weight:400}.suggestion-options button:hover{border-color:var(--ink)}.suggestion-hint{color:var(--muted);margin-top:8px;font-size:10px;display:block}.suggestion-confirmation{border-left:1px solid var(--ink);margin:0 0 24px;padding:0 0 0 15px}.suggestion-confirmation p{margin:0 0 8px;font-size:12px}.suggestion-confirmation button{text-underline-offset:3px;background:0 0;border:0;min-height:44px;padding:10px 12px 10px 0;font-size:12px;text-decoration:underline}.perspective{perspective:1600px;aspect-ratio:5/4;width:100%}.postcard{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;width:100%;height:100%;transform-style:preserve-3d;color:inherit;text-align:left;background:0 0;border:0;padding:0;transition:transform .8s cubic-bezier(.2,.7,.2,1);position:relative}.postcard img{-webkit-user-drag:none}.postcard.flipped{transform:rotateY(180deg)}.card-face{backface-visibility:hidden;display:block;position:absolute;inset:0;box-shadow:0 15px 35px #00000018}.front img{object-fit:contain;width:100%;height:100%;display:block}.back{background:#fcfcfa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' opacity='.04' filter='url(%23n)' d='M0 0h80v80H0z'/%3E%3C/svg%3E");flex-direction:column;padding:6%;display:flex;transform:rotateY(180deg)}.postmark{width:16%;max-width:74px;height:auto;display:block;transform:rotate(4deg)}.letter{flex-direction:column;flex:1;gap:12px;min-height:0;padding-right:clamp(52px,18%,90px);font:400 clamp(11px,1.2vw,16px)/1.4 Georgia,Iowan Old Style,serif;display:flex}.letter>span{white-space:pre-wrap;overflow-wrap:anywhere}.letter em{font-size:.9em;font-style:normal}.discount{border-top:1px solid #dedede;margin-top:8px;padding-top:10px;font-size:9px;display:block}.discount span{display:block}.discount b{margin-top:4px;font-weight:700;line-height:1.4;display:block}.turn{background:0 0;border:0;margin:24px auto 10px;font-size:12px;display:block}.hint{text-align:center;color:var(--muted);font-size:10px}.share-grid{grid-template-columns:1fr 1fr;gap:10px;margin:25px 0;display:grid}.share-grid button{background:var(--paper);text-align:left;border:1px solid #d8d8d8;min-height:48px;padding:16px}.share-grid button:hover{background:var(--surface)}.error{color:var(--ink);background:var(--surface);border-left:2px solid var(--ink);padding:15px}.recipient-page{text-align:center;max-width:630px;margin:45px auto;padding:20px}.eyebrow{letter-spacing:1px;font-size:10px;font-weight:400;line-height:1.5}.recipient-page h1{letter-spacing:-1px;margin:25px 0 40px;font-size:34px;font-weight:400;line-height:1.1}.recipient-page h1 em{font-style:normal;font-weight:400}.recipient-page .letter{text-align:left;font-size:14px}.recipient-page .primary{margin:20px 0}.section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin{max-width:1000px;margin:auto;padding:40px 20px}.admin h1{letter-spacing:-1.2px;font-size:38px;font-weight:400}.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);margin-bottom:20px;padding:22px}.panel h2{letter-spacing:-.5px;font-size:23px;font-weight:400}.panel h3{font-weight:400}.panel img{object-fit:contain;width:100%;height:140px}.admin button{background:var(--accent);color:#fff;border:0;min-height:44px;margin-right:8px;padding:10px 15px}.admin label{margin-bottom:12px}.admin small{line-height:1.6}.admin .status{background:var(--surface);padding:12px}.login{max-width:450px}.empty{text-align:center;padding:70px 20px}.empty h1{letter-spacing:-1px;font-size:36px;font-weight:400;line-height:1.2}.back .postmark{opacity:1;position:absolute;top:5%;right:5%}.back .letter small{padding-right:0}.letter{justify-content:center}.letter small,.letter em{overflow-wrap:anywhere;min-width:0}@media (min-width:1400px){.letter{font-size:16px}}@media (max-width:1100px){.hero h1{font-size:59px}.hero-slogan{font-size:28px}.hero-description{margin-top:24px;font-size:16px}.hero-copy{padding-top:28px}.editor{gap:35px}}@media (max-width:850px){.hero{grid-template-columns:44% 56%}.hero h1{font-size:47px}.hero-slogan{margin-top:18px;font-size:23px}.hero-description{margin-top:22px;font-size:13px}.hero-copy{padding-top:24px}.steps button{gap:12px;font-size:13px}.design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.masthead{gap:16px;min-height:68px}.brand{max-width:160px}.brand img{width:160px}.shop-link{font-size:11px}.hero{grid-template-columns:minmax(0,1fr);padding:8px 0 0}.hero-copy{padding-top:6px}.hero h1{letter-spacing:-.055em;font-size:clamp(42px,11vw,56px);line-height:.96}.hero-slogan{margin-top:12px;font-size:clamp(22px,6vw,28px)}.hero-description{max-width:100%;margin-top:18px;font-size:14px;line-height:1.4}.hero-art{justify-self:center;width:min(100%,max(180px,124svh - 496px));max-width:470px;margin:12px auto 0}.steps{gap:12px;padding-top:6px}.steps button{gap:9px;padding-bottom:12px;font-size:11px}.studio{padding-top:22px}.collection-title{margin-bottom:12px;font-size:10px}.stage-title{margin-bottom:24px;font-size:25px}.design-grid{gap:16px}.selection{width:21px;height:21px;font-size:10px;bottom:8px;right:8px}.action-bar{padding-top:24px}.action-bar .primary{width:100%}footer{flex-wrap:wrap;font-size:9px}footer>span:nth-child(2){display:none}.editor{grid-template-columns:minmax(0,1fr);gap:35px}.postcard-experience{grid-row:1}.letter{gap:7px;font-size:11px}.postmark{font-size:7px}.discount{padding-top:6px;font-size:8px}.recipient-page{margin:25px auto}.recipient-page h1{font-size:29px}.recipient-page .letter{font-size:11px}.admin-grid{grid-template-columns:1fr}.admin h1{font-size:30px}}@media (max-width:360px){.brand{max-width:138px}.brand img{width:138px}.steps{gap:6px}.steps button{gap:6px;font-size:10px}.back{padding:4%}.letter{gap:5px;font-size:10px;line-height:1.25}.recipient-page .letter{font-size:10px}.design-grid{gap:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.postcard{transform-style:flat}.postcard,.postcard.flipped,.card-face{transform:none}.card-face[aria-hidden=true]{visibility:hidden}.card-face[aria-hidden=false]{visibility:visible}}.design-title{margin-top:13px;font-size:14px;font-weight:500;line-height:1.4;display:block}.design-subtitle{color:var(--muted);margin-top:5px;font-size:12px;font-weight:400;line-height:1.55;display:block}@media (max-width:700px){.design-title{font-size:12px}.design-subtitle{font-size:11px}}.editor.editor-review{flex-direction:column;align-items:stretch;gap:18px;max-width:640px;display:flex}.review-card{width:100%;min-width:0}.review-notes{margin-top:14px}.review-notes p{margin:12px 0;font-size:14px;line-height:1.6}.review-notes .privacy-note{font-size:12px}.save-card,.action-bar .primary,.form-side form>.primary{font-weight:700}.share-icon{width:24px;height:24px;color:var(--action);flex-shrink:0}.share-confirmation{font-size:12px}.share-grid .share-option{text-align:left;background:#fff;border:1px solid #d8d8d8;align-items:center;gap:12px;min-height:88px;padding:18px 14px;font-weight:400;display:flex}.share-option>span{flex:1;min-width:0}.share-option small{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.5;display:block}.share-option:hover{border-color:var(--ink)}.editor-share .form-side h3{margin-top:12px;font-weight:700}.recipient-page{max-width:680px;margin:32px auto 50px;padding:20px}.recipient-page .recipient-discount{margin:18px auto 0;font-weight:700}body:has(.recipient-page) .brand{width:160px;max-width:160px}body:has(.recipient-page) .brand img{width:160px;max-width:160px}body:has(.recipient-page)>footer{display:none}@media (max-width:700px){.editor-share .form-side{grid-row:1}.editor-share>.postcard-experience{grid-row:2}.share-grid .share-option{gap:9px;padding:14px 10px}.share-option .external-arrow{display:none}.recipient-page{margin:12px auto 35px}.recipient-page .primary{margin-top:18px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.history-scroll{max-width:100%;margin:20px 0;overflow-x:auto}.card-history table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.card-history th,.card-history td{border-bottom:1px solid var(--line);vertical-align:top;padding:14px 12px}.card-history th{font-weight:600}.card-history img{object-fit:cover;width:88px;height:61px;margin-bottom:8px;display:block}.history-design-title{min-width:110px;font-size:11px;display:block}.card-history time{color:var(--muted);margin-top:6px;font-size:10px;display:block}.history-message{white-space:pre-wrap;overflow-wrap:anywhere;min-width:220px;max-width:400px;line-height:1.6}.history-channels{min-width:130px;color:var(--muted)}.history-note{color:var(--muted);font-size:11px;line-height:1.6}.history-actions{text-align:right}.history-actions,.card-history th:last-child{background:var(--paper);position:sticky;right:0}.admin .delete-card{color:var(--ink);background:0 0;width:44px;padding:0;font-size:24px;line-height:1}.admin .delete-card:hover{background:#f3f3f3}.history-scroll:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
