:root{--bg:#061f2a;--void:#041a23;--surface:#08303f;--surface2:#0a3948;--card:#0b3442;--accent:#20d4bf;--text:#f5f7f8;--muted:#a9bbc3;--line:#20d4bf26;--ok:#10b981;--warn:#f59e0b;--bad:#ef4444;--gray:#94a3b8;--cyan:#06b6d4}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{background:var(--accent);color:#003731;cursor:pointer;border:0;border-radius:7px;padding:9px 13px;font-weight:700}.outline{color:var(--accent);background:0 0;border:1px solid #20d4bf66}.shell{min-height:100vh}.shell aside{border-right:1px solid var(--line);z-index:3;background:#001019;flex-direction:column;width:230px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid var(--line);height:78px;color:var(--accent);flex-direction:column;padding:17px;font-size:12px;display:flex}.brand small{color:var(--muted);margin-top:4px}.shell nav{flex-direction:column;gap:4px;padding:14px 10px;display:flex}.shell nav a,.shell nav .muted{color:var(--muted);border-radius:6px;padding:10px;font-size:13px}.shell nav a:hover{background:var(--surface);color:var(--text)}.shell nav hr{border:0;border-top:1px solid var(--line);width:100%}.phase{color:var(--muted);border-top:1px solid var(--line);margin-top:auto;padding:16px;font-size:10px}.phase em{color:var(--accent);margin-top:7px;font-style:normal;display:inline-block}.workspace{margin-left:230px}.workspace header{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#061f2aeb;align-items:center;gap:18px;height:64px;padding:0 22px;display:flex;position:sticky;top:0}.search{background:var(--void);color:var(--muted);border:1px solid #a9bbc32e;border-radius:6px;flex:1;max-width:430px;padding:8px 12px}.sync{color:var(--accent);margin-left:auto;font-size:11px}.workspace main{max-width:1600px;margin:auto;padding:26px}.titleRow,.sectionHead{justify-content:space-between;align-items:center;gap:20px;display:flex}.titleRow h1,h1{margin:4px 0 5px;font-size:28px}.titleRow p{color:var(--muted);margin:0}.eyebrow{letter-spacing:.12em;color:var(--accent);font-size:10px}.kpis{grid-template-columns:repeat(6,1fr);gap:12px;margin:22px 0;display:grid}.card{background:var(--card);border:1px solid #a9bbc321;border-radius:8px;margin-bottom:16px;padding:18px}.kpi{flex-direction:column;min-height:112px;margin:0;display:flex}.kpi small{color:var(--muted);text-transform:uppercase;font-size:10px}.kpi strong{margin-top:13px;font-size:27px}.kpi span{color:var(--muted);margin-top:auto;font-size:10px}.grid2,.grid3{gap:16px;display:grid}.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:repeat(3,1fr)}.card h2{margin:0 0 12px;font-size:15px}.card p{color:var(--muted);font-size:13px;line-height:1.5}.progress{background:#213843;border-radius:10px;height:8px;margin:20px 0;overflow:hidden}.progress i{background:var(--accent);height:100%;display:block}.metricRow{gap:22px;font-size:12px;display:flex}.metricRow span,.muted{color:var(--muted)}.donut{background:conic-gradient(var(--accent) 0 58%,var(--cyan) 58% 82%,var(--gray) 82%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:110px;height:110px;margin:8px auto;display:flex;position:relative}.donut:after{content:"";background:var(--card);border-radius:50%;width:76px;height:76px;position:absolute}.donut strong,.donut span{z-index:1}.donut span{color:var(--muted);font-size:9px}.legend{text-align:center;color:var(--muted);font-size:10px}.alerts{grid-template-columns:1fr 1fr;gap:12px;display:grid}.alerts>div{background:var(--void);border-left:3px solid var(--warn);padding:14px}.alerts b,.alerts span{font-size:12px;display:block}.alerts span{color:var(--muted);margin-top:5px}.tableWrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:9px}th,td{white-space:nowrap;border-bottom:1px solid #a9bbc31a;padding:11px 9px}.link{color:var(--accent);font-family:ui-monospace,monospace;font-weight:700}.badge{border:1px solid;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-block}.conforme{color:var(--ok);background:#10b9811a}.observación{color:var(--warn);background:#f59e0b1a}.no-conforme{color:var(--bad);background:#ef44441a}.no-verificable{color:var(--gray);background:#94a3b81a}.parcial{color:#fbbf24;background:#d977061a}.en-validación{color:var(--cyan);background:#06b6d41a}.revisión{color:#9bc4d6;background:#9bc4d61a}.pagination{color:var(--muted);justify-content:flex-end;align-items:center;gap:7px;padding-top:14px;font-size:11px;display:flex}.pagination button,.pagination select{background:var(--surface);color:var(--text);border:1px solid var(--line);padding:6px 9px}.filters{gap:8px;margin-top:20px;display:flex}.filters input,.filters select{background:var(--void);color:var(--text);border:1px solid #a9bbc32e;border-radius:6px;padding:9px}.filters input{flex:1}.crumb{color:var(--muted);margin-bottom:10px;font-size:11px}.facts{grid-template-columns:repeat(6,1fr);gap:8px;margin:20px 0;display:grid}.facts div{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:13px}.facts small,.facts b{display:block}.facts small{color:var(--muted);text-transform:uppercase;font-size:9px}.facts b{margin-top:7px;font-size:11px}.grid3 .card{flex-direction:column;gap:7px;display:flex}.grid3 .card small{color:var(--muted);margin-top:auto}.timeline{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.timeline>div{border-top:2px solid var(--line);flex-direction:column;gap:7px;padding-top:12px;font-size:10px;display:flex}.timeline i{background:var(--accent);border-radius:50%;width:9px;height:9px;margin-top:-18px}.timeline span{color:var(--muted)}.reqSummary{gap:10px;margin-bottom:12px;display:flex}.reqSummary b{background:var(--void);border-radius:5px;padding:7px 10px;font-size:10px}.requirements>div{border-top:1px solid #a9bbc31a;grid-template-columns:70px 1fr 120px;align-items:center;gap:10px;padding:9px;display:grid}.requirements code{color:var(--accent)}.requirements span{font-size:11px}.finding{border-top:2px solid var(--warn)}.finding.high{border-top-color:var(--bad)}.login{background:radial-gradient(circle at 50% 45%,#0a3948 0,#061f2a 38%,#001019 75%);place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.ambient{opacity:.4;position:absolute;inset:0}.ambient span{color:var(--accent);text-shadow:0 0 14px #20d4bf40;font-family:ui-monospace,monospace;animation:18s ease-in-out infinite alternate float;position:absolute}.loginCard{z-index:1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#041a23db;border:1px solid #20d4bf4d;border-radius:12px;width:min(420px,100% - 32px);padding:32px;box-shadow:0 30px 80px #0006}.loginCard .mark{text-align:center;color:var(--accent);font-size:30px}.loginCard h1{text-align:center;letter-spacing:.06em;font-size:17px}.loginCard>p{text-align:center;color:var(--muted);margin-bottom:24px;font-size:12px}.loginCard label{margin:13px 0;font-size:11px;display:block}.loginCard input[type=email],.loginCard input[type=password]{width:100%;color:var(--text);background:#001019;border:1px solid #a9bbc333;border-radius:6px;margin-top:7px;padding:11px}.loginRow{color:var(--muted);justify-content:space-between;align-items:center;font-size:10px;display:flex}.loginRow label{margin:0}.loginCard>button{width:100%;margin-top:16px}.sso{text-align:center;color:var(--muted);margin-top:16px;font-size:9px}@keyframes float{0%{transform:translate(-10px,10px)rotate(-3deg)}to{transform:translate(22px,-24px)rotate(4deg)}}@media (prefers-reduced-motion:reduce){.ambient span{animation:none}}@media (max-width:1100px){.kpis,.facts{grid-template-columns:repeat(3,1fr)}.timeline{grid-template-columns:repeat(4,1fr)}}@media (max-width:780px){.shell aside{display:none}.workspace{margin-left:0}.workspace header{padding:0 12px}.sync{display:none}.workspace main{padding:15px}.kpis{grid-template-columns:repeat(2,1fr)}.grid2,.grid3{grid-template-columns:1fr}.facts{grid-template-columns:repeat(2,1fr)}.alerts,.timeline{grid-template-columns:1fr}.timeline>div{border-top:0;border-left:2px solid var(--line);padding:4px 0 15px 16px}.timeline i{margin:0 0 0 -21px}.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.titleRow{align-items:flex-start}.requirements>div{grid-template-columns:55px 1fr}.requirements .badge{grid-column:2}.pagination{flex-wrap:wrap;justify-content:flex-start}}@media (max-width:430px){.kpis,.facts{grid-template-columns:1fr}.workspace header .search{font-size:10px}.titleRow{flex-direction:column}}
