/* Poseidon Marine Supplies brand palette (taken from poseidonms.com) */
:root {
  --poseidon-brand-600: #0095DA;
  --poseidon-brand-700: #006899;
  --poseidon-brand-100: #E3F4FC;

  --bs-primary: var(--poseidon-brand-600);
  --bs-primary-rgb: 0, 149, 218;
  --bs-link-color: var(--poseidon-brand-600);
  --bs-link-color-rgb: 0, 149, 218;
  --bs-link-hover-color: var(--poseidon-brand-700);
}

.btn-primary {
  --bs-btn-bg: var(--poseidon-brand-600);
  --bs-btn-border-color: var(--poseidon-brand-600);
  --bs-btn-hover-bg: var(--poseidon-brand-700);
  --bs-btn-hover-border-color: var(--poseidon-brand-700);
  --bs-btn-active-bg: var(--poseidon-brand-700);
  --bs-btn-active-border-color: var(--poseidon-brand-700);
}

body {
  font-family: 'Comfortaa', sans-serif;
}

h1, h2, h3, h4, h5, h6, .navbar-brand {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
}

.btn {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  border-radius: 5px;
  padding: 10px 22px;
  text-transform: none;
}
.btn-sm {
  padding: 4px 12px;
}

.btn-outline-primary {
  --bs-btn-color: var(--poseidon-brand-600);
  --bs-btn-border-color: var(--poseidon-brand-600);
  --bs-btn-hover-bg: var(--poseidon-brand-600);
  --bs-btn-hover-border-color: var(--poseidon-brand-600);
}

.nav-link-primary {
  font-weight: 700;
  color: var(--poseidon-brand-700) !important;
  padding: 8px 16px !important;
  border-radius: 6px;
}
.nav-link-primary:hover, .nav-link-primary:focus {
  background: var(--poseidon-brand-100);
}
.nav-link-primary.active {
  background: var(--poseidon-brand-600);
  color: #fff !important;
}

.bg-primary { background-color: var(--poseidon-brand-600) !important; }
.text-primary { color: var(--poseidon-brand-600) !important; }

.navbar-brand.poseidon-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
}
.poseidon-brand .brandmark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: var(--poseidon-brand-600);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}
/* ---- Header: one tidy row, nothing wraps onto two lines ---- */
.navbar .nav-link { white-space: nowrap; padding-left: .55rem; padding-right: .55rem; }
.navbar .navbar-nav.small .nav-link { color: var(--bs-secondary-color); }
.user-avatar {
    display: inline-flex; align-items: center; justify-content: center;
    width: 2rem; height: 2rem; border-radius: 50%;
    background: #1a5a8a; color: #fff; font-size: .8rem; font-weight: 600; letter-spacing: .02em;
}
