/* V26 Upload Lab */
.upload-lab{position:relative;display:grid;grid-template-columns:minmax(330px,.85fr) 1.15fr;gap:14px;margin-bottom:48px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:30px;background:radial-gradient(circle at 22% 30%,rgba(210,255,0,.08),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018));box-shadow:0 30px 90px rgba(0,0,0,.25);overflow:hidden}.upload-lab:before{content:"";position:absolute;inset:-40%;pointer-events:none;background:conic-gradient(from 90deg,transparent,rgba(210,255,0,.08),transparent 18%);animation:uploadLabGlow 11s linear infinite}.upload-lab-drop,.upload-lab-queue{position:relative;z-index:1}.upload-lab-drop{min-height:310px;display:grid;place-items:center;align-content:center;gap:7px;padding:28px;border:1px dashed rgba(255,255,255,.22);border-radius:23px;background:rgba(5,8,13,.68);text-align:center;cursor:pointer;overflow:hidden;transition:.3s cubic-bezier(.2,.85,.2,1)}.upload-lab-drop:after{content:"";position:absolute;left:-20%;right:-20%;top:-20%;height:42%;background:linear-gradient(180deg,transparent,rgba(210,255,0,.09),transparent);transform:translateY(-120%);animation:uploadScan 4.8s ease-in-out infinite}.upload-lab.dragging .upload-lab-drop{transform:scale(1.015);border-color:#d2ff00;background:rgba(210,255,0,.07);box-shadow:inset 0 0 60px rgba(210,255,0,.07),0 0 45px rgba(210,255,0,.12)}.upload-lab-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-lab-drop strong{font-size:25px;letter-spacing:-.04em}.upload-lab-drop p{margin:0;color:#9ba6b8}.upload-lab-drop small{color:#667286}.upload-orbit{position:relative;width:104px;height:104px;display:grid;place-items:center;margin-bottom:13px}.upload-orbit i{position:absolute;inset:0;border:1px solid rgba(210,255,0,.28);border-radius:50%;animation:uploadOrbit 5s linear infinite}.upload-orbit i:nth-child(2){inset:13px;border-color:rgba(116,76,255,.38);animation-direction:reverse;animation-duration:3.8s}.upload-orbit i:nth-child(3){inset:27px;border-color:rgba(255,255,255,.18);animation-duration:2.6s}.upload-orbit i:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#d2ff00;top:-4px;left:50%;box-shadow:0 0 18px rgba(210,255,0,.75)}.upload-orbit b{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:#d2ff00;color:#111;font-size:27px;box-shadow:0 12px 30px rgba(210,255,0,.2)}.upload-lab-queue{display:grid;align-content:start;gap:9px;max-height:390px;overflow:auto;min-height:310px;padding:3px}.upload-lab-queue:empty:before{content:"Je uploadwachtrij verschijnt hier";min-height:300px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.07);border-radius:23px;color:#667286;background:rgba(7,10,16,.42)}.upload-job{--upload-progress:0%;position:relative;display:grid;grid-template-columns:74px minmax(0,1fr) 48px;gap:13px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(7,10,16,.84);animation:uploadJobIn .35s cubic-bezier(.2,.85,.2,1) both;overflow:hidden}.upload-job-preview{position:relative;width:74px;height:64px;border-radius:13px;overflow:hidden;background:#10151e}.upload-job-preview img{width:100%;height:100%;object-fit:cover}.upload-job-scan{position:absolute;inset:0;background:linear-gradient(180deg,transparent 10%,rgba(210,255,0,.32),transparent 52%);transform:translateY(-100%);animation:uploadPreviewScan 1.5s ease-in-out infinite}.upload-job-copy{min-width:0}.upload-job-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-job-copy small{display:block;margin-top:3px;color:#8792a5}.upload-job-progress{height:5px;margin:9px 0 7px;border-radius:99px;background:#ffffff0b;overflow:hidden}.upload-job-progress i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#754cff,#d2ff00);box-shadow:0 0 15px rgba(210,255,0,.35);transition:width .18s linear}.upload-job-steps{display:flex;gap:9px}.upload-job-steps span{font-size:8px;color:#566175;text-transform:uppercase;letter-spacing:.06em}.upload-job-steps span.active{color:#d2ff00}.upload-job>b{font-size:12px;color:#b5bfd0;text-align:right}.upload-job.complete{border-color:rgba(210,255,0,.28)}.upload-job.complete .upload-job-scan{animation:none;opacity:0}.upload-job.complete>b{color:#d2ff00}.upload-job.complete:after{content:"✓";position:absolute;right:16px;width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#d2ff00;color:#111;transform:scale(0);animation:uploadDone .45s .12s cubic-bezier(.2,1.5,.4,1) forwards}.upload-job.failed{border-color:rgba(255,77,103,.35)}.upload-job.failed>b{color:#ff6b82}.upload-job.failed .upload-job-progress i{background:#ff4d67}.upload-job.settled>b{opacity:0}.upload-lab-hero em{font-style:normal;color:#d2ff00}.media-hero-stats{display:grid;gap:9px;min-width:220px}.media-hero-stats>span{display:flex;justify-content:space-between;gap:18px;color:#8792a5;font-size:11px}.media-hero-stats strong{color:#fff;font-size:18px}.media-library-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 18px}.media-library-head h2{font-size:45px;letter-spacing:-.055em;margin:8px 0 0}.media-library-head p{max-width:420px;color:#8792a5;line-height:1.6}.media-card-visual{position:relative}.media-card-visual span{position:absolute;right:9px;top:9px;padding:6px 8px;border-radius:99px;background:rgba(5,8,13,.76);backdrop-filter:blur(12px);font-size:8px;font-weight:900;text-transform:uppercase;color:#d2ff00}.media-card.just-added{animation:mediaAdded .65s cubic-bezier(.2,1.1,.2,1) both}.media-card.removing{opacity:0;transform:scale(.92);transition:.25s}
@keyframes uploadOrbit{to{transform:rotate(360deg)}}@keyframes uploadScan{0%,35%{transform:translateY(-120%)}70%,100%{transform:translateY(420%)}}@keyframes uploadPreviewScan{0%{transform:translateY(-100%)}100%{transform:translateY(130%)}}@keyframes uploadLabGlow{to{transform:rotate(360deg)}}@keyframes uploadJobIn{from{opacity:0;transform:translateY(10px) scale(.98)}}@keyframes uploadDone{to{transform:scale(1)}}@keyframes mediaAdded{from{opacity:0;transform:translateY(-18px) scale(.92)}}
@media(max-width:850px){.upload-lab{grid-template-columns:1fr}.upload-lab-drop{min-height:260px}.upload-lab-queue{min-height:0;max-height:360px}.upload-lab-queue:empty:before{min-height:120px}.media-hero-stats{margin-top:22px}.media-library-head{display:block}.media-library-head p{margin-top:12px}}@media(max-width:550px){.upload-job{grid-template-columns:58px minmax(0,1fr) 36px}.upload-job-preview{width:58px;height:55px}.upload-job-steps{display:none}.upload-lab{padding:8px;border-radius:23px}.upload-lab-drop{padding:21px}.upload-lab-drop strong{font-size:22px}}


/* V40 smart upload flair */
.upload-job{--upload-accent:#d2ff00}.upload-job-preview{transition:.3s cubic-bezier(.2,.8,.2,1)}.upload-job.complete .upload-job-preview{box-shadow:0 0 0 1px color-mix(in srgb,var(--upload-accent) 45%,transparent),0 18px 50px color-mix(in srgb,var(--upload-accent) 18%,transparent)}.upload-job-progress i{background:linear-gradient(90deg,var(--upload-accent),#fff)}.upload-job.complete:after{content:"KLEUR GEDETECTEERD";position:absolute;right:13px;bottom:10px;color:var(--upload-accent);font-size:7px;font-weight:1000;letter-spacing:.1em}
