*{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:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px #0000001a;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1000}.navbar-brand{font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none;display:flex;align-items:center;gap:.5rem}.navbar-links{display:flex;align-items:center;gap:1.5rem;flex:1;margin-left:2rem}.navbar-link{color:#fff;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:8px;transition:all .3s ease;position:relative}.navbar-link:hover{background:#fff3;transform:translateY(-2px)}.navbar-link.active{background:#ffffff4d}.navbar-actions{display:flex;align-items:center;gap:1rem}.btn-logout{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);padding:.5rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.btn-logout:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.app-layout{min-height:100vh;display:flex;flex-direction:column}main{flex:1;padding:2rem;max-width:1200px;width:100%;margin:0 auto}.auth-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:2rem}.auth-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;padding:3rem;width:100%;max-width:450px;animation:slideUp .5s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:2rem}.auth-title{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.auth-subtitle{color:#666;font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-weight:500;color:#333;font-size:.9rem}.form-input{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:all .3s ease;background:#f8f9fa}.form-input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.form-input:disabled{background:#f0f0f0;cursor:not-allowed}.error-message{background:#fee;color:#c33;padding:.875rem 1rem;border-radius:10px;border-left:4px solid #c33;font-size:.9rem;animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;margin-top:1.5rem;color:#666;font-size:.9rem}.auth-link{color:#667eea;text-decoration:none;font-weight:500;transition:color .3s ease}.auth-link:hover{color:#764ba2;text-decoration:underline}.dashboard-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.dashboard-title{font-size:2.5rem;font-weight:700;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.3),0 0 10px rgba(0,0,0,.2);margin:0;letter-spacing:.05em}.dashboard-subtitle{font-size:1.1rem;font-style:italic;color:#f0f0f0;font-weight:300;letter-spacing:.1em;font-family:Georgia,Times New Roman,serif;text-shadow:1px 1px 3px rgba(0,0,0,.4),0 0 8px rgba(0,0,0,.2);margin-top:.25rem}@media(max-width:768px){.navbar{padding:1rem;flex-wrap:wrap}.navbar-links{margin-left:0;gap:.5rem;flex-wrap:wrap}.navbar-link{padding:.4rem .8rem;font-size:.9rem}.auth-card{padding:2rem 1.5rem}.auth-title{font-size:1.5rem}main{padding:1rem}.dashboard-title{font-size:1.8rem}.dashboard-subtitle{font-size:.95rem}}
