/* Continuous collection: stable native scrollbar, bounded visible cells. */
.collection-app .collection-character-grid.character-scroll{display:block;position:relative;padding:0;overflow:auto;overflow-anchor:none;scrollbar-gutter:stable;scrollbar-width:auto;scroll-behavior:auto;min-height:108px;outline-offset:-3px}
.character-scroll-canvas{position:relative;width:100%;min-height:1px;contain:layout style}
.character-scroll-cell{position:absolute;box-sizing:border-box;padding:3px;contain:layout style}
.character-scroll-cell>a{display:flex;position:relative;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:6px 3px;border:1px solid transparent;border-radius:8px;color:var(--ink);text-decoration:none;overflow:hidden}
.character-scroll-cell .han{font-size:2.2rem;line-height:1.3;flex-shrink:0}
.collection-character-grid .character-scroll-cell small{font-size:.875rem;line-height:1.35;text-align:center;margin-top:4px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;max-width:100%;color:var(--muted)}
.character-scroll-cell>a:hover{background:var(--row-hover);border-color:var(--rule)}
.character-scroll-cell>a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--tint)}
.character-scroll-cell>a[aria-current=true]{background:var(--signal);color:var(--signal-ink);border-color:var(--signal)}
.character-scroll-cell>a[aria-current=true] small{color:var(--signal-ink)}
.character-scroll-cell i{position:absolute;right:6px;top:7px;width:4px;height:4px;background:var(--accent);border-radius:50%}
.character-scroll-placeholder{display:grid;place-items:center;height:100%;color:var(--rule);font-size:2rem;border-radius:8px;background:var(--subtle)}
.collection-app .character-scroll-footer{position:relative;flex-wrap:wrap;padding:8px 10px 11px;gap:5px 10px;font-size:12px;background:var(--white);font-variant-numeric:tabular-nums}
.character-scroll-label{color:var(--accent);font-weight:500}
.character-scroll-footer>button{margin-left:auto;min-height:36px!important}
.character-scroll-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;border:0;appearance:none;background:var(--rule);color:var(--accent)}
.character-scroll-progress::-webkit-progress-bar{background:var(--rule)}
.character-scroll-progress::-webkit-progress-value{background:var(--accent)}
.character-scroll-progress::-moz-progress-bar{background:var(--accent)}
.character-scroll-feedback{flex-shrink:0;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);background:var(--subtle)}
.character-scroll-feedback>span:not(:empty){padding:8px 10px}
.character-scroll-feedback button:not([hidden]){padding:8px 12px;min-height:40px;color:var(--accent);border:1px solid var(--rule)}
.collection-app:not(.searching).show-selection .collection-inspector-bar button{display:block}
@media(max-width:600px){.collection-app .character-scroll-footer{font-size:11px}.character-scroll-label{flex:1}.character-scroll-footer #collection-character-page{white-space:nowrap}}
