/* P-25 — каталог организаций. Классы и значения дословно из
   docs/html/_source/AMAN_P-25_Organizations_RU.html — токены (--r-*,
   --sp-*, --caution-*, --crisis-*) сверены с public.css, совпадают 1:1
   (не как P-108/110, где шкала была сдвинута — здесь реально одинаковая). */

.filters { display: flex; gap: var(--sp-2); flex-wrap: wrap; margin-bottom: var(--sp-4); }
.sel { position: relative; flex: 1; min-width: 150px; }
.sel select { width: 100%; min-height: var(--control-h); padding: 13px 40px 13px 16px; border: 1px solid var(--line-strong); border-radius: var(--r-md); font: inherit; font-size: 15.5px; background: var(--paper); color: var(--ink); appearance: none; cursor: pointer; }
.sel select:focus-visible { border-color: var(--primary); outline: 2px solid var(--primary); outline-offset: 1px; }
.sel .caret { position: absolute; inset-inline-end: 14px; top: 50%; transform: translateY(-50%); color: var(--ink-3); pointer-events: none; }
.count { font-size: 13.5px; color: var(--ink-3); margin: 0 0 var(--sp-4); }

.org { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-lg); padding: var(--sp-5); margin-bottom: var(--sp-3); transition: border-color .15s; }
.org:hover { border-color: var(--line-strong); }
.org .type { font-size: 11.5px; letter-spacing: .09em; text-transform: uppercase; color: var(--ink-3); font-weight: 600; margin: 0 0 var(--sp-2); }
.org h2 { font-size: 19px; line-height: 1.32; letter-spacing: -.014em; margin: 0 0 var(--sp-2); }
.org h2 a { color: inherit; text-decoration: none; }
.org h2 a:hover { color: var(--primary); }
.org .desc { font-size: 15px; color: var(--ink-2); margin: 0 0 var(--sp-3); }
.tags { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: var(--sp-4); }
.tag { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--line-strong); border-radius: var(--r-pill); padding: 3px 11px; font-size: 12.5px; color: var(--ink-2); background: var(--paper); white-space: nowrap; }
.tag svg { color: var(--ink-3); }
.org .foot { display: flex; align-items: center; gap: var(--sp-3); flex-wrap: wrap; }
.org .target { font-size: 13px; color: var(--ink-3); margin: 0; }

.org--closed { background: var(--surface); }
.org--closed h2 { color: var(--ink-2); }
.closed-note { font-size: 13.5px; color: var(--caution); background: var(--caution-tint); border: 1px solid var(--caution-line); border-radius: var(--r-sm); padding: 9px 13px; margin: 0 0 var(--sp-3); }

.empty { border: 1px dashed var(--line-strong); border-radius: var(--r-lg); background: var(--paper); padding: var(--sp-6) var(--sp-5); margin-bottom: var(--sp-4); }
.empty h2 { font-size: 18px; letter-spacing: -.012em; margin: 0 0 var(--sp-2); }
.empty p { font-size: 15px; color: var(--ink-2); margin: 0 0 var(--sp-4); }
.empty .row { display: flex; gap: var(--sp-2); flex-wrap: wrap; }
.empty .row .btn { flex: 1; min-width: 170px; }

.profile .type { font-size: 11.5px; letter-spacing: .09em; text-transform: uppercase; color: var(--ink-3); font-weight: 600; margin: 0 0 var(--sp-2); }
.profile h1 { font-size: clamp(23px, 4.4vw, 28px); line-height: 1.26; letter-spacing: -.02em; margin: 0 0 var(--sp-3); }
.profile .tags { margin-bottom: var(--sp-5); }
.pblk { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-lg); padding: var(--sp-5); margin-bottom: var(--sp-3); }
.pblk h2 { font-size: 12.5px; letter-spacing: .07em; text-transform: uppercase; color: var(--ink-3); font-weight: 600; margin: 0 0 var(--sp-3); }
.pblk p { font-size: 15.5px; color: var(--ink-2); margin: 0 0 var(--sp-3); }
.pblk p:last-child { margin: 0; }
.pblk ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: var(--sp-3); }
.pblk li { display: flex; gap: var(--sp-3); align-items: flex-start; font-size: 15.5px; color: var(--ink-2); }
.pblk li svg { flex: none; margin-top: 3px; color: var(--primary); }
.what { background: var(--primary-tint); border: 1px solid #CBDCD9; border-radius: var(--r-lg); padding: var(--sp-5); margin-bottom: var(--sp-4); }
.what h2 { font-size: 16.5px; letter-spacing: -.012em; margin: 0 0 var(--sp-3); }
.what ol { margin: 0; padding-inline-start: 20px; font-size: 15px; color: var(--ink-2); }
.what li { margin-bottom: var(--sp-2); }
.what li:last-child { margin: 0; }
.what b { color: var(--ink); }
.reassure { font-size: 13.5px; color: var(--ink-3); margin: var(--sp-3) 0 0; }

.nomarket { border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface); padding: var(--sp-4) var(--sp-5); margin-top: var(--sp-5); font-size: 13.5px; color: var(--ink-2); display: flex; gap: 10px; align-items: flex-start; line-height: 1.5; }
.nomarket svg { flex: none; margin-top: 2px; color: var(--ink-3); }
