@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";html{font-size:80%}:root{--primary:#f48fb1;--primary-light:#fce4ec;--primary-dark:#c2185b;--secondary:#ce93d8;--accent:#ffccbc;--text-primary:#3e2723;--text-secondary:#8d6e63;--bg-color:#fafafa;--white:#fff;--glass-bg:#ffffffa6;--glass-border:#fffc;--glass-shadow:0 8px 32px 0 #f48fb126;--transition:all .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(at 0 0,#f48fb14d 0,#0000 50%),radial-gradient(at 100% 0,#ce93d84d 0,#0000 50%),radial-gradient(at 100% 100%,#ffccbc4d 0,#0000 50%);background-attachment:fixed;min-height:100vh;font-family:Outfit,sans-serif;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700}a{color:var(--primary);transition:var(--transition);text-decoration:none}a:hover{color:var(--primary-dark)}button{cursor:pointer;transition:var(--transition);border:none;outline:none;font-family:Outfit,sans-serif}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:24px}.glass-input{width:100%;color:var(--text-primary);transition:var(--transition);background:#fffc;border:1px solid #f48fb14d;border-radius:16px;padding:16px 20px;font-family:Outfit,sans-serif;font-size:1rem}.glass-input:focus{background:var(--white);border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #f48fb133}.glass-input::placeholder{color:var(--text-secondary);opacity:.7}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--secondary));color:var(--white);border-radius:16px;padding:16px 32px;font-size:1.125rem;font-weight:600;box-shadow:0 4px 15px #f48fb166}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #f48fb180}.btn-primary:active{transform:translateY(1px)}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{text-align:center;width:100%;max-width:450px;padding:40px}.auth-logo{background:linear-gradient(135deg, var(--primary), var(--accent));width:80px;height:80px;color:var(--white);border-radius:20px;justify-content:center;align-items:center;margin:0 auto 24px;display:flex;box-shadow:0 10px 20px #f48fb14d}.auth-title{margin-bottom:8px;font-size:2rem}.auth-subtitle{color:var(--text-secondary);margin-bottom:32px}.form-group{text-align:left;margin-bottom:24px}.form-group label{color:var(--text-primary);margin-bottom:8px;font-weight:500;display:block}.error-message{color:#d32f2f;background:#ffebee;border:1px solid #ffcdd2;border-radius:8px;margin-bottom:20px;padding:12px;font-size:.9rem}.dashboard-layout{min-height:100vh;display:flex}.sidebar{z-index:10;width:280px;height:100vh;padding:24px;position:fixed}.sidebar-inner{flex-direction:column;height:100%;padding:24px 16px;display:flex}.main-content{flex:1;margin-left:280px;padding:24px 40px}.nav-item{color:var(--text-secondary);transition:var(--transition);border-radius:12px;align-items:center;margin-bottom:8px;padding:14px 20px;font-weight:500;display:flex}.nav-item:hover,.nav-item.active{color:var(--primary-dark);background:#f48fb126}.nav-item svg{margin-right:12px}.top-bar{justify-content:space-between;align-items:center;margin-bottom:40px;display:flex}.page-title{color:var(--text-primary);font-size:2rem}.user-profile{align-items:center;gap:12px;display:flex}.avatar{background:var(--primary);color:var(--white);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:32px;display:grid}.stat-card{align-items:center;gap:20px;padding:24px;display:flex}.stat-icon{width:56px;height:56px;color:var(--white);border-radius:16px;justify-content:center;align-items:center;display:flex}.stat-info h3{margin-bottom:4px;font-size:2rem}.stat-info p{color:var(--text-secondary);font-size:.9rem}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUpFade}
