@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2")}:root{color:var(--color-ink);background:var(--color-blush);font-synthesis:none;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;--color-blush:#fff4f8;--color-soft-pink:#f5c7dd;--color-lavender:#e9ddfb;--color-deep-rose:#b83275;--color-ink:#352638;--color-workspace:#fff;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--radius-control:1rem;--radius-mark:2rem;--touch-target:44px;font-family:Nunito,system-ui,sans-serif}*,:before,:after{box-sizing:border-box}body{overscroll-behavior:none;min-width:0;margin:0;overflow:hidden}button,input{font:inherit}button{min-width:var(--touch-target);min-height:var(--touch-target)}:focus-visible{outline:3px solid var(--color-deep-rose);outline-offset:4px}.app-shell{background:var(--color-workspace);width:100%;height:100dvh;position:relative}[hidden]{display:none!important}.image-layer{inset:0;inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute;overflow:hidden}.reference-image{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;pointer-events:none;max-width:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.empty-state{background:var(--color-blush);padding:var(--space-3);padding-top:max(var(--space-3), env(safe-area-inset-top,0px));padding-right:max(var(--space-3), env(safe-area-inset-right,0px));padding-bottom:max(var(--space-3), env(safe-area-inset-bottom,0px));padding-left:max(var(--space-3), env(safe-area-inset-left,0px));display:flex;position:absolute;inset:0;overflow:auto}.welcome{justify-items:center;gap:var(--space-2);text-align:center;width:100%;max-width:32rem;margin:auto;display:grid}.lettermark{border-radius:var(--radius-mark);background:var(--color-soft-pink);width:7rem;height:7rem;color:var(--color-ink);justify-content:center;align-items:center;font-size:4rem;font-weight:800;line-height:1;display:flex}.lettermark span{margin-top:var(--space-3);align-self:flex-start;font-size:1.75rem}.wordmark{font-size:1.5rem;font-weight:800}h1,p{margin:0}h1{overflow-wrap:break-word;max-width:22rem;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;line-height:1.2}.welcome-copy{max-width:23rem;font-size:1rem;line-height:1.5}.asset-note{max-width:24rem;font-size:.875rem;line-height:1.5}.button{border-radius:var(--radius-control);cursor:pointer;touch-action:manipulation;overflow-wrap:anywhere;border:0;padding:.75rem 1rem;font-weight:700;line-height:1.25}.button-primary{color:#fff;background:var(--color-deep-rose)}.button-secondary{color:var(--color-ink);background:var(--color-blush);box-shadow:0 2px 12px #3526381a}.button:disabled{cursor:default;opacity:.6}.workspace-controls{z-index:2;top:max(var(--space-2), env(safe-area-inset-top,0px));left:max(var(--space-2), env(safe-area-inset-left,0px));right:max(var(--space-2), env(safe-area-inset-right,0px));justify-content:space-between;gap:var(--space-1);pointer-events:none;display:flex;position:absolute}.workspace-controls .button{pointer-events:auto}.status-area{z-index:1;bottom:max(var(--space-2), env(safe-area-inset-bottom,0px));left:max(var(--space-2), env(safe-area-inset-left,0px));right:max(var(--space-2), env(safe-area-inset-right,0px));justify-items:center;gap:var(--space-1);pointer-events:none;display:grid;position:absolute}.notice{border-radius:var(--radius-control);max-width:30rem;color:var(--color-ink);text-align:center;background:#fff4f8f2;padding:.5rem .75rem;font-size:.875rem;line-height:1.5}.notice-error{border:1px solid var(--color-deep-rose)}.button-unlock{color:var(--color-ink);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#fff4f8e6;margin-left:auto;position:relative;overflow:hidden;box-shadow:0 2px 12px #3526381a}.unlock-progress{background:var(--color-deep-rose);transform-origin:0;pointer-events:none;height:4px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.is-holding{outline:2px solid var(--color-deep-rose);outline-offset:2px}.is-locked{touch-action:none}.is-locked #image-loading,.is-locked #image-error,.is-locked #gesture-hint,.app-shell:not(.is-locked) #wake-warning{display:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
