/* global.css: overrides and consistency rules */

body {
  font-family: system-ui, sans-serif;
}

h1 {
  font-size: 2rem;
}

/* Ensure all “quick-action” buttons look identical */
.btn-outline-primary {
  border-width: 2px;
  font-weight: 500;
}

/* Unify footer control heights and keep icon buttons square */
.task-footer-controls {
  --ctl-h: 34px;
}

.task-footer-controls .btn,
.task-footer-controls .dropdown-toggle {
  height: var(--ctl-h);
  display: inline-flex;
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 1;
}

.task-footer-controls .btn-icon {
  width: var(--ctl-h);
  min-width: var(--ctl-h);
  justify-content: center;
  padding-left: 0;
  padding-right: 0;
}

.task-footer-controls .dropdown-toggle.icon-only {
  width: var(--ctl-h);
  min-width: var(--ctl-h);
  justify-content: center;
  padding-left: 0;
  padding-right: 0;
}

/* Collapsed note preview: show N lines with a soft fade at bottom */
.note-preview {
  --preview-lines: 3;         /* default number of visible lines */
  --lh: 1.2rem;               /* line-height used for height calc */
  position: relative;
  line-height: var(--lh);
  max-height: calc(var(--preview-lines) * var(--lh));
  overflow: hidden;
}

/* soft fade using mask so it works regardless of background color */
.note-preview {
  -webkit-mask-image: linear-gradient(180deg, black 70%, transparent 100%);
  mask-image: linear-gradient(180deg, black 70%, transparent 100%);
}

/* Optional: make paragraphs tighter in preview so lines are consistent */
.note-preview p {
  margin-bottom: 0.25rem;
}

/* Sticky menu bar on desktop: stays at top when scrolling */
@media (min-width: 992px) {
  .glev-menu-bar {
    position: sticky;
    top: 0;
    z-index: 1030;
  }
}
