/* Модуль «Лиги друзей»: блок на главной. Только токены из style.css; таблица — .leaders, кнопки — .soc-btn / .confirm модуля social. */
.fl { margin-top: 28px; background: var(--surface); border: 1px solid var(--line); border-radius: 18px; padding: 16px; }
.fl-top > p { margin: 2px 0 12px; color: var(--ink-2); font-size: 15px; }
.fl-list { display: grid; gap: 10px; margin-bottom: 14px; }
.fl-empty { margin: 0; padding: 14px; border: 2px dashed var(--line); border-radius: 14px; color: var(--ink-2); }
.fl-lg { border: 1px solid var(--line); border-radius: 14px; background: var(--paper); }
.fl-lg[open] { background: var(--surface); }
.fl-lg summary { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding: 12px 14px; cursor: pointer; min-height: 48px; list-style: none; }
.fl-lg summary::-webkit-details-marker { display: none; }
.fl-lg summary::after { content: '▾'; margin-left: auto; color: var(--ink-2); }
.fl-lg[open] summary::after { content: '▴'; }
.fl-name { font-weight: 700; font-size: 17px; overflow-wrap: anywhere; }
.fl-meta { color: var(--ink-2); font-size: 14px; }
.fl-body { padding: 0 14px 14px; }
.fl-table { margin-bottom: 8px; }
.fl-own { display: inline !important; font-size: 12px; border: 1px solid var(--line); border-radius: 12px; padding: 0 6px; margin-left: 4px; }
.fl-acts { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 10px; }
.fl-acts .confirm, .fl-acts .soc-btn { width: auto; margin: 0; padding: 10px 18px; min-height: 46px; font-size: 16px; }
.fl-acts .fl-out { margin-left: auto; }
.fl-acts .fl-out.lost { color: var(--no-ink); font-weight: 700; }
.fl-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.fl-forms > * { min-width: 0; }
.fl-form { display: flex; gap: 8px; }
.fl-form input { flex: 1; min-width: 0; width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 10px 14px; font: inherit; font-size: 16px; background: var(--paper); color: var(--ink); }
.fl-form .soc-btn { width: auto; margin: 0; padding: 10px 16px; white-space: nowrap; }
.fl-msg { min-height: 1.2em; margin: 8px 0 0; }
@media (max-width: 640px) { .fl-forms { grid-template-columns: minmax(0, 1fr); } .fl-acts .fl-out { margin-left: 0; } }
