.roleList { display: flex; flex-direction: column; gap: 8px; } .roleOption { display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; border-radius: 10px; border: 1px solid rgba(15, 23, 42, 0.1); background: var(--surface); cursor: pointer; font-family: var(--font-ui); } .roleOption input[type='radio'] { accent-color: var(--primary); margin-top: 2px; flex-shrink: 0; } .roleOption:has(input:checked) { border-color: rgba(var(--primary-rgb) / 0.35); background: rgba(var(--primary-rgb) / 0.08); } .roleOptionText { display: flex; flex-direction: column; gap: 4px; min-width: 0; } .roleOptionLabel { font-size: 13px; font-weight: 600; color: var(--text-primary); } .roleOptionDesc { font-size: 12px; font-weight: 500; color: var(--text-secondary); line-height: 1.45; } .roleHint { margin: 12px 0 8px; font-size: 12px; color: var(--text-secondary); line-height: 1.45; font-family: var(--font-ui); } .roleListNested { display: grid; grid-template-columns: 1fr; gap: 8px; margin-top: 4px; margin-inline-start: 12px; padding-inline-start: 10px; border-inline-start: 2px solid rgba(var(--primary-rgb) / 0.2); } @media (min-width: 560px) { .roleListNested { grid-template-columns: 1fr 1fr; } .roleListNested .roleOption:last-child:nth-child(odd) { grid-column: 1 / -1; } } .roleBadge { display: inline-block; margin-top: 2px; padding: 0 5px; border-radius: 999px; font-size: 9px; font-weight: 600; line-height: 1.5; color: var(--primary); background: rgba(var(--primary-rgb) / 0.1); border: 1px solid rgba(var(--primary-rgb) / 0.18); font-family: var(--font-ui); }