@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-cyrillic-ext-700-normal-CrK2-ngJ.woff2)format("woff2"),url(/assets/caveat-cyrillic-ext-700-normal-DjFGiEhD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-cyrillic-700-normal-BIyejhEL.woff2)format("woff2"),url(/assets/caveat-cyrillic-700-normal-Bhcx9qBB.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-ext-700-normal-DFbRgDry.woff2)format("woff2"),url(/assets/caveat-latin-ext-700-normal-DjJQd59I.woff)format("woff");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:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-700-normal-D8_1Nw6V.woff2)format("woff2"),url(/assets/caveat-latin-700-normal-cPyBTTZN.woff)format("woff");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}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-ext-400-normal-p18AlW_x.woff2)format("woff2"),url(/assets/dm-serif-display-latin-ext-400-normal-B1toqZab.woff)format("woff");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:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-normal-C5_t9oOD.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-normal-_kVFYEpx.woff)format("woff");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}@font-face{font-family:DM Serif Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-ext-400-italic-DiLdooSn.woff2)format("woff2"),url(/assets/dm-serif-display-latin-ext-400-italic-D6UvgSoX.woff)format("woff");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:DM Serif Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-italic-DpcbibHm.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-italic-BgxzcTJK.woff)format("woff");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}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-vietnamese-400-normal-BNOj0Qhp.woff2)format("woff2"),url(/assets/space-mono-vietnamese-400-normal-B0PMp_xB.woff)format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-ext-400-normal-DTLbW2xa.woff2)format("woff2"),url(/assets/space-mono-latin-ext-400-normal-D4cJI_B-.woff)format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-400-normal-Rg4St2Dn.woff2)format("woff2"),url(/assets/space-mono-latin-400-normal-_3DlpgIW.woff)format("woff");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}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-vietnamese-700-normal-DWQgDHuA.woff2)format("woff2"),url(/assets/space-mono-vietnamese-700-normal-D-KrLuLr.woff)format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-ext-700-normal-B2s3bDs2.woff2)format("woff2"),url(/assets/space-mono-latin-ext-700-normal-B_E7P90g.woff)format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-700-normal-mWgeinG7.woff2)format("woff2"),url(/assets/space-mono-latin-700-normal-D7A851RN.woff)format("woff");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}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.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:oklch(93.24% .0173 84.6);--paper-deep:oklch(89.32% .0244 85.8);--card:oklch(98.23% .0069 88.6);--receipt:oklch(99.67% .0054 95.1);--ink:oklch(21.34% .006 91.6);--ink-soft:oklch(34.45% .0106 91.6);--muted:oklch(50.84% .0213 86.2);--faint:oklch(69.77% .0229 86);--rule:oklch(82.25% .0278 85.7);--rule-strong:oklch(79.37% .0264 86.9);--pencil:oklch(61.01% .1969 34.7);--pencil-ink:oklch(52.21% .1743 35);--pencil-wash:oklch(97.36% .016 58.6);--sheet:oklch(19.16% .0043 84.6);--sheet-cell:oklch(26.07% .0096 88.8);--edge:oklch(72.77% .1293 75);--ok:oklch(48.18% .106 148.1);--white:oklch(100% 0 none);--black:oklch(0% 0 none);--shadow-warm:oklch(26.85% .0416 82.6/.55);--tape:oklch(87.61% .052 92.6/.82);--sans:"Archivo Variable", "Archivo", "Helvetica Neue", Arial, sans-serif;--mono:"Space Mono", ui-monospace, monospace;--hand:"Caveat", "Segoe Print", cursive;--ease-out:cubic-bezier(.23, 1, .32, 1);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--content:1080px;--gutter:16px;--gutter-start:calc(var(--gutter) + var(--safe-left));--gutter-end:calc(var(--gutter) + var(--safe-right));--nav-h:62px;--bottom-bar:calc(var(--nav-h) + var(--safe-bottom));--float-gap:10px;--bleed:8px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;overflow-wrap:break-word;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;background:var(--paper)}@media (width>=820px){:root{--bottom-bar:var(--safe-bottom);--float-gap:16px;--bleed:0px}}*,:before,:after{box-sizing:border-box}html:has(dialog:modal){overflow:hidden}body{background:var(--paper);min-block-size:100dvh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.4}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{font-size:max(16px,1rem)}button,a,label,[role=button]{touch-action:manipulation}button,.button,.tool,.toggle,.segmented label,[role=button]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}p{margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:clip}:focus-visible{outline:2.5px solid var(--pencil);outline-offset:2px}:where(label):has(>input.visually-hidden:focus-visible){outline:2.5px solid var(--pencil);outline-offset:2px}.masthead{padding-block:calc(var(--safe-top) + 12px) 12px;padding-inline:max(var(--gutter-start), (100% - var(--content)) / 2) max(var(--gutter-end), (100% - var(--content)) / 2);background:var(--ink);color:var(--card);align-items:center;gap:14px;display:flex}.wordmark{letter-spacing:-.03em;align-items:center;gap:9px;margin:0;font-size:1.55rem;font-weight:860;font-stretch:125%;line-height:1;display:flex}.logo{flex:none;block-size:24px;inline-size:21px}.logo rect{fill:var(--card)}.logo path{fill:var(--ink)}.tagline{color:oklch(69.73% .0198 86.2);text-align:end;margin-inline-start:auto;font-size:.8rem;font-weight:560;font-stretch:75%}.steps{z-index:40;padding-block:0 var(--safe-bottom);padding-inline:var(--safe-left) var(--safe-right);background:var(--ink);border-block-start:1px solid var(--black);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;inset-block-end:0;inset-inline:0}.steps button{block-size:var(--nav-h);color:oklch(63.15% .0203 86.2);justify-content:center;align-items:center;gap:6px;font-size:.95rem;font-weight:620;font-stretch:88%;transition:color .15s;display:flex;position:relative}.steps button:before{content:"";background:var(--pencil);block-size:3px;position:absolute;inset-block-start:0;inset-inline:18%;scale:0 1}.steps button.on,.steps button:active{color:var(--card)}.steps button.on:before{scale:1}.step-n{font-family:var(--mono);opacity:.7;font-size:.7rem}.pip{background:var(--pencil);block-size:19px;min-inline-size:19px;color:var(--white);font-family:var(--mono);border-radius:3px;place-items:center;padding-inline:5px;font-size:.7rem;font-weight:700;display:grid}@media (width>=820px){.masthead{padding-block:var(--safe-top) 0}.tagline{border-inline-start:1px solid var(--ink-soft);margin-inline-start:0;padding-inline-start:14px}.steps{background:0 0;border:0;gap:4px;margin-inline-start:auto;padding:0;display:flex;position:static}.steps button{block-size:64px;padding-inline:14px}.steps button:before{inset-block:auto 0;inset-inline:14px}}.page{grid-template-columns:[full-width-start] minmax(var(--gutter-start), 1fr) [content-start] min(100% - var(--gutter-start) - var(--gutter-end), var(--content)) [content-end] minmax(var(--gutter-end), 1fr) [full-width-end];padding-block:clamp(1.125rem, .33rem + 3.26vw, 2rem) calc(var(--bottom-bar) + clamp(1.75rem, .62rem + 4.65vw, 3rem));align-content:start;display:grid}.page>*{grid-column:content}.step-head{margin-block-end:16px}.title{letter-spacing:-.035em;margin:0;font-size:2.15rem;font-weight:820;font-stretch:118%;line-height:1}.hint{color:var(--muted);margin-block-start:6px;font-size:.92rem}.step-head .hint{max-inline-size:36ch}button,.button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}.primary,.ghost,.button{letter-spacing:-.005em;text-align:center;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-block-size:52px;padding-inline:22px;font-size:1rem;font-weight:660;transition:background-color .15s,color .15s;display:inline-flex}.primary{background:var(--ink);color:var(--card)}.primary:disabled{color:oklch(95.28% .0127 86.8);background:oklch(77.53% .024 84.6)}.ghost{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink);background:0 0}.ghost:disabled{color:oklch(67.46% .0244 87.2);box-shadow:inset 0 0 0 1.5px var(--rule-strong)}.primary:active:not(:disabled),.ghost:active:not(:disabled),.button:active{translate:0 1px}.button{white-space:nowrap}.row2>.primary,.row2>.ghost{min-inline-size:0;padding-inline:12px;line-height:1.2}.wide{inline-size:100%}.square{block-size:44px;inline-size:44px;box-shadow:inset 0 0 0 1.5px var(--rule);background:var(--card);border-radius:6px;flex:none;place-items:center;font-size:1.15rem;font-weight:600;display:grid}.square:disabled{color:var(--rule-strong);background:0 0}.link{min-block-size:44px;color:var(--ink);text-underline-offset:4px;align-items:center;padding-inline:4px;font-size:.92rem;font-weight:560;text-decoration:underline;text-decoration-thickness:1.5px;transition:opacity .1s;display:inline-flex}.link:active{opacity:.6}.danger{color:var(--pencil-ink)}:is(.chip,.square,.tool,.thumb,.swatch,.booth-close,.round):active:not(:disabled){scale:.97}@media (hover:hover) and (pointer:fine){.primary:hover:not(:disabled){background:var(--black)}:is(.ghost,.tool):hover:not(:disabled){background:color-mix(in oklch, var(--ink) 5%, transparent)}.steps button:hover:not(.on){color:oklch(83.71% .019 86.2)}}.contact-sheet{--thumb:clamp(6.125rem, 3.74rem + 9.77vw, 8.75rem);grid-template-columns:repeat(auto-fill, minmax(var(--thumb), 1fr));margin-inline:calc(-1 * var(--bleed));background:var(--sheet);border-radius:2px;gap:clamp(6px,.15rem + .93vw,10px) clamp(8px,.16rem + 1.4vw,14px);padding-block:clamp(12px,.41rem + 1.4vw,18px) clamp(6px,.26rem + .47vw,8px);padding-inline:clamp(10px,.29rem + 1.4vw,16px);display:grid}.thumb{text-align:start;gap:3px;display:grid}.thumb-img{aspect-ratio:4/5;background:var(--sheet-cell);grid-template:minmax(0,1fr)/minmax(0,1fr);display:grid;position:relative}.thumb-img>*{grid-area:1/1;position:relative}.thumb-img img{object-fit:cover;block-size:100%;inline-size:100%;transition:opacity .15s;display:block}.contact-sheet:has(.selected) .thumb:not(.selected) img{opacity:.72}.grease{pointer-events:none;block-size:calc(100% + 8px);inline-size:calc(100% + 8px);position:absolute;inset:-4px;overflow:visible}.grease path{fill:none;stroke:var(--pencil);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.badge{background:var(--sheet);min-inline-size:30px;font-family:var(--hand);text-align:center;color:var(--pencil);border-end-end-radius:6px;place-self:start;padding:0 7px 2px 5px;font-size:1.9rem;font-weight:700;line-height:1}.edge{min-block-size:16px;color:var(--edge);font-family:var(--mono);letter-spacing:.04em;justify-content:space-between;align-items:center;font-size:.66rem;display:flex}.tag{background:var(--edge);color:var(--sheet);font-family:var(--mono);border-radius:2px;padding-inline:5px;font-size:.62rem;font-weight:700;line-height:1.5}.empty{text-align:center;min-block-size:min(26rem,55svh);color:var(--muted);border:1.5px dashed var(--rule);border-radius:4px;align-content:center;justify-items:center;gap:8px;padding:44px 20px;display:grid}.empty>p:not(.empty-title){max-inline-size:32ch}.empty-title{color:var(--ink);letter-spacing:-.02em;font-size:1.25rem;font-weight:760;font-stretch:112%}.empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;inline-size:100%;margin-block-start:10px;display:flex}.empty-actions>*{flex:12rem;max-inline-size:18rem}.dock{z-index:10;background:var(--card);inline-size:min(100%,520px);box-shadow:0 0 0 1.5px var(--ink), 0 10px 24px -14px color-mix(in oklch, var(--ink) 60%, transparent);border-radius:6px;gap:4px;margin-block-start:18px;margin-inline:auto;padding:6px 10px 10px;display:grid;position:sticky;inset-block-end:calc(var(--bottom-bar) + var(--float-gap))}.dock-row{flex-wrap:wrap;align-items:center;column-gap:12px;font-size:.92rem;display:flex}.dock-count{color:var(--muted);margin-inline-end:auto}.dock-count strong{color:var(--ink);font-size:1.05rem}.dock-actions{gap:8px;display:flex}.dock-actions>.primary{flex:1;padding-inline:12px}.tool{min-block-size:52px;inline-size:60px;box-shadow:inset 0 0 0 1.5px var(--ink);cursor:pointer;border-radius:6px;flex:none;align-content:center;place-items:center;gap:1px;font-size:.72rem;font-weight:660;font-stretch:88%;transition:background-color .15s;display:grid}.tool svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;block-size:1.9em;inline-size:1.9em}.shoot-tool circle{fill:var(--pencil);stroke:var(--pencil)}.booth-mode{block-size:100dvh;max-block-size:none;inline-size:100%;max-inline-size:none;padding-block:calc(var(--safe-top) + 8px) calc(var(--safe-bottom) + 18px);padding-inline:var(--gutter-start) var(--gutter-end);background:var(--sheet);color:var(--card);overscroll-behavior:contain;border:0;margin:0;inset:0}.booth-mode[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:12px;display:grid}.booth-mode::backdrop{background:var(--sheet)}.booth-bar{align-items:center;gap:12px;display:flex}.booth-close{min-block-size:44px;box-shadow:inset 0 0 0 1.5px var(--card);border-radius:6px;padding-inline:16px;font-weight:660;font-stretch:92%}.booth-hint{color:oklch(71.74% .0214 84.6);font-family:var(--mono);text-align:end;margin-inline-start:auto;font-size:.75rem}.booth-frame{place-items:center;display:grid;container-type:size}.viewfinder{inline-size:min(100cqi,75cqb + 5px,560px);padding:10px;position:relative}.crop{border:0 solid var(--card);block-size:22px;inline-size:22px;position:absolute}.crop.tl{border-block-start-width:2px;border-inline-start-width:2px;inset-block-start:0;inset-inline-start:0}.crop.tr{border-block-start-width:2px;border-inline-end-width:2px;inset-block-start:0;inset-inline-end:0}.crop.bl{border-block-end-width:2px;border-inline-start-width:2px;inset-block-end:0;inset-inline-start:0}.crop.br{border-block-end-width:2px;border-inline-end-width:2px;inset-block-end:0;inset-inline-end:0}.booth{aspect-ratio:3/4;background:var(--ink);color:oklch(86.5% .0188 86.2);border-radius:3px;grid-template:minmax(0,1fr)/minmax(0,1fr);display:grid;position:relative;overflow:clip}.booth>*{grid-area:1/1;position:relative}.booth:after{content:"";background:var(--white);opacity:0;pointer-events:none;transition:opacity .35s var(--ease-out);position:absolute;inset:0}.booth.flash:after{opacity:.95;transition:none}.booth video{object-fit:cover;block-size:100%;inline-size:100%;display:block}.booth video.mirror{scale:-1 1}.booth-msg{text-align:center;color:oklch(71.74% .0214 84.6);align-content:center;gap:10px;padding:28px;font-size:.95rem;display:grid}.booth-msg-title{color:var(--card);letter-spacing:-.02em;font-size:1.35rem;font-weight:760;font-stretch:112%}.countdown{color:var(--card);text-shadow:0 4px 30px oklch(0% 0 none/.5);place-self:center;font-size:10rem;font-weight:900;font-stretch:125%;line-height:1}.booth-thumbs{place-self:end start;gap:6px;margin:12px;display:flex}.booth-thumbs img{object-fit:cover;border:3px solid var(--card);block-size:46px;inline-size:46px}.shoot-controls{justify-content:center;align-items:center;gap:26px;display:flex}.booth-mode .ghost{color:var(--card);box-shadow:inset 0 0 0 1.5px var(--card)}.booth-mode .ghost:disabled{color:var(--muted);box-shadow:inset 0 0 0 1.5px var(--ink-soft)}.round{border-radius:50%;min-block-size:64px;inline-size:64px;padding:0;font-size:.85rem}.shutter{background:var(--pencil);block-size:86px;inline-size:86px;box-shadow:0 0 0 4px var(--sheet), 0 0 0 6px var(--card);color:var(--white);border-radius:50%;font-size:.95rem;font-weight:760;font-stretch:90%}.shutter:active:not(:disabled){scale:.95}.shutter:disabled{background:oklch(74.39% .0505 40.7)}.shoot-alt{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.shoot-alt .button{flex:160px;max-inline-size:260px}.booth-mode .shoot-alt .primary{background:var(--card);color:var(--ink)}.design,.order{gap:8px 40px;display:grid}.strip-stage{place-items:center;padding-block:18px 30px;display:grid}.strip-mount{inline-size:min(42vw,180px);display:block;position:relative;rotate:-1.6deg}.strip-mount:before{content:"";z-index:1;background:var(--tape);block-size:22px;inline-size:66px;margin-inline:auto;position:absolute;inset-block-start:-11px;inset-inline:0;rotate:3deg;box-shadow:0 1px 2px oklch(0% 0 none/.12)}.strip-canvas{aspect-ratio:1/3;block-size:auto;inline-size:100%;box-shadow:0 1px 1px color-mix(in oklch, var(--ink) 20%, transparent), 0 16px 28px -12px var(--shadow-warm);display:block}.strip-canvas.stale{opacity:.6;transition:opacity .2s .3s}.strip-placeholder{aspect-ratio:1/3;border:1.5px dashed var(--rule);inline-size:min(42vw,180px);color:var(--muted);text-align:center;place-items:center;padding:12px;font-size:.85rem;display:grid}@media (width>=820px){.design{grid-template-columns:minmax(240px,320px) 1fr;align-items:start}.order{grid-template-columns:minmax(280px,400px) 1fr;align-items:start}:is(.design,.order)>.step-head{grid-column:1/-1}.preview-col,.sheet-col{position:sticky;inset-block-start:24px}.strip-mount{inline-size:min(100%,240px,33.3333dvh - 96.6667px)}}.controls{gap:26px;min-inline-size:0;display:grid;container-type:inline-size}fieldset{border:0;border-block-start:2px solid var(--ink);gap:12px;min-inline-size:0;margin:0;padding:10px 0 0;display:grid}legend{float:inline-start;text-transform:uppercase;letter-spacing:.06em;align-items:baseline;gap:10px;inline-size:100%;padding:0;font-size:.82rem;font-weight:720;font-stretch:80%;display:flex}.legend-value{color:var(--muted);text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:500;font-stretch:100%}.frame-list{margin:0;padding:0;list-style:none;display:grid}.frame-row{border-block-end:1px solid var(--rule);align-items:center;gap:12px;padding-block:6px;display:flex}.frame-row:last-child{border-block-end:0}.frame-n{inline-size:18px;font-family:var(--hand);color:var(--pencil);text-align:center;font-size:1.6rem;font-weight:700;line-height:1}.frame-thumb{background:var(--paper-deep);border-radius:2px;flex:none;block-size:56px;inline-size:56px;transition:box-shadow .15s;overflow:clip}.frame-thumb img{object-fit:cover;block-size:100%;inline-size:100%;display:block}.frame-row.active .frame-thumb{box-shadow:0 0 0 2px var(--paper), 0 0 0 4.5px var(--pencil)}.frame-meta{min-inline-size:0;color:var(--ink-soft);flex:1;font-size:.92rem;display:grid}.frame-meta em{color:var(--pencil-ink);font-size:.8rem;font-style:normal;font-weight:600}.frame-moves{gap:6px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--card);min-block-size:44px;box-shadow:inset 0 0 0 1.5px var(--rule);border-radius:6px;padding-inline:14px;font-size:.95rem;transition:background-color .12s,color .12s,box-shadow .12s}.chip.on{background:var(--ink);color:var(--card);box-shadow:inset 0 0 0 1.5px var(--ink)}.font-chip{font-size:1.05rem}.swatches{grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:10px 8px;display:grid}.swatch{aspect-ratio:1/2.1;background:var(--bg);box-shadow:0 0 0 1px color-mix(in oklch, var(--ink) 18%, transparent);transition:box-shadow .15s var(--ease-out);border-radius:2px;position:relative}.swatch:after{content:"";background:linear-gradient(var(--bg) 0 0) 0 33.3% / 100% 3px no-repeat, linear-gradient(var(--bg) 0 0) 0 66.6% / 100% 3px no-repeat, var(--fg);opacity:.32;position:absolute;inset:12% 16% 30%}.swatch.on{box-shadow:0 0 0 1.5px var(--ink), 3px 4px 0 var(--ink);translate:-2px -3px}.swatch.pat-dots{background:radial-gradient(var(--pat) 22%, transparent 24%) 0 0 / 9px 9px, var(--bg)}.swatch.pat-stripes{background:repeating-linear-gradient(90deg, var(--pat) 0 4px, var(--bg) 4px 8px)}.swatch.pat-checker{background:repeating-conic-gradient(var(--pat) 0 25%, var(--bg) 0 50%) 0 0 / 10px 10px}.swatch.pat-hearts,.swatch.pat-stars{background:radial-gradient(var(--pat) 18%, transparent 20%) 0 0 / 12px 12px, var(--bg)}.swatch.pat-film{background:repeating-linear-gradient(180deg, var(--pat) 0 3px, transparent 3px 8px) left 2px top 0 / 3px 100% no-repeat, repeating-linear-gradient(180deg, var(--pat) 0 3px, transparent 3px 8px) right 2px top 0 / 3px 100% no-repeat, var(--bg)}.field{background:var(--card);min-block-size:48px;inline-size:100%;box-shadow:inset 0 0 0 1.5px var(--rule);border:0;border-radius:6px;padding:10px 12px;transition:box-shadow .12s}.field::placeholder{color:var(--faint)}.field:focus{box-shadow:inset 0 0 0 2px var(--ink)}.field:focus-visible{outline-color:#0000}textarea.field{resize:vertical}.field.small{min-block-size:44px;font-family:var(--mono)}.labeled{gap:4px;min-inline-size:0;display:grid}.labeled>span{color:var(--ink-soft);font-size:.78rem;font-weight:640;font-stretch:85%}.labeled i{color:var(--muted);font-style:normal;font-weight:450}.toggle{cursor:pointer;align-items:center;gap:10px;min-block-size:44px;font-size:.95rem;display:inline-flex}.toggle input{appearance:none;background:var(--card);block-size:24px;inline-size:24px;box-shadow:inset 0 0 0 1.5px var(--ink);cursor:pointer;border-radius:4px;flex:none;margin:0;position:relative}.toggle input:checked{background:var(--ink)}.toggle input:checked:after{content:"";border:solid var(--card);border-width:0 2.5px 2.5px 0;block-size:12px;inline-size:6px;position:absolute;inset-block-start:3px;inset-inline-start:8px;rotate:45deg}.date-row{align-items:center;gap:12px;display:flex}.date-row .field{flex:1}.ai{background:var(--paper-deep);border-radius:6px;gap:10px;padding:14px;display:grid}.ai-head{gap:2px;display:grid}.ai-head .hint{margin:0;font-size:.85rem}.ai-title{font-weight:720}.ai .chip:not(.on){background:var(--card)}.ai-go{background:var(--card);min-block-size:48px}.stamp{border:2px solid var(--pencil);color:var(--pencil-ink);text-transform:uppercase;letter-spacing:.06em;border-radius:4px;justify-self:start;padding:6px 10px;font-size:.8rem;font-weight:760;font-stretch:80%;rotate:-1.5deg}.notice{border:1.5px dashed var(--rule);color:var(--ink-soft);border-radius:4px;gap:6px;padding:18px;display:grid}.notice-title{color:var(--ink);font-size:1.1rem;font-weight:760}.sheet-col{justify-items:center;gap:12px;display:grid}.sheet-mount{background:linear-gradient(var(--ink) 0 0) 50% 0 / 1.5px 10px no-repeat, linear-gradient(var(--ink) 0 0) 50% 100% / 1.5px 10px no-repeat;inline-size:min(100%,300px);padding:14px;display:grid}.sheet-mount>*{grid-area:1/1}.sheet-canvas{aspect-ratio:2/3;block-size:auto;inline-size:100%;box-shadow:0 1px 1px color-mix(in oklch, var(--ink) 20%, transparent), 0 18px 30px -16px var(--shadow-warm);display:block}.cut-line{border-inline-start:1.5px dashed color-mix(in oklch, var(--ink) 35%, transparent);pointer-events:none;justify-self:center}.sheet-caption{font-family:var(--mono);color:var(--muted);font-size:.75rem}.stepper-input{justify-content:space-between;align-items:center;gap:10px;display:flex}.stepper-input .count{justify-items:center;gap:2px;display:grid}.stepper-input strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:760;font-stretch:110%}.stepper-input small{color:var(--muted);font-size:.8rem}.segmented{box-shadow:inset 0 0 0 1.5px var(--ink);border-radius:6px;grid-auto-columns:1fr;grid-auto-flow:column;display:grid;overflow:clip}.segmented label{cursor:pointer;border-inline-start:1.5px solid var(--ink);align-content:center;justify-items:center;min-block-size:56px;padding:6px 4px;font-size:.95rem;font-weight:640;transition:background-color .12s,color .12s;display:grid}.segmented label:first-child{border-inline-start:0}.segmented label:active:not(.on){background:color-mix(in oklch, var(--ink) 6%, transparent)}.segmented small{color:var(--muted);font-size:.75rem;font-weight:450}.segmented label.on{background:var(--ink);color:var(--card)}.segmented label.on small{color:oklch(75.24% .0225 86)}.segmented label:has(:focus-visible){outline:2.5px solid var(--pencil);outline-offset:-4px}.row2,.row3{gap:10px;display:grid}.row2{grid-template-columns:1fr 1fr}.row3{grid-template-columns:1.5fr .8fr 1fr}@container (width<=23rem){.row3{grid-template-columns:1fr 1fr}.row3>:first-child{grid-column:1/-1}}.receipt{background:var(--receipt);font-family:var(--mono);font-variant-numeric:tabular-nums;box-shadow:0 1px 2px color-mix(in oklch, var(--ink) 15%, transparent);-webkit-mask:radial-gradient(circle at 6px 100%, transparent 5px, var(--black) 5.5px) 0 0 / 12px 100%;mask:radial-gradient(circle at 6px 100%, transparent 5px, var(--black) 5.5px) 0 0 / 12px 100%;gap:6px;padding:18px 18px 26px;font-size:.85rem;display:grid}.receipt-head{font-family:var(--sans);text-transform:uppercase;letter-spacing:.06em;margin-block-end:4px;font-size:.82rem;font-weight:720;font-stretch:80%}.receipt>div{justify-content:space-between;gap:12px;display:flex}.receipt .total{border-block-start:1.5px dashed var(--ink);margin-block-start:4px;padding-block-start:8px;font-size:1.05rem;font-weight:700}.receipt-note{font-family:var(--sans);color:var(--muted);margin-block-start:4px;font-size:.85rem}.error{border-inline-start:3px solid var(--pencil);color:var(--pencil-ink);margin:0;padding-inline-start:10px;font-size:.92rem}.confirm{background:var(--card);box-shadow:inset 0 0 0 2px var(--ink), 4px 5px 0 var(--ink);border-radius:6px;gap:12px;padding:16px;display:grid}.confirm .address-lines{border-inline-start:2px solid var(--rule-strong);padding-inline-start:12px}.ship-label{background:var(--receipt);box-shadow:inset 0 0 0 1px var(--rule), 0 1px 2px color-mix(in oklch, var(--ink) 15%, transparent);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px 14px 16px 16px;display:grid}.address-lines{min-inline-size:0;font-style:normal;font-family:var(--mono);overflow-wrap:anywhere;gap:0;font-size:.88rem;line-height:1.4;display:grid}.address-lines strong{font-family:var(--sans);margin-block-end:2px;font-size:1.02rem;font-weight:700;line-height:1.5}.ship-change{min-block-size:44px;padding-inline:16px}.country-field{inline-size:5.5rem}.field-note{margin:0;font-size:.85rem}.orders{margin:0;padding:0;list-style:none;display:grid}.orders li{border-block-end:1px solid var(--rule);gap:2px;padding-block:10px 4px;display:grid}.orders li:first-child{padding-block-start:0}.orders li:last-child{border-block-end:0}.orders .hint{margin:0}.order-line{align-items:center;gap:8px;display:flex}.order-id{font-family:var(--mono);font-size:.88rem;font-weight:700}.order-stage{color:var(--ok);margin-inline-start:auto;font-size:.9rem;font-weight:640}.order-actions{gap:14px;display:flex}.notify{gap:6px;display:grid}.switch{background:var(--card);min-block-size:48px;box-shadow:inset 0 0 0 1.5px var(--rule-strong);cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;gap:16px;padding:8px 12px;display:flex}.switch:has(:disabled){cursor:default}.switch-label{gap:1px;font-size:.95rem;font-weight:620;display:grid}.switch-label small{color:var(--muted);font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:400}.switch-input{appearance:none;background:var(--paper-deep);block-size:26px;inline-size:46px;box-shadow:inset 0 0 0 1.5px var(--ink);cursor:inherit;border-radius:13px;flex:none;margin:0;position:relative}.switch-input:after{content:"";background:var(--ink);border-radius:50%;block-size:18px;inline-size:18px;position:absolute;inset-block-start:4px;inset-inline-start:4px}.switch-input:checked{background:var(--ink)}.switch-input:checked:after{background:var(--edge);translate:20px}.switch-input:disabled{opacity:.45}.switch-input:focus-visible{outline:2px solid var(--pencil);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.switch-input:after{transition:translate .16s var(--ease-out)}}.notify-hint{border:1.5px dashed var(--rule);color:var(--ink-soft);border-radius:4px;margin:0;padding:10px 12px;font-size:.88rem}.notify-hint i{font-style:normal;font-weight:640}.unresolved-list{gap:12px;margin-block-end:22px;display:grid}.unresolved{background:var(--pencil-wash);box-shadow:inset 0 0 0 2px var(--pencil);border-radius:6px;gap:10px;padding:16px;font-size:.95rem;display:grid}.unresolved-title{letter-spacing:-.015em;font-size:1.1rem;font-weight:780;font-stretch:108%}.unresolved .hint{color:var(--ink-soft);margin:0}.unresolved .ghost.danger{color:var(--pencil-ink);box-shadow:inset 0 0 0 1.5px var(--pencil)}.toast{z-index:60;background:var(--ink);inline-size:max-content;max-inline-size:calc(100% - 32px);color:var(--card);pointer-events:none;border-radius:6px;margin-inline:auto;padding:12px 16px;font-size:.92rem;position:fixed;inset-block-end:calc(var(--bottom-bar) + 1.5 * var(--float-gap));inset-inline:0;box-shadow:0 12px 28px -12px oklch(0% 0 none/.6)}.app:has(.dock) .toast{inset-block-end:calc(var(--bottom-bar) + var(--float-gap) + 8rem)}@keyframes fade-in{0%{opacity:0}}.toast{animation:fade-in .22s var(--ease-out)}.gate{min-block-size:100dvh;padding-block:calc(var(--safe-top) + 24px) calc(var(--safe-bottom) + 24px);padding-inline:var(--gutter-start) var(--gutter-end);place-items:center;display:grid}.envelope{background:var(--card);inline-size:min(100%,25rem);box-shadow:0 1px 2px color-mix(in oklch, var(--ink) 16%, transparent), 0 28px 44px -28px var(--shadow-warm);border-radius:3px;position:relative}.envelope-flap{z-index:1;block-size:5.5rem;filter:drop-shadow(0 1.5px 0 var(--rule-strong));position:relative}.envelope-flap:before{content:"";background:var(--paper-deep);clip-path:polygon(0 0,100% 0,50% 100%);border-radius:3px 3px 0 0;position:absolute;inset:0}.envelope-seal{background:var(--ink);border-radius:50%;place-items:center;block-size:3.25rem;inline-size:3.25rem;display:grid;position:absolute;inset-block-start:100%;inset-inline-start:50%;translate:-50% -50%;rotate:-8deg}.envelope-band{background:var(--pencil);color:var(--white);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;gap:12px;margin-block-start:2.75rem;padding:6px 22px;font-size:.68rem;font-weight:700;display:flex}.envelope-body{gap:14px;padding:20px 22px 22px;display:grid}.envelope-title{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:1.9rem;font-weight:820;font-stretch:118%;line-height:1.05}.envelope-line{color:var(--ink-soft);text-wrap:pretty}.envelope-line strong{color:var(--ink);overflow-wrap:anywhere}.envelope-fields{margin:0 0 6px;display:grid}.envelope-fields>div{border-block-end:1px solid var(--rule);grid-template-columns:3.5rem 1fr;align-items:baseline;padding-block:4px 0;display:grid}.envelope-fields dt{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem}.envelope-fields dd{color:var(--pencil-ink);font-family:var(--hand);margin:0;font-size:1.45rem;font-weight:700;line-height:1.25}.envelope-notice{background:var(--pencil-wash);color:var(--ink-soft);border-radius:4px;padding:10px 12px;font-size:.92rem}.envelope-actions{gap:10px;display:grid}.envelope a.primary{text-decoration:none}.envelope-fine{color:var(--muted);text-align:center;text-wrap:pretty;font-size:.8rem}.envelope-status{color:var(--ink-soft);font-family:var(--mono);text-align:center;padding-block:18px 10px;font-size:.85rem}.account{border-block-start:1px dashed var(--rule);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 12px;margin-block-start:32px;padding-block-start:6px;font-size:.8rem;display:flex}.account strong{color:var(--ink-soft);overflow-wrap:anywhere;font-weight:600}.account .link{color:var(--ink-soft);font-size:.8rem}@media (prefers-reduced-motion:no-preference){.primary,.ghost,.button{transition:translate .1s var(--ease-out), background-color .15s, color .15s}:is(.chip,.square,.tool,.thumb,.booth-close,.round,.shutter){transition:scale .12s var(--ease-out), background-color .12s, color .12s, box-shadow .12s}.swatch{transition:translate .15s var(--ease-out), scale .12s var(--ease-out), box-shadow .15s var(--ease-out)}.steps button:before{transition:scale .2s var(--ease-out)}.stage{animation:enter .32s var(--ease-out)}.grease{animation:scrawl .35s var(--ease-out)}.countdown{animation:tick .75s var(--ease-out) both}.booth-thumbs img{animation:drop .4s var(--ease-out)}.toast{animation:toast .22s var(--ease-out)}.envelope-seal{animation:seal .45s var(--ease-out) .1s both}}@keyframes seal{0%{opacity:0;scale:1.5}}@keyframes enter{0%{opacity:0;translate:0 6px}}@keyframes scrawl{0%{opacity:0;rotate:-1deg;scale:1.06}}@keyframes tick{0%{opacity:0;scale:1.4}30%{opacity:1}to{opacity:.85;scale:.92}}@keyframes drop{0%{opacity:0;translate:0 -16px;rotate:-6deg}}@keyframes toast{0%{opacity:0;translate:0 10px}}
