body,#root{margin:0;height:100vh;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif}.sidebar{width:240px;padding:12px;border-right:1px solid #e5e7eb;height:100vh;display:flex;flex-direction:column;background-color:#fafafa;position:relative;transition:transform .3s ease}.user-profile-container{position:relative;margin-bottom:16px}.user-profile{display:flex;align-items:center;gap:10px;padding:8px;border-radius:6px;cursor:pointer;transition:background-color .2s;background-color:transparent}.user-profile:hover{background-color:#f3f4f6}.user-info{flex:1;min-width:0;overflow:hidden}.user-name{font-size:14px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-arrow{font-size:12px;transition:transform .2s}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown{position:absolute;top:100%;left:8px;right:8px;margin-top:4px;background-color:#fff;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:4px;z-index:1000;border:1px solid #e5e7eb}.user-menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background-color:transparent;border-radius:4px;cursor:pointer;font-size:14px;color:#374151;text-align:left;transition:background-color .15s}.user-menu-item:hover{background-color:#f3f4f6}.divider{height:1px;background-color:#e5e7eb;margin:4px 0}.sidebar-nav{flex:1;overflow-y:auto}.nav-list{list-style:none;padding:0;margin:0}.nav-link{padding:8px 12px;border-radius:6px;font-size:14px;color:#333;text-decoration:none;display:block;transition:background-color .2s}.nav-link:hover{background-color:#f3f4f6}.nav-dropdown-toggle{cursor:pointer;font-weight:700;display:flex;justify-content:space-between;align-items:center}.arrow{font-size:12px;transition:transform .2s}.arrow.open{transform:rotate(90deg)}.dropdown-list{list-style:none;padding:4px 0 4px 16px;margin:0}.dropdown-link{padding:6px 12px;border-radius:4px;font-size:13px;color:#333;text-decoration:none;display:block;transition:background-color .2s}.dropdown-link:hover{background-color:#f3f4f6}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;z-index:1000;transform:translate(-100%);box-shadow:2px 0 8px #00000026}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;inset:0;background-color:#00000080;z-index:999}.user-profile{padding:10px}.user-name{font-size:15px}.user-email{font-size:13px}.nav-link,.nav-dropdown-toggle{padding:12px;font-size:15px}.dropdown-link{padding:10px 12px;font-size:14px}}.app-container{display:flex;height:100vh;overflow:hidden}.mobile-header{display:none}.content{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column}.content h1{margin-top:0}body,html{margin:0;padding:0;height:100%}@media(max-width:768px){.app-container{flex-direction:column}.mobile-header{display:flex;align-items:center;padding:12px 16px;background-color:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #0000001a}.hamburger-btn{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;color:#1f2937;line-height:1;margin-right:12px}.hamburger-btn:active{background-color:#f3f4f6;border-radius:4px}.app-title{font-size:18px;font-weight:600;color:#1f2937}.content{padding:16px;height:calc(100vh - 52px)}}@media(max-width:480px){.content{padding:12px}.mobile-header{padding:10px 12px}.app-title{font-size:16px}}.loginContainer{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem 0;background:#000}.loginCard{width:90%;max-width:400px;background:linear-gradient(0deg,#0d0d0d 95%,#1a1a1a);border:solid 1px hsl(0,0%,10%);border-top:1px solid hsl(0,0%,20%);box-shadow:none;border-radius:.5rem;padding:2rem}.loginHeader{margin-bottom:2rem;text-align:center}.loginHeader h2{font-family:Manrope,sans-serif;font-weight:700;font-size:1.6rem;line-height:1em;color:#f2f2f2;margin-bottom:.5rem}.loginHeader p{font-family:Manrope,sans-serif;font-weight:400;font-size:1rem;line-height:1em;color:#8c8c8c}.loginForm{display:flex;flex-direction:column;gap:1.5rem}.inputGroup{display:flex;flex-direction:column;gap:.5rem}.inputGroup label{font-family:Manrope,sans-serif;font-weight:600;font-size:.8rem;line-height:1em;color:#bfbfbf;text-transform:uppercase;letter-spacing:.05em}.inputGroup input{background:#1a1a1a;border:solid 1px hsl(0,0%,10%);border-radius:.5rem;padding:.75rem 1rem;font-family:Manrope,sans-serif;font-weight:400;font-size:1rem;line-height:1em;color:#f2f2f2;transition:all .2s ease}.inputGroup input:focus{outline:none;border-color:#333;background:#0d0d0d}.inputGroup input::placeholder{color:#8c8c8c}.submitButton{background:#f2f2f2;color:#0d0d0d;font-family:Manrope,sans-serif;font-weight:700;font-size:1rem;line-height:1em;padding:.75rem 1rem;border-radius:.5rem;border:none;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.submitButton:hover{opacity:.9;transform:translateY(-1px)}.submitButton:active{transform:translateY(0)}.submitButton:disabled{opacity:.5;cursor:not-allowed;transform:none}.message{padding:.75rem 1rem;border-radius:.5rem;font-family:Manrope,sans-serif;font-weight:400;font-size:.8rem;line-height:1em;text-align:center;margin-top:1rem}.message.error{background:#dc26261a;border:solid 1px rgba(220,38,38,.3);color:#f87171}.message.success{background:#22c55e1a;border:solid 1px rgba(34,197,94,.3);color:#86efac}.message.info{background:#3b82f61a;border:solid 1px rgba(59,130,246,.3);color:#93c5fd}@media(max-width:50rem){.loginContainer{padding:1rem}.loginCard{width:100%;padding:1.5rem}.loginHeader h2{font-size:1.4rem}}
