.assoc-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.assoc-search{flex:1 1 220px}.assoc-search input{width:100%;padding:10px 16px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--cream);font:300 13px var(--sans)}.assoc-search input::placeholder{color:var(--muted)}.assoc-filters{display:flex;gap:8px;flex-wrap:wrap}.assoc-filter{padding:8px 14px;border:1px solid var(--line-strong);border-radius:999px;background:#fff0;color:var(--body);font:300 11px var(--sans);cursor:pointer;transition:.18s}.assoc-filter:hover{border-color:var(--gold-dim);color:var(--cream)}.assoc-filter.active{border-color:var(--gold);background:var(--gold);color:#1a140a}.assoc-count{margin-left:auto;color:var(--gold-dim);font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.as-rules{display:grid;grid-template-columns:190px 1fr;gap:22px;margin-bottom:22px;padding:20px 22px;border:1px solid #653f3a;border-left:2px solid #df8f88;background:var(--bad-bg)}.as-rules p{color:#e6ada7;font-size:10px;letter-spacing:.18em;text-transform:uppercase}.as-rules ul{display:grid;gap:8px;list-style:none}.as-rules li{color:var(--body);font-family:var(--serif);font-size:15px;line-height:1.5}.as-rules li span{margin-right:7px}.as-rules strong{color:var(--cream);font-weight:500}.assoc-table-wrap{max-height:76vh;overflow:auto;border:1px solid var(--line);background:var(--surface);scrollbar-width:thin;scrollbar-color:var(--gold-dim) var(--card)}.as-table{width:100%;min-width:880px;border-collapse:separate;border-spacing:0}.as-table th,.as-table td{padding:12px;border-right:1px solid rgb(201 169 97 / .07);border-bottom:1px solid rgb(201 169 97 / .07);text-align:left;vertical-align:top}.as-table thead th{position:sticky;top:0;z-index:20;background:#1e3d28;color:var(--gold);font-size:10px;font-weight:400;letter-spacing:.14em;text-transform:uppercase}.as-table thead th:first-child{left:0;z-index:30}.as-name{position:sticky;left:0;z-index:10;width:180px;min-width:180px;background:#16281b}.as-row:hover td{background:rgb(201 169 97 / .04)}.as-row:hover .as-name{background:var(--card-hover)}.as-name__emoji{display:inline-block;width:23px;margin-right:5px;text-align:center}.as-name__label{color:var(--cream);font-size:13px;font-weight:400}.as-name__latin{display:block;margin:3px 0 0 30px;color:var(--muted);font-family:var(--serif);font-size:12px;font-style:italic}.as-cell{min-width:190px}.as-cell--note{min-width:260px}.as-tag{display:inline-flex;align-items:center;margin:0 4px 5px 0;padding:5px 9px;border:1px solid;border-radius:999px;font-family:var(--serif);font-size:13px;line-height:1.25;text-decoration:none;transition:border-color .18s,background .18s}.as-tag--good{border-color:#3d5f44;background:var(--good-bg);color:#a9cf9f}.as-tag--bad{border-color:#6b4040;background:var(--bad-bg);color:#dfa0a0}a.as-tag:hover{border-color:currentColor;background:var(--card-hover)}.as-note{display:block;margin-bottom:7px;color:var(--body);font-family:var(--serif);font-size:13px;line-height:1.5}.as-note--bad{color:#dfa0a0}.as-row.hidden,.as-row[hidden]{display:none}.as-empty{margin:0 0 16px;color:var(--vert-pale);font-family:var(--serif);font-style:italic}.assoc-note{margin-top:16px;padding:14px 18px;border-left:2px solid var(--gold);background:rgb(201 169 97 / .06);color:var(--body);font-family:var(--serif);font-size:15px;font-style:italic;line-height:1.6}@media(max-width:900px){.assoc-controls{display:grid;grid-template-columns:minmax(0,1fr) auto}.assoc-count{grid-column:2;grid-row:1}.assoc-filters{grid-column:1/-1;flex-wrap:nowrap;margin-inline:-20px;padding:2px 20px 6px;overflow-x:auto}.assoc-filter{flex:0 0 auto}.as-rules{grid-template-columns:1fr;gap:9px}}@media(max-width:700px){.assoc-table-wrap{max-height:none;overflow:visible;border:0;background:#fff0}.as-table,.as-table tbody,.as-table tr,.as-table th,.as-table td{display:block;min-width:0}.as-table thead{display:none}.as-row{margin-bottom:12px;border:1px solid var(--line);background:var(--surface)}.as-name{position:static;width:auto;min-width:0;padding:14px!important;border-bottom:1px solid var(--line)!important;background:var(--card)}.as-cell{min-width:0;padding:12px 14px!important;border:0!important}.as-cell::before{content:attr(data-label);display:block;margin-bottom:8px;color:var(--gold-dim);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.as-name__latin{margin-left:30px}.assoc-count{font-size:9px}}