/* Tag directories share the video's compact filter layout and each theme's palette. */
.tag-browser{--tag-browser-accent:var(--accent,var(--green,#315e4e));--tag-browser-text:var(--ink,var(--text,inherit));box-sizing:border-box;min-width:0;max-width:100%;margin:8px 0 22px;padding:18px 20px 20px;border:1px solid var(--line,#e1e5e3);border-radius:var(--radius,10px);background:var(--paper,var(--panel,var(--bg,transparent)));color:var(--tag-browser-text)}
.tag-browser .tag-browser-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px;padding:0;border:0}
.tag-browser .tag-browser-heading-copy{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 12px;min-width:0}
.tag-browser .tag-browser-heading :is(h1,h2){margin:0;padding:0;border:0;background:none;color:inherit;font-size:19px;line-height:1.5;letter-spacing:normal;font-weight:700}
.tag-browser .tag-browser-total{color:var(--muted,#747d7a);font-size:12px;line-height:1.5;white-space:nowrap}
.tag-browser .tag-browser-reset{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;min-height:36px;color:var(--muted,#747d7a);font-size:12px;line-height:1.5;text-decoration:none}
.tag-browser .tag-browser-reset span{font-size:18px;line-height:1}
.tag-browser .tag-browser-options{display:flex;flex-wrap:wrap;align-items:flex-start;gap:9px;margin:0;padding:0;border:0;background:none;min-width:0;max-width:100%}
.tag-browser .tag-browser-chip{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;gap:8px;width:auto;max-width:100%;min-width:0;min-height:38px;margin:0;padding:7px 12px;border:1px solid var(--line,#e1e5e3);border-radius:7px;background:transparent;color:inherit;font:inherit;font-size:13px;font-weight:400;line-height:1.6;text-align:left;text-decoration:none;white-space:normal;overflow:visible;transition:background .15s,color .15s,border-color .15s}
.tag-browser .tag-browser-name{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:inherit}
.tag-browser .tag-browser-count{flex-shrink:0;font:inherit;font-size:11px;line-height:1.4;color:var(--muted,#747d7a);font-variant-numeric:tabular-nums}
.tag-browser .tag-browser-chip:hover{border-color:var(--tag-browser-accent);color:var(--tag-browser-accent);background:color-mix(in srgb,var(--tag-browser-accent) 6%,transparent)}
.tag-browser .tag-browser-chip[aria-current=page]{border-color:var(--tag-browser-accent);background:var(--sage,var(--soft,transparent));background:color-mix(in srgb,var(--tag-browser-accent) 14%,var(--paper,var(--panel,var(--bg,white))));color:inherit;font-weight:600;box-shadow:inset 0 0 0 1px var(--tag-browser-accent)}
.tag-browser .tag-browser-chip[aria-current=page] .tag-browser-count{color:inherit;opacity:.8}
.tag-browser .tag-browser-chip:focus-visible,.tag-browser .tag-browser-reset:focus-visible{outline:2px solid var(--tag-browser-accent);outline-offset:3px}
.tag-browser .tag-browser-reset:hover{color:var(--tag-browser-accent)}
.tag-browser .tag-browser-empty{margin:12px 0 0;color:var(--muted,#747d7a);font-size:13px;line-height:1.7}
/* Long tag lists must not let a result's cover grow into its text column. */
html[data-channel-ui=default3] main:has(>[data-tags-channel=novel]) .result .thumb>.cover{width:100%;max-width:100%;height:auto;max-height:none}
@media(max-width:600px){
    .tag-browser{margin:6px 0 18px;padding:14px 12px 15px}
    .tag-browser .tag-browser-heading{gap:8px;margin-bottom:12px}
    .tag-browser .tag-browser-heading-copy{gap:3px 8px}
    .tag-browser .tag-browser-heading :is(h1,h2){font-size:17px}
    .tag-browser .tag-browser-total{font-size:11px}
    .tag-browser .tag-browser-options{gap:7px}
    .tag-browser .tag-browser-chip{min-height:40px;padding:8px 10px;gap:6px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.tag-browser .tag-browser-chip{transition:none}}
