/* «Раздачи монет»: справочная страница /razdachi и список в кабинете /app/drops.
   Свои классы — с префиксом pm-dp-. */

/* ---------- Справочная страница: текст узкой колонкой, сетка видов — во всю ширину ---------- */
.pm-dp-narrow { max-width: 860px; margin-left: auto; margin-right: auto; }
.pm-longread h2.pm-dp-narrow { margin-left: auto; margin-right: auto; }
.pm-dp-kinds { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 22px 0 8px; }
.pm-dp-kind { background: var(--pm-surface); border: 1px solid var(--pm-border); border-radius: var(--pm-sq); padding: 22px 24px; box-shadow: var(--pm-sh-1); scroll-margin-top: 110px; }
.pm-dp-kind__head { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.pm-dp-kind__head h3 { margin: 0; font-size: var(--pm-fs-lg); }
.pm-dp-kind__icon { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; flex: 0 0 40px; border-radius: var(--pm-sq); background: var(--pm-accent-soft); color: var(--pm-accent-text); }
.pm-longread .pm-dp-kind__what { font-size: var(--pm-fs-base); line-height: 1.6; margin: 0 0 14px; }
.pm-dp-facts { margin: 0; display: grid; gap: 0; }
.pm-dp-facts > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; padding: 9px 0; border-top: 1px solid var(--pm-border); }
.pm-dp-facts dt { font-size: var(--pm-fs-xs); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--pm-text-3); padding-top: 2px; }
.pm-dp-facts dd { margin: 0; font-size: var(--pm-fs-sm); line-height: 1.5; color: var(--pm-text-2); }
.pm-dp-facts__risk dt { color: var(--pm-warn-text); }
.pm-dp-facts__risk dd { color: var(--pm-text); }

/* ---------- Кабинет: вкладки и виды ---------- */
.pm-dp-bar { display: grid; gap: 12px; margin-bottom: 18px; }
.pm-dp-kindbar { display: flex; flex-wrap: wrap; gap: 6px; }
.pm-dp-chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border: 1px solid var(--pm-border); border-radius: var(--pm-sq); background: var(--pm-surface); font-size: var(--pm-fs-xs); font-weight: 600; color: var(--pm-text-2); }
.pm-dp-chip:hover { border-color: var(--pm-border-strong); color: var(--pm-text); text-decoration: none; }
.pm-dp-chip.pm-is-active { border-color: var(--pm-accent); background: var(--pm-accent-soft); color: var(--pm-accent-text); }
.pm-dp-chip .pm-nums { color: var(--pm-text-3); font-weight: 500; }

/* ---------- Кабинет: карточка раздачи ---------- */
.pm-dp-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
.pm-dp-card { display: grid; gap: 14px; background: var(--pm-surface); border: 1px solid var(--pm-border); border-radius: var(--pm-sq); padding: 20px 22px; box-shadow: var(--pm-sh-1); min-width: 0; scroll-margin-top: 84px; }
.pm-dp-card--over { background: var(--pm-surface-2); box-shadow: none; }
.pm-dp-card__head { display: flex; align-items: flex-start; gap: 12px; }
.pm-dp-card__head > .pm-exlogo { flex: 0 0 auto; margin-top: 2px; }
.pm-dp-card__titles { flex: 1 1 auto; min-width: 0; }
.pm-dp-card__marks { flex: 0 0 auto; display: grid; gap: 6px; justify-items: end; }
.pm-dp-card__marks .pm-chip { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.pm-dp-card__project a { font-weight: 600; }
.pm-dp-card__kind { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--pm-accent-text); }
.pm-dp-card__head h2 { margin: 3px 0 2px; font-size: var(--pm-fs-lg); line-height: 1.3; overflow-wrap: anywhere; }
.pm-dp-card__project { font-size: var(--pm-fs-sm); color: var(--pm-text-3); }
.pm-dp-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: var(--pm-fs-sm); color: var(--pm-text-2); }
.pm-dp-meta > span { display: inline-flex; align-items: flex-start; gap: 6px; min-width: 0; line-height: 1.45; }
/* Значок не сжимается, когда подпись переносится на вторую строку (на телефоне он превращался в точку). */
.pm-dp-meta [uk-icon] { color: var(--pm-text-3); flex: 0 0 auto; margin-top: 2px; }
.pm-dp-meta .pm-dot { margin-top: 6px; }
.pm-dp-meta__over { color: var(--pm-text-3); }
.pm-dp-risk--high { color: var(--pm-neg-text); font-weight: 600; }
.pm-dp-card__summary { margin: 0; font-size: var(--pm-fs-sm); line-height: 1.6; color: var(--pm-text-2); }

.pm-dp-steps { display: grid; gap: 8px; background: var(--pm-surface-2); border-radius: var(--pm-sq); padding: 14px 16px; }
.pm-dp-card--over .pm-dp-steps { background: var(--pm-surface); }
.pm-dp-steps__title { display: flex; justify-content: space-between; gap: 12px; font-size: var(--pm-fs-sm); font-weight: 700; color: var(--pm-text); }
.pm-dp-steps__title span { font-weight: 500; color: var(--pm-text-3); }
.pm-dp-step { display: flex; align-items: flex-start; gap: 10px; margin: 0; font-size: var(--pm-fs-sm); line-height: 1.5; color: var(--pm-text-2); cursor: pointer; }
.pm-dp-step input { flex: 0 0 auto; margin-top: 3px; }
.pm-dp-step:has(input:checked) span { color: var(--pm-text-3); text-decoration: line-through; }
.pm-dp-steps .uk-button { justify-self: start; margin-top: 4px; }

.pm-dp-fact { display: grid; gap: 3px; font-size: var(--pm-fs-sm); line-height: 1.55; color: var(--pm-text-2); }
.pm-dp-fact b { font-size: var(--pm-fs-xs); letter-spacing: .06em; text-transform: uppercase; color: var(--pm-text-3); }
.pm-dp-fact small { font-size: var(--pm-fs-xs); color: var(--pm-text-3); }

/* Проверка участниками «Практика»: общая пометка «пройдено / не пройдено» и их итоги */
.pm-dp-verify { display: grid; gap: 10px; padding: 14px 16px; border: 1px solid var(--pm-border); border-radius: var(--pm-sq); }
.pm-dp-verify--passed { border-color: var(--pm-pos-line); background: var(--pm-pos-soft); }
.pm-dp-verify--failed { border-color: var(--pm-neg-line); background: var(--pm-neg-soft); }
.pm-dp-verify--checking { border-color: var(--pm-warn-line); }
.pm-dp-verify__head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; font-size: var(--pm-fs-sm); color: var(--pm-text-2); }
.pm-dp-verify__head b { color: var(--pm-text); }
.pm-dp-verify__empty, .pm-dp-verify__mine { margin: 0; font-size: var(--pm-fs-sm); line-height: 1.55; color: var(--pm-text-2); }
.pm-dp-result { display: flex; gap: 10px; align-items: flex-start; font-size: var(--pm-fs-sm); line-height: 1.5; color: var(--pm-text-2); }
.pm-dp-result > [uk-icon] { flex: 0 0 auto; margin-top: 2px; }
.pm-dp-result--pos > [uk-icon] { color: var(--pm-pos-text); }
.pm-dp-result--neg > [uk-icon] { color: var(--pm-neg-text); }
.pm-dp-result b { color: var(--pm-text); }
.pm-dp-result q { display: block; margin-top: 2px; color: var(--pm-text); quotes: '«' '»'; }
.pm-dp-result small { display: block; margin-top: 2px; font-size: var(--pm-fs-xs); color: var(--pm-text-3); }
.pm-dp-take { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0; font-size: var(--pm-fs-xs); color: var(--pm-text-3); }
.pm-dp-check { display: grid; gap: 8px; margin: 0; padding: 14px 16px; border-radius: var(--pm-sq); background: var(--pm-surface); border: 1px solid var(--pm-accent-line); }
.pm-dp-check__title { font-size: var(--pm-fs-sm); font-weight: 700; color: var(--pm-text); }
.pm-dp-check .uk-form-label { margin: 4px 0 0; }
.pm-dp-check .uk-form-label small { font-weight: 400; color: var(--pm-text-3); }
.pm-dp-check__row { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; }
.pm-dp-check__row > div { display: grid; gap: 6px; align-content: start; min-width: 0; }
.pm-dp-check__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-top: 4px; }
.pm-dp-check__actions .uk-button-text { font-size: var(--pm-fs-xs); color: var(--pm-text-3); }
.pm-dp-picks { display: flex; flex-wrap: wrap; gap: 8px; }
.pm-dp-picks label { position: relative; cursor: pointer; margin: 0; }
.pm-dp-picks input { position: absolute; opacity: 0; pointer-events: none; }
.pm-dp-picks span { display: inline-flex; align-items: center; min-height: 36px; padding: 6px 14px; border: 1px solid var(--pm-border-strong); border-radius: var(--pm-sq); background: var(--pm-surface); font-size: var(--pm-fs-sm); font-weight: 600; color: var(--pm-text); transition: border-color .12s ease, background-color .12s ease; }
.pm-dp-picks label:hover span { background: var(--pm-surface-2); }
.pm-dp-picks input:checked + span { border-color: var(--pm-accent); background: var(--pm-accent-soft); color: var(--pm-accent-text); }
.pm-dp-picks input:focus-visible + span { outline: 2px solid var(--pm-accent); outline-offset: 2px; }

.pm-dp-card__foot { display: grid; gap: 10px; padding-top: 12px; border-top: 1px dashed var(--pm-border); }
.pm-dp-states { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; }
.pm-dp-states .uk-button-text { font-size: var(--pm-fs-xs); color: var(--pm-text-3); margin-left: 4px; }
.pm-dp-card__checked { font-size: var(--pm-fs-xs); color: var(--pm-text-3); }
.pm-dp-fine { margin: 22px 0 0; font-size: var(--pm-fs-xs); line-height: 1.55; color: var(--pm-text-3); max-width: 860px; }

@media (max-width: 1100px) {
  .pm-dp-list { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 860px) {
  .pm-dp-kinds { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .pm-dp-check__row { grid-template-columns: minmax(0, 1fr); }
  .pm-dp-card__head { flex-wrap: wrap; }
  .pm-dp-card__marks { flex: 1 1 100%; display: flex; flex-wrap: wrap; justify-items: start; }
  .pm-dp-kind { padding: 18px 16px; }
  .pm-dp-facts > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .pm-dp-card { padding: 18px 16px; }
}
