/* GENERATED FILE - DO NOT EDIT.
   Source: shared/prep-files.css - run `npm run sync:shared` after editing. */

/* 📎 Files on Prep items (shared/prep-files.js, owner 2026-10-03). Web + app. */
.prep-file-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  max-width: 100%;
  min-width: 0;
  margin-top: 0.2rem;
  padding: 0.15rem 0.6rem;
  border: 1px solid #c9d8cf;
  border-radius: 999px;
  background: #f1f7f3;
  color: #1f3b2f;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
}
.prep-file-chip > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
button.prep-file-chip:hover {
  border-color: #2d5a45;
}
.prep-file-chip.is-edit {
  cursor: default;
}
.prep-file-unlink {
  flex: none;
  margin-left: 0.1rem;
  padding: 0 0.2rem;
  border: 0;
  background: none;
  color: #a24a3c;
  font-size: 0.95rem;
  line-height: 1;
  cursor: pointer;
}
/* Web rows: the chip gets its own line under the item text. */
.check-row > .prep-file-line {
  display: block;
  flex: 1 1 100%;
  min-width: 0;
  padding-left: 1.9rem;
}
#panel-prep .check-row:has(> .prep-file-line) {
  flex-wrap: wrap;
}
/* …and the item field may shrink so the row's buttons stay on its first line. */
#panel-prep .check-row:has(> .prep-file-line) > .wb-check-text {
  flex: 1 1 5rem;
  min-width: 0;
}
.prep-row .prep-item-wrap > .prep-file-chip {
  align-self: flex-start;
}
.prep-file-uploading {
  opacity: 0.6;
  pointer-events: none;
}

/* Add file / Edit file sheets (bug hunt 2026-10-12): a long picked file name wraps inside the sheet instead of
   running off it (app 390 px) or wrapping into the receipt preview's 2.6rem thumbnail column (web). */
#crew-file-chosen {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
#m-crew-file .sheet-modal-panel > p.mw-muted {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* An item's link + file as one wrapping row of chips (owner 2026-10-15): never wider than the row. */
.prep-attach {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
  max-width: 100%;
  min-width: 0;
  margin-top: 0.2rem;
}
.prep-attach > .prep-file-chip {
  margin-top: 0;
  max-width: 100%;
  font-size: 0.82rem;
  text-decoration: none;
}
.prep-attach > .prep-file-chip > span {
  max-width: 14rem;
}
.prep-item-wrap {
  min-width: 0;
}

/* A link chip carries its site's square, like the Library's Lists (owner 2026-10-15). A long name ends in …
   inside the chip, and the chip never grows past its row. */
.prep-file-chip.is-link {
  padding-left: 0.25rem;
}
.prep-site {
  flex: none;
  display: inline-grid;
  place-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 6px;
  color: #fff;
  font-style: normal;
  font-size: 0.7rem;
  line-height: 1;
}
.prep-attach > .prep-file-chip.is-link > span {
  flex: 0 1 auto;
}

/* One fixed label length for every chip under an item (owner 2026-10-15): a long PDF name or link ends in …
   at the same width, and a file + a link sit side by side on a phone. */
.prep-attach > .prep-file-chip {
  width: auto;
  max-width: min(9.5rem, 100%);
}
.prep-attach > .prep-file-chip > span {
  max-width: none;
  flex: 1 1 auto;
}
