.rail{gap:22px;display:grid}.rail-set{border:0;min-width:0;margin:0;padding:0}.rail-legend{color:var(--rime-text-secondary);margin-bottom:12px;padding:0;font-size:.8rem;font-weight:600}.rail-list{gap:8px;display:grid}.rail--row .rail-list{scroll-snap-type:x mandatory;grid-auto-columns:minmax(150px,1fr);grid-auto-flow:column;padding-bottom:6px;overflow-x:auto}.rail-item{border-radius:var(--radius-m);cursor:pointer;scroll-snap-align:start;transition:background-color var(--dur-hover) var(--ease-effects);grid-template-columns:76px 1fr;align-items:center;gap:12px;padding:6px;display:grid;position:relative}.rail--row .rail-item{grid-template-columns:1fr;gap:8px}@media (hover:hover){.rail-item:hover{background:var(--rime-hover)}}.rail-item{-webkit-tap-highlight-color:transparent}.rail-item input{opacity:0;width:1px;height:1px;position:absolute}.rail-thumb{aspect-ratio:16/9;box-shadow:0 0 0 1px var(--rime-hairline);transition:box-shadow var(--dur-state) var(--ease-effects);border-radius:10px;display:block;overflow:hidden}.rail-thumb img{object-fit:cover;width:100%;height:100%}.rail-name{gap:2px;font-size:.92rem;font-weight:600;line-height:1.2;display:grid}.rail-name em{color:var(--rime-text-secondary);font-size:.76rem;font-style:normal;font-weight:500}.rail-item input:checked~.rail-thumb{box-shadow:0 0 0 2px var(--rime-surface-base), 0 0 0 4px var(--rime-accent-text)}.rail-item:has(input:checked){background:var(--rime-surface-selected)}.rail-item input:focus-visible~.rail-thumb{outline:2px solid var(--rime-text-primary);outline-offset:4px}.rail-roles-title{margin-bottom:10px}.swatches{gap:6px;margin:0;padding:0;list-style:none;display:grid}.swatches li{grid-template-columns:22px 1fr auto;align-items:center;gap:10px;font-size:.82rem;display:grid}.sw{width:22px;height:22px;box-shadow:inset 0 0 0 1px var(--rime-outline-soft);border-radius:7px}.sw[data-sw=base]{background:var(--rime-surface-base)}.sw[data-sw=raised]{background:var(--rime-surface-raised)}.sw[data-sw=selected]{background:var(--rime-surface-selected)}.sw[data-sw=container]{background:var(--rime-accent-container)}.sw[data-sw=accent]{background:var(--rime-accent)}.sw[data-sw=text]{background:var(--rime-text-primary)}.sw-name{font-family:var(--font-mono);color:var(--rime-text-secondary);font-size:.76rem}.sw-hex{font-size:.76rem}@media (width<=900px){.rail--side .rail-list{grid-auto-columns:minmax(140px,1fr);grid-auto-flow:column;padding-bottom:6px;overflow-x:auto}.rail--side .rail-item{grid-template-columns:1fr;gap:8px}.rail-roles{display:none}}
