@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

:root {
    --primary: #0061f2;
    --accent: #00cfd5;
    --gradient: linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);
    --bg-body: #f4f7fe;
    --white: #ffffff;
    --text-main: #2d3748;
    --text-muted: #a0aec0;
}

body { font-family: 'Poppins', sans-serif; background-color: var(--bg-body); color: var(--text-main); margin: 0; }

/* Wrapper e Sidebar */
.wrapper { display: flex; width: 100%; align-items: stretch; }

#sidebar {
    min-width: 260px; max-width: 260px;
    background: var(--gradient); color: var(--white);
    min-height: 100vh; transition: all 0.3s;
    box-shadow: 4px 0 15px rgba(0,0,0,0.1); z-index: 1001;
}

#sidebar .sidebar-header { padding: 30px 25px; border-bottom: 1px solid rgba(255,255,255,0.1); text-align: center; }
#sidebar .nav-title { padding: 15px 25px 5px; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 1px; opacity: 0.6; font-weight: 700; }
#sidebar ul li a { padding: 12px 25px; display: flex; align-items: center; color: rgba(255,255,255,0.8); text-decoration: none; font-size: 0.9rem; }
#sidebar ul li a i { margin-right: 12px; font-size: 1.1rem; }
#sidebar ul li.active > a, #sidebar ul li a:hover { background: rgba(255,255,255,0.15); color: #fff; border-left: 4px solid #fff; }

/* Main Content */
#content { width: 100%; }
.navbar { background: var(--white) !important; padding: 15px 30px !important; box-shadow: 0 2px 10px rgba(0,0,0,0.03); }

/* Metric Cards */
.metric-card {
    background: var(--white); padding: 20px; border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.02); border: none;
    transition: transform 0.3s;
}
.metric-card:hover { transform: translateY(-5px); }
.metric-card span { color: var(--text-muted); font-size: 0.85rem; font-weight: 600; }
.metric-card h3 { color: var(--text-main); font-weight: 700; margin: 5px 0 0; }

/* Mobile App Styles */
.mobile-nav {
    display: none; position: fixed; bottom: 0; width: 100%;
    background: var(--white); height: 70px; z-index: 2000;
    box-shadow: 0 -5px 20px rgba(0,0,0,0.05); justify-content: space-around;
    align-items: center; border-top-left-radius: 25px; border-top-right-radius: 25px;
}
.nav-item-mobile { display: flex; flex-direction: column; align-items: center; color: var(--text-muted); text-decoration: none; font-size: 0.7rem; font-weight: 600; }
.nav-item-mobile i { font-size: 1.4rem; margin-bottom: 4px; }
.nav-item-mobile.active { color: var(--primary); }

@media (max-width: 992px) {
    #sidebar { position: fixed; left: -260px; height: 100%; }
    #sidebar.active { left: 0; }
    .mobile-nav { display: flex; }
    #content { padding-bottom: 90px; }
    .navbar { display: none; }
}

.sidebar-overlay { display: none; position: fixed; width: 100vw; height: 100vh; background: rgba(0,0,0,0.4); z-index: 2500; top: 0; }
.sidebar-overlay.active { display: block; }