@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary-color:#16a34a;--primary-hover:#15803d;--secondary-color:#2563eb;--sidebar-bg:#1f2937;--sidebar-text:#9ca3af;--sidebar-text-hover:#f3f4f6;--bg-color:#f3f4f6;--bg-surface:#fff;--text-primary:#111827;--text-secondary:#6b7280;--border-color:#e5e7eb;--error-color:#ef4444;--success-color:#16a34a}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,sans-serif}body{background-color:var(--bg-color);color:var(--text-primary);flex-direction:column;min-height:100vh;display:flex}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}.glass-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.form-container{flex-direction:column;gap:1.5rem;display:flex}.input-group{flex-direction:column;gap:.5rem;display:flex}.input-label{color:var(--text-primary);font-size:.875rem;font-weight:500}.input-field{border:1px solid var(--border-color);width:100%;color:var(--text-primary);background-color:#fff;border-radius:6px;outline:none;padding:.75rem 1rem;font-size:.875rem;transition:all .2s}.input-field:focus{border-color:var(--secondary-color);box-shadow:0 0 0 3px #2563eb1a}.input-error{border-color:var(--error-color)!important}.btn{cursor:pointer;border:none;border-radius:6px;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.auth-layout{background-color:var(--sidebar-bg);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{background:#fff;width:100%;max-width:440px;padding:2.5rem}.auth-header{text-align:center;margin-bottom:2rem}.auth-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.auth-subtitle{color:var(--text-secondary);font-size:.875rem}.auth-footer{text-align:center;color:var(--text-secondary);margin-top:1.5rem;font-size:.875rem}.auth-link{color:var(--secondary-color);font-weight:500;text-decoration:none}.auth-link:hover{text-decoration:underline}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-layout{width:100%;min-height:100vh;display:flex}.sidebar{background-color:var(--sidebar-bg);color:#fff;flex-direction:column;flex-shrink:0;width:260px;transition:all .3s;display:flex}.sidebar-header{border-bottom:1px solid var(--border-color);background-color:#fff;align-items:center;height:70px;padding:0 1.5rem;display:flex}.sidebar-logo-text{color:var(--primary-color);letter-spacing:1px;font-size:1.25rem;font-weight:700}.sidebar-nav{flex-direction:column;gap:.25rem;padding:1rem 0;display:flex}.sidebar-link{color:var(--sidebar-text);align-items:center;gap:.75rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.sidebar-link:hover,.sidebar-link.active{color:var(--sidebar-text-hover);border-left:4px solid var(--primary-color);background-color:#ffffff0d}.main-content{background-color:var(--bg-color);flex-direction:column;flex:1;min-width:0;display:flex}.top-header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;height:70px;padding:0 2rem;display:flex}.header-title{color:var(--text-primary);font-size:1.25rem;font-weight:600}.header-right{align-items:center;display:flex}.user-dropdown-container{position:relative}.user-dropdown-trigger{cursor:pointer;border-radius:6px;align-items:center;gap:.75rem;padding:.5rem;transition:background-color .2s;display:flex}.user-dropdown-trigger:hover{background-color:var(--bg-color)}.user-info{text-align:right;flex-direction:column;display:flex}.user-name{color:var(--text-primary);font-size:.875rem;font-weight:600}.user-role{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;font-size:.7rem}.user-avatar{background-color:var(--sidebar-bg);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-weight:600;display:flex}.dropdown-menu{border:1px solid var(--border-color);z-index:50;background-color:#fff;border-radius:6px;min-width:200px;margin-top:.5rem;display:none;position:absolute;top:100%;right:0;box-shadow:0 10px 15px -3px #0000001a}.dropdown-menu.show{display:block}.dropdown-header{border-bottom:1px solid var(--border-color);background-color:#f9fafb;border-radius:6px 6px 0 0;padding:1rem}.dropdown-item{color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-size:.875rem;text-decoration:none;transition:background-color .2s;display:flex}.dropdown-item:hover{background-color:var(--bg-color)}.dropdown-item.text-red{color:var(--error-color)}.dropdown-item.text-red:hover{background-color:#fef2f2}.page-content{flex:1;padding:2rem;overflow-y:auto}.table-container{border:1px solid var(--border-color);background:#fff;border-radius:8px;width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--border-color);padding:1rem 1.5rem}.data-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;background-color:#f9fafb;font-size:.875rem;font-weight:600}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background-color .2s}.data-table tbody tr:hover{background-color:#f9fafb}.action-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-right:.5rem;padding:.25rem;transition:all .2s;display:inline-flex}.action-btn:hover{background-color:var(--border-color);color:var(--text-primary)}.action-btn.edit{color:var(--secondary-color)}.action-btn.edit:hover{background-color:#2563eb1a}.action-btn.delete{color:var(--error-color)}.action-btn.delete:hover{background-color:#ef44441a}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background-color:#11182799;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background-color:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:1px solid var(--border-color);background-color:#f9fafb;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-title{color:var(--text-primary);font-size:1.125rem;font-weight:600}.modal-close-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;transition:color .2s;display:flex}.modal-close-btn:hover{color:var(--error-color)}.modal-body{padding:1.5rem;overflow-y:auto}.tabs-container{border-bottom:1px solid var(--border-color);gap:.5rem;margin-bottom:2rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.tab-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;transition:all .2s}.tab-btn:hover{background-color:var(--border-color);color:var(--text-primary)}.tab-btn.active{color:var(--primary-color);background-color:#16a34a1a}
