/* Order Request mobile-first refinements. No functional changes, layout and spacing only. */

.so-page-content {
  padding: .75rem 1rem;
  padding-bottom: calc(88px + env(safe-area-inset-bottom)); /* ensure content not hidden behind bottom bar */
}

/* Cleaner, thinner sticky header */
.so-sticky-header {
  position: sticky;
  top: 0;
  z-index: 1030;
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: .25rem .75rem;
  background: rgba(255,255,255,.72);
  backdrop-filter: saturate(180%) blur(10px);
  -webkit-backdrop-filter: saturate(180%) blur(10px);
  border-bottom: none;
  box-shadow: 0 1px 0 rgba(0,0,0,.06);
}

.so-header-title {
  font-size: .95rem;
  font-weight: 600;
  letter-spacing: .2px;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--bs-body-color);
}

/* Lighter, more compact chips */
.so-chip {
  font-size: .78rem;
  line-height: 1.1;
  border-radius: 999px;
  padding: .16rem .48rem;
  background: transparent;
  border: 1px solid var(--bs-border-color, rgba(0,0,0,.08));
  color: var(--bs-secondary-color, #6c757d);
}

/* Bottom action bar enhancements */
.so-action-bar {
  padding: .6rem .75rem calc(.9rem + env(safe-area-inset-bottom));
  background: rgba(255,255,255,.98);
  backdrop-filter: saturate(180%) blur(8px);
  box-shadow: 0 -6px 16px rgba(0,0,0,.08);
  gap: .6rem;
}

.so-action-bar .btn {
  flex: 1 1 0;
  min-height: 48px; /* comfortable touch target but thinner */
  font-size: 1.02rem;
}

/* Card grid improvements for overview page */
.so-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: .75rem;
}

/* Quantity input for Details table */
.or-qty {
  width: 96px;
  min-width: 88px;
  height: var(--ol-touch, 44px);
  font-size: 1.25rem;
  text-align: center;
  border-radius: var(--ol-radius-sm, 6px);
  border: 1px solid var(--ol-border, #e5e7eb);
  padding: 0 .5rem;
}
.or-qty:focus {
  border-color: var(--ol-primary, #0a66c2);
  box-shadow: 0 0 0 3px var(--ol-focus, rgba(10,102,194,.18));
  outline: none;
}

/* Narrow icon cell for delete actions */
.or-cell--icon { width: 48px; text-align: center; }

/* Memo textarea */
.or-memo { width: 100%; min-height: 320px; border-radius: var(--ol-radius-sm, 6px); }
@media (min-width: 768px) { .or-memo { min-height: 500px; } }

@media (min-width: 768px) {
  .so-page-content { padding: 1rem 1.25rem calc(90px + env(safe-area-inset-bottom)); }
  .so-action-bar .btn { min-height: 52px; font-size: 1.05rem; }
  .so-grid { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
}

@media (min-width: 1200px) {
  .so-grid { grid-template-columns: repeat(3, 1fr); }
}

/* UI tweaks for cleaner New Order experience under new-order-ui */

/* Breadcrumbs (more compact and visually connected to header) */
.so-breadcrumbs {
  margin: 0;
}
.so-breadcrumbs .breadcrumb {
  font-size: .78rem;
  line-height: 1.1;
  padding: .15rem .75rem .4rem .75rem;
  margin-bottom: 0;
  background: rgba(255,255,255,.72);
  backdrop-filter: saturate(180%) blur(10px);
  -webkit-backdrop-filter: saturate(180%) blur(10px);
  border-bottom: 1px solid var(--bs-border-color, rgba(0,0,0,.08));
  border-top: 1px solid transparent; /* visually connected to header */
  --bs-breadcrumb-divider-color: var(--bs-secondary-color, #6c757d);
}
.so-breadcrumbs .breadcrumb-item a {
  color: var(--bs-secondary-color, #6c757d);
  text-decoration: none;
}
.so-breadcrumbs .breadcrumb-item a:hover { text-decoration: underline; }
.so-breadcrumbs .breadcrumb-item.active {
  color: var(--bs-body-color);
  font-weight: 600;
}

/* Action bar button sizing */
.so-action-bar .so-btn-send {
  /* Match standard button sizing so it's the same as Edit and others */
  flex: 1 1 0;
  min-height: 48px;
  font-size: 1.02rem;
}

.so-action-bar .so-btn-reset {
  flex: 0 0 auto;        /* do not stretch */
  min-height: 40px;      /* smaller height */
  padding: .2rem .55rem; /* smaller padding */
}

@media (min-width: 768px) {
  /* Keep Send aligned with standard responsive sizes */
  .so-action-bar .so-btn-send { min-height: 52px; font-size: 1.05rem; }
}
