:root{--bg: #eef2f5;--ink: #1b242b;--muted: #5b6c78;--card: #ffffff;--line: #d2dbe2;--brand: #0f5f80;--brand-2: #1e87af}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(180deg,#e9eef2,#f6f8fa)}.centered{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(520px,100%);background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 14px 30px #00000014}.auth-card form{display:grid;gap:10px}.shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{padding:18px;background:#0d1f2a;color:#e8f2f7;border-right:1px solid #1b3342}.sidebar h1{margin:0;font-size:1.2rem}.sidebar nav{margin-top:16px;display:grid;gap:8px}.nav-item{color:#b9d1df;text-decoration:none;padding:9px 10px;border-radius:8px;font-weight:600}.nav-item:hover{background:#ffffff14}.nav-item.active{background:linear-gradient(180deg,var(--brand-2),var(--brand));color:#fff}.workspace{padding:16px}.topbar{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.topbar-actions{display:flex;gap:10px;align-items:center}.content{margin-top:14px}.page{display:grid;gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px}.cardless{background:transparent;border:0;padding:0}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}.kpi span{display:block;font-size:.82rem;color:var(--muted);margin-bottom:6px}.kpi strong{font-size:1.3rem}label{font-weight:600;font-size:.9rem}input,select{width:100%;border:1px solid #c5d1db;border-radius:8px;padding:9px 10px;font:inherit}textarea{width:100%;border:1px solid #c5d1db;border-radius:8px;padding:9px 10px;font:inherit;resize:vertical}button{border:0;border-radius:8px;padding:9px 12px;font-weight:600;cursor:pointer;color:#fff;background:linear-gradient(180deg,var(--brand-2),var(--brand))}button.secondary{background:#dbe5ec;color:#1f3340}button.danger{background:#b3261e}.row-between{display:flex;justify-content:space-between;align-items:center;gap:10px}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.grid-form.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stack-form{display:grid;gap:10px}.split{display:grid;grid-template-columns:1.3fr 1fr;gap:12px}.side{align-self:start}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #d9e2e8;padding:8px;vertical-align:top}thead th{font-size:.82rem;color:#425765;text-transform:uppercase;letter-spacing:.02em}tr.selected{background:#e9f4fa}.linkish{background:transparent;border:0;color:var(--brand);padding:0;font-weight:700;cursor:pointer}.tiny{font-size:.8rem;word-break:break-all}.timeline{display:grid;gap:8px}.timeline-item{border:1px solid #d6e2eb;border-radius:10px;padding:10px;background:#f9fcfe}.badge{border-radius:999px;padding:2px 8px;background:#d7f1e8;color:#0f6f52;font-size:.8rem;font-weight:700}.badge.warn{background:#ffe1de;color:#9a2a23}.stack-compact{display:grid;gap:6px}.muted{color:var(--muted)}.error{color:#b3261e;font-weight:600}pre{margin:0;white-space:pre-wrap;background:#f7fafc;border:1px solid #dde5eb;border-radius:10px;padding:10px}@media (max-width: 980px){.shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #1b3342}.split{grid-template-columns:1fr}}
