*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#333;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{max-width:1200px;margin:0 auto;padding:0 20px}nav{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:1rem 2rem;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}nav a{color:#fff;text-decoration:none;margin-right:20px;font-weight:500;transition:color .3s ease;padding:8px 12px;border-radius:4px}nav a:hover{background-color:#ffffff1a;color:#fff}nav button{background:rgba(255,255,255,.2);color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .3s ease}nav button:hover{background:rgba(255,255,255,.3)}nav select{background:rgba(255,255,255,.2);color:#fff;border:none;padding:8px 12px;border-radius:4px;outline:none}main{min-height:calc(100vh - 80px);padding:2rem 0}.card{background:white;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:2rem;margin-bottom:2rem;transition:box-shadow .3s ease}.card:hover{box-shadow:0 8px 25px #00000026}form{max-width:600px;margin:0 auto;background:white;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a}.form-group{margin-bottom:1.5rem}label{display:block;margin-bottom:.5rem;font-weight:600;color:#555}input,select,textarea{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:6px;font-size:16px;transition:border-color .3s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:12px 24px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-block;text-decoration:none}button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}button:active{transform:translateY(0)}button.secondary{background:#6c757d}button.secondary:hover{background:#5a6268}button.danger{background:#dc3545}button.danger:hover{background:#c82333}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2ecc71 0%,#27ae60 50%,#16a085 100%);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="10" cy="10" r="2" fill="white" opacity="0.1"/><circle cx="30" cy="20" r="1.5" fill="white" opacity="0.1"/><circle cx="50" cy="15" r="1" fill="white" opacity="0.1"/><circle cx="70" cy="25" r="2" fill="white" opacity="0.1"/><circle cx="90" cy="10" r="1.5" fill="white" opacity="0.1"/><circle cx="20" cy="40" r="1" fill="white" opacity="0.1"/><circle cx="40" cy="45" r="2" fill="white" opacity="0.1"/><circle cx="60" cy="40" r="1.5" fill="white" opacity="0.1"/><circle cx="80" cy="50" r="1" fill="white" opacity="0.1"/><circle cx="15" cy="70" r="2" fill="white" opacity="0.1"/><circle cx="35" cy="80" r="1.5" fill="white" opacity="0.1"/><circle cx="55" cy="75" r="1" fill="white" opacity="0.1"/><circle cx="75" cy="85" r="2" fill="white" opacity="0.1"/><circle cx="95" cy="70" r="1.5" fill="white" opacity="0.1"/></svg>');animation:float 20s infinite linear}@keyframes float{0%{transform:translateY(100vh) rotate(0)}to{transform:translateY(-100vh) rotate(360deg)}}.login-form{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:3rem;border-radius:20px;box-shadow:0 25px 50px #0003;width:100%;max-width:420px;border:1px solid rgba(255,255,255,.2);position:relative;z-index:1}.login-header{text-align:center;margin-bottom:2rem}.login-icon{font-size:4rem;margin-bottom:1rem;display:block;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.login-form h2{color:#2c3e50;font-size:1.8rem;margin-bottom:.5rem}.login-form p{color:#7f8c8d;font-size:1rem;margin-bottom:0}.dashboard{padding:2rem 0}.dashboard-header{text-align:center;margin-bottom:3rem}.dashboard-header h1{color:#333;font-size:2.5rem;margin-bottom:1rem}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:3rem}.stat-card{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:2rem;border-radius:12px;text-align:center}.stat-card h3{font-size:2rem;margin-bottom:.5rem}.stat-card p{opacity:.9}table{width:100%;border-collapse:collapse;background:white;border-radius:8px;overflow:hidden;box-shadow:0 4px 6px #0000001a}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid #e1e5e9}th{background:#f8f9fa;font-weight:600;color:#555}tr:hover{background:#f8f9fa}.chart-container{background:white;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem}.chatbot-container{max-width:800px;margin:0 auto;background:white;border-radius:8px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.chat-header{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:1rem 2rem;text-align:center}.chat-messages{height:400px;overflow-y:auto;padding:1rem;background:#f8f9fa}.message{margin-bottom:1rem;padding:.75rem 1rem;border-radius:18px;max-width:70%}.message.user{background:#667eea;color:#fff;margin-left:auto}.message.bot{background:white;color:#333;border:1px solid #e1e5e9}.chat-input{display:flex;padding:1rem;gap:1rem}.chat-input input{flex:1;margin:0}@media (max-width: 768px){nav{padding:1rem;flex-wrap:wrap}nav a{margin-right:10px;margin-bottom:10px}.dashboard-stats{grid-template-columns:1fr}form{padding:1.5rem;margin:0 1rem}.card{padding:1.5rem;margin:0 1rem 2rem}}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:1.2rem;color:#666}.error{background:#f8d7da;color:#721c24;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #f1aeb5}.success{background:#d1edff;color:#0c5460;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #b8daff}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}
