:root{--ad-rail:160px;--ad-top:100px;--tool:48px;--bar:calc(var(--tool) + 7px);--opt-bar:48px;--ctl:32px;--act:40px;--action-bar:calc(var(--act) + 1px + env(safe-area-inset-bottom));--r-ctl:6px;--r-tile:8px;--r-surface:10px;--zoom-h:34px;--cue:56px;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#fff) var(--lightningcss-dark,#0f141a);--panel:var(--lightningcss-light,#f3f4f6) var(--lightningcss-dark,#1b212b);--line:var(--lightningcss-light,#e5e7eb) var(--lightningcss-dark,#2a313c);--swatch-edge:var(--lightningcss-light,#9ca3af) var(--lightningcss-dark,#6b7280);--ink:var(--lightningcss-light,#111827) var(--lightningcss-dark,#e6e8ec);--muted:var(--lightningcss-light,#9ca3af) var(--lightningcss-dark,#8b93a1);--stage:var(--lightningcss-light,#fafafa) var(--lightningcss-dark,#0a0e13);--danger:var(--lightningcss-light,#991b1b) var(--lightningcss-dark,#fecaca);--cta:#2563eb;--cta-hover:#1d4ed8;--cta-ink:#fff;--cta-sheen:#ffffff2e;--cta-rim:#ffffff40;--glass-fill:var(--lightningcss-light,#fff) var(--lightningcss-dark,#2c3442);--glass-hover:var(--lightningcss-light,#eceef1) var(--lightningcss-dark,#3a3f48);--glass-press:var(--lightningcss-light,#e1e4e8) var(--lightningcss-dark,#454b55);--glass-fill-light:var(--lightningcss-light,#0f172a0f) var(--lightningcss-dark,#ffffff14);--glass-edge:var(--lightningcss-light,#0f172a42) var(--lightningcss-dark,#ffffff26);--glass-edge-hover:var(--lightningcss-light,#0f172a66) var(--lightningcss-dark,#ffffff47);--glass-lift:0 1px 2px var(--lightningcss-light,#0f172a14) var(--lightningcss-dark,#0000004d);--divider:var(--lightningcss-light,#e5e7eb) var(--lightningcss-dark,#ffffff1a);--seg-hover:var(--lightningcss-light,#e1e4e8) var(--lightningcss-dark,#454b55);--seg-press:var(--lightningcss-light,#d5d9df) var(--lightningcss-dark,#505763);--glass-sel:var(--lightningcss-light,#2563eb2e) var(--lightningcss-dark,#3b82f657);--glass-sheen:var(--lightningcss-light,#fff9) var(--lightningcss-dark,#ffffff1a);--glass-rim:var(--lightningcss-light,#ffffffe6) var(--lightningcss-dark,#fff3);--glass-sel-edge:var(--lightningcss-light,#2563eb) var(--lightningcss-dark,#60a5fa);--fill:var(--lightningcss-light,#0f172a1c) var(--lightningcss-dark,#ffffff1f);--fill-live:var(--lightningcss-light,#2563eb29) var(--lightningcss-dark,#60a5fa38);--tint-hover:var(--lightningcss-light,#0f172a0f) var(--lightningcss-dark,#ffffff12);--tint-press:var(--lightningcss-light,#0f172a1a) var(--lightningcss-dark,#ffffff1c);--press-scale:.97;--surface:var(--lightningcss-light,#ffffffb8) var(--lightningcss-dark,#181d25d6);--surface-hover:var(--lightningcss-light,#ffffffe6) var(--lightningcss-dark,#242a34e0);--surface-edge:var(--lightningcss-light,#0f172a14) var(--lightningcss-dark,#ffffff1a);--surface-rim:var(--lightningcss-light,#ffffffd9) var(--lightningcss-dark,#ffffff1a);--surface-blur:blur(18px) saturate(180%);--float-shadow:0 1px 3px var(--lightningcss-light,#0f172a0f) var(--lightningcss-dark,#0000004d), 0 12px 32px -8px var(--lightningcss-light,#0f172a2e) var(--lightningcss-dark,#00000080);--stage-shade:var(--lightningcss-light,#0f172a12) var(--lightningcss-dark,#0006);--toast-bg:var(--lightningcss-light,#111827d1) var(--lightningcss-dark,#e6e8ecd9);--focus:var(--lightningcss-light,#1d4ed8) var(--lightningcss-dark,#93c5fd)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (min-width:1024px){:root{--ad-rail:300px}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{color:var(--ink);background:var(--bg);padding-left:var(--ad-rail);font-family:system-ui,sans-serif}.app{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(var(--bar), auto) auto 1fr;grid-template-areas:"toolbar""options""stage";height:100dvh;display:grid;position:relative}.ad{width:var(--ad-rail);z-index:20;background:var(--panel);border-right:1px solid var(--line);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;place-items:center;font-size:12px;display:grid;position:fixed;top:0;bottom:0;left:0}html[data-ads=off] .ad{display:none}html[data-ads=off] body{padding-left:0}:where(.toolbar button,.opt-seg,.opt-act,.opt-del,.opt-apply,.opt-cancel,.opt-pop,.opt-filter,.opt-select,.pk-eyedrop,.export-confirm,.pane-tab,.pane-head [data-action=close-pane],.hist-del,.edit-revert,.ml-prompt-buttons button,.ocr-buttons button,.photo-note-close){--g-fill:var(--glass-fill);--g-sheen:none;--g-edge:var(--glass-edge);--g-lift:var(--glass-lift);--g-scale:1;--g-op:1;border:1px solid var(--g-edge);background:var(--g-sheen) var(--g-fill);color:var(--ink);box-shadow:var(--g-lift);opacity:var(--g-op);scale:var(--g-scale);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .12s,border-color .12s,box-shadow .12s,color .12s,scale .12s}@media (hover:hover){:where(button,select):where(:not(:disabled)):hover{--g-fill:var(--glass-hover);--g-edge:var(--glass-edge-hover)}}:where(button,select):where(:not(:disabled)):active{--g-fill:var(--glass-press);--g-edge:var(--glass-edge-hover);--g-scale:var(--press-scale)}:where(button,select):disabled{--g-lift:0 0 #0000;--g-op:.45;cursor:default}:where(button,select):focus-visible{outline:2px solid var(--focus);outline-offset:1px}:is(.toolbar [data-tool],.opt-filter)[aria-pressed=true],.pane-tab[aria-selected=true]{--g-fill:var(--glass-sel);--g-sheen:linear-gradient(var(--glass-sheen), transparent 55%);--g-edge:var(--glass-sel-edge);--g-lift:inset 0 1px 0 var(--glass-rim), var(--glass-lift);color:var(--ink)}.opt-cat[aria-pressed=mixed]{--g-edge:var(--glass-sel-edge)}.ml-prompt-ok,.ocr-copy,.export-confirm,.opt-apply:not(:disabled){--g-fill:var(--cta);--g-sheen:linear-gradient(var(--cta-sheen), transparent 55%);--g-edge:transparent;--g-lift:inset 0 1px 0 var(--cta-rim), var(--glass-lift);color:var(--cta-ink);font-weight:600}@media (hover:hover){:is(.ml-prompt-ok,.ocr-copy,.export-confirm,.opt-apply):not(:disabled):hover{--g-fill:var(--cta-hover)}}:is(.ml-prompt-ok,.ocr-copy,.export-confirm,.opt-apply):not(:disabled):active{--g-fill:var(--cta-hover)}:where(.photo-note,.picker,.export-menu,.ocr-result,.ml-prompt) :where(button,.opt-seg){--g-fill:var(--glass-fill-light);--g-lift:0 0 #0000}:where(.zoom,.photo-note,.toast,.to-top,.picker,.slider-popover,.menu,.export-menu,.ocr-result,.ml-prompt){border:1px solid var(--surface-edge);background:var(--surface);box-shadow:inset 0 1px 0 var(--surface-rim), var(--s-shadow,var(--float-shadow));-webkit-backdrop-filter:var(--surface-blur);backdrop-filter:var(--surface-blur)}:where(.photo-note,.picker,.slider-popover,.menu,.export-menu,.ocr-result,.ml-prompt){--muted:var(--lightningcss-light,#374151) var(--lightningcss-dark,#bcc2cb)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--surface:var(--bg);--surface-hover:var(--panel);--toast-bg:var(--ink)}}.load-error button:focus-visible{outline-color:#fff}.toolbar{border-bottom:1px solid var(--line);background:var(--panel);scrollbar-width:thin;grid-area:toolbar;align-items:center;gap:6px;min-width:0;padding:0 0 0 6px;display:flex;overflow:auto hidden}.toolbar button{touch-action:manipulation;flex:none;justify-content:center;align-items:center;display:inline-flex}.toolbar button svg{flex:none;display:block}.toolbar [data-tool]{min-width:var(--tool);height:var(--tool);border-radius:var(--r-tile);white-space:nowrap;flex-direction:column;gap:2px;margin-block:3px;padding:0 6px;font-size:12px;font-weight:500;line-height:1.2}.toolbar [data-tool] svg{width:20px;height:20px}.toolbar button svg~svg{display:none}.toolbar .spacer{flex:1}.actions{z-index:2;background:var(--panel);align-self:stretch;align-items:center;gap:4px;padding:0 8px 0 4px;display:flex;position:sticky;right:0}.actions:before{content:"›";box-sizing:border-box;width:var(--cue);color:var(--muted);background:linear-gradient(to left, var(--panel) 38%, transparent);opacity:0;pointer-events:none;justify-content:flex-end;align-items:center;padding-right:7px;font-size:22px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:0;bottom:0;right:100%}.toolbar[data-overflow=end] .actions:before,.toolbar[data-overflow=both] .actions:before{opacity:1}.toolbar [data-action]{min-width:var(--act);height:var(--act);border-radius:var(--r-ctl);gap:6px;padding:0 12px;font-size:16px}.toolbar [data-action=undo],.toolbar [data-action=redo]{width:var(--act);padding:0}.actions.stacked [data-action]{flex-direction:column;gap:2px;padding:0 4px;font-size:11px}@media (orientation:landscape){.actions.stacked [data-action]{height:var(--tool);border-radius:var(--r-tile);font-size:12px;font-weight:500}.actions.stacked svg{width:20px;height:20px}}.options{min-height:var(--opt-bar);border-bottom:1px solid var(--line);background:var(--panel);scrollbar-width:thin;grid-area:options;align-items:center;gap:8px;min-width:0;padding:0 12px;display:flex;overflow-x:auto}.options>*{flex:none}.scroll-cue{z-index:1;pointer-events:none;min-width:0;position:relative}.scroll-cue[data-cue=toolbar]{--cue-bg:var(--panel);grid-area:toolbar}.scroll-cue[data-cue=options]{--cue-bg:var(--panel);grid-area:options}.scroll-cue:before,.scroll-cue:after{box-sizing:border-box;width:var(--cue);color:var(--muted);opacity:0;align-items:center;font-size:22px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:0;bottom:0}.scroll-cue:before{content:"‹";background:linear-gradient(to right, var(--cue-bg) 38%, transparent);justify-content:flex-start;padding-left:7px;left:0}.scroll-cue:after{content:"›";background:linear-gradient(to left, var(--cue-bg) 38%, transparent);justify-content:flex-end;padding-right:7px;right:0}.toolbar[data-overflow=start]~.scroll-cue[data-cue=toolbar]:before,.toolbar[data-overflow=both]~.scroll-cue[data-cue=toolbar]:before,.toolbar[data-overflow=end]~.scroll-cue[data-cue=toolbar]:after,.toolbar[data-overflow=both]~.scroll-cue[data-cue=toolbar]:after,.options[data-overflow=start]~.scroll-cue[data-cue=options]:before,.options[data-overflow=both]~.scroll-cue[data-cue=options]:before,.options[data-overflow=end]~.scroll-cue[data-cue=options]:after,.options[data-overflow=both]~.scroll-cue[data-cue=options]:after{opacity:1}.options:has(.opt-filter-apply)~.scroll-cue[data-cue=options]:before{display:none}:is(.toolbar,.options)[data-cue-at=start]:is([data-overflow=start],[data-overflow=both]),:is(.toolbar,.options)[data-cue-at=start]:is([data-overflow=start],[data-overflow=both]) *,:is(.toolbar,.options)[data-cue-at=end]:is([data-overflow=end],[data-overflow=both]),:is(.toolbar,.options)[data-cue-at=end]:is([data-overflow=end],[data-overflow=both]) *{cursor:pointer}.options .hint,.empty-hint{color:var(--muted);font-size:14px}.empty-hint{border-radius:calc(var(--r-surface) + 2px);color:var(--lightningcss-light,#4b5563) var(--lightningcss-dark,#bcc2cb);text-align:center;cursor:pointer;border:2px dashed var(--lightningcss-light,#9ca3af) var(--lightningcss-dark,#4b5563);flex-direction:column;align-items:center;gap:14px;max-width:80%;padding:32px 40px;display:flex}.empty-hint .empty-note{max-width:34em;font-size:13px;line-height:1.45}.empty-hint .upload-icon{width:44px;height:44px}.empty-hint:hover{background:var(--panel);border-color:var(--lightningcss-light,#6b7280) var(--lightningcss-dark,#9ca3af)}.stage.is-empty{cursor:pointer}.stage{background:var(--stage);touch-action:none;grid-area:stage;place-items:center;display:grid;position:relative;overflow:hidden}.stage:before{content:"";z-index:2;background:linear-gradient(var(--stage-shade), transparent);pointer-events:none;height:10px;position:absolute;inset:0 0 auto}.canvas-wrap{position:absolute;inset:0}.stage.is-empty .canvas-wrap{display:none}.c-frame,.c-scene,.c-overlay{display:block;position:absolute;top:0;left:0}.c-overlay{touch-action:none;cursor:crosshair}.notes{z-index:3;pointer-events:none;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 16px);display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}@media (orientation:landscape){body:has(.export-menu) .notes{max-width:max(16em,100% - 480px)}}@media (orientation:landscape) and (max-width:739px){body:has(.export-menu) .notes{align-items:flex-start;max-width:calc(100% - 240px);left:8px;transform:none}}.photo-note{border-radius:var(--r-surface);overflow-wrap:anywhere;pointer-events:auto;align-items:center;gap:8px;max-width:100%;padding:4px 4px 4px 12px;font-size:14px;display:flex}.photo-note.off{clip-path:inset(50%);-webkit-backdrop-filter:none;backdrop-filter:none;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.photo-note-close{border-radius:var(--r-ctl);flex:none;width:32px;height:32px}.ai-note{flex-wrap:wrap}.ai-note>[role=status]{flex:auto}.ai-note:has(>[role=status]:nth-last-child(2)){flex-wrap:nowrap}.ai-note[hidden]{display:none}.history-note{grid-template-columns:auto 1fr;align-items:start;gap:2px 10px;max-width:min(100%,40em);padding:8px 8px 8px 12px;display:grid}.history-note>:first-child{margin-top:1px}.history-note>:not(:first-child){grid-column:2}.history-note-hint{color:var(--muted);font-size:13px}.history-note-acts{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.history-note-acts[hidden]{display:none}@media (orientation:landscape) and (max-height:500px){body:not(:has(.export-menu)) .history-note{grid-template-columns:auto 1fr auto}body:not(:has(.export-menu)) .history-note>.history-note-acts{grid-area:1/3/span 2;align-self:center;margin-top:0}}.zoom{z-index:3;--surface-edge:var(--glass-edge);border-radius:999px;align-items:center;display:flex;position:absolute;bottom:8px;right:8px;overflow:hidden}.zoom button{min-width:32px;height:calc(var(--zoom-h) - 2px);color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;place-items:center;padding:0 6px;font-size:13px;display:grid}.zoom [data-zoom=toggle]{min-width:52px}@media (hover:hover){.zoom button:not(:disabled):hover{background:var(--tint-hover)}}.zoom button:not(:disabled):active{background:var(--tint-press)}.zoom button:disabled{color:var(--muted);cursor:default}.zoom button:focus-visible{outline-offset:-3px}.stage.is-empty .zoom{display:none}.c-frame,.c-scene,.c-overlay{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.opt{color:var(--ink);align-items:center;gap:6px;font-size:13px;display:inline-flex}.opt[hidden],.opt-pop[hidden]{display:none}.opt-swatch{border:1px solid var(--swatch-edge);cursor:pointer;border-radius:6px;width:24px;height:24px;padding:0}.opt-actions{gap:8px;margin-left:auto;display:inline-flex}.opt-act,.opt-del{min-height:var(--ctl);border-radius:var(--r-ctl);padding:4px 8px}.opt-del{color:var(--danger)}.opt-icon{justify-content:center;align-items:center;padding:4px 6px;display:inline-flex}.opt-bg{border:1px solid var(--swatch-edge);cursor:pointer;border-radius:6px;flex:none;width:24px;height:24px;padding:0}.opt-bg[aria-pressed=true],.pk-swatch[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--ink), inset 0 0 0 4px var(--bg)}.opt-pop{--g-sheen:linear-gradient(var(--fill) 0 0) left / var(--p,0%) 100% no-repeat;min-height:var(--ctl);border-radius:var(--r-ctl);font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-user-select:none;user-select:none;flex-direction:column;flex:none;justify-content:center;align-items:flex-start;padding:0 8px;font-size:13px;line-height:14px;display:inline-flex}.opt-name{font-size:11px;line-height:12px}.opt-v{flex-direction:column;align-items:flex-start;font-weight:600;display:inline-flex}.opt-v:after{content:attr(data-w) / "";visibility:hidden;height:0;overflow:hidden}@media (pointer:fine){.opt-pop{cursor:ew-resize}}@media (hover:hover){.opt-pop:hover{--fill:var(--fill-live)}}.opt-pop:focus-visible,.opt-pop.scrub{--fill:var(--fill-live)}.opt-pop.scrub{--g-edge:var(--glass-sel-edge);--g-scale:1}.opt-pop:disabled{--g-sheen:none;pointer-events:none}.slider-popover{z-index:50;border-radius:var(--r-surface);flex-direction:column;gap:10px;min-width:258px;padding:14px;display:flex;position:fixed}.slider-value{color:var(--ink);font-size:13px;font-weight:600}:is(.slider-popover,.picker) input[type=range]{appearance:none;touch-action:none;background:0 0;width:100%;height:28px;margin:0}:is(.slider-popover,.picker) input[type=range]::-webkit-slider-runnable-track{background:var(--line);border-radius:2px;height:4px}:is(.slider-popover,.picker) input[type=range]::-moz-range-track{background:var(--line);border-radius:2px;height:4px}:is(.slider-popover,.picker) input[type=range]::-webkit-slider-thumb{border:1px solid var(--muted);background:var(--bg);appearance:none;border-radius:50%;width:22px;height:22px;margin-top:-9px}:is(.slider-popover,.picker) input[type=range]::-moz-range-thumb{border:1px solid var(--muted);background:var(--bg);border-radius:50%;width:22px;height:22px}.menu{z-index:50;border-radius:var(--r-surface);flex-direction:column;min-width:180px;padding:6px;display:flex;position:fixed}.menu button{border-radius:var(--r-ctl);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:8px;font-size:14px;display:flex}@media (hover:hover){.menu button:hover{background:var(--tint-hover)}}.menu button:focus-visible{background:var(--tint-hover)}.menu span{flex:1}.menu .menu-keys{color:var(--muted);flex:none;padding-left:12px}.opt-seg{border-radius:var(--r-ctl);--r-seg:calc(var(--r-ctl) - 1px);display:inline-flex;overflow:hidden}.opt-seg button{border:none;border-left:1px solid var(--divider);min-height:30px;color:var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:4px 8px;font-size:13px;transition:background-color .12s,color .12s;display:inline-flex}.opt-bold{min-width:36px;font-weight:700}.opt-marks button{padding:4px}.opt-seg button:first-child{border-radius:var(--r-seg) 0 0 var(--r-seg);border-left:none}.opt-seg button:last-child{border-radius:0 var(--r-seg) var(--r-seg) 0}.opt-seg button:only-child{border-radius:var(--r-seg)}@media (hover:hover){.opt-seg button:not(:disabled,[aria-pressed=true]):hover{background:var(--seg-hover)}}.opt-seg button:not(:disabled,[aria-pressed=true]):active{background:var(--seg-press)}.opt-seg button[aria-pressed=true]{background:linear-gradient(var(--glass-sheen), transparent 55%) var(--glass-sel);color:var(--ink);box-shadow:inset 0 0 0 1px var(--glass-sel-edge), inset 0 2px 0 var(--glass-rim)}.opt-seg button[aria-pressed=true],.opt-seg button[aria-pressed=true]+button{border-left-color:#0000}.opt-seg button:disabled{color:var(--muted);cursor:default}.opt-seg button:focus-visible{outline-offset:-3px}.opt-filter-apply:not(:disabled):focus-visible{outline-color:var(--cta-ink)}.opt-tools button svg{width:16px;height:16px}.opt-size{gap:10px}.opt-size label{align-items:center;gap:4px;display:inline-flex}.opt-size input{border:1px solid var(--line);background:var(--bg);width:calc(5ch + 14px);color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;appearance:textfield;border-radius:6px;padding:3px 6px}.opt-size input::-webkit-inner-spin-button{appearance:none;margin:0}.opt-size input::-webkit-outer-spin-button{appearance:none;margin:0}.opt-size input:disabled{color:var(--muted)}.opt-next label{flex-direction:column;gap:0;font-size:12px}.opt-next input{text-align:center;width:calc(4ch + 14px);font-size:14px}.opt-apply,.opt-cancel{min-height:var(--ctl);border-radius:var(--r-ctl);padding:4px 10px}.opt-apply{font-weight:600}.options:has(.opt-dock:not([hidden])){padding-right:0}.options:has(.opt-dock:not([hidden]))~.scroll-cue[data-cue=options]:after{display:none}.opt-dock[hidden]{display:none}.opt-dock{z-index:2;background:var(--panel);align-self:stretch;align-items:center;gap:8px;margin-left:auto;padding:0 12px 0 8px;display:flex;position:sticky;right:0}.opt-dock:before{content:"›";box-sizing:border-box;width:var(--cue);color:var(--muted);background:linear-gradient(to left, var(--panel) 38%, transparent);opacity:0;pointer-events:none;justify-content:flex-end;align-items:center;padding-right:7px;font-size:22px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:0;bottom:0;right:100%}.options[data-overflow=end] .opt-dock:before,.options[data-overflow=both] .opt-dock:before{opacity:1}.opt-backdrop{flex:none;align-items:center;gap:6px;display:flex}.opt-backdrop[hidden]{display:none}@media (max-width:559px){.opt-backdrop .hint{display:none}}.opt-select{min-height:var(--ctl);border-radius:var(--r-ctl);font:inherit;padding:3px 8px;font-size:13px}.ocr-result{z-index:50;border-radius:var(--r-surface);width:min(480px,100vw - 16px);color:var(--ink);flex-direction:column;gap:8px;padding:10px;display:flex;position:fixed}.ocr-result textarea{field-sizing:content;box-sizing:border-box;border:1px solid var(--line);background:var(--panel);width:100%;min-height:3lh;max-height:40vh;color:var(--ink);resize:vertical;border-radius:6px;padding:6px 8px;font:14px/1.4 system-ui,sans-serif}.ocr-buttons{justify-content:flex-end;gap:8px;display:flex}.ocr-buttons button{border-radius:var(--r-ctl);min-height:32px;padding:4px 12px;font-size:14px}.options:has(.opt-filter-apply){padding-left:0}.opt-filter-apply{z-index:2;border:none;border-right:1px solid var(--line);--dock-bg:var(--panel);background:var(--dock-bg);color:var(--ink);cursor:pointer;flex:none;align-self:stretch;padding:0 12px 0 10px;font-weight:600;position:sticky;left:0}.opt-filter-apply:not(:disabled){--dock-bg:var(--cta);background-image:linear-gradient(var(--cta-sheen), transparent 55%);box-shadow:inset 0 1px 0 var(--cta-rim);color:var(--cta-ink)}@media (hover:hover){.opt-filter-apply:not(:disabled):hover{--dock-bg:var(--cta-hover)}}.opt-filter-apply:disabled{color:color-mix(in srgb, var(--ink) 45%, transparent);cursor:default}.opt-filter-apply:disabled:before{content:"";z-index:-1;height:var(--ctl);border:1px solid var(--glass-edge);border-radius:var(--r-ctl);background:var(--glass-fill);opacity:.45;margin-block:auto;position:absolute;inset:0 6px 0 4px}.opt-filter-apply:focus-visible{outline-offset:-3px}.opt-filter-apply:after{content:"‹";box-sizing:border-box;width:var(--cue);color:var(--muted);background:linear-gradient(to right, var(--dock-bg) 45%, transparent);opacity:0;pointer-events:none;align-items:center;padding-left:7px;font-size:22px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:0;bottom:0;left:calc(100% + 1px)}.options[data-overflow=start] .opt-filter-apply:after,.options[data-overflow=both] .opt-filter-apply:after{opacity:1}.opt-filter{min-height:var(--ctl);border-radius:var(--r-ctl);white-space:nowrap;flex:none;padding:4px 10px;font-size:13px}.opt-cat:before{content:"";background:var(--cat);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.text-editor{z-index:2;box-sizing:border-box;white-space:pre;cursor:text;outline:none;min-width:4px;margin:0;line-height:1.2;position:absolute}.text-editor:before{content:"";inset:var(--box-top) 0 var(--box-bottom);z-index:-1;outline:1px dashed var(--muted);pointer-events:none;position:absolute}.text-editor[data-style=box]:before{background:var(--box);border-radius:.25em}.text-editor[data-style=outline]{paint-order:stroke fill}.picker{z-index:50;border-radius:var(--r-surface);flex-direction:column;gap:8px;padding:10px;display:flex;position:fixed}.pk-row{flex-wrap:wrap;align-items:center;gap:6px;max-width:200px;display:flex}.pk-swatch{border:1px solid var(--swatch-edge);cursor:pointer;border-radius:6px;width:22px;height:22px;padding:0}.pk-bgs{max-width:218px}.pk-eyedrop{border-radius:var(--r-ctl);padding:4px 8px}.export-menu{z-index:50;border-radius:var(--r-surface);flex-direction:column;gap:6px;min-width:160px;max-height:calc(100dvh - 16px);padding:8px;display:flex;position:fixed;overflow-y:auto}.export-item{border-radius:var(--r-ctl);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;padding:8px;font-size:14px}@media (hover:hover){.export-item:hover{background:var(--tint-hover)}}.export-item:focus-visible{background:var(--tint-hover)}.export-item[aria-current=true]{border-color:var(--glass-sel-edge);box-shadow:inset 0 1px 0 var(--glass-rim);color:var(--ink)}.export-item[aria-current=true],.export-menu .opt-seg button[aria-pressed=true]{background:linear-gradient(var(--glass-sheen), transparent 55%), linear-gradient(var(--glass-sel) 0 0) var(--bg)}.export-quality{color:var(--ink);flex-direction:column;gap:4px;padding:4px 8px 2px;font-size:13px;display:flex}.export-quality input[type=range]{width:100%}.export-quality[hidden]{display:none}.export-note{color:var(--muted);margin:0;padding:2px 8px 4px;font-size:13px}.export-size{flex-direction:column;gap:6px;padding-bottom:4px;font-size:13px;display:flex}.export-size .opt-seg button{flex:1;padding:6px}.export-size label{padding:0 4px}.export-confirm{border-radius:var(--r-ctl);padding:8px;font-size:14px}.toast{bottom:calc(8px + var(--zoom-h) + 8px);z-index:60;border-radius:var(--r-surface);background:var(--toast-bg);width:max-content;max-width:min(90vw,360px);color:var(--bg);--s-shadow:0 6px 20px #00000040;opacity:0;visibility:hidden;border-color:#0000;padding:10px 16px;font-size:14px;transition:opacity .18s,transform .18s,visibility .18s;position:fixed;left:50%;transform:translate(-50%,8px)}.toast.show{opacity:1;visibility:visible;transition:opacity .18s,transform .18s;transform:translate(-50%)}.toast:has(.toast-action){align-items:center;display:flex}.toast-action{border:1px solid color-mix(in srgb, currentColor 35%, transparent);border-radius:var(--r-ctl);background:color-mix(in srgb, currentColor 12%, transparent);min-height:32px;color:inherit;font:inherit;cursor:pointer;flex:none;margin:-6px -8px -6px 12px;padding:0 10px;font-weight:600}@media (hover:hover){.toast-action:hover{background:color-mix(in srgb, currentColor 22%, transparent)}}.toast-action:active{background:color-mix(in srgb, currentColor 22%, transparent)}.toast-action:focus-visible{outline-color:currentColor}@media (pointer:coarse){.toast-action{min-height:44px;margin-block:-10px}}.toast-detail{opacity:.7;word-break:break-word;margin-top:4px;font-family:ui-monospace,monospace;font-size:12px}.to-top{z-index:9;--surface-edge:var(--glass-edge);color:var(--ink);cursor:pointer;opacity:0;visibility:hidden;border-radius:999px;align-items:center;padding:8px 14px;font-size:14px;transition:opacity .18s,transform .18s,visibility .18s;display:inline-flex;position:fixed;top:12px;left:50%;transform:translate(-50%,-150%)}.to-top.show{opacity:1;visibility:visible;transform:translate(-50%)}@media (hover:hover){.to-top:hover{--surface:var(--surface-hover)}}.to-top:active{--surface:var(--surface-hover)}.ml-prompt{border-radius:var(--r-surface);width:min(360px,100vw - 32px);color:var(--ink);padding:16px}.ml-prompt::backdrop{background:#00000059}.ml-prompt h2{margin:0 0 8px;font-size:16px}.ml-prompt p{margin:0 0 8px;font-size:14px;line-height:1.45}.ml-prompt progress{width:100%;margin:4px 0}.ml-prompt-buttons{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.ml-prompt-buttons button{border-radius:var(--r-ctl);min-height:36px;padding:6px 12px;font-size:14px}html.pane-open{overflow:hidden}.pane-backdrop{z-index:10;opacity:0;visibility:hidden;background:#00000059;transition:opacity .2s,visibility .2s;position:fixed;inset:0}@media (min-width:700px){.pane-backdrop{background:0 0}}.pane-backdrop.open{opacity:1;visibility:visible}.pane{z-index:11;background:var(--bg);border-left:1px solid var(--line);visibility:hidden;flex-direction:column;width:min(360px,90vw);transition:transform .2s,visibility .2s;display:flex;position:fixed;inset:0 0 0 auto;transform:translate(100%);box-shadow:-8px 0 24px #00000014}.pane.open{visibility:visible;transition:transform .2s,visibility;transform:translate(0)}.pane-head{border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:8px;padding:12px 16px;display:flex}.pane-head h2{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.pane-tabs{gap:4px;margin-right:auto;display:flex}.pane-tab{border-radius:var(--r-ctl);padding:6px 10px;font-size:14px}.pane-head [data-action=close-pane]{border-radius:var(--r-ctl);flex:none;width:32px;height:32px;font-size:16px}.pane-body{overscroll-behavior:contain;flex:1;padding:12px;overflow:auto}.pane-empty{color:var(--muted);text-align:center;margin:24px 8px;font-size:14px}.hist-switch{border:1px solid var(--glass-edge);border-radius:var(--r-ctl);cursor:pointer;align-items:center;gap:8px;min-height:44px;margin-bottom:12px;padding:6px 10px;font-size:14px;display:flex}@media (hover:hover){.hist-switch:hover{border-color:var(--glass-edge-hover);background:var(--glass-hover)}}.hist-switch input{flex:none;margin:0}.hist-list{flex-direction:column;gap:8px;display:flex}.hist-card{align-items:center;gap:8px;display:flex}.hist-open{border:1px solid var(--glass-edge);border-radius:var(--r-ctl);background:var(--bg);text-align:left;cursor:pointer;flex:1;align-items:center;gap:10px;min-width:0;min-height:56px;padding:6px;display:flex}@media (hover:hover){.hist-open:hover{border-color:var(--glass-edge-hover);background:var(--glass-hover)}}.hist-open img{object-fit:cover;background:var(--panel);border-radius:4px;flex:none;width:56px;height:56px}.hist-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.hist-del,.edit-revert{border-radius:var(--r-ctl);min-height:44px;color:var(--danger);flex:none;padding:4px 10px;font-size:14px}.pane-tab-icon{justify-content:center;align-items:center;padding:6px;display:inline-flex}.setting{margin:8px 4px;font-size:15px;font-weight:600}.setting-note{margin:0 4px 16px;font-size:13px;line-height:1.45}.setting-action{margin-left:4px}.setting-action[hidden]{display:none}.edit-list{flex-direction:column;gap:6px;display:flex}.edit-row{border:1px solid var(--glass-edge);border-radius:var(--r-ctl);align-items:center;gap:8px;padding:4px 4px 4px 8px;display:flex}.edit-label{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-self:stretch;align-items:center;padding:0;font-family:inherit;font-size:14px;display:flex}.edit-label-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (hover:hover){.edit-row:has(>.edit-label:hover){border-color:var(--glass-edge-hover);background:var(--glass-hover)}}.edit-revert{margin-left:auto}.content{max-width:720px;margin:0 auto;padding:48px 24px;line-height:1.6}.content h1{font-size:28px}.content address{margin:1em 0;font-style:normal}.content h1,.content h2{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}.more-tools [aria-current=page]{font-weight:600}.back-link{margin:0 0 8px;font-size:14px}.site-footer{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:24px;font-size:14px;display:flex}.site-footer a{color:inherit}.site-footer .lang{flex-basis:100%;justify-content:center;gap:12px;display:flex}.site-footer .lang [aria-current]{font-weight:600;text-decoration:none}kbd{border:1px solid var(--line);background:var(--panel);border-radius:4px;padding:1px 6px;font-size:.85em}@media (orientation:portrait){.app{grid-template-columns:1fr;grid-template-rows:minmax(var(--bar), auto) auto 1fr;margin-top:var(--ad-top);height:calc(100dvh - var(--ad-top) - var(--action-bar));grid-template-areas:"toolbar""options""stage"}html[data-ads=off] .app{height:calc(100dvh - var(--action-bar));margin-top:0}.ad{width:auto;height:var(--ad-top);border-right:none;border-bottom:1px solid var(--line);inset:0 0 auto}.actions{z-index:20;border-top:1px solid var(--surface-edge);background:var(--surface);box-shadow:inset 0 1px 0 var(--surface-rim), 0 -8px 24px -12px var(--stage-shade);-webkit-backdrop-filter:var(--surface-blur);backdrop-filter:var(--surface-blur);padding:0 0 env(safe-area-inset-bottom);--glass-fill:var(--lightningcss-light,#0f172a0f) var(--lightningcss-dark,#2c3442);gap:0;position:fixed;bottom:0;left:0;right:0}.actions:before{display:none}.toolbar{padding-right:6px}.actions [data-action]{isolation:isolate;min-width:0;box-shadow:none;background:0 0;border:none;border-radius:0;flex:1;position:relative;scale:none}.actions [data-action]:before{content:"";z-index:-1;border:1px solid var(--g-edge);border-radius:var(--r-ctl);background:var(--g-fill);box-shadow:var(--g-lift);scale:var(--g-scale);transition:background-color .12s,border-color .12s,scale .12s;position:absolute;inset:4px 2px}.actions [data-action]:focus-visible{outline:none}.actions [data-action]:focus-visible:before{outline:2px solid var(--focus);outline-offset:1px}.actions.stacked [data-action]{padding:0 2px}.actions [data-action=undo],.actions [data-action=redo]{flex:0 0 48px}.toast{bottom:calc(var(--action-bar) + 8px + var(--zoom-h) + 8px)}body{padding-left:0}.app~.site-footer{padding-bottom:calc(24px + var(--action-bar))}}@media (orientation:portrait) and (max-width:359px){.pane-head{gap:6px;padding:12px}.pane-tab{padding:6px}.actions [data-action=undo],.actions [data-action=redo]{flex-basis:44px}.actions [data-action]:before{inset:4px 1px}}@media (pointer:coarse){:root{--opt-bar:52px;--ctl:44px;--act:44px;--zoom-h:46px}.export-item,.export-confirm,.menu button{min-height:44px}.zoom button{min-width:44px}.zoom [data-zoom=toggle]{min-width:56px}.opt-bold,.opt-icon,.opt-pop,.pk-eyedrop{min-width:44px}.opt-pop{line-height:15px}.opt-name{font-size:12px;line-height:13px}.opt-seg button,.pk-eyedrop,.to-top,.opt-filter-apply{min-height:44px}.opt-seg:not(.opt-marks) button{padding-inline:10px}.export-size .opt-seg button,.pane-tab-icon{padding-inline:8px}.opt{min-height:44px}.export-quality input[type=range]{appearance:none;background:0 0;height:44px;margin:0}.export-quality input[type=range]::-webkit-slider-runnable-track{background:var(--line);border-radius:2px;height:4px}.export-quality input[type=range]::-moz-range-track{background:var(--line);border-radius:2px;height:4px}.export-quality input[type=range]::-webkit-slider-thumb{border:1px solid var(--muted);background:var(--bg);appearance:none;border-radius:50%;width:24px;height:24px;margin-top:-10px}.export-quality input[type=range]::-moz-range-thumb{border:1px solid var(--muted);background:var(--bg);border-radius:50%;width:24px;height:24px}.opt-size input,.opt-select{min-height:44px;font-size:16px}.opt input[type=checkbox],.hist-switch input{width:22px;height:22px}.opt-swatch,.opt-bg,.pk-swatch{width:44px;height:44px}.pk-row{max-width:268px}.pk-bgs{max-width:194px}.picker input[type=color],.pane-tab,.ml-prompt-buttons button,.ocr-buttons button{min-height:44px}.pane-head [data-action=close-pane],.photo-note-close{width:44px;height:44px}}@media (prefers-reduced-transparency:reduce){:root{--surface:var(--bg);--surface-hover:var(--panel);--toast-bg:var(--ink);--surface-blur:none}}@media (prefers-reduced-motion:reduce){:root{--press-scale:1}}@media (prefers-contrast:more){:root{--glass-edge:var(--lightningcss-light,#4b5563) var(--lightningcss-dark,#9ca3af);--glass-edge-hover:var(--ink);--divider:var(--glass-edge);--swatch-edge:var(--glass-edge);--glass-sheen:transparent;--glass-rim:transparent;--cta-sheen:transparent;--cta-rim:transparent;--surface:var(--bg);--surface-edge:var(--glass-edge);--surface-rim:transparent;--surface-blur:none;--toast-bg:var(--ink);--stage-shade:transparent;--fill:var(--lightningcss-light,#0f172a38) var(--lightningcss-dark,#ffffff1f);--fill-live:var(--lightningcss-light,#2563eb42) var(--lightningcss-dark,#60a5fa38)}:is(.toolbar [data-tool],.opt-filter)[aria-pressed=true],.pane-tab[aria-selected=true]{--g-lift:inset 0 0 0 1px var(--glass-sel-edge), var(--glass-lift)}.opt-seg button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--glass-sel-edge)}}@media (forced-colors:active){:root{--glass-edge:ButtonText;--glass-edge-hover:ButtonText;--divider:ButtonText;--surface:Canvas;--surface-edge:CanvasText;--toast-bg:Canvas;--surface-blur:none}:is(.toolbar [data-tool],.opt-filter,.opt-seg button)[aria-pressed=true],.pane-tab[aria-selected=true],.export-item[aria-current=true]{forced-color-adjust:none;color:selecteditemtext;box-shadow:none;background:selecteditem;border-color:selecteditem}:where(button):disabled{--g-op:1;color:graytext}.toast{border-color:canvastext}.opt-swatch,.opt-bg,.pk-swatch{forced-color-adjust:none}}