/* General Body & Layout */ body { font-family: 'Inter', sans-serif; background-color: #f8f9fa; transition: margin-left .3s; } .wrapper { display: flex; width: 100%; } /* Sidebar Styles */ #sidebar { width: 280px; position: fixed; top: 0; left: 0; height: 100vh; z-index: 999; background: #4C5958; color: #fff; transition: all 0.3s; padding-bottom: 0; /* Allow profile to stick to bottom */ display: flex; flex-direction: column; } #sidebar.mini { width: 80px; } #sidebar.mini .sidebar-header h3, #sidebar.mini .menu-item-text, #sidebar.mini .profile-text, #sidebar.mini .dropdown-toggle::after { display: none; } #sidebar.mini .menu-item .lucide { margin-right: 0; } #sidebar.mini .profile-section .lucide-user-circle { margin: 0 auto; } .sidebar-header { padding: 20px; background: #4C5958; text-align: center; border-bottom: 1px solid #5a6867; flex-shrink: 0; /* Prevent header from shrinking */ } .sidebar-header h3 { color: white; font-weight: 700; margin-bottom: 0; font-size: 1.5rem; white-space: nowrap; } /* Profile Section */ .profile-section { padding: 15px 20px; border-top: 1px solid #5a6867; /* Moved from bottom */ color: white; flex-shrink: 0; /* Prevent profile from shrinking */ } .profile-section .dropdown-toggle { color: white; text-decoration: none; display: flex; align-items: center; padding: 5px 0; } .profile-section .lucide-user-circle { width: 40px; height: 40px; margin-right: 10px; } .profile-section .profile-text span { display: block; white-space: nowrap; } .profile-section .profile-text .username { font-weight: bold; } .profile-section .dropdown-menu { background-color: #3f4a49; border: none; } .profile-section .dropdown-item { color: #e0e0e0; } .profile-section .dropdown-item:hover { background-color: #5a6867; color: white; } /* Menu List Styles */ .menu-list { list-style: none; padding: 10px 0; margin: 0; flex-grow: 1; /* Allow menu to fill space */ overflow-y: auto; /* Add scroll if needed */ } .menu-list a { display: flex; align-items: center; padding: 12px 20px; text-decoration: none; transition: background 0.2s; font-size: 0.95rem; white-space: nowrap; } .menu-list .lucide { margin-right: 15px; width: 20px; height: 20px; flex-shrink: 0; } /* Top Level Items */ .menu-section > a { color: #DBF227; font-weight: 500; letter-spacing: 0.5px; } .menu-section > a:hover { background: #3f4a49; } /* Sub Items (Level 2) */ .sub-menu { list-style: none; padding-left: 0; background: rgba(0,0,0,0.1); } .sub-menu a { /* NOTE: Using white for better contrast against the dark sidebar. The requested #10403B is too dark for this background. */ color: #FFFFFF; font-size: 0.9rem; padding-left: 35px; } .sub-menu a:hover { background: #3f4a49; } .sub-menu .lucide { width: 18px; height: 18px; } /* Sub-Sub Items (Level 3) */ .sub-sub-menu { list-style: none; padding-left: 0; background: rgba(0,0,0,0.15); } .sub-sub-menu a { color: #e0e0e0; /* Slightly dimmer white */ font-size: 0.85rem; padding-left: 55px; } .sub-sub-menu a:hover { background: #3f4a49; } /* Dropdown Arrow for collapsible menus */ .dropdown-toggle::after { display: inline-block; margin-left: auto; vertical-align: .255em; content: ""; border-top: .3em solid; border-right: .3em solid transparent; border-bottom: 0; border-left: .3em solid transparent; transition: transform .2s ease-in-out; } .dropdown-toggle[aria-expanded="true"]::after { transform: rotate(-180deg); } /* Badge for notifications */ .badge-notification { background-color: #dc3545; color: white; border-radius: 50%; padding: 0.2em 0.5em; font-size: 0.7rem; margin-left: auto; margin-right: 10px; } /* Main Content Area */ #content { width: 100%; padding: 20px; min-height: 100vh; transition: all 0.3s; margin-left: 280px; } #content.full-width { margin-left: 80px; } .content-header { display: flex; align-items: center; margin-bottom: 20px; } #sidebar-toggle { background: none; border: none; font-size: 1.5rem; color: #333; cursor: pointer; } /* Login Form Styles (keep existing) */ .login-container { min-height: 100vh; display: flex; align-items: center; justify-content: center; } .login-card { max-width: 450px; width: 100%; padding: 2rem; border: none; border-radius: 0.5rem; box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1); } /* Responsive */ @media (max-width: 768px) { #sidebar { left: -280px; } #sidebar.active { left: 0; } #content { margin-left: 0; } #content.full-width { margin-left: 0; } body.sidebar-open { overflow: hidden; } } /* Sidebar Logo */ .sidebar-logo { max-width: 80%; height: auto; display: block; margin: 0 auto 1rem; } #sidebar.mini .sidebar-logo { display: none; /* Oculta o logo quando o menu está minimizado */ } #sidebar.mini .sidebar-header { padding: 10px 0; } /* Adiciona um ícone para substituir o logo quando minimizado */ #sidebar.mini .sidebar-header::before { content: ''; display: block; width: 32px; height: 32px; margin: 0 auto; background-image: url('../pasted-20251029-150345-2b427067.png'); background-size: contain; background-repeat: no-repeat; background-position: center; }