@font-face{font-family:Caveat;font-style:normal;font-weight:500 600;font-display:swap;src:url(/fonts/caveat-latin.woff2)format("woff2")}:root{--accent:#e8503a;--accent-dark:#c93f2b;--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--mm:min(1mm, (100vw - 32px) / 88);--bar-h:68px}*{box-sizing:border-box}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,system-ui,sans-serif}button,input,label{font:inherit}.page{flex-direction:column;min-height:100dvh;display:flex}.top{align-items:center;gap:8px;padding:12px 16px;display:flex}.star{margin-left:auto;padding:0 14px;font-size:14px}@media (width<=520px){.wide{display:none}}.brand{color:var(--ink);letter-spacing:-.02em;font-size:22px;font-weight:800;text-decoration:none}.by{color:var(--muted);font-size:13px}.foot{padding:32px 16px calc(24px + env(safe-area-inset-bottom));color:var(--muted);flex-direction:column;align-items:center;gap:6px;margin-top:auto;font-size:13px;display:flex}.foot a{color:var(--ink);font-weight:600;text-decoration:none}.heart{color:var(--accent)}.page:has(.bar) .foot{padding-bottom:calc(var(--bar-h) + 16px + env(safe-area-inset-bottom))}.btn{border:1px solid var(--line);min-height:44px;color:var(--ink);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:#f9fafb}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}.btn.big{border-radius:14px;min-height:64px;padding:0 44px;font-size:20px;box-shadow:0 8px 24px #e8503a4d}.swatch{position:relative}.swatch .dot{border:1px solid #00000026;border-radius:50%;width:20px;height:20px}.swatch input[type=color]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.hero{text-align:center;max-width:720px;margin:0 auto;padding:6vh 16px 24px}.hero h1{letter-spacing:-.02em;margin:0 0 14px;font-size:clamp(30px,6vw,52px);font-weight:800;line-height:1.1}.hero>p{color:var(--muted);margin:0 0 28px;font-size:18px}.or{margin:14px 0 0!important;font-size:14px!important}.privacy{color:var(--muted);font-size:13px}.hero .privacy{margin:6px 0 0!important}.examples{--mm:2.4px;pointer-events:none;justify-content:center;gap:20px;margin:36px 0 0;display:flex}.examples .card{background:#fdfdfb}@media (width<=520px){.examples{--mm:1.4px;gap:0}.examples .card-wrap+.card-wrap{margin-left:-24px}}.steps{text-align:center;grid-template-columns:repeat(3,1fr);gap:20px;margin:56px 0 0;padding:0;list-style:none;display:grid}.steps li{color:var(--muted);flex-direction:column;align-items:center;gap:4px;font-size:14px;display:flex}.steps .icon{margin-bottom:6px;font-size:34px}.steps b{color:var(--ink);font-size:15px}@media (width<=520px){.steps{grid-template-columns:1fr;gap:24px}.hero{padding-top:4vh}}.drop-overlay{z-index:50;border:3px dashed var(--accent);color:var(--accent);pointer-events:none;background:#ffffffeb;border-radius:16px;justify-content:center;align-items:center;margin:12px;font-size:24px;font-weight:700;display:flex;position:fixed;inset:0}.wall{flex-wrap:wrap;justify-content:center;gap:36px 32px;padding:12px 16px 24px;display:flex}.card-wrap{flex-direction:column;align-items:center;gap:12px;display:flex}.card{width:calc(88 * var(--mm));height:calc(107 * var(--mm));padding:calc(4.5 * var(--mm)) calc(4.5 * var(--mm)) 0;transform:rotate(var(--tilt,0deg));-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:0 10px 30px #0000002e,0 1px 3px #0000001f}.photo{width:calc(79 * var(--mm));height:calc(79 * var(--mm));background:#fff;overflow:hidden}.photo img{width:100%;height:100%;display:block}.strip{height:calc(23.5 * var(--mm));justify-content:center;gap:calc(1 * var(--mm));flex-direction:column;display:flex}.strip>*{text-align:center;color:#1f2937;white-space:nowrap;border-radius:4px;width:100%;padding:0;font-family:Caveat,cursive;overflow:hidden}.strip input{background:0 0;border:none;outline:none}.strip input:focus{background:#0000000d}.note{font-size:calc(5.3 * var(--mm));font-weight:600}.date{font-size:calc(3.2 * var(--mm));color:#6b7280!important}.strip input::placeholder{color:#bbb;font-weight:400}@media (pointer:coarse){.note{font-size:max(16px, calc(5.3 * var(--mm)))}.date{font-size:max(16px, calc(3.2 * var(--mm)))}}.controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.controls button{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;padding:0 14px;font-size:14px;font-weight:600}.controls button:hover{background:#f9fafb}.controls button:disabled{opacity:.5;cursor:default}.controls .danger{color:var(--accent)}.hint{text-align:center;color:var(--accent);padding:0 16px;font-size:14px}.bar{z-index:40;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;flex-wrap:nowrap;justify-content:center;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width<=520px){.bar{gap:6px;padding-left:10px;padding-right:10px}.bar .btn{flex:0 auto;min-width:0;padding:0 10px;font-size:14px}.bar .primary{flex:auto}}@media (pointer:coarse){.bar .print{display:none}}@media print{:root{--mm:1mm}@page{size:A4;margin:10mm}body{background:#fff}.page{min-height:0;display:block}.top,.hero,.foot,.bar,.controls,.hint,.drop-overlay{display:none!important}.wall{padding:0;display:block}.card-wrap{vertical-align:top;break-inside:avoid;margin:0 3mm 3mm 0;display:inline-block}.card{box-shadow:none;outline-offset:-.1mm;outline:.2mm dashed #999;transform:none}.strip input{background:0 0!important}.strip input::placeholder{color:#0000}}
