.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.6rem}.family-card{display:grid;gap:.35rem;padding:1rem 1.1rem;text-decoration:none;box-shadow:none}.family-card:hover{border-color:var(--olive);box-shadow:var(--shadow)}.family-card b{font-size:1.12rem}.family-mark{font-size:1.6rem;line-height:1;color:var(--amber)}.filter-wrap{margin-top:3rem}.tree-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.2rem;align-items:start}.tree-list{padding:1rem .8rem}.tree-list tbody tr{cursor:pointer}.tree-list tbody tr:hover td{background:color-mix(in srgb,var(--card-2) 60%,transparent)}.tree-list tr[aria-selected] td{background:var(--card-2)}.tree-list tr[aria-selected] td:first-child{box-shadow:inset 3px 0 0 var(--olive)}.class-link,.class-name{font-weight:600;color:var(--text)}.class-link{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--olive) 45%,transparent);text-underline-offset:3px}.class-link:hover,.class-link:focus-visible{color:var(--olive);text-decoration-color:currentColor}.class-link:after{content:" →";color:var(--olive)}.class-count{display:block;font-family:var(--mono);font-size:.7rem;color:var(--faint);font-weight:400}.details-cell{width:1%;white-space:nowrap;text-align:right}.details-button{font:inherit;font-size:.78rem;color:var(--muted);background:none;border:1px solid var(--line-strong);border-radius:999px;padding:.2rem .65rem;cursor:pointer}.details-button:hover,.details-button:focus-visible,tr[aria-selected] .details-button{color:var(--olive);border-color:var(--olive)}.tree-detail{padding:1.2rem 1.4rem;display:grid;grid-template-columns:minmax(0,20rem) minmax(0,1fr);column-gap:2rem;row-gap:.6rem;align-items:start}.tree-detail>*{grid-column:2}.tree-detail>.overline,.tree-detail>h3{grid-column:1 / -1}.tree-detail>.detail-board{grid-column:1;grid-row:3 / span 12}.tree-detail h3{font-size:1.35rem}.detail-board{max-width:20rem}.detail-outcome{display:grid;gap:.35rem}.tree-detail .kind{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin-top:.4rem}.tree-detail .wdl-legend{margin-top:0}.materials{list-style:none;margin:0;padding:0;display:grid;gap:.25rem}.material-link{display:grid;color:var(--text);text-decoration:none}.material-link .san{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--olive) 45%,transparent);text-underline-offset:3px}.material-link .san:after{content:" →";color:var(--olive)}.material-link:hover .san,.material-link:focus-visible .san{color:var(--olive);text-decoration-color:currentColor}.materials li{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.88rem;border-bottom:1px solid var(--line);padding-bottom:.25rem}.lesson-links{display:flex;flex-wrap:wrap;gap:.4rem}.lesson-links .chip{text-decoration:none;color:var(--olive);border:1px solid var(--line-strong)}.links-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:3rem}@media (max-width: 900px){.tree-detail{grid-template-columns:minmax(0,1fr)}.tree-detail>*,.tree-detail>.detail-board{grid-column:1;grid-row:auto}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.family-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.tree-list th:last-child,.tree-list .details-cell{display:none}.tree-detail{padding:1rem}.detail-board{max-width:100%}.materials li{min-width:0}.materials .san{white-space:normal;overflow-wrap:anywhere}}.material-none{color:var(--muted);cursor:help}.materials .num{white-space:nowrap;color:var(--muted);font-size:.82rem}.materials-note{margin:.2rem 0 0;font-size:.78rem;color:var(--faint);line-height:1.45}
