*{margin:0;padding:0;box-sizing:border-box}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,#root{min-height:100vh}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-box{background:#fff;padding:40px;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:400px}.login-box h1{margin:0 0 8px;color:#333;font-size:28px;text-align:center}.subtitle{color:#666;text-align:center;margin:0 0 30px;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e1e1e1;border-radius:8px;font-size:16px;transition:border-color .3s,box-shadow .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input::placeholder{color:#aaa}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;font-size:14px}.remember-me{display:flex;align-items:center;gap:8px;color:#666;cursor:pointer}.remember-me input{width:16px;height:16px;cursor:pointer}.forgot-password{color:#667eea;text-decoration:none;font-weight:500}.forgot-password:hover{text-decoration:underline}.login-button{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.login-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.login-button:active{transform:translateY(0)}.error-message{background:#fee;color:#c00;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;text-align:center}.signup-link{text-align:center;margin-top:24px;color:#666;font-size:14px}.signup-link a{color:#667eea;text-decoration:none;font-weight:600}.signup-link a:hover{text-decoration:underline}.signup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#11998e,#38ef7d);padding:20px}.signup-box{background:#fff;padding:40px;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:400px}.signup-box h1{margin:0 0 8px;color:#333;font-size:28px;text-align:center}.signup-container .subtitle{color:#666;text-align:center;margin:0 0 30px;font-size:14px}.signup-container .form-group{margin-bottom:18px}.signup-container .form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500;font-size:14px}.signup-container .form-group input{width:100%;padding:12px 16px;border:2px solid #e1e1e1;border-radius:8px;font-size:16px;transition:border-color .3s,box-shadow .3s;box-sizing:border-box}.signup-container .form-group input:focus{outline:none;border-color:#11998e;box-shadow:0 0 0 3px #11998e1a}.signup-container .form-group input::placeholder{color:#aaa}.terms{margin-bottom:24px;font-size:13px}.terms label{display:flex;align-items:flex-start;gap:10px;color:#666;cursor:pointer}.terms input{width:16px;height:16px;margin-top:2px;cursor:pointer}.terms a{color:#11998e;text-decoration:none}.terms a:hover{text-decoration:underline}.signup-button{width:100%;padding:14px;background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.signup-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #11998e66}.signup-button:active{transform:translateY(0)}.signup-container .error-message{background:#fee;color:#c00;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;text-align:center}.login-link{text-align:center;margin-top:24px;color:#666;font-size:14px}.login-link a{color:#11998e;text-decoration:none;font-weight:600}.login-link a:hover{text-decoration:underline}.dashboard-container{min-height:100vh;background:#f5f7fa}.dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 20px #0000001a}.dashboard-header h1{margin:0;font-size:24px}.header-right{display:flex;align-items:center;gap:16px}.user-email{font-size:14px;opacity:.9}.logout-button{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.logout-button:hover{background:#ffffff4d;border-color:#ffffff80}.dashboard-main{padding:30px 40px;max-width:1200px;margin:0 auto}.welcome-card{background:#fff;padding:30px;border-radius:16px;box-shadow:0 4px 20px #0000000d;margin-bottom:30px}.welcome-card h2{margin:0 0 10px;color:#333;font-size:28px}.welcome-card p{margin:0;color:#666;font-size:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:24px;border-radius:16px;box-shadow:0 4px 20px #0000000d;display:flex;align-items:center;gap:16px;transition:transform .3s,box-shadow .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001a}.stat-icon{font-size:32px;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-info h3{margin:0;font-size:28px;color:#333}.stat-info p{margin:4px 0 0;color:#888;font-size:14px}.recent-activity{background:#fff;padding:30px;border-radius:16px;box-shadow:0 4px 20px #0000000d}.recent-activity h3{margin:0 0 20px;color:#333;font-size:20px}.recent-activity ul{list-style:none;padding:0;margin:0}.recent-activity li{display:flex;align-items:center;padding:16px 0;border-bottom:1px solid #eee;gap:12px}.recent-activity li:last-child{border-bottom:none}.activity-dot{width:10px;height:10px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;flex-shrink:0}.recent-activity li span:nth-child(2){flex:1;color:#333}.activity-time{color:#888;font-size:13px}@media(max-width:768px){.dashboard-header{padding:16px 20px}.dashboard-main{padding:20px}.stats-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}}
