:root { --primary: #8cc63f; --dark: #4d4d4d; --light: #f4f7f6; --text: #333; }
body { font-family: 'Segoe UI', Arial, sans-serif; background: var(--light); margin: 0; color: var(--text); }
.sidebar { width: 240px; background: var(--dark); height: 100vh; color: white; position: fixed; display: flex; flex-direction: column; }
.sidebar .logo-area { padding: 20px; background: #fff; text-align: center; border-bottom: 3px solid var(--primary); }
.sidebar img { max-width: 180px; height: auto; }
.sidebar a { color: white; text-decoration: none; padding: 15px 25px; display: block; border-left: 4px solid transparent; }
.sidebar a:hover { background: #5a5a5a; border-left: 4px solid var(--primary); }
.main-content { margin-left: 240px; padding: 30px; width: calc(100% - 240px); }
.card { background: white; padding: 20px; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.05); margin-bottom: 20px; }
.btn-save { background: var(--primary); color: white; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; font-weight: bold; }
table { width: 100%; border-collapse: collapse; background: white; border-radius: 8px; overflow: hidden; }
th { background: var(--dark); color: white; padding: 12px; text-align: left; }
td { padding: 12px; border-bottom: 1px solid #eee; }
.badge { padding: 4px 8px; border-radius: 4px; font-size: 11px; font-weight: bold; text-transform: uppercase; }
.badge-admin { background: var(--primary); color: white; }
.badge-analista { background: #bdc3c7; color: var(--dark); }