/* 30 Aug 2026d — calendar density, night chrome to the screen edge, setup bullets. */

/* Scheduler calendar: size to the dates, even rows. Do not inherit the photo 16:9 box. */
@media (max-width: 860px) {
  .roles-section .role-cal {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    padding: 14px 14px 12px;
  }

  .roles-section .role-cal-grid {
    flex: 0 0 auto;
    grid-template-rows: 16px repeat(5, 28px);
    gap: 4px 2px;
  }
}

/* Kill the paper strip under sign-in and portal on iOS (100svh < visible height). */
html:has(.signin-page),
body:has(.signin-page) {
  background: #07101b;
  min-height: 100%;
  min-height: 100dvh;
}

html:has(.portal-page),
body:has(.portal-page) {
  background: #05090f;
  min-height: 100%;
  min-height: 100dvh;
}

.signin-page,
.portal-page {
  min-height: 100svh;
  min-height: 100dvh;
}

.signin-page {
  background-color: #07101b;
  background-position: center;
  background-size: cover;
}

/* Setup bullets: more room on the right so lines don't run to the card edge. */
.more-body .role-row-copy {
  padding-right: 18px;
}

@media (max-width: 860px) {
  .more-body .role-grid > .role-row {
    padding: 17px 26px 17px 17px;
  }

  .more-body .role-row-copy {
    padding-left: 36px;
    padding-right: 20px;
  }
}

.portal-actions p.is-error {
  color: #b42318;
}

.shop-review {
  margin: 0 0 48px;
}

.shop-review-empty {
  margin: 0 0 18px;
  color: #8a6a3a;
  font-size: 14px;
}

.shop-review-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 20px;
  margin-bottom: 18px;
}

.shop-review .portal-field input,
.shop-review .portal-field textarea {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid #c9c8c1;
  border-radius: 16px;
  outline: 0;
  background: rgba(255, 255, 255, 0.66);
  color: #1f211d;
  font: inherit;
  box-shadow: inset 0 1px 0 #fff, 4px 5px 0 rgba(42, 46, 45, 0.06);
}

.shop-review .portal-field textarea {
  min-height: 96px;
  padding: 14px 16px;
  resize: vertical;
}

@media (max-width: 700px) {
  .shop-review-grid {
    grid-template-columns: 1fr;
  }
}
