@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--azul: #1b2a6b;--azul-hover: #24378a;--rojo: #e4032e;--amarillo: #fdb813;--verde: #1c7a3b;--bg: #f5f6f8;--surface: #ffffff;--surface-hover: #f0f2f5;--border: #e2e5ea;--text: #1a1f2e;--text-muted: #6b7280;--accent-amber: var(--amarillo);--accent-red: var(--rojo);--accent-green: var(--verde);--accent-blue: var(--azul);--font-display: "Barlow Condensed", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit}button{font-family:var(--font-body);cursor:pointer}:focus-visible{outline:2px solid var(--azul);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.app-shell{display:flex;min-height:100vh}.sidebar{width:230px;background:var(--surface);border-right:1px solid var(--border);padding:24px 16px;display:flex;flex-direction:column;gap:4px}.sidebar-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px}.sidebar-brand img{width:40px;height:40px;border-radius:50%;flex-shrink:0}.sidebar-brand-text{font-family:var(--font-display);font-size:1.15rem;font-weight:800;color:var(--azul);line-height:1.1}.sidebar-brand-text span{display:block;font-family:var(--font-mono);font-size:.6rem;color:var(--rojo);letter-spacing:.1em;margin-top:3px;font-weight:600}.nav-link{display:block;padding:10px 12px;border-radius:6px;color:var(--text-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:background .15s,color .15s}.nav-link:hover{background:var(--surface-hover);color:var(--text)}.nav-link.active{background:#1b2a6b14;color:var(--azul);font-weight:600}.main-content{flex:1;padding:32px 40px;max-width:1200px}.page-title{font-family:var(--font-display);font-size:2rem;font-weight:800;color:var(--azul);margin:0 0 4px}.page-subtitle{color:var(--text-muted);font-size:.9rem;margin:0 0 28px}.gauge-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.gauge-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 22px;position:relative;overflow:hidden}.gauge-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tick-color, var(--border))}.gauge-card.ok{--tick-color: var(--verde)}.gauge-card.warn{--tick-color: var(--amarillo)}.gauge-card.danger{--tick-color: var(--rojo)}.gauge-value{font-family:var(--font-mono);font-size:2.4rem;font-weight:600;line-height:1;margin-bottom:6px}.gauge-card.ok .gauge-value{color:var(--verde)}.gauge-card.warn .gauge-value{color:#b97c0a}.gauge-card.danger .gauge-value{color:var(--rojo)}.gauge-label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.data-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:14px 18px;border-bottom:1px solid var(--border);font-weight:700;background:var(--bg)}tbody tr{border-bottom:1px solid var(--border);border-left:3px solid transparent;transition:background .15s}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--surface-hover)}tbody tr.row-ok{border-left-color:var(--verde)}tbody tr.row-warn{border-left-color:var(--amarillo)}tbody tr.row-danger{border-left-color:var(--rojo)}td{padding:14px 18px;font-size:.9rem}.mono{font-family:var(--font-mono)}.badge{display:inline-block;padding:3px 10px;border-radius:100px;font-size:.75rem;font-weight:600;font-family:var(--font-mono)}.badge.ok{background:#1c7a3b1a;color:var(--verde)}.badge.warn{background:#fdb8132e;color:#a56a05}.badge.danger{background:#e4032e1a;color:var(--rojo)}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:28px;max-width:480px}.field{margin-bottom:18px}.field label{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:6px;font-weight:500}.field input,.field select{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:var(--font-body);font-size:.9rem}.field input:focus,.field select:focus{border-color:var(--azul);outline:none}.checkbox-field{display:flex;align-items:center;gap:8px;margin-bottom:18px}.checkbox-field input{width:auto}.checkbox-field label{margin:0;color:var(--text);font-size:.9rem}.btn{display:inline-block;padding:10px 20px;border-radius:6px;border:none;font-weight:600;font-size:.9rem}.btn-primary{background:var(--rojo);color:#fff}.btn-primary:hover{background:#c8022a}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;border:1px solid var(--border);color:var(--azul)}.btn-secondary:hover{background:var(--surface-hover)}.error-text{color:var(--rojo);font-size:.85rem;margin-top:-8px;margin-bottom:16px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.search-input{padding:9px 14px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem;width:280px}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);position:relative}.login-screen:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--rojo) 50%,var(--azul) 50%)}.login-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:40px;width:360px;box-shadow:0 4px 24px #1b2a6b0f}.login-logo{display:block;width:72px;height:72px;border-radius:50%;margin:0 auto 16px}.login-brand{font-family:var(--font-display);font-size:1.6rem;font-weight:800;color:var(--azul);text-align:center;margin-bottom:4px}.login-brand-sub{text-align:center;color:var(--rojo);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;margin-bottom:32px;font-weight:600}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}
