.file-picker{transition:border-color .12s,background-color .12s,box-shadow .12s}.file-picker.is-dragging{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.converter-card.has-selection .file-picker{display:none}.converter-card.has-selection .converter-note{margin-top:0;padding-top:10px}.add-images-button{border-color:var(--lavender);color:var(--lavender)}.add-images-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:var(--workspace-text)}.receipt-hash-option,.zip-run-option{min-height:44px;color:var(--muted);cursor:pointer;align-items:center;gap:7px;font-size:.78rem;font-weight:650;display:inline-flex}.receipt-hash-option input,.zip-run-option input{width:16px;height:16px;accent-color:var(--accent);margin:0}.receipt-hash-option:has(input:disabled),.zip-run-option:has(input:disabled){opacity:1;cursor:wait}.converter-card.is-dragging:not(.has-selection) .file-picker{border-color:var(--lavender);background:var(--workspace-surface-hover);box-shadow:inset 0 0 0 1px var(--lavender)}.converter-card.has-selection.is-dragging .batch-list{outline:2px solid var(--lavender);outline-offset:-2px;background:var(--workspace-surface-hover)}.converter-card.has-selection .converter-note,.converter-card.has-selection .file-summary,.converter-card.has-selection .converter-footer,.converter-card.has-selection .export-status,.converter-card.has-selection .batch-progress,.converter-card.has-selection .batch-list{width:min(1180px,100%);margin-inline:auto}.export-status{color:var(--muted);margin:12px 0 0;line-height:1.5}.batch-progress{color:var(--muted);gap:8px;margin-top:18px;margin-bottom:14px;font-size:.9rem;display:grid}.batch-progress progress{-webkit-appearance:none;appearance:none;background:var(--border-soft,var(--workspace-divider));border:0;border-radius:999px;width:100%;height:9px;overflow:hidden}.batch-progress progress::-webkit-progress-bar{border-radius:inherit;background:var(--border-soft,var(--workspace-divider))}.batch-progress progress::-webkit-progress-value{border-radius:inherit;background:var(--accent-strong,var(--accent))}.batch-progress progress::-moz-progress-bar{border-radius:inherit;background:var(--accent-strong,var(--accent))}.batch-progress[data-complete=true] progress,.batch-progress[data-complete=true] progress::-webkit-progress-bar{background:var(--border-soft,var(--workspace-divider))}.batch-progress[data-complete=true] progress::-webkit-progress-value,.batch-progress[data-complete=true] progress::-moz-progress-bar{background:var(--accent-strong,var(--accent))}.batch-progress[data-complete=true]{margin-top:10px;margin-bottom:0}.batch-progress[data-complete=true] progress{display:none}html[data-private-workspace][data-workspace-kind=converter] .converter-card--format-workspace>.converter-done-summary{white-space:normal;align-items:center;gap:14px;min-width:0;margin:0;padding:12px 16px;display:flex}html[data-private-workspace][data-workspace-kind=converter] .converter-card--format-workspace>.converter-done-summary strong{color:var(--workspace-text);flex:none;font-size:1.375rem;font-weight:760;line-height:1.25}html[data-private-workspace][data-workspace-kind=converter] .converter-card--format-workspace>.converter-done-summary span{min-width:0;color:var(--workspace-text-muted);font-size:.9375rem;line-height:1.4}.converter-card.has-selection .batch-list{overscroll-behavior:contain;scrollbar-gutter:stable;border:0;flex:1 1 0;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;gap:12px;min-height:0;margin-top:14px;padding:2px 4px 20px 0;list-style:none;display:grid;overflow-y:auto}.batch-item{border:1px solid var(--workspace-card-border);background:var(--workspace-surface);min-width:0;min-height:0;color:var(--workspace-text);grid-template-rows:auto max-content;align-content:start;align-self:start;padding:0;display:grid;position:relative;overflow:hidden}.batch-item-preview{aspect-ratio:4/3;border-bottom:1px solid var(--workspace-divider);background:var(--workspace-surface-deep);position:relative;overflow:hidden}.batch-item-preview img{object-fit:contain;background:var(--workspace-surface-deep);width:100%;height:100%;display:block}.batch-preview-unavailable{background:linear-gradient(135deg, var(--workspace-surface-deep), color-mix(in srgb, var(--workspace-control-surface) 78%, transparent));width:100%;height:100%;color:var(--workspace-text-muted);text-align:center;place-content:center;gap:4px;padding:10px;display:grid}.batch-preview-unavailable strong{color:var(--lavender);font-size:.82rem;font-weight:850}.batch-preview-unavailable span{font-size:.68rem;font-weight:700;line-height:1.25}.batch-item-main{grid-template-columns:minmax(0,1fr);align-content:start;gap:5px;min-width:0;min-height:0;padding:12px 12px 11px;display:grid}.batch-item-name{min-width:0;color:var(--workspace-text);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:760;line-height:1.25;overflow:hidden}.batch-item-detail{color:var(--workspace-text-muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.74rem;line-height:1.35;display:-webkit-box;overflow:hidden}html[data-private-workspace][data-workspace-kind=converter] .batch-item[data-batch-state=failed] .batch-item-detail[data-batch-error]{color:var(--danger)}.batch-list[data-batch-tile-virtual][data-virtualized] .batch-item-detail{min-height:2.7em}.batch-item-actions{border-top:1px solid var(--workspace-divider);grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(44px,max-content);align-content:start;min-height:0;display:grid}.batch-item-actions:empty{display:none}.batch-state{z-index:5;background:var(--workspace-control-surface);width:44px;height:44px;min-height:44px;color:var(--workspace-state-muted);font:inherit;border:0;border-radius:0;place-items:center;padding:0;font-size:0;display:grid;position:absolute;top:0;right:0}.batch-state:after{font-size:20px;font-weight:850;line-height:1}.batch-state-pending:after{content:"◷"}.batch-state-running{background:var(--accent);color:var(--workspace-text)}.batch-state-running:after{content:"↻";animation:.9s linear infinite batch-state-spin}.batch-state-completed{background:var(--workspace-success);color:var(--workspace-text)}.batch-state-completed:after{content:"✓"}.batch-state-failed{background:var(--workspace-danger);color:var(--workspace-text);cursor:pointer}.batch-state-failed:after{content:"i";border:2px solid;border-radius:50%;place-items:center;width:20px;height:20px;font-size:14px;display:grid}.batch-state-failed:hover{background:var(--workspace-danger-hover)}.batch-state-cancelled{background:var(--workspace-cancelled)}.batch-state-cancelled:after{content:"×"}.batch-state:focus-visible{outline:3px solid var(--workspace-text);outline-offset:-5px}@keyframes batch-state-spin{to{transform:rotate(360deg)}}.batch-download,.batch-retry{width:100%;min-height:44px;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:.75rem;font-weight:800;text-decoration:none;display:inline-flex}.batch-retry{color:var(--workspace-text);background:0 0}.batch-retry:after{content:"";background:var(--lavender);flex:0 0 22px;width:22px;height:22px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11a8 8 0 1 0-2.35 5.65'/%3E%3Cpath d='M20 4v7h-7'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11a8 8 0 1 0-2.35 5.65'/%3E%3Cpath d='M20 4v7h-7'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat}.batch-retry:hover{background:var(--workspace-control-surface)}.extract-download{min-height:34px;color:var(--accent-strong);font:inherit;letter-spacing:normal;text-transform:none;cursor:pointer;align-items:center;padding:0 4px;font-size:.8rem;font-weight:650;text-decoration:none;display:inline-flex}html[data-private-workspace] .extract-download:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}@media (width<=860px),(pointer:coarse){.extract-download{min-height:44px;padding:0 2px}}.batch-item-actions>.batch-retry{border:0;border-radius:0;width:100%;min-width:0;height:44px;margin:0;padding:0 12px;line-height:1}.batch-item[data-batch-state=failed] .batch-item-actions{border-top:0;width:0;height:0;min-height:0;display:block;position:static}.batch-item[data-batch-state=failed] .batch-item-actions>.batch-retry{z-index:5;background:var(--accent);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--workspace-text);border:0;margin:0;padding:0;font-size:0;position:absolute;top:44px;right:0}.batch-item[data-batch-state=failed] .batch-retry:after{background:currentColor;width:24px;height:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.batch-item[data-batch-state=failed] .batch-retry:hover{background:var(--workspace-action-hover)}.batch-item:is([data-batch-state=pending],[data-batch-state=running],[data-batch-state=completed]) .batch-item-actions{z-index:4;background:0 0;flex-direction:column;align-items:stretch;width:44px;min-height:0;padding-top:44px;display:flex;position:absolute;top:0;left:0}.batch-item:is([data-batch-state=pending],[data-batch-state=running],[data-batch-state=completed]) .batch-item-actions>:is(.batch-copy-placeholder,.batch-download-placeholder,.batch-download,.batch-copy){border:0;border-radius:0;flex:0 0 44px;width:44px;height:44px;margin:0;padding:0;line-height:1;position:relative}.batch-copy-placeholder,.batch-item[data-batch-state=completed] .batch-copy{background:var(--workspace-control-surface);color:var(--workspace-text);order:1;font-size:0}.batch-download-placeholder,.batch-item[data-batch-state=completed] .batch-download{background:var(--accent);color:var(--workspace-text);order:2;font-size:0}.batch-copy-placeholder,.batch-download-placeholder{opacity:.42;cursor:default}.batch-item[data-batch-state=completed] .batch-download:hover{background:var(--workspace-action-hover)}.batch-item[data-batch-state=completed] .batch-copy:hover:not(:disabled){background:var(--workspace-control-hover)}:is(.batch-copy-placeholder,.batch-item[data-batch-state=completed] .batch-copy):before,:is(.batch-copy-placeholder,.batch-item[data-batch-state=completed] .batch-copy):after{content:"";box-sizing:border-box;border:2px solid;width:11px;height:11px;position:absolute;top:50%;left:50%}:is(.batch-copy-placeholder,.batch-item[data-batch-state=completed] .batch-copy):before{z-index:0;border-color:var(--lavender);transform:translate(-32%,-68%)}:is(.batch-copy-placeholder,.batch-item[data-batch-state=completed] .batch-copy):after{z-index:1;border-color:var(--workspace-text);background:inherit;transform:translate(-68%,-32%)}:is(.batch-download-placeholder,.batch-item[data-batch-state=completed] .batch-download):after{content:"";background:currentColor;width:24px;height:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v11'/%3E%3Cpath d='m7.5 10.5 4.5 4.5 4.5-4.5'/%3E%3Cpath d='M5 20h14'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v11'/%3E%3Cpath d='m7.5 10.5 4.5 4.5 4.5-4.5'/%3E%3Cpath d='M5 20h14'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat}.batch-item[data-batch-state=completed] .batch-copy:disabled{cursor:progress;opacity:.58}.batch-crop{z-index:5;background:var(--workspace-control-surface);width:44px;height:44px;color:var(--lavender);font:inherit;cursor:pointer;border:0;border-radius:0;place-items:center;padding:0;font-size:0;display:grid;position:absolute;bottom:0;right:0}.batch-crop:after{content:"";background:currentColor;width:23px;height:23px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3v14a4 4 0 0 0 4 4h10'/%3E%3Cpath d='M3 7h14a4 4 0 0 1 4 4v10'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3v14a4 4 0 0 0 4 4h10'/%3E%3Cpath d='M3 7h14a4 4 0 0 1 4 4v10'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat}.batch-crop:hover:not(:disabled){background:var(--workspace-control-hover);color:var(--workspace-text)}.batch-crop:disabled{opacity:.42;cursor:default}.batch-crop:focus-visible{outline:3px solid var(--workspace-text);outline-offset:-5px}.batch-remove{z-index:3;background:var(--workspace-danger);width:44px;height:44px;color:var(--workspace-text);font:inherit;cursor:pointer;border:0;border-radius:0;place-items:center;padding:0;font-size:0;display:grid;position:absolute;top:0;left:0}.batch-remove:before,.batch-remove:after{content:"";background:currentColor;border-radius:2px;width:22px;height:3px;position:absolute;top:50%;left:50%}.batch-remove:before{transform:translate(-50%,-50%)rotate(45deg)}.batch-remove:after{transform:translate(-50%,-50%)rotate(-45deg)}.batch-remove:hover{background:var(--workspace-danger-hover)}:is(.batch-remove,.batch-download,.batch-copy,.batch-retry,.batch-state-failed){transition:background-color .1s}:is(.batch-remove,.batch-download,.batch-copy):focus-visible{outline:3px solid var(--workspace-text);outline-offset:-5px}.batch-view-filter{justify-content:flex-end;gap:0;width:min(1180px,100%);margin:10px auto 0;display:flex}.batch-view-filter-button{background:var(--workspace-surface);min-height:36px;color:var(--workspace-filter-text);font:inherit;letter-spacing:.04em;cursor:pointer;border:1px solid #ffffff4d;border-radius:0;padding:0 12px;font-size:.72rem;font-weight:800}.batch-view-filter-button.is-active{z-index:1;border-color:var(--lavender);background:var(--accent);color:var(--workspace-text);position:relative}.batch-view-filter-button:disabled{opacity:.42;cursor:default}.batch-view-filter-button:not(:disabled):hover:not(.is-active){background:var(--workspace-control-surface)}@media (width>=821px){.converter-shell{height:calc(100svh - 106px)}.converter-shell-inner{height:100%;min-height:0}.converter-card.has-selection{min-height:0;overflow:hidden}}@media (width<=820px){.converter-card.has-selection .batch-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:min(58svh,560px);padding-right:0}}@media (width<=620px){.converter-actions{grid-template-columns:1fr;display:grid}.converter-actions>button,.converter-actions>a{text-align:center;width:100%}.converter-card.has-selection .converter-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.converter-actions>.receipt-hash-option,.converter-actions>.zip-run-option{grid-column:1/-1;justify-content:flex-start}.batch-item-main{min-height:68px;padding:10px}.batch-item-name{font-size:.76rem}.batch-item-detail{font-size:.69rem}}@media (width<=360px){.converter-card.has-selection .batch-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.file-picker{transition:none}.batch-state-running:after{animation:none}}@media (width<=820px){html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection{overscroll-behavior:contain;overflow-y:auto}html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection .batch-list{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;gap:8px;min-height:0;max-height:none;margin-top:8px;padding:0 0 12px;overflow:visible}html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection .batch-item{grid-template-rows:max-content max-content;grid-template-columns:minmax(0,1fr);align-items:stretch;min-height:0;display:grid}html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection .batch-item-preview{aspect-ratio:4/3;border-right:0;border-bottom:1px solid var(--workspace-divider);grid-area:1/1;width:auto;height:auto}html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection .batch-item-main{grid-area:2/1;align-content:start;min-width:0;min-height:0;padding:10px}html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection .batch-item-name{font-size:.875rem}html[data-private-workspace][data-workspace-kind=converter] .converter-card.has-selection .batch-item-detail{font-size:.78rem}}.batch-crop svg,.batch-state-detail{display:none}.batch-item{border-color:var(--workspace-card-border);background:var(--workspace-surface);border-radius:14px}.batch-item-preview{border-bottom-color:var(--workspace-divider);background:var(--workspace-surface-deep)}.batch-item-preview img{background:var(--workspace-surface-deep)}.batch-item-main{background:var(--workspace-surface)}.batch-item-name{font-weight:650}.batch-item-detail{color:var(--workspace-text-muted)}.batch-state{border:1px solid var(--workspace-control-border);background:var(--workspace-surface);width:max-content;min-width:0;height:auto;min-height:24px;color:var(--workspace-text-muted);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.5;display:inline-flex;top:8px;left:8px;right:auto}.batch-state:after{content:attr(title);font-size:12px;font-weight:600}.batch-state-pending:after,.batch-state-cancelled:after,.batch-state-running:after,.batch-state-completed:after,.batch-state-failed:after{content:attr(title);font-size:12px}.batch-state-running:after{animation:none;transform:none}.batch-state-running:before{animation:none;display:none}.batch-state-running{border-color:var(--accent-line);background:var(--workspace-surface);color:var(--accent-strong)}.batch-state-completed{border-color:var(--ok);background:var(--workspace-surface);color:var(--ok)}.batch-state-completed:before{content:"✓";font-size:12px;display:inline}.batch-state-failed{border-color:var(--danger);background:var(--workspace-surface);color:var(--danger)}.batch-state-failed:after{content:"Failed";border:0;border-radius:0;width:auto;height:auto;font-size:12px;display:inline}.batch-state-detail{border-color:var(--workspace-control-border);background:var(--workspace-surface);color:var(--workspace-text);border-radius:12px;box-shadow:0 12px 28px #0003}.batch-state-detail-copy-hint{border-top-color:var(--workspace-divider);color:var(--workspace-text-muted)}.batch-progress{border-bottom:1px solid var(--workspace-divider);background:var(--workspace-surface);color:var(--workspace-text-muted);padding:16px}.batch-progress progress{height:8px;accent-color:var(--accent);border-radius:4px}.batch-view-filter{justify-content:flex-start;gap:8px}.batch-view-filter-button,.batch-view-filter-button:first-child,.batch-view-filter-button:last-child{border:1px solid var(--workspace-control-border);background:var(--workspace-surface);min-height:36px;color:var(--workspace-filter-text);letter-spacing:0;border-radius:999px;padding-inline:12px;font-size:14px;font-weight:600}.batch-view-filter-button+.batch-view-filter-button{margin-left:0}.batch-view-filter-button.is-active{border-color:var(--accent);background:var(--workspace-surface);color:var(--accent-strong)}.batch-view-filter-button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.status-message[data-state=error],.export-status[data-state=error]{border:1px solid var(--danger);background:var(--workspace-surface);color:var(--danger);border-radius:12px;padding:10px 12px}@media (width<=760px){.batch-view-filter{justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.batch-view-filter-button{white-space:nowrap;flex:none}.batch-progress{padding:12px}}@media (width<=820px){html[data-private-workspace][data-workspace-kind] :is(.space-saver-workspace,[data-converter]) .batch-list[data-batch-list]:has(>li.batch-item:only-child){grid-template-columns:minmax(0,1fr)}}
