.practical-table-wrap { max-width: 100%; overflow-x: auto; margin: 26px 0; border: 1px solid var(--border); border-radius: 8px; }
.practical-table { border-collapse: collapse; width: 100%; min-width: 640px; font-size: 15px; line-height: 1.75; }
.practical-table caption { padding: 14px 18px; text-align: left; font-weight: 600; color: var(--forest); background: var(--bg-alt); }
.practical-table th, .practical-table td { padding: 14px 16px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--border); overflow-wrap: anywhere; }
.practical-table thead th { background: var(--forest); color: #fff; font-weight: 600; }
.practical-table tbody th { min-width: 100px; font-weight: 600; color: var(--forest); }
.practical-table tbody tr:nth-child(even) { background: rgba(47,91,79,.035); }
.practical-table tbody tr:last-child > * { border-bottom: 0; }
.practical-download { margin: 38px 0 20px; padding: 24px; border: 1px solid var(--border-strong); border-radius: 10px; background: var(--surface); }
.article-content .practical-download h2 { margin: 0 0 12px; font-size: 22px; }
.practical-download a { display: inline-block; margin-top: 8px; font-weight: 600; color: var(--forest); text-decoration: underline; text-underline-offset: 4px; }
.practical-table-wrap:focus-visible { outline: 2px solid var(--forest); outline-offset: 3px; }
@media(max-width:640px) { .practical-table { font-size: 14px; } .practical-table th,.practical-table td { padding: 12px; } .practical-download { padding: 20px 16px; } }
