:root{--bg: #0a1224;--bg2: #0e1830;--card: #151d30;--card2: #1b2540;--line: #26334f;--text: #e8eef9;--muted: #8a9ab8;--neon: #19d3ff;--neon2: #3b82f6;--green: #2ee59d;--yellow: #ffc83d;--red: #ff5d73;--radius: 14px;--nav-h: 62px}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;-webkit-tap-highlight-color:transparent}body{min-height:100dvh;background:radial-gradient(1200px 600px at 80% -10%,#12306044,transparent),var(--bg)}#splash{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;background:var(--bg);z-index:99;transition:opacity .3s}#splash.hide{opacity:0;pointer-events:none}.splash-logo{width:72px;height:72px;border-radius:18px;border:3px solid var(--neon);box-shadow:0 0 28px #19d3ff66;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 6px #19d3ff33;transform:scale(.96)}}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--neon)}h1{font-size:1.35rem;margin:0 0 4px}h2{font-size:1.05rem;margin:0 0 10px}h3{font-size:.95rem;margin:0 0 6px}.muted{color:var(--muted)}.small{font-size:.82rem}.mono{font-family:ui-monospace,Consolas,monospace}.app{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100dvh}.side{background:linear-gradient(180deg,#0c1630,#0a1224);border-right:1px solid var(--line);padding:18px 12px;position:sticky;top:0;height:100dvh;overflow-y:auto}.brand{display:flex;gap:10px;align-items:center;padding:4px 8px 18px;font-weight:700;letter-spacing:.2px}.brand i{width:28px;height:28px;border-radius:8px;border:2px solid var(--neon);box-shadow:0 0 12px #19d3ff55;display:inline-block}.nav-item{display:flex;gap:10px;align-items:center;width:100%;padding:10px 12px;margin-bottom:2px;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;text-align:left;transition:background .15s,color .15s}.nav-item:hover{background:#ffffff0d;color:var(--text)}.nav-item.active{background:linear-gradient(90deg,#19d3ff22,transparent);color:var(--neon);box-shadow:inset 2px 0 0 var(--neon)}.nav-item svg{width:19px;height:19px;flex:none}.main{padding:20px 24px 40px;max-width:1280px;width:100%;min-width:0}.topbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px}.bottomnav{display:none}.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{min-width:0;background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:var(--radius);padding:16px;animation:fade .25s ease}@keyframes fade{0%{opacity:0;transform:translateY(4px)}}.kpi .label{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.6px}.kpi .value{font-size:1.9rem;font-weight:700;margin:4px 0;font-variant-numeric:tabular-nums}.kpi .sub{color:var(--muted);font-size:.82rem}.bar{height:8px;border-radius:6px;background:#ffffff12;overflow:hidden;margin-top:8px}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--neon2),var(--neon));transition:width .5s}.bar.warn>i{background:linear-gradient(90deg,#f59e0b,var(--yellow))}.bar.bad>i{background:linear-gradient(90deg,#e11d48,var(--red))}.btn{background:linear-gradient(180deg,#1f6fd8,#1856b0);border:1px solid #3b82f6aa;padding:9px 16px;border-radius:10px;cursor:pointer;font-weight:600;transition:filter .15s,transform .05s}.btn:hover{filter:brightness(1.12)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;filter:none}.btn.ghost{background:transparent;border-color:var(--line);color:var(--text)}.btn.neon{background:linear-gradient(180deg,#14b8dc,#0e8fb0);border-color:#19d3ff;color:#021018}.btn.danger{background:linear-gradient(180deg,#d62d4a,#a8203a);border-color:#ff5d7388}.btn.sm{padding:5px 10px;font-size:.85rem;border-radius:8px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}input[type=text],input[type=password],input[type=number],input[type=search],select,textarea{background:#0a1224;border:1px solid var(--line);border-radius:10px;padding:9px 12px;outline:none;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--neon);box-shadow:0 0 0 3px #19d3ff22}label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:4px}.field{margin-bottom:12px}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--line)}.chip.GREEN,.chip.ok,.chip.live{color:var(--green);border-color:#2ee59d55;background:#2ee59d14}.chip.YELLOW,.chip.warn,.chip.stale{color:var(--yellow);border-color:#ffc83d55;background:#ffc83d14}.chip.RED,.chip.bad,.chip.offline{color:var(--red);border-color:#ff5d7355;background:#ff5d7314}.chip.info{color:var(--neon);border-color:#19d3ff55;background:#19d3ff12}.dot{width:9px;height:9px;border-radius:50%;background:var(--muted);display:inline-block}.dot.live{background:var(--green);box-shadow:0 0 8px var(--green);animation:blink 1.6s infinite}.dot.offline{background:var(--red)}.dot.stale{background:var(--yellow)}@keyframes blink{50%{opacity:.35}}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px}th,td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}.tablewrap{overflow-x:auto}.step .chip{align-self:flex-start;white-space:nowrap;flex:none}.step{display:flex;gap:10px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:.9rem}.alert{padding:12px 14px;border-radius:10px;border:1px solid var(--line);margin:10px 0;font-size:.9rem}.alert.err{border-color:#ff5d7366;background:#ff5d7314}.alert.warn{border-color:#ffc83d66;background:#ffc83d12}.alert.okk{border-color:#2ee59d66;background:#2ee59d12}.alert.info{border-color:#19d3ff55;background:#19d3ff10}pre.term{background:#050a15;border:1px solid var(--line);border-radius:10px;padding:12px;overflow:auto;max-height:420px;font-size:.82rem;white-space:pre-wrap;word-break:break-word}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000a;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:var(--card);border:1px solid var(--line);border-radius:16px;max-width:720px;width:100%;max-height:90dvh;overflow-y:auto;padding:20px}.rec{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:10px;background:#0f1830}.rec.GREEN{border-left:4px solid var(--green)}.rec.YELLOW{border-left:4px solid var(--yellow)}.rec.RED{border-left:4px solid var(--red)}.rec dl{display:grid;grid-template-columns:120px 1fr;gap:4px 12px;margin:10px 0 0;font-size:.86rem}.rec dt{color:var(--muted)}.rec dd{margin:0}svg.spark{width:100%;height:54px;display:block}.center{min-height:100dvh;display:grid;place-items:center;padding:16px}.login{width:100%;max-width:400px}@media (max-width: 899px){.app{grid-template-columns:minmax(0,1fr)}.side{display:none}.main{padding:14px 14px calc(var(--nav-h) + 28px)}.g2,.g3,.g4{grid-template-columns:1fr 1fr}.bottomnav{display:flex;position:fixed;left:0;right:0;bottom:0;height:var(--nav-h);padding-bottom:env(safe-area-inset-bottom);background:#0c1630f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);z-index:20}.bottomnav button{flex:1;background:none;border:0;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.68rem;cursor:pointer}.bottomnav button.active{color:var(--neon)}.bottomnav svg{width:22px;height:22px}.kpi .value{font-size:1.5rem}.rec dl{grid-template-columns:1fr}.rec dt{margin-top:6px}}@media (max-width: 520px){.g2,.g3,.g4{grid-template-columns:1fr}.g4.keep2{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.dash-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));align-items:start}.dash-grid>.wide{grid-column:1 / -1}.dw{padding:14px 16px}.dw.off{opacity:.55;border-style:dashed}.dw-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:10px}.dw-head h2{margin:0;font-size:1rem}.dw-tools{display:inline-flex;gap:6px;flex-wrap:wrap}.dw-health{display:flex;gap:16px;align-items:center}.dw-why{margin:8px 0 0;padding-left:18px;font-size:.85rem;color:var(--muted)}.dw-row{display:flex;gap:10px;align-items:center;min-width:0;padding:4px 0}.dw-main{flex:1;min-width:0}.dw-main .app-name,.dw-sub{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dw-right{display:inline-flex;align-items:center;gap:8px;flex:none}.dw-app{margin-bottom:8px}.bar.thin{height:4px;margin-top:2px}.dw-quickgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.dw-quick{display:flex;align-items:center;gap:8px;justify-content:flex-start;text-align:left}.dw-qi{width:22px;text-align:center;flex:none}.dw-pick{all:unset;display:block;width:100%;box-sizing:border-box;cursor:pointer;border-radius:10px;padding:2px 8px}.dw-pick:hover,.dw-pick:focus-visible{background:#19d3ff14}.dw-multi{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.dw-dev{border:1px solid var(--line);border-radius:12px;padding:12px;background:#0e1830}.dw-dev.cur{border-color:var(--neon);box-shadow:0 0 0 1px #19d3ff33}.dw-mini{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;font-size:.88rem;color:var(--muted)}.dw-mini b{color:var(--text)}.dw-tl{list-style:none;margin:0;padding:0 0 0 4px;max-height:420px;overflow:auto}.dw-tl li{display:flex;gap:12px;padding:7px 0;position:relative}.dw-tl li:before{content:"";position:absolute;left:5px;top:22px;bottom:-7px;width:2px;background:var(--line)}.dw-tl li:last-child:before{display:none}.dw-tl i{width:12px;height:12px;border-radius:50%;background:var(--neon);flex:none;margin-top:4px;z-index:1}.dw-tl li.ok i{background:var(--green)}.dw-tl li.bad i{background:var(--red)}.dw-tl li.warn i{background:var(--yellow)}@media (max-width: 520px){.dw-health{flex-direction:column;align-items:flex-start}.dw-quickgrid{grid-template-columns:1fr 1fr}}:root{--ease: cubic-bezier(.22, .9, .3, 1);--spring: cubic-bezier(.34, 1.56, .64, 1)}body:before,body:after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(90px);opacity:.5}body:before{width:520px;height:520px;left:-140px;top:20vh;background:#1d4fd855;animation:drift1 28s ease-in-out infinite alternate}body:after{width:460px;height:460px;right:-120px;top:-80px;background:#19d3ff33;animation:drift2 34s ease-in-out infinite alternate}@keyframes drift1{to{transform:translate(120px,-80px) scale(1.15)}}@keyframes drift2{to{transform:translate(-140px,120px) scale(1.2)}}.topbar-progress{position:fixed;z-index:200;left:0;right:0;top:0;height:3px;pointer-events:none;opacity:0;transition:opacity .25s}.topbar-progress.on{opacity:1}.topbar-progress i{display:block;height:100%;width:40%;background:linear-gradient(90deg,transparent,var(--neon),#8b5cf6,transparent);animation:sweep 1.1s var(--ease) infinite;box-shadow:0 0 12px var(--neon)}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(260%)}}.page{animation:pageIn .5s var(--ease) backwards}@keyframes pageIn{0%{opacity:0;transform:translateY(14px) scale(.995);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}.stagger>*,.grid>.card,.grid>.rec{animation:rise .55s var(--ease) backwards}.stagger>*:nth-child(1),.grid>*:nth-child(1){animation-delay:.02s}.stagger>*:nth-child(2),.grid>*:nth-child(2){animation-delay:.08s}.stagger>*:nth-child(3),.grid>*:nth-child(3){animation-delay:.14s}.stagger>*:nth-child(4),.grid>*:nth-child(4){animation-delay:.2s}.stagger>*:nth-child(5){animation-delay:.26s}.stagger>*:nth-child(6){animation-delay:.32s}.stagger>*:nth-child(n+7){animation-delay:.38s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.enter{animation:rise .45s var(--ease) both;animation-delay:calc(var(--i, 0) * 45ms)}.slide-in{animation:slideIn .5s var(--ease) both;animation-delay:calc(var(--i, 0) * 70ms)}@keyframes slideIn{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:none}}.pop{animation:pop .5s var(--spring) both}@keyframes pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}.card{transition:transform .3s var(--ease),box-shadow .3s,border-color .3s;position:relative}.card:hover{transform:translateY(-2px);border-color:#3a5a9a;box-shadow:0 10px 30px -12px #19d3ff40,0 0 0 1px #19d3ff18}.kpi .value{text-shadow:0 0 24px #19d3ff22}.rec{transition:transform .25s var(--ease),border-color .25s,background .25s,box-shadow .25s}.rec:hover{transform:translate(3px);background:#122042;box-shadow:0 6px 22px -14px #19d3ff66}.btn,.nav-item,.orb-btn{position:relative;overflow:hidden}.btn{transition:transform .2s var(--spring),filter .2s,box-shadow .25s,background .2s}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px -8px #3b82f688}.btn.neon:hover:not(:disabled){box-shadow:0 8px 24px -6px #19d3ffaa}.btn.danger:hover:not(:disabled){box-shadow:0 8px 20px -8px #ff5d7388}.btn:active:not(:disabled){transform:translateY(0) scale(.96)}.ripple{position:absolute;border-radius:50%;background:#fff5;transform:scale(0);animation:ripple .65s var(--ease) forwards;pointer-events:none}@keyframes ripple{to{transform:scale(1);opacity:0}}.btn.loading:after{content:"";width:14px;height:14px;margin-left:8px;border-radius:50%;border:2px solid #fff6;border-top-color:#fff;display:inline-block;vertical-align:-2px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.nav-item{transition:background .2s,color .2s,padding-left .25s var(--ease),box-shadow .25s}.nav-item:hover{padding-left:16px}.nav-item svg{transition:transform .35s var(--spring)}.nav-item:hover svg,.nav-item.active svg{transform:scale(1.18) rotate(-4deg)}.nav-item.active{animation:navPulse 2.8s ease-in-out infinite}@keyframes navPulse{50%{box-shadow:inset 2px 0 0 var(--neon),0 0 22px -8px #19d3ff77}}.brand i{animation:brandGlow 3.5s ease-in-out infinite}@keyframes brandGlow{50%{box-shadow:0 0 22px #19d3ffaa;transform:rotate(8deg)}}.bottomnav button svg{transition:transform .3s var(--spring)}.bottomnav button.active svg{transform:translateY(-3px) scale(1.15)}.bar>i{position:relative;overflow:hidden;transition:width .9s var(--ease)}.bar>i:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,#fff5,transparent);transform:translate(-100%);animation:shimmer 2.4s infinite}@keyframes shimmer{to{transform:translate(100%)}}.chip{transition:transform .2s var(--spring),box-shadow .2s}.chip:hover{transform:scale(1.06)}.dot.live{position:relative}.dot.live:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid var(--green);animation:ring 1.8s ease-out infinite}@keyframes ring{0%{transform:scale(.6);opacity:.9}to{transform:scale(1.8);opacity:0}}.opacity-fade{transition:opacity .4s}svg.spark path.line{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.1s var(--ease) forwards}@keyframes draw{to{stroke-dashoffset:0}}svg.spark path.area{animation:fadeIn .9s .3s both}@keyframes fadeIn{0%{opacity:0}}tbody tr{transition:background .2s}tbody tr:hover{background:#19d3ff0d}tr.enter-row{animation:rise .4s var(--ease) both;animation-delay:calc(var(--i, 0) * 25ms)}tr.flash{animation:flashRow 1.4s ease-out}@keyframes flashRow{0%{background:#19d3ff33}}.overlay{animation:fadeIn .25s both;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{animation:modalIn .45s var(--spring) both}@keyframes modalIn{0%{opacity:0;transform:translateY(30px) scale(.94)}to{opacity:1;transform:none}}.toasts{position:fixed;z-index:300;right:18px;bottom:18px;display:flex;flex-direction:column;gap:10px;max-width:min(380px,calc(100vw - 36px))}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#131c33f2;border:1px solid var(--line);box-shadow:0 14px 36px -12px #000c;animation:toastIn .5s var(--spring) both;font-size:.9rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toast.leaving{animation:toastOut .45s var(--ease) forwards}.toast i{width:8px;align-self:stretch;border-radius:4px;background:var(--neon);flex:none}.toast.ok i{background:var(--green)}.toast.err i{background:var(--red)}.toast.warn i{background:var(--yellow)}@keyframes toastIn{0%{opacity:0;transform:translate(60px) scale(.9)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translate(60px) scale(.9)}}@media (max-width: 899px){.toasts{bottom:calc(var(--nav-h) + 14px);left:14px;right:14px;max-width:none}}.skeleton{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1a,#ffffff0a 75%);background-size:200% 100%;animation:skel 1.4s linear infinite}@keyframes skel{to{background-position:-200% 0}}.orb-wrap{display:grid;place-items:center;padding:10px 0 4px}.orb-btn{--s: 220px;width:var(--s);height:var(--s);border-radius:50%;border:0;padding:0;background:transparent;cursor:pointer;position:relative;display:grid;place-items:center;isolation:isolate;transition:transform .4s var(--spring)}.orb-btn:hover:not(:disabled){transform:scale(1.05)}.orb-btn:active:not(:disabled){transform:scale(.97)}.orb-btn:disabled{cursor:progress}.orb-btn:before{content:"";position:absolute;top:-22px;right:-22px;bottom:-22px;left:-22px;border-radius:50%;background:radial-gradient(circle,#6a7bff55 0%,transparent 68%);z-index:-1;animation:breathe 3.4s ease-in-out infinite}@keyframes breathe{50%{transform:scale(1.12);opacity:.65}}.orb-ring,.orb-ring2{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.orb-ring{transform:rotate(-35deg);transition:transform 1s var(--ease)}.orb-btn:hover:not(:disabled) .orb-ring{transform:rotate(40deg)}.orb-ring .arc{filter:drop-shadow(0 0 6px #6a7bffaa)}.orb-ring2{opacity:0;transition:opacity .4s}.orb-core{position:relative;width:70%;height:70%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;overflow:hidden;background:radial-gradient(circle at 30% 25%,#6aa0ff,#4a7bff 38%,#7a5cf6);box-shadow:inset 0 -10px 24px #0a1a6055,inset 0 8px 18px #fff3,0 10px 40px -10px #5b6bff;color:#fff}.orb-core b{font-size:1.02rem;letter-spacing:.6px;text-shadow:0 2px 8px #0006}.orb-core svg{filter:drop-shadow(0 2px 6px #0005)}.orb-scan{position:absolute;left:0;right:0;height:40%;background:linear-gradient(180deg,transparent,#ffffff55,transparent);top:-50%;opacity:0}.orb-btn.busy .orb-ring{animation:spin 1.4s linear infinite;transition:none}.orb-btn.busy .orb-ring2{opacity:1;animation:spinRev 2.2s linear infinite}.orb-btn.busy .orb-core{animation:corePulse 1.2s ease-in-out infinite}.orb-btn.busy .orb-scan{opacity:1;animation:scanY 1.5s ease-in-out infinite}.orb-btn.busy .orb-mag{animation:magSweep 1.6s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes spinRev{to{transform:rotate(-360deg)}}@keyframes corePulse{50%{transform:scale(.94);box-shadow:inset 0 -10px 24px #0a1a6055,inset 0 8px 18px #fff3,0 10px 60px -4px #7a8bff}}@keyframes scanY{0%{top:-45%}to{top:105%}}@keyframes magSweep{25%{transform:translate(2px,-2px)}75%{transform:translate(-2px,2px)}}.orb-btn.done .orb-core{animation:pop .6s var(--spring) both;background:radial-gradient(circle at 30% 25%,#5ff0b8,#19c98a 45%,#0e9f78);box-shadow:inset 0 -10px 24px #00402f55,inset 0 8px 18px #fff3,0 10px 40px -10px #19c98a}.orb-btn.done .orb-ring .arc{stroke:#2ee59d}.orb-check{stroke-dasharray:30;stroke-dashoffset:30;animation:draw2 .6s .15s var(--ease) forwards}@keyframes draw2{to{stroke-dashoffset:0}}.orb-steps{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;min-height:30px}.orb-steps span{padding:4px 12px;border-radius:999px;font-size:.78rem;border:1px solid var(--line);color:var(--muted);transition:all .4s var(--ease)}.orb-steps span.on{color:var(--neon);border-color:#19d3ff88;background:#19d3ff14;transform:translateY(-2px);box-shadow:0 6px 16px -8px #19d3ff}.orb-steps span.done{color:var(--green);border-color:#2ee59d55}.orb-steps span.done:before{content:"✓ "}.dropzone{border:2px dashed #3a5a9a;border-radius:16px;padding:26px 18px;text-align:center;cursor:pointer;position:relative;overflow:hidden;transition:all .3s var(--ease);background:linear-gradient(180deg,#19d3ff08,transparent)}.dropzone:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:conic-gradient(from 0deg,transparent,#19d3ff33,transparent 30%);opacity:0;animation:spin 4s linear infinite;transition:opacity .3s}.dropzone>*{position:relative}.dropzone:hover,.dropzone.drag{border-color:var(--neon);background:#19d3ff12;transform:scale(1.01)}.dropzone.drag:before{opacity:1}.dropzone .dz-icon{width:54px;height:54px;margin:0 auto 8px;color:var(--neon);animation:floatY 3s ease-in-out infinite}.dropzone.drag .dz-icon{animation:floatY .6s ease-in-out infinite}@keyframes floatY{50%{transform:translateY(-7px)}}.upl{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;margin-top:8px;background:#0e1830;animation:rise .4s var(--ease) both}.upl .bar{grid-column:1 / -1;margin:2px 0 0}.apk-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#172143,#121a33);margin-bottom:10px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;animation:rise .5s var(--ease) both;animation-delay:calc(var(--i, 0) * 60ms)}.apk-card:hover{transform:translateY(-2px);border-color:#3a5a9a;box-shadow:0 12px 28px -16px #19d3ff77}.apk-card.sel{border-color:var(--neon);box-shadow:0 0 0 1px var(--neon),0 12px 30px -14px #19d3ffaa}.apk-ico{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;font-weight:800;font-size:1.2rem;color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);box-shadow:0 8px 20px -8px #6a7bff}.apk-card .meta{min-width:0}.apk-card .meta b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apk-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.batchbar{position:sticky;bottom:78px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin-top:12px;border-radius:14px;background:#101a38f2;border:1px solid var(--neon);box-shadow:0 16px 40px -14px #19d3ffaa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:pop .45s var(--spring) both}@media (min-width: 900px){.batchbar{bottom:18px}}@media (max-width: 640px){.apk-card{grid-template-columns:auto 1fr}.apk-actions{grid-column:1 / -1;justify-content:flex-start}}.cbx{width:20px;height:20px;accent-color:var(--neon);cursor:pointer}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px;font-size:.9rem}.crumbs button{background:none;border:0;color:var(--neon);cursor:pointer;padding:4px 8px;border-radius:8px;transition:background .2s}.crumbs button:hover{background:#19d3ff18}.crumbs span{color:var(--muted)}.fm-row{display:grid;grid-template-columns:26px 28px 1fr 90px 130px;gap:10px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .2s,transform .2s var(--ease);animation:rise .35s var(--ease) both;animation-delay:calc(var(--i, 0) * 18ms)}.fm-row:hover{background:#19d3ff0d;transform:translate(3px)}.fm-row.sel{background:#19d3ff1a}.fm-row .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-ico{width:24px;height:24px}.fm-ico.dir{color:#ffc83d}.fm-ico.file{color:var(--muted)}.fm-ico.link{color:var(--neon)}.fm-head{display:grid;grid-template-columns:26px 28px 1fr 90px 130px;gap:10px;padding:6px 10px;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 640px){.fm-row,.fm-head{grid-template-columns:24px 26px 1fr 70px}.fm-row .dt,.fm-head .dt{display:none}}.fm-drop{position:relative}.fm-drop.drag:after{content:"Solte para enviar ao TV Box";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:14px;background:#0a1224ee;border:2px dashed var(--neon);color:var(--neon);font-weight:700;font-size:1.1rem;z-index:5;animation:fadeIn .2s both}.kicked{text-align:center;max-width:440px}.kicked .k-ico{width:70px;height:70px;margin:0 auto 10px;color:var(--yellow);animation:shake 1.2s var(--ease) .2s both}@keyframes shake{15%{transform:rotate(-12deg)}30%{transform:rotate(10deg)}45%{transform:rotate(-8deg)}60%{transform:rotate(5deg)}75%{transform:rotate(-2deg)}}.issue-enter{animation:slideIn .5s var(--ease) both;animation-delay:calc(var(--i, 0) * 90ms)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-ico{position:relative;display:inline-grid;place-items:center;flex:none;border-radius:22%;overflow:hidden;background:#0e1830;box-shadow:0 4px 14px -6px #000a,inset 0 0 0 1px #ffffff14;transition:transform .3s var(--spring)}.app-ico:hover{transform:scale(1.12) rotate(-3deg)}.app-ico img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s}.app-ico-fb{width:100%;height:100%;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6)}.app-ico-fb.sys{background:linear-gradient(135deg,#334155,#1e293b);color:#94a3b8}.app-ico-fb.loading{background:linear-gradient(90deg,#ffffff0a 25%,#fff2,#ffffff0a 75%);background-size:200% 100%;animation:skel 1.3s linear infinite;color:transparent}.app-name{display:block;font-size:.98rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulk-pct{font-size:1.6rem;font-variant-numeric:tabular-nums;color:var(--neon);text-shadow:0 0 18px #19d3ff66}.bar.bulk{height:12px}.bar.bulk>i{transition:width .6s var(--ease)}.bar.bulk.running>i{background:linear-gradient(90deg,var(--neon2),var(--neon),#8b5cf6,var(--neon));background-size:200% 100%;animation:flow 1.4s linear infinite}@keyframes flow{to{background-position:-200% 0}}.bulk-item{display:flex;gap:12px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#0e1830;transition:all .35s var(--ease)}.bulk-item.run{border-color:var(--neon);background:#19d3ff12;transform:translate(4px)}.bulk-item.ok{border-color:#2ee59d55}.bulk-item.err{border-color:#ff5d7355;background:#ff5d7310}.bulk-st{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex:none;font-weight:800;background:#ffffff10}.bulk-item.ok .bulk-st{background:#2ee59d33;color:var(--green);animation:pop .4s var(--spring)}.bulk-item.err .bulk-st{background:#ff5d7333;color:var(--red);animation:pop .4s var(--spring)}.bulk-st .spin{width:14px;height:14px;border-radius:50%;border:2px solid #19d3ff55;border-top-color:var(--neon);animation:spin .7s linear infinite}.app-ver{color:var(--text);font-variant-numeric:tabular-nums}.bulk-item.skip{border-color:#19d3ff44;background:#19d3ff0c}.bulk-item.skip .bulk-st{background:#19d3ff26;color:var(--neon);animation:pop .4s var(--spring)}.tablewrap{max-width:100%;-webkit-overflow-scrolling:touch}@media (max-width: 760px){table.apps-table,table.apps-table tbody{display:block;width:100%}table.apps-table thead{display:none}table.apps-table tr{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:6px 10px;align-items:start;padding:12px 6px;border-bottom:1px solid var(--line)}table.apps-table td{display:block;border:0;padding:0;min-width:0}table.apps-table td:nth-child(1){grid-column:1;grid-row:1;padding-top:6px}table.apps-table td:nth-child(2){grid-column:2 / -1;grid-row:1}table.apps-table td:nth-child(3){grid-column:2;grid-row:2}table.apps-table td:nth-child(4){grid-column:3;grid-row:2;justify-self:end}table.apps-table td:nth-child(5){display:none}table.apps-table td:nth-child(6){grid-column:1 / -1;grid-row:3}table.apps-table td:nth-child(6) .row{flex-wrap:wrap!important}table.apps-table td[colspan]{grid-column:1 / -1}.batchbar{flex-direction:column;align-items:stretch}.batchbar .row{justify-content:stretch}.batchbar .row .btn{flex:1}}.app-name+span{overflow-wrap:anywhere;word-break:break-all}@media (max-width: 400px){td,th,.muted,.mono{overflow-wrap:anywhere}.main{padding-left:10px;padding-right:10px}}@media (max-width: 640px){.apk-card{align-items:start}.apk-card .row{align-items:flex-start}}.stagger>*+*{margin-top:16px}.stagger>.overlay,.stagger>.toasts{margin-top:0}@media (max-width: 760px){.stagger>*+*{margin-top:18px}}.sel-all-m{display:none;align-items:center;gap:10px;margin:12px 4px 0;color:var(--text);font-size:.95rem;cursor:pointer}@media (max-width: 760px){.sel-all-m{display:flex}}@media (max-width: 760px){.batchbar .row{flex-wrap:wrap;gap:8px}.batchbar .row .btn{flex:1 1 130px;min-width:0;padding-left:10px;padding-right:10px}}.vol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.vol-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#172143,#121a33);cursor:pointer;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s,opacity .3s;animation:pop .45s var(--spring) both}.vol-card:hover{transform:translateY(-2px);border-color:#3a5a9a}.vol-card.active{border-color:var(--neon);box-shadow:0 0 0 1px var(--neon),0 12px 30px -14px #19d3ffaa}.vol-card.off{opacity:.65;cursor:default}.vol-ico{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);box-shadow:0 8px 20px -8px #6a7bff}.vol-card.active .vol-ico{animation:floatY 3s ease-in-out infinite}.vol-meta{min-width:0;display:grid;gap:2px}.vol-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vol-act{display:flex;gap:6px;align-items:center}@media (max-width: 520px){.vol-card{grid-template-columns:auto minmax(0,1fr)}.vol-act{grid-column:1 / -1}}.picker{max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#0b142a}.picker .fm-row{grid-template-columns:10px 28px 1fr 0 0}.launcher-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#172143,#121a33);margin-top:12px;animation:rise .5s var(--ease) both;animation-delay:calc(var(--i, 0) * 70ms);transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}.launcher-card:hover{transform:translateY(-2px);border-color:#3a5a9a}.launcher-card.active{border-color:var(--neon);box-shadow:0 0 0 1px var(--neon),0 12px 30px -14px #19d3ffaa}.launcher-act{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media (max-width: 640px){.launcher-card{grid-template-columns:auto minmax(0,1fr)}.launcher-act{grid-column:1 / -1;justify-content:flex-start}}.switch-row{display:flex;gap:14px;align-items:flex-start;color:var(--text);cursor:pointer;font-size:.95rem;margin-bottom:4px}.switch{position:relative;width:46px;height:26px;flex:none;margin-top:2px}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;z-index:1;margin:0}.switch i{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#2a3556;border:1px solid var(--line);transition:background .3s var(--ease),box-shadow .3s}.switch i:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .35s var(--spring);box-shadow:0 2px 6px #0007}.switch input:checked+i{background:linear-gradient(90deg,#1ca7d6,var(--neon));box-shadow:0 0 16px -2px #19d3ffaa}.switch input:checked+i:after{transform:translate(20px)}.switch input:focus-visible+i{outline:2px solid var(--neon);outline-offset:2px}.guide-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}@media (max-width: 560px){.guide-status{grid-template-columns:1fr}}.guide-pill{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#0e1830;transition:border-color .4s,background .4s}.guide-pill .guide-dot{width:12px;height:12px;border-radius:50%;background:var(--muted);flex:none}.guide-pill.ok{border-color:#2ee59d66;background:#2ee59d10}.guide-pill.ok .guide-dot{background:var(--green);box-shadow:0 0 10px var(--green)}.guide-pill.bad{border-color:#ff5d7355;background:#ff5d730d}.guide-pill.bad .guide-dot{background:var(--red)}.guide-pill.wait .guide-dot{background:var(--yellow);animation:blink 1.2s infinite}.guide-wait{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;border:1px dashed #19d3ff66;background:#19d3ff0d;font-size:.9rem}.guide-spin{width:16px;height:16px;border-radius:50%;border:2px solid #19d3ff44;border-top-color:var(--neon);animation:spin .8s linear infinite;flex:none}.guide-steps{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}.guide-steps li{border:1px solid var(--line);border-radius:12px;background:#0e1830;overflow:hidden;animation:rise .45s var(--ease) both;animation-delay:calc(var(--i, 0) * 55ms);transition:border-color .3s}.guide-steps li.open{border-color:#3a5a9a}.guide-step-head{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:none;border:0;color:inherit;cursor:pointer;text-align:left}.guide-num{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;flex:none}.guide-chev{margin-left:auto;transition:transform .3s var(--spring);color:var(--muted);font-size:1.3rem}.guide-steps li.open .guide-chev{transform:rotate(90deg);color:var(--neon)}.guide-step-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--ease)}.guide-step-inner{overflow:hidden;min-height:0;margin:0;padding:0 14px 0 50px}.guide-step-inner>p{margin:0 0 8px}.guide-steps li.open .guide-step-body{grid-template-rows:1fr}.guide-steps li.open .guide-step-inner{padding-bottom:4px}.guide-path{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-bottom:12px!important}.guide-path span{background:#19d3ff14;border:1px solid #19d3ff44;color:var(--neon);border-radius:8px;padding:2px 9px;font-size:.78rem}.guide-path i{font-style:normal;color:var(--muted);margin-right:4px}.guide-more{margin-top:12px;border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:#0e1830}.guide-more summary{cursor:pointer;font-size:.9rem}.guide-success{text-align:center;padding:18px 6px;color:var(--green)}.guide-success h2{color:var(--text);margin:6px 0}.down-banner{position:sticky;top:0;z-index:18;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 14px;margin-bottom:14px;border-radius:14px;border:1px solid #ff5d7377;background:linear-gradient(90deg,#3a1420f2,#1c1226f2);box-shadow:0 10px 30px -14px #ff5d73aa;animation:pop .45s var(--spring) both;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.down-banner b{color:#ffd1d8}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}button,a,.nav-item,.fm-row,.vol-card{touch-action:manipulation}td,th{overflow-wrap:anywhere}table{max-width:100%}.orb-btn{--s: min(220px, 56vw)}.orb-wrap{overflow:hidden;padding:28px 0 10px}.orb-core b{font-size:clamp(.8rem,3.4vw,1.02rem)}img,svg,video{max-width:100%}.overlay{overscroll-behavior:contain}.modal{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(90dvh,calc(100dvh - 24px))}@media (pointer: coarse){body.modal-open{overflow:hidden}}@media (max-height: 480px){.overlay{padding:8px}.modal{padding:12px 14px;border-radius:12px;max-height:calc(100dvh - 16px)}.guide-status{gap:6px;margin-bottom:8px}.guide-pill{padding:6px 10px}.guide-step-head{padding:8px 10px}}@media (max-width: 400px){.modal{padding:14px}.guide-step-inner{padding-left:14px;padding-right:10px}}.modal-head{flex-wrap:nowrap!important;gap:10px;align-items:flex-start}.modal-head h2{min-width:0;overflow-wrap:anywhere;font-size:clamp(.98rem,4.2vw,1.15rem)}.modal-head .btn{flex:none}@media (max-width: 560px){.guide-status{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px}.guide-pill{flex-direction:column;text-align:center;gap:3px;padding:7px 4px}.guide-pill b{font-size:.76rem}.guide-pill .small{font-size:.68rem;line-height:1.2;display:block}.guide-wait{font-size:.8rem;padding:7px 10px;gap:8px}.guide-wait .muted.small{display:none}.guide h2,.modal h2+*+h2{font-size:1rem}.guide-step-head b{font-size:.92rem}}.guide-why{margin:2px 0 6px}.guide-why summary{cursor:pointer;color:var(--neon);font-size:.85rem;padding:4px 0}.guide-why p{margin:6px 0 0}@media (max-width: 560px){.guide-pill{padding:6px 2px}.guide-pill .guide-dot{width:9px;height:9px}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;align-items:center}.modal{margin:auto}
