:root{--bg:#eef3f8;--shell:#f8fafc;--side:#0b1220;--card:#fff;--text:#0f172a;--muted:#64748b;--line:#dbe3ef;--blue:#2563eb;--orange:#f97316;--green:#16a34a;--shadow:0 18px 55px rgba(15,23,42,.12);--r:18px}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input{font:inherit}.nx-app{height:100vh;width:100vw;display:grid;grid-template-columns:280px 1fr;overflow:hidden}.nx-sidebar{background:linear-gradient(180deg,var(--side),#07101d);color:#dbe7f7;display:flex;flex-direction:column}.brand{height:76px;display:flex;align-items:center;gap:12px;padding:18px;border-bottom:1px solid rgba(255,255,255,.08)}.mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--orange));display:grid;place-items:center;color:white;font-weight:900}.brand b{display:block;color:white}.brand span{font-size:11px;color:#93a4b8;text-transform:uppercase}.nav{padding:14px 10px;display:grid;gap:4px;overflow:auto}.nav button{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#b8c5d6;border-radius:12px;padding:12px 13px;cursor:pointer;font-weight:800;text-align:left}.nav button:hover{background:rgba(255,255,255,.07);color:white}.nav button.active{background:linear-gradient(90deg,rgba(37,99,235,.92),rgba(37,99,235,.32));color:white}.sidefoot{margin-top:auto;padding:16px 18px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:12px}.sidefoot span{color:#93a4b8}.shell{height:100vh;min-width:0;display:grid;grid-template-rows:76px 1fr 38px;overflow:hidden}.topbar{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 20px}.left{display:flex;align-items:center;gap:12px}.icon{position:relative;border:1px solid var(--line);background:white;color:var(--text);width:38px;height:38px;border-radius:12px;cursor:pointer;font-weight:900}.icon em{position:absolute;right:-5px;top:-7px;background:var(--orange);color:white;font-size:10px;min-width:17px;height:17px;border-radius:99px;font-style:normal}.company span{display:block;font-size:11px;color:var(--muted);font-weight:900;text-transform:uppercase}.company b{font-size:14px}.search{flex:1;max-width:720px;height:42px;border:1px solid var(--line);background:#f8fafc;border-radius:14px;display:flex;align-items:center;gap:10px;padding:0 13px}.search input{border:0;background:transparent;outline:0;width:100%}.actions{margin-left:auto;display:flex;align-items:center;gap:10px}.user{display:grid;grid-template-columns:32px auto;column-gap:9px;border:1px solid var(--line);background:white;border-radius:14px;padding:7px 10px}.user div{grid-row:1/3;width:32px;height:32px;border-radius:10px;background:#eaf2ff;color:var(--blue);font-weight:900;display:grid;place-items:center}.user b{font-size:12px}.user span{font-size:11px;color:var(--muted)}.content{min-height:0;overflow:auto;padding:22px;background:var(--shell);scroll-behavior:auto}.page{display:none;min-height:100%}.page.active{display:block}.head{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px}.head small{font-size:11px;font-weight:900;color:var(--blue)}h1{font-size:26px;margin:4px 0;letter-spacing:-.03em}p{color:var(--muted);font-weight:600}.primary{border:0;background:linear-gradient(135deg,var(--blue),#1d4ed8);color:white;border-radius:13px;padding:11px 15px;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(37,99,235,.22)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.kpis article,.panel,.table,.empty{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:var(--shadow)}.kpis span{color:var(--muted);font-size:12px;font-weight:900}.kpis b{display:block;font-size:24px;margin:8px 0}.kpis em{font-style:normal;color:var(--green);font-size:12px;font-weight:800}.grid2{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.pipeline div{border:1px solid var(--line);border-radius:14px;padding:14px;background:#f8fafc}.pipeline span{color:var(--muted);font-size:12px}.pipeline b{font-size:24px}.kanban{height:calc(100vh - 190px);overflow:auto;display:grid;grid-auto-flow:column;grid-auto-columns:280px;gap:14px;padding-bottom:10px}.stage{background:#e8eef7;border:1px solid #d5dfed;border-radius:18px;padding:12px;overflow:auto}.stage h3{display:flex;justify-content:space-between;margin:0 0 12px}.stage h3 span{background:white;border-radius:99px;padding:3px 8px;color:var(--muted)}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:13px;margin-bottom:10px;box-shadow:0 8px 20px rgba(15,23,42,.08)}.card span{display:block;color:var(--muted);font-size:12px;margin:6px 0}.card strong{color:var(--blue)}.card.ok{border-color:#bbf7d0;background:#f0fdf4}.table{padding:0;overflow:auto}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}th{background:#f8fafc;color:#475569;font-size:11px;text-transform:uppercase;position:sticky;top:0}.tag,.status{display:inline-flex;border-radius:99px;padding:5px 8px;font-size:11px;font-weight:900;margin-right:5px;background:#eaf2ff;color:var(--blue)}.tag.green,.status{background:#ecfdf5;color:#047857}.status.wait{background:#fff7ed;color:#c2410c}.empty{height:calc(100vh - 190px);display:grid;place-items:center;text-align:center}footer{border-top:1px solid var(--line);background:white;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#64748b;font-size:12px;font-weight:800}.collapsed{grid-template-columns:86px 1fr}.collapsed .brand div:nth-child(2),.collapsed .nav span,.collapsed .sidefoot{display:none}.collapsed .brand,.collapsed .nav button{justify-content:center}@media(max-width:1100px){.nx-app{grid-template-columns:86px 1fr}.brand div:nth-child(2),.nav span,.sidefoot,.search{display:none}.kpis{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}