:root{
  --colva-blue:#0b3768;
  --colva-blue-2:#123f73;
  --colva-blue-3:#062846;
  --colva-lime:#c9d52a;
  --colva-green:#1f9d55;
  --colva-gold:#f2b705;
  --danger:#dc3545;
  --bg:#f3f6fb;
  --surface:#ffffff;
  --line:#e4e9f2;
  --text:#101828;
  --muted:#667085;
  --shadow:0 16px 38px rgba(16,24,40,.09);
  --radius:22px;
  --sidebar-w:292px;
}
*{box-sizing:border-box}
html{min-height:100%}
body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:
  radial-gradient(circle at top left,rgba(201,213,42,.16),transparent 34rem),
  linear-gradient(180deg,#f8fbff 0%,var(--bg) 45%,#eef3fb 100%);color:var(--text)}
a{color:inherit}.login-body .topbar{background:linear-gradient(135deg,var(--colva-blue),var(--colva-blue-3));color:#fff;min-height:82px;padding:12px 26px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:sticky;top:0;z-index:20;box-shadow:0 10px 28px rgba(6,40,70,.24)}
.brand{display:flex;align-items:center;gap:16px;min-width:260px}.brand-logo{background:#fff;border-radius:18px;padding:9px 14px;box-shadow:0 10px 22px rgba(0,0,0,.16);display:flex;align-items:center;justify-content:center}.brand-logo img{height:43px;width:auto;display:block}.brand-text{display:flex;flex-direction:column;line-height:1.12}.brand-text strong{font-size:20px;letter-spacing:.2px}.brand-text span{font-size:12px;color:#d8e6f7;margin-top:4px}

/* SIDEBAR COLVAPLUS */
.has-sidebar{padding-left:var(--sidebar-w)}
.sidebar-toggle{display:none}.sidebar-backdrop{display:none}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-w);z-index:40;background:linear-gradient(180deg,#0b3768 0%,#082b52 55%,#061f3d 100%);color:#fff;padding:18px 16px;display:flex;flex-direction:column;box-shadow:18px 0 45px rgba(6,40,70,.20);overflow-y:auto}
.side-brand{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}
.side-logo{background:#fff;border-radius:18px;padding:9px 10px;display:flex;align-items:center;justify-content:center;min-width:105px;box-shadow:0 12px 25px rgba(0,0,0,.18)}
.side-logo img{height:34px;width:auto;display:block}.side-brand strong{display:block;font-size:20px;line-height:1}.side-brand span{display:block;color:#cfe1f6;font-size:11px;margin-top:5px;line-height:1.25}
.side-user{margin:18px 0;padding:15px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12)}
.side-user span,.side-user small{display:block;color:#cfe1f6;font-size:12px}.side-user strong{display:block;font-size:15px;margin:5px 0 2px}.side-menu{display:grid;gap:9px}.side-menu a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#eaf3ff;border-radius:15px;padding:12px 13px;font-weight:850;border:1px solid transparent;transition:.16s ease}.side-menu a span{width:26px;height:26px;border-radius:9px;background:rgba(255,255,255,.12);display:inline-flex;align-items:center;justify-content:center}.side-menu a:hover,.side-menu a.active{background:#fff;color:var(--colva-blue);box-shadow:0 10px 22px rgba(0,0,0,.18);transform:translateX(3px)}.side-menu a.active span{background:rgba(201,213,42,.22)}
.side-footer{margin-top:auto;padding-top:18px}.logout-btn{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;color:#fff;background:rgba(220,53,69,.92);border-radius:15px;padding:12px 14px;font-weight:900;box-shadow:0 12px 22px rgba(0,0,0,.15)}
.has-sidebar .topbar{position:sticky;top:0;z-index:30;min-height:70px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(228,233,242,.88);display:flex;align-items:center;gap:14px;justify-content:space-between;padding:12px 26px;box-shadow:0 10px 28px rgba(16,24,40,.06)}
.nav-button{display:none;background:var(--colva-blue);color:#fff;border:0;border-radius:14px;padding:9px 13px;font-weight:950;font-size:22px;cursor:pointer;box-shadow:0 10px 22px rgba(11,55,104,.18)}.top-title{display:flex;flex-direction:column}.top-title strong{font-size:18px;color:#071d3a}.top-title span{font-size:12px;color:var(--muted);font-weight:700;margin-top:2px}.desktop-only{display:inline-flex}

.wrap{max-width:1220px;margin:0 auto;padding:34px 22px 60px}.has-sidebar .wrap{max-width:1240px}.page-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:8px 0 24px}.eyebrow{margin:0 0 8px;color:var(--colva-blue-2);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.page-title h1{margin:0;color:#071d3a;font-size:34px;letter-spacing:-.04em}.user-badge{background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px rgba(16,24,40,.06);border-radius:999px;padding:10px 14px;color:var(--colva-blue);font-weight:800;font-size:13px;white-space:nowrap}.card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin:16px 0;backdrop-filter:blur(8px)}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}label{font-weight:800;font-size:13px;color:#243b5a;display:block;margin:0 0 7px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #ccd6e4;border-radius:14px;background:#fff;font-size:15px;outline:none;transition:.15s ease}input:focus,select:focus,textarea:focus{border-color:var(--colva-blue);box-shadow:0 0 0 4px rgba(11,55,104,.10)}textarea{min-height:92px;resize:vertical}.btn{border:0;border-radius:14px;padding:12px 16px;background:var(--colva-blue);color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:900;box-shadow:0 10px 22px rgba(11,55,104,.18);transition:.15s ease}.btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.btn.sec{background:#475467}.btn.ok{background:var(--colva-green)}.btn.warn{background:var(--colva-gold);color:#1f2937}.btn.bad{background:var(--danger)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(16,24,40,.06)}.table th,.table td{padding:13px 14px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:top}.table tr:last-child td{border-bottom:0}.table th{background:linear-gradient(180deg,#eef5ff,#e7effa);color:var(--colva-blue);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#eef3f9;font-weight:900;font-size:12px}.pill.ok{background:#e7f7ee;color:#0f7a3b}.pill.warn{background:#fff4cc;color:#7a5b00}.alert{background:#fff8db;border:1px solid #f2d16b;padding:14px 16px;border-radius:16px;margin-bottom:16px;font-weight:750;color:#493b04}.kpi{font-size:36px;font-weight:950;color:var(--colva-blue);letter-spacing:-.05em}.card.col-4{position:relative;overflow:hidden}.card.col-4:before{content:"";position:absolute;right:-28px;top:-36px;width:105px;height:105px;background:linear-gradient(135deg,rgba(201,213,42,.42),rgba(11,55,104,.10));border-radius:50%}.muted{color:var(--muted);font-size:13px}.device{border:1px dashed #aab7ca;border-radius:20px;padding:16px;margin:12px 0;background:linear-gradient(180deg,#fbfdff,#f7faff)}.device .dev-title{display:inline-block;margin-bottom:12px;color:var(--colva-blue);font-size:17px}.scanbox video{width:100%;max-height:260px;border-radius:16px;background:#000}.login{max-width:460px;margin:5vh auto}.empty{padding:28px;text-align:center;color:var(--muted)}

@media(max-width:1080px){:root{--sidebar-w:264px}.side-brand{align-items:flex-start;flex-direction:column}.side-logo{width:100%}.side-logo img{height:32px}.has-sidebar{padding-left:264px}.card{padding:18px}}
@media(max-width:900px){.has-sidebar{padding-left:0}.sidebar{transform:translateX(-105%);transition:.22s ease;width:300px;max-width:86vw}.sidebar-toggle:checked ~ .sidebar{transform:translateX(0)}.sidebar-backdrop{position:fixed;inset:0;background:rgba(6,31,61,.44);z-index:35;backdrop-filter:blur(2px)}.sidebar-toggle:checked ~ .sidebar-backdrop{display:block}.nav-button{display:inline-flex;align-items:center;justify-content:center}.desktop-only{display:none}.has-sidebar .topbar{padding:10px 14px}.wrap{padding:20px 14px 40px}.page-title{align-items:flex-start;flex-direction:column}.page-title h1{font-size:27px}.user-badge{white-space:normal}.grid{grid-template-columns:1fr}.col-3,.col-4,.col-6,.col-8,.col-12{grid-column:span 1}.table{display:block;overflow-x:auto}.btn{width:100%;min-height:46px}.actions .btn{width:100%}.login{margin:2vh 0}.brand-logo{padding:7px 10px}.brand-logo img{height:36px}.brand-text strong{font-size:17px}}
@media(max-width:520px){.side-brand strong{font-size:18px}.top-title strong{font-size:16px}.top-title span{display:none}.page-title{margin-bottom:14px}.card{border-radius:18px}.kpi{font-size:31px}}

/* DEVOLUCIONES - FLUJO TECNICO APK RAPIDO */
.fast-return{max-width:980px;margin-left:auto;margin-right:auto}
.fast-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.fast-head h2{margin:10px 0 4px;color:#071d3a;letter-spacing:-.03em}
.tech-chip{min-width:220px;background:linear-gradient(135deg,#eef6ff,#ffffff);border:1px solid var(--line);border-radius:18px;padding:13px 15px;box-shadow:0 8px 18px rgba(16,24,40,.06)}
.tech-chip small,.tech-chip span{display:block;color:var(--muted);font-weight:800;font-size:12px}.tech-chip b{display:block;color:var(--colva-blue);font-size:16px;margin:4px 0}
.input-big{font-size:22px;font-weight:900;letter-spacing:.03em;min-height:58px;border-width:2px;background:#fff}
.fast-return .device{background:#fff;border:2px dashed #bdd0e5;padding:18px}.fast-return .device input,.fast-return .device select{min-height:52px;font-size:16px}.fast-return .device .btn{min-height:50px}
.sticky-actions{position:sticky;bottom:0;background:rgba(243,246,251,.92);backdrop-filter:blur(10px);padding:12px;border-radius:18px;border:1px solid var(--line);z-index:10}.btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.25)}
@media(max-width:900px){.fast-head{flex-direction:column}.tech-chip{width:100%}.fast-return{margin:0}.fast-return .device{padding:14px}.input-big{font-size:19px}.sticky-actions{left:0;right:0}.fast-return h2{font-size:22px}.fast-return .page-title h1{font-size:25px}}
