/* Only the bottom-right transfer popup is an instrument. */
.upload-tray{position:fixed;right:28px;bottom:24px;z-index:30;width:320px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 36px);overflow:auto;scrollbar-width:thin;padding:0;background:none;border:0;box-shadow:none;color:#30474f;font-size:14px}
.transfer-heading{display:flex;align-items:center;gap:10px;min-height:44px;padding:3px 4px 3px 15px;margin:0 5px 5px;border:1px solid #d5dedb;background:#fdfefcf5;backdrop-filter:blur(8px);border-radius:28px;box-shadow:0 4px 18px #283c4910}.transfer-heading strong{font-size:14px;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transfer-heading button{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;font-size:23px;color:#47616c;border-radius:50%;background:#eaf0ee}.transfer-heading button:hover{background:#dce8e8}.transfer-queue{font-size:12px;color:#62767b}
.transfer-file{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;margin:0 12px 9px;padding:3px 10px;color:#304a56;background:#f7faf6ed;border-radius:14px;max-width:calc(100% - 24px)}
.transfer-dashboard{position:relative;width:320px;height:320px;max-width:100%;margin:0;isolation:isolate;filter:drop-shadow(0 10px 12px #243c4a30)}
.race-gauge{position:absolute;inset:0;display:block;border-radius:50%;background:radial-gradient(ellipse at 50% 0%,#273344 0%,#101b28 45%,#080e16 100%);color:white;overflow:hidden;border:1px solid #c4cece;box-shadow:inset 0 0 0 3px #c6d0ce,inset 0 0 0 5px #465a60}
.race-gauge>svg{display:block;width:100%;height:100%;fill:none;stroke-linecap:butt}.race-bezel{stroke:#e0e7e4;stroke-width:.5}.race-track{stroke:#617b82;stroke-width:1.5}.race-progress{stroke:#a8d9f3;stroke-width:3;stroke-dasharray:0 100;transition:stroke-dasharray .25s linear}.race-tick{stroke:#7d92a6;stroke-width:.8}.race-tick.major{stroke:#c0d3d7;stroke-width:1.5}.race-number{fill:#e2edf5;stroke:none;font:11px "Segoe UI",sans-serif;text-anchor:middle;dominant-baseline:middle;font-variant-numeric:tabular-nums}.race-needle{transform-origin:140px 140px;transform:rotate(-130deg);transition:transform .7s cubic-bezier(.2,.7,.3,1);filter:drop-shadow(0 0 2px #fc694480)}.race-needle path{fill:#ff663e;stroke:#ffa879;stroke-width:.6}.race-needle circle{fill:#ff663e;stroke:#162332;stroke-width:3}
.race-readout{position:absolute;top:32%;left:25%;width:50%;display:grid;justify-items:center;line-height:1.1;gap:4px;background:linear-gradient(90deg,transparent,#142031 18%,#142031 82%,transparent);border-radius:0;padding:5px 0}.race-readout strong{font:600 46px/1.05 "Segoe UI",sans-serif;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:#f6faf7}.race-readout>span{font-size:12px;letter-spacing:.1em;color:#d6e5f1}.race-scale{position:absolute;top:26%;left:0;width:100%;font:12px/1.2 "Segoe UI",sans-serif;color:#d5e5f2;text-align:center}
.transfer-numbers{position:absolute;top:57%;left:24%;right:24%;display:grid;justify-items:center;align-items:center;gap:3px;color:#edf5f4}.transfer-numbers strong{font:700 34px/1.2 "Segoe UI",sans-serif;font-variant-numeric:tabular-nums}.transfer-numbers>span{font-size:12px;color:#e1eaf2;font-variant-numeric:tabular-nums}.instrument-label,.progress{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.transfer-metrics{position:absolute;top:78%;left:12%;right:12%;display:grid;text-align:center;gap:2px;font-size:12px;line-height:1.35;color:#e1eaf2;font-variant-numeric:tabular-nums}
#uploadSpeed{display:none}
#pauseTransfer{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);min-height:34px;padding:5px 20px;border:1px solid #7d9b9f;background:#203747;color:#f1f8f5;font-size:14px;line-height:1.4;border-radius:22px}#pauseTransfer:hover{background:#486670}#pauseTransfer:disabled{opacity:.65}
.pending-transfer{margin:10px 4px 0;padding:16px;background:#fff;border:1px solid #dce4df;border-radius:18px;box-shadow:0 4px 15px #344c530e}.pending-transfer strong,.pending-transfer small{display:block;overflow-wrap:anywhere}.pending-transfer strong{font-size:14px;font-weight:550}.pending-transfer small{font-size:12px;color:#526e79;margin:7px 0 12px;line-height:1.8}.pending-transfer button{font-size:14px;min-height:40px;margin:0 5px 5px 0;padding:8px 10px}#pendingTransfers>p{font-size:14px;color:#48636e;background:#fff;border:1px solid #dae3de;border-radius:18px;padding:18px;margin:10px 5px}#transferCurrent:not([hidden])+#pendingTransfers>p{display:none}
.transfer-mini{position:fixed;bottom:26px;right:28px;z-index:29;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:116px;height:116px;padding:10px;background:#263f49;color:white;border:3px solid #bdcecb;box-shadow:0 8px 25px #142f4430;border-radius:50%;text-align:center;font-size:12px}.transfer-mini strong{font:500 24px/1.1 "Segoe UI",sans-serif;font-variant-numeric:tabular-nums}.transfer-mini small{font-size:12px;color:#c4d8dd}.transfer-mini>span:last-child{display:none}.transfer-mini:hover{background:#3a5964}
@media(max-width:800px){.upload-tray{right:16px;bottom:80px;width:300px;max-height:calc(100dvh - 100px)}.transfer-dashboard{width:300px;height:300px}.transfer-mini{right:18px;bottom:80px;width:106px;height:106px}.race-readout strong{font-size:40px}#pauseTransfer{bottom:14px}.transfer-metrics{font-size:12px}}
@media(max-width:480px){.upload-tray{right:12px;width:260px}.transfer-dashboard{width:260px;height:260px}.race-readout{top:30%}.race-readout strong{font-size:34px}.transfer-numbers{top:55%;left:24%;right:24%;gap:3px}.transfer-numbers strong{font-size:28px}.transfer-metrics{top:78%;font-size:12px}#pauseTransfer{bottom:7px;min-height:32px}}
@media(prefers-reduced-motion:reduce){.race-progress,.race-needle{transition:none!important}}
@media(forced-colors:active){.race-gauge{border:2px solid ButtonText;background:Canvas}.race-tick,.race-needle path{stroke:CanvasText}.race-number{fill:CanvasText}.race-readout{background:Canvas}.race-readout strong,.race-readout>span,.race-scale,.transfer-numbers,.transfer-metrics{color:CanvasText}.race-progress{stroke:Highlight}}
