/* Session packages module */
.pk-thumb { width: 44px; height: 44px; flex: none; border-radius: 10px; object-fit: cover; display: inline-block; vertical-align: middle; }
.pk-thumb-ph { display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #155e5f, #0f3d3e);
  color: #f6d9a8; font-weight: 700; font-size: .85rem; letter-spacing: .02em; }
.pk-min { min-width: 0; overflow-wrap: anywhere; }
.pk-namecol { min-width: 220px; max-width: 360px; }
.pk-inline { display: inline; }
.pk-inline .link { font-size: inherit; }

.pk-meter { height: 6px; background: var(--track); border-radius: 99px; overflow: hidden; margin: 6px 0 2px; min-width: 80px; }
.pk-meter span { display: block; height: 100%; background: var(--brand-2); border-radius: 99px; }
.pk-meter.low span { background: var(--accent); }
.pk-cell-meter { min-width: 120px; }

.pk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; margin: 8px 0 4px; }
.pk-card { border: 1px solid var(--line); border-radius: 10px; padding: 12px 14px; background: #fff; min-width: 0; }
.pk-card.low { border-color: #f2d7a6; background: #fffcf6; }
.pk-card.done { background: #fafbfa; }
.pk-card.done .pk-big b { color: var(--muted); }
.pk-card-head { display: flex; gap: 10px; align-items: flex-start; flex-wrap: wrap; }
.pk-card-head .pk-min { flex: 1 1 150px; }
.pk-state select { width: auto; }
.pk-card-head .badge { margin-left: auto; }
.pk-big { margin-top: 10px; display: flex; align-items: baseline; gap: 6px; }
.pk-big b { font-size: 1.6rem; line-height: 1; font-variant-numeric: tabular-nums; color: var(--brand); }
.pk-big span { color: var(--ink-2); font-size: .88rem; }
.pk-when { margin: 4px 0 0; }
.pk-card details ul.rows li { gap: 8px; }

.pk-warn { border-color: #f2d7a6; background: #fffaf0; }
.pk-warn h2 { color: var(--accent-ink); }
.pk-offer form { flex: none; }
.pk-cat p { margin: 10px 0 0; }

.pk-fieldset { border: 1px dashed var(--line); border-radius: 10px; padding: 12px 14px; margin: 0; min-width: 0; }
.pk-checks { display: flex; flex-wrap: wrap; gap: 6px; margin: 6px 0; }
.pk-checks label.chip { cursor: pointer; font-weight: 500; }
.pk-checks label.chip:has(input:checked) { background: var(--info-bg); color: var(--info); border-color: #c7dcf3; }
.pk-narrow { max-width: 720px; }
.pk-filters label { flex-direction: row; align-items: center; gap: 6px; font-weight: 600; }
.pk-filters label input, .pk-filters label select { width: auto; max-width: 100%; }
.pk-invnote p { margin: 0; }

@media (max-width: 640px) {
  .pk-grid { grid-template-columns: minmax(0, 1fr); }
  .pk-filters label { flex: 1 1 100%; }
  .pk-filters label input, .pk-filters label select { flex: 1; min-width: 0; }
  .pk-offer { flex-wrap: wrap; }
  .pk-offer .pk-min { flex: 1 1 180px; }
  .pk-offer form { margin-left: 54px; }
  .pk-namecol { min-width: 180px; }
}
