.learn { max-width: 980px; margin: 0 auto; padding: 22px 18px 10px; display: flex; flex-direction: column; gap: 18px; }
.intro h1 { font-size: 1.7rem; color: var(--green-d); margin-bottom: 6px; }
.intro p { margin: 0 0 8px; max-width: 70ch; }
.safety { background: #fff8e6; border: 1px solid #f0dfa8; border-radius: 8px; padding: 8px 12px; font-size: .85rem; color: #5b4a10; }
.plan { display: grid; grid-template-columns: 1fr auto; gap: 12px 18px; align-items: center; }
.plan .plan-list, .plan > p { grid-column: 1 / -1; }
.plan-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; counter-reset: p; }
.plan-list li { display: grid; grid-template-columns: 28px 1fr auto; gap: 10px; align-items: center; background: var(--green-l); border-radius: 8px; padding: 8px 10px; counter-increment: p; }
.plan-list li::before { content: counter(p); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--green); color: #fff; font-weight: 700; font-size: .8rem; }
.plan-list .ph { display: block; font-size: .7rem; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); }
.plan-list a { font-weight: 700; text-decoration: none; }
.plan-list small { color: var(--muted); }
.filters { display: flex; flex-direction: column; gap: 10px; }
.chips { display: flex; flex-wrap: wrap; gap: 6px; }
.chip { border: 1px solid var(--line); background: #fff; border-radius: 99px; padding: 6px 14px; font-size: .88rem; }
.chip[aria-selected=true] { background: var(--green); border-color: var(--green); color: #fff; font-weight: 700; }
.filter-row { display: flex; gap: 8px; flex-wrap: wrap; }
.filter-row input { flex: 1; min-width: 160px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; }
.filter-row select { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 12px; align-items: start; }
.ex { background: #fff; border: 1px solid var(--line); border-radius: var(--r); padding: 0; overflow: hidden; scroll-margin-top: 14px; }
.ex.hl { outline: 3px solid var(--orange); }
.ex > summary { list-style: none; cursor: pointer; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; }
.ex > summary::-webkit-details-marker { display: none; }
.ex > summary:hover { background: #fafcf8; }
.ex .t { font-weight: 800; font-size: 1.02rem; color: var(--green-d); }
.ex .goal { color: var(--muted); font-size: .88rem; }
.tags { display: flex; gap: 6px; flex-wrap: wrap; }
.tag { font-size: .72rem; padding: 2px 8px; border-radius: 99px; background: var(--green-l); color: var(--green-d); }
.tag.cat { background: var(--green); color: #fff; }
.ex .body { padding: 0 14px 14px; border-top: 1px dashed var(--line); font-size: .9rem; }
.ex h4 { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); margin: 12px 0 4px; }
.ex ol, .ex ul { margin: 0; padding-left: 20px; }
.ex li { margin-bottom: 3px; }
.ex .care { background: #fff4f2; border-left: 3px solid var(--danger); padding: 6px 10px; border-radius: 4px; }
@media (max-width: 760px) { .plan { grid-template-columns: 1fr; } .plan-list li { grid-template-columns: 28px 1fr; } .plan-list small { grid-column: 2; } }
.ex .en { font-size: .82rem; color: var(--green); font-style: italic; margin-top: -4px; }
.ex .txt { margin: 0; }
.ex.flat > summary { cursor: default; }
.tag.side { background: #fde7dc; color: #8a3d1b; }
.az { display: flex; flex-wrap: wrap; gap: 4px 6px; }
.az a { font-size: .85rem; padding: 2px 8px; border: 1px solid var(--line); border-radius: 99px; text-decoration: none; color: var(--green-d); background: #fff; }
.az a:hover { border-color: var(--orange); background: #fff8f4; }
.glossary > summary { cursor: pointer; list-style: none; }
.glossary > summary::-webkit-details-marker { display: none; }
.glossary > summary h2 { display: inline; margin: 0; }
.glossary > summary::after { content: ' ▸'; color: var(--muted); }
.glossary[open] > summary::after { content: ' ▾'; }
.glossary[open] .az { margin-top: 10px; }
.learn { min-width: 0; }
.cards > * { min-width: 0; }
.links { display: flex; flex-wrap: wrap; gap: 6px; }
.links .lnk { font-size: .8rem; padding: 3px 10px; border-radius: 99px; text-decoration: none; border: 1px solid var(--line); background: #fff; color: var(--green-d); }
.links .yt { background: #fdeceb; border-color: #f2b8b5; color: #8a1c14; }
.links .ig { background: #fbe9f3; border-color: #efb8d6; color: #7a1f55; }
.links .tt { background: #e9f3f7; border-color: #b8d6e2; color: #1c4a5a; }
.links .ref { background: var(--green-l); }
.legal .card h3 { font-size: .95rem; margin: 14px 0 4px; color: var(--green-d); }
.legal .card p { margin: 0 0 8px; }
.site-foot a { color: var(--muted); }
