/* 🚀 fi.transfer */
:root{--n:#0F2259;--p:#D6246E;--p2:#F0508F;--ink:#0F172A;--mut:#64748B}
*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:ui-rounded,"SF Pro Rounded",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#0B1846;overflow-x:hidden;min-height:100vh}
.fit-bg{position:fixed;inset:0;z-index:0}.fit-bgi{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.4s ease,transform 12s ease;transform:scale(1.04)}.fit-bgi.on{opacity:1;transform:scale(1)}
.fit-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:18px 26px}.fit-top a{text-decoration:none}
.fit-home{color:#fff;font-weight:700;font-size:14px;background:rgba(255,255,255,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:8px 14px;border-radius:30px}
body.lightbg .fit-home{color:var(--n);background:rgba(255,255,255,.7)}body.lightbg .fit-top .fit-logo b{color:var(--n)!important}
.fit-logo{display:inline-flex;align-items:center;gap:9px;filter:drop-shadow(0 4px 14px rgba(0,0,0,.18))}.fit-logo b{font-size:24px;font-weight:800;letter-spacing:-.5px}.fit-logo i{font-style:normal;color:var(--p2)}
.fit-card{position:relative;z-index:2;width:min(400px,calc(100vw - 32px));margin:3vh 0 40px 6vw;background:#fff;border-radius:24px;box-shadow:0 30px 80px -20px rgba(0,0,0,.45),0 0 0 1px rgba(15,34,89,.04);overflow:hidden;animation:fitIn .6s cubic-bezier(.2,.9,.3,1.2)}
@keyframes fitIn{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.fit-pad,.fit-step{padding:24px}
.fit-card h1{font-size:30px;line-height:1.1;margin:0 0 10px;color:var(--n);letter-spacing:-.6px}.fit-card h1 em{font-style:normal;background:linear-gradient(90deg,var(--p),#8B5CF6);-webkit-background-clip:text;background-clip:text;color:transparent}.fit-card h1.sm{font-size:24px}
.fit-card h2{margin:6px 0;text-align:center;color:var(--n);font-size:24px}
.fit-lead{color:#475569;margin:0 0 14px;line-height:1.5;text-align:inherit}.fit-note{color:#475569;background:#F8FAFC;border-radius:14px;padding:12px 14px;line-height:1.5}.fit-note.small{background:none;padding:6px 0 0;font-size:12.5px;color:var(--mut);text-align:center}
.fit-btn{display:block;text-align:center;text-decoration:none;font-weight:800;border-radius:30px;padding:14px 18px;margin-top:10px;background:linear-gradient(120deg,var(--p),var(--p2));color:#fff;border:0;cursor:pointer;font-size:15px}.fit-btn.ghost{background:#F1F5F9;color:var(--n)}.fit-btn.wa{background:#22C55E}
.fit-add{width:100%;display:flex;align-items:center;gap:14px;border:2px dashed #E2E8F0;background:#fff;border-radius:18px;padding:16px;cursor:pointer;text-align:left;font:inherit;transition:.15s}.fit-add:hover,.fit-card.drag .fit-add{border-color:var(--p);background:#FFF1F6}
.fit-add span{flex:none;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px -6px rgba(214,36,110,.6)}.fit-add b{display:block;font-size:17px;color:var(--n)}.fit-add small{color:var(--mut)}
.fit-files{max-height:230px;overflow:auto;margin:10px 0 0}.fit-fi{display:flex;align-items:center;gap:10px;padding:9px 4px;border-bottom:1px solid #F1F5F9;text-decoration:none;color:inherit}.fit-fi i{font-style:normal;font-size:22px;width:30px;text-align:center}.fit-fi span{flex:1;min-width:0}.fit-fi b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--n)}.fit-fi small{color:var(--mut);font-size:12px}
.fit-fi button{border:0;background:#F1F5F9;border-radius:50%;width:28px;height:28px;cursor:pointer;color:#64748B}.fit-fi em{font-style:normal;width:34px;height:34px;border-radius:50%;background:#FFF1F6;color:var(--p);display:flex;align-items:center;justify-content:center;font-weight:800}
.fit-files.dl{max-height:360px}.fit-files.dl .fit-fi:hover{background:#FAFAFF}
.fit-sum{font-size:13px;color:var(--mut);margin:8px 2px 4px;display:flex;justify-content:space-between}.fit-sum .bad{color:#B91C1C;font-weight:700}
.fit-f{display:block;margin-top:10px}.fit-f span{display:block;font-size:12.5px;font-weight:700;color:#475569;margin-bottom:4px}.fit-f small{font-weight:400;color:var(--mut)}.fit-f input,.fit-f select,.fit-f textarea{width:100%;border:0;border-bottom:2px solid #E2E8F0;padding:9px 2px;font:inherit;outline:none;background:transparent;transition:.15s}.fit-f input:focus,.fit-f textarea:focus,.fit-f select:focus{border-color:var(--p)}
.fit-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fit-go{display:block;width:100%;margin-top:18px;border:0;border-radius:30px;padding:16px;font:inherit;font-weight:800;font-size:16px;color:#fff;background:linear-gradient(120deg,var(--n),#3A1E7A 45%,var(--p));cursor:pointer;text-align:center;text-decoration:none;box-shadow:0 14px 30px -12px rgba(214,36,110,.7);transition:.15s}.fit-go:hover{transform:translateY(-1px)}.fit-go:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.fit-who{text-align:center;font-size:12.5px;color:var(--mut);margin:10px 0 0}
.fit-ring{position:relative;width:180px;height:180px;margin:10px auto}.fit-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.fit-ring circle{fill:none;stroke-width:10}.fit-ring .bg{stroke:#F1F5F9}.fit-ring .fg{stroke:url(#x);stroke:var(--p);stroke-linecap:round;stroke-dasharray:327;stroke-dashoffset:327;transition:stroke-dashoffset .4s}.fit-ring b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:38px;color:var(--n)}
.fit-upt{text-align:center;font-weight:800;color:var(--n);margin:4px 0}.fit-ups{text-align:center;color:var(--mut);font-size:13px;margin:0}
.fit-ok{width:86px;height:86px;border-radius:50%;margin:6px auto 8px;background:linear-gradient(135deg,#22C55E,#16A34A);color:#fff;font-size:44px;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -10px rgba(22,163,74,.6);animation:pop .5s cubic-bezier(.2,.9,.3,1.6)}.fit-ok.off{background:#E2E8F0;color:#475569;box-shadow:none}.fit-ok.lock{background:linear-gradient(135deg,var(--n),var(--p))}
@keyframes pop{from{transform:scale(.4)}to{transform:none}}
[data-s=done] .fit-lead{text-align:center}
.fit-link{display:flex;gap:6px;background:#F1F5F9;border-radius:14px;padding:6px}.fit-link input{flex:1;border:0;background:transparent;font:inherit;font-weight:700;color:var(--n);padding:8px;min-width:0}.fit-link button{border:0;background:var(--n);color:#fff;border-radius:10px;padding:8px 14px;font-weight:800;cursor:pointer}
.fit-share{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fit-share .fit-btn{font-size:14px;padding:12px}
.fit-again{display:block;margin:14px auto 0;background:none;border:0;color:var(--p);font-weight:800;cursor:pointer;font:inherit}
.fit-mine{border-top:1px solid #F1F5F9;padding:12px 24px 16px}.fit-mine summary{cursor:pointer;font-weight:800;color:var(--n)}.fit-mi{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #F8FAFC;font-size:13px}.fit-mi span{flex:1;min-width:0}.fit-mi b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--n)}.fit-mi small{color:var(--mut)}.fit-mi button{border:0;background:#F1F5F9;border-radius:8px;padding:6px 8px;cursor:pointer}
.fit-from{margin:0 0 4px;color:var(--p);font-weight:700}.fit-msg{background:#F8FAFC;border-radius:14px;padding:12px;color:#334155;line-height:1.5}.fit-meta{color:var(--mut);font-size:13px}.fit-meta .warn{color:#B91C1C}.fit-err{color:#B91C1C;font-weight:700}
.fit-cap{position:fixed;right:22px;bottom:22px;z-index:2;max-width:340px;background:rgba(15,23,42,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;text-decoration:none;padding:12px 16px;border-radius:16px;font-weight:700;line-height:1.35;box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}.fit-cap small{display:block;font-weight:400;opacity:.8;margin-top:2px}
.fit-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--n);color:#fff;padding:12px 18px;border-radius:14px;z-index:9;font-weight:700}
@media (max-width:640px){.fit-top{padding:14px 16px}.fit-logo b{font-size:20px}.fit-card{margin:8px auto 90px}.fit-pad,.fit-step{padding:20px}.fit-card h1{font-size:26px}.fit-cap{left:16px;right:16px;bottom:16px;max-width:none}}
