:root{color-scheme:dark;--bg:#050c17;--text:#eff8ff;--soft:#8eabc8;--cyan:#15dffe;--purple:#bb5cff;--gold:#ffcf30;--green:#15ceae;--red:#ff657b;--line:rgba(73,168,220,.34)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 50% 10%,#123967 0%,#071629 48%,#030810 100%);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-size:14px;min-height:100vh}.background-anime{position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(2,8,17,.74),rgba(2,11,23,.16) 50%,rgba(2,8,17,.75)),linear-gradient(180deg,rgba(0,10,25,.06),rgba(0,7,20,.55) 68%,#040b17),url('fondo_anime.gif') no-repeat center 25%/auto 100vh;opacity:.91}.background-anime:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(140deg,transparent 0 120px,rgba(9,170,237,.035) 120px 121px),radial-gradient(circle at 50% 22%,transparent 0 30%,rgba(4,13,27,.35) 65%,rgba(4,9,19,.7) 100%)}.shell{position:relative;z-index:1;max-width:1390px;margin:0 auto;padding:20px 28px 36px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:1px 0 19px;border-bottom:1px solid rgba(17,217,255,.2)}.brand{display:flex;align-items:center;gap:14px;letter-spacing:3px;font-size:27px;font-weight:800;text-shadow:0 1px 18px #08a7f8b3}.brand em{color:var(--cyan);font-style:normal}.brand small{display:block;letter-spacing:5px;color:#9ab4d4;font-size:9px;font-weight:600;margin-top:2px}.logo-mark{display:grid;place-items:center;width:51px;height:51px;font-size:32px;font-weight:900;color:#d9feff;background:linear-gradient(145deg,#07c0fe,#133fc1 55%,#7926b7);clip-path:polygon(19% 0,100% 0,84% 40%,100% 100%,20% 100%,0 54%);filter:drop-shadow(0 0 17px #0ee5fd)}.top-end{display:flex;align-items:center;gap:18px}.private-tag{font-size:10px;font-weight:700;letter-spacing:1.3px;color:#a8d5ea}.status-dot{display:inline-block;background:#11edb4;border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #17fac1;margin-right:8px}.logout{background:rgba(9,29,48,.65);border:1px solid #2c658a;color:#dbf4ff;padding:10px 18px;border-radius:9px;font-weight:750;cursor:pointer}.hero{padding-top:35px}.hero-heading{text-align:center;margin-bottom:22px}.hero-heading span{color:#4ee8ff;letter-spacing:5px;font-size:10px;font-weight:800}.hero-heading h1{font-size:clamp(19px,2.25vw,30px);line-height:1.2;margin:7px auto 0;text-shadow:0 3px 20px #000}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.dropzone{min-height:205px;border:2px dashed;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;cursor:pointer;transition:background .2s,transform .2s}.dropzone:focus-visible,.dropzone:hover,.dropzone.over{outline:2px solid #c7faff;outline-offset:3px;transform:translateY(-1px)}.dropzone.purple{border-color:#9450f7;background:linear-gradient(130deg,rgba(63,17,99,.48),rgba(28,15,51,.54))}.dropzone.amber{border-color:#f0a500;background:linear-gradient(130deg,rgba(70,42,11,.55),rgba(38,31,13,.54))}.dropzone .drop-icon{font-size:46px;line-height:1;margin-bottom:13px}.dropzone.purple .drop-icon,.dropzone.purple strong{color:#d493ff}.dropzone.amber .drop-icon,.dropzone.amber strong{color:#ffd653}.dropzone strong{font-size:20px;font-weight:800}.dropzone p{margin:10px 10px 6px;color:#f3f5ff}.dropzone small{color:#b4bed8}.upload-count{text-align:center;margin:9px 0;color:#af9aff;background:rgba(9,15,38,.64);padding:8px;border:1px solid rgba(137,80,229,.39);border-radius:8px;font-size:12px;min-height:35px}.yellow-count{color:#ffde75;border-color:rgba(247,180,14,.27)}.split-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn{border-radius:8px;padding:10px 12px;cursor:pointer;font-size:12px;font-family:inherit;font-weight:800;letter-spacing:.15px;transition:filter .15s,transform .15s;background:transparent;color:inherit}.btn:hover:not(:disabled){filter:brightness(1.21);transform:translateY(-1px)}.btn:disabled{opacity:.35;cursor:not-allowed}.consult{background:linear-gradient(110deg,#0a9fa2,#05bba7);color:white;border:1px solid #18eacb;box-shadow:0 0 15px #07a9b32a}.subtle{background:rgba(12,29,47,.77);border:1px solid #325674;color:#d9efff}.golden{background:rgba(93,58,4,.76);border:1px solid #f0aa0b;color:#ffdf75}.helper{font-size:11px;color:#9fb0c7;line-height:1.5;min-height:16px;margin:8px 0}.ids-section{margin-top:40px;padding:22px 0 5px}.section-title{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:13px;margin-bottom:19px}.section-title h2{margin:0;font-size:24px}.actions{display:flex;flex-wrap:wrap;gap:8px}.btn-outline{text-decoration:none;padding:10px 12px;background:#071423ee;font-size:11px}.btn-outline.accent{border:1px solid #16bbce;color:#5af1e6}.btn-outline.gold{border:1px solid #f5aa1f;color:#ffd368}.btn-outline.cyan{border:1px solid #3999ef;color:#98e3ff}.btn-outline.red{border:1px solid #ef5273;color:#ff9baf}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.tab{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:16px 15px;border:1px solid #2d6d9b;background:rgba(6,25,43,.83);border-radius:10px;color:#e2f8ff;font-weight:750;cursor:pointer;text-align:left}.tab b{background:rgba(91,159,201,.12);padding:3px 9px;border-radius:7px;min-width:26px;text-align:center}.tab.active{border-color:#0bdec7;background:rgba(3,82,69,.45);box-shadow:inset 0 0 0 1px #00ddae70,0 0 18px #03ccaa2b}.tab:hover{border-color:#8de4ff}.table-wrapper{overflow:auto;max-height:570px;border:1px solid var(--line);border-radius:10px;background:rgba(4,13,29,.78);scrollbar-color:#287aa5 #071522}.table-wrapper table{width:100%;border-spacing:0;min-width:760px}.table-wrapper thead{position:sticky;top:0;z-index:1;background:#071c32}th{padding:7px 5px;font-size:11px;text-align:left;font-weight:700}th button{border:1px solid rgba(227,245,255,.63);border-radius:6px;display:block;background:transparent;width:100%;padding:9px 8px;font-size:11px;font-weight:750;color:#e3f6ff;text-align:left;white-space:nowrap;cursor:pointer}th button:hover,th button:focus-visible{border-color:white;background:rgba(29,149,202,.11)}td{padding:12px 10px;border-bottom:1px solid rgba(81,143,177,.3);color:#d8eaf9;font-size:12px}td.empty{text-align:center;padding:64px 15px;color:#9cb6d2}td .state{border-radius:6px;padding:4px 7px;font-weight:650;font-size:10px;background:rgba(16,185,152,.13);color:#63f4d5}.state.wait{background:rgba(240,177,46,.1);color:#ffd481}.state.fail{background:rgba(243,78,101,.13);color:#f7a6b1}.pages{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:10px 0;color:#d9ecfa;font-size:12px}.pages[hidden]{display:none}.latest{background:rgba(7,24,40,.75);border:1px solid #228fc4;border-radius:10px;margin-top:22px}.latest summary{list-style:none;padding:15px 18px;color:#76f2e8;font-size:14px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between}.latest summary::-webkit-details-marker{display:none}.latest[open] summary{border-bottom:1px solid #23597a}.batch-list{padding:4px 18px 15px}.batch-list p{padding:7px 0;margin:0;border-bottom:1px solid #1e4960;color:#bdcbe4;font-size:12px}footer{margin-top:30px;text-align:center;letter-spacing:2px;font-size:10px;color:#7895b0}button:focus-visible,input:focus-visible{outline:2px solid #96eaff;outline-offset:2px}.login-screen{display:flex;align-items:center;justify-content:center}.login-card{position:relative;z-index:1;width:min(480px,92vw);padding:35px;background:rgba(4,14,30,.92);border:1px solid #2f97c6;border-radius:14px;box-shadow:0 0 60px #071b3799}.login-card .brand{font-size:24px}.login-card h1{margin:22px 0}.login-card p{color:#aabbd0}.login-error{color:#ff9aa8!important}.login-card label{display:block;margin-bottom:8px}.login-card input{width:100%;margin-bottom:16px;padding:12px;border-radius:7px;background:#07192a;border:1px solid #386486;color:white;font-size:16px}.login-card .btn{width:100%}
@media(max-width:880px){.shell{padding:16px 14px}.brand{font-size:20px}.logo-mark{width:42px;height:42px}.upload-grid{grid-template-columns:1fr}.tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.section-title{align-items:start}.dropzone{min-height:170px}.hero{padding-top:23px}.private-tag{display:none}}@media(max-width:520px){.brand{letter-spacing:1px;font-size:16px}.brand small{letter-spacing:2px;font-size:8px}.section-title h2{font-size:21px}.tabs{gap:7px}.tab{font-size:11px;padding:11px 9px}.actions{gap:6px}.btn-outline{font-size:10px}.background-anime{background-size:auto 80vh;background-position:center 22%}}
