/* Shared base styles */
:root{
  --font-stack: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
  --brand-1: #0B3A80;
  --brand-2: #0E4C9B;
  --ink-1: #111827;
  --ink-2: #6b7280;
  --border-1: #e5e7eb;
}

body{
  font-family: var(--font-stack);
}

.form-label{
  display:block;
  color: var(--ink-2);
  font-weight: 700;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 0.4rem;
}

.form-input, select.form-input{
  width:100%;
  padding:0.8rem 0.9rem;
  border:1px solid var(--border-1);
  border-radius:10px;
  background:#fff;
  color: var(--ink-1);
  transition: all 0.25s ease;
  box-shadow: inset 0 1px 2px rgba(15,23,42,0.04);
}
.form-input:focus, select.form-input:focus{
  outline:none;
  border-color:#4f46e5;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.12);
}

.btn{
  padding:0.75rem 1.2rem;
  border:none;
  border-radius:8px;
  font-weight:600;
  cursor:pointer;
  transition: all 0.3s ease;
  text-decoration:none;
  display:inline-block;
  text-align:center;
}
.btn-primary{
  background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
  color:#fff;
}
.btn-primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(42,27,61,0.3);
}
.btn-secondary{
  background: linear-gradient(90deg, var(--brand-1), var(--brand-2));
  color:#f8f7fa;
  border:1px solid var(--border-1);
}
.btn-secondary:hover{
  border-color:#4f46e5;
}
.btn-outline{
  background: transparent;
  border: 1px solid #cbd5e1;
  color: var(--brand-1);
}
.btn-outline:hover{ border-color:#94a3b8; }
.btn-danger{
  background: linear-gradient(45deg, #ff6b6b, #ee5a52);
  color:#fff;
}
.btn-danger:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(255,107,107,0.3);
}
.btn-link-danger{
  background: transparent;
  border: none;
  color: #dc2626;
  font-weight: 600;
  padding: 0 0.25rem;
}
.btn-link-danger:hover{ text-decoration: underline; }

/* Shared dropdown styles (options/profile/app_page) */
.user-menu { position: relative; }
.user-avatar {
  width: 40px; height: 40px; border-radius: 50%;
  background: linear-gradient(45deg, #2f1748, #4b3563);
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-weight: 700; cursor: pointer; transition: .2s;
}
.user-avatar:hover { transform: scale(1.05); }

.dropdown {
  position: absolute; top: 100%; right: 0; min-width: 220px;
  margin-top: .6rem; background: #fff; border-radius: 14px;
  box-shadow: 0 14px 40px rgba(15, 23, 42, .18);
  transform: translateY(-8px); opacity: 0; visibility: hidden;
  transition: .25s; z-index: 1000; border: 1px solid #eef2f7;
  overflow: hidden;
}
.dropdown.show { transform: translateY(0); opacity: 1; visibility: visible; }
.dropdown::before{
  content:'';
  position:absolute;
  top:-6px; right:16px;
  width:12px; height:12px;
  background:#fff;
  border-left:1px solid #eef2f7;
  border-top:1px solid #eef2f7;
  transform: rotate(45deg);
}
.dropdown-header { padding: 1rem 1.1rem; border-bottom: 1px solid #f1f5f9; background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%); }
.dropdown-name { font-weight: 700; color: #111827; }
.dropdown-email { font-size: .85rem; color: #6b7280; }

.dropdown-item {
  width: 100%; padding: .7rem 1.1rem; border: 0; background: none;
  text-align: left; color: #111827; cursor: pointer; transition: .2s;
  display: flex; align-items: center; gap: .6rem;
}
.dropdown-item i { width: 16px; text-align: center; color: #64748b; transition: color .2s; }
.dropdown-item:hover { background: #eef2ff; }
.dropdown-item:hover i { color: #4f46e5; }
.dropdown-item:last-child { border-top: 1px solid #f1f5f9; color: #6b7280; border-bottom-left-radius: 14px; border-bottom-right-radius: 14px; }
.dropdown-item:last-child:hover { color: #dc2626; background: #fef2f2; }
.dropdown-item:last-child:hover i { color: #dc2626; }

.dropdown-accent {
  width: 6px; height: 6px; border-radius: 999px; background: #4f46e5;
  box-shadow: 0 0 0 3px rgba(79,70,229,0.12);
  margin-left: auto;
}
