.photos-stacks{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;min-width:0;max-width:100%;margin:0 0 16px}
.photos-stack-controls{display:flex;align-items:center;flex:0 0 auto;margin-left:auto;font-size:12px;color:var(--ink-2)}
.photos-stack-controls button{min-height:36px;border:1px solid var(--line-2);border-radius:18px;padding:5px 10px;background:var(--surface);color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer}
.photos-stack-controls button[aria-checked=true]{border-color:var(--accent-strong);background:var(--accent-strong);color:var(--on-accent)}
.photos-stack-controls button:focus-visible{outline:2px solid var(--selection-outline);outline-offset:2px}
.photos-stack-controls button:disabled{cursor:default}
.photos-stacks-message{flex-basis:100%;order:1;margin:0;color:var(--ink-2);font-size:12px}
.photos-stacks-error{color:var(--danger-ink,var(--ink))}
.photos-stack-pending button{background:var(--surface-2);color:transparent}
.photos-stacks .photo-collections{margin:0}
.photos-stacks .photo-collections-heading{display:none}
.photos-stacks .photo-collections-heading:has(button:not([hidden])){display:flex;justify-content:flex-end}
.photos-stacks .photo-collections-heading h2{display:none}
.photos-stacks>.ph-grid{display:flex;flex:1 1 0;min-width:0;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;margin:0;padding:5px 2px 7px}
.photos-stacks>.ph-grid>.ph-category-stack{flex:0 0 104px;width:104px;height:104px;min-width:104px;aspect-ratio:1/1;scroll-snap-align:start}
.photos-stacks .ph-category-stack .ph-stack-photo{inset:12px 24px 33px}
.photos-stacks .ph-stack-placeholder{position:absolute;inset:12px 24px 33px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);border-radius:6px}
.photos-stacks .ph-stack-placeholder .category-icon{width:28px;height:28px}
.photos-stacks .ph-stack-label{display:block;padding:7px 6px;font-size:12px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}
.ph-stack-label .category-icon,.shelf-category-heading .category-icon{width:18px;height:18px;flex:0 0 18px;vertical-align:middle}
.shelf-category-heading .category-icon{margin-right:7px}
.shelf-name .category-icon,.grid-group-name .category-icon{width:19px;height:19px;margin-right:7px;vertical-align:middle}
