.ahos-auth-strip {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 10000;
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: min(420px, calc(100vw - 24px));
  border: 1px solid rgba(184, 113, 22, 0.32);
  border-radius: 8px;
  background: rgba(255, 250, 241, 0.98);
  box-shadow: 0 18px 44px -30px rgba(23, 53, 88, 0.55);
  color: #20313d;
  padding: 8px;
  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

.ahos-auth-strip[hidden] {
  display: none;
}

.ahos-auth-strip-status {
  min-width: 0;
  color: #68400f;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.ahos-auth-strip button {
  min-height: 34px;
  border: 1px solid #c7832a;
  border-radius: 8px;
  background: linear-gradient(180deg, #d99b47 0%, #c7832a 58%, #ad6b1e 100%);
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 850;
  padding: 0 12px;
  white-space: nowrap;
}

.ahos-auth-strip button:disabled {
  cursor: wait;
  opacity: 0.7;
}

@media (max-width: 680px) {
  .ahos-auth-strip {
    right: 10px;
    bottom: 10px;
    left: 10px;
    justify-content: space-between;
  }
}

body.theme-admin {
  --ahos-admin-canvas: #f6f8fb;
  --ahos-admin-header: #fff9ef;
  --ahos-admin-panel: #ffffff;
  --ahos-admin-line: #dbe5ef;
  --ahos-admin-ink: #173558;
  --ahos-admin-muted: #5f7185;
  --ahos-admin-amber: #b87116;
  --ahos-admin-amber-dark: #8c520f;
}

body.theme-admin,
body.theme-admin #root,
body.theme-admin #root > div,
body.theme-admin .bg-amber-50 {
  background: var(--ahos-admin-canvas) !important;
}

body.theme-admin .bg-amber-50\/90 {
  background: var(--ahos-admin-header) !important;
}

body.theme-admin .bg-amber-600 {
  background: #d18a2a !important;
}

body.theme-admin .bg-amber-700 {
  background: var(--ahos-admin-amber) !important;
}

body.theme-admin .text-amber-800,
body.theme-admin .hover\:text-amber-800:hover {
  color: var(--ahos-admin-amber-dark) !important;
}

body.theme-admin .border-amber-200,
body.theme-admin .border-amber-200\/60 {
  border-color: #ead8bd !important;
}

body.theme-admin .page-shell {
  max-width: 1540px;
}

body.theme-admin #portal-sidebar,
body.theme-admin .panel {
  border-color: var(--ahos-admin-line) !important;
  border-radius: 8px !important;
  background: var(--ahos-admin-panel) !important;
  box-shadow: 0 18px 60px rgba(23, 53, 88, 0.08) !important;
}

body.theme-admin #portal-sidebar a,
body.theme-admin #portal-sidebar button {
  min-height: 34px;
  border-radius: 8px !important;
  color: #20313d;
  font-weight: 650;
}

body.theme-admin #portal-sidebar a[aria-current="page"],
body.theme-admin #portal-sidebar a.bg-amber-700 {
  background: var(--ahos-admin-amber) !important;
  color: #ffffff !important;
}

body.theme-admin #portal-sidebar a:hover,
body.theme-admin #portal-sidebar button:hover {
  color: var(--ahos-admin-ink);
}

body.theme-admin #portal-sidebar p:first-child {
  color: var(--ahos-admin-amber-dark);
}

body.theme-admin main h1,
body.theme-admin main th,
body.theme-admin main [role="columnheader"] {
  color: var(--ahos-admin-ink) !important;
}

body.theme-admin .cta-primary {
  border-radius: 8px !important;
  background: #0f4c81 !important;
  box-shadow: none !important;
}

body.theme-admin .cta-secondary,
body.theme-admin .field-input,
body.theme-admin select,
body.theme-admin textarea {
  border-radius: 8px !important;
}

body.theme-admin .text-charcoal\/75,
body.theme-admin .text-charcoal\/80,
body.theme-admin .text-charcoal\/85,
body.theme-admin .text-charcoal\/90 {
  color: var(--ahos-admin-ink) !important;
}
