.dropzone{position:relative;border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);padding:var(--space-5);text-align:center;cursor:pointer;background:linear-gradient(180deg,var(--surface-elevated) 0,var(--panel) 100%);transition:border-color var(--anim-fast),background-color var(--anim-fast),box-shadow var(--anim-fast),transform var(--anim-fast)}.dropzone:hover:not(.dropzone--disabled){border-color:var(--border-hover);box-shadow:var(--shadow-1)}.dropzone--active{border-color:var(--accent);background:var(--accent-tint);box-shadow:0 0 0 1px var(--accent-ring);transform:translateY(-1px)}.dropzone--disabled{opacity:.62}.dropzone-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.dropzone-copy{display:grid;justify-items:center;gap:var(--space-2)}.dropzone-icon{color:var(--color-accent-strong);opacity:.8}.dropzone-text{color:var(--text);font-size:var(--font-size-sm);font-weight:620}.dropzone-microcopy{color:var(--muted);font-size:var(--font-size-xs);line-height:1.5}.file-list{list-style:none;padding-left:0;margin:0;display:grid;gap:var(--space-2)}.file-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.file-list-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-elevated);min-width:0}.file-list-item>.btn{margin-left:auto;align-self:center}.file-list-thumb{position:relative;width:80px;min-width:80px;aspect-ratio:1/1;min-height:80px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(135deg,rgba(148,163,184,.12) 0,rgba(148,163,184,.04) 45%,rgba(148,163,184,.12) 100%),var(--surface);overflow:hidden;flex-shrink:0;display:grid;place-items:center}.file-list-thumb-image{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;display:block;background:var(--surface)}.file-list-thumb-skeleton{border-radius:0}.file-list-thumb-file{width:100%;height:100%;display:grid;place-items:center;gap:4px;color:var(--muted);font-size:.68rem;letter-spacing:.03em;text-transform:uppercase;font-weight:650}.file-list-thumb-file svg{color:var(--text)}.file-list-thumb-file--image{font-size:.62rem}.file-list-thumb-file--loading{color:var(--muted)}.file-list-thumb-file--loading span{opacity:.6}.file-list-thumb-file--preview-fallback{color:var(--text-subtle,var(--text))}.pdf-thumb-viewport.file-list-thumb{width:80px;min-height:80px;aspect-ratio:1/1;flex-shrink:0}.file-list-main{display:grid;gap:var(--space-1);flex:1 1;min-width:0;overflow:hidden}.file-list-name{flex:1 1;font-size:var(--font-size-sm);min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.35}.file-list-size{font-size:var(--font-size-xs);color:var(--muted)}.word-docx-chip{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:32px;padding:4px 10px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-elevated);color:var(--text-chip);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.file-list-empty{color:var(--muted);font-size:var(--font-size-sm)}.filedropzone-errors{margin-top:var(--space-2)}.filedropzone-list-wrap{margin-top:var(--space-3)}.filedropzone-toolbar{display:flex;gap:var(--space-2);justify-content:space-between;align-items:center;flex-wrap:wrap}.filedropzone-list{margin-top:var(--space-2)}.filedropzone-thumb-image{width:56px;min-width:56px;aspect-ratio:1/1;border-radius:8px;border:1px solid var(--border);background:linear-gradient(135deg,rgba(148,163,184,.11) 0,rgba(148,163,184,.03) 45%,rgba(148,163,184,.11) 100%),var(--surface);overflow:hidden;display:grid;place-items:center;flex-shrink:0}.filedropzone-thumb-media{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block}.filedropzone-thumb-skeleton{border-radius:0}.filedropzone-thumb-file{width:56px;height:56px;border-radius:8px;border:1px solid var(--border);background:var(--panel);display:flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:.02em;text-transform:uppercase;font-weight:650;color:var(--muted);flex-shrink:0}.image-thumb-frame{position:relative;isolation:isolate}.image-thumb-media{position:relative;z-index:1}.image-thumb-skeleton{position:absolute;inset:0;background:linear-gradient(100deg,rgba(148,163,184,.11) 20%,rgba(148,163,184,.22) 40%,rgba(148,163,184,.11) 60%),var(--surface);background-size:220% 100%;animation:pdf-thumb-shimmer 1.1s linear infinite;z-index:0}.tool-preview-box{border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);background:var(--surface-elevated)}.color-picker-canvas-wrap{position:relative;width:100%;display:flex;justify-content:center}.color-picker-canvas{width:auto;height:auto;max-width:100%;max-height:360px;border:1px solid var(--border);border-radius:10px;background:var(--surface-elevated);cursor:crosshair;display:block;touch-action:none}.color-picker-loupe{position:absolute;pointer-events:none;width:124px;padding:6px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface-elevated);box-shadow:var(--shadow-2);transition:opacity var(--anim-fast);z-index:3}.color-picker-loupe canvas{width:110px;height:110px;border:1px solid var(--border);border-radius:8px;image-rendering:pixelated;display:block}.color-picker-loupe-meta{margin-top:4px;display:grid;gap:2px}.drag-handle{width:6px;align-self:stretch;border-radius:999px;background:var(--border)}.drag-handle.is-active{background:var(--link)}.draggable-card{display:grid;gap:var(--space-2);border:1px solid var(--border);border-radius:8px;padding:var(--space-2);background:var(--panel);cursor:grab}.draggable-card.is-active{border-color:var(--color-accent);box-shadow:var(--shadow-1)}.pdf-thumb-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,224px),1fr));align-items:start}.pdf-thumb-item{position:relative;border:1px solid var(--border);border-radius:10px;padding:var(--space-3);background:var(--surface-elevated);display:grid;gap:var(--space-2);min-width:0;overflow:hidden;isolation:isolate}.pdf-thumb-item.is-selected{border-color:var(--color-accent);box-shadow:var(--shadow-1);background:var(--page-selected-bg)}.pdf-thumb-item.is-draggable{cursor:grab}.pdf-thumb-item.is-dragging{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--accent-outline);cursor:grabbing;z-index:1}.pdf-thumb-viewport{position:relative;width:100%;aspect-ratio:3/4;min-height:168px;border:1px solid var(--border);border-radius:8px;background:var(--surface-alt);overflow:hidden;isolation:isolate}.pdf-thumb-viewport.is-selected{border-color:var(--color-accent)}.pdf-thumb-media{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1}.pdf-thumb-canvas{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block;transform:rotate(var(--pdf-thumb-rotation,0deg));transform-origin:center center;transition:transform var(--anim-fast)}.pdf-thumb-skeleton{position:absolute;inset:0;background:linear-gradient(100deg,rgba(148,163,184,.11) 20%,rgba(148,163,184,.22) 40%,rgba(148,163,184,.11) 60%),var(--surface);background-size:220% 100%;animation:pdf-thumb-shimmer 1.1s linear infinite;z-index:0}.pdf-thumb-status{position:absolute;inset:auto auto 8px 8px;font-size:var(--font-size-xs);color:var(--muted);padding:2px 6px;border-radius:999px;background:var(--overlay-bg);z-index:2}.pdf-thumb-status--error{color:var(--error)}.pdf-thumb-page-overlay{position:absolute;top:8px;left:8px;font-size:var(--font-size-xs);font-weight:600;color:var(--overlay-text);padding:2px 6px;border-radius:999px;background:var(--overlay-bg);z-index:2}.pdf-thumb-meta{display:flex;justify-content:space-between;gap:var(--space-2);align-items:center;min-width:0}.pdf-thumb-meta>*{min-width:0}.pptx-slide-preview{width:100%;border:1px solid var(--border);border-radius:8px;display:block;background:var(--surface-elevated)}@keyframes pdf-thumb-shimmer{0%{background-position:100% 0}to{background-position:-120% 0}}.pdf-rotate-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-2)}.pdf-rotate-thumb{width:100%;display:grid;gap:var(--space-2);border:none;background:transparent;padding:0;color:inherit;text-align:left;cursor:pointer;border-radius:8px}.pdf-rotate-thumb:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.pdf-rotate-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:2px var(--space-2);border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-elevated);color:var(--overlay-text);font-size:var(--font-size-xs);font-weight:620}.pretty-progress-wrap{margin-top:var(--space-2)}.pretty-progress{display:grid;gap:6px}.pretty-progress-label{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--muted)}.pretty-progress-track{position:relative;width:100%;height:16px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-alt);overflow:hidden}.pretty-progress-fill{position:absolute;inset:0;transform-origin:left center;background:linear-gradient(90deg,var(--accent),#3b82f6);transition:transform .12s ease-out}.pretty-progress-fill.is-indeterminate{width:38%;transform:translateX(-120%);animation:pretty-progress-indeterminate 1.1s ease-in-out infinite}.pretty-progress-sheep{position:absolute;top:1px;color:var(--surface-elevated);filter:drop-shadow(0 1px 1px rgba(0,0,0,.2));transition:left .12s ease-out;pointer-events:none}.pretty-progress-sheep.is-indeterminate{left:10%;animation:pretty-progress-sheep-indeterminate 1.1s ease-in-out infinite}@keyframes pretty-progress-indeterminate{0%{transform:translateX(-120%)}to{transform:translateX(350%)}}@keyframes pretty-progress-sheep-indeterminate{0%{left:10%}to{left:calc(90% - 10px)}}@supports selector(:has(*)){.tool-runtime>section:has(.pdf-thumb-grid){display:grid;gap:var(--space-3)}.tool-runtime>section:has(.pdf-thumb-grid)>.output-panel{order:30}.tool-runtime>section:has(.pdf-thumb-grid)>:is(section,div):has(>.pdf-thumb-grid){order:40}:is(section,div).section:has(>.pdf-thumb-grid){display:grid;gap:var(--space-3)}:is(section,div).section:has(>.pdf-thumb-grid)>.pdf-thumb-grid{order:40}:is(section,div).section:has(>.pdf-thumb-grid)>.output-panel,:is(section,div).section:has(>.pdf-thumb-grid)>[data-testid=run]{order:30}}.tool-runtime{min-width:0}.tool-text-dev-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--space-2)}@media (min-width:980px){.tool-runtime:is(.tool-runtime--text,.tool-runtime--developer)>section:has(.output-panel,[data-testid=output]){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3);align-items:start}.tool-runtime:is(.tool-runtime--text,.tool-runtime--developer)>section:has(.output-panel,[data-testid=output])>:is(.section:has([data-testid=text-input]),.section:has(textarea),.section:has(input[data-testid=text-input]),.section:has(#regex-pattern)){grid-column:1;min-width:0}.tool-runtime:is(.tool-runtime--text,.tool-runtime--developer)>section:has(.output-panel,[data-testid=output])>:is(.output-panel,.section[data-testid=output]){grid-column:2;grid-row:1;min-width:0}.tool-runtime:is(.tool-runtime--text,.tool-runtime--developer)>section:has(.output-panel,[data-testid=output])>:not(:is(.section:has([data-testid=text-input]),.section:has(textarea),.section:has(input[data-testid=text-input]),.section:has(#regex-pattern),.output-panel,.section[data-testid=output])){grid-column:1/-1}}