/* Clean fullscreen styles that preserve original layout */
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

/* Main container fills the screen */
.container-fluid {
  height: 100vh;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  display: flex;
  flex-direction: column;
}

/* Header takes minimal space */
header {
  flex: 0 0 auto;
}

/* Main content takes all remaining space */
main {
  flex: 1 1 auto;
  min-height: 0; /* Important for Firefox */
}

/* Calendar container takes full height of main */
.calendar-container {
  height: 100%;
}

/* Calendar fills its container */
#calendar {
  height: 100%;
}

/* Compact toolbar */
.fc .fc-toolbar.fc-header-toolbar {
  margin-bottom: 0.75rem;
}
