.tool-label-crop{margin:var(--spacing-3xl) auto;max-width:1100px;padding:var(--spacing-2xl);border-radius:var(--radius-xl);background:radial-gradient(circle at top left,var(--bg-secondary) 0,var(--bg-primary) 55%);box-shadow:0 18px 40px rgba(15,23,42,.1);border:1px solid rgba(148,163,184,.35)}.tool-container{max-width:1000px;margin:0 auto}.tool-header-row{display:flex;justify-content:space-between;gap:var(--spacing-lg);align-items:flex-start;margin-bottom:var(--spacing-xl)}.tool-section-title{font-size:1.45rem;font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-md)}.tool-section-title i{color:var(--primary-color);font-size:1.4em}.tool-section-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);max-width:520px}.tool-header-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.tool-badge{font-size:11px;border-radius:999px;padding:4px 10px;letter-spacing:.02em;text-transform:uppercase;border:1px solid transparent}.tool-badge-primary{background:var(--bg-secondary);border-color:var(--primary-color);color:var(--primary-color)}.tool-badge-soft{background:rgba(15,23,42,.03);border-color:rgba(148,163,184,.5);color:#6b7280}.tool-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.1fr);gap:var(--spacing-xl);align-items:stretch}.tool-column{min-width:0}.tool-card{background:linear-gradient(135deg,#fff,var(--bg-secondary));border-radius:18px;padding:20px 24px 18px;box-shadow:0 18px 40px rgba(15,23,42,.12);border:1px solid rgba(148,163,184,.3);animation:a .5s ease-out}@keyframes a{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.tool-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.tool-card-title{font-size:.98rem;margin:0 0 4px;color:var(--text-primary)}.tool-card-subtitle{margin:0;font-size:.82rem;color:var(--text-secondary)}.tool-chip{align-self:flex-start;border-radius:999px;padding:4px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:1px solid var(--primary-color)}.upload-wrapper{display:flex;flex-direction:column;gap:10px}.upload-dropzone{border-radius:16px;border:2px dashed rgba(148,163,184,.8);padding:22px 18px;background:var(--bg-primary);display:flex;align-items:center;gap:16px;cursor:pointer;transition:border-color .25s ease,background .25s ease,transform .18s ease,box-shadow .25s ease}.upload-dropzone:hover{transform:translateY(-1px);box-shadow:0 12px 25px rgba(15,23,42,.15)}.upload-dropzone.upload-dropzone--active,.upload-dropzone:hover{border-color:var(--primary-color);background:var(--bg-secondary)}.upload-dropzone.upload-dropzone--active{box-shadow:0 0 0 2px rgba(15,23,42,.12)}.upload-icon{width:46px;height:46px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-secondary);font-size:24px;animation:b 2.4s ease-in-out infinite}@keyframes b{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.upload-text{display:flex;flex-direction:column;font-size:14px;color:var(--text-primary)}.upload-text strong{font-size:15px}.upload-text span{font-size:13px;color:var(--text-secondary)}.upload-subtext{margin-left:auto;font-size:12px;color:#94a3b8;white-space:nowrap}.upload-input{display:none}.upload-file-info{display:flex;justify-content:space-between;padding:6px 4px 0;font-size:13px;color:#64748b}.upload-file-info .file-name{max-width:80%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-file-info .file-size{font-variant-numeric:tabular-nums}.action-row{margin-top:18px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.btn.btn-primary.tool-start-button{border-radius:999px;border:none;padding:10px 20px;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;cursor:pointer;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:var(--text-light);box-shadow:0 12px 30px rgba(15,23,42,.35);transition:transform .12s ease,box-shadow .18s ease,filter .18s ease,opacity .2s ease}.btn.btn-primary.tool-start-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 34px rgba(15,23,42,.4);filter:brightness(1.03)}.btn.btn-primary.tool-start-button:active:not(:disabled){transform:translateY(0);box-shadow:0 8px 16px rgba(15,23,42,.4)}.btn.btn-primary.tool-start-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-spinner{width:15px;height:15px;border-radius:999px;border:2px solid hsla(0,0%,100%,.5);border-top-color:#fff;animation:c .9s linear infinite;display:none}.btn.btn-primary.tool-start-button.is-loading .btn-spinner{display:inline-block}.btn.btn-primary.tool-start-button.is-loading .btn-label{opacity:.85}@keyframes c{to{transform:rotate(1turn)}}.status-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:6px 10px;background:rgba(148,163,184,.12);font-size:12px;color:#64748b}.status-dot{width:8px;height:8px;border-radius:999px;background:#94a3b8}.status-pill.status--ready .status-dot{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.2);animation:d 1.9s ease-out infinite}.status-pill.status--error .status-dot{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.2)}@keyframes d{0%{transform:scale(1);opacity:1}60%{transform:scale(1.4);opacity:0}to{opacity:0}}.tool-meta-row{margin-top:16px;padding-top:12px;border-top:1px dashed rgba(148,163,184,.5);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tool-meta-block{display:flex;flex-direction:column;gap:2px}.tool-meta-label{font-size:11px;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.tool-meta-value{font-size:12px;color:#4b5563}.tool-sidecard{height:100%;background:#0f172a;color:#e5e7eb;border-radius:18px;padding:18px 18px 16px;box-shadow:0 20px 40px rgba(15,23,42,.7);border:1px solid rgba(51,65,85,.9);position:relative;overflow:hidden}.tool-sidecard:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at top,hsla(0,0%,100%,.05),transparent 55%);pointer-events:none}.tool-sidecard-title{position:relative;margin:0 0 10px;font-size:.95rem}.tool-steps{position:relative;list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:8px}.tool-steps li{display:flex;gap:8px;align-items:flex-start}.step-index{width:22px;height:22px;border-radius:999px;background:rgba(15,23,42,.9);border:1px solid rgba(148,163,184,.7);display:flex;align-items:center;justify-content:center;font-size:11px;color:#e5e7eb;flex-shrink:0}.step-body{display:flex;flex-direction:column;gap:1px}.step-title{font-size:.82rem;color:#e5e7eb}.step-desc{font-size:.74rem;color:#9ca3af}.tool-tip-card{position:relative;border-radius:14px;padding:9px 10px;background:rgba(15,23,42,.9);border:1px solid rgba(148,163,184,.7);font-size:.78rem}.tool-tip-title{font-size:.76rem;color:var(--primary-color);margin-bottom:2px}.tool-tip-text{margin:0;color:#d1d5db}@media (max-width:900px){.tool-layout{grid-template-columns:minmax(0,1fr)}.tool-sidecard{margin-top:10px}.tool-header-row{flex-direction:column;align-items:flex-start}.tool-meta-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.tool-meta-row{grid-template-columns:minmax(0,1fr)}}.process-modal-open{overflow:hidden}.process-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:1;padding:16px}.process-modal-backdrop.is-visible{display:flex;animation:e .18s ease-out}@keyframes e{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.process-modal-card{background:#fff;border-radius:18px;padding:18px 18px 16px;max-width:420px;width:100%;box-shadow:0 20px 50px rgba(15,23,42,.55);position:relative;border:1px solid rgba(148,163,184,.4)}.process-modal-close{position:absolute;top:10px;right:10px;border:none;background:transparent;cursor:pointer;font-size:16px;color:#94a3b8;padding:4px;border-radius:999px}.process-modal-close:hover{background:rgba(148,163,184,.12)}.process-modal-header{display:flex;gap:12px;align-items:center;margin-bottom:12px}.process-modal-icon{width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-secondary);font-size:20px}.process-modal-title{font-size:15px;margin:0 0 2px;color:#0f172a;font-weight:600}.process-modal-subtitle{font-size:13px;margin:0;color:#64748b}.process-modal-progress{margin-top:6px;margin-bottom:8px;width:100%;height:5px;border-radius:999px;background:#e5e7eb;overflow:hidden}.process-modal-progress-inner{height:100%;border-radius:inherit;width:0}.process-modal-progress-inner.is-processing{background:linear-gradient(90deg,var(--primary-color),var(--primary-dark));width:35%;animation:f 1.4s ease-in-out infinite}@keyframes f{0%{transform:translateX(-120%)}50%{transform:translateX(0)}to{transform:translateX(180%)}}.process-modal-progress-inner.is-success{background:#22c55e;width:100%;transition:width .35s ease-out}.process-modal-progress-inner.is-error{background:#ef4444;width:100%;transition:width .35s ease-out}.process-modal-steps{list-style:none;padding:6px 0 0;margin:0 0 10px;font-size:12px;color:#6b7280}.process-modal-steps li{display:flex;align-items:center;gap:6px;margin-bottom:3px}.process-modal-steps li:before{content:"";width:6px;height:6px;border-radius:999px;background:#d1d5db}.process-modal-footer{display:flex;justify-content:flex-end;margin-top:4px}.process-modal-secondary{border-radius:999px;border:1px solid var(--primary-color);background:var(--bg-primary);font-size:12px;padding:6px 12px;color:var(--text-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease}.process-modal-secondary:hover{background:var(--bg-secondary);border-color:var(--primary-dark);transform:translateY(-.5px)}.upload-dropzone--filled{border-style:solid;border-color:#22c55e;box-shadow:0 0 0 1px rgba(34,197,94,.25)}.upload-dropzone--filled:after{content:"✓";position:absolute;right:14px;top:12px;background:#22c55e;color:#fff;font-size:11px;width:18px;height:18px;border-radius:999px;display:flex;align-items:center;justify-content:center}.tool-start-button--highlight{animation:g .9s ease-out}@keyframes g{0%{transform:scale(.97);box-shadow:0 0 0 0 rgba(15,23,42,.25)}50%{transform:scale(1.02);box-shadow:0 0 0 8px rgba(15,23,42,0)}to{transform:scale(1);box-shadow:0 12px 30px rgba(15,23,42,.35)}}.tool-start-button--ready{animation:h 2s infinite;background:linear-gradient(135deg,var(--primary-color),#22c55e)!important;box-shadow:0 0 0 0 rgba(34,197,94,.7)}@keyframes h{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(34,197,94,.7)}70%{transform:scale(1.05);box-shadow:0 0 0 10px rgba(34,197,94,0)}to{transform:scale(1);box-shadow:0 0 0 0 rgba(34,197,94,0)}}