:root{--bg: #f7f5f2;--surface: #ffffff;--text: #1e1919;--text-secondary: #736c64;--border: #dfdcd8;--fill: #efece8;--edge-solid: rgba(247, 245, 242, .97);--edge-clear: rgba(247, 245, 242, 0);--blue: #0061fe;--blue-pressed: #0050d4;--blue-tint: #e5eeff;--blue-on-tint: #0050d4;--danger: #d52b1e;--edge: 0 0 0 1px rgba(0, 0, 0, .06), 0 1px 2px -1px rgba(0, 0, 0, .06), 0 2px 4px 0 rgba(0, 0, 0, .04);--edge-strong: 0 0 0 1px rgba(0, 0, 0, .08), 0 1px 2px -1px rgba(0, 0, 0, .08), 0 2px 4px 0 rgba(0, 0, 0, .06);--image-outline: rgba(0, 0, 0, .1);--edge-lifted: 0 0 0 1px rgba(0, 0, 0, .06), 0 12px 28px rgba(0, 0, 0, .22);--r-sheet: 24px;--column: 600px;--gutter: 16px;--circle: 48px;--app-h: 100dvh;color-scheme:light dark;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}@media(display-mode:standalone){:root{--app-h: 100lvh}}@media(prefers-color-scheme:dark){:root{--bg: #1a1918;--surface: #242220;--text: #f7f5f2;--text-secondary: #a7a29b;--border: #3a3734;--fill: #2e2b29;--edge-solid: rgba(26, 25, 24, .97);--edge-clear: rgba(26, 25, 24, 0);--blue: #3d7bff;--blue-pressed: #2f68e6;--blue-tint: rgba(61, 123, 255, .16);--blue-on-tint: #8eb2ff;--danger: #ff6b5e;--edge: 0 0 0 1px rgba(255, 255, 255, .08);--edge-strong: 0 0 0 1px rgba(255, 255, 255, .12);--image-outline: rgba(255, 255, 255, .1);--edge-lifted: 0 0 0 1px rgba(255, 255, 255, .12), 0 12px 28px rgba(0, 0, 0, .5)}}html{font:-apple-system-body;touch-action:manipulation;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports not (font: -apple-system-body){html{font-size:100%}}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);overscroll-behavior:none}html:has(.camera,.adjust),html:has(.camera,.adjust) body,html:has(.camera,.adjust) #root{background:#000}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.45}button,a,label,[role=radio]{cursor:pointer}button,input,textarea,select{font:inherit;color:inherit}input,textarea,select{font-size:max(16px,1rem)}button{-webkit-touch-callout:none}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}h1,h2,p{margin:0}.muted{color:var(--text-secondary)}.caption{font-size:.8125rem;color:var(--text-secondary)}.field-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.screen{min-height:var(--app-h);display:flex;flex-direction:column}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid transparent;background:transparent;font-size:1rem;font-weight:600;line-height:1.25;color:var(--text);text-decoration:none}.button>svg{flex:none}.button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.button.primary{background:var(--blue);color:#fff}.button.primary:not(:disabled):active{background:var(--blue-pressed)}.button.secondary{background:var(--surface);box-shadow:var(--edge)}.button.danger{background:var(--danger);color:#fff}.button.danger:not(:disabled):active{filter:brightness(.9)}.bar-icon,.cam-icon,.icon-button{position:relative;flex:none;width:var(--circle);height:var(--circle);padding:0;border-radius:50%;display:grid;place-items:center}.bar-icon{border:0;background:var(--surface);color:var(--text);box-shadow:var(--edge)}.bar-icon.danger{color:var(--danger)}.bar-icon.primary{background:var(--blue);color:#fff;box-shadow:none}.bar-icon.primary:active{background:var(--blue-pressed)}.cam-icon{border:0;background:#00000059;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff}.cam-icon:active{background:#0000008c}.icon-button{border:0;background:transparent;color:var(--text-secondary)}.icon-button.on-dark{color:#fff}.button.secondary:not(:disabled):active,.icon-button:not(:disabled):active,.bar-icon:not(.primary):active{background:var(--fill)}.button.secondary:not(:disabled):active,.bar-icon:not(.primary):active{box-shadow:var(--edge-strong)}@media(hover:hover){.button.secondary:not(:disabled):hover,.bar-icon:not(.primary):hover,.input:not(:focus):hover{box-shadow:var(--edge-strong)}}.icon-button.on-dark:active{background:#ffffff29}@media(hover:hover){.button.secondary:not(:disabled):hover,.icon-button:not(:disabled):hover,.bar-icon:not(.primary):hover{background:var(--fill)}.icon-button.on-dark:hover{background:#ffffff1f}.button.primary:not(:disabled):hover,.bar-icon.primary:hover{background:var(--blue-pressed)}}.field{display:flex;flex-direction:column;gap:8px}.input{width:100%;min-height:48px;padding:0 16px;border:0;border-radius:999px;background:var(--surface);box-shadow:var(--edge);transition:box-shadow .12s ease-out;font-size:max(16px,1rem);text-overflow:ellipsis;-webkit-appearance:none;appearance:none}.input::placeholder{color:var(--text-secondary);opacity:.8}.input:focus,.input:focus-visible{outline:none;box-shadow:0 0 0 2px var(--blue)}.screen.home{position:relative;justify-content:center;padding:calc(env(safe-area-inset-top) + 16px) max(var(--gutter),env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(var(--gutter),env(safe-area-inset-left))}.home-version{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 16px);font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--text-secondary);text-align:center}.home-actions{width:100%;max-width:400px;margin:0 auto;display:flex;flex-direction:column;gap:8px}.home-greeting{width:100%;max-width:400px;margin:0 auto 32px;padding:0 8px;text-align:center;font-size:1.75rem;line-height:1.2143;font-weight:700;letter-spacing:-.01em;text-wrap:balance}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.screen.sent{padding:calc(env(safe-area-inset-top) + 16px) max(var(--gutter),env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(var(--gutter),env(safe-area-inset-left))}.sent-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.sent-title{font-size:1.375rem;line-height:1.27;font-weight:700}.sent-actions{width:100%;max-width:var(--column);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px}.camera{position:fixed;top:0;left:0;right:0;height:var(--app-h);background:#000;color:#fff;overflow:hidden}.camera-video{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}.camera-frame{position:absolute;top:calc(var(--cam-head) + 8px);bottom:calc(var(--cam-foot) + 8px);left:calc(16px + env(safe-area-inset-left));right:calc(16px + env(safe-area-inset-right));border-radius:28px;overflow:hidden;background:#000}.camera-frame:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff14;pointer-events:none}.camera-preview{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .15s ease-out}.camera-preview.is-ready{opacity:1}.camera-loading{position:absolute;top:0;left:0;right:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;pointer-events:none}.camera-loading .spinner{width:32px;height:32px;border-color:#ffffff40;border-top-color:#fff}.camera-loading p{font-size:.875rem;color:#ffffffb3}.camera-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.camera-debug{position:absolute;left:max(16px,env(safe-area-inset-left));top:calc(var(--cam-head) + 8px);z-index:3;margin:0;padding:6px 8px;border-radius:8px;background:#0009;color:#fff;font:.75rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre;pointer-events:none}.camera-flash{position:absolute;top:0;left:0;width:100%;height:100%;background:#fff;opacity:.7;pointer-events:none}:root{--cam-head: calc(env(safe-area-inset-top) + 64px) ;--cam-bottom: calc(env(safe-area-inset-bottom) + 16px) ;--cam-controls: 88px;--cam-hint: 36px;--cam-foot: calc(var(--cam-bottom) + var(--cam-controls) + 12px + var(--cam-hint) + 12px);--edit-foot: calc(64px + max(16px, env(safe-area-inset-bottom))) }.camera-top{position:absolute;top:0;left:0;right:0;padding:calc(env(safe-area-inset-top) + 8px) max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:8px}.auto-toggle{min-height:48px;padding:0 16px 0 14px;border:0;border-radius:999px;background:#ffffff24;color:#fff;font-size:.9375rem;font-weight:600;display:flex;align-items:center;gap:6px}.auto-toggle.is-on{background:#fff;color:#1e1919}.camera-hint-row{position:absolute;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:calc(var(--cam-bottom) + var(--cam-controls) + 12px);height:var(--cam-hint);display:flex;align-items:center;justify-content:center;pointer-events:none}.camera-hint{max-width:100%;min-height:36px;padding:6px 16px;border-radius:18px;background:#ffffff24;color:#fff;font-size:.9375rem;font-weight:600;line-height:1.25;display:flex;align-items:center;text-align:center}.camera-message{position:absolute;top:0;left:0;right:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:24px max(var(--gutter),env(safe-area-inset-right)) 24px max(var(--gutter),env(safe-area-inset-left));max-width:440px;margin:0 auto;text-align:center;color:#fffc}.camera-message .button{width:auto}.camera-bottom{position:absolute;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:var(--cam-bottom);height:var(--cam-controls);display:grid;grid-template-columns:minmax(0,1fr) var(--cam-controls) minmax(0,1fr);align-items:center}.camera-side{display:flex;min-width:0}.camera-side.end{justify-content:flex-end}.shutter-wrap{position:relative;width:88px;height:88px}.shutter-ring{position:absolute;top:0;left:0;width:88px;height:88px;pointer-events:none}.shutter-ring circle{fill:none;stroke-width:4}.shutter-ring .ring{stroke:#ffffffe6}.shutter-ring .progress{stroke:#3d7bff;stroke-linecap:round;transition:stroke-dashoffset .2s linear}.shutter{position:absolute;top:10px;left:10px;width:68px;height:68px;padding:0;border:0;border-radius:50%;background:#fff;transition:scale 80ms ease-out}.shutter:not(:disabled):active{scale:.94}.camera-stack{position:relative;width:48px;height:64px;margin-left:12px;padding:0;border:0;background:transparent}.camera-stack-back,.camera-stack img{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:6px}.camera-stack-back{rotate:-6deg;background:#d9d4ca;box-shadow:0 0 0 1px #00000026}.camera-stack img{object-fit:cover;background:#efebe3;box-shadow:0 0 0 1px #00000026,0 4px 12px #0000004d}.badge{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#0061fe;box-shadow:0 0 0 2px #fff;color:#fff;font-size:.8125rem;font-weight:700;line-height:22px;text-align:center}.done-button{min-height:48px;padding:0 20px;border:0;border-radius:999px;background:#fff;color:#1e1919;font-size:1rem;font-weight:600;white-space:nowrap}.done-button:not(:disabled):active{background:#e6e6e6}.adjust{position:fixed;top:0;left:0;right:0;height:var(--app-h);background:#000;color:#fff;overflow:hidden}.adjust-stage{position:absolute;top:calc(var(--cam-head) + 24px);bottom:calc(var(--edit-foot) + 24px);left:calc(16px + env(safe-area-inset-left));right:calc(16px + env(safe-area-inset-right));display:grid;place-items:center;touch-action:none}.adjust-top{position:absolute;top:0;left:0;right:0;padding:calc(env(safe-area-inset-top) + 8px) max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;pointer-events:none}.adjust-top>*{pointer-events:auto}.adjust-frame{position:relative}.adjust-frame img,.adjust-frame svg{position:absolute;top:0;left:0;width:100%;height:100%;user-select:none;-webkit-user-select:none}.adjust-frame svg{overflow:visible;touch-action:none}.adjust-shape{fill:#ffffff14;stroke:#fff;stroke-linejoin:round}.adjust-handle{fill:#fff;stroke:#0061fe;pointer-events:none}.adjust-hit{fill:transparent;cursor:grab}.cam-pill{min-height:48px;padding:0 16px 0 14px;border:0;border-radius:999px;background:#ffffff24;color:#fff;font-size:.9375rem;font-weight:600;display:flex;align-items:center;gap:6px}.cam-pill svg{flex:none}.cam-pill:active{background:#ffffff3d}.adjust-actions{display:flex;gap:8px;min-width:0}.adjust-top.is-compact .cam-pill{width:var(--circle);padding:0;justify-content:center}.adjust-top.is-compact .cam-pill span{display:none}.cam-pill .spinner{width:20px;height:20px;border-width:2px;border-color:#ffffff4d;border-top-color:#fff}.cam-pill:disabled{opacity:1}.adjust-toast-row{position:absolute;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:calc(max(16px,env(safe-area-inset-bottom)) + 60px);display:flex;justify-content:center;pointer-events:none}.adjust-toast{min-height:36px;padding:6px 16px;border-radius:18px;background:#ffffff24;color:#fff;font-size:.9375rem;font-weight:600;display:flex;align-items:center}.adjust-bar{position:absolute;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));height:48px;display:flex;align-items:center;justify-content:center;pointer-events:none}.adjust-bar>*{max-width:var(--column);pointer-events:auto}.loupe{position:fixed;z-index:5;width:112px;height:112px;border:2px solid #fff;border-radius:50%;box-shadow:0 4px 16px #00000080;pointer-events:none}.loupe[hidden]{display:none}.topbar{position:sticky;top:0;z-index:2;flex:none;display:grid;grid-template-columns:var(--circle) minmax(0,1fr) var(--circle);align-items:center;gap:8px;padding:max(16px,env(safe-area-inset-top)) max(var(--gutter),env(safe-area-inset-right),calc((100% - var(--column)) / 2)) 16px max(var(--gutter),env(safe-area-inset-left),calc((100% - var(--column)) / 2))}.screen>.topbar{background:linear-gradient(to bottom,var(--edge-solid) 70%,var(--edge-clear));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent);mask-image:linear-gradient(to bottom,#000 80%,transparent)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.screen>.topbar{-webkit-mask-image:none;mask-image:none}}.topbar-title{min-width:0;font-size:1.0625rem;font-weight:600;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-body{flex:1;width:100%;max-width:calc(var(--column) + 2 * var(--gutter));margin:0 auto;padding:8px max(var(--gutter),env(safe-area-inset-right)) 8px max(var(--gutter),env(safe-area-inset-left));display:flex;flex-direction:column;gap:24px}.pages-section{display:flex;flex-direction:column;gap:8px}.pages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 8px}@media(min-width:600px){.pages{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.page{min-width:0}.page.is-lifted{position:relative;z-index:3}.page.is-dropping{transition:transform .15s ease-out}.page.is-lifted .thumb img{box-shadow:var(--edge-lifted)}.thumb-button{display:flex;flex-direction:column;gap:8px;width:100%;padding:0;border:0;background:transparent;color:var(--text);touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pages.is-dragging .thumb-button{touch-action:none}.page.is-lifted .thumb-button,.page.is-lifted .thumb-button:active{opacity:1;scale:none}.page.is-over-delete .thumb-button,.page.is-over-delete .thumb-button:active{opacity:.7}.thumb-button:not(.pending):active{opacity:.7}.thumb{aspect-ratio:3 / 4;display:grid;grid-template-columns:100%;grid-template-rows:100%;place-items:center}.thumb img{display:block;max-width:100%;max-height:100%;border-radius:8px;outline:1px solid var(--image-outline);outline-offset:-1px}.thumb:not(:has(img)){border-radius:8px;background:var(--surface);box-shadow:var(--edge)}.page-number{text-align:center;font-size:.8125rem;font-weight:600}.thumb-button.pending{cursor:default}.review-footer{position:sticky;bottom:0;padding:32px max(var(--gutter),env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(var(--gutter),env(safe-area-inset-left));background:linear-gradient(to top,var(--bg) calc(100% - 32px),transparent);display:flex;flex-direction:column;gap:16px;align-items:center}.review-footer>*{width:100%;max-width:var(--column)}.footer-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px}.footer-style{grid-area:1 / 1;padding:0 12px}.footer-share{grid-area:1 / 2}.footer-style,.footer-share{transition:opacity .15s ease-out}.delete-target{grid-area:1 / 1 / 2 / 3}.delete-target{min-height:48px;padding:0 24px;border:1px solid var(--danger);border-radius:999px;color:var(--danger);font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;visibility:hidden;transition-property:opacity,background-color,color,visibility;transition-duration:.15s}.delete-target svg{flex:none}.delete-target.is-over{background:var(--danger);color:#fff}.footer-actions.is-dragging .footer-style,.footer-actions.is-dragging .footer-share{opacity:0;visibility:hidden;pointer-events:none}.footer-actions.is-dragging .delete-target{opacity:1;visibility:visible}.undo-toast{position:absolute;left:50%;bottom:calc(100% - 16px);translate:-50% 0;width:max-content;max-width:calc(100% - 2 * var(--gutter));min-height:48px;padding:0 4px 0 20px;border-radius:999px;background:#1e1919eb;color:#fff;font-size:.9375rem;display:flex;align-items:center;gap:4px;white-space:nowrap;box-shadow:0 8px 24px #0003}.undo-button{min-height:48px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:#8eb2ff;font-weight:700}.notice{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;color:var(--danger)}.notice svg{flex:none;margin-top:2px}.page-view{position:fixed;top:0;left:0;right:0;height:var(--app-h);display:flex;flex-direction:column;background:var(--bg)}.pv-stage{position:relative;flex:1;min-height:0}.pv-gallery{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x}.pv-gallery::-webkit-scrollbar{display:none}.pv-slide{position:relative;flex:0 0 100%;height:100%;scroll-snap-align:center;scroll-snap-stop:always}.pv-image{position:absolute;top:16px;bottom:64px;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));container-type:size;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none}.pv-paper{position:relative;display:flex}.pv-paper img{display:block;max-width:100cqw;max-height:100cqh;object-fit:contain;border-radius:8px;outline:1px solid var(--image-outline);outline-offset:-1px;background:#fff;box-shadow:0 1px 2px #0000000a,0 6px 16px #0000000f;-webkit-user-drag:none}.pv-busy{position:absolute;top:0;left:0;width:100%;height:100%;display:grid;place-items:center;background:color-mix(in srgb,var(--bg) 60%,transparent)}.pv-empty{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);text-align:center}.pv-dots{position:absolute;z-index:1;left:50%;translate:-50% 0;bottom:auto;top:calc(100% - 64px);height:48px;display:flex;align-items:center;justify-content:center;transition:top .15s ease-out}.pv-dot{height:48px;padding:0 4px;border:0;background:transparent;display:grid;place-items:center}.pv-dot span{display:block;width:8px;height:8px;border-radius:4px;background:var(--text-secondary);opacity:.4;transition:width .15s ease-out,scale .15s ease-out}.pv-dot.is-current span{width:20px;background:var(--text);opacity:1}.pv-dot.is-small span{scale:.6}.pv-panel{flex:none;padding:16px max(var(--gutter),env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(var(--gutter),env(safe-area-inset-left));background:var(--bg)}.pv-panel-inner{max-width:var(--column);margin:0 auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.pv-crop,.pv-rotate{grid-column:span 3}.pv-style{grid-column:span 2}.pv-save{grid-column:span 4}.pv-panel-inner .button.secondary{padding:0 12px;gap:6px}@media(orientation:landscape)and (max-height:500px){.pv-panel-inner{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,2fr)}.pv-crop,.pv-rotate,.pv-style,.pv-save{grid-column:auto}.pv-image{top:8px;bottom:48px}}.style-menu{position:fixed;z-index:25;width:max-content;min-width:200px;max-width:min(280px,100vw - 32px);padding:4px;overflow-y:auto;border-radius:14px;background:var(--surface);color:var(--text);box-shadow:0 0 0 1px #0000000f,0 12px 32px #00000029;transform-origin:bottom left;animation:menu-in .12s ease-out}.style-heading{padding:8px 12px 4px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.style-item{width:100%;min-height:44px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:inherit;font-size:1rem;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left}.style-item svg{flex:none;color:var(--blue)}.style-item:active,.style-item:focus-visible{background:var(--fill)}@media(hover:hover){.style-item:hover{background:var(--fill)}}@keyframes menu-in{0%{opacity:0;scale:.96}}.dialog-layer{position:fixed;top:0;left:0;right:0;height:var(--app-h);z-index:30;display:grid;place-items:center;padding:16px 32px}.dialog-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000073;animation:dialog-fade .15s ease-out}.dialog{position:relative;width:100%;max-width:360px;padding:24px 16px 16px;border-radius:var(--r-sheet);background:var(--surface);color:var(--text);box-shadow:0 0 0 1px #0000000f,0 12px 32px #0000002e;display:flex;flex-direction:column;gap:20px;animation:dialog-in .15s ease-out}.dialog-text{padding:0 8px;display:flex;flex-direction:column;gap:8px;text-align:center}.dialog-title{font-size:1.25rem;line-height:1.3;font-weight:700}.dialog-message{color:var(--text-secondary);line-height:1.5}.dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@keyframes dialog-fade{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;scale:.96}}.working{position:fixed;top:0;left:0;right:0;height:var(--app-h);z-index:40;display:grid;place-items:center;background:#00000040}.hud{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;min-width:120px;border-radius:16px;background:var(--surface);color:var(--text);font-size:.875rem}.spinner{width:24px;height:24px;flex:none;border-radius:50%;border:2.5px solid var(--blue-tint);border-top-color:var(--blue);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.button,.bar-icon,.cam-icon,.icon-button,.done-button,.thumb-button,.camera-stack,.auto-toggle,.cam-pill{transition-property:scale,opacity,box-shadow;transition-duration:80ms,80ms,.12s;transition-timing-function:ease-out}.button:not(:disabled):active,.bar-icon:not(:disabled):active,.cam-icon:not(:disabled):active,.icon-button:not(:disabled):active,.done-button:not(:disabled):active,.thumb-button:not(.pending):active,.camera-stack:not(:disabled):active,.auto-toggle:active,.cam-pill:active{scale:.97;opacity:.85}@media(prefers-reduced-motion:reduce){.button,.bar-icon,.cam-icon,.icon-button,.done-button,.thumb-button,.camera-stack,.auto-toggle,.cam-pill,.shutter{transition:none}.button:active,.bar-icon:active,.cam-icon:active,.icon-button:active,.done-button:active,.thumb-button:active,.camera-stack:active,.auto-toggle:active,.cam-pill:active,.shutter:active{scale:none}.camera-preview,.pv-dot span,.pv-dots,.shutter-ring .progress{transition:none}.dialog,.dialog-backdrop,.style-menu{animation:none}.page.is-dropping,.footer-style,.footer-share,.delete-target{transition:none}.spinner{animation-duration:2s}}.topbar-title,.badge,.review-footer .button,.page-number,.pages-section .field-label{font-variant-numeric:tabular-nums}h1,h2,.topbar-title,.dialog-title,.sent-title{text-wrap:balance}.dialog-message,.camera-message p,.camera-loading p,.camera-hint{text-wrap:pretty}::view-transition-group(page-hero){animation-duration:.35s;animation-timing-function:cubic-bezier(.2,.9,.25,1)}::view-transition-old(page-hero),::view-transition-new(page-hero){height:100%;object-fit:contain}:root[data-vt=open]::view-transition-old(root){animation:.35s cubic-bezier(.2,.9,.25,1) both vt-recede}:root[data-vt=open]::view-transition-new(root){animation:.35s cubic-bezier(.2,.9,.25,1) both vt-fade-in}:root[data-vt=close]::view-transition-old(root){animation:.35s cubic-bezier(.2,.9,.25,1) both vt-fade-out}:root[data-vt=close]::view-transition-new(root){animation:.35s cubic-bezier(.2,.9,.25,1) both vt-return}:root[data-vt=fade]::view-transition-group(*),:root[data-vt=fade]::view-transition-old(*),:root[data-vt=fade]::view-transition-new(*){animation-duration:.15s}@keyframes vt-recede{to{opacity:0;scale:.96}}@keyframes vt-return{0%{opacity:0;scale:.96}}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-fade-out{to{opacity:0}}
