/* Профиль подписчика и фильтр по знаниям (deploy107a, 11.10.2026). Токены — общие со styles.css. */
.prf-onb { position: fixed; inset: 0; z-index: 9000; background: rgba(15, 23, 42, .55); display: flex;
    align-items: flex-start; justify-content: center; padding: 24px 12px; overflow-y: auto; }
.prf-onb[hidden] { display: none; }
.prf-box { background: var(--surface, #fff); color: var(--text, #111); border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px; width: 100%; max-width: 560px; padding: 16px 18px; display: grid; gap: 12px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .25); }
.prf-h { display: flex; align-items: center; gap: 8px; }
.prf-h h2 { margin: 0; font-size: 18px; flex: 1; }
.prf-x { border: 0; background: none; color: var(--text-muted); font-size: 18px; cursor: pointer; min-width: 36px; min-height: 36px; }
.prf-lead, .prf-disc { margin: 0; color: var(--text-muted); font-size: 12px; }
.prf-q { display: grid; gap: 6px; }
.prf-l { font-size: 13px; font-weight: 600; }
.prf-opt { color: var(--text-muted); font-weight: 400; font-size: 12px; }
.prf-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.prf-chip { display: inline-flex; align-items: center; cursor: pointer; }
.prf-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.prf-chip span { border: 1px solid var(--border, #d1d5db); border-radius: 999px; padding: 5px 11px; font-size: 13px; min-height: 32px;
    display: inline-flex; align-items: center; }
.prf-chip input:checked + span { background: var(--accent, #2962ff); border-color: transparent; color: #fff; }
.prf-chip input:focus-visible + span { outline: 2px solid var(--accent, #2962ff); outline-offset: 2px; }
.prf-preset { border: 1px dashed var(--border, #d1d5db); background: transparent; color: var(--text); border-radius: 8px;
    padding: 5px 11px; font: inherit; font-size: 13px; cursor: pointer; min-height: 32px; }
.prf-preset.is-on { border-style: solid; border-color: var(--accent, #2962ff); color: var(--accent, #2962ff); }
.prf-in { border: 1px solid var(--border, #d1d5db); border-radius: 8px; padding: 6px 10px; font: inherit; font-size: 14px;
    background: var(--bg, #fff); color: var(--text); min-height: 34px; max-width: 260px; }
.prf-in-s { width: 110px; }
.prf-all { font-size: 13px; display: flex; gap: 6px; align-items: center; }
.prf-err { margin: 0; color: #dc2626; font-size: 13px; min-height: 0; }
.prf-err:empty { display: none; }
.prf-acts { display: flex; flex-wrap: wrap; gap: 8px; }
.prf-main, .prf-sec { border-radius: 8px; padding: 8px 14px; font: inherit; font-size: 14px; cursor: pointer; min-height: 38px; }
.prf-main { background: var(--accent, #2962ff); color: #fff; border: 0; }
.prf-sec { background: transparent; color: var(--text); border: 1px solid var(--border, #d1d5db); }
@media (max-width: 560px) {
    .prf-onb { padding: 0; }
    .prf-box { border-radius: 0; min-height: 100%; max-width: none; }
}

/* Меню: раздел не из профиля — серый, но открывается */
.pf-tab.is-offprofile { opacity: .5; }
.pf-tab.is-offprofile.is-active { opacity: .8; }

/* «Как сыграть уровень»: пример расчёта по профилю */
.pl-ex { font-size: 12px; color: var(--text-muted); overflow-wrap: anywhere; }
.pl-ex b { color: var(--text, inherit); font-variant-numeric: tabular-nums; }
.pl-ex-h { margin: 2px 0 4px; }
.pl-qty input { width: 64px; border: 1px solid var(--border, #d1d5db); border-radius: 6px; padding: 2px 6px; font: inherit;
    background: var(--bg, #fff); color: var(--text); }
.pl-ok { color: #16a34a; }
.pl-over { color: #dc2626; }
.pl-hid { font-size: 12px; color: var(--text-muted); margin: 4px 0; }
.pl-link { border: 0; background: none; padding: 0; color: var(--accent, #2962ff); font: inherit; cursor: pointer; text-decoration: underline; }
.pl-ow { display: grid; gap: 2px; padding: 4px 0; border-top: 1px dashed var(--border, #e5e7eb); }
.pl-ow:first-of-type { border-top: 0; }
.pl-cmp .pl-sc-h { margin-top: 4px; }
.pl-tab { border-collapse: collapse; width: 100%; font-size: 11px; font-variant-numeric: tabular-nums; }
.pl-tab th, .pl-tab td { text-align: right; padding: 3px 4px; border-bottom: 1px solid var(--border, #e5e7eb); white-space: nowrap; }
.pl-tab th:first-child, .pl-tab td:first-child { text-align: left; white-space: normal; }
.pl-tab th { color: var(--text-muted); font-weight: 600; }
.pl-scroll { overflow-x: auto; }
.pl-muted { color: var(--text-muted); }
.prf-sees { margin: 0; font-size: 12px; color: var(--text-muted); background: var(--surface-2, rgba(127,127,127,.08)); border-radius: 8px; padding: 8px 10px; }
.prf-sees b { color: var(--text); }
.pl-liq { font-size: 12px; color: var(--text-muted); margin-top: 4px; }
.pl-tab td:last-child { white-space: normal; min-width: 96px; max-width: 150px; }
.pl-tab [data-testid=pl-cmp-liq] { display: inline-block; line-height: 1.25; }

/* 113c (12.10.2026): что из профиля входит не во все уровни подписки */
.prf-gaps { margin-top: 10px; padding: 10px 12px; border: 1px dashed var(--border); border-radius: 8px; font-size: 12.5px; line-height: 1.5; }
.prf-gaps ul { margin: 6px 0 6px 18px; padding: 0; }
.prf-more { color: var(--accent, #14b8a6); font-weight: 600; }
