*,body{margin:0}#dropzone.dragover,#dropzone:hover{border-color:var(--primary);background:var(--primary-light)}#dropzone.dragover,#dropzone::before,#dropzone:hover{background:var(--primary-light)}body,li{display:flex}#dropzone,.handle{color:var(--text-secondary)}#dropzone strong,h1,li span{color:var(--text-primary)}#dropzone:hover,button,li:hover{box-shadow:var(--shadow-md)}button:disabled,li{box-shadow:var(--shadow-sm)}*{box-sizing:border-box;padding:0}:root{--primary:#6366f1;--primary-hover:#4f46e5;--primary-light:#e0e7ff;--bg:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--card-bg:rgba(255, 255, 255, 0.98);--text-primary:#1f2937;--text-secondary:#6b7280;--border:#e5e7eb;--border-hover:#d1d5db;--shadow-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg:0 20px 25px -5px rgba(0, 0, 0, 0.1),0 10px 10px -5px rgba(0, 0, 0, 0.04);--shadow-xl:0 25px 50px -12px rgba(0, 0, 0, 0.25)}body{background:var(--bg);padding:40px;justify-content:center;align-items:center;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{background:var(--card-bg);padding:32px;width:480px;border-radius:20px;box-shadow:var(--shadow-xl);backdrop-filter:blur(10px);animation:.4s ease-out fadeIn}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{margin:0 0 24px;font-size:28px;font-weight:700;letter-spacing:-.5px}#dropzone{border:2px dashed var(--border);border-radius:16px;padding:48px 24px;text-align:center;cursor:pointer;margin-bottom:20px;transition:.3s cubic-bezier(.4, 0, .2, 1);background:#fafafa;position:relative;overflow:hidden}#dropzone::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;transition:opacity .3s}#dropzone:hover{transform:translateY(-2px)}#dropzone:hover::before{opacity:.3}#dropzone>div{position:relative;z-index:1}#dropzone strong{display:block;font-size:16px;font-weight:600;margin-bottom:4px}#dropzone.dragover{transform:scale(1.02);box-shadow:var(--shadow-lg)}#dropzone.dragover::before{opacity:.5}ul{list-style:none;padding:0 4px 0 0;margin:0 0 20px;max-height:320px;overflow-y:auto}ul::-webkit-scrollbar{width:6px}ul::-webkit-scrollbar-track{background:0 0}ul::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}ul::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}li{align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--border);border-radius:12px;margin-bottom:8px;background:#fff;cursor:grab;transition:.2s}li:hover{border-color:var(--border-hover);transform:translateX(4px)}li:active{cursor:grabbing}li.dragging{opacity:.4;transform:scale(.98)}li.drag-over-top{border-top:3px solid var(--primary);margin-top:4px}li.drag-over-bottom{border-bottom:3px solid var(--primary);margin-bottom:12px}.handle{user-select:none;font-size:18px;opacity:.6;transition:opacity .2s}li:hover .handle{opacity:1}li span{flex:1;font-size:14px;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button{width:100%;padding:14px 24px;font-size:15px;font-weight:600;cursor:pointer;border:none;border-radius:12px;background:var(--primary);color:#fff;transition:.2s cubic-bezier(.4, 0, .2, 1);letter-spacing:.3px}button:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-md)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width:600px){button,li{border-radius:10px}body{padding:16px}.app{width:100%;max-width:100%;padding:24px;border-radius:16px}h1{font-size:24px;margin-bottom:20px}#dropzone strong,button{font-size:15px}#dropzone{padding:36px 20px;border-radius:12px}ul{max-height:250px}li{padding:10px 12px}li span{font-size:13px}button{padding:12px 20px}}@media (max-width:400px){body{padding:12px}.app{padding:20px;border-radius:12px}h1{font-size:22px}#dropzone{padding:32px 16px}ul{max-height:200px}}