.tool-ui{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-bottom:var(--space-8);padding:var(--space-6)}@media (max-width:640px){.tool-ui{padding:var(--space-4)}}.pdf-split{gap:var(--space-5)}.pdf-split,.ps-upload{display:flex;flex-direction:column}.ps-upload{align-items:center;background:var(--color-bg);border:2px dashed var(--color-border);border-radius:var(--radius-xl);cursor:pointer;gap:var(--space-3);justify-content:center;padding:var(--space-8) var(--space-6);text-align:center;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.ps-upload.drag-over,.ps-upload:hover{background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg));border-color:var(--color-primary);transform:scale(1.01)}.ps-upload__icon{align-items:center;background:color-mix(in srgb,var(--color-primary) 10%,var(--color-bg));border-radius:var(--radius-full);color:var(--color-primary);display:flex;height:64px;justify-content:center;width:64px}.ps-upload h3{color:var(--color-text-primary);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0}.ps-upload p{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}[data-theme=dark] .tool-ui .ps-upload{background:#1e293b;border-color:#475569}[data-theme=dark] .ps-upload h3{color:#f8fafc}[data-theme=dark] .ps-upload p{color:#cbd5e1}.ps-page-btn:focus-visible,.ps-upload:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.ps-error{background:color-mix(in srgb,var(--color-error) 8%,var(--color-bg));border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);margin:0;padding:var(--space-3) var(--space-4)}.ps-panel{display:flex;flex-direction:column;gap:var(--space-4)}.ps-panel__header{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-3);justify-content:space-between}.ps-panel__header span:first-child{min-width:0;overflow-wrap:anywhere}.ps-panel__header span:last-child{white-space:nowrap}.ps-panel__hint{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}.ps-page-grid{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(60px,1fr));max-height:400px;overflow-y:auto;padding:var(--space-2)}.ps-page-btn{align-items:center;aspect-ratio:1;background:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-semibold);justify-content:center;transition:all var(--transition-fast)}.ps-page-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.ps-page-btn.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}[data-theme=dark] .ps-page-btn:not(.selected){color:#f1f5f9}.ps-range{display:flex;flex-direction:column;gap:var(--space-2)}.ps-range label{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.ps-range__hint{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:400}.ps-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:flex-end}.ps-progress{align-items:center;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8)}.ps-progress__spinner{animation:spin .8s linear infinite;border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.ps-progress p{color:var(--color-text-secondary);margin:0}.ps-download{align-items:center;animation:fadeInUp .3s ease-out;background:color-mix(in srgb,var(--color-success) 5%,var(--color-bg));border:2px solid color-mix(in srgb,var(--color-success) 20%,transparent);border-radius:var(--radius-2xl);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8);text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ps-download h3{color:var(--color-success);font-size:var(--text-xl);font-weight:var(--font-bold);margin:0}.ps-download p{color:var(--color-text-secondary);margin:0}.ps-download__hint{font-size:var(--text-sm);line-height:1.5;max-width:60ch}.ps-download a{text-decoration:none}@media (max-width:480px){.ps-actions{flex-direction:column}.ps-actions .btn{width:100%}.ps-upload{padding:var(--space-6) var(--space-4)}.ps-upload__icon{height:52px;width:52px}}@media (prefers-reduced-motion:reduce){.ps-download,.ps-progress__spinner{animation:none}}