:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#0d0a0a;--cream:#f0eddb;--mar:#7a0b0f;--red:#c8102e;--paper:#f8f5e8;--fg-d:#f0eddb;--muted-d:#f0eddbb8;--fg-c:#140e0e;--muted-c:#574f47;--line-c:#140e0e21;--silver:#cfcbc2;--coat:#141111;--head:"Fredoka", "Inter Tight", system-ui, sans-serif;--body:"Inter Tight", system-ui, sans-serif;--m-150:.15s;--m-200:.2s;--m-300:.3s;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in:cubic-bezier(.7,0,.84,0)}*{box-sizing:border-box}html,body{margin:0}body{background:var(--ink);color:var(--fg-d);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:16px}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:30;background:var(--ink);position:fixed;inset:0 0 auto}img{max-width:100%;display:block}button,input,textarea{font:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:6px}.page{background:var(--paper);max-width:480px;min-height:100vh;margin:0 auto}.gut{padding-left:max(18px, env(safe-area-inset-left,0px));padding-right:max(18px, env(safe-area-inset-right,0px))}.h{font-family:var(--head);letter-spacing:-.01em;margin:0;font-weight:600}.top{top:env(safe-area-inset-top,0px);z-index:20;-webkit-backdrop-filter:blur(10px);background:#0d0a0af0;align-items:center;gap:8px;height:56px;display:flex;position:sticky}.top a.back{width:44px;height:44px;color:var(--fg-d);border-radius:12px;justify-content:center;align-items:center;margin-left:-10px;display:inline-flex}.top .t{font:600 16px var(--body);flex:1}.top img{height:34px}.stage{top:calc(56px + env(safe-area-inset-top,0px));z-index:10;background:radial-gradient(circle at 50% 46%, #9b0d14 0%, #4d080b 38%, var(--ink) 74%);flex-direction:column;align-items:center;gap:8px;padding-block:12px 10px;display:flex;position:sticky;overflow:hidden;box-shadow:0 10px 24px -14px #0009}.card-wrap{perspective:1200px;--budget:max(200px, calc(100vh - 420px));width:min(44vw, 196px, calc(var(--budget) * 54 / 85.6))}.card-wrap.landscape{width:min(84vw, 340px, calc(var(--budget) * 85.6 / 54))}@supports (height:100svh){.card-wrap{--budget:max(200px, calc(100svh - 420px))}}.card3d{aspect-ratio:54/85.6;transform-style:preserve-3d;transition:transform .42s var(--ease-out);position:relative}.card3d.flipped{transform:rotateY(180deg)}.landscape .card3d{aspect-ratio:85.6/54}.landscape .face.back{padding:12px 18px 34px}.landscape .face.back .mark{width:18%;bottom:10px}.face{backface-visibility:hidden;background:var(--coat);border-radius:12px;position:absolute;inset:0;overflow:hidden;box-shadow:0 30px 50px -18px #000000e6,inset 0 0 0 1px #ffffff14}.face.front{touch-action:none;cursor:grab}.face.front:active{cursor:grabbing}.face canvas{width:100%;height:100%;display:block;position:absolute;inset:0}#cvEng{clip-path:inset(0 0 100%);transition:clip-path .9s cubic-bezier(.45,0,.55,1)}.engraved #cvEng{clip-path:inset(0)}.laser{opacity:0;pointer-events:none;background:#ff3341;height:2px;position:absolute;top:0;left:-10%;right:-10%;box-shadow:0 0 12px 3px #ff3341cc,0 0 36px 8px #c8102e8c}.sweep .laser{animation:.9s cubic-bezier(.45,0,.55,1) sweep}@keyframes sweep{0%{opacity:1;top:0}92%{opacity:1}to{opacity:0;top:100%}}.face.back{text-align:center;background:linear-gradient(160deg,#221d1d 0%,#110d0d 55%,#1a1515 100%);flex-direction:column;justify-content:center;align-items:center;padding:18px 14px 44px;display:flex;transform:rotateY(180deg)}.msg{color:var(--silver);white-space:pre-line;word-break:break-word;line-height:1.35}.msg.f-clean{font:600 17px/1.4 var(--body)}.msg.f-bubbly{font:600 19px/1.3 var(--head)}.msg.f-hand{font:600 25px/1.15 Caveat,cursive}.msg.long{font-size:14px}.msg.f-hand.long{font-size:21px}.msg.empty{color:#cfcbc259;font-style:italic;font-weight:500}.face.back .mark{opacity:.5;width:30%;position:absolute;bottom:14px;left:50%;translate:-50%}.hint{color:var(--muted-d);align-items:center;gap:8px;min-height:18px;font-size:12px;display:flex}.stage-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.stage-row .pill[aria-pressed=true]{box-shadow:0 0 0 1.5px var(--fg-d) inset}.chip-row{display:contents}.pill{min-height:32px;color:var(--fg-d);background:#0d0a0a8c;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12px;display:inline-flex}.pill.warn{color:#f3d38a;background:#e8aa282e}button.pill{cursor:pointer}.panel{color:var(--fg-c);padding-block:14px 140px}.pane[hidden]{display:none!important}.pane{animation:paneIn var(--m-200) var(--ease-out);gap:14px;display:grid}@keyframes paneIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.pane h2{font-size:22px}.sub{color:var(--muted-c);margin:4px 0 0;font-size:14px;line-height:1.45}.upload{box-shadow:0 0 0 1px var(--line-c) inset;cursor:pointer;background:#fff;border-radius:18px;align-items:center;gap:14px;padding:14px;display:flex}.upload .ic{background:var(--mar);width:48px;height:48px;color:var(--cream);border-radius:14px;flex:none;justify-content:center;align-items:center;display:flex}.upload b{font-size:16px;display:block}.upload span{color:var(--muted-c);font-size:13px}.upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.toggle{cursor:pointer;width:52px;height:32px;transition:background-color var(--m-200) var(--ease-out);background:#cfc8b4;border:0;border-radius:999px;flex:none;position:relative}.toggle:after{content:"";width:26px;height:26px;transition:transform var(--m-200) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.toggle[aria-checked=true]{background:var(--mar)}.toggle[aria-checked=true]:after{transform:translate(20px)}.lbl b{font-size:15px;font-weight:600;display:block}.lbl span{color:var(--muted-c);font-size:13px}.slider{gap:6px;display:grid}.slider label{justify-content:space-between;font-size:14px;font-weight:500;display:flex}.slider label output{color:var(--muted-c);font-variant-numeric:tabular-nums}input[type=range]{appearance:none;background:0 0;width:100%;height:32px}input[type=range]::-webkit-slider-runnable-track{background:#d9d2be;border-radius:4px;height:4px}input[type=range]::-moz-range-track{background:#d9d2be;border-radius:4px;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--mar);border:3px solid #fff;border-radius:50%;width:26px;height:26px;margin-top:-11px;box-shadow:0 1px 4px #0000004d}input[type=range]::-moz-range-thumb{background:var(--mar);border:3px solid #fff;border-radius:50%;width:22px;height:22px}.tools{gap:8px;display:flex}.tool{min-height:48px;box-shadow:0 0 0 1px var(--line-c) inset;color:var(--fg-c);cursor:pointer;background:#fff;border:0;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:500;display:inline-flex}.tool:active{transform:scale(.97)}textarea{resize:none;width:100%;min-height:96px;box-shadow:0 0 0 1px var(--line-c) inset;color:var(--fg-c);background:#fff;border:0;border-radius:14px;padding:12px 14px;font-size:16px;line-height:1.45}textarea:focus{outline:2px solid var(--mar)}.field-l{justify-content:space-between;margin-bottom:6px;font-size:14px;font-weight:500;display:flex}.field-l span{color:var(--muted-c);font-variant-numeric:tabular-nums;font-weight:400}.ideas{scrollbar-width:none;margin-inline:calc(-1 * max(18px, env(safe-area-inset-left,0px)));padding-inline:max(18px, env(safe-area-inset-left,0px));gap:8px;display:flex;overflow-x:auto}.ideas::-webkit-scrollbar{display:none}.idea{min-height:40px;box-shadow:0 0 0 1px var(--line-c) inset;color:var(--fg-c);cursor:pointer;background:#fff;border:0;border-radius:999px;flex:none;padding:0 14px;font-size:14px}.seg{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.seg.fit{grid-template-columns:repeat(2,minmax(0,1fr))}.seg.fit button{justify-items:center;gap:2px;padding:10px 8px;font-size:14px;font-weight:600;display:grid}.seg.fit button small{color:var(--muted-c);font-size:12px;font-weight:400}.seg button{min-height:52px;box-shadow:0 0 0 1px var(--line-c) inset;color:var(--fg-c);cursor:pointer;background:#fff;border:0;border-radius:14px}.seg button[aria-pressed=true]{box-shadow:0 0 0 2px var(--mar) inset}.seg .s1{font:600 15px var(--body)}.seg .s2{font:600 16px var(--head)}.seg .s3{font:600 21px Caveat,cursive}.summary{box-shadow:0 0 0 1px var(--line-c) inset;background:#fff;border-radius:18px;margin:0;padding:0;list-style:none}.summary li{justify-content:space-between;gap:12px;padding:14px 16px;font-size:15px;display:flex}.summary li+li{border-top:1px solid var(--line-c)}.summary li span:first-child{color:var(--muted-c)}.summary li span:last-child{text-align:right;font-weight:500}.qty{box-shadow:0 0 0 1px var(--line-c) inset;background:#fff;border-radius:14px;align-items:center;display:inline-flex}.qty button{width:44px;height:44px;color:var(--fg-c);cursor:pointer;background:0 0;border:0;font-size:20px}.qty output{text-align:center;font-variant-numeric:tabular-nums;min-width:28px;font-weight:600}.note{color:var(--muted-c);margin:0;font-size:13px;line-height:1.5}.notice{color:var(--fg-c);background:#efeada;border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.55}.notice b{margin-bottom:2px;font-size:14px;font-weight:600;display:block}.notice p{color:var(--muted-c);margin:0}.pv{color:#f0eddbd1;text-align:center;max-width:30ch;margin:0;font-size:12.5px;line-height:1.4}.bar{z-index:25;padding-top:12px;padding-bottom:max(12px, env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line-c);background:#f8f5e8f5;position:fixed;bottom:0;left:0;right:0}.bar .in{align-items:center;gap:12px;max-width:480px;margin:0 auto;display:flex}.bar .meta{color:var(--muted-c);flex:1;font-size:13px;line-height:1.3}.bar .meta b{color:var(--fg-c);font-size:15px;display:block}.prog{gap:4px;width:84px;margin-top:6px;display:flex}.prog i{background:var(--line-c);height:3px;transition:background-color var(--m-200) var(--ease-out);border-radius:2px;flex:1}.prog i.on{background:var(--mar)}.cta{background:var(--fg-c);min-height:52px;color:var(--cream);font:600 16px var(--body);cursor:pointer;transition:transform .1s var(--ease-out);border:0;border-radius:16px;justify-content:center;align-items:center;padding:0 24px;text-decoration:none;display:inline-flex}.cta:active{transform:scale(.97)}.cta.red{background:var(--mar)}.cta.ghost{color:var(--fg-c);box-shadow:0 0 0 1.5px var(--fg-c) inset;background:0 0}.scrim{z-index:40;opacity:0;pointer-events:none;transition:opacity var(--m-200) var(--ease-out);background:#0d0a0a80;position:fixed;inset:0}.scrim.on{opacity:1;pointer-events:auto}.sheet{z-index:41;max-width:480px;padding-top:22px;padding-bottom:max(20px, env(safe-area-inset-bottom,0px));background:var(--paper);color:var(--fg-c);transition:transform var(--m-300) var(--ease-in);border-radius:24px 24px 0 0;gap:14px;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0;transform:translateY(105%)}.sheet.on{transition:transform var(--m-300) var(--ease-out);transform:none}.sheet .done{align-items:center;gap:12px;display:flex}.sheet .done i{background:var(--mar);width:40px;height:40px;color:var(--cream);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.sheet .acts{gap:10px;display:grid}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:50;background:var(--fg-c);color:var(--cream);opacity:0;pointer-events:none;transition:opacity var(--m-200) var(--ease-out);white-space:nowrap;border-radius:999px;padding:10px 16px;font-size:14px;position:fixed;translate:-50%}.toast.on{opacity:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
