/* Shared look of all pages (views/layout.erb), modelled on the Tankstelle page. */

body.app {
  background: #f4f7fc;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

body.app > main {
  flex: 1 0 auto;
}

/* navigation: app bar plus breadcrumb, stays visible while scrolling */
.app-breadcrumb {
  background: #fff;
}

.app-breadcrumb .breadcrumb {
  font-size: .95rem;
  padding: .5rem 0;
}

.app-breadcrumb .breadcrumb-item a {
  text-decoration: none;
}

.app-breadcrumb .breadcrumb-item a:hover {
  text-decoration: underline;
}

.page-header h1 {
  margin-bottom: .25rem;
}

/* a card per section, blue header like "Tanken erfassen" */
.section-card {
  border: 0;
  border-radius: .75rem;
  box-shadow: 0 .125rem .5rem rgba(13, 110, 253, .08), 0 .0625rem .125rem rgba(0, 0, 0, .06);
  margin-bottom: 1.5rem;
}

.section-card > .card-header {
  background-color: var(--bs-primary);
  border-bottom: 0;
  border-radius: .75rem .75rem 0 0;
  color: #fff;
}

.section-card > .card-header .card-title {
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 0;
}

.section-card > .card-header a {
  color: #fff;
}

.section-card > .card-footer {
  background: transparent;
  border-radius: 0 0 .75rem .75rem;
}

/* tables that fill a card */
.section-card > .table-responsive > .table,
.section-card > .table {
  margin-bottom: 0;
}

.section-card > .table-responsive > .table > :not(caption) > * > :first-child,
.section-card > .table > :not(caption) > * > :first-child {
  padding-left: 1rem;
}

.section-card > .table-responsive > .table > :not(caption) > * > :last-child,
.section-card > .table > :not(caption) > * > :last-child {
  padding-right: 1rem;
}

.table > thead th {
  color: var(--bs-secondary-color);
  font-size: .85rem;
  font-weight: 600;
  white-space: nowrap;
}

.table .sum-row > * {
  border-top: 2px solid var(--bs-border-color);
  font-weight: 600;
}

/* notes like "Hinweise" on the Tankstelle page */
.hint-card {
  background: linear-gradient(180deg, #f8f9ff 0%, #f7fbff 100%);
  border: 1px solid #dbe7ff;
  border-radius: .75rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6);
  margin-bottom: 1.5rem;
}

.hint-card > .card-header {
  background: linear-gradient(90deg, #0d6efd 0%, #0b5ed7 100%);
  border-bottom: 0;
  border-radius: .75rem .75rem 0 0;
  color: #fff;
}

.hint-card ul {
  margin-bottom: 0;
  padding-left: 1.2rem;
}

.hint-card li + li {
  margin-top: .4rem;
}

/* the start page: one tile per function */
.feature-link {
  align-items: center;
  display: flex;
  gap: .75rem;
}

.feature-link .feature-icon {
  font-size: 1.4rem;
  line-height: 1;
}

/* receipt previews in lists and forms */
.receipt-thumb {
  max-height: 6rem;
  max-width: 6rem;
}

/* values taken over from an e-invoice */
.zugferd-prefilled {
  background-color: #e8f5e9;
  border-color: #198754;
}

.app-footer {
  background: #fff;
}

@media (max-width: 575.98px) {
  .page-header h1 {
    font-size: 1.75rem;
  }
}
