/* Вариант по образцу (/olimpiady/obrazec/, obrazec.js, 28.10.2026). Поверх podborka.css: форма, карточки задач.
   Разделы — свои цвета (светлые, текст на них тёмный в обеих темах); в тёмной теме чуть приглушены. */
.ob-c-meh{--c:#8cc8f0}.ob-c-gidro{--c:#93dbe6}.ob-c-kol{--c:#bfaef2}.ob-c-term{--c:#f6b088}.ob-c-elst{--c:#f3d474}
.ob-c-cepi{--c:#a3d893}.ob-c-magn{--c:#eba3d6}.ob-c-geomopt{--c:#cfdc74}.ob-c-volnopt{--c:#f2bfdc}.ob-c-kvant{--c:#cdbfa3}
.ob-c-sto{--c:#b0bdcd}.ob-c-astro{--c:#97aaeb}.ob-c-obsh{--c:#d4d4d4}.ob-c-eksp{--c:#ebc9a6}.ob-c-drug{--c:#dcdcdc}
:root[data-theme="dark"] .ob [class*="ob-c-"]{filter:brightness(.82)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .ob [class*="ob-c-"]{filter:brightness(.82)}}

.ob-olf{display:flex;flex-wrap:wrap;gap:10px 16px}
.ob-olf label{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--ink-2)}
.ob-olf select{min-width:180px}
.ob-sec{margin:26px 0}
.ob-sec h2{font-size:22px;margin:0 0 8px}
.ob-sec h3{font-size:17px;margin:22px 0 8px}
.ob-lead{margin:0 0 6px}
.ob-hint{font-size:13.5px;color:var(--ink-2);margin:6px 0 0}

/* состав */
.ob-sost{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.ob-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);font-size:14px;background:var(--white)}
.ob-chip i,.ob-why i{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--c)}
.ob-chip b{font-variant-numeric:tabular-nums}
.ob-chast{margin:12px 0 0}
.ob-trend{margin:8px 0 0;font-size:14.5px}

/* разделы по номерам */
.ob-poz{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ob-poz li{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px}
.ob-pn{font-weight:700;font-variant-numeric:tabular-nums}
.ob-bar{display:flex;height:28px;border-radius:7px;overflow:hidden;border:1px solid var(--line)}
.ob-seg{flex-basis:0;min-width:3px;background:var(--c);color:#13201f;font-size:12.5px;line-height:28px;padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ob-seg+.ob-seg{border-left:1px solid rgba(255,255,255,.7)}
.ob-psl{font-size:14px;color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums}

/* сетка по годам */
.ob-setka-w{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
.ob-setka{border-collapse:collapse;font-size:13px;min-width:100%}
.ob-setka th,.ob-setka td{border-bottom:1px solid var(--line);padding:0;text-align:center;white-space:nowrap}
.ob-setka tr:last-child th,.ob-setka tr:last-child td{border-bottom:0}
.ob-setka th{padding:6px 10px;font-weight:600;color:var(--ink-2);background:var(--panel);text-align:left;position:sticky;left:0}
.ob-setka th small{display:block;font-weight:400;font-size:11.5px}
.ob-setka td{background:var(--c,transparent);border-left:1px solid rgba(255,255,255,.75)}
.ob-setka td a{display:block;padding:6px 8px;color:#13201f;text-decoration:none}
.ob-setka td a:hover{text-decoration:underline}
.ob-setka td small{margin-left:4px;opacity:.75}

/* вариант */
.ob-form2{display:grid;gap:10px;margin:0 0 12px}
.ob-form2 label{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--ink-2)}
.ob-form2 label.pb-chk{flex-direction:row;align-items:center}
.ob-itog{margin:6px 0 10px}
.ob-why{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2);margin:0 0 8px}
.ob-why i{background:var(--c)}

@media (max-width:640px){
  .ob-olf select{min-width:0;width:100%}
  .ob-olf label{width:100%}
  .ob-poz li{grid-template-columns:34px 1fr 38px;gap:6px}
}
@media print{.ob-form,.ob-form2,.ob-tools,.pb-btns,#ob-razbor{display:none}}
