.sc-drop{text-align:center;border:2.5px dashed var(--color-border-strong);background:radial-gradient(120% 120% at 80% 0%, var(--color-brand-100) 0%, var(--color-surface-raised) 55%, var(--color-surface) 100%);cursor:pointer;width:100%;min-height:280px;color:var(--color-brand-500);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;padding:26px;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.sc-tool--dialog .sc-drop{min-height:200px;padding:20px}.sc-drop:hover,.sc-drop:focus-visible{border-color:var(--color-brand-500);outline:none;box-shadow:0 6px 24px #e8692a1f}.sc-drop--drag{border-color:var(--color-brand-500);transform:scale(1.015);box-shadow:0 10px 32px #e8692a2e}.sc-drop--busy{cursor:progress}:root:not([data-theme=dark]) .sc-drop{background:radial-gradient(120% 120% at 80% 0,#fbe9df 0%,#f8f8fa 55%,#fff 100%);border-color:#d6d8e2}:root:not([data-theme=dark]) .sc-drop:hover,:root:not([data-theme=dark]) .sc-drop:focus-visible,:root:not([data-theme=dark]) .sc-drop--drag{border-color:var(--color-brand-500)}.sc-ap{color:var(--color-brand-500);filter:drop-shadow(0 3px 8px #e8692a2e)}.sc-ap svg{display:block}.sc-ap-blade{stroke:var(--color-surface)}.sc-ap-iris--ring{fill:var(--color-surface)}.sc-ap-blades{transform-origin:60px 60px;animation:14s linear infinite sc-spin}.sc-ap--drag .sc-ap-blades{animation-duration:4s}.sc-ap--busy .sc-ap-blades{animation-duration:1.6s}.sc-ap-iris{transform-origin:60px 60px;transition:transform .4s}.sc-ap--busy .sc-ap-iris{animation:1.2s ease-in-out infinite sc-iris}.sc-ap--drag .sc-ap-iris{transform:scale(.6)}@keyframes sc-spin{to{transform:rotate(360deg)}}@keyframes sc-iris{0%,to{transform:scale(1)}50%{transform:scale(.45)}}.sc-scan{background:linear-gradient(90deg, transparent, var(--color-brand-500), transparent);border-radius:2px;height:2px;animation:1.4s ease-in-out infinite sc-scan;position:absolute;left:8%;right:8%}@keyframes sc-scan{0%{top:18%}50%{top:80%}to{top:18%}}.sc-pulse{animation:1.2s ease-in-out infinite sc-pulse}@keyframes sc-pulse{0%,to{opacity:1}50%{opacity:.55}}.sc-result{animation:.35s cubic-bezier(.16,1,.3,1) sc-in}@keyframes sc-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}:root:not([data-theme=dark]) .sc-result--ok{background-color:#f0fdf4;border-color:#bbf7d0}@media (prefers-reduced-motion:reduce){.sc-ap-blades,.sc-ap-iris,.sc-scan,.sc-pulse,.sc-result{animation:none!important}}
