:root{--color-bg: #FFFFFF;--color-surface: #FFFFFF;--color-surface-alt: #F5F5F7;--color-surface-sunken: #EEEEF1;--color-text: #111114;--color-text-muted: #6E6E73;--color-text-subtle: #8E8E93;--color-text-on-primary: #FFFFFF;--color-border: rgba(17, 17, 20, .08);--color-border-strong: rgba(17, 17, 20, .16);--color-overlay: rgba(0, 0, 0, .45);--color-primary: #EF4444;--color-primary-hover: #DC2626;--color-primary-pressed: #B91C1C;--color-primary-soft: #FDECEC;--color-success: #16A34A;--color-warning: #F59E0B;--color-danger: #DC2626;--color-info: #2563EB;--font-ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", Roboto, system-ui, sans-serif;--font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", system-ui, sans-serif;--fs-display: 28px;--lh-display: 34px;--fs-title: 20px;--lh-title: 26px;--fs-heading: 17px;--lh-heading: 22px;--fs-body: 15px;--lh-body: 22px;--fs-body-sm: 14px;--lh-body-sm: 20px;--fs-caption: 13px;--lh-caption: 18px;--fs-micro: 11px;--lh-micro: 14px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .02em;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--screen-pad-x: var(--space-4);--screen-pad-x-md: var(--space-6);--screen-pad-x-lg: var(--space-8);--container-mobile: 480px;--container-lg: 1120px;--touch-min: 44px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(17,17,20,.05);--shadow-sm: 0 2px 6px rgba(17,17,20,.06);--shadow-md: 0 4px 12px rgba(17,17,20,.08);--shadow-lg: 0 12px 32px rgba(17,17,20,.14);--shadow-sheet: 0 -12px 32px rgba(17,17,20,.14);--shadow-focus: 0 0 0 3px rgba(239, 68, 68, .3);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .32s;--dur-sheet: .26s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.3, 0, 0, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1);--z-nav: 10;--z-sticky: 20;--z-dropdown: 100;--z-sheet: 900;--z-modal: 1000;--z-toast: 1100}[data-theme=dark]{--color-bg: #000000;--color-surface: #1C1C1E;--color-surface-alt: #111114;--color-surface-sunken: #0A0A0C;--color-text: #FFFFFF;--color-text-muted: #A1A1A6;--color-text-subtle: #8E8E93;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .18);--color-overlay: rgba(0, 0, 0, .7);--color-primary: #EF4444;--color-primary-hover: #F87171;--color-primary-pressed: #DC2626;--color-primary-soft: rgba(239, 68, 68, .16);--shadow-xs: 0 1px 2px rgba(0,0,0,.4);--shadow-sm: 0 2px 6px rgba(0,0,0,.45);--shadow-md: 0 4px 12px rgba(0,0,0,.5);--shadow-lg: 0 12px 32px rgba(0,0,0,.6);--shadow-sheet: 0 -12px 32px rgba(0,0,0,.55);--shadow-focus: 0 0 0 3px rgba(239, 68, 68, .4);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg: #000000;--color-surface: #1C1C1E;--color-surface-alt: #111114;--color-surface-sunken: #0A0A0C;--color-text: #FFFFFF;--color-text-muted: #A1A1A6;--color-text-subtle: #8E8E93;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .18);--color-overlay: rgba(0, 0, 0, .7);--color-primary-hover: #F87171;--color-primary-soft: rgba(239, 68, 68, .16);--shadow-xs: 0 1px 2px rgba(0,0,0,.4);--shadow-sm: 0 2px 6px rgba(0,0,0,.45);--shadow-md: 0 4px 12px rgba(0,0,0,.5);--shadow-lg: 0 12px 32px rgba(0,0,0,.6);--shadow-sheet: 0 -12px 32px rgba(0,0,0,.55);--shadow-focus: 0 0 0 3px rgba(239, 68, 68, .4);color-scheme:dark}}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms;--dur-sheet: 0ms}}.ui-icon{display:inline-flex;align-items:center;justify-content:center;color:currentColor;flex:0 0 auto}.ui-icon>svg{width:100%;height:100%;display:block}.ui-icon[data-size="20"]{width:20px;height:20px}.ui-icon[data-size="24"]{width:24px;height:24px}.ui-icon[data-size="28"]{width:28px;height:28px}.ui-icon[data-size="32"]{width:32px;height:32px}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-normal);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);text-decoration:none;white-space:nowrap;user-select:none;-webkit-tap-highlight-color:transparent}.ui-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-btn:active:not(:disabled){transform:scale(.98)}.ui-btn:disabled{cursor:not-allowed;opacity:.4;transform:none}.ui-btn[data-size=sm]{min-height:36px;padding:0 var(--space-3);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.ui-btn[data-size=lg]{min-height:52px;padding:0 var(--space-6);font-size:var(--fs-heading);line-height:var(--lh-heading)}.ui-btn[data-variant=primary]{background:var(--color-primary);color:var(--color-text-on-primary)}.ui-btn[data-variant=primary]:hover:not(:disabled){background:var(--color-primary-hover)}.ui-btn[data-variant=primary]:active:not(:disabled){background:var(--color-primary-pressed)}.ui-btn[data-variant=secondary]{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.ui-btn[data-variant=secondary]:hover:not(:disabled){background:var(--color-surface-alt)}.ui-btn[data-variant=tertiary]{background:transparent;color:var(--color-text)}.ui-btn[data-variant=tertiary]:hover:not(:disabled){background:var(--color-surface-alt)}.ui-btn[data-variant=destructive]{background:var(--color-danger);color:var(--color-text-on-primary)}.ui-btn[data-variant=destructive]:hover:not(:disabled){filter:brightness(1.05)}.ui-btn[data-full=true]{width:100%}.ui-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);padding:0;border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--color-text);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);-webkit-tap-highlight-color:transparent}.ui-icon-btn:hover:not(:disabled){background:var(--color-surface-alt)}.ui-icon-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-icon-btn:active:not(:disabled){transform:scale(.96)}.ui-icon-btn:disabled{cursor:not-allowed;opacity:.4}.ui-icon-btn[data-size="40"]{width:40px;height:40px}.ui-card{display:block;padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);text-decoration:none;transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard)}a.ui-card,button.ui-card{cursor:pointer;text-align:left;width:100%;font:inherit}a.ui-card:hover,button.ui-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}a.ui-card:focus-visible,button.ui-card:focus-visible{outline:none;box-shadow:var(--shadow-focus),var(--shadow-md)}.ui-card[data-variant=promo]{padding:var(--space-8);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md)}.ui-card[data-variant=feature]{padding:var(--space-8);border-radius:var(--radius-2xl);display:flex;flex-direction:column;gap:var(--space-3)}.ui-card[data-variant=feature] .ui-card-title{margin-bottom:0}.ui-card[data-tone=primary]{background:var(--color-primary);color:var(--color-text-on-primary);border-color:transparent}.ui-card[data-tone=soft]{background:var(--color-primary-soft);color:var(--color-text);border-color:transparent}.ui-card-eyebrow{display:block;font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);color:var(--color-text-muted);text-transform:uppercase;margin-bottom:var(--space-2)}.ui-card[data-tone=primary] .ui-card-eyebrow{color:var(--color-text-on-primary);opacity:.85}.ui-card-title{font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-2);color:inherit}.ui-card-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--color-text-muted);margin:0}.ui-card[data-tone=primary] .ui-card-body{color:var(--color-text-on-primary);opacity:.9}.ui-card[data-variant=product]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:var(--space-5)}.ui-card-thumb{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary)}@keyframes uiThumbWiggle{0%{transform:rotate(0)}25%{transform:rotate(-6deg)}50%{transform:rotate(4deg)}75%{transform:rotate(-2deg)}to{transform:rotate(0)}}@media(hover:hover)and (pointer:fine){a.ui-card:hover .ui-card-thumb,button.ui-card:hover .ui-card-thumb{animation:uiThumbWiggle var(--dur-slow) var(--ease-standard)}}a.ui-card:focus-visible .ui-card-thumb,button.ui-card:focus-visible .ui-card-thumb{animation:uiThumbWiggle var(--dur-slow) var(--ease-standard)}@media(prefers-reduced-motion:reduce){a.ui-card:hover .ui-card-thumb,button.ui-card:hover .ui-card-thumb,a.ui-card:focus-visible .ui-card-thumb,button.ui-card:focus-visible .ui-card-thumb{animation:none}}.ui-card-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-xs);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}.ui-card-badge[data-tone=new]{background:var(--color-primary);color:var(--color-text-on-primary)}.ui-card-badge[data-tone=plan]{background:var(--color-surface-alt);color:var(--color-text-muted)}.ui-card[data-tone=primary] .ui-card-badge[data-tone=plan]{background:var(--color-text-on-primary);color:var(--color-primary)}.ui-card[data-variant=list-row]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);box-shadow:none}.ui-card[data-variant=list-row] .ui-card-title{font-size:var(--fs-heading);line-height:var(--lh-heading);margin:0}.ui-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);font-family:var(--font-ui);color:var(--color-text)}.ui-section-header-title{font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);margin:0}.ui-section-header-subtitle{display:block;margin-top:var(--space-1);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--color-text-muted);font-weight:var(--fw-regular)}.ui-section-header-action{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);color:var(--color-primary);text-decoration:none}.ui-section-header-action:hover{color:var(--color-primary-hover)}.ui-section-header-action:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}.ui-field{display:flex;flex-direction:column;gap:var(--space-2);font-family:var(--font-ui)}.ui-field-label{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium);color:var(--color-text)}.ui-field-hint{font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--color-text-muted)}.ui-field-error{font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--color-danger);font-weight:var(--fw-medium)}.ui-text-input,.ui-textarea,.ui-select{display:block;width:100%;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-alt);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard)}.ui-text-input::placeholder,.ui-textarea::placeholder{color:var(--color-text-subtle)}.ui-text-input:focus-visible,.ui-textarea:focus-visible,.ui-select:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus);background:var(--color-surface)}.ui-textarea{min-height:96px;resize:vertical}.ui-field[data-invalid=true] .ui-text-input,.ui-field[data-invalid=true] .ui-textarea,.ui-field[data-invalid=true] .ui-select{border-color:var(--color-danger)}.ui-search{display:flex;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-alt);color:var(--color-text);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.ui-search:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus);background:var(--color-surface)}.ui-search-icon{color:var(--color-text-muted)}.ui-search-input{flex:1 1 auto;border:0;background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:max(var(--fs-body),16px);line-height:var(--lh-body);outline:none;min-width:0}.ui-search-input::placeholder{color:var(--color-text-subtle)}.ui-radio-row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard);text-align:left}.ui-radio-row:hover{background:var(--color-surface-alt)}.ui-radio-row:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-radio-row[aria-checked=true]{background:var(--color-primary-soft);border-color:transparent}.ui-radio-row-check{margin-left:auto;color:var(--color-primary);opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.ui-radio-row[aria-checked=true] .ui-radio-row-check{opacity:1}.ui-stepper{display:inline-flex;align-items:center;gap:var(--space-1);padding:4px;background:var(--color-surface-alt);border-radius:var(--radius-pill)}.ui-stepper-btn{width:var(--touch-min);height:var(--touch-min);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--dur-fast) var(--ease-standard)}.ui-stepper-btn:hover:not(:disabled){background:var(--color-surface)}.ui-stepper-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-stepper-btn:disabled{opacity:.4;cursor:not-allowed}.ui-stepper-value{min-width:40px;text-align:center;font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold);color:var(--color-text)}.ui-tabs{display:inline-flex;align-items:center;padding:4px;background:var(--color-surface-alt);border-radius:var(--radius-pill)}.ui-tab{display:inline-flex;align-items:center;min-height:36px;padding:0 var(--space-4);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.ui-tab:hover{color:var(--color-text)}.ui-tab:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-tab[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs)}.ui-dropdown{position:relative;display:inline-block}.ui-dropdown-panel{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:220px;padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);display:none}.ui-dropdown[data-open=true] .ui-dropdown-panel{display:block}.ui-dropdown-item{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:40px;padding:0 var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);cursor:pointer;text-align:left;text-decoration:none}.ui-dropdown-item:hover{background:var(--color-surface-alt)}.ui-dropdown-item:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-scrim{position:fixed;inset:0;background:var(--color-overlay);z-index:var(--z-sheet);opacity:0;animation:uiFadeIn var(--dur-base) var(--ease-standard) forwards}.ui-sheet{position:fixed;left:0;right:0;bottom:0;z-index:calc(var(--z-sheet) + 1);background:var(--color-surface);color:var(--color-text);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);box-shadow:var(--shadow-sheet);padding:var(--space-6) var(--space-6) calc(var(--space-6) + env(safe-area-inset-bottom,0));max-height:85dvh;overflow-y:auto;transform:translateY(100%);animation:uiSheetIn var(--dur-sheet) var(--ease-emphasized) forwards}.ui-sheet-handle{display:block;width:36px;height:4px;margin:0 auto var(--space-4);border-radius:var(--radius-pill);background:var(--color-border-strong)}.ui-sheet-title{font-family:var(--font-ui);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);color:var(--color-text);margin:0 0 var(--space-4)}.ui-sheet-actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-6)}.ui-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 2 * var(--space-4)));max-height:min(80dvh,640px);overflow-y:auto;background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:calc(var(--z-modal) + 1);padding:var(--space-6);opacity:0;animation:uiDialogIn var(--dur-base) var(--ease-emphasized) forwards}.ui-dialog-title{font-family:var(--font-ui);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);color:var(--color-text);margin:0 0 var(--space-2)}.ui-dialog-body{font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--color-text-muted);margin:0 0 var(--space-6)}.ui-dialog-badge{width:64px;height:64px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-text-on-primary);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4)}.ui-dialog-actions{display:flex;flex-direction:column;gap:var(--space-2)}@media(min-width:768px){.ui-sheet[data-adaptive=true]{inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(480px,calc(100% - 2 * var(--space-6)));max-height:min(80dvh,640px);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:uiDialogIn var(--dur-base) var(--ease-emphasized) forwards;padding:var(--space-6)}.ui-sheet[data-adaptive=true] .ui-sheet-handle{display:none}}@keyframes uiFadeIn{0%{opacity:0}to{opacity:1}}@keyframes uiSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes uiDialogIn{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.ui-toast{position:fixed;left:50%;bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0));transform:translate(-50%);padding:var(--space-3) var(--space-5);background:var(--color-text);color:var(--color-bg);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium);z-index:var(--z-toast);max-width:calc(100% - 2 * var(--space-4))}.ui-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text-muted);border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.ui-theme-toggle:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--color-surface)}.ui-theme-toggle:active{transform:scale(.96)}.ui-theme-toggle:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-theme-toggle-icon{position:relative;display:inline-flex;width:18px;height:18px;transition:transform var(--dur-base) var(--ease-standard)}.ui-theme-toggle:hover .ui-theme-toggle-icon{transform:rotate(-12deg)}.ui-theme-toggle-icon svg{position:absolute;inset:0;transition:opacity var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-emphasized)}.ui-theme-toggle-moon{opacity:1;transform:rotate(0) scale(1)}.ui-theme-toggle-sun{opacity:0;transform:rotate(-90deg) scale(.35)}.ui-theme-toggle[data-theme=dark] .ui-theme-toggle-moon{opacity:0;transform:rotate(90deg) scale(.35)}.ui-theme-toggle[data-theme=dark] .ui-theme-toggle-sun{opacity:1;transform:rotate(0) scale(1)}.ui-theme-toggle[data-ready=false] .ui-theme-toggle-icon svg{transition:none}body[data-shell=app]{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-ui);--green: var(--color-primary);--green-dark: var(--color-primary-hover);--yellow: var(--color-warning);--page: var(--color-bg);--band: var(--color-surface-alt);--surface: var(--color-surface);--card: var(--color-surface);--text: var(--color-text);--text-dark: var(--color-text);--muted: var(--color-text-muted);--subtle: var(--color-text-subtle);--line: var(--color-border);--shadow: var(--shadow-md);--soft-shadow: var(--shadow-sm);--radius-card: var(--radius-lg)}body[data-shell=app] .ui-button-dark{background:var(--color-primary);color:var(--color-text-on-primary)}body[data-shell=app] .ui-button-dark:hover:not(:disabled){background:var(--color-primary-hover)}body[data-shell=app] .ui-button-danger{background:var(--color-danger);color:var(--color-text-on-primary)}body[data-shell=app] .drop-zone:hover,body[data-shell=app] .drop-zone[data-dragging=true],body[data-shell=app] .tool-workspace-shell .drop-zone:hover,body[data-shell=app] .tool-workspace-shell .drop-zone[data-dragging=true]{background:var(--color-primary-soft)!important}body[data-shell=app] .settings-panel h2,body[data-shell=app] .settings-panel h3,body[data-shell=app] .upload-panel h2,body[data-shell=app] .upload-panel h3,body[data-shell=app] .intake-files-head h3{color:var(--color-text);font-family:var(--font-ui);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight)}body[data-shell=app] .merge-file-row,body[data-shell=app] .merge-file-actions button,body[data-shell=app] .split-range-row,body[data-shell=app] .organize-tile,body[data-shell=app] .organize-tile[data-selected=true],body[data-shell=app] .page-preview-frame,body[data-shell=app] .page-preview-dialog,body[data-shell=app] .output-summary,body[data-shell=app] .output-file,body[data-shell=app] .file-selector,body[data-shell=app] .file-selector button,body[data-shell=app] .signature-upload,body[data-shell=app] .signature-preview,body[data-shell=app] .stage-panel,body[data-shell=app] .crop-grid{background:var(--color-surface-alt);color:var(--color-text);border-color:var(--color-border)}body[data-shell=app] .output-summary strong{color:var(--color-text);font-weight:var(--fw-semibold)}body[data-shell=app] .output-summary span{color:var(--color-text-muted)}body[data-shell=app] .output-summary[data-gain=true] span{color:var(--color-success)}body[data-shell=app] .ui-input,body[data-shell=app] .ui-textarea,body[data-shell=app] .tool-workspace-shell .ui-input,body[data-shell=app] .tool-workspace-shell .ui-textarea{background:var(--color-surface-alt);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);min-height:var(--touch-min);padding:var(--space-3) var(--space-4)}body[data-shell=app] .ui-input::placeholder,body[data-shell=app] .ui-textarea::placeholder{color:var(--color-text-subtle)}body[data-shell=app] .ui-input:focus-visible,body[data-shell=app] .ui-textarea:focus-visible,body[data-shell=app] .tool-workspace-shell .ui-input:focus-visible,body[data-shell=app] .tool-workspace-shell .ui-textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .form-fields{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);padding:var(--space-5)}body[data-shell=app] .split-mode-tabs button,body[data-shell=app] .advanced-page-actions button,body[data-shell=app] .advanced-split-group-head button,body[data-shell=app] .advanced-split-pages button{background:var(--color-surface-alt);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-muted);font-family:var(--font-ui);font-weight:var(--fw-semibold);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .split-mode-tabs button:hover,body[data-shell=app] .advanced-page-actions button:hover,body[data-shell=app] .advanced-split-group-head button:hover,body[data-shell=app] .advanced-split-pages button:hover{color:var(--color-text)}body[data-shell=app] .split-mode-tabs button:focus-visible,body[data-shell=app] .advanced-page-actions button:focus-visible,body[data-shell=app] .advanced-split-group-head button:focus-visible,body[data-shell=app] .advanced-split-pages button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .split-mode-tabs button[data-active=true],body[data-shell=app] .advanced-page-actions button[data-active=true],body[data-shell=app] .advanced-split-group-head button[data-active=true],body[data-shell=app] .advanced-split-pages button[data-active=true]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary)}body[data-shell=app] .merge-file-position,body[data-shell=app] .split-range-index,body[data-shell=app] .order-pill:not([data-move-state]){background:var(--color-primary-soft);color:var(--color-primary)}body[data-shell=app] .organize-tile[data-selected=true],body[data-shell=app] .file-selector button[aria-selected=true]{background:var(--color-primary-soft);color:var(--color-primary);border-color:var(--color-primary)}body[data-shell=app] .merge-file-details small,body[data-shell=app] .output-summary small,body[data-shell=app] .split-range-hint,body[data-shell=app] .setting-note{color:var(--color-text-muted);font-family:var(--font-ui)}body[data-shell=app] .text-result-actions span{color:var(--color-primary)}body[data-shell=app] .merge-file-thumb,body[data-shell=app] .page-preview-loading{background:var(--color-surface-alt)}body[data-shell=app] .workspace-header p,body[data-shell=app] .settings-panel p{color:var(--color-text-muted);font-family:var(--font-ui)}body[data-shell=app] .tool-workspace-shell a:not(.ui-btn):not(.ui-icon-btn):not([data-billing-tool-id]):not(.workspace-sample-link):not(.download-button):not(.pill-button){color:var(--color-primary)}.ui-app-shell{min-height:100dvh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-ui);--bottom-nav-offset: calc(64px + env(safe-area-inset-bottom, 0)) ;padding-bottom:var(--bottom-nav-offset)}.ui-app-shell:not(:has(.ui-bottom-tabs)){--bottom-nav-offset: env(safe-area-inset-bottom, 0)}@media(min-width:1024px){.ui-app-shell{padding-bottom:0}}.ui-appbar{position:sticky;top:0;z-index:var(--z-nav);display:grid;grid-template-columns:var(--touch-min) 1fr var(--touch-min);align-items:center;gap:var(--space-2);height:56px;padding:0 var(--space-2);background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--color-border)}.ui-appbar-title{font-family:var(--font-ui);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold);color:var(--color-text);text-align:center;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-topnav{display:none}@media(min-width:1024px){.ui-topnav{position:sticky;top:0;z-index:var(--z-nav);display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) var(--screen-pad-x-lg);background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--color-border)}.ui-appbar{display:none}}.ui-topnav-brand{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);color:var(--color-text);text-decoration:none}.ui-topnav-brand-icon{width:24px;height:24px;border-radius:var(--radius-sm);flex-shrink:0}.ui-topnav-brand-dot{display:inline-block;align-self:flex-start;margin-left:calc(var(--space-1) - var(--space-2));width:6px;height:6px;border-radius:var(--radius-pill);background:var(--color-primary)}.ui-topnav-links{display:flex;align-items:center;gap:var(--space-4);list-style:none;margin:0;padding:0;flex:1 1 auto}.ui-topnav-link{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);text-decoration:none;border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard)}.ui-topnav-link:hover{color:var(--color-text);background:var(--color-surface-alt)}.ui-topnav-link:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ui-topnav-link[aria-current=page]{color:var(--color-text)}.ui-topnav-actions{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}.ui-topnav-usage{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);white-space:nowrap}.ui-bottom-tabs{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-nav);display:grid;grid-template-columns:repeat(5,1fr);height:calc(64px + env(safe-area-inset-bottom,0));padding-bottom:env(safe-area-inset-bottom,0);background:color-mix(in srgb,var(--color-bg) 96%,transparent);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid var(--color-border)}@media(min-width:1024px){.ui-bottom-tabs{display:none}}.ui-bottom-tab{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:64px;padding:0;border:0;background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);text-decoration:none;cursor:pointer;transition:color var(--dur-fast) var(--ease-standard)}.ui-bottom-tab:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--color-primary-soft)}.ui-bottom-tab[aria-current=page]{color:var(--color-primary)}.ui-bottom-tab-action{gap:var(--space-1)}.ui-bottom-tab-action-circle{display:inline-grid;place-items:center;width:var(--touch-min);height:var(--touch-min);margin-top:calc(var(--space-2) * -1);background:var(--color-primary);color:var(--color-text-on-primary);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);transition:transform var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard)}.ui-bottom-tab-action:hover .ui-bottom-tab-action-circle{background:var(--color-primary-hover)}.ui-bottom-tab-action:active .ui-bottom-tab-action-circle{background:var(--color-primary-pressed);transform:scale(.96)}.ui-bottom-tab-action:focus-visible{box-shadow:none}.ui-bottom-tab-action:focus-visible .ui-bottom-tab-action-circle{box-shadow:var(--shadow-focus)}.ui-bottom-tab-action-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-bottom-tab-action-icon,.ui-bottom-tab-action-spinner{display:inline-grid;place-items:center;grid-area:1 / 1}.ui-bottom-tab-action-spinner,.ui-bottom-tab-action-label .is-replace,.ui-bottom-tab-action[aria-busy=true] .ui-bottom-tab-action-icon{display:none}.ui-bottom-tab-action[aria-busy=true] .ui-bottom-tab-action-spinner{display:inline-grid}.ui-bottom-tab-action[aria-busy=true] .ui-bottom-tab-action-spinner svg{animation:mw-spin .9s linear infinite}.ui-app-shell:has([data-pdf-intake][data-loaded=true]):not(:has([data-pdf-intake-files])) .ui-bottom-tab-action-label .is-add{display:none}.ui-app-shell:has([data-pdf-intake][data-loaded=true]):not(:has([data-pdf-intake-files])) .ui-bottom-tab-action-label .is-replace{display:block}@media(prefers-reduced-motion:reduce){.ui-bottom-tab-action[aria-busy=true] .ui-bottom-tab-action-spinner svg{animation:none}}.ui-shell-intake-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ui-shell-intake-notice{position:fixed;left:50%;bottom:calc(var(--bottom-nav-offset) + var(--space-3));z-index:var(--z-sticky);width:min(var(--container-mobile),calc(100% - var(--space-8)));margin:0;padding:var(--space-3) var(--space-4);transform:translate(-50%);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-lg);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);text-align:center}.ui-shell-intake-notice[hidden]{display:none}@media(min-width:1024px){.ui-shell-intake-notice{top:calc(72px + var(--space-3));bottom:auto}}.ui-page{width:100%;max-width:var(--container-lg);margin:0 auto;padding:var(--space-6) var(--screen-pad-x)}@media(min-width:640px){.ui-page{padding-left:var(--screen-pad-x-md);padding-right:var(--screen-pad-x-md)}}@media(min-width:1024px){.ui-page{padding:var(--space-10) var(--screen-pad-x-lg)}}body[data-shell=app] .tool-workspace-shell{background:transparent;border-radius:0;box-shadow:none;padding:var(--space-4);overflow:visible}@media(min-width:768px){body[data-shell=app] .tool-workspace-shell{padding:var(--space-6)}}body[data-shell=app] .tool-workspace-shell:before,body[data-shell=app] .tool-workspace-shell:after{display:none}body[data-shell=app] .tool-workspace-shell .workspace-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body[data-shell=app] .tool-workspace-shell .workspace-header[data-compact=true]{margin-bottom:0}body[data-shell=app] .tool-workspace-shell .upload-panel,body[data-shell=app] .tool-workspace-shell .settings-panel,body[data-shell=app] .tool-workspace-shell .pages-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);padding:var(--space-5)}body[data-shell=app] .tool-workspace-shell .pages-panel{padding:var(--space-4)}@media(min-width:640px){body[data-shell=app] .tool-workspace-shell .pages-panel{padding:var(--space-5)}}body[data-shell=app] .pill-button{min-height:var(--touch-min);border-radius:var(--radius-md);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold);padding:0 var(--space-4);transition:background-color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);box-shadow:none;gap:var(--space-2)}body[data-shell=app] .pill-button:hover{transform:none}body[data-shell=app] .pill-button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .pill-button.dark{background:var(--color-primary);color:var(--color-text-on-primary);padding:0 var(--space-6)}body[data-shell=app] .pill-button.dark:hover{background:var(--color-primary-hover)}body[data-shell=app] .pill-button.dark:active{background:var(--color-primary-pressed)}body[data-shell=app] .pill-button.light{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);padding:0 var(--space-5)}body[data-shell=app] .pill-button.light:hover{background:var(--color-surface-alt)}body[data-shell=app] .drop-zone,body[data-shell=app] .tool-workspace-shell .drop-zone{border:2px dashed var(--color-border-strong);background:var(--color-surface-alt);border-radius:var(--radius-lg);color:var(--color-text);font-family:var(--font-ui);padding:var(--space-8) var(--space-6);transform:none;transition:border-color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .drop-zone:hover,body[data-shell=app] .drop-zone:focus-within,body[data-shell=app] .drop-zone[data-dragging=true],body[data-shell=app] .tool-workspace-shell .drop-zone:hover,body[data-shell=app] .tool-workspace-shell .drop-zone:focus-within,body[data-shell=app] .tool-workspace-shell .drop-zone[data-dragging=true]{border-color:var(--color-primary);background:var(--color-primary-soft);transform:none}body[data-shell=app] .drop-zone svg,body[data-shell=app] .tool-workspace-shell .drop-zone svg{color:var(--color-primary);width:40px;height:40px}body[data-shell=app] .drop-zone strong,body[data-shell=app] .tool-workspace-shell .drop-zone strong{font-family:var(--font-ui);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold);color:var(--color-text)}body[data-shell=app] .drop-zone span,body[data-shell=app] .drop-zone small,body[data-shell=app] .tool-workspace-shell .drop-zone span,body[data-shell=app] .tool-workspace-shell .drop-zone small{font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--color-text-muted)}body[data-shell=app] .ui-button.ui-button-green,body[data-shell=app] .tool-workspace-shell .ui-button-green{background:var(--color-primary);color:var(--color-text-on-primary);border:0;border-radius:var(--radius-md);min-height:var(--touch-min);padding:0 var(--space-5);font-family:var(--font-ui);font-size:var(--fs-body);line-height:1;font-weight:var(--fw-semibold);box-shadow:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .ui-button.ui-button-green:hover,body[data-shell=app] .tool-workspace-shell .ui-button-green:hover{background:var(--color-primary-hover)}body[data-shell=app] .ui-button.ui-button-light,body[data-shell=app] .tool-workspace-shell .ui-button-light{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);min-height:var(--touch-min);padding:0 var(--space-5);font-family:var(--font-ui);font-size:var(--fs-body);line-height:1;font-weight:var(--fw-semibold);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .ui-button.ui-button-light:hover,body[data-shell=app] .tool-workspace-shell .ui-button-light:hover{background:var(--color-surface-alt)}body[data-shell=app] .ui-button:focus-visible,body[data-shell=app] .tool-workspace-shell .ui-button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .workspace-sample-link,body[data-shell=app] .tool-workspace-shell .workspace-sample-link{color:var(--color-primary);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);background:transparent;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}body[data-shell=app] .workspace-sample-link:hover:not(:disabled),body[data-shell=app] .tool-workspace-shell .workspace-sample-link:hover:not(:disabled){color:var(--color-primary-hover)}body[data-shell=app] .workspace-sample-link svg,body[data-shell=app] .tool-workspace-shell .workspace-sample-link svg{color:var(--color-primary)}body[data-shell=app] .intake-bar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--color-text)}body[data-shell=app] .intake-name strong{color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold)}body[data-shell=app] .intake-size,body[data-shell=app] .intake-name em{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-style:normal}body[data-shell=app] .intake-trust{color:var(--color-primary);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold)}body[data-shell=app] .download-button{background:var(--color-primary);color:var(--color-text-on-primary);border:0;border-radius:var(--radius-md);min-height:var(--touch-min);padding:0 var(--space-5);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold);box-shadow:none;transition:background-color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .download-button:hover{background:var(--color-primary-hover)}body[data-shell=app] .download-button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .form-fields input[type=text],body[data-shell=app] .form-fields input[type=password],body[data-shell=app] .form-fields input[type=number],body[data-shell=app] .form-fields select,body[data-shell=app] .form-fields textarea{min-height:var(--touch-min);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-alt);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body)}body[data-shell=app] .form-fields input:focus-visible,body[data-shell=app] .form-fields select:focus-visible,body[data-shell=app] .form-fields textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}body[data-shell=app] .form-fields label{color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium)}body[data-shell=app] .annotation-mode-tabs button{font-family:var(--font-ui);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--color-text-muted);background:transparent;border:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);cursor:pointer}body[data-shell=app] .annotation-mode-tabs button[aria-pressed=true],body[data-shell=app] .annotation-mode-tabs button.is-active{background:var(--color-primary-soft);color:var(--color-primary)}body[data-shell=app] .billing-modal-backdrop{background:var(--color-overlay);backdrop-filter:blur(4px)}body[data-shell=app] .billing-modal-card{background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-family:var(--font-ui);border:1px solid var(--color-border)}body[data-shell=app] .billing-modal-card h2,body[data-shell=app] .billing-modal-card h3{font-family:var(--font-display);color:var(--color-text);letter-spacing:var(--tracking-tight)}body[data-shell=app] .billing-modal-card p{color:var(--color-text-muted);font-family:var(--font-ui)}body[data-shell=app] .billing-modal-eyebrow{color:var(--color-primary);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}body[data-shell=app] .billing-modal-price{font-family:var(--font-display);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-bold);color:var(--color-text)}body[data-shell=app] .billing-modal-close{background:transparent;border:0;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-pill);padding:var(--space-2);transition:background-color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .billing-modal-close:hover{background:var(--color-surface-alt)}body[data-shell=app] .billing-modal-close:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .billing-modal-upgrade,body[data-shell=app] .billing-modal-upgrade-green{background:var(--color-primary);color:var(--color-text-on-primary);border:0;border-radius:var(--radius-md);min-height:var(--touch-min);padding:0 var(--space-5);font-weight:var(--fw-semibold);font-size:var(--fs-body);line-height:1;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard);box-shadow:none}body[data-shell=app] .billing-modal-upgrade:hover,body[data-shell=app] .billing-modal-upgrade-green:hover{background:var(--color-primary-hover)}body[data-shell=app] .billing-modal-upgrade:focus-visible,body[data-shell=app] .billing-modal-upgrade-green:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .billing-modal-email input{min-height:var(--touch-min);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-alt);color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body);width:100%}body[data-shell=app] .billing-modal-email input:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}body[data-shell=app] .billing-modal-email span{color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium)}body[data-shell=app] .billing-modal-privacy{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .billing-modal-error{color:var(--color-danger);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .billing-restore-open{background:transparent;border:0;color:var(--color-primary);cursor:pointer;font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);text-decoration:underline;padding:0}body[data-shell=app] .billing-modal-eyebrow,body[data-shell=app] .paywall-ready-pill{background:var(--color-primary-soft);color:var(--color-primary);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}body[data-shell=app] .billing-modal-eyebrow svg,body[data-shell=app] .paywall-ready-pill svg{color:var(--color-primary)}body[data-shell=app] .billing-modal-card h2,body[data-shell=app] .billing-modal-card>p{color:var(--color-text);font-family:var(--font-display)}body[data-shell=app] .billing-modal-card>p{color:var(--color-text-muted);font-family:var(--font-ui)}body[data-shell=app] .billing-compact-benefits{gap:var(--space-3);margin-top:var(--space-6)}body[data-shell=app] .billing-compact-benefits span{background:var(--color-surface-alt);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius-md);padding:var(--space-3) var(--space-2);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold)}body[data-shell=app] .billing-compact-benefits svg{color:var(--color-primary)}body[data-shell=app] .billing-expanded-benefits>div>svg,body[data-shell=app] .paywall-page-benefits>div>svg{color:var(--color-primary)}body[data-shell=app] .billing-expanded-benefits strong,body[data-shell=app] .paywall-page-benefits strong{color:var(--color-text);font-family:var(--font-ui)}body[data-shell=app] .billing-expanded-benefits small,body[data-shell=app] .paywall-page-benefits small{color:var(--color-text-muted);font-family:var(--font-ui)}body[data-shell=app] .billing-modal-price{color:var(--color-text)!important;font-family:var(--font-display)!important;font-size:var(--fs-title)!important;line-height:var(--lh-title)!important;font-weight:var(--fw-bold)!important;margin:var(--space-6) 0 var(--space-3)!important}body[data-shell=app] .billing-modal-card-expanded{width:min(100%,880px);grid-template-columns:minmax(240px,.85fr) minmax(340px,1.15fr);border:1px solid var(--color-border)}body[data-shell=app] .billing-expanded-visual{padding:var(--space-8) var(--space-6) var(--space-6);background:radial-gradient(circle at 30% 20%,var(--color-primary-soft),transparent 55%),var(--color-surface-alt);border-right:1px solid var(--color-border);min-height:unset}body[data-shell=app] .billing-expanded-visual .paywall-illustration{color:var(--color-primary);width:100%;max-width:320px;margin:0 auto;align-self:center;justify-self:center}body[data-shell=app] .billing-expanded-copy{padding:var(--space-8) var(--space-8) var(--space-6)}body[data-shell=app] .billing-expanded-copy>p{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);margin:var(--space-3) 0 var(--space-6)}body[data-shell=app] .billing-expanded-benefits{gap:var(--space-4);margin-bottom:var(--space-6)}body[data-shell=app] .billing-expanded-benefits>div{gap:var(--space-3);align-items:flex-start}body[data-shell=app] .billing-expanded-benefits strong,body[data-shell=app] .paywall-page-benefits strong{font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold)}body[data-shell=app] .billing-expanded-benefits small,body[data-shell=app] .paywall-page-benefits small{font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-regular)}body[data-shell=app] .billing-expanded-checkout{margin-top:var(--space-2)}body[data-shell=app] .billing-modal-card h2{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:clamp(24px,2.6vw,32px);line-height:1.15;letter-spacing:var(--tracking-tight);max-width:18ch;margin:0}body[data-shell=app] .billing-modal-card-expanded h2{font-size:clamp(26px,2.8vw,34px)}body[data-shell=app] .billing-modal-card-compact{padding:var(--space-8)}body[data-shell=app] .billing-modal-card-compact h2{margin-top:var(--space-5)}body[data-shell=app] .billing-modal-card-compact>p{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);margin:var(--space-3) 0 0}body[data-shell=app] .billing-modal-close{top:var(--space-4);right:var(--space-4);width:36px;height:36px;background:transparent;color:var(--color-text-muted)}body[data-shell=app] .billing-modal-close:hover{background:var(--color-surface-alt);color:var(--color-text)}body[data-shell=app] .billing-restore-open,body[data-shell=app] .billing-recovery-cancel{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-medium);text-decoration:underline;text-underline-offset:3px}body[data-shell=app] .billing-restore-open:hover,body[data-shell=app] .billing-recovery-cancel:hover{color:var(--color-primary)}body[data-shell=app] .billing-modal-card-recovery{padding:var(--space-8)}body[data-shell=app] .billing-modal-card-recovery h2{font-size:clamp(24px,2.6vw,30px)}body[data-shell=app] .billing-modal-card-recovery [data-billing-recovery-form-panel]>p,body[data-shell=app] .billing-recovery-confirmation>p{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);margin:var(--space-3) 0 var(--space-6)}body[data-shell=app] .billing-recovery-confirmation>svg{color:var(--color-primary)}body[data-shell=app] .billing-modal-card{border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg)}body[data-shell=app] .billing-modal-backdrop{background:var(--color-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media(max-width:900px){body[data-shell=app] .billing-modal-card-expanded{grid-template-columns:1fr;width:min(100%,520px)}body[data-shell=app] .billing-expanded-copy{padding:var(--space-8) var(--space-6) var(--space-6)}}@media(max-width:640px){body[data-shell=app] .billing-expanded-copy,body[data-shell=app] .billing-modal-card-compact,body[data-shell=app] .billing-modal-card-recovery{padding:var(--space-6) var(--space-5) var(--space-5)}body[data-shell=app] .billing-modal-card h2{font-size:clamp(22px,6vw,28px)}}body[data-shell=app] .result-preview-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--color-text)}body[data-shell=app] .result-preview-head h3{color:var(--color-text);font-family:var(--font-ui);font-weight:var(--fw-semibold);font-size:var(--fs-heading);line-height:var(--lh-heading)}body[data-shell=app] .result-preview-head span,body[data-shell=app] .result-preview-loading{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .result-preview-thumb{color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-caption)}body[data-shell=app] .result-preview-thumb img{background:var(--color-surface-alt);border-radius:var(--radius-sm)}body[data-shell=app] .tool-workspace-shell .merge-file-row,body[data-shell=app] .tool-workspace-shell .merge-file-actions button{background:var(--color-surface-alt);color:var(--color-text);border-color:var(--color-border)}body[data-shell=app] .tool-workspace-shell .merge-file-position{background:var(--color-primary-soft);color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-file-details strong{color:var(--color-text)}body[data-shell=app] .tool-workspace-shell .merge-file-details small{color:var(--color-text-muted)}body[data-shell=app] .tool-workspace-shell .intake-files{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}body[data-shell=app] .tool-workspace-shell .intake-files-head h3{color:var(--color-text)}body[data-shell=app] .tool-workspace-shell .intake-files-head span{color:var(--color-text-muted)}body[data-shell=app] .tool-workspace-shell .workspace-body[data-layout=minimal],body[data-shell=app] .tool-workspace-shell .workspace-body[data-layout=form]{max-width:none}@media(min-width:1024px){body[data-shell=app] .tool-workspace-shell .workspace-body[data-layout=minimal]{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-5);align-items:start}body[data-shell=app] .tool-workspace-shell .workspace-body[data-layout=minimal]>.settings-panel:only-child{grid-column:1 / -1}}body[data-shell=app] .tool-workspace-shell .settings-panel{padding:var(--space-6);border-radius:var(--radius-lg)}body[data-shell=app] .tool-workspace-shell .settings-panel h3{font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);color:var(--color-text);margin:0 0 var(--space-3)}body[data-shell=app] .tool-workspace-shell .setting-note{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);margin:0 0 var(--space-4)}body[data-shell=app] .tool-workspace-shell .settings-stack{gap:var(--space-4)}body[data-shell=app] .tool-workspace-shell .output-summary{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2) var(--space-4);align-items:center;margin-top:0}body[data-shell=app] .tool-workspace-shell .output-summary strong{font-size:var(--fs-body);line-height:var(--lh-body);grid-column:1}body[data-shell=app] .tool-workspace-shell .output-summary span{font-size:var(--fs-caption);line-height:var(--lh-caption);grid-column:1}body[data-shell=app] .tool-workspace-shell .download-button{width:100%;justify-content:center;min-height:52px;font-size:var(--fs-heading);line-height:1}@media(min-width:640px){body[data-shell=app] .tool-workspace-shell .download-button{width:auto}}body[data-shell=app] .tool-workspace-shell .result-preview-panel{margin-top:var(--space-6);padding:var(--space-6);border-radius:var(--radius-lg)}body[data-shell=app] .tool-workspace-shell .result-preview-thumbs{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-4);margin-top:var(--space-2)}body[data-shell=app] .tool-workspace-shell .result-preview-thumb img{aspect-ratio:3 / 4;border-radius:var(--radius-md);border:1px solid var(--color-border)}body[data-shell=app] .tool-workspace-shell .intake-files{gap:var(--space-3);padding:var(--space-6)}body[data-shell=app] .tool-workspace-shell .intake-files-head{gap:var(--space-3);margin-bottom:var(--space-2)}body[data-shell=app] .tool-workspace-shell .intake-files-head h3{font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold);margin:0}body[data-shell=app] .tool-workspace-shell .intake-files [data-pdf-file-list]{display:flex;flex-direction:column;gap:var(--space-2)}body[data-shell=app] .tool-workspace-shell .merge-file-row{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);gap:var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-file-details strong{font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold)}body[data-shell=app] .tool-workspace-shell .merge-file-details small{font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .tool-workspace-shell .merge-file-position{width:36px;height:36px;font-size:var(--fs-body-sm);font-weight:var(--fw-semibold)}body[data-shell=app] .tool-workspace-shell .merge-file-actions button{width:36px;height:36px;border-radius:var(--radius-pill);color:var(--color-text-muted);transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-file-actions button:hover:not(:disabled){background:var(--color-primary-soft);color:var(--color-primary);border-color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-file-actions button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .intake-bar{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);gap:var(--space-4);background:var(--color-surface-alt)}body[data-shell=app] .tool-workspace-shell .drop-zone{min-height:220px;padding:var(--space-10) var(--space-6)}@media(min-width:768px){body[data-shell=app] .tool-workspace-shell .drop-zone{min-height:260px}}body[data-shell=app] .tool-workspace-shell .drop-zone svg{width:44px;height:44px}body[data-shell=app] .tool-workspace-shell .drop-zone strong{font-size:var(--fs-title);line-height:var(--lh-title)}body[data-shell=app] .billing-pro-badge{background:var(--color-primary);color:var(--color-text-on-primary);border-radius:var(--radius-xs);padding:2px var(--space-2);font-family:var(--font-ui);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}body[data-shell=app] .billing-usage-pill{background:var(--color-surface-alt);color:var(--color-text-muted);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold)}.ui-display{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-display);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);color:var(--color-text);margin:0}@media(min-width:1024px){.ui-display{font-size:calc(var(--fs-display) * 1.6);line-height:1.1}}.ui-title{font-family:var(--font-display);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text);margin:0}.ui-heading{font-family:var(--font-ui);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold);color:var(--color-text);margin:0}.ui-body{font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--color-text);margin:0}.ui-body-muted{color:var(--color-text-muted)}.ui-caption{font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--color-text-muted);margin:0}.ui-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace{display:flex;flex-direction:column;gap:var(--space-5);padding:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-compat{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-intake-bar-hidden{display:none!important}body[data-shell=app] .tool-workspace-shell .merge-workspace>.mw-orchestrator>input[type=file],body[data-shell=app] .tool-workspace-shell .merge-workspace [data-pdf-file-input]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-topbar{margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-trust{display:inline-flex;align-items:flex-start;gap:var(--space-1);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-trust svg{color:var(--color-primary);flex:0 0 auto}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-progress{display:flex;flex-direction:column;gap:var(--space-1);margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-progress .workspace-progress-track{height:6px;border-radius:var(--radius-pill);background:var(--color-surface-alt);overflow:hidden}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-progress .workspace-progress-track span{display:block;height:100%;background:var(--color-primary);transition:width var(--dur-base) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-progress .workspace-progress-label{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-layout{display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1fr)}@media(min-width:1024px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--space-5);align-items:start}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-layout:has(.mw-orchestrator[data-loaded=false]){align-items:stretch}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator{position:relative;display:flex;flex-direction:column;min-height:320px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:border-color var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard)}@media(max-width:639px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator{padding:var(--space-4)}}@media(min-width:768px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator{padding:var(--space-6);min-height:380px}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-loaded=false]{border:2px dashed var(--color-border-strong);padding:calc(var(--space-5) - 1px);cursor:pointer}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-loaded=false] button,body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-loaded=false] a{cursor:pointer}@media(min-width:768px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-loaded=false]{padding:calc(var(--space-6) - 1px)}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-dragging=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-loaded=false]:hover,body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-orchestrator[data-loaded=false]:focus-within{border-color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);text-align:center;flex:1;padding:var(--space-6) var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--space-16);height:var(--space-16);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-text-on-primary);margin-bottom:var(--space-2);box-shadow:var(--shadow-md)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-title{font-family:var(--font-display);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-bold);color:var(--color-text);margin:0;letter-spacing:var(--tracking-tight)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-copy{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);max-width:44ch;margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-actions{display:inline-flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin-top:var(--space-3);position:relative;z-index:2}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-actions .ui-btn{min-height:var(--touch-min)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-sample{background:transparent;border:0;padding:0;color:var(--color-primary);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);display:inline-flex;align-items:flex-start;gap:var(--space-1);cursor:pointer;text-decoration:none;text-align:start}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-sample svg{flex:0 0 auto;margin-top:2px}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-sample:hover:not(:disabled){color:var(--color-primary-hover);text-decoration:underline}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-sample:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-bullets{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2) var(--space-3);margin:var(--space-4) 0 0;padding:0;list-style:none;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}@media(min-width:640px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-bullets{gap:var(--space-3) var(--space-4)}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-bullets li{display:inline-flex;align-items:center;gap:var(--space-1)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-empty-bullets svg{color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated{display:flex;flex-direction:column;gap:var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated[hidden]{display:none}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3) var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-heading{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1 14rem}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-head h3,body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-totals{white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-head [data-pdf-add-files]{flex:0 0 auto;white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-head h3{font-family:var(--font-display);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-bold);color:var(--color-text);margin:0;letter-spacing:var(--tracking-tight)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-count{color:var(--color-text-muted);font-weight:var(--fw-semibold)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-hint{margin:0;color:var(--color-text-muted)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-file-list{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-2);padding-right:var(--space-2)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-tools{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:var(--space-2)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-tools [data-pdf-clear-files]{margin-inline-start:var(--space-2)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-tools [data-pdf-clear-files]:hover{background:color-mix(in srgb,var(--color-danger) 12%,transparent)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-tools [data-pdf-clear-files]:hover svg{color:var(--color-danger)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn{min-height:var(--touch-min);white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-active=true],body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-emphasis=true]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-text)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-active=true] svg,body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-emphasis=true] svg{color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-active=true]:hover:not(:disabled),body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-emphasis=true]:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 22%,transparent)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-emphasis=true]{animation:mw-emphasis-pulse var(--dur-slow) var(--ease-emphasized)}@keyframes mw-emphasis-pulse{0%{background:var(--color-primary-soft)}35%{background:color-mix(in srgb,var(--color-primary) 26%,transparent)}to{background:var(--color-primary-soft)}}@media(prefers-reduced-motion:reduce){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn[data-emphasis=true]{animation:none}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-sort-dir{display:inline-grid;place-items:center;min-width:var(--space-8);padding:0 var(--space-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:var(--fs-micro);line-height:calc(var(--lh-micro) + var(--space-1));font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-totals{margin:0;color:var(--color-text-muted);font-variant-numeric:tabular-nums}@media(max-width:639px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-tools{flex:1 1 100%;flex-wrap:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-btn{position:relative;flex:0 0 auto;gap:var(--space-1);min-width:var(--touch-min);padding:0 var(--space-2)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-tool-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-populated-tools [data-pdf-clear-files]{margin-inline-start:auto}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar-row{display:flex;gap:var(--space-3)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar-row>.ui-btn{flex:1 1 auto;min-height:var(--touch-min)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar-hint{margin:0;color:var(--color-text-muted)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge[aria-disabled=true]{opacity:.4;cursor:not-allowed}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge[aria-disabled=true]:hover{background:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge:active:not([aria-disabled=true]){transform:scale(.98)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge-icon{display:inline-flex}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge-spinner{display:none}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge-spinner svg{animation:mw-spin .9s linear infinite}body[data-shell=app] .tool-workspace-shell .merge-workspace[data-merge-state=merging] .mw-merge-spinner{display:inline-flex}body[data-shell=app] .tool-workspace-shell .merge-workspace[data-merge-state=merging] .mw-merge-icon{display:none}@keyframes mw-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-merge-spinner svg{animation:none}}@media(max-width:1023px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar{position:sticky;bottom:var(--bottom-nav-offset);z-index:var(--z-sticky);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:saturate(180%) blur(12px)}}@media(max-width:1023px)and (max-height:520px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar{position:static;background:transparent;backdrop-filter:none;border:0;padding:0}}@media(min-width:1024px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar{flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar-row>.ui-btn{flex:0 0 auto;min-width:200px}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-actionbar-hint{flex:1 1 auto}}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row{position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:var(--space-3);padding:var(--space-3) calc(var(--space-4) + var(--space-2)) var(--space-3) var(--space-4);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:grab;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}@media(max-width:639px){body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row{gap:var(--space-2);padding:var(--space-3) calc(var(--space-3) + var(--space-2)) var(--space-3) var(--space-3)}}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row:active{cursor:grabbing}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row button{cursor:pointer}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-dragging=true]{background:var(--color-surface);border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translate3d(0,var(--drag-dy, 0),0) scale(1.02);transition:none;will-change:transform;z-index:var(--z-dropdown)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-dragging=true][data-reduced-motion=true]{transform:translate3d(0,var(--drag-dy, 0),0)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-invalid=true]{border-color:color-mix(in srgb,var(--color-danger) 45%,transparent);background:color-mix(in srgb,var(--color-danger) 6%,var(--color-surface-alt))}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-reason{grid-column:1 / -1;margin:0;color:var(--color-text);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-thumb{display:block;width:100%;height:100%;object-fit:cover;border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-thumb-empty{display:grid;place-items:center;color:var(--color-text-subtle)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-settling=true],body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-settling=true]{transition:transform var(--dur-base) var(--ease-emphasized);will-change:transform;z-index:1}@media(prefers-reduced-motion:reduce){body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-settling=true],body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-settling=true]{transition:none}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-pages{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-pages-head h3{display:flex;align-items:baseline;gap:var(--space-2);margin:0;font-family:var(--font-display);font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);color:var(--color-text)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-pages-hint{margin:var(--space-1) 0 0;color:var(--color-text-muted)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(104px,calc(50% - var(--space-3) / 2)),1fr));gap:var(--space-3);max-height:min(60vh,520px);overflow-y:auto;padding:var(--space-1)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:grab;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile:hover{border-color:var(--color-border-strong)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-dragging=true]{background:var(--color-surface);border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translate3d(var(--drag-dx, 0),var(--drag-dy, 0),0) scale(1.03);transition:none;will-change:transform;z-index:var(--z-dropdown)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-dragging=true][data-reduced-motion=true]{transform:translate3d(var(--drag-dx, 0),var(--drag-dy, 0),0)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-drop-position]:before{content:"";position:absolute;inset-block:var(--space-1);width:3px;border-radius:var(--radius-pill);background:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);pointer-events:none;z-index:1;animation:mw-drop-in-y var(--dur-fast) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-drop-position=before]:before{inset-inline-start:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-drop-position=after]:before{inset-inline-end:0}@keyframes mw-drop-in-y{0%{opacity:0;transform:scaleY(.85)}to{opacity:1;transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-tile[data-drop-position]:before{animation:none}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grip{position:absolute;top:var(--space-2);inset-inline-start:var(--space-2);z-index:2;display:inline-grid;place-items:center;width:var(--space-6);height:var(--space-6);padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-muted);cursor:grab;touch-action:none}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grip:active{cursor:grabbing}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grip:hover{color:var(--color-primary);border-color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grip:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-order{position:absolute;top:var(--space-2);inset-inline-end:var(--space-2);z-index:2;display:inline-grid;place-items:center;min-width:var(--space-6);height:var(--space-6);padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-text-on-primary);font-size:var(--fs-micro);line-height:1;font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-open{display:block;width:100%;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:zoom-in;overflow:hidden}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-open img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:contain;background:var(--color-surface)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-open:hover{border-color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-open:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-open:active{transform:scale(.98)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-placeholder{display:grid;place-items:center;width:100%;aspect-ratio:3 / 4;color:var(--color-text-subtle);font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-origin{display:flex;flex-direction:column;gap:2px;min-width:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-origin strong{overflow:hidden;color:var(--color-text);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-origin small{color:var(--color-text-muted);font-size:var(--fs-micro);line-height:var(--lh-micro);font-variant-numeric:tabular-nums}@media(hover:none),(max-width:768px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grip{width:var(--touch-min);height:var(--touch-min)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-grid{grid-template-columns:repeat(auto-fill,minmax(min(128px,calc(50% - var(--space-3) / 2)),1fr))}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-page-dialog,body[data-shell=app] .mw-page-dialog{max-width:min(92vw,900px);max-height:92vh;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg)}body[data-shell=app] .mw-page-dialog::backdrop{background:var(--color-overlay)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download-again{display:inline-flex;align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);text-decoration:underline;text-underline-offset:3px;cursor:pointer}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download-again:hover{color:var(--color-text);background:var(--color-primary-soft);text-decoration:none}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download-again:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-output-heading{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--color-text);font-family:var(--font-display);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-output-heading svg{flex:0 0 auto}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-saved{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-saved svg{flex:0 0 auto;margin-top:2px;color:var(--color-success)}body[data-shell=app] .tool-workspace-shell .merge-workspace .result-preview-note{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position]:before{content:"";position:absolute;left:0;right:0;height:3px;background:var(--color-primary);border-radius:var(--radius-pill);box-shadow:0 0 0 3px var(--color-primary-soft);pointer-events:none;z-index:1;animation:mw-drop-in var(--dur-fast) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position]:after{content:"";position:absolute;left:calc(var(--space-1) * -1);width:var(--space-2);height:var(--space-2);border-radius:var(--radius-pill);background:var(--color-primary);pointer-events:none;z-index:1}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position=before]:before{top:calc(var(--space-2) * -1 + 1px)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position=before]:after{top:calc(var(--space-2) * -1 - 1px)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position=after]:before{top:auto;bottom:calc(var(--space-2) * -1 + 1px)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position=after]:after{top:auto;bottom:calc(var(--space-2) * -1 - 1px)}@keyframes mw-drop-in{0%{opacity:0;transform:scaleX(.85)}to{opacity:1;transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-drop-position]:before{animation:none}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-file-list[data-drag-active=true] .merge-file-row:not([data-dragging=true]){transition:transform var(--dur-base) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-grip{width:var(--space-8);height:var(--space-8);display:inline-grid;place-items:center;border:none;background:transparent;color:var(--color-text-muted);border-radius:var(--radius-pill);cursor:grab;touch-action:none;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-grip:hover{background:var(--color-primary-soft);color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-grip:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-grip:active,body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-row[data-dragging=true] .merge-file-grip{cursor:grabbing;background:var(--color-primary-soft);color:var(--color-primary)}@media(hover:none),(max-width:768px){body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-grip{width:var(--touch-min);height:var(--touch-min)}}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-cover{position:relative;display:block;flex:0 0 auto;width:44px;height:56px}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-position{position:absolute;top:-6px;inset-inline-start:-6px;display:inline-grid;place-items:center;min-width:var(--space-5);height:var(--space-5);padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-text-on-primary);font-family:var(--font-ui);font-size:var(--fs-micro);line-height:1;font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;box-shadow:var(--shadow-xs)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-details{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-details strong{min-width:0;color:var(--color-text);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:639px){body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-details strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere}}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-details small{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-regular);font-variant-numeric:tabular-nums}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-remove{position:absolute;top:calc(var(--space-2) * -1);right:calc(var(--space-2) * -1);width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-pill);background:var(--color-surface-alt);color:var(--color-text-muted);cursor:pointer;display:inline-grid;place-items:center;z-index:2;box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-remove:before{content:"";position:absolute;inset:-8px;border-radius:inherit}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-remove:hover{background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:var(--shadow-md)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-remove:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .merge-file-remove:active{background:var(--color-primary-pressed);color:var(--color-text-on-primary);transform:scale(.94)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result{display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:1024px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result{position:sticky;top:calc(64px + var(--space-4))}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);text-align:center;flex:1;padding:var(--space-6) var(--space-5);min-height:320px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}@media(min-width:768px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result-empty{min-height:380px}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result-empty-hero{display:inline-flex;align-items:center;justify-content:center;width:var(--space-16);height:var(--space-16);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-primary);margin-bottom:var(--space-2)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result-empty-title{font-family:var(--font-display);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-bold);color:var(--color-text);margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result-empty-copy{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);max-width:32ch;margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-steps{list-style:none;padding:0;margin:var(--space-3) 0 0;display:flex;flex-direction:column;gap:var(--space-2);align-self:stretch}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-steps li{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--color-text);text-align:left}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-step-num{display:inline-grid;place-items:center;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-family:var(--font-display);font-size:var(--fs-caption);line-height:1;font-weight:var(--fw-bold)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-result-active{display:flex;flex-direction:column;gap:var(--space-4)}body[data-shell=app] .tool-workspace-shell .merge-workspace[data-merge-state=merging] .mw-result-empty,body[data-shell=app] .tool-workspace-shell .merge-workspace[data-merge-state=done] .mw-result-empty,body[data-shell=app] .tool-workspace-shell .merge-workspace[data-has-pages=true] .mw-result-empty{display:none}body[data-shell=app] .tool-workspace-shell .merge-workspace:not([data-merge-state=merging]):not([data-merge-state=done]) .mw-result-active{display:none}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--color-text)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner svg{flex:0 0 auto;margin-top:2px}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner>span{min-width:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-guide{background:var(--color-surface-alt);border:1px solid var(--color-border);border-inline-start:3px solid var(--color-info)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-guide svg{color:var(--color-info)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-guide:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-guide[data-pulse=true]{animation:mw-notice-pulse var(--dur-slow) var(--ease-emphasized)}@keyframes mw-notice-pulse{0%{background:var(--color-surface-alt)}35%{background:var(--color-primary-soft);border-inline-start-color:var(--color-primary)}to{background:var(--color-surface-alt)}}@media(prefers-reduced-motion:reduce){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-guide[data-pulse=true]{animation:none}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-error{background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-danger) 32%,transparent)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-error svg{color:var(--color-danger)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-cta{display:inline-flex;align-items:center;gap:var(--space-1);margin-inline-start:auto;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--color-primary);font-weight:var(--fw-semibold);text-decoration:none;white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-cta:hover{background:var(--color-primary-soft);color:var(--color-text)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-cta:focus-visible{outline:none;box-shadow:var(--shadow-focus)}@media(max-width:639px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner{flex-wrap:wrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-banner-cta{margin-inline-start:calc(var(--space-6) + var(--space-1));padding-inline:0}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-output-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-output-summary{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;background:transparent;border:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-output-summary strong{color:var(--color-text);font-family:var(--font-display);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-output-summary span{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preparing{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preparing svg{animation:spin 1s linear infinite;color:var(--color-primary)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);min-height:52px;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-on-primary);font-family:var(--font-ui);font-size:var(--fs-heading);line-height:1;font-weight:var(--fw-bold);text-decoration:none;transition:background-color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard);width:100%}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download:hover{background:var(--color-primary-hover);transform:translateY(-1px)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download:focus-visible{outline:none;box-shadow:var(--shadow-focus)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-download svg{color:currentColor}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-reset{align-self:flex-start}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0;display:flex;flex-direction:column;gap:var(--space-3)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview[hidden]{display:none}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-head h3{font-family:var(--font-display);font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold);color:var(--color-text);margin:0}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-head span{color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--fs-caption);line-height:var(--lh-caption)}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body{display:flex;justify-content:center}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body .result-preview-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:center;justify-items:center;gap:var(--space-3);margin-top:0;width:100%;max-width:480px;max-height:min(60vh,460px);overflow-y:auto;padding-right:var(--space-2);scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body .result-preview-thumbs::-webkit-scrollbar{width:8px}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body .result-preview-thumbs::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:999px}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body .result-preview-thumbs::-webkit-scrollbar-track{background:transparent}@media(max-width:640px){body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body .result-preview-thumbs{max-height:60vh}}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-body .result-preview-thumb{width:100%;max-width:140px;justify-items:center}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-head{text-align:center;justify-content:center;flex-wrap:wrap;align-items:center}body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-head h3,body[data-shell=app] .tool-workspace-shell .merge-workspace .mw-preview-head span{width:100%;text-align:center}body[data-shell=app] .tv-shell .tv-header{max-width:none}body[data-shell=app] .pv-shell .pv-header{max-width:720px}body[data-shell=app] .hv-shell .hv-hero-body{max-width:52ch}body[data-shell=app] .tool-workspace-shell .scan-workspace{--scan-media-fg: #fff;display:flex;flex-direction:column;gap:var(--space-4);padding:0}@media(min-width:640px){body[data-shell=app] .tool-workspace-shell .scan-workspace{gap:var(--space-5)}}.scan-topbar{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);min-height:var(--space-6)}.scan-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.scan-trust{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.scan-banner{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.scan-banner svg{flex:none;margin-top:2px}.scan-banner-error{background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-danger) 32%,transparent)}.scan-banner-error svg{color:var(--color-danger)}.scan-banner-notice{background:var(--color-surface-alt)}.scan-banner-cta{position:relative;margin-inline-start:auto;border:0;background:transparent;color:var(--color-primary);font:inherit;font-weight:var(--fw-semibold);line-height:var(--lh-body-sm);cursor:pointer;padding:0 var(--space-2);border-radius:var(--radius-xs);white-space:nowrap}.scan-banner-cta:before{content:"";position:absolute;inset-block:calc(var(--space-3) * -1);inset-inline:0}.scan-banner-cta:hover{color:var(--color-primary-hover)}.scan-banner-cta:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-session{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-alt)}.scan-session-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted)}.scan-session-copy{flex:1 1 200px;min-width:0}.scan-session-title{display:block;font-size:var(--fs-heading);line-height:var(--lh-heading);font-weight:var(--fw-semibold);color:var(--color-text)}.scan-session-detail{margin:0;color:var(--color-text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.scan-session-actions{display:flex;gap:var(--space-2)}.scan-strip-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.scan-count{margin:0}.scan-textbtn{border:0;background:transparent;color:var(--color-text-muted);font:inherit;font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold);cursor:pointer;min-height:var(--touch-min);padding-inline:var(--space-2);border-radius:var(--radius-xs)}.scan-textbtn:hover{color:var(--color-text)}.scan-textbtn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-strip{display:flex;gap:var(--space-3);margin:0;padding:var(--space-2) var(--space-2) var(--space-2) 0;list-style:none;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.scan-strip:empty{display:none}.scan-strip>li{flex:none;display:block}.scan-strip-hint{margin:0;color:var(--color-text-subtle)}.scan-tile{position:relative;flex:none;width:72px;height:96px;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transform:translate3d(var(--slot-shift, 0px),0,0);transition:transform var(--dur-base) var(--ease-standard)}.scan-tile-select{display:block;width:100%;height:100%;padding:0;border:2px solid transparent;border-radius:var(--radius-md);background:var(--color-surface-sunken);overflow:hidden;cursor:grab;touch-action:manipulation}.scan-tile-select:active{cursor:grabbing}.scan-tile-select img{pointer-events:none}.scan-tile-select img{width:100%;height:100%;object-fit:cover;display:block}.scan-tile-select[aria-current=true]{border-color:var(--color-primary)}.scan-tile-select:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-tile-remove{position:absolute;top:calc(var(--space-2) * -1);right:calc(var(--space-2) * -1);width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-pill);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;display:inline-grid;place-items:center;z-index:2;box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.scan-tile-remove:before{content:"";position:absolute;inset:-8px;border-radius:inherit}.scan-tile-remove:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-on-primary)}.scan-tile-remove:active{transform:scale(.94)}.scan-tile-remove:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-tile-index{position:absolute;left:var(--space-1);bottom:var(--space-1);min-width:18px;padding:0 4px;border-radius:var(--radius-xs);background:var(--color-text);color:var(--color-bg);font-size:var(--fs-micro);line-height:18px;text-align:center;font-weight:var(--fw-semibold)}.scan-tile[data-dragging=true]{transform:translate3d(var(--drag-dx, 0),var(--drag-dy, 0),0) scale(1.04);transition:none;will-change:transform;z-index:var(--z-dropdown)}.scan-tile[data-dragging=true][data-reduced-motion=true]{transform:translate3d(var(--drag-dx, 0),var(--drag-dy, 0),0)}.scan-tile[data-drop-position]:after{content:"";position:absolute;inset-block:0;width:3px;border-radius:var(--radius-pill);background:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);pointer-events:none;z-index:3;animation:scanDropIn var(--dur-fast) var(--ease-standard)}.scan-tile[data-drop-position=before]:after{inset-inline-start:0}.scan-tile[data-drop-position=after]:after{inset-inline-end:0}.scan-strip[data-live-preview=true] .scan-tile[data-drop-position]:after{display:none}@keyframes scanDropIn{0%{opacity:0;transform:scaleY(.85)}to{opacity:1;transform:scaleY(1)}}.scan-tile[data-dragging=true] .scan-tile-select{box-shadow:var(--shadow-lg);opacity:.9}.scan-tile[data-dragging=true] .scan-tile-remove{opacity:0;pointer-events:none}.scan-tile-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);width:72px;height:96px;flex:none;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer}.scan-tile-add:hover{color:var(--color-text);border-color:var(--color-text-muted)}.scan-tile-add:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-stage{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-alt);overflow:hidden}.scan-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);padding:var(--space-10) var(--space-4)}.scan-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted)}.scan-empty-title{margin:0;font-size:var(--fs-title);line-height:var(--lh-title);font-weight:var(--fw-semibold);color:var(--color-text)}.scan-empty-copy{margin:0;max-width:42ch;color:var(--color-text-muted);font-size:var(--fs-body);line-height:var(--lh-body)}.scan-empty-actions{display:flex;flex-direction:column;gap:var(--space-2);width:100%;max-width:320px;margin-top:var(--space-2)}@media(min-width:640px){.scan-empty-actions{flex-direction:row;justify-content:center;max-width:none}}.scan-empty-bullets{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.scan-empty-bullets li{display:inline-flex;align-items:center;gap:var(--space-2)}@media(min-width:768px){.scan-empty-bullets{flex-direction:row;gap:var(--space-5);justify-content:center}}.scan-preview{position:relative;margin:0;display:flex;align-items:center;justify-content:center;min-height:320px;background:var(--color-surface-sunken)}@media(min-width:1024px){.scan-preview{min-height:420px}}.scan-preview-image{max-width:100%;max-height:60vh;display:block;object-fit:contain}.scan-preview-counter{position:absolute;left:var(--space-3);bottom:var(--space-3);padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-overlay);color:var(--scan-media-fg);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold)}.scan-preview-tools{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;gap:var(--space-2)}.scan-preview-tools .ui-icon-btn{background:var(--color-surface);box-shadow:var(--shadow-sm)}.scan-icon-danger{color:var(--color-danger)}.scan-preview-busy{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--color-overlay)}.scan-spinner{display:inline-flex;color:currentColor}.scan-spinner svg{animation:scanSpin .9s linear infinite}@keyframes scanSpin{to{transform:rotate(360deg)}}.scan-filter-list{display:flex;gap:var(--space-3);margin:0;padding:0 0 var(--space-2);list-style:none;overflow-x:auto;overscroll-behavior-x:contain}.scan-filter{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);border:0;background:transparent;padding:0;cursor:pointer;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-medium)}.scan-filter:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-md)}.scan-filter-thumb{position:relative;display:block;width:64px;height:64px;border-radius:var(--radius-md);border:2px solid transparent;background:var(--color-surface-sunken);overflow:hidden}.scan-filter-thumb img{width:100%;height:100%;object-fit:cover;display:block}.scan-filter-check{position:absolute;right:var(--space-1);bottom:var(--space-1);display:none;align-items:center;justify-content:center;width:var(--space-5);height:var(--space-5);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:var(--shadow-xs)}.scan-filter[aria-pressed=true]{color:var(--color-text);font-weight:var(--fw-semibold)}.scan-filter[aria-pressed=true] .scan-filter-thumb{border-color:var(--color-primary)}.scan-filter[aria-pressed=true] .scan-filter-check{display:flex}.scan-tune{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-alt)}.scan-tune-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.scan-tune-title{margin:0;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}.scan-tune-row{display:grid;grid-template-columns:minmax(72px,auto) 1fr minmax(36px,auto);align-items:center;gap:var(--space-3);min-height:var(--touch-min)}.scan-tune-label{color:var(--color-text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.scan-tune-value{color:var(--color-text);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-variant-numeric:tabular-nums;text-align:end}.scan-range{width:100%;accent-color:var(--color-primary);min-height:var(--touch-min)}.scan-range:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-pill)}.scan-output{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.scan-output-label{color:var(--color-text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-semibold)}.scan-actionbar{display:flex;flex-direction:column;gap:var(--space-2)}.scan-save-count{color:currentColor;opacity:.72;font-variant-numeric:tabular-nums}.scan-save-hint{margin:0;color:var(--color-text-subtle);text-align:center}.scan-workspace[data-scan-state=pages] .scan-save-hint,.scan-workspace[data-scan-state=done] .scan-save-hint,.scan-download{display:none}.scan-result{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-alt)}.scan-result-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary)}.scan-result-title{display:block;font-size:var(--fs-heading);line-height:var(--lh-heading);color:var(--color-text)}.scan-result-copy,.scan-result-meta{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.scan-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.scan-workspace[data-scan-state=empty] .scan-preview,.scan-workspace[data-scan-state=empty] .scan-filters,.scan-workspace[data-scan-state=empty] .scan-tune{display:none}.scan-workspace:not([data-scan-state=empty]) .scan-empty{display:none}.scan-camera{--scan-media-bg: #000;--scan-media-fg: #fff;--scan-media-control: rgba(255, 255, 255, .14);--scan-media-control-hover: rgba(255, 255, 255, .24);position:fixed;inset:0;z-index:var(--z-modal);background:var(--scan-media-bg);display:flex}.scan-camera[hidden]{display:none}.scan-camera-frame{display:flex;flex-direction:column;width:100%;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}.scan-camera-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3)}.scan-camera-head-actions{display:flex;gap:var(--space-2)}.scan-camera .ui-icon-btn{background:var(--scan-media-control);color:var(--scan-media-fg)}.scan-camera .ui-icon-btn:hover{background:var(--scan-media-control-hover)}.scan-camera-stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden}.scan-camera-video{width:100%;height:100%;object-fit:contain}.scan-camera-busy,.scan-camera-blocked{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);text-align:center;color:var(--scan-media-fg);background:var(--scan-media-bg)}.scan-camera-blocked-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-pill);background:var(--scan-media-control)}.scan-camera-blocked-title{margin:0;font-size:var(--fs-title);line-height:var(--lh-title)}.scan-camera-blocked-copy{margin:0;max-width:40ch;opacity:.82;font-size:var(--fs-body);line-height:var(--lh-body)}.scan-camera-blocked-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.scan-camera-foot{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-6)}.scan-camera-hint{margin:0;color:var(--scan-media-fg);opacity:.72;font-size:var(--fs-caption);line-height:var(--lh-caption)}.scan-camera-count{margin:0;padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--scan-media-control);color:var(--scan-media-fg);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-semibold)}.scan-camera-count[hidden]{display:none}.scan-shutter{width:72px;height:72px;border-radius:var(--radius-pill);border:0;background:var(--scan-media-fg);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-fast) var(--ease-standard)}.scan-shutter-ring{width:58px;height:58px;border-radius:var(--radius-pill);border:3px solid var(--scan-media-bg)}.scan-shutter:active{transform:scale(.94)}.scan-shutter:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-shutter[aria-disabled=true]{opacity:.4}@media(max-height:480px)and (orientation:landscape){.scan-camera-frame{flex-direction:row}.scan-camera-head{flex-direction:column;padding:var(--space-2)}.scan-camera-foot{flex-direction:column;justify-content:center;padding:var(--space-2)}.scan-camera-hint{display:none}.scan-shutter{width:60px;height:60px}.scan-shutter-ring{width:48px;height:48px}}.scan-crop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-overlay)}.scan-crop[hidden]{display:none}.scan-crop-frame{display:flex;flex-direction:column;gap:var(--space-3);width:min(560px,100%);max-height:100%;padding:var(--space-4);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);overflow:auto}.scan-crop-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.scan-crop-title{margin:0;font-size:var(--fs-title);line-height:var(--lh-title);color:var(--color-text)}.scan-crop-hint{margin:0;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.scan-crop-stage{position:relative;display:flex;align-items:center;justify-content:center;background:var(--color-surface-sunken);border-radius:var(--radius-md);padding:var(--space-6);touch-action:none}.scan-crop-canvas{position:relative;display:block;max-width:100%;line-height:0}.scan-crop-image{max-width:100%;max-height:50vh;display:block}.scan-crop-outline{position:absolute;inset:0;width:100%;height:100%}.scan-crop-outline polygon{fill:var(--color-primary);fill-opacity:.14;stroke:var(--color-primary);stroke-width:2;vector-effect:non-scaling-stroke}.scan-crop-handle{position:absolute;z-index:2;width:var(--touch-min);height:var(--touch-min);margin:calc(var(--touch-min) / -2) 0 0 calc(var(--touch-min) / -2);padding:0;border:0;border-radius:var(--radius-pill);background:transparent;cursor:grab;touch-action:none}.scan-crop-handle:after{content:"";position:absolute;inset:14px;border-radius:var(--radius-pill);background:var(--color-surface);border:3px solid var(--color-primary)}.scan-crop-handle:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-crop-edge{position:absolute;width:var(--touch-min);height:var(--touch-min);margin:calc(var(--touch-min) / -2) 0 0 calc(var(--touch-min) / -2);padding:0;border:0;border-radius:var(--radius-pill);background:transparent;cursor:grab;touch-action:none;z-index:1}.scan-crop-edge:after{content:"";position:absolute;inset:16px;border-radius:var(--radius-pill);background:var(--color-primary);box-shadow:0 0 0 2px var(--color-surface)}.scan-crop-edge:active{cursor:grabbing}.scan-crop-edge:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.scan-crop-actions{display:flex;gap:var(--space-2);justify-content:flex-end}@media(prefers-reduced-motion:reduce){.scan-spinner svg{animation-duration:2.4s}.scan-tile{transition:none}.scan-tile[data-drop-position]:after{animation:none}.scan-shutter{transition:none}}body[data-shell=app] .tool-workspace-shell .an-workspace{display:flex;flex-direction:column;gap:var(--space-4);padding:0}@media(min-width:640px){body[data-shell=app] .tool-workspace-shell .an-workspace{gap:var(--space-5)}}body[data-shell=app] .tool-workspace-shell .an-workspace[data-annotate-expanded=true]{position:fixed;inset:0;z-index:calc(var(--z-sticky) + 1);gap:0;background:var(--color-surface-alt);padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) 0 env(safe-area-inset-left,0)}body[data-shell=app] .tool-workspace-shell .an-workspace[data-annotate-expanded=true] .an-stage-scroll{overscroll-behavior-y:contain}body[data-shell=app] .tool-workspace-shell .an-workspace[data-annotate-expanded=true] .an-trust{display:none}body[data-shell=app] .tool-workspace-shell .an-workspace[data-annotate-expanded=true] .an-topbar{min-height:0}body[data-shell=app] .tool-workspace-shell .an-workspace[data-annotate-expanded=true]{--an-visual-gap: 0px}.an-topbar{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);min-height:var(--space-6)}.an-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.an-trust{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.an-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);color:var(--color-text);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.an-banner-icon{display:inline-flex;flex:0 0 auto}.an-banner-error{border-color:var(--color-danger);color:var(--color-danger)}.an-banner-guide{color:var(--color-text-muted)}.an-banner-cta{margin-inline-start:auto;padding:var(--space-1) var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;font-weight:var(--fw-semibold);text-decoration:underline;cursor:pointer}.an-banner-cta:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.an-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);min-height:320px;padding:var(--space-6) var(--space-4);border:2px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);text-align:center;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.an-empty[data-dragging=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.an-empty[data-state=loading],.an-empty[data-state=unavailable]{cursor:default}@media(prefers-reduced-motion:reduce){.an-empty{transition:none}}@media(min-width:768px){.an-empty{min-height:380px;padding:var(--space-10) var(--space-6)}}.an-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary)}.an-empty-title{margin:0}.an-empty-copy{max-width:46ch;margin:0}.an-empty-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.an-empty-bullets{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);justify-content:center;margin:var(--space-2) 0 0;padding:0;list-style:none;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.an-empty-bullets li{display:inline-flex;align-items:center;gap:var(--space-1)}.an-empty-bullets svg{color:var(--color-primary)}.an-empty[data-state=loading] .an-empty-icon{animation:anPulse var(--dur-slow) var(--ease-standard) infinite alternate}@keyframes anPulse{to{opacity:.45}}@media(prefers-reduced-motion:reduce){.an-empty[data-state=loading] .an-empty-icon{animation:none}}.an-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.an-layout{position:relative;display:flex;flex-direction:column;gap:0;flex:1 1 auto;min-height:0;--an-dock-h: 0px;--an-safe-bottom: calc(var(--space-3) + var(--an-visual-gap, 0px) + env(safe-area-inset-bottom, 0px))}.an-commandbar{flex:0 0 auto}.an-stage{flex:1 1 auto;min-height:0}.an-commandbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2);border-bottom:1px solid var(--color-border-strong);box-shadow:var(--shadow-md);background:var(--color-surface);transition:box-shadow var(--dur-base) var(--ease-standard)}.an-layout[data-scrolled=true] .an-commandbar{box-shadow:var(--shadow-lg)}@media(prefers-reduced-motion:reduce){.an-commandbar{transition:none}}.an-commandbar>*{min-width:0}.an-commandbar-lead{grid-column:1}.an-commandbar>.an-toolbar{grid-column:2}.an-commandbar-trail{grid-column:3;justify-self:end}.an-commandbar-lead,.an-commandbar-trail{display:flex;align-items:center;gap:var(--space-1)}.an-commandbar-trail{justify-content:flex-end}.an-doc-meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium);color:var(--color-text-muted)}.an-commandbar-close{flex:0 0 auto;color:var(--color-text-muted)}.an-doc-meta{flex:0 1 auto}@media(max-width:639px){.an-doc-meta{display:none}}.an-rail-toggle[aria-pressed=true],.an-fullscreen[aria-pressed=true]{background:var(--color-primary-soft);color:var(--color-primary)}.an-fullscreen-enter,.an-fullscreen-exit{display:inline-flex;align-items:center;justify-content:center}.an-fullscreen-enter[hidden],.an-fullscreen-exit[hidden]{display:none}@media(max-width:1023px){.an-layout{--an-dock-h: calc(var(--touch-min) + var(--space-4))}.an-commandbar>.an-toolbar{position:absolute;left:50%;bottom:var(--an-safe-bottom);transform:translate(-50%);z-index:4;max-width:calc(100% - var(--space-6));border-radius:var(--radius-pill);background:var(--color-surface);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);padding:var(--space-1)}}@media(max-width:1023px)and (orientation:landscape)and (max-height:520px){.an-layout{--an-dock-h: 0px}.an-commandbar>.an-toolbar{left:auto;right:var(--space-3);top:50%;bottom:auto;transform:translateY(-50%);flex-direction:column;max-width:none;max-height:calc(100% - var(--space-6));border-radius:var(--radius-lg)}.an-commandbar>.an-toolbar .an-toolbar-tools,.an-commandbar>.an-toolbar .an-toolbar-history{flex-direction:column}}.an-toolbar{display:flex;align-items:center;gap:var(--space-2);flex:0 1 auto;min-width:0}.an-toolbar-tools,.an-toolbar-history{display:flex;align-items:center;gap:var(--space-2)}.an-toolbar-history{flex:0 0 auto}.an-toolbar-history:has(button:not(:disabled)){padding-inline-start:var(--space-2);border-inline-start:1px solid var(--color-border-strong)}.an-toolbar-more{display:inline-flex;align-items:center;flex:0 0 auto;margin-inline-start:calc(var(--space-1) * -1);color:var(--color-text-subtle);pointer-events:none;animation:anNudge var(--dur-slow) var(--ease-standard) infinite alternate}.an-toolbar-more[hidden]{display:none}@keyframes anNudge{0%{transform:translate(calc(var(--space-1) * -.5))}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.an-toolbar-more{animation:none}}.an-toolbar-tools{flex:1 1 auto;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:var(--space-1);margin:calc(var(--space-1) * -1)}.an-toolbar-tools::-webkit-scrollbar{display:none}@media(max-width:1023px){.an-toolbar-tools{mask-image:linear-gradient(to right,#000 calc(100% - var(--space-6)),transparent 100%)}}.an-tool{flex:0 0 auto}.an-tool[aria-pressed=true],.an-tool[aria-pressed=true]:hover{background:var(--color-primary-soft);color:var(--color-primary);border-color:var(--color-primary)}.an-tool-label{display:none}[data-annotate-undo]:disabled,[data-annotate-redo]:disabled,[data-annotate-clear-all]:disabled{display:none}.an-icon-danger{color:var(--color-danger)}.an-toolhint{position:absolute;top:var(--space-3);left:50%;transform:translate(-50%);z-index:1;max-width:calc(100% - var(--space-8));margin:0;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 88%,transparent);border:1px solid var(--color-border);box-shadow:var(--shadow-xs);color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}@media(max-width:639px){.an-toolhint{display:none}}.an-rail{position:absolute;z-index:6;display:none;overflow:auto;overscroll-behavior:contain;padding:var(--space-2);background:var(--color-surface);box-shadow:var(--shadow-lg)}.an-layout[data-rail=open] .an-rail{display:block}.an-layout[data-rail=open] .an-toolbar,.an-layout[data-rail=open] .an-hud,.an-layout[data-rail=open] .an-props{display:none}.an-rail{inset-block:0;inset-inline-start:0;border-inline-end:1px solid var(--color-border);width:min(104px,30vw)}@media(min-width:640px){.an-rail{width:min(128px,26vw)}}@media(min-width:1024px){.an-rail{width:min(152px,22vw)}}.an-rail-list{display:grid;gap:var(--space-2);margin:0;list-style:none;grid-auto-flow:row;padding:var(--space-1)}.an-thumb{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);color:var(--color-text-muted);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.an-thumb:hover{border-color:var(--color-border-strong)}.an-thumb:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.an-thumb[aria-current=true]{border-color:var(--color-primary);color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.an-thumb-frame{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:3 / 4;overflow:hidden;border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--fs-caption)}.an-thumb-frame img{width:100%;height:100%;object-fit:contain}.an-thumb-caption{font-size:var(--fs-caption);line-height:var(--lh-caption);font-variant-numeric:tabular-nums}.an-thumb-badge{position:absolute;top:var(--space-1);inset-inline-end:var(--space-1);min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:0 0 0 2px var(--color-surface-alt);font-size:var(--fs-micro);font-weight:var(--fw-semibold);line-height:16px;text-align:center;font-variant-numeric:tabular-nums}.an-stage{position:relative;display:flex;flex-direction:column;min-width:0}.an-stage-scroll{position:relative;display:flex;justify-content:flex-start;flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-y;scroll-behavior:auto;padding:var(--space-3);background:var(--color-surface-sunken);overflow-anchor:none}.an-workspace:not([data-tool=select]) .an-stage-scroll{touch-action:none}.an-workspace:not([data-annotate-expanded=true]) .an-stage-scroll{max-height:70svh}.an-pages:focus{outline:none}.an-pages{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);margin-inline:auto;margin-block:0;align-self:flex-start;min-height:0}.an-page{position:relative;flex:0 0 auto;background:#fff;box-shadow:var(--shadow-md);overflow:hidden}.an-page canvas{display:block;width:100%;height:100%}.an-page[data-error=true]{outline:2px solid var(--color-danger)}.an-page-label{position:absolute;inset-inline-end:var(--space-2);bottom:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-bg) 72%,transparent);color:var(--color-text-muted);font-size:var(--fs-micro);line-height:18px;font-variant-numeric:tabular-nums;pointer-events:none}.an-page[data-busy=true]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--color-surface-alt),transparent);opacity:.5;animation:anShimmer 1.2s var(--ease-standard) infinite;pointer-events:none}@media(prefers-reduced-motion:reduce){.an-page[data-busy=true]:after{animation:none}}@keyframes anShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.an-overlay{position:absolute;inset:0;width:100%;height:100%}.an-workspace[data-tool=select] .an-overlay{cursor:default}.an-workspace:not([data-tool=select]) .an-overlay{cursor:crosshair}.an-drag-frame{position:absolute;z-index:3;border:1.5px dashed var(--color-primary);border-radius:var(--radius-xs);background:transparent;touch-action:none;cursor:move}.an-frame-handle{position:absolute;inset-inline-end:calc(var(--touch-min) / -2);bottom:calc(var(--touch-min) / -2);width:var(--touch-min);height:var(--touch-min);padding:0;border:0;background:transparent;cursor:nwse-resize;touch-action:none}.an-frame-handle:after{content:"";position:absolute;inset:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:var(--radius-pill);background:var(--color-surface);box-shadow:0 0 0 2px var(--color-primary)}.an-frame-handle:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-pill)}.an-drag-frame[data-resizable=false] .an-frame-handle{display:none}.an-mark{pointer-events:none}.an-workspace[data-tool=select] .an-mark{pointer-events:all;cursor:move}.an-mark:focus{outline:none}.an-mark:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.an-mark[data-selected=true]:focus-visible{outline:none}.an-mark[data-draft=true]{opacity:.75}.an-hud{position:absolute;left:50%;bottom:calc(var(--an-safe-bottom) + var(--an-dock-h));transform:translate(-50%);z-index:2;display:flex;align-items:center;gap:var(--space-2);max-width:calc(100% - var(--space-6));padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 92%,transparent);box-shadow:var(--shadow-md);pointer-events:none}.an-hud>*{pointer-events:auto}.an-pager,.an-zoombar{display:flex;align-items:center;gap:var(--space-1)}.an-pager-label,.an-zoom-value{min-width:5ch;color:var(--color-text-muted);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);text-align:center;font-variant-numeric:tabular-nums}.an-pager-label{min-width:10ch}@media(max-width:639px){.an-pager-label{min-width:0;white-space:nowrap}.an-toolhint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-toolbar{padding:var(--space-1)}.an-rail-list{grid-auto-rows:76px}.an-zoom-value{min-width:4ch}.an-hud{gap:var(--space-1);padding:var(--space-1)}.an-pager,.an-zoombar{gap:0}}.an-zoombar [aria-pressed=true]{background:var(--color-primary-soft);color:var(--color-primary)}.an-props{position:absolute;z-index:4;display:none;flex-direction:column;width:min(272px,100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg);touch-action:manipulation}.an-props[data-open=true]{display:flex}.an-props[data-anchored=false]{left:50%;right:auto;transform:translate(-50%);top:auto;bottom:calc(var(--an-safe-bottom) + var(--an-dock-h))}.an-layout[data-inspector=floating] .an-hud{display:none}.an-props-body{max-height:min(46svh,420px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;min-width:0}.an-props-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);border:0;border-radius:var(--radius-lg);background:inherit;color:var(--color-text);font:inherit;text-align:start;cursor:pointer}.an-props-toggle:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.an-props-title{flex:0 0 auto;margin:0}.an-props-summary-dot{display:none;width:14px;height:14px;flex:0 0 auto;border-radius:var(--radius-pill);background:var(--an-ink, transparent);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.an-props-summary-dot[data-visible=true]{display:inline-block}.an-props-summary{flex:1 1 auto;overflow:hidden;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption);text-align:end;text-overflow:ellipsis;white-space:nowrap}.an-props-chevron{display:inline-flex;flex:0 0 auto;color:var(--color-text-muted);transition:transform var(--dur-base) var(--ease-standard)}.an-props-body{display:flex;flex-direction:column;gap:var(--space-4);padding:0 var(--space-4) var(--space-4)}.an-props[data-expanded=false] .an-props-body{display:none}.an-props[data-expanded=true] .an-props-toggle{border-bottom:1px solid var(--color-border-strong)}.an-props[data-expanded=true] .an-props-chevron{transform:rotate(180deg)}@media(max-width:1023px){.an-props,.an-props[data-anchored=false]{position:fixed;left:var(--space-3);right:var(--space-3);bottom:calc(var(--an-safe-bottom) + var(--an-dock-h));width:auto;max-width:calc(100vw - var(--space-3) * 2);transform:none}.an-layout[data-inspector=anchored] .an-hud{display:none}@media(min-width:640px){.an-props,.an-props[data-anchored=false]{left:50%;right:auto;width:80%;max-width:80%;transform:translate(-50%)}}.an-props-toggle{flex:0 0 auto}.an-props[data-expanded=true] .an-props-body{max-height:min(30svh,260px);flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto}@media(min-width:640px){.an-props[data-expanded=true] .an-props-body{max-height:min(38svh,340px)}}@media(max-height:520px){.an-props[data-expanded=true] .an-props-body{max-height:min(40svh,180px)}.an-toolhint{display:none}}.an-props-body{gap:var(--space-3);padding:0 var(--space-3) var(--space-3)}.an-props-toggle{padding:var(--space-2) var(--space-3)}}@media(prefers-reduced-motion:reduce){.an-props-chevron{transition:none}}@media(min-width:1024px){.an-props-toggle{padding-bottom:var(--space-2)}}.an-field{display:flex;flex-direction:column;gap:var(--space-2)}.an-props-empty,.an-props-flag{margin:0}.an-props-flag{color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.an-props-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ui-btn.an-btn-danger[data-variant]{color:var(--color-danger)}.an-note-editor{position:absolute;z-index:2;margin:0;border-style:solid;font-family:Helvetica,Arial,sans-serif;overflow:hidden;resize:none;box-sizing:border-box}.an-note-editor:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.an-note-editor::placeholder{color:currentColor;opacity:.45}.an-swatches{display:grid;grid-template-columns:repeat(auto-fill,var(--touch-min));gap:var(--space-1);justify-content:start}@media(max-width:1023px){.an-swatches{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:var(--space-1) 0}.an-swatches::-webkit-scrollbar{display:none}.an-swatch{flex:0 0 auto}}.an-swatch{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);padding:0;border:0;border-radius:var(--radius-pill);background:none;cursor:pointer}.an-swatch:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.an-swatch-disc{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-pill);background:var(--an-ink, var(--color-text));box-shadow:inset 0 0 0 1px var(--color-border-strong);transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.an-swatch:hover .an-swatch-disc{transform:scale(1.08)}.an-swatch[aria-checked=true] .an-swatch-disc{box-shadow:inset 0 0 0 1px var(--color-border-strong),0 0 0 2px var(--color-surface),0 0 0 4px var(--color-text)}@media(prefers-reduced-motion:reduce){.an-swatch-disc{transition:none}.an-swatch:hover .an-swatch-disc{transform:none}}.an-swatch-none .an-swatch-disc{background:linear-gradient(to top right,transparent calc(50% - 1px),var(--color-danger) calc(50% - 1px),var(--color-danger) calc(50% + 1px),transparent calc(50% + 1px)),var(--color-surface-alt)}.an-swatch-custom .an-swatch-disc{background:var(--color-surface-alt);color:var(--color-text);box-shadow:inset 0 0 0 3px var(--an-ink, var(--color-border-strong))}.an-swatch-custom[aria-checked=true] .an-swatch-disc{box-shadow:inset 0 0 0 3px var(--an-ink, var(--color-border-strong)),0 0 0 2px var(--color-surface),0 0 0 4px var(--color-text)}.an-picker{position:fixed;z-index:calc(var(--z-modal) + 1);display:flex;flex-direction:column;gap:var(--space-3);width:232px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.an-picker-head{display:flex;align-items:center;gap:var(--space-2)}.an-picker-title{flex:1 1 auto;font-size:var(--fs-body-sm);font-weight:var(--fw-semibold)}.an-picker-preview{width:24px;height:24px;flex:0 0 auto}.an-picker-area{position:relative;height:148px;border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px var(--color-border-strong);background:linear-gradient(to bottom,transparent,#000000),linear-gradient(to right,#fff,hsl(var(--an-picker-hue, 0) 100% 50%));cursor:crosshair;touch-action:none}.an-picker-area:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.an-picker-thumb{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:var(--radius-pill);background:var(--an-ink, transparent);box-shadow:0 0 0 3px #fff,0 0 0 4px #00000059,0 1px 4px #00000059;pointer-events:none}.an-picker-row{display:flex;flex-direction:column;gap:var(--space-1)}.an-picker-row:has(.an-picker-hue){margin-block:calc(var(--space-2) * -1)}.an-picker-hue{appearance:none;-webkit-appearance:none;width:100%;height:var(--touch-min);min-height:var(--touch-min);margin:0;background:transparent;cursor:pointer}.an-picker-hue:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-pill)}.an-picker-hue::-webkit-slider-runnable-track{height:10px;border-radius:var(--radius-pill);background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.an-picker-hue::-moz-range-track{height:10px;border-radius:var(--radius-pill);background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.an-picker-hue::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;margin-top:-4px;border-radius:var(--radius-pill);background:hsl(var(--an-picker-hue, 0) 100% 50%);box-shadow:0 0 0 3px #fff,0 1px 4px #00000073;cursor:pointer}.an-picker-hue::-moz-range-thumb{width:18px;height:18px;border:0;border-radius:var(--radius-pill);background:hsl(var(--an-picker-hue, 0) 100% 50%);box-shadow:0 0 0 3px #fff,0 1px 4px #00000073;cursor:pointer}.an-picker-hex{text-transform:uppercase;font-variant-numeric:tabular-nums}.an-tune-row{display:grid;grid-template-columns:minmax(72px,auto) minmax(0,1fr) minmax(40px,auto);align-items:center;gap:var(--space-3);min-height:var(--touch-min)}.an-range{width:100%;min-height:var(--touch-min);accent-color:var(--color-primary)}.an-range:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-pill)}.an-tune-value{font-size:var(--fs-body-sm);color:var(--color-text-muted);text-align:end;font-variant-numeric:tabular-nums}.an-result{position:absolute;top:var(--space-3);left:50%;transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:var(--space-3);max-width:calc(100% - var(--space-6));padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.an-result-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-success)}.an-result-title{display:block;font-size:var(--fs-body)}.an-result p{margin:var(--space-1) 0 0}.an-download{display:none}.an-actionbar{position:relative;display:flex;flex-direction:row-reverse;align-items:center;gap:var(--space-2);min-width:0}.an-actionbar-row{display:flex;align-items:center;gap:var(--space-2)}.an-actionbar-row>.ui-btn{flex:0 0 auto;min-height:var(--touch-min)}.an-actionbar-hint{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;color:var(--color-text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.an-actionbar-hint:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-xs)}.an-save[aria-disabled=true]{opacity:.4;cursor:not-allowed}.an-save-spinner{display:inline-flex;animation:anSpin .9s linear infinite}@keyframes anSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.an-save-spinner{animation-duration:2.4s}}.an-sheet{display:flex;flex-direction:column;gap:var(--space-3)}.an-workspace [hidden]{display:none!important}.an-workspace[data-annotate-state=empty] .an-layout{display:none}@media(max-width:1023px){.an-workspace .an-actionbar{position:static;padding:0;border:0;background:transparent;backdrop-filter:none}}
